freenode/lisp - IRC Chatlog
Search
13:49:47
jmercouris
however if I set the environment variable I want to read via osicat, it seems to work
14:00:14
jmercouris
I use fish on my main machine, and bash before that, so I didn't know much about csh
17:38:17
grewal
I know I can make an image, but I'd rather just share the source code. There seems to be no clean way to handle dependencies
17:41:07
_death
I guess you could use https://www.quicklisp.org/beta/bundles.html .. in some of my "scripts" I have a quickload form with :silent t , but I also use a custom image that has most of the dependencies already loaded
17:41:39
dlowe
grewal: there's some projects that deal with this. cl-launch and roswell come to mind.
18:25:59
phoe
I have a list of triples in form (X Y Z). I am inside a loop that iterates over two variables. How can I find the value of Z if there is a triple with a matching X and Y in the list?
18:27:42
Bike
(third (find-if (lambda (triple) (and (eql (first triple) x) (eql (second triple) y))) list-of-triples))?
18:38:38
dlowe
(find (list x y) list-of-triples :test #'equal :key (lambda (x) (list (first x) (second x))))
19:17:04
pjb
grewal: imagine a shell script, but it uses non-standard applications and shell libraries!
19:17:57
pjb
grewal: definitely. You make a single-file executable. Or you provide a tarball to install in /opt/apps/$yourscript/ with a script to install in /usr/local/bin/$yourscript
19:19:29
pjb
grewal: there's cl-launch, but it doesn't work like I want, so in the end, now I build all my CL scripts (that used to hav #!/usr/local/bin/clisp …), in a single executable image called commands, and a bunch of symlinks into it.
19:22:16
pjb
grewal: oh yeah, the big problem with cl-launch, is that it compiles the lisp script. This means that you cannot write scripts that modify the environment for the rest of the script. This is something that is routinely done in scripts (bash, ruby, python, perl, lisp, whatever).
19:22:48
pjb
Once cl-launch compiles, we're not in the script world anymore, so you can as well compile and save an executable image.