Xach 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>
s-liao has joined #commonlisp
thomaslewis has left #commonlisp [#commonlisp]
<rotateq> I just know of this uLisp for those devices.
<phantomics> I've heard of it, for my purposes will be easiest to just go with stock software on the Arduino and communicate with it from CL
<rotateq> But maybe as CLISP is very hardware portable ...
<Catie> It is?
<rotateq> Not? ^^
random-nick has quit [Ping timeout: 240 seconds]
s-liao has quit [Ping timeout: 256 seconds]
<Xach> phoe: it is pretty slow! but if speed isn't the key thing flexibility is nice
thomaslewis has joined #commonlisp
cranium has quit [Quit: Leaving]
thomaslewis has left #commonlisp [#commonlisp]
trocado has quit [Ping timeout: 240 seconds]
_73 has joined #commonlisp
thomaslewis has joined #commonlisp
thomaslewis has left #commonlisp [#commonlisp]
_73 has quit [Quit: ERC (IRC client for Emacs 27.2)]
huckleberry has quit [Ping timeout: 268 seconds]
s-liao has joined #commonlisp
tyson2 has joined #commonlisp
IPmonger has joined #commonlisp
IPmonger has quit [Remote host closed the connection]
VincentV` has quit [Remote host closed the connection]
dre has joined #commonlisp
<yottabyte> Some things I would like as I learn cl: I wish print took more than one argument so I could do like (print a b c)
<yottabyte> And I wish concatenate worked with numbers so I didn't have to first write-to-string them
<Xach> yottabyte: i often use (list a b c) in that situation. and sometimes (list :got-here a b c)
<yottabyte> Oh that's a good idea
<Xach> yottabyte: format is used in that situation pretty often
<yottabyte> Thank you, I will do that
<yottabyte> format is used when?
<Xach> when producing strings that have strings and numbers in them
<Xach> (format nil "foo ~A bar ~D" "quuz" 42)
<yottabyte> Ooo, I guess I'll have to start doing that
<Catie> I haven't used it myself, but there's also the printv package which I've heard is very nice
<yottabyte> I'll check that out too
<yottabyte> Xach are you the person who made quicklisp? If so, kudos to you, I love it. So easy to use. Coming from js and node/npm it's so refreshing
<Xach> yottabyte: glad to hear it's useful
jasom has quit [Quit: WeeChat 3.1]
* Xach hasn't yet gone mad with VC cash
taiju has quit [Ping timeout: 250 seconds]
<remexre> > yet
Alfr has quit [Remote host closed the connection]
Everything has quit [Ping timeout: 256 seconds]
Alfr has joined #commonlisp
Everything has joined #commonlisp
<drakonis> yet.
mrmr1 has joined #commonlisp
<rotateq> yottabyte: FORMAT is a beast of a powerful function facility :)
mrmr has quit [Ping timeout: 240 seconds]
mrmr1 is now known as mrmr
<Xach> oh man, i accidentally published two quicklisp updates this month.
<drakonis> nice?!
hjudt has joined #commonlisp
<drakonis> is that a bad thing?
<rotateq> cool, i could update sometime
<Xach> drakonis: it's not great to not be aware of when i made the last release, but it's not otherwise harmful
<drakonis> i see
<drakonis> there's new projects here
<Xach> I could have relaxed more during my vacation week
<dre> I'm about to go on vacation
<drakonis> i'm currently on vacation and learning cl
<dre> and was wanting to work a bit on putting common lisp into the vim conjure plugin
<drakonis> its v. nice.
<dre> drakonis, :D welcome
<rotateq> I just give the remainder of spacemacs :)
<dre> xD nooo~~ stop
<drakonis> i've heard about sicl while checking the available implementations and it looks pretty swell.
<rotateq> okay if you say so. i thought likewise at some point first
<rotateq> drakonis: yes very interesting :)
<drakonis> looks like clasp uses one of its libraries
Everything has quit [Quit: leaving]
<drakonis> https://github.com/lisp-polymorph/polymorph.stl this is very impressive.
<rotateq> yeah as it's also intended for implementors of other impls ^^ using modulwise
<rotateq> yes if it's appropriate
<drakonis> indeed
<rotateq> and sure, shadowing a symbol and then redefining with also using the cl:foo
<rotateq> and drakonis, iirc the first SICL module was for LOOP
<drakonis> fun.
<rotateq> and other videos tell about creating an impl ^^ or the SICL papers, but have to read most of those still (beside understanding)
<drakonis> i'm very much looking forward to seeing how it'll fare as a implementation target
amb007 has quit [Ping timeout: 256 seconds]
<rotateq> and then climacs as a CL editor and develope environment :)
amb007 has joined #commonlisp
<drakonis> haha yes
amb007 has quit [Read error: Connection reset by peer]
<drakonis> that would be lovely.
<drakonis> climacs as a emacs replacement
<rotateq> so really then completely "Now featuring 100% less C."
<drakonis> but the real killer feature would be a package that adds emacs compat for migrating off it
<rotateq> yes and with much improvement for CL editing as someone told me :)
<drakonis> yes.
amb007 has joined #commonlisp
<drakonis> is climacs usable right now?
taiju has joined #commonlisp
Algernon666 has quit [Read error: Network is unreachable]
<rotateq> I don't know.
<dre> what we really need is vimacs
<rotateq> you think so?
<drakonis> nahhh
<rotateq> :P
<drakonis> give me second climacs
<rotateq> emacs (the idea) as art of text editing
<rotateq> but surely, vim is powerful
<drakonis> robert wants to use sicl to make a lisp os
<drakonis> wow...
<drakonis> aight.
<rotateq> CLOSOS
<drakonis> the revival of the lisp machine beckons
<drakonis> LispOS
<rotateq> no the name i wrote :)
<drakonis> the world needs a nix/guix in cl
<rotateq> ohhh
<rotateq> hm you mean additional ideas from those maybe
<drakonis> also i remember linking consfigurator earlier today
<drakonis> its neat but it doesnt go all the way
<rotateq> yes but there's also a paper for CLOSOS
<rotateq> he will come up in ~2h if you have questions
<drakonis> i see
<rotateq> you could try running Mezzano
<drakonis> perhaps.
<drakonis> is CLOSOS newer or older than Li
<drakonis> lispos?
<sm2n> it's the same thing
<rotateq> it's more the paper for now :)
<drakonis> i see
<drakonis> neat.
<rotateq> but with FPGAs, nothing can stop us! :D
<drakonis> hah
<drakonis> does mezzano require a vm?
<rotateq> yes mostly you want it that way i would say
<drakonis> alright.
<rotateq> dre: hope you come along well on your journey
<dre> thanks :)
<dre> I'm getting along. I still love CL; just trying to find the time between everything else.
huckleberry has joined #commonlisp
<rotateq> love grows by time deeply
s-liao17 has joined #commonlisp
s-liao has quit [Ping timeout: 256 seconds]
huckleberry has quit [Ping timeout: 250 seconds]
<drakonis> but really, i kinda want to have common lisp as a system management layer and a daemon
<rotateq> ok
<drakonis> it takes work
<rotateq> yes everything does
<drakonis> consfigurator is a half measure
<drakonis> anyhow, gotta go back to learning
<rotateq> okay didn't want to annoy. good luck
<drakonis> i mean, i feel like i'm being annoying
huckleberry has joined #commonlisp
<rotateq> i wonder if someone i teach for some time now will come up by himself with a non-string solution for adding up the digits of an integer ^^
<rotateq> drakonis: you? no.
kotshie has quit [Ping timeout: 240 seconds]
igemnace has joined #commonlisp
huckleberry has quit [Ping timeout: 268 seconds]
huckleberry has joined #commonlisp
huckleberry has quit [Remote host closed the connection]
huckleberry has joined #commonlisp
huckleberry has quit [Quit: disconnected]
epolanski has quit [Quit: Connection closed for inactivity]
amb007 has quit [Ping timeout: 256 seconds]
amb007 has joined #commonlisp
s-liao17 has quit [Quit: Client closed]
<Catie> SBCL replaces #\LATIN_SMALL_LETTER_LONG_S in symbol names: 'ſomething => SOMETHING
<Catie> Neither CCL, ECL, nor CLISP do this, only SBCL
<mfiano> You can turn off normalization if you prefer.
<Catie> Oh interesting, okay
<mfiano> Section 7.1.2 of the manual.
<Catie> That is nuts, thank you for pointing me to it
<Catie> On second thought, I'm gonna keep it. This way long-s source code will still be evaluated as thought it were normal people source code
igemnace has quit [Quit: WeeChat 3.4]
s-liao has joined #commonlisp
<drakonis> ah i finally recognized where i saw consfigurator's author first
<drakonis> he maintains the anaphora package
terrorjack has quit [Quit: The Lounge - https://thelounge.chat]
terrorjack has joined #commonlisp
s-liao has quit [Ping timeout: 256 seconds]
<beach> Good morning everyone!
<drakonis> mornin'
semz has quit [Ping timeout: 240 seconds]
karlosz has quit [Quit: karlosz]
thomaslewis has joined #commonlisp
karlosz has joined #commonlisp
semz has joined #commonlisp
thomaslewis has left #commonlisp [#commonlisp]
thomaslewis has joined #commonlisp
thomaslewis has left #commonlisp [#commonlisp]
akoana has joined #commonlisp
thomaslewis has joined #commonlisp
thomaslewis has left #commonlisp [#commonlisp]
thomaslewis has joined #commonlisp
thomaslewis has left #commonlisp [#commonlisp]
tyson2 has quit [Remote host closed the connection]
taiju has quit [Ping timeout: 240 seconds]
Bike has quit [Quit: sleep]
aartaka has joined #commonlisp
thomaslewis has joined #commonlisp
thomaslewis has left #commonlisp [#commonlisp]
_paul0 has joined #commonlisp
paul0 has quit [Ping timeout: 245 seconds]
jeosol has quit [Quit: Ping timeout (120 seconds)]
jeosol has joined #commonlisp
alcaeus has joined #commonlisp
waleee has quit [Ping timeout: 268 seconds]
<dre> Good morning BEACH!
<dre> I'm about to go on holiday to the #beach
<dre> my plans: swin, nap, lisp, repeat, probably
<beach> Southern hemisphere, I take it?
hexology has quit [Quit: hex on you ...]
Jing has quit [Remote host closed the connection]
<dre> yeah
jealousmonk has quit [Quit: ERC (IRC client for Emacs 27.1)]
<dre> we have a lot less land down here, so there's less to worry about
Jing has joined #commonlisp
hexology has joined #commonlisp
Everything has joined #commonlisp
taiju has joined #commonlisp
Jing has quit [Read error: Connection reset by peer]
Jing has joined #commonlisp
s-liao has joined #commonlisp
<stylewarning> i have situated a popcorn machine next to my surplus symbolics monitors
<stylewarning> they'll probably smell like popcorn and burnt cons cells
Alfr has quit [Killed (molybdenum.libera.chat (Nickname regained by services))]
Alfr has joined #commonlisp
alcaeus has quit [Remote host closed the connection]
taiju has quit [Ping timeout: 240 seconds]
taiju has joined #commonlisp
pjb has joined #commonlisp
akoana has quit [Quit: leaving]
attila_lendvai has joined #commonlisp
winning-luser has joined #commonlisp
winning-luser has quit [Client Quit]
s-liao has quit [Ping timeout: 256 seconds]
lisp123 has joined #commonlisp
lisp123 has quit [Ping timeout: 268 seconds]
akoana has joined #commonlisp
s-liao has joined #commonlisp
pve has joined #commonlisp
taiju has quit [Read error: Connection reset by peer]
dre has quit [Ping timeout: 260 seconds]
taiju has joined #commonlisp
gaqwas has joined #commonlisp
gaqwas has quit [Remote host closed the connection]
Krystof has joined #commonlisp
karlosz has quit [Quit: karlosz]
aartaka has quit [Ping timeout: 260 seconds]
nij- has joined #commonlisp
<frodef> good morning! Any recommendations for a test framework?
<nij-> Heard of fiveam many times.
<Shinmera> There's also this survey. https://sabracrolleton.github.io/testing-framework
epolanski has joined #commonlisp
<Shinmera> Which I'm happy to say names Parachute as the overall "best".
<Shinmera> That's in quotes because it depends on what you need.
aartaka has joined #commonlisp
<frodef> That survey was quite an extensive answer :) Thanks!
<nij-> Yeah. Thanks for sharing!
<frodef> I've tried to look at fiveam, but I find the documentation overly terse.
cosimone has joined #commonlisp
Algernon69 has joined #commonlisp
Algernon91 has joined #commonlisp
akoana has quit [Quit: leaving]
aartaka has quit [Ping timeout: 252 seconds]
aartaka has joined #commonlisp
Algernon69 has quit [Ping timeout: 240 seconds]
s-liao has quit [Ping timeout: 256 seconds]
<jackdaniel> Shinmera: autoquoting functions in IS is quite annoying, I can't say i.e (rcurry #'member …) because it recognizes only symbols and lambda expressions
<Shinmera> you mean for the comparator?
<jackdaniel> yes
<Shinmera> Yeah I'm not too happy with the magic of that either
<frodef> So about testing, is the "best practice" to put tests in separate source file(s) from the code, or intertwine it with the target code, or what?
<Shinmera> separate files. you don't want to pull in a test framework as a dependency for your regular library.
<jackdaniel> well, you can always put them behind a feature flag
<Shinmera> that's not going to fly well with asdf.
<jackdaniel> i.e #+fiveam (Deftest …) but yeah, they are usually in separate files
rain3 has joined #commonlisp
<Shinmera> jackdaniel: Re your issue, could you file that as a ticket https://github.com/shinmera/parachute/issues ?
<Shinmera> Thanks
<jackdaniel> if I'll remember when truly in front of the compute then sure
nij- has left #commonlisp [#commonlisp]
<frodef> Could I ask for a pointer to a project I can look at that uses parachute "like it should be done" more or less?
<frodef> Thanks!
<Shinmera> Here's another that uses it in a much less conventional way to process a couple million tests. https://github.com/Shinmera/uax-9/blob/master/test.lisp
aartaka has quit [Ping timeout: 252 seconds]
Lord_of_Life_ has joined #commonlisp
Lord_of_Life has quit [Ping timeout: 256 seconds]
Lord_of_Life_ is now known as Lord_of_Life
aartaka has joined #commonlisp
<phoe> Shinmera: in https://github.com/Shinmera/uax-9/blob/master/test.lisp you :USE parachute in L8 and then redefine PARACHUTE:TEST in L16?
<Shinmera> note the :shadow
s-liao has joined #commonlisp
<phoe> welp
* phoe notes
mingus has joined #commonlisp
amb007 has quit [Ping timeout: 256 seconds]
utis has joined #commonlisp
<utis> i had a feeling i'd seen a way to have a long argument name that shows up in slime hints and a short one in the function, but couldn't find it. i suppose there's no such feature?
amb007 has joined #commonlisp
<phoe> long argument name, what do you mean?
<phoe> as in, you have a symbol with a really long name interned into some package and you want to locate it?
<utis> like (defun foo (string) . . . but with `s' in the body
<phoe> oh, like that
cage has joined #commonlisp
<phoe> hm, I guess you could (defun foo (string) (symbol-macrolet ((s string)) ...))
<Shinmera> why bother, just (let ((s string)) ...)
<phoe> or that, sure
<utis> yeah, just wanted to make sure there wasn't a neat builtin way of doing it
Jing has quit [Ping timeout: 240 seconds]
<Shinmera> another solution is to just write an emacs macro to type out the long name for you ;)
<utis> it's more that i like having hints that are simlar to those in other functions, but i don't like the sight of long names repeated
attila_lendvai has quit [Ping timeout: 240 seconds]
Jing has joined #commonlisp
<utis> how about defgeneric with long names and defmethod with short names? is it a bad idea to use methods when functions suffice?
<Shinmera> Yes
<Shinmera> Anyway, I'm writing a roundup for all that happened in 2021 with Kandria. What's everyone else up to on the last day of the year?
mingus has quit [Ping timeout: 250 seconds]
<phoe> well I'm having fun with lisp after a long sabbatical from programming in it
<phoe> doing some vector graphics in it with Xach's vecto in order to make a tile generator for one board game
<Shinmera> cool
<Shinmera> Anything to show?
<Shinmera> sick
<phoe> plus the recent vecto PR that adds radial gradients
<Shinmera> Reminds me I still need to add support for gradients into Alloy's GL backend.
<Shinmera> (which reminds me of a huge number of other things that still need to be done, SIGH)
<phoe> and all of that is generated from 300 lines/10kB of my own Lisp code plus vecto
<kakuhen> phoe: you reminded me i made fast progress on some toy mahjong utility, only to suddenly stop because I couldn't think of a good algorithm to count sequences for shanten calculations
<phoe> kakuhen: gasp
<kakuhen> it was also the first program i got to use reader macros in, since my notation for tiles uses lists internally
<phoe> maybe we can join forces eventually, I also need to do shanten calculation in my mahjong stuff
<kakuhen> but i allow the usual to input hands with the "usual" notation
<kakuhen> and an ugly reader macro converts user input to a list in a format my program accepts for processing tiles
<kakuhen> allow the user to input* oops
<phoe> I think I have a reader macro too
<kakuhen> yeah so mine will do something like [123m4p] ;=> ((1 man) (2 man) (3 man) (4 pin))
<kakuhen> then I defined a tile type that basically pattern matches against the lists in a list
<phoe> oh, I just parse strings for hands
<kakuhen> it may not be a good representation but i stuck with it over, say, a CLOS object, for simplicity
<phoe> doing a reader macro is trivial at that point
<kakuhen> yeah; also, the list representation is nice because then counting frequencies of tiles in a hand is really elegant, at least to me
<phoe> sure
<kakuhen> i populate a hashtable with tiles not associated yet, then maphash to get what i want
<kakuhen> its hard to explain in english; id have to share the code
s-liao has quit [Ping timeout: 256 seconds]
<kakuhen> but its really simple and generalizes to counting n repetitions of tiles in a hand
<kakuhen> then i had to count sequences and got lazy because I dont know how I should interpret, say, 4556
<kakuhen> Should the algorithm consider it one sequence and an isolated tile? or two partially complete sequences? Which one you choose will alter the end result
<kakuhen> anyway this is barely CL related so I'll end here
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #commonlisp
treflip has joined #commonlisp
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #commonlisp
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #commonlisp
Alfr is now known as Guest1333
Guest1333 has quit [Killed (strontium.libera.chat (Nickname regained by services))]
Alfr has joined #commonlisp
<sm2n> I'm not sure who to tell this to, but cliki appears to be down
<rotateq> yes could happen some time due to how it's hosted
<rotateq> but i don't have a clue where and how it is
* phoe takes it to #common-lisp.net
<rotateq> oh there's such channel .. *curious*
lisp123 has joined #commonlisp
pranavats has left #commonlisp [Error from remote client]
mingus has joined #commonlisp
mingus has quit [Client Quit]
s-liao has joined #commonlisp
aartaka has quit [Ping timeout: 260 seconds]
aartaka has joined #commonlisp
tyson2 has joined #commonlisp
Inline has quit [Quit: Leaving]
miique has joined #commonlisp
azimut has quit [Remote host closed the connection]
azimut has joined #commonlisp
pranavats has joined #commonlisp
_73 has joined #commonlisp
random-nick has joined #commonlisp
Inline has joined #commonlisp
Inline has quit [Client Quit]
Inline has joined #commonlisp
s-liao has quit [Ping timeout: 256 seconds]
<etimmons> On this last day of the year, I'm learning more than I ever wanted to know about win32 APIs
<etimmons> (working on cl-tar extraction/creation on Windows and want to handle symlinks)
<tyson2> my former boss, one of the designers of Logo, Scratch, etc., really misses the win 32 api. Now he implements stuff in javascript :(
<rotateq> "And if you want to trick your boss that you can do stuff in LISP, tell him it's similar to XML." :D
s-liao has joined #commonlisp
<ns12> Hello, when using MAPHASH, it is possible to abort the iteration without going through the rest of the keys of the hash table? For example, if I have found the key-value combination that I am looking for, I no longer want to look at the rest of the entries in the hash table.
<_death> (block foo ... (return-from foo) ...)
<frodef> ns12: Yes, with RETURN, or GO, or whatever.
<rotateq> or you do it via LOOP
<ns12> Okay, I could probably do (block foo (maphash (lambda (k v) ... (return-from foo)) the-hash-table))
<Shinmera> etimmons: At least it's documented.
<_death> you can also check out with-hash-table-iterator
<ns12> Is it possible to iterate through a hash table using a DO loop?
<_death> w-h-t-i gives you a function to call, so you can call it in the DO form
<_death> the issue there is that it uses multiple values, which makes you jump through hoops if you don't call it in the DO body.. so there are more straightforward solutions
<Shinmera> Why *do* you want to do it with DO or maphash anyway
<Shinmera> LOOP is almost always more concise and clear for this purpose.
<ns12> Shinmera: Currently learning about the different methods of iterating over hash tables.
<ns12> _death: Thanks for the tips.
waleee has joined #commonlisp
<ns12> phoe: What is #common-lisp.net?
Algernon91 has quit [Read error: Network is unreachable]
<rotateq> ns12: another channel
<ns12> But what's the topic there?
Algernon91 has joined #commonlisp
<rotateq> or maybe a rewritten #c dispatch macro character ..? who knows :)
<ns12> It's Common Lisp, but how is it different from this channel?
taiju has quit [Ping timeout: 240 seconds]
<rotateq> it's due to the website i might think
s-liao has quit [Quit: Client closed]
<phoe> ns12: it's not about common lisp itself, it's about the Common Lisp Foundation, https://common-lisp.net and related services
taiju has joined #commonlisp
tyson2 has quit [Remote host closed the connection]
khrbt has quit [Quit: ZNC 1.7.2+deb3 - https://znc.in]
<etimmons> Shinmera: true! I'm actually mostly happy with the experience so far. I'm just a bit salty that the only real way to get the target of a symlink is an ioctl followed by some parsing of a data structure that contains a maybe not null terminated wide string.
<etimmons> At least doing this in CL means I can iterate fast when trying to figure out how it all works :)
lisp123 has quit [Remote host closed the connection]
Algernon91 has quit [Ping timeout: 245 seconds]
<Shinmera> Yeah, at least until your image gets corrupted
<_73> I am having trouble figuring out the syntax for passing a condition argument to the SIGNALS macro from the fiveam system. I can't find an example of its usage. I am specifically confused about the error message `unknown type specifier: QUOTE`? http://dpaste.com/GHYNZGJLJ
Algernon91 has joined #commonlisp
<beach> _73: Since it is a macro, maybe the type specifier is not evaluated.
<beach> _73: If so, remove the quote in front of FOO-ERROR after SIGNALS.
<beach> The SIGNALS macro has a bad docstring.
<_73> one moment I am still getting an error
<beach> But I am guessing that it is saying exactly that, i.e., that the CONDITION-SPEC argument is not evaluated.
<beach> _73: [unrelated] Also, I suspect that the THROWS in the name is inappropriate
<_73> When I unquote FOO-ERROR I now get `unknown type specifier: FOO-ERROR` http://dpaste.com/ACQGPZCVX
<beach> That's probably because you haven't defined any condition type with that name.
<_73> oh so ERROR does not automatically define a condition type for me?
<beach> That's correct. It doesn't. How could it? How would it know what slots to put in it? How would it know how to report it?
<_73> now I understand thanks. Why do you say THROWS in the name is inappropriate?
<beach> Because I don't see anything being thrown.
<beach> clhs throw
<_73> ok I just don't understand condition systems well enough yet
<beach> _73: THROW is not part of the condition system. Errors are not "thrown" in Common Lisp. They are "signaled".
<phoe> in general, conditions are signaled, not thrown - that's the CL nomenclature, "throw" is a control flow concept whereas "signal" is a condition concept
<beach> In general, conditions are "signaled".
<rotateq> beach: Do you sometimes use the special operators CATCH and THROW directly or more in macros? (like with maybe TAGBODY)
<beach> I don't think I have used it in a macro, but I use it for that kind of non-local transfer of control.
<beach> ... when I need that.
<phoe> I'm not beach but I used catch/throw recently while implementing amb, https://github.com/phoe/amb/blob/main/src/amb.lisp
<rotateq> phoe: You're always welcome too of course!
<phoe> they're a natural fit for backtracking
<phoe> :D
<rotateq> Maybe when I finally read and understood more of your book I finally can do something more with the condition system.
<phoe> to be honest, nowadays I think TCLCS is less about the condition system and more about using control flow techniques and macro writing
<phoe> at least the first two big parts are
<frodef> Is there any other language (than CL) that doesn't conflate SIGNAL and THROW?
<beach> Maybe Multics PL/I since it was the inspiration for the Common Lisp condition system.
<rotateq> frodef: Erlang is also very interactive as a system runs, but I don't know what terms they use.
<frodef> Shinmera: parachute looks good! When I have a bit of combinatorial explosion in generated tests, is there a way to group them so as to avoid hundreds of checkmarks in the default report?
_paul0 has quit [Remote host closed the connection]
<Shinmera> There's no facility in the plain report to hide groups, but there is a grouping macro to make more fine-grained groups than on the test definition level.
<Shinmera> err, hide group contents.
<frodef> Shinmera: what macro is that? Searching for "group" fails me..
<Shinmera> frodef: (apropos "group" "PARACHUTE") ; => group fbound
<frodef> righ, I was searching https://shinmera.github.io/parachute/ :)
<Shinmera> Ah, yeah. Docs are not autogenerated, so might be out of date.
<frodef> hm.. isn't the point of autogenerated docs that they *don't* go out of date? :)
<Shinmera> you might be missing a *not* here.
_73 has quit [Remote host closed the connection]
<frodef> hm.. how so?
<phoe> the parachute docs are *NOT* autogenerated
<frodef> ah, sorry, I misunderstood! :)
<frodef> s/misunderstood/failed at reading
<MichaelRaskin> phoe: hmm now I read your tests and fail to understand if (amb:amb ((x (list 1 2))) (amb:constrain (> x 1)) x) should work
aartaka has quit [Ping timeout: 240 seconds]
<phoe> MichaelRaskin: it should work, if I understand it correctly
<frodef> rotateq: From a glance, Erlang seems to conflate SIGNAL and THROW completely.
<phoe> X is allowed to take values from (1 2)
<phoe> then there is a constraint that X must be greater than 1
<phoe> 1 does not match that constraint, but 2 does, so then X is returned
<sm2n> frodef: what it essentially comes down to is having both nonlocal exits and having access to both dynamic and lexical scope, I think
<sm2n> and no other language is coming to mind, but I'm sure there's some niche scheme that implements both (throw/signal)
<MichaelRaskin> Oh how interesting, if I load amb.lisp directly (lazy me) it half-works, but via ASDF it works properly, and I don't see why is the difference
jstoddard has joined #commonlisp
<frodef> sm2n: I also rather suspect that THROW/SIGNAL is the prize (among several) you get when you haven't made a lot of horrible assumptions early on in your language/runtime design :-)
<sm2n> sure
attila_lendvai has joined #commonlisp
raeda has quit [Remote host closed the connection]
raeda has joined #commonlisp
<phoe> half-works? what do you mean?
<MichaelRaskin> Without constraints it works, but with constraints it does not
tyson2 has joined #commonlisp
<MichaelRaskin> I am just impressed that it is not obvious what is the source of the problem when loading things wrong
gaqwas has joined #commonlisp
gaqwas has quit [Remote host closed the connection]
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #commonlisp
amb007 has quit [Ping timeout: 245 seconds]
amb007 has joined #commonlisp
<sm2n> Shinmera: is there a reason that parachute uses a fullwidth question mark in the default report?
<sm2n> it's bothered me for a while because it usually means it goes to a fallback font and that screws up the spacing
<Shinmera> because the other ones also use a unicode symbol that is typically full-width, so that it's aligned.
szkl has quit [Quit: Connection closed for inactivity]
<Shinmera> there's no pleasing everyone though, depending on the font it's gonna be wrong one way or the other.
<Nilby> I appreciate the lovely big check marks.
amb007 has quit [Ping timeout: 260 seconds]
amb007 has joined #commonlisp
<sm2n> fair enough I guess
jealousmonk has joined #commonlisp
Jing has quit [Remote host closed the connection]
Devon has quit [Ping timeout: 240 seconds]
mrmr5 has joined #commonlisp
Jing has joined #commonlisp
mrmr has quit [Ping timeout: 256 seconds]
mrmr5 is now known as mrmr
<Josh_2> Is cliki dead?
<hobo> shouldn't be
<phoe> MichaelRaskin: weird!
<Josh_2> hmm
<Josh_2> Got a 503
<phoe> Josh_2: yes, there is an issue
<Josh_2> rip, I should have saved the bknr manual
<Josh_2> ha, nice I have it open in another tab
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #commonlisp
rain3 has quit [Ping timeout: 240 seconds]
attila_lendvai has quit [Ping timeout: 240 seconds]
<hobo> Shinmera: i thought the only "correct" font was Comic Sans M?
<hobo> MS*
<hobo> ;)
<Josh_2> oof
gaqwas has joined #commonlisp
<Shinmera> Alright, the year-roundup is done: https://reader.tymoon.eu/article/404
<phoe> looks like cliki is back up, Josh_2
<phoe> (for now)
<phoe> MichaelRaskin: I cannot reproduce this issue on my machine
paul0 has joined #commonlisp
<MichaelRaskin> 2.1.11?
<MichaelRaskin> (SBCL version)
<phoe> yes
<MichaelRaskin> Interesting…
<MichaelRaskin> (I load alexandria via ASDF and only load amb.lisp directly but not documentation)
<phoe> I did the same
<phoe> no problems running that repl example
paul0 has quit [Remote host closed the connection]
Inline has quit [Quit: Leaving]
Inline has joined #commonlisp
<sm2n> Shinmera: not the kind of 404 page I expected :)
<Shinmera> Yeah, well, we also passed other kinds of unfortunate numbers in my blog posts already.
<sm2n> btw, the plain text email rendering of the post is broken
<sm2n> there's no spacing
danieli has quit [Quit: Alpine Linux, the security-oriented, lightweight Linux distribution]
paul0 has joined #commonlisp
danieli has joined #commonlisp
aeth has quit [Ping timeout: 268 seconds]
aeth has joined #commonlisp
gaqwas has quit [Remote host closed the connection]
karlosz has joined #commonlisp
karlosz has quit [Quit: karlosz]
kotshie has joined #commonlisp
<Shinmera> Ah, damn. Good to know, thanks. I guess https://github.com/Shirakumo/courier/blob/master/send.lisp#L19 needs some more work :)
euandreh has quit [Ping timeout: 260 seconds]
euandreh has joined #commonlisp
hjudt has quit [Read error: Connection reset by peer]
<MichaelRaskin> phoe: thanks for checking…
tfeb has joined #commonlisp
amb007 has quit [Ping timeout: 256 seconds]
amb007 has joined #commonlisp
<Fade> I see christophe has tagged sbcl 2.2.0
<Fade> thanks fellas. nice cap to the year. :)
tfeb has quit [Quit: died]
karlosz has joined #commonlisp
alcaeus has joined #commonlisp
<phoe> :D
<phoe> and a new quicklisp dist!
Algernon91 has quit [Ping timeout: 240 seconds]
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #commonlisp
Algernon91 has joined #commonlisp
Algernon91 has quit [Ping timeout: 268 seconds]
<yottabyte> What's the difference between split-sequence and split?
<phoe> where's split from?
<yottabyte> I guess they're from different libraries and split takes regex?
<phoe> oh, yes
<phoe> so split-sequence only splits with delimiters of length 1, so, single sequence elements
<phoe> whereas the regex split utilizes regex
<yottabyte> Gotcha
Jing has quit [Ping timeout: 268 seconds]
Jing has joined #commonlisp
pk has joined #commonlisp
Oladon has joined #commonlisp
<aeth> imo, always use the simplest function for the task
<phoe> ^
<aeth> combination of probably faster + more people can understand it
jasom has joined #commonlisp
karlosz has quit [Quit: karlosz]
VincentVega has joined #commonlisp
NotThatRPG has quit [Remote host closed the connection]
amb007 has quit [Ping timeout: 256 seconds]
amb007 has joined #commonlisp
NotThatRPG has joined #commonlisp
NotThatRPG has quit [Read error: Connection reset by peer]
epolanski has quit [Quit: Connection closed for inactivity]
akoana has joined #commonlisp
myrrh has joined #commonlisp
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #commonlisp
VincentVega has left #commonlisp [ERC (IRC client for Emacs 27.2)]
notzmv has quit [Ping timeout: 260 seconds]
<alcaeus> Question: how do you loop some code over one second? Something that looks like this but that works. https://pastebin.com/9n1ymdkD
<pjb> alcaeus: dont' use equal but <
<pjb> or >
<pjb> alcaeus: also, get-internal-real-time gives you time in some internal unit. So 1000000 internal units can be whatever.
<pjb> alcaeus: multiply with internal-time-units-per-second
<pjb> (or divide).
<alcaeus> pjb: figured equal might be an issue, but with < it still returns nil (internal-time-units-per-second = 1000000 on sbcl)
<pjb> No, even on sbcl, internal-time-units-per-second can be anything.
<pjb> It depends.
attila_lendvai has joined #commonlisp
<pjb> There's a #sbcl channel too.
<alcaeus> thanks but the code is still not returning internal-time-units-per-second, which is the goal... is it a misplaced return statement? my loop fu is not great either :P
<sm2n> what are you actually trying to do?
<sm2n> you're never going to have it be exact
<pjb> Well, without loop body, it can be close enough: https://termbin.com/zipc
<alcaeus> it's an emacs exercise, i want to do color manipulations on recently typed characters for up to a second
<pjb> emacs has different time functions.
<alcaeus> oh, figures. thanks all, that is a lot of useful info though.
<Nilby> in emacs sometimes the mysterious answer is (sit-for 0)
karlosz has joined #commonlisp
phantomics has quit [Ping timeout: 240 seconds]
eddof13 has joined #commonlisp
attila_lendvai has quit [Ping timeout: 250 seconds]
Oladon has quit [Quit: Leaving.]
phantomics has joined #commonlisp
* phoe inserts a few declarations into vecto, gets a 40% speed boost
perrierjouet has quit [Quit: WeeChat 3.4]
perrierjouet has joined #commonlisp
Oladon has joined #commonlisp
alcaeus has quit [Ping timeout: 256 seconds]
cosimone has quit [Quit: ERC (IRC client for Emacs 27.1)]
<edgar-rft> (declare (speed +40%))
Bike has joined #commonlisp
<rotateq> (declare (cishness -100%))
cage has quit [Quit: rcirc on GNU Emacs 27.1]
euandreh has quit [Ping timeout: 250 seconds]
Devon has joined #commonlisp
kevingal has joined #commonlisp
Jing has quit [Remote host closed the connection]
Jing has joined #commonlisp
Oladon has quit [Quit: Leaving.]
euandreh has joined #commonlisp
notzmv has joined #commonlisp
amb007 has quit [Ping timeout: 240 seconds]
utis has quit [Quit: leaving]
Algernon69 has joined #commonlisp
Algernon69 has quit [Ping timeout: 268 seconds]
pranavats has left #commonlisp [Error from remote client]
qhong_ has joined #commonlisp
rgherdt__ has joined #commonlisp
Alfr has quit [Killed (calcium.libera.chat (Nickname regained by services))]
Alfr has joined #commonlisp
Inline__ has joined #commonlisp
kotshie_ has joined #commonlisp
miique_ has joined #commonlisp
luis7 has joined #commonlisp
myrrh has joined #commonlisp
myrrh has quit [Changing host]
slyrus has quit [Quit: Leaving]
raeda_ has joined #commonlisp
hobo_ has joined #commonlisp
jgkamat- has joined #commonlisp
luna-is-here_ has joined #commonlisp
snits_ has joined #commonlisp
jaimelm_ has joined #commonlisp
BerntH_ has joined #commonlisp
jgkamat has quit [Killed (NickServ (GHOST command used by jgkamat-))]
jgkamat- is now known as jgkamat
pve_ has joined #commonlisp
phadthai_ has joined #commonlisp
ryanbw1 has joined #commonlisp
engblom_ has joined #commonlisp
thomaslewis has joined #commonlisp
thomaslewis has left #commonlisp [#commonlisp]
Devon has quit [*.net *.split]
perrierjouet has quit [*.net *.split]
kotshie has quit [*.net *.split]
Inline has quit [*.net *.split]
raeda has quit [*.net *.split]
miique has quit [*.net *.split]
treflip has quit [*.net *.split]
Krystof has quit [*.net *.split]
hexology has quit [*.net *.split]
pve has quit [*.net *.split]
frodef has quit [*.net *.split]
x88x88x has quit [*.net *.split]
rgherdt_ has quit [*.net *.split]
Catie has quit [*.net *.split]
MetaYan has quit [*.net *.split]
BerntH has quit [*.net *.split]
theBlackDragon has quit [*.net *.split]
stacksmith has quit [*.net *.split]
psf has quit [*.net *.split]
MichaelRaskin has quit [*.net *.split]
luna-is-here has quit [*.net *.split]
luis has quit [*.net *.split]
empwilli has quit [*.net *.split]
qhong has quit [*.net *.split]
ryanbw has quit [*.net *.split]
engblom has quit [*.net *.split]
snits has quit [*.net *.split]
dtman34 has quit [*.net *.split]
saturn2 has quit [*.net *.split]
hobo has quit [*.net *.split]
specbot has quit [*.net *.split]
mister_m has quit [*.net *.split]
_death has quit [*.net *.split]
phadthai has quit [*.net *.split]
jaimelm has quit [*.net *.split]
jgart has quit [*.net *.split]
fitzsim has quit [*.net *.split]
gabc has quit [*.net *.split]
okflo has quit [*.net *.split]
luis7 is now known as luis
thomaslewis has joined #commonlisp
fitzsim has joined #commonlisp
phadthai_ is now known as phadthai
thomaslewis has left #commonlisp [#commonlisp]
treflip` has joined #commonlisp
frodef has joined #commonlisp
theBlackDragon has joined #commonlisp
pranavats has joined #commonlisp
perrierjouet has joined #commonlisp
Krystof has joined #commonlisp
x88x88x has joined #commonlisp
psf has joined #commonlisp
Devon has joined #commonlisp
hexology has joined #commonlisp
Catie has joined #commonlisp
dtman34 has joined #commonlisp
mister_m has joined #commonlisp
saturn2 has joined #commonlisp
okflo has joined #commonlisp
specbot has joined #commonlisp
stacksmith has joined #commonlisp
gabc has joined #commonlisp
_death has joined #commonlisp
MetaYan has joined #commonlisp
empwilli has joined #commonlisp
amb007 has joined #commonlisp
azimut has quit [Ping timeout: 276 seconds]
treflip` has quit [Quit: ERC (IRC client for Emacs 27.2)]
treflip has joined #commonlisp
ryanbw1 is now known as ryanbw
Oladon has joined #commonlisp
pve_ has quit [Quit: leaving]
Inline__ is now known as Inline
karlosz has quit [Quit: karlosz]
Jing has quit [Remote host closed the connection]
Jing has joined #commonlisp
amb007 has quit [Ping timeout: 250 seconds]
taiju has quit [Remote host closed the connection]
taiju has joined #commonlisp
amb007 has joined #commonlisp
eddof13 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]