freenode/lisp - IRC Chatlog
Search
10:47:35
minion
heisig, memo from no-defun-allowed: I'm not sure if I'll be awake when you come online but happy third birthday to Petalisp!
10:52:46
shka_
heisig: yeah, it is great, i am glad that you showed it to me, just not what i need right now
10:53:00
jackdaniel
at least nothing ready to be commited, I have plenty of junk which hardly compiles itself
11:44:21
heisig
gjvc: Assuming you use ASDF and Quicklisp, you probably want to put your project in ~/quicklisp/local-projects .
11:47:21
gjvc
i am working on ~/work/GATE/genesis/src/lisp/gate/genesis/bootstrap/foo/bar.lisp and i have an sbcl wrapper in ~/work/GATE/genesis/bin/ which loads a userinit.lisp file containing quicklisp settings
11:48:24
gjvc
the only problem i've really got stumped on is when *load-truename* returns /tmp/something in slime and path merges then don't work
11:51:02
gjvc
also, i find I have to compile/evaluate the ql:quickload lines in my source before slime wil compile the whoel file
12:01:23
heisig
gjvc: I am not sure what you are up to. Usually, you just need a short .asd file in your project and then a single call to ql:quickload.
12:02:29
gjvc
ok, i have one of those. oh---wait you mean i write the .asd file and use ql:quickload to load the project via *that* ?
12:04:40
heisig
The easy way is to make symlinks from your project directories to ~/quicklisp/local-projects.
12:05:58
heisig
The other way would be to tweak some Quicklisp or ASDF variables, but I forgot which ones.
12:09:23
heisig
gjvc: Here is how the local-projects mechanism works: http://blog.quicklisp.org/2018/01/the-quicklisp-local-projects-mechanism.html
12:13:25
pjb
gjvc: (push #P"/path/to/your/sources/" #| <- mind the final / for your directory! |# asdf:*central-registry*) (ql:quikload :your-system)
12:15:07
gjvc
lrwxrwxrwx. 1 gjvc gjvc 49 May 20 13:14 genesis -> home/gjvc/work/GATE/genesis/src/lisp/gate/genesis
12:30:39
pjb
You can use relative links too; I have: ~/quicklisp/local-projects/com/informatimago -> ../../../src/public/lisp/
13:25:02
shka_
would calling lenses as described here https://docs.racket-lang.org/lens/lens-intro.html using CL language as "First class accessors" is valid description?
13:33:15
ggole
They don't mutate though, they return a copy with the specified part given a different value
13:59:58
flip214
any library suggestions for converting text or an URL to a QR or other machine-readable code?
15:28:56
vt240
Hi, anyone know what is a fast way to read/write large vectors of double floats to a little-endian binary file?
15:34:54
gaze___
any lispworks gurus here? I'm curious if funcall still works well after a tree shake
15:45:48
pjb
(defparameter *my-functions* (list (function a) (function b) (function c))) (funcall (aref #(a b c) (random 3))) should work.
15:46:46
pjb
And how hard you make it for it to find what function name will ever be used in funcall.
15:52:14
gaze___
I understand that APIs can change underneath a codebase such that the codebase won't run anymore
15:52:37
gaze___
and I understand that people might just not... work on the codebase, or use the codebase or whatever
15:53:30
gaze___
but people use 60-year old milling machines and lathes, and people use theorems and techniques that are a hundred years old or whatever
15:56:06
gaze___
lisp libraries are some of the few where people just decide that the library is "done." That's it. It does what it needs to.
16:11:43
katco
a few years ago i downloaded and used a PoS tagging library written in the 70s, unmodified
16:13:02
katco
part of the reason my personal projects use CL is because it's the best way i can think of to build a corpus of work and not have it degrade out from under me. i can actually build on it to create bigger and better things
16:23:34
katco
sorry oni-on-ion, i'm unsure what you're trying to say. i think we're saying the same thing?
16:25:59
oni-on-ion
katco, responding to gaze___ on bit rot. then thinking about what you said about building a corpus
17:05:37
gaze___
I've found myself becoming a software luddite where I just wanna distribute tiny executables dependent upon code written when people were performance and code size were important... writing guis based on win32 or whatever
17:13:58
pjb
gaze___: we've not all decided. Some fools have decided to shoot in their feet, by making incompatible changes. Their problems. If you use CL on Linux, you were good 30 years ago, and you'll be good in 30 years.
17:16:07
gaze___
yeah seriously. It's like a lisp image is an oasis from the javascript nonsense and everything proximitized by it
17:16:37
pjb
And most applications don't need a GUI, and 80% of those needing a GUI only need it for output so it can be a CLI generating pictures or movies…
17:17:18
pjb
And even if you think users need a GUI for input, you'll be happier if you can take text input and process batch instead of interactive.
17:17:42
gaze___
I soooorta agree. Having a gui for running scientific experiments interactively is very nice
17:18:06
gaze___
or having a gui for tweaking parameters on a virtual synthesizer for making music is very nice
17:18:34
gaze___
do I wanna open a config file and write in +100 Hz cutoff on my filters to tweak them so they sound right? no.
17:19:43
pjb
Or if you want to manage thousands of sounds at once, you bet you want to do it with a script.
17:25:43
gaze___
this feels like my mom telling me "we have that at home" when what we have at home isn't actually the thing I want.
17:28:35
anamorphic
Cool. I was reading about QGAME recently (Quantum Gate And Measurement Emulator). It had a GUI
17:29:46
gaze___
one already exists that our lab uses... uses python and pyqt. Coming from a background of driving experiments entirely from a REPL, having an interactive gui makes the experimental experience much much better.
17:30:53
gaze___
experimental physics is a continuous exercise of trying to budget time, trying to figure out if one should spend time automating something, or if one should grit their teeth and be the human control loop that makes the experiment work "by hand"
17:31:24
gaze___
so being able to tweak things by hand and get instantaneous feedback is just fantastic.
17:32:59
dim
about UIs, nowadays lots/most of them are on the web, so make your program a lisp image that embeds a webserver?
17:33:55
dim
gaze___: also have a look at clasp and CANDO projects where they have a Jupyter Notebook kernel for common lisp full with 3D output support
17:48:06
gaze___
you think so? I have the impression that microsoft is super good about backwards compatibility
17:48:22
gaze___
I'm sure they want to kill win32... but I sorta doubt they'll really kill it any time soon
17:50:35
gaze___
I use a program called Sonnet for doing microwave simulations... the gui is all win32 and the company is really small. Just the sheer amount of software like this that people depend on
21:01:51
jmercouris
are there any exploits in any of the common implementations? how are these handled?