jackdaniel changed the topic of #commonlisp to: Common Lisp, the #1=(programmable . #1#) programming language | Wiki: <https://www.cliki.net> | IRC Logs: <https://irclog.tymoon.eu/libera/%23commonlisp> | Cookbook: <https://lispcookbook.github.io/cl-cookbook> | Pastebin: <https://plaster.tymoon.eu/>
spdegabrielle has joined #commonlisp
amb007 has joined #commonlisp
amb007 has quit [Ping timeout: 265 seconds]
dra has quit [Ping timeout: 260 seconds]
rkazak has joined #commonlisp
rkazak has quit [Ping timeout: 252 seconds]
<citizeno> NotThatRPG: turns out it is easier than I thought to make cl-binary-store work fine for other lisps... should be done in a day or two.
X-Scale has quit [Ping timeout: 276 seconds]
X-Scale has joined #commonlisp
rkazak has joined #commonlisp
notzmv has joined #commonlisp
rkazak has quit [Ping timeout: 248 seconds]
JuanDaugherty has quit [Quit: JuanDaugherty]
akoana has quit [Quit: leaving]
rkazak has joined #commonlisp
kevingal has quit [Ping timeout: 265 seconds]
dinomug has joined #commonlisp
reb has joined #commonlisp
X-Scale has quit [Ping timeout: 276 seconds]
rkazak has quit [Ping timeout: 265 seconds]
decweb has quit [Ping timeout: 252 seconds]
msv has quit [Remote host closed the connection]
decweb has joined #commonlisp
msv has joined #commonlisp
rkazak has joined #commonlisp
citizeno has quit [Ping timeout: 240 seconds]
spdegabrielle has quit [Quit: Connection closed for inactivity]
chiselfuse has quit [Ping timeout: 264 seconds]
amb007 has joined #commonlisp
chiselfuse has joined #commonlisp
amb007 has quit [Ping timeout: 265 seconds]
rkazak has quit [Ping timeout: 246 seconds]
amb007 has joined #commonlisp
amb007 has quit [Ping timeout: 265 seconds]
wobbol has joined #commonlisp
random-nick has quit [Ping timeout: 260 seconds]
citizeno has joined #commonlisp
citizeno has quit [Client Quit]
cowboy8625 has quit [Ping timeout: 244 seconds]
rkazak has joined #commonlisp
kiyafirs has joined #commonlisp
shawnw has quit [Ping timeout: 265 seconds]
rkazak has quit [Ping timeout: 265 seconds]
citizeno has joined #commonlisp
theruran has quit [Quit: Connection closed for inactivity]
chiselfuse has quit [Ping timeout: 264 seconds]
chiselfuse has joined #commonlisp
FragmentedCurve has joined #commonlisp
<citizeno> NotThatRPG: so cl-binary-store works on CCL now.  It's slow, but it works.  I did a bit of work trying to get it running on lispworks, but some of the tests aren't passing and I got sick of the heap and time limit on the personal edition.
citizeno has quit [Ping timeout: 240 seconds]
rkazak has joined #commonlisp
brokkoli_originl has quit [Ping timeout: 248 seconds]
brokkoli_originl has joined #commonlisp
rkazak has quit [Ping timeout: 260 seconds]
decweb has quit [Ping timeout: 248 seconds]
bjorkintosh has quit [Ping timeout: 276 seconds]
terrorjack4 has quit [Quit: The Lounge - https://thelounge.chat]
terrorjack45 has joined #commonlisp
decweb has joined #commonlisp
shawnw has joined #commonlisp
rkazak has joined #commonlisp
runxiyu has quit [Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in]
runxiyu has joined #commonlisp
rkazak has quit [Ping timeout: 276 seconds]
Pixel_Outlaw has joined #commonlisp
decweb has quit [Ping timeout: 252 seconds]
rkazak has joined #commonlisp
doyougnu has quit [Ping timeout: 260 seconds]
doyougnu has joined #commonlisp
rkazak has quit [Ping timeout: 265 seconds]
rkazak has joined #commonlisp
brokkoli_originl has quit [Remote host closed the connection]
brokkoli_originl has joined #commonlisp
Pixel_Outlaw has quit [Quit: Leaving]
rkazak has quit [Ping timeout: 252 seconds]
amb007 has joined #commonlisp
zwr has quit [Read error: Connection reset by peer]
amb007 has quit [Ping timeout: 265 seconds]
zwr has joined #commonlisp
rkazak has joined #commonlisp
ebrasca has joined #commonlisp
rkazak has quit [Ping timeout: 248 seconds]
amb007 has joined #commonlisp
amb007 has quit [Ping timeout: 265 seconds]
amb007 has joined #commonlisp
amb007 has quit [Ping timeout: 265 seconds]
amb007 has joined #commonlisp
rkazak has joined #commonlisp
amb007 has quit [Ping timeout: 265 seconds]
amb007 has joined #commonlisp
zlqrvx has quit [Quit: %quit%]
zlqrvx has joined #commonlisp
rkazak has quit [Ping timeout: 252 seconds]
wobbol has quit [Ping timeout: 265 seconds]
rkazak has joined #commonlisp
bjorkintosh has joined #commonlisp
bjorkintosh has joined #commonlisp
bjorkintosh has quit [Changing host]
pkal has quit [Ping timeout: 246 seconds]
pkal has joined #commonlisp
rkazak has quit [Ping timeout: 265 seconds]
zwr has quit [Read error: Connection reset by peer]
zwr has joined #commonlisp
shka has joined #commonlisp
kaffcop has joined #commonlisp
kaffcop has quit [Client Quit]
dino_tutter has joined #commonlisp
rkazak has joined #commonlisp
mgl has joined #commonlisp
wacki has joined #commonlisp
dinomug has quit [Remote host closed the connection]
rkazak has quit [Ping timeout: 265 seconds]
pve has joined #commonlisp
mishoo has joined #commonlisp
attila_lendvai has joined #commonlisp
X-Scale has joined #commonlisp
attila_lendvai_ has joined #commonlisp
edgar-rft` has joined #commonlisp
attila_lendvai has quit [Ping timeout: 265 seconds]
edgar-rft_ has quit [Ping timeout: 260 seconds]
rkazak has joined #commonlisp
Stenotrophomonas has joined #commonlisp
brokkoli_originl has quit [Ping timeout: 265 seconds]
rkazak has quit [Ping timeout: 264 seconds]
Stenotrophomonas is now known as brokkoli_origin
attila_lendvai_ has quit [Read error: Connection reset by peer]
attila_lendvai_ has joined #commonlisp
rkazak has joined #commonlisp
alendvai__ has joined #commonlisp
attila_lendvai_ has quit [Read error: Connection reset by peer]
rkazak has quit [Ping timeout: 260 seconds]
msv has quit [Ping timeout: 260 seconds]
alendvai__ has quit [Ping timeout: 265 seconds]
msv has joined #commonlisp
zxcvz has joined #commonlisp
zxcvz has quit [Client Quit]
attila_lendvai has joined #commonlisp
attila_lendvai has quit [Ping timeout: 265 seconds]
attila_lendvai has joined #commonlisp
NorthStar has joined #commonlisp
X-Scale has quit [Ping timeout: 276 seconds]
NorthStar is now known as X-Scale
mari-estel has joined #commonlisp
rkazak has joined #commonlisp
rkazak has quit [Ping timeout: 245 seconds]
rkazak has joined #commonlisp
olnw has quit [Quit: ZNC - https://znc.in]
random-nick has joined #commonlisp
NorthStar has joined #commonlisp
X-Scale has quit [Ping timeout: 276 seconds]
NorthStar is now known as X-Scale
mari-estel has quit [Remote host closed the connection]
danza has joined #commonlisp
rkazak has quit [Ping timeout: 252 seconds]
NorthStar has joined #commonlisp
X-Scale has quit [Ping timeout: 276 seconds]
NorthStar is now known as X-Scale
green_ has joined #commonlisp
NorthStar has joined #commonlisp
mishoo has quit [Ping timeout: 244 seconds]
X-Scale has quit [Ping timeout: 276 seconds]
kurfen has quit [Ping timeout: 265 seconds]
JuanDaugherty has joined #commonlisp
rkazak has joined #commonlisp
dra has joined #commonlisp
spdegabrielle has joined #commonlisp
kurfen has joined #commonlisp
rkazak has quit [Ping timeout: 246 seconds]
yitzi has joined #commonlisp
kevingal has joined #commonlisp
rkazak has joined #commonlisp
NorthStar is now known as X-Scale
citizeno has joined #commonlisp
rkazak has quit [Ping timeout: 252 seconds]
danza has quit [Remote host closed the connection]
yitzi has quit [Ping timeout: 265 seconds]
yitzi has joined #commonlisp
yitzi has quit [Client Quit]
yitzi has joined #commonlisp
shawnw has quit [Ping timeout: 265 seconds]
kiyafirs has quit [Quit: ERC 5.5.0.29.1 (IRC client for GNU Emacs 29.4)]
rkazak has joined #commonlisp
cowboy8625 has joined #commonlisp
decweb has joined #commonlisp
<cowboy8625> o/
<cowboy8625> hows it going?
<beach> Hello cowboy8625.
<cowboy8625> working on anything cool?
<beach> Absolutely, but not for application programmers: https://github.com/robert-strandh/Futhark
<ixelp> GitHub - robert-strandh/Futhark: Implementation of the Common Lisp Strings dictionary
<beach> cowboy8625: What about you?
<cowboy8625> oh nice!
<cowboy8625> im just trying to create a crappy lisp lang.
<citizeno> cowboy8625: I'm polishing up https://github.com/ajberkley/cl-binary-store and getting some mileage out of it.  Also using more Common Lisp implementations than sbcl (tried out lispworks and ccl)
<ixelp> GitHub - ajberkley/cl-binary-store: A fast Common Lisp binary serializer/deserializer
<beach> Thank you. It's part of the SICL project, the purpose of which is to create modules for people who implement Common Lisp systems.
<cowboy8625> that sounds pretty cool!
<beach> cowboy8625: Why would you want to create a crappy language?
<cowboy8625> ajberkley/cl-binary-store this is pretty cool too!
<cowboy8625> beach: well its crappy now but at some point it may not be.
<beach> cowboy8625: In fact, why would you want to create a language at all? There are so many already.
<cowboy8625> ah i see.
<cowboy8625> all just for fun.
<beach> I see.
<cowboy8625> i just got ffi bindings working so now i can use C librarys LOL
<beach> cowboy8625: What technique do you use for the compiler?
<beach> ... or I guess "evaluator" rather than "compiler".
rkazak has quit [Ping timeout: 246 seconds]
<cowboy8625> beach: what do you mean by technique? I compile to my own bytecode and run it on a vm i made.
<beach> I see.
<beach> So I guess it is a "programming system" rather than a language. When I hear "language" i think of a document explaining the syntax and semantics of valid constructs.
<cowboy8625> beach: uh no its a language. (fn main () (print "Hello World\n")) would get turned into bytecode and then that would get ran in the vm.
<cowboy8625> just like python or in some cases java
<beach> cowboy8625: By "technique" I meant things like CPS, or control graph, maybe SSA, etc.
<beach> cowboy8625: Again, when I hear "language" I expect not an implementation, but a document like the Common Lisp standard, explaining what constructs are valid and what they mean.
<beach> cowboy8625: I mean, Common Lisp is a "language" but SBCL is not. It is a "programming system" or a "language implementation".
<cowboy8625> roger roger
rkazak has joined #commonlisp
<beach> cowboy8625: Like if you allow for closures, you probably need some kind of closure conversion in your compiler, so that would be one technique.
<yottabyte> I'm using https://cl-sqlite.common-lisp.dev/ in one of my projects. running in slime, everything works fine. when I made an executable with asdf:make, I'm experiencing some vague runtime exceptions talking about sql statements being incorrect and incorrect arguments and parameters and such. I know my sql statements are correct though because when I run in slime, I get the data I expect, and I have tested many
<ixelp> SQLITE - Sqlite package
<yottabyte> does anyone have any ideas? it is an old project...
<beach> cowboy8625: And then you can do closure conversion at the source level (hard) or you can define some abstract syntax trees on which you can do closure conversion. Or you can do it in intermediate code in the form of a traditional control graph.
rkazak has quit [Ping timeout: 272 seconds]
<beach> cowboy8625: Another "technique" would be the language you use for implementing this system of yours.
attila_lendvai has quit [Ping timeout: 252 seconds]
attila_lendvai has joined #commonlisp
rkazak has joined #commonlisp
spdegabrielle has quit [Quit: Connection closed for inactivity]
<cowboy8625> beach: interesting. I do have closures but i dont have any documention on how things work in the compiler as things change a lot.
<cowboy8625> like I said its a crap language right now.
hernan604 has joined #commonlisp
<cowboy8625> https://github.com/cowboy8625/neolisp if your interested in checking it out. lots of bad code though LOL
<ixelp> GitHub - cowboy8625/neolisp: a lisp language
livoreno has joined #commonlisp
<cowboy8625> its fun to mess with.
<cowboy8625> beach: you have given me something to think about. So your talking about a language specification?
attila_lendvai has quit [Ping timeout: 276 seconds]
rkazak has quit [Ping timeout: 276 seconds]
shawnw has joined #commonlisp
<beach> cowboy8625: yes.
<beach> cowboy8625: Am I to understand you implemented this in Rust?
<cowboy8625> beach: yes
<beach> cowboy8625: Why not in Common Lisp, since we are in #commonlisp?
yaneko has quit [Quit: parting]
<cowboy8625> why does the implemention language matter?
<beach> Oh wow!
<beach> It matters because some languages make it easier to write programs than others.
<beach> And if you are implementing something that resembles Common Lisp, then Common Lisp is the ideal language for doing so.
<cowboy8625> i dont think that matters at all if you know how to program.
<cowboy8625> programming is programming no matter what language your in.
<beach> I don't know what to say.
<cowboy8625> 👍
<gilberth> If you're not using Common Lisp you will find yourself Greenspuning. And about Rust: When I'm bored I write toy Lisps in all kind of funny languages like BASIC, Perl, PostScript, COBOL, or PostScript. Guess what: The Rust version was the slowest both in performance and to write and the least fun. Even writing in COBOL was more fun. The most fun was PostScript as it would compile to PostScript and not being an interpreter.
<beach> gilberth: Interesting hobby! :)
<cowboy8625> ok.. this is odd. I was just trying to share my project not to argue about what language i used and how that hurt your feelings. If you dont like x language that is fine. idk why it matters what i do.
<beach> cowboy8625: It probably doesn't. But since you mentioned it, this was the opportunity to ask you questions about it. And I made a sequence of videos about implementing Common Lisp, and the consequences of using a language other than Common Lisp.
<yottabyte> cowboy8625: your messages came off as a bit abrasive
kevingal has quit [Remote host closed the connection]
<beach> cowboy8625: I apologize for asking tough questions. I naively thought that you mentioned your project because you wanted to discuss it, and that's why I asked you questions about it. Plus, it is always interesting to me to see why and how people create Lisp-like languages and how they implement those languages.
rkazak has joined #commonlisp
<disruptek> gilberth: based on your experience throwing darts at implementation languages, would you agree that programming is programming?
<beach> disruptek: There are even published articles showing that the language matters a lot.
<beach> disruptek: I am specifically thinking of the (somewhat old) article by Hudak and Jones.
<disruptek> i don't disagree, but i don't think there's much point in engaging cowboy on this subject. i'd rather hear from an expert.
<beach> disruptek: I totally agree with you.
<disruptek> fwiw, i think this is what you had in mind: https://web.cecs.pdx.edu/~apt/cs457_2005/hudak-jones.pdf -- Haskell vs. Ada vs. C++ vs. Awk vs. ...An Experiment in Software Prototyping Productivity
<beach> Indeed.
Thermoriax has quit [Quit: bbl]
<beach> It suggests (though doesn't prove, of course) that there can be up to a factor 20 difference in productivity according to the language. Even if that is a gross exaggeration and the difference is (say) a modest 20%, that would be very significant still.
<beach> Hence my remark "I don't know what to say".
<disruptek> hardly a novel result, but to me the interesting conversation forms around the differences between languages and what they bring to the table in terms of design decisions.
<beach> That is indeed an interesting discussion, but perhaps not here in #commonlisp.
JuanDaugherty has quit [Quit: JuanDaugherty]
<disruptek> well, for example, implementing closures in different languages... as you pointed out in the first place.
<beach> Sure.
<beach> Another biggie is memory management.
<disruptek> numbers. how do they work?
<beach> Absolutely.
theruran has joined #commonlisp
<edgar-rft`> all my numbers are unemployed
FragmentedCurve has quit [Quit: Leaving]
rkazak has quit [Ping timeout: 272 seconds]
ym has joined #commonlisp
chum-cha has joined #commonlisp
<citizeno> I used ECL for the first time today.  Roswell (https://roswell.github.io/) is great for trying things out (plus trying to make sure cl-binary-store supports at some of the common common lisps).
<pranav> Hmm
<pranav> Sorry, wrong chat.
rkazak has joined #commonlisp
<NotThatRPG> citizeno: I have a full license for Allegro. If it's not too onerous, I could probably get cl-store to work there (and then we could use the free version for testing).
<citizeno> NotThatRPG: Funny, I was just trying out Allegro.  It doesn't work out of the box (segfaults --- the pointer returned by static-vectors cannot be used in cffi:mem-ref operations it seems).
<citizeno> (cl-binary-store now works on ECL and CCL, so it's probably not terrible to get it working on others... I couldn't get roswell to install abcl nor clisp.  I gave up on lispworks because of the heap limitation and the timeout for the free edition, and was just giving allegro a try)
<fe[nl]ix> citizeno: it would be good if you could debug this, since I no longer have an Allegro license
zxcvz has joined #commonlisp
rkazak has quit [Ping timeout: 252 seconds]
<jackdaniel> cowboy8625: not every lisp-like language strives to be as dynamic as common lisp; and it is good because a) monoculture is boring, b) having something leaner than CL certainly has its merits
<jackdaniel> you may consider implementing scheme r7rs which is somewhat minimalistic, yet it poses interesting problems from the compiler-design perspective
shawnw has quit [Ping timeout: 252 seconds]
akoana has joined #commonlisp
<jackdaniel> also while there is pending work on it, there is no CL impkementation that has started from ANSi Common Lisp as tge implementation language that has been completed to date. i.e sbcl is forked from cmucl that originates from spice lisp
<jackdaniel> oerhaos ccl is closest to that idea, I'm not sure
<jackdaniel> happy new year everyone btw
livoreno has quit [Quit: Connection closed for inactivity]
rkazak has joined #commonlisp
wacki has quit [Read error: Connection reset by peer]
<citizeno> Looks like the issue with cffi and allegro is alignment related --- you cannot do unaligned mem-refs: if you want to read a uint32 it has to be on a 4 byte boundary, etc.
wacki has joined #commonlisp
<cowboy8625> beach: sorry was away for min. I am very open to talking about "tough questions". But also keep in mind this is just a toy language Im probably not going to be working on next year so most of the answers to the questions are just "for fun". :)
<cowboy8625> Ive use a lot of languages and to me I enjoy writting in staticly typed languages is mostly why i picked rust.
shawnw has joined #commonlisp
rkazak has quit [Ping timeout: 248 seconds]
Lord_of_Life has quit [Ping timeout: 272 seconds]
Lord_of_Life has joined #commonlisp
<citizeno> Argh, not being able access foreign memory without alignment in Allegro is annoying (so 1990s!), but can be worked around...
<aeth> cowboy8625: I'm writing a statically typed Lisp, but I'm writing it in Common Lisp because while the domain it's intended for benefits heavily from static typing, the domain of compilers doesn't really, especially when working with Lisp source forms, represented as singly linked lists of atoms, whose type (at compile time) don't really matter that much.
rkazak has joined #commonlisp
<aeth> cowboy8625: Rust in particular, with its borrow checker, seems to have issues representing cons cells? And this is for "fearless concurrency" even though this part of the compiler doesn't need to run in parallel. It's just not the right tool for the job.
<aeth> Implementing a language inside of Common Lisp can also give you near-free Common Lisp interop if you have things that don't fit the language well.
<cowboy8625> i feel ya. Creating a FP lang with an FP lang would be ideal but its just a toy language. I can see what you mean and its probably the ideal way to go in a real implemention. I cant spell just so you know.
<aeth> Oh, and unless you're working from a specification (different Lisps have subtly different syntax), you get the reader (parser) for free. Although I have, previously, written one for Scheme in about 1000 lines (most of its complexity is parsing numbers) of Common Lisp because Scheme is one of those Lisps with subtly different syntax.
<aeth> But outside of Lisps, it is probably more work.
<cowboy8625> Very cool!
brokkoli_origin has quit [Ping timeout: 246 seconds]
rkazak has quit [Ping timeout: 265 seconds]
brokkoli_origin has joined #commonlisp
JuanDaugherty has joined #commonlisp
yitzi has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
varjag has joined #commonlisp
rkazak has joined #commonlisp
FragmentedCurve has joined #commonlisp
ndanilov_ has joined #commonlisp
NorthStar has joined #commonlisp
<citizeno> OK, that was an unpleasant couple hours...  cl-binary-store now works on Allegro Common Lisp.  Non-aligned cffi memory accesses are not allowed, so I worked around it.  I will say the exercise of getting this working on several other Common Lisp implementations did point out a bug or two (I started with SBCL, then CCL, then ECL, then Allegro...
<citizeno> I gave up on Lispworks because their personal version is frustrating, and neither ABCL nor CLISP get installed in a working form by Roswell).  Aside from on SBCL, performance is terrible (though I hold high hopes for Allegro, it just needs some work).
ndanilov has quit [Ping timeout: 260 seconds]
X-Scale has quit [Ping timeout: 276 seconds]
NorthStar is now known as X-Scale
rkazak has quit [Ping timeout: 248 seconds]
rkazak has joined #commonlisp
<citizeno> Anyone have any experience with ABCL and CFFI?  It dies on loading with "Class not found: com.sun.jna.Pointer".
ebrasca has quit [Remote host closed the connection]
rkazak has quit [Ping timeout: 264 seconds]
citizeno has quit [Ping timeout: 240 seconds]
Thermoriax has joined #commonlisp
citizeno has joined #commonlisp
Oladon1 has joined #commonlisp
Oladon has quit [Ping timeout: 252 seconds]
<random-nick> you need to install maven, then if it still doesn't work try running (require :jna) first
rkazak has joined #commonlisp
<citizeno> That worked, thank you!
chum-cha has quit [Read error: Connection reset by peer]
chum-cha has joined #commonlisp
Everything has joined #commonlisp
<jackdaniel> w/in 5
Thermoriax has quit [Quit: bbl]
<younder> Well, happy new year
rkazak has quit [Ping timeout: 248 seconds]
<Everything> younder: HNY!
chum-cha has quit [Ping timeout: 248 seconds]
rkazak has joined #commonlisp
pve has quit [Quit: leaving]
FragmentedCurve has quit [Quit: Leaving]
zxcvz has quit [Quit: zxcvz]
rkazak has quit [Ping timeout: 265 seconds]
amb007 has quit [Ping timeout: 265 seconds]
random-nick has quit [Ping timeout: 265 seconds]
screwlisp has joined #commonlisp
ufi has joined #commonlisp
random-nick has joined #commonlisp
Everything has quit [Quit: leaving]
younder has quit [Remote host closed the connection]
younder has joined #commonlisp
rkazak has joined #commonlisp
<citizeno> Argh.  Does anyone have experience with Allegro?  Getting it to generate good code is like pulling teeth... it won't inline setf calls even though they are declaimed inline, it has no type-inference capabilities as far as I can tell... you have to hold it's hand through everything.  OK, I'm probably over-reacting.  It has a nice :explain
<citizeno> facility to explain what the compiler is thinking, though I think thinking is a bit generous of a word.
ufi has quit [Quit: Leaving]
<younder> Not the best time..
<younder> HNY
<citizeno> Heh, yeah you are right.  I got a bit too caught up in this.  Going to go celebrate!  HNY all!
amb007 has joined #commonlisp
ym has quit [Ping timeout: 265 seconds]
rkazak has quit [Ping timeout: 252 seconds]
yakubin has joined #commonlisp
amb007 has quit [Ping timeout: 276 seconds]
amb007 has joined #commonlisp
rkazak has joined #commonlisp
rkazak has quit [Ping timeout: 248 seconds]
akoana has quit [Quit: leaving]