<White_Flame>
johnjaye: one other way to design side-band data is not to have a parameter/variable per datum, but rather have a singular context object to pass around
<White_Flame>
(let ((*context* (some-new-context))) (foo a b))
<White_Flame>
vs
<White_Flame>
(foo context a b)
<White_Flame>
then you can extend the structure of the context object without needing to change the interface of any of the business functions, or the new binding entries
<White_Flame>
which sidesteps most of all of those old arguments
johnjaye has quit [Ping timeout: 260 seconds]
inline__ has quit [Ping timeout: 268 seconds]
johnjaye has joined #commonlisp
inline__ has joined #commonlisp
seok has joined #commonlisp
inline_ has quit [Ping timeout: 272 seconds]
morganw has quit [Remote host closed the connection]
inline__ has quit [Ping timeout: 272 seconds]
epony has quit [Ping timeout: 268 seconds]
pve has quit [Quit: leaving]
cercopith__ has quit [Quit: Leaving]
epony has joined #commonlisp
triffid has quit [Ping timeout: 255 seconds]
triffid has joined #commonlisp
triffid has quit [Remote host closed the connection]
triffid has joined #commonlisp
nij- has joined #commonlisp
random-nick has quit [Ping timeout: 272 seconds]
dipper has joined #commonlisp
pdietz has joined #commonlisp
jello_pudding has joined #commonlisp
dipper has quit [Remote host closed the connection]
<johnjaye>
mind exploding when i realize there really are a lot of common lisp implementations
<johnjaye>
i compiled this thing and it didn't produce an executable. just a bunch of .fasl files. and then a script which invokes a list of different CL
inline_ has joined #commonlisp
tyson2 has joined #commonlisp
inline__ has quit [Ping timeout: 268 seconds]
<aeth>
my mind blown moment was loading a 3D application in CCL after writing it in SBCL
tyson2 has quit [Remote host closed the connection]
<johnjaye>
i was mind blown when i realized you even could *write* 3d applications in sbcl
<johnjaye>
i remember some old demo of a lisp machine. and it was all terminal windows black and white. and suddenly it loaded this beautiful hi-res 3d image. o_o
<beach>
Oh? Why?
sloanr has joined #commonlisp
sloanr has quit [Remote host closed the connection]
<beach>
johnjaye: I am curious, why were you "mind blown" by that realization.
<johnjaye>
well. computers seem like simple machines. but they open up vast panoramas of computability, complexity, algorithms
<johnjaye>
and it's often unclear what a given ecosystem can or can't do unless you're already in it and using it
<beach>
Oh, so you were referring to the available tools?
<johnjaye>
it was some SDL tetris thing. still in quicklisp iirc
<johnjaye>
but what i mean is in computing there's this huge discoverability problem that search engines have to address
<johnjaye>
namely, how do you find something without already knowing what it is
<johnjaye>
so to a beginner like myself i had simply never seen someone write 3d stuff in lisp at all
<johnjaye>
there's a world of difference between knowing something is possible and not knowin that
<beach>
Well, to me Common Lisp is a Turing-complete programming language, so my first reaction would have been that things that are possible in other languages are possible in Common Lisp as well.
<Nilby>
johnjaye: maybe you missed the videos showing how lisp machines were foundational in the 3d cgi industry in the 90s
mjoerg has quit [Quit: ERC 5.4.1.49860.0.20221215.100656 (IRC client for GNU Emacs 28.2)]
inline__ has joined #commonlisp
aartaka has joined #commonlisp
inline__ is now known as Inline
inline_ has quit [Ping timeout: 268 seconds]
inline_ has joined #commonlisp
Inline has quit [Killed (tantalum.libera.chat (Nickname regained by services))]
inline_ is now known as Inline
inline_ has joined #commonlisp
Lord_of_Life_ has joined #commonlisp
Lord_of_Life has quit [Ping timeout: 268 seconds]
Inline has quit [Ping timeout: 260 seconds]
Lord_of_Life_ is now known as Lord_of_Life
inline__ has joined #commonlisp
inline__ is now known as Inline
inline_ has quit [Ping timeout: 260 seconds]
inline_ has joined #commonlisp
Inline has quit [Ping timeout: 252 seconds]
inline__ has joined #commonlisp
inline_ has quit [Ping timeout: 252 seconds]
thoughtron has joined #commonlisp
_cymew_ has quit [Ping timeout: 265 seconds]
aartaka has quit [Ping timeout: 268 seconds]
_cymew_ has joined #commonlisp
aartaka has joined #commonlisp
_cymew_ has quit [Ping timeout: 272 seconds]
inline_ has joined #commonlisp
inline__ has quit [Ping timeout: 260 seconds]
pjb has joined #commonlisp
<johnjaye>
all these guys wearing turtlenecks...!
inline__ has joined #commonlisp
<johnjaye>
they have no idea windows 95 is about to storm in like a tidal wave on the world of computing
<pjb>
beach: you have a computer with infinite memory?
inline_ has quit [Ping timeout: 268 seconds]
<pjb>
For example, most GC systems can allocate only half the RAM worth of live objects (those using alternating two halves of memory). Therefore conceivably, you would be able to manage problems twice as big with languages with manual memory management (if you can do a good job at memory management for your problem), compared to CL implementations that can use only half the memory on the same computer.
<pjb>
Not saying that I would want to do that rather than buying twice the memory, but on the same computer, perhaps for some problems, other ecosystems are more "powerful"?
<phoe>
why do parenscript programmers always annoy cats?
<ixelp>
GitHub - no-defun-allowed/swcl: Steel Wool Common Lisp
<hayley>
Although, currently a single-threaded GC that does no compacting at all is only about 5% slower than a single-threaded GC that attempts to copy when possible.
<phoe>
pve: yes, notably, English
<pve>
phoe: really?! mind blown
<Nilby>
hayley: I'm quite glad you're working on it, and wish for your successes. I've looked through it, but C makes me sad in my old age.
<phoe>
at least I just realized that some of my British folks do it like that, and my first thought was "parenscript"
<pve>
alright, in my language it's "ks ks ks"
igemnace has joined #commonlisp
<hayley>
My C code is probably pretty bad. But I've managed to itch even for C++; following university work I'm convinced thread pools and closures go really nicely together.
<hayley>
phoe: s/paren/post/
<Nilby>
hayley: as you may know, before we had cores we used to pretend with throwing closures about
inline_ has joined #commonlisp
inline__ has quit [Ping timeout: 268 seconds]
tevo has quit [Ping timeout: 255 seconds]
inline__ has joined #commonlisp
inline_ has quit [Ping timeout: 272 seconds]
inline_ has joined #commonlisp
inline_ is now known as Inline
_cymew_ has joined #commonlisp
<holycow>
I have a question about mapcar and funcall
<holycow>
i have been trying to use (mapcar #'funcal list) to mapcar through a list of lambdas
inline__ has quit [Ping timeout: 252 seconds]
<holycow>
but that doesn't work because funcall seems to expect to apply a function to the list
waleee has joined #commonlisp
<holycow>
what is the proper way to mapcar through a list of lambdas and run the sub programs?
<holycow>
phoe: that explanation of the difference between the two is so clear to understand. i read a whole bunch on the functions and went through examples but never clued into that. neat.
Inline has quit [Ping timeout: 268 seconds]
tibfulv has quit [Remote host closed the connection]