freenode/#lisp - IRC Chatlog
Search
22:03:23
Josh_2
Welll saving the image works, but the program doesn't work as a standalone program :(
22:04:46
oni-on-ion
'the program does not work as a standalone program' ... so is it a program at all?
22:09:14
Josh_2
I have a function that I use to load up my system which is how I start it up in sly I don't have to do anything other than change my package and it'll function normally
22:09:52
Josh_2
however I load the system save the image and then it doesn't function the same Q_Q, seems the UDP connections aren't working
22:13:36
oni-on-ion
hmm. i think there are special ways to handle file system handles and sockets and such
22:52:58
Josh_2
I didn't want a top level I just needed the image to function the same as it would have in sly, but it didn't
22:53:30
pjb
Images don't save threads. So it needs to restart with a toplevel function. By default it's just the REPL.
22:54:02
Josh_2
There is a function that I call to start the servers, which I did in the image but it doesn't behave the same as it does in Sly
22:54:18
pjb
But then you need to call your program manually from the REPL each time you reboot the lisp image.
22:54:34
Josh_2
which for the purpose was just fine, if I was actually shipping the application then it is not
22:54:46
pjb
Then there may be differences because of the initialization of global variables and other global resources.
22:55:09
pjb
You need to write an init function and add code in it to initialize stuff, instead of just defvar/defparameter.
22:55:38
Josh_2
That's pretty much what was happening :P although I don't have many globals just an IP address
22:55:54
pjb
You should take care of pathnames: pathnames are created at read time with #P"…" but readtime occurs at compilation-time. path are different at compilation time and at run-time.
22:58:43
Josh_2
Well I don't know I will look at it another time as I wouldn't mind actually putting this app and the server on google playstore
23:03:05
pjb
Josh_2: then you need to reload the libraries in your init function, since they may be different each time you reboot your lisp image.
23:50:28
pjb
Josh_2: it is: you're mixing two completely different philosophies, that of image-based development, and that of file-based unix development.
23:51:16
pjb
Josh_2: There's a reason we say BOOTING a lisp image. It's really a virtual machine with another operating system. And the VM needs to interface with the host VM. It's not simple.
23:51:18
oni-on-ion
but udp is network ? even though it has the name unix, how else to talk to non-lisps without extern I/O ?
4:13:39
pjb
cnomad: in the golden age of Internet, you could just do whois lispm.de # but this time has been over for a long time, since the spammers, etc.