dbotton has quit [Quit: This computer has gone to sleep]
Christ0pher has joined #lisp
<red-dot>
_death: Thanks. The list + uiop:native-namestring did the trick.
dbotton has joined #lisp
casual_friday has joined #lisp
gxt has joined #lisp
casual_friday has quit [Ping timeout: 240 seconds]
casual_friday has joined #lisp
vhost- has quit [Ping timeout: 240 seconds]
vhost- has joined #lisp
orivej has joined #lisp
rumbler31 has joined #lisp
rumbler31 has quit [Ping timeout: 276 seconds]
casual_friday has quit [Quit: Connection closed]
casual_friday has joined #lisp
msk_ has joined #lisp
hhdave has quit [Read error: Connection reset by peer]
msk has quit [Read error: Connection reset by peer]
jackdaniel has quit [Ping timeout: 240 seconds]
swflint has quit [Ping timeout: 240 seconds]
swflint has joined #lisp
hhdave has joined #lisp
jackdaniel has joined #lisp
casual_friday has quit [Quit: Ping timeout (120 seconds)]
casual_friday has joined #lisp
pfdietz has joined #lisp
dbotton has quit [Quit: Leaving]
casual_friday has quit [Quit: Connection closed]
routeveg has joined #lisp
<routeveg>
Lo all
<no-defun-allowed>
Hello routeveg.
toorevitimirp has joined #lisp
<routeveg>
oof, it's been a while since I came in here
<routeveg>
Are lisps still cool here?
<routeveg>
Real talk, i'm wondering about having something like emacs on an embedded platform. By embedded here, I mean perhaps 100k RAM. That kind of embedded.
<routeveg>
Micropython is a rather successful python compiler/repl/libraries for such platforms and it feels like there might be something to do there.
<no-defun-allowed>
It would be really weird if Lisp wasn't cool in #lisp. But I guess if it were COBOL and #cobol, the people there might have a different mindset of why they are there.
<no-defun-allowed>
There is uLisp for microcontrollers, which is something like a subset of Common Lisp with a unified function/variable namespace.
<waleee-cl>
that channel was on life support
<waleee-cl>
~ less than 10 people
<routeveg>
ulisp does look like a good starting point for a more full-featured programming system
karlosz has joined #lisp
<routeveg>
It does include a program editor, but it's a bit minimal. appears to be a line editor thing
<no-defun-allowed>
I recall ulisp had a structural editor. It'd probably hurt my head too much to use, as I'm only used to screen editors.
<routeveg>
I guess in order to be emacslike, you want a screen editor thing, and the ability to run commands, and to bind commands to keys.
<routeveg>
That doesn't sound massively difficult.
<no-defun-allowed>
Though I would attempt to generate a bytecode as quickly as possible, as that would allow for faster interpretation, and you could possibly save space on function definitions you don't care about.
<terpri>
there are schemes for microcontrollers as well (microscheme, picobit, probably more)
theothornhill has quit [Ping timeout: 258 seconds]
<routeveg>
Okay, thinking about memory usage and text editors and formats etc... are there any instances of 'whitespaceless' lisp editors?
<routeveg>
By which I mean, a source file is the same as an 'executable'. the editor controls indentation by the structure of the thing you're editing.
<routeveg>
You would need a kind of 'newline' atom that would be a NOP
Josh_2 has quit [Ping timeout: 240 seconds]
<routeveg>
One could see this as making the lisp reader interactive.
minion has quit [Remote host closed the connection]
<flip214>
"Evaluation of argument forms occurs in left-to-right order"
<nij>
As you can see, the shell command will suspend the user.
<nij>
Then when I do (progn (suspend-user "nij") (sleep 3) (cont-user "nij")), my user login instance first got suspended, but then nothing happened.
<nij>
It kept being suspended.
<flip214>
well, is the lisp running as the same user?
<nij>
yep!
<nij>
Oh
<phoe>
did you stop the process that was supposed to resume your session?
<nij>
I stopped the user..
<nij>
under which the process is running.
<phoe>
looks like it's not a progn problem then
<nij>
I see. That's why. Sorry for the dumb question.
<phoe>
:D
<phoe>
there's a lot of fun to be had when doing OS interaction
* flip214
grumbles ...but where is the L-t-R order in CLHS? apart from SETF and macros?
<nij>
lemme make another system test
<nij>
(so i should log out brb!)
nij has quit [Remote host closed the connection]
<Xach>
flip214: 3.1.2.1.2.3?
aartaka_d has quit [Read error: Connection reset by peer]
amb007 has quit [Ping timeout: 276 seconds]
amb007 has joined #lisp
amb007 has quit [Read error: Connection reset by peer]
nij has joined #lisp
<nij>
It werked! Thanks folks :-)
<nij>
This kinda system commands.. how do you debug?
<nij>
At least.. I hope to be able to collect ALL outputs they generate
marcoxa has joined #lisp
<flip214>
Xach: yeah, thanks. google didn't return that for "left-to-right lisp evaluation clhs"
amb007 has joined #lisp
<Xach>
flip214: every true lisper has the sections memorized
<nij>
m far from being that
<nij>
hmm lemme put it this way
<nij>
there are so many ways to call shell commands
<nij>
which one do you think is the most robust?
<flip214>
Xach: I'm sorry. I'll try harder next year.
<nij>
easiest to debug.. etc.
<nij>
flip214: new year resolution for 2022!
<Xach>
nij: i prefer to use sb-ext:run-program directly, as it provides the features i need for controlling processes and their output. it has a very good docstring and comments.
amb007 has quit [Ping timeout: 240 seconds]
amb007 has joined #lisp
<nij>
there's even sb-ext:run-program?! I should look into its difference with uiop:run-program.
<Nilby>
I would avoid using run-program if you can.
<nij>
Nilby: which one? and.. why so?
theothornhill has joined #lisp
<Nilby>
For example: (defun pkill (user signal) (mapcar (_ (when (equal user (nos:os-process-user _)) (uos:kill (nos:os-process-id _) signal))) (nos:process-list)))
<Nilby>
Then you can debug with the lisp debugger, it's faster, and you don't need external proramgs, etc.
<nij>
i see
VincentVega has quit [Quit: Connection closed]
<nij>
so i gave to find the lisp equivalence of "pkill"
<nij>
s/gave/have/
<nij>
yeah challenge accepted. the goal is to elevated myself from bashism, completely.
<nij>
which is hard really.. e.g. how do you get rid of ffmpeg?
<Nilby>
It's hard at first, but then it gets easier. There does exists a CL FFI to libav, but it's sadly incomplete.
<nij>
:(
<flip214>
Nilby: where is nos from?
<nij>
imagination? that's just an eg
amb007 has quit [Read error: Connection reset by peer]
<Nilby>
flip214: from my decaying Lisp castle, echoing with my rants of maddness, where few have ever ventured
<Nilby>
nij: Good question. I think it must be the endless wasteland of software that has driven me mad.
<nij>
could you elaborate? im genuinely curious
<Nilby>
I find it very maddening when software doens't work the way I want it too. Especially when it's something that should have worked or has been working for 30 years or something.
<nij>
oh.. yeah :-(
<Nilby>
Like last time I upgraded emacs the cursor started blinking. WHy??!? It drives you crazy when you've stopped the cursor from blinking 100s of times over many years.
<nij>
Beyond a region when an individual can control, we seek for community.
cosimone has joined #lisp
<nij>
And politics kicks in, which isn't always elegant and doesn't match our expectation.
<nij>
LOL your config had some problem?
<Nilby>
Form me, Lisp comes closest to giving the individual the most control.
Bike has joined #lisp
<Nilby>
But they spent over 10 years wrangling out the poltical minutia of Common Lisp before it could get to where it is.
semz has joined #lisp
nij has quit [Remote host closed the connection]
nij has joined #lisp
<nij>
Nilby: sorry my internet connection isn't the best now.
<nij>
Yeah I feel the same say.
<nij>
Why wouldn't people think so?
<flip214>
sb-unix:sc-nprocessors-onln gives me "84" ... which is an awful big number of processors!
<flip214>
and in fact it isn't, it's the sysconf constant to _request_ that data... :-(
<Nilby>
flip214: that must be wrong
<Nilby>
flip214: i mean you're right about how it's wrong
<semz>
How does CFFI interact with save-lisp-and-die type releases? If I define a library, use (use-foreign-library libfoo) at the top level and then save-lisp-and-die, is the resulting executable tied in some way to what I have on my system? This would be undesirable e.g. for graphics.
<semz>
If no, to what degree can I rely on that? If yes, how'd I get around that? Obviously I don't want to ship e.g. my graphics drivers that are useless to others.
Major_Biscuit has quit [Ping timeout: 265 seconds]
notzmv has quit [Remote host closed the connection]
<jmercouris>
a very simple pattern and good suggestion, I will keep in mind
<jmercouris>
I didn't think to just wrap it
<jmercouris>
so easily
<jmercouris>
I was imagining something far more convoluted
<jackdaniel>
For experienced Lisp programmer parens are not visible and the code is trivial (because only the remaining 1% of it *is* visible to them)
<frodef>
you could also make a generic wrapper, if there are more library functions like that.. (defun nonzero (x &rest error-designator) (if (eql 0 x) (apply 'error error-designator) x))
theothornhill has quit [Ping timeout: 258 seconds]
scymtym_ has joined #lisp
<jackdaniel>
of course a correct approach to both wrappers is to anticipate multiple values
<jmercouris>
jackdaniel: what are you talking about? who said anything about parens?
<jackdaniel>
I was joking about how common lisp programs are made of 99% parens
<jackdaniel>
let me find the inspiration
<jackdaniel>
on cliki
scymtym has quit [Ping timeout: 272 seconds]
<frodef>
jackdaniel: doesn't make much sense to me to anticipate multiple values from something that signals an error by returning zero... :)
<jackdaniel>
there was a joke there that evil hackers stole 80% of the reminder of the source code in nasa
<jackdaniel>
and that the whole file was ")))))))))))))))))))))))))))))))))))"
<jmercouris>
lol
<jackdaniel>
frodef: the right thing something something ;)
h4ck3r9696 has joined #lisp
h4ck3r9696 has left #lisp [#lisp]
Christ0pher has joined #lisp
Patzy has quit [Ping timeout: 264 seconds]
Christ0pher has quit [Read error: Connection reset by peer]
Patzy has joined #lisp
euandreh has quit [Ping timeout: 258 seconds]
ljavorsk has quit [Ping timeout: 240 seconds]
msk_ has quit [Remote host closed the connection]
msk_ has joined #lisp
Josh_2 has joined #lisp
Christ0pher has joined #lisp
Major_Biscuit has quit [Ping timeout: 265 seconds]
varjag has quit [Quit: ERC (IRC client for Emacs 27.1)]
Christ0pher has quit [Ping timeout: 264 seconds]
Cymew has quit [Ping timeout: 265 seconds]
aartaka has quit [Ping timeout: 256 seconds]
Steeve has quit [Quit: end]
madage has joined #lisp
mickus has joined #lisp
remby has left #lisp ["Good Bye"]
Anonymous_ has joined #lisp
Nilby has quit [Ping timeout: 276 seconds]
euandreh has joined #lisp
mickus has left #lisp ["lisp"]
Nilby has joined #lisp
vegansbane6963 has joined #lisp
pve has quit [Ping timeout: 276 seconds]
vegansbane696 has quit [Ping timeout: 276 seconds]
pve has joined #lisp
Posterdati has quit [Ping timeout: 276 seconds]
Posterdati has joined #lisp
antepod has joined #lisp
orivej has joined #lisp
random-nick has joined #lisp
lowryder_ has quit [Ping timeout: 265 seconds]
lowryder_ has joined #lisp
Lycurgus has joined #lisp
Nilby has quit [Ping timeout: 264 seconds]
anticrisis has joined #lisp
villanella has joined #lisp
Inline has quit [Ping timeout: 272 seconds]
jeosol has joined #lisp
cage_ has joined #lisp
marcoxa has joined #lisp
rogersm has joined #lisp
cage_ has quit [Quit: Leaving]
rogersm has quit [Client Quit]
catt has joined #lisp
Jesin has joined #lisp
tsrt^ has joined #lisp
theothornhill has joined #lisp
antepod has quit [Quit: WeeChat 3.0]
mister_m has quit [Remote host closed the connection]
charles` has joined #lisp
marcoxa has quit [Ping timeout: 276 seconds]
marcoxa has joined #lisp
luni has joined #lisp
h4ck3r9696 has joined #lisp
theothornhill has quit [Remote host closed the connection]
theothornhill has joined #lisp
Anonymous_ has quit [Ping timeout: 264 seconds]
Blukunfando has quit [Remote host closed the connection]
Lycurgus has quit [Quit: Exeunt]
<marcoxa>
quit
<marcoxa>
quit
<marcoxa>
exit
marcoxa has quit [Quit: Time to go to bed]
mmmattyx has quit [Quit: Connection closed for inactivity]
theothornhill has quit [Remote host closed the connection]
theothornhill has joined #lisp
skapata has quit [Quit: Leaving]
scymtym_ has quit [Remote host closed the connection]
caret has quit [Quit: Bye Felicia]
scymtym has joined #lisp
Jesin has quit [Quit: Leaving]
h4ck3r9696 has quit [Quit: Leaving.]
paul0 has quit [Remote host closed the connection]
anticrisis has quit [Read error: Connection reset by peer]
anticrisis has joined #lisp
Jesin has joined #lisp
pfdietz has quit [Quit: Ping timeout (120 seconds)]
jeosol has quit [Quit: Ping timeout (120 seconds)]
h4ck3r9696 has joined #lisp
surabax_ has joined #lisp
akoana has joined #lisp
surabax has quit [Ping timeout: 258 seconds]
narimiran has quit [Ping timeout: 240 seconds]
villanella has quit [Quit: villanella]
yonkunas has quit [Quit: Connection closed for inactivity]
villanella has joined #lisp
gaqwas has quit [Ping timeout: 265 seconds]
h4ck3r9696 has quit [Quit: Leaving.]
skapata has joined #lisp
theothornhill has quit [Ping timeout: 276 seconds]
surabax_ has quit [Quit: Leaving]
shka_ has quit [Ping timeout: 240 seconds]
theothornhill has joined #lisp
hjudt has quit [Ping timeout: 276 seconds]
pillton has joined #lisp
pve has quit [Quit: leaving]
gaqwas has joined #lisp
villanella has quit [Ping timeout: 260 seconds]
gaqwas has quit [Ping timeout: 240 seconds]
anticrisis_ has joined #lisp
anticrisis__ has joined #lisp
theothornhill has quit [Ping timeout: 240 seconds]
anticrisis has quit [Ping timeout: 240 seconds]
anticrisis_ has quit [Ping timeout: 258 seconds]
bjorkintosh has quit [Quit: Leaving]
anticrisis has joined #lisp
anticrisis__ has quit [Ping timeout: 258 seconds]
heisig has quit [Quit: Leaving]
cosimone has quit [Quit: cosimone]
bjorkintosh has joined #lisp
tassleoff has quit [Ping timeout: 240 seconds]
frgo has quit [Remote host closed the connection]
frgo has joined #lisp
<Josh_2>
How do I define a generic function where methods are called from least specific to most? rather than the default being most to least