jackdaniel changed the topic of #lisp to: Common Lisp, the #1=(programmable . #1#) programming language | <https://irclog.tymoon.eu/freenode/%23lisp> <https://irclog.whitequark.org/lisp> <http://ccl.clozure.com/irc-logs/lisp/> | offtopic --> #lispcafe
joast has quit [Quit: Leaving.]
Bourne has quit [Ping timeout: 264 seconds]
Cthulhux has quit [Quit: ne praeteriverit priusquam obesa cantaverit]
Cthulhux has joined #lisp
aindilis has quit [Remote host closed the connection]
pankajsg has quit [Ping timeout: 240 seconds]
joast has joined #lisp
notzmv has joined #lisp
karlosz has quit [Quit: karlosz]
rgherdt has quit [Ping timeout: 246 seconds]
kevingal_ has quit [Remote host closed the connection]
kevingal has quit [Remote host closed the connection]
nicktick has joined #lisp
mindCrime_ has quit [Excess Flood]
gzj has joined #lisp
mindCrime_ has joined #lisp
gzj has quit [Remote host closed the connection]
matryoshka has joined #lisp
gzj has joined #lisp
notzmv has quit [Ping timeout: 256 seconds]
grobe0ba has quit [Quit: ZNC 1.7.5 - https://znc.in]
grobe0ba has joined #lisp
rtypo has quit [Quit: WeeChat 3.0]
gzj has quit [Remote host closed the connection]
gzj has joined #lisp
loli has quit [Quit: WeeChat 3.0.1]
loli has joined #lisp
akoana has left #lisp ["Leaving"]
loli has quit [Quit: WeeChat 3.0.1]
skapata has quit [Remote host closed the connection]
gitgood has joined #lisp
loli has joined #lisp
gitgoood has quit [Read error: Connection reset by peer]
emacsoma1 has quit [Quit: WeeChat 3.0]
loli has quit [Client Quit]
emacsomancer has joined #lisp
jonatack_ has quit [Ping timeout: 245 seconds]
loli has joined #lisp
wxie has joined #lisp
semz has quit [Ping timeout: 260 seconds]
quazimodo has quit [Ping timeout: 264 seconds]
quazimodo has joined #lisp
semz has joined #lisp
gitgood has quit [Read error: Connection reset by peer]
texno has quit [Ping timeout: 260 seconds]
gzj has quit [Remote host closed the connection]
gzj has joined #lisp
texno has joined #lisp
Lord_of_Life_ has joined #lisp
Lord_of_Life has quit [Ping timeout: 245 seconds]
jpli has joined #lisp
Lord_of_Life_ is now known as Lord_of_Life
charles` has joined #lisp
antonv has quit [Ping timeout: 245 seconds]
wxie has quit [Quit: wxie]
notzmv has joined #lisp
troydm has quit [Quit: What is Hope? That all of your wishes and all of your dreams come true? To turn back time because things were not supposed to happen like that (C) Rau Le Creuset]
troydm has joined #lisp
charles` has quit [Ping timeout: 264 seconds]
notzmv has quit [Ping timeout: 260 seconds]
fitzsim has quit [Ping timeout: 260 seconds]
gzj has quit [Remote host closed the connection]
gzj has joined #lisp
mindCrime_ has quit [Ping timeout: 264 seconds]
edgar-rft has joined #lisp
ech has quit [Ping timeout: 268 seconds]
_whitelogger has joined #lisp
anticrisis_ has joined #lisp
anticrisis has quit [Ping timeout: 245 seconds]
aindilis has joined #lisp
Jeanne-Kamikaze has quit [Quit: Leaving]
aggin has joined #lisp
aggin has quit [Client Quit]
<beach> Good morning everyone!
Alfr is now known as Guest55947
Alfr has joined #lisp
Guest55947 has quit [Ping timeout: 260 seconds]
charles` has joined #lisp
charles` has quit [Ping timeout: 264 seconds]
galex-713 has quit [Ping timeout: 272 seconds]
galex-713 has joined #lisp
thmprover has quit [Quit: This parting was well made]
orivej has quit [Ping timeout: 245 seconds]
adam4567 has joined #lisp
gzj has quit [Remote host closed the connection]
gzj has joined #lisp
pankajsg has joined #lisp
kaiwulf has quit [Ping timeout: 245 seconds]
adam4567 has quit [Remote host closed the connection]
adam4567 has joined #lisp
pankajsg has quit [Quit: Konversation terminated!]
pankajsg has joined #lisp
narimiran has joined #lisp
marusich has quit [Ping timeout: 260 seconds]
gaqwas has joined #lisp
Fare has quit [Ping timeout: 264 seconds]
gzj has quit [Remote host closed the connection]
gzj has joined #lisp
Alfr is now known as Guest30958
Alfr has joined #lisp
Guest30958 has quit [Ping timeout: 260 seconds]
Nilby has joined #lisp
ldbeth has joined #lisp
Fare has joined #lisp
aggin has joined #lisp
aggin is now known as sda
<sda> how do I make the string "!name: some-name" "<h3>Name:</h3> some-name<br>" ?
<sda> using cl-ppcre preferrably
<beach> Why do you need anything other than, say FORMAT?
<sda> how would I do it in format ?
karlosz has joined #lisp
karlosz has quit [Remote host closed the connection]
<beach> Well, it is hard to tell from your example what it is that you need exactly. I assume some-name is a variable?
karlosz has joined #lisp
<sda> no its just a substring in a string
<beach> So your example has two strings. Do you want to make both?
<sda> I'm trying to convert the string "!name: some-name-could-be-anything" to "<h3>Name:</h3> some-name-could-be-anything<br>"
<beach> Ah, that's different.
<beach> You didn't say "convert".
<flip214> sda: either use CL-PPCRE, or write a parser (eg. via ESRAP), or use CL:READ with a custom readtable and a few reader macros.
<flip214> Depending on how much time you've spent with regular expressions I'd suggest on of the first two ways.
<sda> well I've not done much with regex, just know the very basics
<beach> sda: By the way, you can find code to read here: https://github.com/robert-strandh
<Nilby> You'd have to specify what the syntax for "!name: some-name" is a little more precicely. For example can "name" have a #\space or a #\: in it?
<beach> sda: It is not a secret place, so no need to PM me.
<sda> I couldn't figure out how to extract some-name and use it while regex:replace
<flip214> sda: do you have some regular grammer that you need? ! => h3, !! => h2, !!! => h1 or so?
<sda> beach: thanks
<sda> flip214: no just ! => h3
<sda> Nilby: it can have a #\space, it cannot have a :
<sda> #\:
<flip214> sda: care to show your efforts? (via pastebin or so)
<ldbeth> does WRITE-BYTE write the byte signed or unsigned?
<Nilby> Here's a free and imperfect regex for you: (ppcre:scan "!([^: ]+):\\s*(.*)$" "!name: some-name")
jpli has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
<Nilby> But regexp can have some notorious troubles, so I find it's best to just manually parse out a simple string.
<flip214> sda: for HTML generation I generally suggest to use CL-WHO, but if it's only that one line you needn't bother
<sda> flip214: it's just that one line
narimiran has quit [Ping timeout: 264 seconds]
Fare has quit [Ping timeout: 264 seconds]
<flip214> well, (multiple-value-bind (full matches) (cl-ppcre:scan-to-strings "^!(.*?): *(.*)" input) ....) will give you the two parts you're interested in in (aref matches 0) and (... 1)
<beach> Who was it that said that attempting to solve a problem using regular expressions results in two problems.
<beach> ?
orivej has joined #lisp
hiroaki__ has quit [Ping timeout: 272 seconds]
<sda> hmm I think I should practice my regex
karlosz has quit [Quit: karlosz]
luni has joined #lisp
<sda> btw what other alternatives exists for parsing stuff like this ?
gzj has quit [Remote host closed the connection]
gzj has joined #lisp
sda has quit [Quit: WeeChat 3.0.1]
waleee-cl has quit [Quit: Connection closed for inactivity]
hiroaki__ has joined #lisp
<ldbeth> well i figured that it is unsigned byte
<ldbeth> \names
karlosz has joined #lisp
bitmapper has quit [Quit: Connection closed for inactivity]
rgherdt has joined #lisp
retropikzel has joined #lisp
<flip214> minion: memo for sda: Take a look at the CL library ESRAP.
<minion> Remembered. I'll tell sda when he/she/it next speaks.
<pranavats> minion: memo for sda: See also, cl-irregsexp and MaxPC parser combinators.
<minion> Remembered. I'll tell sda when he/she/it next speaks.
gj has joined #lisp
attila_lendvai has joined #lisp
<flip214> beach: yeah, there's a saying. still, for small, quick text manipulation, RE are as dense as it gets (in both senses of the word ;)
shka_ has joined #lisp
<beach> Wow, chapter 4 of Land of Lisp is entitled "making decisions with conditions", but in fact it is about conditionALs. Also, on page 51 the author encourages the use of a list variable as a Boolean, and also reverses the IF branches compared to a proof by induction.
<beach> This book contains so many problems I am getting really irritated.
marusich has joined #lisp
<beach> Also on page 51, the author claims that the expressions (), '(), nil, and 'nil are "equivalent" without stating the context that would make them so.
narimiran has joined #lisp
<beach> No wonder so many people who come here have troubles with this stuff. We must start by making them forget lots of stuff they have "learned" from this book.
<beach> And on one page CAR is a "function", but CDR is a "command". *sigh*
<Nilby> I just looked at the pictures and jokes. I didn't even consider didactic robustness.
<beach> The entire thing is written in a very sloppy way. I wonder who were the editors in charge of catching stuff like that.
karlosz has quit [Quit: karlosz]
aartaka has joined #lisp
<Nilby> I don't trust what I read, but I think the spirit and enthusiasm expressed in that book is good. If one can be mostly correct and fun, that's an amazing achievement.
<Nilby> As you know, even the CL spec is wrong.
<Nilby> sometimes
<Nilby> But I agree, technically improper things written about Lisp make me cringe.
<beach> I don't think using the correct terminology consistently would take away any fun.
<beach> Also, there is a large number of people, me included, who get so distracted by inconsistencies like this, that they have a hard time appreciating the message at all.
<edgar-rft> WhenI learned Lisp in the 1990s every second tutorial still used plain lists as conditionals and I agree with beach that this caused me lots of confusion.
<beach> A large part of technical writing is to avoid distracting the reader with inconsistencies like that.
<Nilby> I basically agree. Which I why I learned from the spec, and looked at that book for entertainment or inspiration.
<Nilby> Maybe someday we'll get an updated version
<beach> edgar-rft: Also, have you ever seen a proof by induction that starts with the induction hypothesis and its consequences? Reading code that is structured like that forces the person reading the code to keep in mind stuff that should have been gotten out of the way first.
<beach> One should ALWAYS start with the base case.
<edgar-rft> I don't consider "Land of Lisp" as a spec replacement but the problem is that it's most often read by *beginners* and then it's important to avoid confusion by all means.
<beach> Exactly!
<beach> And in fact, beginners are the target audience, I would imagine.
tiwEllien has joined #lisp
<Nilby> I guess that's why SICP is so revered, since I think in manages to be fun and correct and builds the proof from the base.
<beach> That sounds right. I certainly don't remember any distractions of this kind from SICP. And that's a good thing.
<moon-child> I found sicp incredibly dry
karlosz has joined #lisp
<moon-child> I mean it's very good, but certainly doesn't win any points for style
<beach> moon-child: I hope you are not saying that inconsistencies and bad terminology make a book more interesting.
<moon-child> the two are largely orthogonal
<beach> Indeed.
<edgar-rft> I'm still thankful to Conrad Barsky for writing a book that doesn't deter beginners with overly technical cruft but as it looks there had been some gaps during the production.
<edgar-rft> I also assume that no-starch press is not a super-expensive publisher so we prably have to live with some deficiencies, but maybe there should be a note in the CLiki for example to inform beginners.
<Nilby> I think Barsky makes some great points about the ethos of software with Lisp.
<Nilby> But I also sometimes think it might be laugh-out-loud funny to see a formal semantics of CL like r5rs.
<engblom> Is there any other book that would be better, but still a light read?
<moon-child> I see pcl recommended a lot
<edgar-rft> Nilby: isn't there enough BNF in the Hyperspec? :-)
<edgar-rft> engblom: D. Touretzky's "Gentle introduction..." is *very* leightweight, P. Seibel's "Practical Common Lisp" comes next.
<beach> But "Gentle" has problems of its own.
<edgar-rft> beach: I only recommend if to people who don't even know what a computer is :-)
<beach> Yeah, good plan.
<edgar-rft> ...but it helped me to understand how symbols work in Lisp.
andrei-n has joined #lisp
<engblom> edgar-rft: "Gentle introduction..." seems to be very verbose: much text is used to explain trivial things
<beach> edgar-rft: What did you learn about symbols from it?
<beach> Actually, browsing "Gentle" now makes me think it is better than I remembered.
<edgar-rft> engblom: I like to say that it's "Programming explained for Babies". If you have worked with other progranming languages before "Practical Common Lisp" is better
gzj has quit [Remote host closed the connection]
gzj has joined #lisp
<beach> I guess "Gentle" was written before a top-level SETQ/SETF of undefined variables was undefined behavior.
<Nilby> I first resolved to figure out what the words lambda cddar rplaca meant, so I could cheat at a game.
random-nick has joined #lisp
<edgar-rft> beach: I learned from Touretzky why a symbol can name a function and a variable at the same time and when it's used as what. Touretzky was the only book with a picture of all symbol slots (symbol-value, symbol-function, symbol-plist, docstring etc.) That picture helped me much when I was still new with Lisp.
gj has quit [Quit: Connection closed]
ljavorsk has joined #lisp
<beach> edgar-rft: That's what I suspected. Interestingly, that's often the wrong way of thinking about it. Certainly the SYMBOL-VALUE is wrong.
<beach> But I guess it may help a newbie get a somewhat consistent model of things.
<edgar-rft> I said "when I was new..."
galex-713 has quit [Ping timeout: 272 seconds]
<beach> Sure.
<beach> I would have much preferred that the chapter "Environment" in the standard would be about the global environment, and I would have preferred that SYMBOL-FUNCTION and FDEFINITION were specified there.
luni has quit [Quit: Connection closed]
<Nilby> It's weird, I think global environments were a thing that everyone knew, at the time of the spec, were necessary in practice for big things like Emacs or an OS, and that every big implementaion had, but that they didn't want to burden small implementations with.
<beach> The code in Touretzky seems to have consistent indentation. That's a plus. Many books get that wrong.
epony has quit [Ping timeout: 240 seconds]
aindilis has quit [Ping timeout: 260 seconds]
<beach> Nilby: Oh you mean first-class global environments? I just meant it as a model.
<beach> The fact that it is "spread out" in a typical Common Lisp implementation doesn't make it less real.
<beach> That's just an implementation detail.
<Nilby> But I agree even conceptually, it's esay to miss when it's spread out.
<beach> Yes, especially when the standard seems to encourage the reader to think about it that way.
<beach> SYMBOL-FUNCTION is in the Symbols chapter. FDEFINITION is in the Data and Control Flow chapter.
<beach> To me, they are both functions mapping names to functions in the global environment.
<Nilby> I like the idea of an Environment chapter, especially if they were first class, but then what would the existing chapter be called?
<Nilby> "Some Other Somewhat External Junk We Forgot To Mention"
<beach> Good question. I need to think about that. Also, since it is a matter only of presentation, this issue could be fixed without altering the language. Maybe some future version of WSCL.
<beach> Yeah. :)
aartaka_d has joined #lisp
anticrisis_ has quit [Read error: Connection reset by peer]
aartaka has quit [Ping timeout: 246 seconds]
kam1 has joined #lisp
tiwEllien has quit [Ping timeout: 258 seconds]
tiwEllien has joined #lisp
surabax has joined #lisp
pve has joined #lisp
luni has joined #lisp
<beach> I also like Touretzky's CONS diagrams. Those are pretty close to the what I use myself to explain lists to newbies.
luni has quit [Client Quit]
hendursa1 has joined #lisp
<beach> Ah, found a case of incorrect indentation. :)
hendursaga has quit [Ping timeout: 268 seconds]
kevingal has joined #lisp
<beach> Many fewer problems than I thought.
galex-713 has joined #lisp
<beach> And he starts recursion with the base case.
ldbeth has quit [Ping timeout: 245 seconds]
galex-713 has quit [Ping timeout: 264 seconds]
ebrasca has joined #lisp
galex-713 has joined #lisp
luni has joined #lisp
gj has joined #lisp
galex-713 has quit [Ping timeout: 246 seconds]
galex-713 has joined #lisp
nicktick has quit [Ping timeout: 264 seconds]
adam4567 has quit [Remote host closed the connection]
gzj has quit [Remote host closed the connection]
gzj has joined #lisp
varjag has joined #lisp
gitgood has joined #lisp
rogersm has joined #lisp
karlosz has quit [Quit: karlosz]
kam1 has quit [Ping timeout: 264 seconds]
Lycurgus has joined #lisp
ldbeth has joined #lisp
notzmv has joined #lisp
ldbeth has quit [Ping timeout: 260 seconds]
gzj has quit [Remote host closed the connection]
retropikzel has left #lisp ["Leaving"]
gzj has joined #lisp
Cthulhux has quit [Quit: ne praeteriverit priusquam obesa cantaverit]
Cthulhux has joined #lisp
Cthulhux has quit [Changing host]
Cthulhux has joined #lisp
ldbeth has joined #lisp
epony has joined #lisp
edgar-rft has quit [Read error: Connection reset by peer]
edgar-xyz has joined #lisp
yitzi has quit [Quit: yitzi]
yitzi has joined #lisp
yitzi has quit [Client Quit]
kslt1` has joined #lisp
edgar-xyz has quit [Quit: Leaving]
edgar-rft has joined #lisp
notzmv has quit [Ping timeout: 264 seconds]
ukari has quit [Remote host closed the connection]
vegansbane6963 has quit [Quit: The Lounge - https://thelounge.chat]
jonatack has joined #lisp
gj has quit [Quit: Connection closed]
<kevingal> beach: are you reading Land of Lisp out of some masochistic pleasure, or do you keep running into it in the wild?
<beach> I am reading it because it is part of my job to keep me informed about the literature, so that I can then give advice to potential students of Common Lisp.
jeosol has quit [Quit: Connection closed]
<beach> So I guess, the former. :)
* ldbeth looking up what is masochistic
<kevingal> Fair enough! I've always thought that it makes sense to read books you don't like so that you can appreciate the ones that are more to your taste.
<luni> maybe is simply more than a mere job...
<luni> i should think at it like a mission or something like that
<beach> luni: Right, my employer would not fire me if I omitted this book from my reading list.
<kevingal> Re: Practical Common Lisp, I wouldn't recommend it as a learning resource. It describes features in excruciating detail and doesn't have exercises. Maybe it doesn't suit my style of learning.
<beach> I personally never do the exercises, so I don't miss them when they are absent.
gzj has quit [Remote host closed the connection]
<kevingal> I like using it as a reference. Or when I vaguely understand a feature and want a full review.
jeosol has joined #lisp
<flip214> beach: I believe you're not the target audience of LoL anyway
gzj has joined #lisp
<beach> flip214: You are definitely right. Hence my explanation for my reason for reading it.
<edgar-rft> beach: not doing the exercises isn't really truely masochistic
<flip214> well, curiosity is _always_ a valid reason, so I didn't think you'd need to explain anything
* ldbeth never do the exercises, but will look the answers if it is provided
<beach> edgar-rft: Sure. I meant, whenever I read text books in order to learn something, I never do the exercises. It saves a lot of time. :)
<jackdaniel> books are overrated, the true lisper explores their innate deposit of wisdom and complain when the programming language does not match their intuition! :)
gzj has quit [Remote host closed the connection]
<luni> flip214: i think that depends on the objects anyways
gzj has joined #lisp
<jackdaniel> (or asks on #lisp how to solve this particular topic being the beginner material)
<edgar-rft> I also don't do the exercises, for exactly the same reasons, what is probably the reason why I never learn anything at all
<luni> scientifically and technically speaking then yes
Lycurgus has quit [Quit: Exeunt]
<ldbeth> unless it is sold to students, a good book should always includes answers to exersices
<jackdaniel> why wouldn't student's be allowed to see answers in the book they own?
<jackdaniel> I mean - if they cheat, they cheat only themselves
<ldbeth> good question, i don't know, maybe it's just the exercises are easy
<jackdaniel> in the amop book, excercises are marked as easy, demanding, hard and open problems afair
<kevingal> I can't be sure that I've learned anything unless there's a way to test my knowledge. I'm actually doing exercises from a textbook as we speak, haha.
<kevingal> amop =Something Something Meta Object Protocol?
<jackdaniel> the art of metaobject protocol
<jackdaniel> that's a book when mop was first described
<kevingal> Then again, maybe the fact that I do the exercises is the reason that I don't finish many books.
<jackdaniel> you may find (for free) two chapters of this book as a reference of said protocol here http://metamodular.com/CLOS-MOP/
<joga> hey... I just realized I borrowed amop to friend years ago and it's still there, thanks for mentioning it
<kevingal> Thanks. I think it's on my reading list somewhere.
<jackdaniel> sure
<ldbeth> joga: sorry to your friend
<joga> they also have a couple of other books :I
<jackdaniel> is anyone aware of a library that offers a security model for common lisp? (i.e for various users)
<jackdaniel> I saw a few ad-hoc solutions, but nothing crafted into a standalone abstraction
<jackdaniel> i.e a library imlementing access control list or capabilities
rwcom60280385034 has joined #lisp
<jackdaniel> implementing*
hiroaki3 has quit [Quit: WeeChat 3.0]
vegansbane6963 has joined #lisp
<ldbeth> jackdaniel: SYNAPSE: A multi-microprecessor lisp machine
kevingal_ has joined #lisp
<jackdaniel> I'm not interested in LM, I'm interested in common lisp library (or, eventually, specification for such security model)
yonkunas has quit [Quit: Connection closed for inactivity]
notzmv has joined #lisp
<ldbeth> Sounds like you need something a object-oriented access control thing, guess I haven't totally forget it then. http://www.object-oriented-security.org
<jackdaniel> thanks, I'm loosely aware what is the capability based security model; what I don't know is whether someone attempted to use it in common lisp
<jackdaniel> the site you have mentioned mentions passing "messages" between objects, in Common Lisp enforcing the capability would be probably baked into the generic function
notzmv has quit [Ping timeout: 260 seconds]
gzj has quit [Remote host closed the connection]
gzj has joined #lisp
gzj has quit [Remote host closed the connection]
gzj has joined #lisp
gzj has quit [Remote host closed the connection]
gzj has joined #lisp
contrapunctus has joined #lisp
contrapunctus has left #lisp ["Disconnected: closed"]
contrapunctus has joined #lisp
contrapunctus has left #lisp ["Disconnected: Replaced by new connection"]
contrapunctus has joined #lisp
gzj has quit [Remote host closed the connection]
gzj has joined #lisp
contrapunctus has left #lisp ["Disconnected: Replaced by new connection"]
gzj has quit [Remote host closed the connection]
gzj has joined #lisp
contrapunctus has joined #lisp
contrapunctus has left #lisp ["Disconnected: closed"]
kam1 has joined #lisp
contrapunctus has joined #lisp
contrapunctus has left #lisp ["Disconnected: closed"]
contrapunctus has joined #lisp
notzmv has joined #lisp
tiwEllien has quit [Ping timeout: 260 seconds]
long4mud has quit [Quit: WeeChat 3.0.1]
<Josh_2> Afternoon
ldbeth has quit [Ping timeout: 264 seconds]
luni has quit [Quit: Connection closed]
nmg_ has quit [Ping timeout: 246 seconds]
ldbeth has joined #lisp
hiroaki has joined #lisp
ldbeth has quit [Ping timeout: 256 seconds]
nmg has joined #lisp
amb007 has quit [Read error: Connection reset by peer]
ejjfunky has joined #lisp
ejjfunky has left #lisp [#lisp]
amb007 has joined #lisp
ldbeth has joined #lisp
amb007 has quit [Read error: Connection reset by peer]
kslt1` has quit [Remote host closed the connection]
amb007 has joined #lisp
heisig has joined #lisp
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #lisp
ldbeth has quit [Ping timeout: 245 seconds]
kslt1 has joined #lisp
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #lisp
ldbeth has joined #lisp
tinhatcat has joined #lisp
ldbeth has quit [Ping timeout: 246 seconds]
orivej has quit [Ping timeout: 245 seconds]
tiwEllien has joined #lisp
orivej has joined #lisp
tinhatcat has quit [Client Quit]
ldbeth has joined #lisp
ldbeth has quit [Ping timeout: 265 seconds]
ldbeth has joined #lisp
ldbeth has quit [Ping timeout: 264 seconds]
ldbeth has joined #lisp
skapata has joined #lisp
Fare has joined #lisp
cosimone has joined #lisp
bitmapper has joined #lisp
hiroaki has quit [Ping timeout: 264 seconds]
hiroaki1 has joined #lisp
yitzi has joined #lisp
ljavorsk has quit [Ping timeout: 276 seconds]
Bike has joined #lisp
Noisytoot has quit [Ping timeout: 246 seconds]
warweasle has joined #lisp
ldbeth has quit [Ping timeout: 264 seconds]
Noisytoot has joined #lisp
wsinatra has joined #lisp
gzj has quit [Remote host closed the connection]
gzj has joined #lisp
gzj has quit [Remote host closed the connection]
yonkunas has joined #lisp
gzj has joined #lisp
nicktick has joined #lisp
drewc has joined #lisp
gzj has quit [Remote host closed the connection]
pfdietz has joined #lisp
gzj has joined #lisp
gzj has quit [Remote host closed the connection]
gzj has joined #lisp
gzj has quit [Remote host closed the connection]
rozenglass has joined #lisp
wsinatra has quit [Read error: Connection reset by peer]
wsinatra has joined #lisp
<mfiano> Gripe of the day: It's annoying so many CL queue libraries are named with stack semantics (push/pop)
tiwEllien has quit [Ping timeout: 246 seconds]
andrei-n has quit [Read error: Connection reset by peer]
tiwEllien has joined #lisp
<pfdietz> QQ   :)
andrei-n has joined #lisp
wsinatra_ has joined #lisp
wsinatra has quit [Read error: Connection reset by peer]
ldbeth has joined #lisp
ldbeth has quit [Ping timeout: 256 seconds]
<splittist> mfiano: serapeum uses enq and deq, which you may feel isn't much better (:
<mfiano> Heh, yeah.
<mfiano> Even lparallel uses push/pop. phoe is one of the only people that I can respect with enqueue/dequeue, though I think I suggested that while he was developing it :)
<splittist> trivial-rename-queues to the rescue! (Once it's written, of course.)
* phoe blushes
<phoe> splittist: oh no
<mfiano> Speaking of lparallel, there are quite a few issues, and no developer activity since 2016. Should we sharp that thing?
notzmv has quit [Ping timeout: 246 seconds]
<phoe> push/pop, enqueue/dequeue, insert/remove, add/delete, stuff/pull, suggest/enquire... synonyms suck
<phoe> mfiano: I think so, yes
attila_lendvai has quit [Ping timeout: 264 seconds]
toorevitimirp has joined #lisp
* splittist wonders if the fact his function is 120 lines long is affecting its debuggability...
nullx002 has joined #lisp
<phoe> can it be factored?
<_death> it's true that push/pop are better associated with push-down lists (stacks).. but it's not exclusive, you can push/pop on either end.. for example C++'s deque (double-ended queue) has (push|pop)-(front|back)
<phoe> ;; I now want a triple-ended queue with push/pop-middle
<heisig> _death: C++ is not exactly a paragon of brilliantly naming things.
wsinatra_ has quit [Read error: Connection reset by peer]
mmmattyx has joined #lisp
khisanth_ has quit [Read error: Connection reset by peer]
<mfiano> I vaguely recall a push_back or something similar
notzmv has joined #lisp
<mfiano> I haven't had to read C++ in quite a while, fortunately.
<_death> heisig: it's just an example, in an argument about colloquial programmer jargon
gitgoood has joined #lisp
cognemo has quit [Quit: cognemo]
cognemo has joined #lisp
gitgood has quit [Read error: Connection reset by peer]
<splittist> phoe: I'm about to find out. I foresee a lot of (declare special) in my future.
SlashLife has quit [Quit: Baking more cake ...]
<phoe> splittist: oh goodness
<phoe> is this function of yours free to look at?
* phoe prepares €2 just in case
villanella has joined #lisp
SlashLife has joined #lisp
<splittist> phoe: yes. But not worth it just yet. It's trying to match identical subtrees using queues and hashtables and all manner of state. The real issue is that I don't quite understand it, yet (:
Sheilong has joined #lisp
* splittist stops typing and starts thinking
<Nilby> I think a real not simulated triple-ended queue would require non-linear memory.
<Nilby> ironcially memory pretends to be linear when it's not
cage_ has joined #lisp
ft has quit [Quit: leaving]
ft has joined #lisp
nullx002 has quit [Quit: ERC (IRC client for Emacs 27.1)]
ey[m]1 has joined #lisp
varjag has quit [Quit: ERC (IRC client for Emacs 26.3)]
cosimone has quit [Quit: cosimone]
ldbeth has joined #lisp
ldbeth has quit [Ping timeout: 276 seconds]
kslt1 has quit [Remote host closed the connection]
gitgoood is now known as gitgood
attila_lendvai has joined #lisp
ldbeth has joined #lisp
n3t has left #lisp ["WeeChat 2.9"]
ex_nihilo has quit [Ping timeout: 264 seconds]
ldbeth has quit [Ping timeout: 245 seconds]
aggin has joined #lisp
Lycurgus has joined #lisp
<aggin> how would I use FORMAT to print out the index of the current element I'm iterating through in ~{
edgar-rft has quit [Quit: Leaving]
<_death> there's no built-in way.. you can do it yourself
<aggin> how ?
ldbeth has joined #lisp
<_death> for example (format t "~{~{~A. ~A~}~%~}" '((1 a) (2 b) (3 c)))
<_death> personally I'd just not use ~{ to do that
<beach> FORMAT may not be the best tool here. LOOP might be better.
<aggin> btw I was wondering how the ~/ directive worked in FORMAT, I couldn't find any example of it
sjl has joined #lisp
ldbeth has quit [Ping timeout: 260 seconds]
<kevingal_> Public Service Announcement: equalp of two strings is case-insensitive.
<_death> the clhs does mention the pprinter functions
<_death> (format t "~/CL:PPRINT-TABULAR/" '(a b c d e f g h i j))
<kevingal_> To my shock and horror.
<aggin> woah that looks nice
<_death> kevingal: not too long ago I took an hour to hack some define-equality-test operator, that you can use to define a case-sensitive euqalp https://gist.github.com/death/6a441602bd6acebda067dd900e56e256
<_death> kevingal: of course, you can also just write the macroexpansion yourself
<gitgood> I'm surprised to hear that about equalp
<gitgood> surprised it's not bitten me already I mean
<kevingal_> Cool stuff! In my case, I can work around it by using string= instead.
ldbeth has joined #lisp
<kevingal_> I'm guessing the equalp thing is something to do with symbols being case-insensitive.
<_death> kevingal: there's nothing case-insensitive about symbols :)
<kevingal_> Aren't they all converted to upper case?
<_death> kevingal: this is more about the reader's behavior, as defined by the readtable's case
<_death> clhs 23.1.2.1
<specbot> Examples of Effect of Readtable Case on the Lisp Reader: http://www.lispworks.com/reference/HyperSpec/Body/23_aba.htm
contrapunctus has left #lisp ["Disconnected: Replaced by new connection"]
contrapunctus has joined #lisp
jdormit has quit [Quit: Idle for 30+ days]
ldbeth has quit [Ping timeout: 264 seconds]
<kevingal_> Gotcha, thank you.
<_death> the equality operators defined for you by CL are somewhat arbitrary.. the clhs also mentions this
<_death> clhs equal
<_death> see Notes section
ldbeth has joined #lisp
skapate has joined #lisp
<aggin> is there a way to collect in LOOP if a predicate is true or do I have to do it outside of it with REMOVE-IF
skapata has quit [Ping timeout: 272 seconds]
<phoe> aggin: (loop ... when ... collect ...)
<aggin> ok thanks
<kevingal_> Case-insensitivity somehow seems more arbitrary than case-sensitivity :D I guess I can't complain, since the language also allows you to fix it with a whiz-bang macro.
ldbeth has quit [Ping timeout: 260 seconds]
fitzsim has joined #lisp
<_death> kevingal: when I started learning Lisp I worried about it, but over the years I came to prefer :upcase.. when I need to interoperate with some case-sensitive system doing the case translation myself or using strings or escaping seems to work well, it seems to discourages camelCase etc. in Lisp code, and in the repl when I have some char capitalized by mistake, I need not worry ;)
<_death> it's also useful on irc discussions, where you can write FOO to hint that you're talking about the symbol, instead of, say, elisp convention of using `foo'
ldbeth has joined #lisp
<_death> (and docstrings ;)
JokerAscensionEx has quit [Remote host closed the connection]
dilated_dinosaur has quit [Ping timeout: 245 seconds]
<_death> and sometimes for quick experiments I just write stuff in uppercase for the nostalgia value ;)
tiwEllien has quit [Ping timeout: 258 seconds]
<_death> note to self: use uppercase the next time I demo SCREAMER to someone
tiwEllien has joined #lisp
<mfiano> It's all fine unless you're habits cause you to switch to a COBOL career
ldbeth has quit [Ping timeout: 264 seconds]
gitgoood has joined #lisp
gitgood has quit [Read error: Connection reset by peer]
nicktick has quit [Ping timeout: 276 seconds]
<kevingal_> death: makes sense! My surprise is more at the default behaviour of equalp. Not an issue once you're aware of it. By the way, what's SCREAMER?
ldbeth has joined #lisp
<_death> kevingal: it's an oldie but goodie library for nondeterministic and constraint programming in Lisp
nicktick has joined #lisp
<Lycurgus> and it's output is all caps?
<Lycurgus> *its
<_death> Lycurgus: no, but pervasive uppercase is generally thought of as screaming ;)
<Lycurgus> right that was what I was looking for, trynna connect the dots between old thing I'd vaguely heard of and a lisp program that shouts
ldbeth has quit [Ping timeout: 276 seconds]
dilated_dinosaur has joined #lisp
<Lycurgus> apparently clarified to now just be tha program name
<Nilby> Someday I want an implementation that does a fancy char-equal.
<_death> kevingal: small example https://plaster.tymoon.eu/view/2333#2333
ldbeth has joined #lisp
charles` has joined #lisp
gitgoood has quit [Read error: Connection reset by peer]
zdravko has joined #lisp
ldbeth has quit [Ping timeout: 245 seconds]
yitzi has quit [Quit: yitzi]
<semz> fancy in what sense?
_z_ has joined #lisp
_z_ has left #lisp [#lisp]
ldbeth has joined #lisp
<Nilby> That it does something different with extended-char, which also means I want fancy extended-char, with attributes and things.
charles` has quit [Ping timeout: 264 seconds]
zdravko has quit [Quit: Leaving]
Lycurgus has quit [Quit: Exeunt]
ldbeth has quit [Ping timeout: 246 seconds]
iamFIREcracker has quit [Quit: WeeChat 3.0]
kevingal_ has quit [Remote host closed the connection]
kevingal has quit [Remote host closed the connection]
lalitmee has joined #lisp
aartaka has joined #lisp
aartaka_d has quit [Ping timeout: 245 seconds]
ldbeth has joined #lisp
lalitmee has quit [Quit: Leaving]
iskander has quit [Quit: bye]
lalitmee has joined #lisp
luni has joined #lisp
ldbeth has quit [Ping timeout: 264 seconds]
engblom has quit [Read error: Connection reset by peer]
engblom has joined #lisp
aartaka_d has joined #lisp
nmg has quit [Quit: ZNC 1.7.2+deb3 - https://znc.in]
nmg has joined #lisp
aartaka has quit [Ping timeout: 256 seconds]
ldbeth has joined #lisp
mmmattyx has quit [Quit: Connection closed for inactivity]
lalitmee has quit [Quit: Leaving]
dyelar has joined #lisp
ldbeth has quit [Ping timeout: 256 seconds]
andrei-n has quit [Ping timeout: 256 seconds]
ldbeth has joined #lisp
andrei-n has joined #lisp
ldbeth has quit [Ping timeout: 260 seconds]
ldbeth has joined #lisp
toorevitimirp has quit [Remote host closed the connection]
ldbeth has quit [Ping timeout: 265 seconds]
aartaka_d has quit [Ping timeout: 260 seconds]
ldbeth has joined #lisp
skapate has quit [Ping timeout: 260 seconds]
luni has quit [Quit: Connection closed]
ldbeth has quit [Ping timeout: 256 seconds]
Oladon has joined #lisp
aggin has quit [Quit: WeeChat 3.0.1]
ldbeth has joined #lisp
dbotton has joined #lisp
aartaka has joined #lisp
skapate has joined #lisp
ldbeth has quit [Ping timeout: 260 seconds]
charles` has joined #lisp
gitgood has joined #lisp
ldbeth has joined #lisp
ldbeth has quit [Ping timeout: 245 seconds]
varjag has joined #lisp
ldbeth has joined #lisp
karlosz has joined #lisp
Josh_2 has quit [Ping timeout: 264 seconds]
ldbeth has quit [Ping timeout: 264 seconds]
Josh_2 has joined #lisp
aartaka has quit [Ping timeout: 260 seconds]
Josh_2 has quit [Ping timeout: 260 seconds]
Ashok has joined #lisp
<Ashok> Is it okay to press enter (newline) in the middle of a doc string for lisp function?
<Xach> Ashok: yes
<Ashok> Thanks!!
<Xach> Ashok: it is very common - i recommend reading some lisp libraries for examples
rogersm has quit [Quit: Leaving...]
<Ashok> Which is recommended for good code styles?
<Ashok> thanks!
charles` has quit [Ping timeout: 264 seconds]
Josh_2 has joined #lisp
gitgood has quit [Read error: Connection reset by peer]
ggoes has quit [Remote host closed the connection]
ggoes has joined #lisp
mindCrime_ has joined #lisp
pankajsg has quit [Ping timeout: 264 seconds]
luni has joined #lisp
<pfdietz> equalp is not just case insensitive on strings, but also on characters.   Also, it doesn't care about array-element-type.   (equalp "a" #(#\A)) ==> true
Fare has quit [Ping timeout: 264 seconds]
villanella has quit [Quit: villanella]
villanella has joined #lisp
Fare has joined #lisp
<gendl> Hi, trying to start Slime with sbcl 2.1.2 (as installed by brew on an Intel Mac), set slime-lisp-implementation to ("sbcl") as well as full path to exe, as well as tried with :env ("SBCL_HOME=....") but...
<gendl> getting:
<gendl> wait... nevermind... just noticed I'm using a quite outdated Slime... trying with newest Quicklisp version..
orivej has quit [Ping timeout: 245 seconds]
gitgood has joined #lisp
aartaka has joined #lisp
karlosz has quit [Quit: karlosz]
rumbler31 has joined #lisp
<gendl> ... yep that fixed it
<phoe> hooray for self-fixing issues
engblom has quit [Changing host]
engblom has joined #lisp
ex_nihilo has joined #lisp
Fare has quit [Ping timeout: 264 seconds]
ljavorsk has joined #lisp
anticrisis has joined #lisp
Nikotiini has quit [Quit: WeeChat 1.4]
Fare has joined #lisp
Nikotiini has joined #lisp
waleee-cl has joined #lisp
Oladon has quit [Quit: Leaving.]
charles` has joined #lisp
karlosz has joined #lisp
Ashok has quit [Quit: Ping timeout (120 seconds)]
notzmv has quit [Ping timeout: 260 seconds]
marusich has quit [Quit: Leaving]
galex-713 has quit [Ping timeout: 240 seconds]
charles` has quit [Ping timeout: 264 seconds]
galex-713 has joined #lisp
rumbler31 has quit [Remote host closed the connection]
cchristiansen has joined #lisp
cchristiansen has left #lisp [#lisp]
gigetoo has quit [Ping timeout: 265 seconds]
andrei-n has quit [Quit: Leaving]
gigetoo has joined #lisp
mogglehud has joined #lisp
Lycurgus has joined #lisp
catern has quit [Remote host closed the connection]
shka_ has quit [Ping timeout: 256 seconds]
Josh_2 has quit [Remote host closed the connection]
terrorjack has quit [Ping timeout: 246 seconds]
Josh_2 has joined #lisp
Nilby has quit [Ping timeout: 264 seconds]
mogglehud has quit [Ping timeout: 260 seconds]
Inline has quit [Remote host closed the connection]
Inline has joined #lisp
mogglehud has joined #lisp
ebrasca has quit [Remote host closed the connection]
Lycurgus has quit [Remote host closed the connection]
cage_ has quit [Quit: Leaving]
mogglehud has quit [Ping timeout: 276 seconds]
terrorjack has joined #lisp
rgherdt has quit [Remote host closed the connection]
charles` has joined #lisp
Inline has quit [Remote host closed the connection]
Lycurgus has joined #lisp
Inline has joined #lisp
mogglehud has joined #lisp
curtosis has quit [Quit: My Mac Mini has gone to sleep. ZZZzzz…]
cfvnhtsp^ has joined #lisp
warweasle has quit [Quit: rcirc on GNU Emacs 26.1]
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #lisp
Inline has quit [Ping timeout: 272 seconds]
Inline has joined #lisp
jonatack_ has joined #lisp
CrazyEddy has quit [Quit: Reconnecting]
jonatack has quit [Read error: Connection reset by peer]
cchristiansen has joined #lisp
mogglehud has quit [Ping timeout: 260 seconds]
Inline has left #lisp ["Leaving"]
gitgoood has joined #lisp
Lycurgus has quit [Quit: Exeunt]
mindCrime_ has quit [Ping timeout: 264 seconds]
CrazyEddy has joined #lisp
Inline has joined #lisp
Inline has quit [Remote host closed the connection]
tiwEllien has quit [Ping timeout: 240 seconds]
gitgood has quit [Read error: Connection reset by peer]
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #lisp
rumbler31 has joined #lisp
amb007 has quit [Read error: Connection reset by peer]
testnick88 has joined #lisp
amb007 has joined #lisp
narimiran has quit [Ping timeout: 246 seconds]
amb007 has quit [Read error: Connection reset by peer]
gaqwas has quit [Ping timeout: 264 seconds]
amb007 has joined #lisp
<MetaYan> Xach: Is something wrong with the http://report.quicklisp.org/ generator? March 5th is the last one. And there are lots of errors since March 1st. Plus, you've dropped out from #quicklisp ;)
theothornhill has joined #lisp
aindilis has joined #lisp
notzmv has joined #lisp
jonatack__ has joined #lisp
kpoeck_ has joined #lisp
jonatack__ has quit [Client Quit]
jonatack has joined #lisp
jonatack_ has quit [Ping timeout: 260 seconds]
pve has quit [Quit: leaving]
warweasle has joined #lisp
dddddd has quit [Ping timeout: 256 seconds]
rgherdt has joined #lisp
dddddd has joined #lisp
charles` has quit [Ping timeout: 264 seconds]
vegansbane6963 has quit [Ping timeout: 264 seconds]
jonatack has quit [Ping timeout: 245 seconds]
ljavorsk has quit [Ping timeout: 246 seconds]
theothornhill has quit [Ping timeout: 260 seconds]
theothornhill has joined #lisp
vegansbane6963 has joined #lisp
theothornhill has quit [Remote host closed the connection]
pillton has joined #lisp
kaiwulf has joined #lisp
dbotton has quit [Quit: This computer has gone to sleep]
varjag has quit [Quit: ¨]
attila_lendvai has quit [Ping timeout: 265 seconds]
luni has quit [Quit: Connection closed]
ldbeth has joined #lisp
rumbler31 has quit [Ping timeout: 256 seconds]
ldbeth has quit [Ping timeout: 245 seconds]
ldbeth has joined #lisp
surabax has quit [Quit: Leaving]
ldbeth has quit [Ping timeout: 260 seconds]
texno has quit [Ping timeout: 246 seconds]
karlosz has quit [Quit: karlosz]
dbotton has joined #lisp
random-nick has quit [Ping timeout: 256 seconds]
ldbeth has joined #lisp
Oladon has joined #lisp
iskander has joined #lisp
ldbeth has quit [Ping timeout: 264 seconds]
JokerAscensionEx has joined #lisp
sjl has quit [Ping timeout: 260 seconds]
pillton` has joined #lisp
cchristiansen has quit [Read error: No route to host]
dbotton has quit [Quit: Leaving]
pillton has quit [Ping timeout: 264 seconds]
charles` has joined #lisp
ldbeth has joined #lisp
jeosol has quit [Quit: Connection closed]
villanella has quit [Ping timeout: 260 seconds]
ldbeth has quit [Ping timeout: 264 seconds]
ldbeth has joined #lisp
nicktick has quit [Ping timeout: 276 seconds]
ldbeth has quit [Ping timeout: 260 seconds]
heisig has quit [Quit: Leaving]
ldbeth has joined #lisp
cfvnhtsp^ has quit []
ldbeth has quit [Ping timeout: 246 seconds]
ldbeth has joined #lisp
edgar-rft has joined #lisp
karlosz has joined #lisp
ldbeth has quit [Ping timeout: 264 seconds]
ldbeth has joined #lisp
ldbeth has quit [Ping timeout: 265 seconds]
skapate has quit [Ping timeout: 265 seconds]
skapata has joined #lisp
ldbeth has joined #lisp
mange has joined #lisp
ldbeth has quit [Ping timeout: 256 seconds]
Oladon has quit [Quit: Leaving.]
madage has quit [Remote host closed the connection]
hendursa1 has quit [Quit: hendursa1]
hendursaga has joined #lisp
ldbeth has joined #lisp
nicktick has joined #lisp