freenode/lisp - IRC Chatlog
Search
0:01:09
drmeister
phoe: What I'm not telling you is I also want whatever command I end up with to set *default-pathname-defaults* properly on a normal inferior-lisp/slime session.
0:07:01
phoe
drmeister: this looks like something you can solve with a mixture of unix utils and some lines of Common Lisp code.
0:07:03
drmeister
What I really want? Is something like (set-current-directory "$HOME/foo/bar") that when running in Docker translates to /src/foo/bar and when running locally translates to /Users/meister/foo/bar.
0:08:54
drmeister
I never understood (setf (logical-pathname-translations xxx) ...) enough to make it do what I want. Could that do this?
0:09:00
phoe
But the naïve approach for me is, make a function that finds out whether the Lisp image is running in a Docker container.
0:09:57
phoe
So, er. Dunno. Set your default pathname to a different value, depending on whether you have a :docker feature.
2:29:01
Bike
when they tell you must take it / and you think hell no / got a bad feeling and can't shake it / hits so low / lord of the game
2:48:29
drmeister
I'd love a slime command that evaluated the sexp at point and pasted the result after the form in #| ... |# commented form so that it won't be evaluated if the entire file is evaluated.
3:15:05
Bike
i have something that sort of works but it has a pause for asynchronousness and i don't know enough about slime to remove it.
6:30:46
krwq
hello, how do you check if your code is being run as compiled executable? i have some problems with paths, when i run my app under slime i prefer to use paths relative to package while when app is compiled the package folder doesnt exist so i'd like to use current working directory
6:31:10
krwq
the only idea i have is to set some variable whe saving the image but i'm wondering if there is some better way
6:32:51
BusFactor1
Here's some experiemental sounds from the Common Lisp audio synthesizer I'm writing: http://dropclickpaste.com/#CwdmCYGMBNwNgIYE4AMkDMm4rgVgKYIAc4AjCiqetJEgEa7DrB3ojRA
6:33:03
Bike
Becuase when you dump an image you specify a start function. You could have that function set a compiled-image-p variable to true.
6:34:24
krwq
Bike: that's what I was thinking but I was wondering if there is some already predefined macro or something for that
6:35:41
BusFactor1
Each synth is defined like this: (player (generate-sine :frequencyr (sine-1 100 100) :volumer 4000 :filter 15 :clip 7000 :samples 88200) 4.1) and generated at run time.
6:37:02
BusFactor1
That can be composed at run time. Sort of a syntax for dynamic runtime generated variables.
6:37:09
krwq
Bike: actually i think better solution is to give a switch for each function which would change logic which means id have to set it explicitly
6:39:30
BusFactor1
to use a 'typer' variable, you wrap it in something like a cast, like (floatr x) to get the float value of a typer x
6:40:06
krwq
BusFactor1: i used to have similar concept when i was playing with html5 drawing in javascript
6:40:59
BusFactor1
with every variable being a function called at runtime...it allows for easy composibilty in the synth
6:41:04
krwq
BusFactor1: it gets quite cumbersome after a while while in lisp the symbol macrolets will shorten and clarify what's going on
6:41:35
BusFactor1
i find my method of wrapping the variable in a cast like structure is actually quite natural and compact
6:41:57
krwq
BusFactor1: but you're right there's no point of prematurely doing too much, you can write a simple macro in the end to fix that
6:42:44
BusFactor1
i'm planning on releasing my next album with full source code for the generation of it
6:45:49
Bike
hm, slime-macroexpand doesn't bind *print-readably* true, i'm not sure if that's good or bad
6:47:17
Bike
but if people mostly use it for inspection, and printing readably makes it ugly enough...
7:19:22
slark
hi, why '(quote foo) or the equivalent (list 'quote 'foo) evaluate to 'foo on my repl ? i tought that '(quote foo) should return (quote foo) on my repl, like '(+ 1 1) returns (+ 1 1)
7:23:31
beach
The printer uses that syntax because when 'foo is seen by READ, then the list (QUOTE FOO) is returned.
7:27:20
reepca`
evaluating 'foo just produces FOO the symbol, though. When we talk about what some string representation "is" I assume we mean what it gets read in as, right?
7:28:26
edgar-rft
beach: sorry, better attempt, I agree that 'foo is read as (quote foo), but why then does (litp 'foo) return NIL?
7:28:46
slark
edgar-rft: well understand that 'foo is (quote foo) literatly if you want to pass it to listp you have to (listp '(quote foo)), (listp (quote foo)) is not what we need
7:29:00
beach
edgar-rft: Because LISTP is a function, so the argument gets evaluated before the function is applied.
8:07:02
beach
My USE finder is working out quite well. It would be even better to have that functionality in Second Climacs, though. At the moment, all symbols in a file that are imported from a different package are returned. In Second Climacs, I could (once I implement that functionality) avoid returning lexical variables.
8:12:28
BusFactor1
Here's another track from my synth: http://dropclickpaste.com/#AwRgrCBGAmIEwDYAsBjJB2Md1wJwA50Rw8AzUgQ3QujDHwFMRpcHgg
8:29:48
BusFactor1
Sorry about that. Maybe it 's the site. Here's another direct link: http://busfactor1.ca/kruhft%20-%20new%20synth%207%20-%202017.mp3
11:21:49
dim
my goal here is to play at discovering programming with the kids, I'd like to do something visual for starters, maybe code our own little minesweeper game
11:35:41
dim
supposing that's ok, can I use it a a full IDE where you can live edit the code you're running?
11:37:28
beach
You have the CLIM listener, Climacs, Clouseau, the CLIM debugger (similar to the SLIME debugger, i.e., not a debugger at all).