Search
Sunday, 13th of January 2019, 5:54:54 UTC
5:55:54
|3b|
not that i have time to investigate, specify, and promote such an extension in either case :/
6:00:55
|3b|
similarly ability to write any type of sequence to ub8 streams as if it were a ub8 sequence would be nice
6:02:03
|3b|
ACTION should probably go back to what i'm actually working on rather than continuing to think about that though
6:18:37
beach
I forget how to write a floating-point value to a stream with element-type double-float.
6:18:46
beach
write-byte requires an integer.
6:20:03
no-defun-allowed
Maybe write-sequence has a trick for it?
6:20:42
beach
Hmm, that seems twisted.
6:20:51
beach
I am pretty convinced I have done this in the past.
6:28:00
beach
I can't believe this!
6:28:26
beach
Oh, well, I'll convert to 16-bit integers.
6:32:43
beach
IT WORKS! So aplay + fifo + RUN-PROGRAM is a workable solution. Thanks LdBeth, no-defun-allowed, |3b|.
6:32:52
no-defun-allowed
no problem :)
6:33:21
no-defun-allowed
hah, one of the first CL projects i did was a simple synthesiser
6:33:27
|3b|
does aplay just idle if there is no input on fifo, and continue when there iis?
6:33:49
no-defun-allowed
yes, but it writes to stderr that there was an underrun
6:35:32
no-defun-allowed
let's see, i did additive, subtractive and phase synthesis
6:36:02
|3b|
ACTION wants to write a synth one day, pretty far down the list though :(
6:36:18
no-defun-allowed
and there was a silly celluar automaton-based song "generator" which is quite terrible but still half-impressive i think
6:36:20
|3b|
along with the whole "learn to music" thing
6:36:37
beach
|3b|: Good question. When I cat a file to it, it exist after that. But when I do WITH-OPEN-FILE it waits for the next batch of samples.
6:37:23
|3b|
i figure i'd probably do as well with teaching the computer to compose/perform as learning to do it myself, so song generator would be in there too if i ever get to that point
6:38:05
beach
Er, it "exits" after that.
6:38:44
no-defun-allowed
I was half-inspired by http://tones.wolfram.com/ but I didn't have their magic apparently, so the result I have is less impressive.
6:48:31
LdBeth
(defun a (foo bar) (declare (ignore foo)) (declare (ignore bar)) 123)
6:48:46
LdBeth
is this valid common lisp?
6:50:21
|3b|
multiple DECLAREs? looks OK
6:51:14
LdBeth
ccl don't complaint that, I'm too lazy to test out on every other impls
6:51:37
no-defun-allowed
sbcl and clisp both take it
6:51:46
specbot
http://www.lispworks.com/reference/HyperSpec/Body/m_defun.htm
6:52:23
no-defun-allowed
there's a * next to declaration which means "multiple" so you're good
6:53:40
|3b|
and a single docstring can be mixed with them
6:54:22
|3b|
(before, between, or after)
6:54:57
specbot
Splicing in Modified BNF Syntax: http://www.lispworks.com/reference/HyperSpec/Body/01_daba.htm
6:55:20
|3b|
^ explains the [[ ]] in the modified BNF for the curious
6:56:17
LdBeth
oh shoot. that mean i have to change my parse-body function
6:57:10
|3b|
if you are parsing that sort of thing from CL code, i think alexandria has some functions for that
6:58:59
|3b|
looks like alexandria:parse-body extracts declarations/docstrings
7:02:00
LdBeth
I think I can use UIOP's
7:03:44
|3b|
heh, comment on uiop:parse-body: " ;; from alexandria"
7:04:03
|3b|
so probably work just as well :)
7:04:59
no-defun-allowed
i think the "my CL is busted, it's making LLVM code" is getting boring, but i got ifs done too https://pastebin.com/pmRWaiXQ
7:07:42
beach
What is the LLVM library you are using?
7:08:02
|3b|
can't be any worse than than making dalvik bytecode :p
7:09:50
no-defun-allowed
I don't know any FFI, so it's just emitting the textual representation of IR, beach.
7:10:11
beach
Oh, so it's something you wrote yourself?
7:10:59
no-defun-allowed
The existing cl-llvm library doesn't work without some modification, because it was written for an older LLVM (I think version 3).
7:15:05
LdBeth
finally get defflavor cleaned up
16:00:02
Lord_of_Life_
** NICK Lord_of_Life
Sunday, 13th of January 2019, 17:54:54 UTC