cromachina has joined #lisp
smurfrobot has joined #lisp
neoncontrails has joined #lisp
smurfrobot has quit [Ping timeout: 240 seconds]
<stylewarning> Fare: I was trying to find in the SBCL docs how to enable the feature.
turkja has joined #lisp
drcode has joined #lisp
orivej has quit [Quit: #nixos]
stara has quit [Quit: http://www.kiwiirc.com/ - A hand crafted IRC client]
<akkad> b
orivej has joined #lisp
<pillton> jasom: Specialization-store can inline calls to "methods" if there is sufficient type information available.
smurfrobot has joined #lisp
drcode has quit [Ping timeout: 240 seconds]
smurfrobot has quit [Ping timeout: 265 seconds]
libreman has quit [Ping timeout: 248 seconds]
pedh has joined #lisp
red-dot has quit [Remote host closed the connection]
red-dot has joined #lisp
pedh has quit [Ping timeout: 264 seconds]
smurfrobot has joined #lisp
markong has quit [Ping timeout: 240 seconds]
smurfrobot has quit [Ping timeout: 240 seconds]
libreman has joined #lisp
Kundry_Wag has quit [Remote host closed the connection]
Kundry_Wag has joined #lisp
fikka has quit [Ping timeout: 248 seconds]
Kundry_Wag has quit [Ping timeout: 272 seconds]
smurfrobot has joined #lisp
smurfrobot has quit [Ping timeout: 248 seconds]
smurfrobot has joined #lisp
zooey has quit [Ping timeout: 248 seconds]
zooey has joined #lisp
<jasom> anyone know if cl-sqlite is still being developed, and if so, where to report bugs? The mailing-list link on the webpage is broken...
JenElizabeth has quit [Ping timeout: 260 seconds]
smurfrobot has quit [Ping timeout: 248 seconds]
drcode has joined #lisp
smurfrobot has joined #lisp
momofarm has joined #lisp
smurfrobot has quit [Ping timeout: 265 seconds]
pedh has joined #lisp
momofarm has quit [Quit: leaving]
pedh has quit [Ping timeout: 240 seconds]
smurfrobot has joined #lisp
yeticry has joined #lisp
vlatkoB has quit [Remote host closed the connection]
foom has joined #lisp
smurfrobot has quit [Ping timeout: 256 seconds]
anunnaki has joined #lisp
foom2 has quit [Ping timeout: 255 seconds]
rpg has joined #lisp
smurfrobot has joined #lisp
smurfrobot has quit [Ping timeout: 240 seconds]
ajarmst has joined #lisp
rpg_ has joined #lisp
<Fare> stylewarning, see the mysbcl function in fare-scripts/languages
rpg has quit [Ping timeout: 264 seconds]
<Fare> basically, when you invoke sh make.sh, pass the argument --with-sb-linkable-runtime
antonv has joined #lisp
smurfrobot has joined #lisp
mikecheck has left #lisp ["part"]
d4ryus2 has joined #lisp
smurfrobot has quit [Ping timeout: 265 seconds]
d4ryus1 has quit [Ping timeout: 240 seconds]
smurfrobot has joined #lisp
smurfrobot has quit [Ping timeout: 272 seconds]
nowhere_man has quit [Remote host closed the connection]
nowhere_man has joined #lisp
asarch has joined #lisp
EvW has joined #lisp
<asarch> One very very very stupid question: Is Mr. Peter Seibel around here? (I hope not)
* asarch hides
<antonv> Wow, http://weitz.de/hunchentoot/ doesn't provide hunchentoot documentation anymore
<Zhivago> Did he touch you somewhere inappropriate?
EvW has quit [Ping timeout: 265 seconds]
fikka has joined #lisp
fikka has quit [Ping timeout: 272 seconds]
Tobbi has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<myrkraverk> My very first asdf system has a name conflict whenever I re-compile it, when I load it with (ql:quickload) however, on subsequent loads, it succeeds.
<myrkraverk> Is there a way to fix this?
smurfrobot has joined #lisp
<myrkraverk> That is, I have a name conflict in :common-lisp-user and :my-package when I load it with (ql:quickload :my-package) and it needs to compile source file again.
dddddd has quit [Remote host closed the connection]
Cymew has joined #lisp
<myrkraverk> I'll try to make a simple example later.
<Xach> myrkraverk: name conflicts are pretty straightforward to work out up front.
Cymew has quit [Ping timeout: 256 seconds]
damke has joined #lisp
damke_ has quit [Ping timeout: 264 seconds]
smurfrobot has quit [Remote host closed the connection]
smurfrobot has joined #lisp
smurfrobot has quit [Remote host closed the connection]
smurfrobot has joined #lisp
orivej has quit [Ping timeout: 264 seconds]
bigos_ has joined #lisp
cgay has quit [Ping timeout: 255 seconds]
foom has quit [Ping timeout: 265 seconds]
foom has joined #lisp
cgay has joined #lisp
<Xach> but
<Xach> common-lisp-user is a red flag.
<Xach> it should generally be avoided in source files and user packages
<Fare> it should probably be avoided everywhere.
<Fare> except maybe format ~/methods/ ?
<Fare> asarch, he hasn't been in #lisp in many years. Not sure he uses it much if at all these days.
bigos_ has quit [Remote host closed the connection]
fikka has joined #lisp
cgay has quit [Ping timeout: 264 seconds]
smurfrobot has quit [Remote host closed the connection]
foom has quit [Ping timeout: 248 seconds]
fikka has quit [Ping timeout: 256 seconds]
foom has joined #lisp
astronavt has joined #lisp
cgay has joined #lisp
neoncontrails has quit [Read error: Connection reset by peer]
neoncontrails has joined #lisp
pjb` has joined #lisp
nowhereman_ has joined #lisp
pjb has quit [Ping timeout: 272 seconds]
<asarch> Phew!
<asarch> Thank you Fare
<asarch> Thank you very much :-)
nowhere_man has quit [Ping timeout: 272 seconds]
<aeth> Not many years, iirc he was here a few years ago and asked a bunch of questions.
<aeth> I think mostly about what the interesting libraries are these days
<asarch> What book is for Common Lisp like the "The C++ Programming Language" is for C++?
<asarch> A book that you can use as a reference manual (how to open files, how to list directories, etc)
<asarch> ?
<aeth> PCL is more of an introduction. Common Lisp Recipes (same publisher, different author) is more of a reference. I don't think it's online. The ebook was on sale for $10 on Black Friday. So... you'd have to wait almost a year
<asarch> Oh :-(
<akkad> it's pretty cheap
<asarch> It's ~$55 on Amazon
<aeth> $54.99 on the publisher's site (DRM-free)
<aeth> so... you have to wait for a sale.
<aeth> 80% off is quite a bit of a difference
<Fare> asarch, PCL is out-of-date regarding things like "opening files". :-/
ahungry has joined #lisp
<asarch> Out of date?!
<asarch> Then what book should I use?
<aeth> The core language features of Common Lisp haven't been changed in over two decades. The language extensions are a mix between just as old as the language (things that didn't get in the standard, but could have) and fairly new things. They still move fairly slowly. But everything else is just like any other programming language, and it changes over time.
schoppenhauer has quit [Ping timeout: 265 seconds]
<aeth> PCL, noting where it is out of date, is still probably your best option
<aeth> There are other books but they're mostly older
safe has joined #lisp
<asarch> I see
schoppenhauer has joined #lisp
<asarch> I found this yesterday: https://www.youtube.com/watch?v=pQy22qPH7i4
astronavt has quit [Remote host closed the connection]
red-dot has quit [Quit: Going offline, see ya! (www.adiirc.com)]
madrik has joined #lisp
<pierpa> The best reference manual for CL is CLTLII + checking CLHS to be sure particular things haven't changed.
antonv has quit [Ping timeout: 256 seconds]
EvW1 has joined #lisp
<asarch> Thank you pierpa
<asarch> Thank you very much :-)
<pierpa> yw :)
* asarch takes notes...
EvW1 has quit [Ping timeout: 240 seconds]
pedh has joined #lisp
pillton has quit [Ping timeout: 248 seconds]
pierpa has quit [Quit: Page closed]
JenElizabeth has joined #lisp
red-dot has joined #lisp
pedh has quit [Ping timeout: 264 seconds]
sjl has joined #lisp
cromachina has quit [Read error: Connection reset by peer]
smurfrobot has joined #lisp
sjl has quit [Ping timeout: 265 seconds]
neoncont_ has joined #lisp
neoncontrails has quit [Ping timeout: 240 seconds]
<Fare> asarch, you should know which libraries to use and read their documentation online.
<Fare> quickref.common-lisp.net is a good starting point.
<Fare> However, it doesn't properly handle UIOP, at this time.
fikka has joined #lisp
alexmlw1 has joined #lisp
alexmlw has quit [Read error: Connection reset by peer]
alexmlw1 is now known as alexmlw
mishoo has joined #lisp
fikka has quit [Ping timeout: 265 seconds]
SaganMan has joined #lisp
smurfrobot has quit [Remote host closed the connection]
Bike has quit [Quit: Lost terminal]
Fare has left #lisp ["Leaving"]
smurfrob_ has joined #lisp
JuanDaugherty has quit [Quit: Ex Chat]
pedh has joined #lisp
smurfrob_ has quit [Ping timeout: 265 seconds]
smurfrobot has joined #lisp
dieggsy has joined #lisp
ahungry has quit [Remote host closed the connection]
pedh has quit [Ping timeout: 256 seconds]
damke has quit [Read error: Connection reset by peer]
damke has joined #lisp
<asarch> I see
<asarch> Thank you
<asarch> One stupid question: I start sblc and then type a few expressions, is it possible to save them into a file?
<asarch> (Save the sbcl history into a file)
SaganMan has quit [Ping timeout: 265 seconds]
rpg_ has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<myrkraverk> asarch: linedit can do that for you.
pedh has joined #lisp
<myrkraverk> For example I have it configured with :history #p"~/.sbcl.history" ; in my .sbclrc
<asarch> Thank you myrkraverk
<asarch> Thank you very much :-)
safe has quit [Read error: Connection reset by peer]
Zhivago has quit [Ping timeout: 250 seconds]
fikka has joined #lisp
LocaMocha has joined #lisp
pedh has quit [Ping timeout: 248 seconds]
<beach> Good morning everyone!
<asarch> Bonjour!
fikka has quit [Ping timeout: 256 seconds]
oleo has quit [Quit: Leaving]
<asarch> Bonjour monsieur, comment allez-vous?
<beach> asarch: Good French, but how I am is off topic. :)
<asarch> Ok. À votre santé! o/
<beach> Thanks!
smurfrobot has quit [Remote host closed the connection]
zmt00 has quit [Quit: Leaving]
Zhivago has joined #lisp
Zhivago has quit [Changing host]
Zhivago has joined #lisp
<asarch> See you!
asarch has quit [Quit: Leaving]
mishoo has quit [Ping timeout: 272 seconds]
dieggsy has quit [Ping timeout: 265 seconds]
<loke> asarYou should have asked (feeling-good-p bech)
<loke> I mean (feeling-good-p 'beach)
<loke> Instantly on-topic.
<Zhivago> Beach reduced to a mere symbol ...
nalkri has joined #lisp
Karl_Dscc has joined #lisp
<loke> Zhivago: oops. I never thought abou tit that way
<loke> But it _is_ interned! Constant. Always there for us.
EvW has joined #lisp
neoncont_ is now known as neoncontrails
EvW has quit [Ping timeout: 265 seconds]
dec0n has joined #lisp
smurfrobot has joined #lisp
fikka has joined #lisp
smokeink has joined #lisp
<smokeink> Is there any easy/idiomatic way to find all symbols that are fbound to some function ?
Karl_Dscc has quit [Remote host closed the connection]
mishoo has joined #lisp
smurfrobot has quit [Ping timeout: 264 seconds]
<beach> clhs do-all-symbols
<beach> clhs fboundp
fikka has quit [Ping timeout: 256 seconds]
smurfrobot has joined #lisp
<smokeink> yeah that worked http://pastecode.ru/e866d9/ , thanks
red-dot has quit [Quit: Going offline, see ya! (www.adiirc.com)]
<loke> Does anyone know of a nice library that can parse infix expressions as strings and evaluate them?
<loke> Basically, something like "3+5*2" ⇒ 13
red-dot has joined #lisp
smurfrobot has quit [Ping timeout: 256 seconds]
smurfrobot has joined #lisp
<myrkraverk> It's basically the tutorial in most compiler books, but I don't know about a library for it.
<myrkraverk> What I want right now is to test if more than one flag is true.
<myrkraverk> As in, flag1 flag2 flag3 are meant to be mutually exclusive and so far, each is a simple parameter.
<loke> Oh, I've done it in the past. And I could easily do it again (and I might).
<myrkraverk> For two, I can just use (and flag1 flag2) but it gets harder when there are 3 or more.
scymtym has quit [Ping timeout: 240 seconds]
<loke> myrkraverk: (> (count-if-not #'identity THE-LIST) 1)
<myrkraverk> Of course there's something simple to do it. I was thinking about rolling my own with LOOP.
<loke> If you have lots of flags, LOOP witll be more efficient as it will allow you to exit early.
flamebeard has joined #lisp
smurfrobot has quit [Ping timeout: 272 seconds]
holycow has joined #lisp
omilu has quit [Remote host closed the connection]
ryanbw has quit [Quit: WeeChat 1.9.1]
<myrkraverk> Right now, only 3
<myrkraverk> clhs count
pdv has joined #lisp
Cymew has joined #lisp
lisp_guest has quit [Ping timeout: 248 seconds]
bigos_ has joined #lisp
fikka has joined #lisp
trittweiler has joined #lisp
Lord_Nightmare2 has joined #lisp
hajovonta has joined #lisp
raphaelss has quit [Remote host closed the connection]
Lord_Nightmare has quit [Ping timeout: 255 seconds]
Lord_Nightmare2 is now known as Lord_Nightmare
fikka has quit [Ping timeout: 256 seconds]
smurfrobot has joined #lisp
pedh has joined #lisp
smurfrobot has quit [Ping timeout: 248 seconds]
shka has joined #lisp
d4ryus2 is now known as d4ryus
varjag has joined #lisp
pedh has quit [Ping timeout: 256 seconds]
nowhere_man has joined #lisp
nowhereman_ has quit [Ping timeout: 265 seconds]
scymtym has joined #lisp
smurfrobot has joined #lisp
sjl has joined #lisp
smokeink has quit [Ping timeout: 260 seconds]
smurfrobot has quit [Ping timeout: 264 seconds]
sjl has quit [Ping timeout: 255 seconds]
vaporatorius has joined #lisp
vaporatorius has quit [Changing host]
vaporatorius has joined #lisp
norserob has joined #lisp
vap1 has joined #lisp
Murii has joined #lisp
fikka has joined #lisp
smurfrobot has joined #lisp
<hajovonta> hi
damke_ has joined #lisp
Mon_Ouie has joined #lisp
smurfrobot has quit [Ping timeout: 265 seconds]
damke has quit [Ping timeout: 264 seconds]
hhdave has joined #lisp
<beach> Hello hajovonta.
hhdave has quit [Ping timeout: 265 seconds]
bigos_ has quit [Remote host closed the connection]
nowhere_man has quit [Ping timeout: 264 seconds]
smurfrobot has joined #lisp
dilated_dinosaur has quit [Remote host closed the connection]
smurfrobot has quit [Ping timeout: 264 seconds]
vaporatorius has quit [Quit: Leaving]
fikka has quit [Ping timeout: 255 seconds]
fikka has joined #lisp
arduo has joined #lisp
fikka has quit [Ping timeout: 265 seconds]
Ven` has joined #lisp
_cosmonaut_ has joined #lisp
fikka has joined #lisp
yaewa has joined #lisp
moei has quit [Ping timeout: 256 seconds]
nowhere_man has joined #lisp
raphaelss has joined #lisp
fikka has quit [Ping timeout: 255 seconds]
nalkri has quit [Ping timeout: 265 seconds]
fikka has joined #lisp
fikka has quit [Ping timeout: 260 seconds]
Tobbi has joined #lisp
hajovonta1 has joined #lisp
fikka has joined #lisp
hajovonta has quit [Ping timeout: 248 seconds]
hajovonta1 is now known as hajovonta
jmercouris has joined #lisp
<jmercouris> How can I have a macro which defines multiple top level forms?
<beach> Use PROGN.
<jmercouris> like this: `(progn (topform1) (topform2)?
<beach> Yes.
<shka> yes
<jmercouris> Ok, thank you
<shka> hi beach
<beach> Hello shka.
<beach> clhs 3.2.3.1
<specbot> Processing of Top Level Forms: http://www.lispworks.com/reference/HyperSpec/Body/03_bca.htm
<beach> jmercouris: Item 3 of that ↑ page.
<jmercouris> Ok, I will take a look, thank you
<jmercouris> Ah, I see
<jmercouris> I didn't know that about progn
<beach> Now you do.
nowhere_man has quit [Read error: Connection reset by peer]
nowhere_man has joined #lisp
kini has quit [Quit: No Ping reply in 180 seconds.]
kini has joined #lisp
Kaisyu has quit [Quit: Connection closed for inactivity]
yaewa has quit [Quit: Leaving...]
moei has joined #lisp
quazimodo has joined #lisp
vaporatorius__ has joined #lisp
vap1 has quit [Read error: Connection reset by peer]
quazimodo has quit [Ping timeout: 256 seconds]
dddddd has joined #lisp
josemanu1l has joined #lisp
sjl has joined #lisp
pedh has joined #lisp
arduo has quit [Remote host closed the connection]
sjl has quit [Ping timeout: 248 seconds]
pedh has quit [Ping timeout: 272 seconds]
Fare has joined #lisp
nirved has joined #lisp
Cymew has quit [Remote host closed the connection]
damke has joined #lisp
pedh has joined #lisp
damke_ has quit [Ping timeout: 264 seconds]
orivej has joined #lisp
Fare has quit [Ping timeout: 255 seconds]
Cymew has joined #lisp
pedh has quit [Ping timeout: 256 seconds]
rawste has joined #lisp
pjb` is now known as pjb
Cymew has quit [Ping timeout: 255 seconds]
* loke wrote a Sexp parser in Eliir.
<loke> Elixir
<myrkraverk> I read that as "sex parser" and was intrigued for a little bit.
Ven` has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
smurfrobot has joined #lisp
<jackdaniel> elixir? sex parser? hm
<jackdaniel> let's spread the word ;-)
holycow has quit [Quit: Lost terminal]
lisp_guest has joined #lisp
<jack_rabbit> sex parser. spread.
<jack_rabbit> There's a joke there, I just know it.
<pjb> myrkraverk: you understand the attrackion of lisp.
<jmercouris> What's the origin of the term S-exp?
<jmercouris> Again though, what is the origin of "sybmolic expression"
<jmercouris> aren't all expressions symbolic expressions?
josemanu1l is now known as josemanuel
<jmercouris> Isnt 1+1 a symbolic expression, 1, and + are symbols are they not?
<jmercouris> Isn't this sentence a symbolic expression?
<jmercouris> every letter is a symbol, and together they compose words which are also symbols which ultimately express something
orivej has quit [Ping timeout: 264 seconds]
<jmercouris> not sure what I am getting at here, but the term S-exp has always bothered me
<jmercouris> Didn't feel like a good name
orivej has joined #lisp
<jmercouris> I would call them N-lists or something instead
pedh has joined #lisp
<jackdaniel> sexp is more sexy
Fare has joined #lisp
<jmercouris> no one could argue that
Ven` has joined #lisp
pedh has quit [Ping timeout: 256 seconds]
Ven` has quit [Client Quit]
esthlos has quit [Quit: ZNC 1.6.5 - http://znc.in]
<jmercouris> loke: How is elixir btw, how are you liking it?
* jmercouris will disconnect shortly, but will check logs
Cymew has joined #lisp
<pjb> jmercouris: compare: (red green blue) with {650,540,460}.
<pjb> jmercouris: the first is a list of symbol, it's a symbolic expression.
<pjb> jmercouris: the second is a literal vector of int, it's not a symbolic expression.
<pjb> jmercouris: both represent something similar (three colors).
nowhere_man has quit [Remote host closed the connection]
orivej has quit [Ping timeout: 240 seconds]
orivej_ has joined #lisp
<pjb> jmercouris: I would argue the symbolic expression is more precise, by being more fuzzy on the actual ranges of frequency, and also, ontologically, since an actual perceived color (light frequency) can be different from the actual color of the surface, under light conditions.
<Zhivago> s-exp describes a particular kind of grammar.
<Zhivago> It's not a very interesting grammar -- just one composed of atoms and forms, where a form is a list of atoms or forms.
Cymew has quit [Ping timeout: 256 seconds]
<Zhivago> So the examples above, such as 1 + 1 don't qualify.
<pjb> and 1+1 is a symbol.
<pjb> (symbolp '1+1) #| --> t |#
<jackdaniel> what about #'foo ?
<jackdaniel> or, #' foo
<Zhivago> #'foo is shorthand for (function foo).
jmercouris has quit [Ping timeout: 272 seconds]
<pjb> any lisp data printed readably is a symbolic expression!
<Zhivago> (function foo) is a s-exp.
<jackdaniel> my point is exactly that – are shorthands for forms also considered s-expressions?
<pjb> Sure.
<Zhivago> No, but what they are converted to may be.
Cymew has joined #lisp
<jackdaniel> right
<jackdaniel> (thanks)
<pjb> jackdaniel: now you always have the ambiguity between the textual form and the read form. But formally you can accept the textual form under those definitions.
<pjb> as long as you take into account the grammar of the reader macros.
<pjb> Of course, this may be complex, if you redefine reader macros in #.
SuperJen has joined #lisp
<pjb> (#.(set-macro-character #\/ 'read-something) / what will be read?)
orivej_ has quit [Client Quit]
<Zhivago> Fortunately, reader macros aren't part of the definition of symbolic expressions, so we can exclude those.
orivej has joined #lisp
<pjb> Then you consider the read form, not the textual form.
<pjb> the usual definition of sexp := atom | ( sexp… ) . wouldn't take into account circular structures.
<Zhivago> We must certainly exclude the textual expression of CL from s-exps.
JenElizabeth has quit [Ping timeout: 240 seconds]
<shka> lol
<shka> i see that channel is as productive as always :D
Cymew has quit [Ping timeout: 248 seconds]
<Zhivago> Nothing prevents cyclic form structures in the basic definition.
Jen has joined #lisp
<pjb> The clhs glossary doesn't have "symbolic expression".
<kolb> the current onslaught of "let me document all your projects using my $docgenerator" has to stop -.-
Jen is now known as Guest88758
nowhere_man has joined #lisp
<jackdaniel> lubie placki ;)
<kolb> No I have two zombie sites that *mis*-render the polished docs of my projects without me ever having opted in to that, and seemlingly no way to make them *stop*.
<Zhivago> Just go back to the Recursive Functions of Symbolic Expressions and their Computation by Machine paper. :)
<kolb> Now*
Cymew has joined #lisp
<kolb> quickdocs and quickref are imho the CL equivalent of yellow-pages sites that come up when you google for something. It’s *never* the site you are looking for. They are content mills.
* kolb is annoyed
<Zhivago> I suggest writing a stern letter.
nalkri has joined #lisp
SuperJen has quit [Ping timeout: 248 seconds]
<kolb> Zhivago: to whom? quickdocs is unmaintained and just a ghost ship floating the S3, quickref probably has way other priorities than me and my polished docs, and was done in an internship
<Zhivago> To the editor.
<kolb> There is no editor, that’s the whole point. These projects just blindly scrape quicklisp and dump the result on the net.
<kolb> There is no QA, or opt-in.
<kolb> Your project is on QL, well shit out of luck.
<Zhivago> Someone is paying for them to stay up -- write them a stern letter.
Cymew has quit [Ping timeout: 272 seconds]
<kolb> For quickdocs we have already established that there is noone who will answer you.
<kolb> See the GH project.
Cymew has joined #lisp
<kolb> Also my favourite part of nowadays web: trying to find the email address of someone.
<Xach> kolb: What is your project?
<Xach> Or projects?
<kolb> Xach: how does that matter? There are a few.
<Zhivago> kolb: Do you want to do a better job, or just not see those results in google searches?
<Xach> kolb: If you don't wish them to be in quickdocs and quickref, I can help remove them.
<Fare> kolb: I'm sure Didier Verna, who oversaw quickref, will be glad to accommodate your requests for an API to customize how quickref extracts documentation for you.
<kolb> Xach: you mean from QuickLisp? Yeah no, thanks.
nowhere_man has quit [Remote host closed the connection]
<kolb> Zhivago: I want the announcement of $docportal to include a reasoning of 1) why its supposed to supersede existing broken $docportal, 2) how they deal with the natural issue that there is no defined grammar for docstrings, 3) document a way to opt-in/out (the "I scrape facebook and host profiles" model is not new, and neither are the issues with it)
Cymew has quit [Ping timeout: 240 seconds]
nowhere_man has joined #lisp
<kolb> Sorry for ranting guys. Obviously I will not write a stern, but friendly letter, detailing my issues.
<Xach> I think the projects are done in good faith to improve the experience of people trying to find and use documentation. I think shortcomings are worth discussing.
<kolb> Nobody is saying this is hostile
Cymew has joined #lisp
<Zhivago> Perhaps what you rally want is a link from the documentatoin on those sites back to your site?
<kolb> Zhivago: no I don’t care about that at all
<Xach> kolb: The way you describe the effort makes it sound maliciously lazy and incompetent.
jmercouris has joined #lisp
<jmercouris> pjb: But, consider that 650, 540, and 460 are also composed of symbol
<kolb> Xach: it is objectively neglecting, since these projects expect the content providers to run after the content farm owners to fix issues.
jealousmonk has joined #lisp
<pjb> jmercouris: of course, you can also do numeric computation in lisp :-)
<jmercouris> pjb: symbol: a mark or character used as a conventional representation of an object
<Xach> I've found quickdocs pretty helpful in the past. I was under the impression it was actively maintained.
<Fare> kolb: if you provide a declarative way to specify what documentation convention a given system uses, you can help solve the issue.
<jmercouris> I don't mean symbol as in the common lisp usage of symbol, but the generic definition of symbol
<Xach> It's nice to search for e.g. "decode base64" and get a handful of potentially useful results in a single place.
<jmercouris> unless of course we say that within S-exp, we define symbol to have a meaning specific to the context of common lisp
<kolb> Xach: quickdocs doesn’t understand encodings
<Xach> I don't generally use the reference docs there.
<Zhivago> jmercouris: 650 is an atom, 650 is also a symbol. Why does this matter?
<Xach> I find it more useful than a google search.
red-dot has quit [Quit: Going offline, see ya! (www.adiirc.com)]
<jmercouris> Zhivago: Outside of the context of common lisp exists a definition of symbol, that's the one I'm using
<jmercouris> On the wiki page, they do not redefine symbol
<jmercouris> It doesn't really matter, I just thought it was an interesting discussion
nowhere_man has quit [Remote host closed the connection]
<kolb> I don’t want to take quickdocs/quickref from you guys. I just don’t want my polished documentation to be mangled by it. I put a lot of work into hosting and working on my docs. And when people find them on quick$foo instead of my site, they will think its broken.
orivej_ has joined #lisp
orivej has quit [Read error: Connection reset by peer]
Cymew has quit [Ping timeout: 265 seconds]
<kolb> Fare: how would I do that?
<Xach> kolb: That sounds pretty reasonable.
<Zhivago> kolb: So, isn't a link from those entries back to your site the solution?
<kolb> Xach: my problem is not with the concept, my problem is that its auto-opt-in and now I am forced to run after two projects to fix things. I.e. work out of nowhere.
<kolb> Zhivago: no its not, since they still have broken renderings of my docs.
<Zhivago> jmercouris: Why are you talking about s-exps in terms of symbols rather than atoms?
<Xach> kolb: I think that is a consequence of licensing to some degree.
EvW has joined #lisp
<jmercouris> Zhivago: I'm just taking the name "Symbolic Expression" and saying that all expressions that are communication involve symbols
<Zhivago> kolb: But they would have a way to find the non-broken docs.
<jmercouris> We cannot communicate, we cannot speak without symbols of any kind
<jmercouris> ALL expressions of any kind involve symbols
<jmercouris> (do not think Lisp symbols when I say symbols)
<jmercouris> therefore, the term S-EXP, is not a good one
<pjb> jmercouris: the point is that S-expression is for data, and M-expression is for code. See http://informatimago.com/develop/lisp/com/informatimago/small-cl-pgms/m-expression/index.html
Cymew has joined #lisp
<kolb> Xach: the licensing makes this not-illegal, but I am not talking abour prosecuting people. I am asking for decency.
<jmercouris> pjb: I don't disagree, and I get your guys' point
<jmercouris> I'm just saying they should be called N-lists
<Zhivago> Well, that's obviously nonsense -- we can communicate via sound waves. Those don't involve symbols per se.
<Xach> kolb: right - but I mean that you could also end up with a hundred sites copying your work in bad faith with little recourse.
<jmercouris> Zhivago: The cumulation of those sound waves over time translate to a symbol
<jmercouris> Zhivago: Changing the medium does not change the fact that the sound "the" is a symbol for a concept
<Zhivago> So you listen to music symbolically?
<pjb> jmercouris: nope, it translates to activated neurons in the brains.
raynold has quit [Quit: Connection closed for inactivity]
<jmercouris> kolb: I would be interested in a grammar for docstrings that was standardized
<kolb> jmercouris: I wouldn’t
<jmercouris> pjb: Yes, in a way :P
<pjb> symbols are elaborated at the conscious level in a later stage.
<jmercouris> kolb: Can you explain your reasoning?
<Zhivago> What is the N in N-exp supposed to mean?
<jmercouris> Zhivago: I said N-lists
<jmercouris> Zhivago: Nested lists
<kolb> jmercouris: I probably wouldn’t like the grammar, and I already have a formal language I use in my docstrings
<jmercouris> kolb: That's honestly not a compelling reason
<kolb> jmercouris: the parser / renderer are GPLed and on QL, what we are missing imho is a way do say 'render my docs using X' in as ASDF file
<Zhivago> Nested lists of what?
<jmercouris> Zhivago: Does it matter what they are composed of?
<kolb> jmercouris: what makes you say that?
<jmercouris> kolb: I'm a huge fan of standards :D
<Zhivago> Sure -- are they lists of cheese or cups of tea?
<kolb> jmercouris: i.e. why do you think its a good idea to force everyone to use the same language?
wxie has joined #lisp
<jmercouris> Zhivago: If you want, why not?
<Xach> kolb: it reminds me a little bit of https://cr.yp.to/compatibility.html
<Zhivago> Then I don't see how they apply to lisp.
Cymew has quit [Ping timeout: 240 seconds]
red-dot has joined #lisp
<jmercouris> Zhivago: Who says S-EXP only apply to lisp?
<kolb> Xach: just because you can get away with something does not mean its a good idea to do, or that it necessarily has to happen / be the status quo. I don’t do politics in terms of game theory.
<Zhivago> Lisp doesn't handle cheese or cups or tea -- only symbolic references to such.
<jmercouris> Zhivago: So in some way, it handles them via a symbol, a reference
<jmercouris> Zhivago: Why might I not have (cup (milk sugar tea))?
<Zhivago> Meaning that these are lists of symbols and lists?
<Xach> kolb: right, i mean your options of reactions and how much they can do are limited by your choice of licensing and the intentions of the people who have done something you don't like.
m00natic has joined #lisp
<Zhivago> Bringing us back to s-exps? :)
<jmercouris> Zhivago: No no no, we call them N-lists now :P
<Zhivago> I don't know how black people will feel about that.
<kolb> Xach: well no, fundamentally I am not looking for ways to coerce people to follow my will. I want us to agree on what’s cool and what’s not cool.
<Xach> kolb: https://cr.yp.to/compatibility.html springs to mind a bit - i understand both positions and which one i find least objectionable depends on my short-term goals in a particular situation
<Zhivago> kolb: What if everyone agrees on what is cool except for you?
<jmercouris> Zhivago: what about NestLists, or will have problems with Nestle?
<kolb> I wouldn’t bother if I didn’t know didier and knew him to be reasonable
Rawriful has joined #lisp
<kolb> Zhivago: then there is almost concensus
<kolb> consensus*
<Zhivago> Being associated with Nestle would probably be bad.
<jmercouris> Probably :D
<Zhivago> kolb: How do those projects break your documentation? Do you have a link to one of the breakages?
<jmercouris> kolb: Whenever you publish your content publicly, on a license that permits access to it, people can do with it as they wish, if you don't want people to reproduce parts of it etc, then write clauses in your license
<jmercouris> I haven't checked quickref, but I they probably include a link to the source / the license
<kolb> jmercouris: yes, yes, I know, when we have no rulers everybody will start murdering each other
<jmercouris> s/i//
<kolb> Xach: standards can be nice at the edges, but I don’t think how you write your docs is an "edge". There are many reasons why you would want choice in that regard, and I would consider a coercive approach to unifying the CL documentation landscape highly problematic. What you are seeing happening in Quickdocs/Quickref are already sympthoms of ossification.
<kolb> I love the fact that everyone in the CL world rolls their own documentation solution. I hate the fact that some want to become standard.
<kolb> I would back a standard interface for converting between languages though, but that is a hard problem.
<jmercouris> Actually, Xach could pretty much dictate how CL documentation would be since he is the bus-factor 1 of Quicklisp, maybe though if he was too strict people would fork Quicklisp or something
<Xach> kolb: Do you discuss it here to vent cathartically or is it a real effort to change the minds of the people who work on quickdocs and quickref?
<kolb> Xach: at this point I am replying to you guys
<p_l> kolb: I'd argue that quickref, being for reference manuals, is a good idea. Let people write *good* user manual in whatever way they want, and have a slightly advanced variant of docstrings quickly searchable
<Xach> kolb: how about at the beginning?
<kolb> Xach: like I said, venting
<Xach> Ok.
<kolb> p_l: I repeat again: I don’t want these projects to disappear, I am annoyed by the way they handle some specifics.
hhdave has joined #lisp
yxabc has joined #lisp
<myrkraverk> Mostly, what I've been doing lately is undocumented (sb-posix symbols)
<myrkraverk> Also, py-configparser.
<kolb> Xach: I would be interested in talking about how we could organize these kinds of things around the common "database" Quicklisp. I.e. I assume there is a way to include metadata in the DB these Quick* projects scrape. We could propose a way to signal a) if you prefefer your proect to be included in Quick* or not, b) i.e. how to produce HTML for you project c) ...
<myrkraverk> And since I don't have anything on QL (yet) I don't care so much about reference aggregators.
yxabc has quit [Remote host closed the connection]
<kolb> Xach: i.e. with a way to express opt-in/out of the QL database, it would be easier for consumers of the database to respect their upstreams
<myrkraverk> I find the idea of specifying what docstring-to-html to use, by aggregators, but I wonder how? Afaik, QL is just based on ASDF, and that doesn't have anything resembling such custom tags that I know of.
<Xach> kolb: I can imagine some mechanisms, like creating a file with a special name in the repo or something.
<jmercouris> that's actually been one of the reasons I have not wrote a single docstring (outside of defparameter defvar) in my project, I don't know which way is the best
<jmercouris> if there was a dominant way I could be sure will not require me a rewrite in the future, I would do it
<kolb> jmercouris: that’s crazy
<myrkraverk> jmercouris: I try to write the docstrings in a way that'll make it useful to use the function; so I don't have to read the source code, possibly years later, to re-use it.
<jmercouris> myrkraverk: Me too, in other languages :P
fikka has quit [Ping timeout: 264 seconds]
<myrkraverk> But as I said, I don't care about aggregators (yet).
<jmercouris> but I would like a standard way to describe args, etc
<jmercouris> I don't care about aggregators myself, I care about docstring -> reference manual generation tools
<myrkraverk> Oh yeah. I tend to use `foo' because that's highlighted differently in [x]emacs.
<jmercouris> If you write really good docstrings, your manually basically builds itself
<myrkraverk> *nod*
<jmercouris> myrkraverk: You actually use xemacs?
<myrkraverk> jmercouris: yes.
<jmercouris> myrkraverk: How many of you are there?
<myrkraverk> And to prove it, I just published this today: http://www.myrkraverk.com/blog/2017/12/xemacs-sorting-key-value-lines-by-value/
<myrkraverk> jmercouris: My casual count, 2.
<myrkraverk> *by
<myrkraverk> Ok, there are probably more, but I've only counted 2 on IRC.
<jmercouris> That's hilarious :D
<myrkraverk> Yes.
<jmercouris> I imagine there are at least a couple dozen users worldwide, if not in the thousands
<myrkraverk> So I generally refer to "both of us" when I talk about xemacs users; but I know there are more.
<jmercouris> hard to know though
<myrkraverk> Yeah.
<kolb> jmercouris: so as someone who has actually adopted a formal language in docstrings, I say in retrospect this is probably a bad approach. Docstrings are as intended by the standard used for lookup in the lisp IDE, i.e. apropos. Yes, I can now automatically generate my docs, but I also have a markup document for every public symbol in my source code.
jealousmonk has quit [Ping timeout: 260 seconds]
<jmercouris> kolb: But what about describing argument expectations, is that also not useful for someone in a lisp ide?
<myrkraverk> And don't forget the return value.
<Shinmera> kolb: FWIW Staple includes a mechanism to allow extensions of the documentation system per system-being-documented, so you can add new definition types, customise the rendering of the main documentation part, etc.
<myrkraverk> I find myself often delve into docstrings to figure out the return value. I personally try to put it in the second paragraph: Returns foo.
<kolb> jmercouris: it totally is, but I doubt using a formal language/syntax for it is a good compromise between readability and style
<Shinmera> But as far as I know Staple is the only doc system allowing for something like that
<kolb> jmercouris: I have a comparatively lightweight syntax, but my public docstrings still have become quite beurocratic
<kolb> jmercouris: and I guess when standards/non-standards keep you from riting docstrings, its obvious that its better to not think about standards, and just write what you think is useful instead
samsungtv has joined #lisp
<Shinmera> I've already written too much documentation to be bothered to go back and change it all even in the extremely unlikely situation that a standard for docstrings would be written that I agree with and fills my needs.
<Zhivago> Perhaps the answer is to use declarations for those things instead?
<kolb> Shinmera: +1
<Shinmera> So I agree with the stance that the only way to work with this situation is to offer a customisable way to render the documentation.
markong has joined #lisp
<kolb> I think the #1 mantra should be that **not everyone fits your shoes**
<kolb> and work from that, i.e. always have graceful "failure" in mind
<Shinmera> I also agree that having a central place to discover documentation and projects is invaluable. But perhaps it would be better to simply include or link to the projects' own documentation for those that have it than to try to sledgehammer everything into one package, even if that would incur different looks for different proejcts.
SuperJen has joined #lisp
<Xach> linking has some perils, like dead hosts on the other end
<Shinmera> That's why including would be a possibility.
<kolb> Because people asked: this my the doc I host: http://mr.gy/software/maxpc/api.html this is quickref: http://quickref.common-lisp.net/maxpc.html#The-maxpc-package
Cymew has joined #lisp
<kolb> Xach: I find it much more disturbing if Quick* goes down, i.e. single point of failure, compared to when links rot
wxie has quit [Quit: Bye.]
<Xach> kolb: I would really like a way to get good docs locally, as well. even though there are vanishingly few ways to be really offline now.
<Xach> some used to call it "train hacking" but i think most have wifi now?
fikka has joined #lisp
<kolb> Xach: C-s (i.e. Save as...) HTML pages works well for me, I use an offline index (recoll) to search all my documentation (and system). Its nice.
<Shinmera> Xach: I include all my docs in the source directory for this reason.
Guest88758 has quit [Ping timeout: 265 seconds]
<Xach> kolb: cool, new to me
<kolb> Shinmera: that is the really nice way do it, and much appreciated. I understand that its annoying for maintainers to keep build artifacts in repositories though.
<Shinmera> Staple also includes a "staple server" system to generate the docs in your browser on the fly.
<kolb> Xach: the hardest part is converting man and info pages to HTML ;-)
<Zhivago> kolb: I have to say that putting that kind of mark-up into docstrings seems like it's just begging for terrible things to happen.
<Shinmera> kolb: I run (staple:generate :foo) that writes the about.html, and then a script to push that to the gh-pages branch. It's really no biggie.
<kolb> Shinmera: oh ok, I was thinking more in the terms of including a HTML manual in release tarballs
<Shinmera> Well staple throws the about.html into your source root by default, so
<kolb> Zhivago: yes, I deserve anything bad that might happen because I like well-typeset documentation
<Xach> There are some projects that use a toolchain to generate docs that is very hard to acquire and use.
<kolb> Zhivago: that happens to match the ANSI CL standard’s notation
<Zhivago> Have you considered a translator from your mark-up to plain-text that would be suitable in docstrings?
<kolb> Zhivago: this translator already exists
<myrkraverk> In cases like the cl-ppcre docs disappearing from online, there's also ~/quicklisp/dists/quicklisp/software/cl-ppcre-2.0.11/doc/index.html
<kolb> Zhivago: a full suite for my documentation system is on QL, it includes a formal document model based on s-expressions, translators to print, html and plaintext
<Xach> fewer projects have "release tarballs" these days :~(
<myrkraverk> True ;c
raynold has joined #lisp
vap1 has joined #lisp
vaporatorius__ has quit [Ping timeout: 256 seconds]
<Zhivago> Yes, and I see weird stuff in the docstrings in the source.
<Zhivago> Which presumably you expect random implementations to be able to display in some sane fashion.
<Zhivago> This seems an unreasonable expectation, and the root of the problem you're currently talking about.
<Zhivago> If the docstrings were plain text this problem wouldn't exist.
<Shinmera> I keep my docstrings pretty plain for this reason.
<shka> i stumbled upon this problem before
<Shinmera> ::look up radiance define-string-route
<Colleen> Macro radiance-core:define-string-route https://shirakumo.github.io/radiance#MACRO%20RADIANCE-CORE%3ADEFINE-STRING-ROUTE
<shka> i ended up reverting this thing
<shka> instead of embedding markup in docstring, i generate docstring from sexp
<Shinmera> ^for instance there's some formatting in there, and some "special" syntax recognised by staple, but it is still well readable from the repl
<shka> this solves this issue, but now you have extra dependency just for docstrings
<Zhivago> shka: That sounds like the right thing to do.
<shka> which kinda sucks
<Shinmera> shka: I depend on documentation-utils in a lot of my projects for docstring reasons, and don't see the problem.
<shka> right
<kolb> Zhivago: the root of the problem is people wanting to decide what’s "right" for everyone else
<myrkraverk> Shinmera: except for the long line, in case you're actually working on a VT520.
<myrkraverk> (which I hope no one is, these days)
<shka> when i have a little bit more time, i will polish this docstring generator
fikka has quit [Ping timeout: 248 seconds]
<kolb> shka: that’s an interesting approach, will have to look into that.
<Shinmera> myrkraverk: The first line should describe the overall function in full, which can make it a tad long sometimes, yeah.
<shka> for instance, remove all pointless dependency
<Shinmera> shka: I wouldn't mind a "documentation translation" part in documentation-utils.
<Zhivago> kolb: Yes, you want to decide that weird crap in docstrings is right for everyone else. :)
<myrkraverk> Shinmera: Yes, I know; I tend to break the first line for my docstrings anyway; but the first line *is special*.
<kolb> Zhivago: you have no idea what you are talking about, just stop
<shka> Shinmera: thanks for head up, will look at it
rpg has joined #lisp
random-nick has joined #lisp
<myrkraverk> And about long lines; I tend to split my screen horizontally, so I can put two code pages side by side (or manual, page, etc) -- but because most "modern" IDEs don't do that, developers have gotten extremely lazy about shortening long lines.
<shka> Shinmera: looks more or less what I figured out myself
cromachina has joined #lisp
<myrkraverk> Which makes me keep lines <75-ish characters.
jmercouris has quit [Ping timeout: 256 seconds]
<shka> Shinmera: i can certainly contribute to that, I agree with this approach
<Zhivago> kolb: Are you putting weird mark-up into docstrings and expecting random systems to deal with that as you expect or not?
<kolb> Zhivago: no I am not, now stop talking to me
<Zhivago> Then why do I asee weird mark-up in the docstrings in your source code?
schoppenhauer has quit [Ping timeout: 264 seconds]
pedh has joined #lisp
schoppenhauer has joined #lisp
raphaelss has quit [Ping timeout: 264 seconds]
pedh has quit [Ping timeout: 265 seconds]
SAL9000 has quit [Ping timeout: 260 seconds]
SAL9000 has joined #lisp
_cosmonaut_ has quit [Ping timeout: 272 seconds]
Ven` has joined #lisp
varjag has quit [Quit: ERC (IRC client for Emacs 24.5.1)]
Zhivago has quit [Ping timeout: 272 seconds]
SAL9000_ has joined #lisp
Amplituhedron has joined #lisp
Zhivago has joined #lisp
_cosmonaut_ has joined #lisp
Zhivago has quit [Remote host closed the connection]
SAL9000 has quit [Ping timeout: 268 seconds]
itruslove has quit [Ping timeout: 240 seconds]
norserob has quit [Quit: leaving]
norserob has joined #lisp
creat has quit [Ping timeout: 240 seconds]
fikka has joined #lisp
itruslove has joined #lisp
creat has joined #lisp
neoncontrails has quit []
fikka has quit [Ping timeout: 264 seconds]
attila_lendvai has quit [Quit: Leaving.]
madrik has quit [Remote host closed the connection]
Cymew has quit [Remote host closed the connection]
rippa has joined #lisp
jealousmonk has joined #lisp
<kolb> Shinmera: Regarding documentation-utils, can I get the untranslated docstring for a a symbol/type tuple?
<Shinmera> There's currently no translation going on at all, so just DOCUMENTATION will do that
<kolb> Shinmera: yeah but I would use a translator, but still need to get to the original source to generate my HTML docs
<Shinmera> You're asking me about features that aren't implemented. How am I supposed to know how they would work?
<kolb> IIUC I could already plug in my own translators?
LiamH has joined #lisp
<Shinmera> That translates an expression in define-docs to a (setf documentation) form.
<kolb> Oh ok
<Shinmera> or rather a (documentation ..) form that can be read and setf
<kolb> I see thanks!
<Shinmera> You COULD output some other place that side-effects documentation and stores the original string somewhere else to do what you want
Bike has joined #lisp
<shka> in fact that's what I am doing
<kolb> yeah that’s whyt I figured
<Shinmera> But I'd rather have that kind of facility in documentation-utils native.
<kolb> Shinmera: agree, hence my question
<kolb> Shinmera: i.e. a non DOCUMENTATION accessor for the strings to DEFINE-DOCS
<shka> and then i can take *documentation* because it contains original args
<shka> but that's ironicly not documented :D
* kolb is going for a casual bike ride to clear out, bbl
<shka> bye!
* Shinmera goes back to wrestling Android
<shka> oh god
<shka> Shinmera: i am sorry to hear it!
<shka> ;-)
<shka> Shinmera: one more question
<shka> i don't see need for docstample as a separate project, so i would rather add all features into documentation-utils, should i use github issues to discuss this?
<Shinmera> Sure.
<shka> great
<shka> once i will have a little bit extra time, i will check how your stuff is designed
smurfrobot has quit [Ping timeout: 240 seconds]
atgreen has joined #lisp
raphaelss has joined #lisp
<Shinmera> No rush
Jesin has quit [Quit: Leaving]
Jochen has joined #lisp
smurfrobot has joined #lisp
hajovonta has quit [Quit: hajovonta]
samsungtv has left #lisp [#lisp]
Cymew has joined #lisp
EvW has quit [Quit: EvW]
SAL9000_ is now known as SAL9000
Ven` has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
fikka has joined #lisp
Ven` has joined #lisp
fikka has quit [Ping timeout: 248 seconds]
cromachina has quit [Read error: Connection reset by peer]
sjl has joined #lisp
mnoonan has joined #lisp
sjl__ has joined #lisp
sjl has quit [Ping timeout: 240 seconds]
raphaelss has quit [Remote host closed the connection]
notzmv has quit [Read error: Connection reset by peer]
attila_lendvai has joined #lisp
attila_lendvai has quit [Changing host]
attila_lendvai has joined #lisp
nalkri has quit [Read error: No route to host]
EvW has joined #lisp
FreeBirdLjj has joined #lisp
notzmv has joined #lisp
<lisp_guest> hi guys
<beach> Hello lisp_guest.
<lisp_guest> how exactly is LAMBDA as a symbol vs. LAMBDA as a macro differentiated by the evaluator?
mishoo has quit [Ping timeout: 265 seconds]
<shka> lambda is special form, not a macro
<lisp_guest> are the possible cases where a lambda expression is acceptable just enumerated on a case-by-case basis?
<beach> shka: It is a macro.
<lisp_guest> shka: it's a symbol and a macro
<beach> The macro (lambda (...) ...) expands to (function (lambda (...) ...)
<shka> what?
<shka> right
<shka> this thing…
<lisp_guest> yes, indeed. so how does the evaluator know when it's a macro and when it's a symbol?
<shka> i forgot about it
<beach> lisp_guest: In the expansion, (lambda (...) ...) is no longer a macro call.
<lisp_guest> does it just depend on what the lambda form finds itself in?
<beach> lisp_guest: It depends on the occurrence. If it is in a position where the form is evaluated normally, it is a macro call.
<Bike> FUNCTION is a special operator. it does not macroexpand its argumenet.
FreeBirdLjj has quit [Ping timeout: 265 seconds]
<lisp_guest> Bike: right, that's what i'm wondering about. so it's basically hardwired into FUNCTION itself?
<beach> lisp_guest: Otherwise, it is just a lambda expression starting with the symbol LAMBDA.
<Bike> yep.
<lisp_guest> so then you could say it's defined on a case-by-case basis in the standard
<lisp_guest> well, i'm assuming there are more cases like these, are there really?
<lisp_guest> i.e. is there anything other than FUNCTION that behaves this way?
<beach> Yes: ((lambda (...) ...) ...)
<lisp_guest> ah, right
eve_ has joined #lisp
<Bike> there are a few functions that deal with lambda expressions, like COMPILE and COERCE, but they take expressions as quoted data
<lisp_guest> mhm. so basically, there are few special places when a lambda form has special meaning (like FUNCTION and calling a function), and in all other cases it's treated as a macro
<Bike> a lambda expression.
<Bike> but yes.
red-dot has quit [Quit: Going offline, see ya! (www.adiirc.com)]
<Bike> it's treated as a macro when it's in a normal evaluation context.
<beach> lisp_guest: It is not a form there. A form is an expression that is to be evaluated.
<Bike> function and lambda forms (which is what you call what beach said) are not normal evaluation contexts
<lisp_guest> ah right, i mixed up the terminology
Murii has quit [Ping timeout: 248 seconds]
<TMA> lisp_guest: it is the same as with other symbols designating a macro -- when in normal evaluation context, the list (A ...) is a macro call for any symbol A designating a macro (including the symbol LAMBDA)
<TMA> lisp_guest: there are special contexts (such as inside (QUOTE ...) or (FUNCTION ...) or other special forms where the context dictates following other rules as specified by that special form.
<beach> lisp_guest: What TMA said. For example (let (lambda) ...) is another example.
<lisp_guest> mhm. so there's really nothing *that* special and black magic about it. the interpretation of the expression depends on the context and that's it
jmercouris has joined #lisp
<TMA> lisp_guest: additonally the (LAMBDA (...) ...) expression can be used in the operator place in a compound form. this is the only special case for (LAMBDA (...) ...)
<lisp_guest> TMA: that would be the ((lambda ...) args) example, right?
<beach> Right.
<TMA> lisp_guest: so that you can use ((lambda (a) (+ a a)) 1) instead of (funcall (lambda (a) (+ a a)) 1)
<lisp_guest> ya
<lisp_guest> nice, thanks beach, Bike, TMA :-)
<TMA> other than that, no specialness with LAMBDA
eve_ has quit [Ping timeout: 248 seconds]
rawste has quit [Quit: ZZZzzz…]
<lisp_guest> what was weird when i first learned about this is that it seemed like black magic because i couldn't tell when it had its special meaning
<lisp_guest> fiding out and confirming that it's "hard coded" into the standard makes it very easy to understand
<lisp_guest> it was just special cased
<Xach> it's often pretty easy to follow in the core of the evaluator, too
SaganMan has joined #lisp
<Xach> i.e. there is a visible COND clause that checks for a (lambda ...)
Ven` has quit [Ping timeout: 272 seconds]
<lisp_guest> and nobody really mentions that fact from the explenations of LAMBDA i've read
Jen has joined #lisp
<Bike> it's described on the page for function, and lambda forms are explained in the pages on evaluation semantics.
rawste has joined #lisp
Jen is now known as Guest50184
<lisp_guest> Bike: i've read both, but it still took a bit before i truly got what it meant
<lisp_guest> or maybe it was just because i didn't get used to the terminology yet
<lisp_guest> for example, FUNCTION says "If name is a lambda expression"
<lisp_guest> expression here refers to a sexp, right?
<lisp_guest> i.e. a special sexp with LAMBDA in as the operator and all the other stuff
<lisp_guest> s/in//
SuperJen has quit [Ping timeout: 248 seconds]
Mon_Ouie has quit [Ping timeout: 260 seconds]
orivej_ has quit [Ping timeout: 256 seconds]
<Bike> a lambda expression. a list beginning with LAMBDA. like (lambda (x) x). like we've been talking about.
warweasle has joined #lisp
random-nick has quit [Remote host closed the connection]
<lisp_guest> Bike: exactly, but when i read "expression" i didn't think of such a list. i guess it's because i got used to what the term meant in other languages
<beach> clhs glossary/expresssion
<specbot> Couldn't find anything for glossary/expresssion.
<beach> Aww.
<lisp_guest> :D
<Bike> clhs glossary/lambda expression
random-nick has joined #lisp
<beach> clhs glossary/expression
<beach> Too many #\s-es.
red-dot has joined #lisp
rawste has quit [Quit: ZZZzzz…]
jmercouris has quit [Ping timeout: 248 seconds]
Murii has joined #lisp
BitPuffin|osx has joined #lisp
nirved has quit [Ping timeout: 255 seconds]
Jochen has quit [Ping timeout: 260 seconds]
mishoo has joined #lisp
sjl__ is now known as sjl
zmt00 has joined #lisp
Cymew has quit [Remote host closed the connection]
nalkri has joined #lisp
nirved has joined #lisp
hexfive has joined #lisp
flamebeard has quit [Quit: Leaving]
Cymew has joined #lisp
Cymew has quit [Ping timeout: 265 seconds]
Cymew has joined #lisp
Jesin has joined #lisp
EvW has quit [Ping timeout: 265 seconds]
anunnaki has quit [Ping timeout: 256 seconds]
scymtym has quit [Ping timeout: 256 seconds]
Cymew has quit [Ping timeout: 240 seconds]
oleo has joined #lisp
Amplituhedron has quit [Ping timeout: 265 seconds]
Cymew has joined #lisp
anunnaki has joined #lisp
dec0n has quit [Read error: Connection reset by peer]
Cymew_ has joined #lisp
Cymew has quit [Ping timeout: 265 seconds]
anunnaki has quit [Ping timeout: 268 seconds]
Cymew_ has quit [Ping timeout: 240 seconds]
orivej has joined #lisp
ChadMcNugget has joined #lisp
BitPuffin|osx has quit [Ping timeout: 265 seconds]
Cymew has joined #lisp
trittweiler has quit [Ping timeout: 260 seconds]
rawste has joined #lisp
Cymew has quit [Ping timeout: 265 seconds]
fikka has joined #lisp
pdv has quit [Remote host closed the connection]
pdv has joined #lisp
sz0 has joined #lisp
scymtym has joined #lisp
fikka has quit [Ping timeout: 240 seconds]
SuperJen has joined #lisp
red-dot has quit [Quit: Going offline, see ya! (www.adiirc.com)]
Guest50184 has quit [Ping timeout: 256 seconds]
random-nick has quit [Read error: Connection reset by peer]
random-nick has joined #lisp
random-nick has quit [Remote host closed the connection]
random-nick has joined #lisp
random-nick has quit [Remote host closed the connection]
random-nick has joined #lisp
raphaelss has joined #lisp
dddddd has quit [Ping timeout: 265 seconds]
_cosmonaut_ has quit [Quit: Leaving.]
<nyef`> Today I learned: The AMOP specification for MAKE-METHOD-LAMBDA includes an example which uses FLET to bind CALL-NEXT-METHOD, an action forbidden by CLHS.
dddddd has joined #lisp
Karl_Dscc has joined #lisp
terpri has quit [Ping timeout: 255 seconds]
BitPuffin|osx has joined #lisp
<beach> I am not sure that's the right interpretation of what the Common Lisp HyperSpec says.
FreeBirdLjj has joined #lisp
<nyef`> CLHS FLET says that it establishes a function binding. CLHS 11.1.2.1.2 forbids this for external symbols of package COMMON-LISP. CLHS 11.1.2.1.2.1 provides exceptions for symbols which don't name standardized functions, macros, or special operators. CLHS CALL-NEXT-METHOD says that the exceptions of CLHS 11.1.2.1.2.1 don't apply.
shka has quit [Ping timeout: 256 seconds]
EvW1 has joined #lisp
pdv has quit [Ping timeout: 240 seconds]
red-dot has joined #lisp
Cymew has joined #lisp
Cymew has quit [Ping timeout: 240 seconds]
SuperJen has quit [Remote host closed the connection]
SuperJen has joined #lisp
Cymew has joined #lisp
Cymew has quit [Ping timeout: 272 seconds]
<Bike> make-method-lambda also respecifies call-method and make-method without giving detail on new syntax. it's kind of extracurricular.
smurfrobot has quit [Remote host closed the connection]
ryanwatkins has joined #lisp
fikka has joined #lisp
ajarmst has quit [Quit: ERC (IRC client for Emacs 27.0.50)]
Jen has joined #lisp
Jen is now known as Guest11630
fikka has quit [Ping timeout: 248 seconds]
SuperJen has quit [Ping timeout: 264 seconds]
JenElizabeth has joined #lisp
smurfrobot has joined #lisp
Guest11630 has quit [Ping timeout: 264 seconds]
SuperJen has joined #lisp
dyelar has quit [Read error: Connection reset by peer]
dyelar has joined #lisp
EvW1 has quit [Ping timeout: 265 seconds]
smurfrobot has quit [Ping timeout: 264 seconds]
zooey has quit [Ping timeout: 248 seconds]
JenElizabeth has quit [Ping timeout: 265 seconds]
Jesin has quit [Remote host closed the connection]
JenElizabeth has joined #lisp
wheelsucker has joined #lisp
SuperJen has quit [Ping timeout: 256 seconds]
Jesin has joined #lisp
SuperJen has joined #lisp
dyelar has quit [Quit: Leaving.]
warweasle has quit [Quit: moo]
Intensity has quit [Ping timeout: 246 seconds]
Fare has quit [Ping timeout: 248 seconds]
JenElizabeth has quit [Ping timeout: 240 seconds]
JenElizabeth has joined #lisp
wigust_ has joined #lisp
zooey has joined #lisp
Jesin has quit [Ping timeout: 256 seconds]
anunnaki has joined #lisp
SuperJen has quit [Ping timeout: 265 seconds]
SuperJen has joined #lisp
Intensity has joined #lisp
wigust has quit [Ping timeout: 264 seconds]
smurfrobot has joined #lisp
JenElizabeth has quit [Ping timeout: 264 seconds]
JenElizabeth has joined #lisp
random-nick has quit [Remote host closed the connection]
SuperJen has quit [Ping timeout: 264 seconds]
anunnaki has quit [Ping timeout: 240 seconds]
pedh has joined #lisp
random-nick has joined #lisp
dyelar has joined #lisp
fourier has joined #lisp
drdo has quit [Ping timeout: 255 seconds]
milanj has joined #lisp
Jesin has joined #lisp
pedh has quit [Ping timeout: 256 seconds]
smurfrobot has quit [Remote host closed the connection]
m00natic has quit [Remote host closed the connection]
drdo has joined #lisp
red-dot has quit [Quit: Going offline, see ya! (www.adiirc.com)]
dyelar has quit [Quit: Leaving.]
red-dot has joined #lisp
dddddd has quit [Ping timeout: 260 seconds]
hhdave has quit [Ping timeout: 240 seconds]
dddddd has joined #lisp
Tobbi has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
vutral has joined #lisp
vutral has quit [Changing host]
vutral has joined #lisp
jealousmonk has quit [Ping timeout: 248 seconds]
SaganMan has quit [Quit: WeeChat 1.6]
smurfrobot has joined #lisp
ryanwatkins has quit [Remote host closed the connection]
ryanwatkins has joined #lisp
lclark has joined #lisp
fourier has quit [Ping timeout: 248 seconds]
<akkad> is there any trivial-repl sorts of packages to provide the consistent niceties some repls offer. e.g. :pwd :cd :ls
dcluna has quit [Ping timeout: 255 seconds]
fourier has joined #lisp
<jackdaniel> I believe pjb has something like that in his informatimago tree
dcluna has joined #lisp
<Shinmera> There's prepl, but it kinda blows.
<nyef`> sb-aclrepl, maybe?
SuperJen has joined #lisp
<nyef`> (I realize that that doesn't help for non-SBCL use-cases.)
<jackdaniel> question indicates, that he's looking for portable solution
sz0 has quit [Quit: Connection closed for inactivity]
terpri has joined #lisp
pedh has joined #lisp
JenElizabeth has quit [Ping timeout: 265 seconds]
<akkad> no biggy, easy enough to code around
turkja has quit [Ping timeout: 264 seconds]
Jen has joined #lisp
Jen is now known as Guest46061
pedh has quit [Ping timeout: 240 seconds]
mson has joined #lisp
<pjb> Yes, there's com.informatimago.common-lisp.interactive.interactive:repl
JenElizabeth has joined #lisp
SuperJen has quit [Ping timeout: 240 seconds]
<pjb> and there's also a com.informatimago.common-lisp.interactive.interactive:rep if you need to implement the loop yourself.
jealousmonk has joined #lisp
SuperJen has joined #lisp
Guest46061 has quit [Ping timeout: 248 seconds]
JenElizabeth has quit [Ping timeout: 265 seconds]
Mon_Ouie has joined #lisp
red-dot has quit [Quit: Going offline, see ya! (www.adiirc.com)]
pedh has joined #lisp
fourier has quit [Ping timeout: 248 seconds]
JenElizabeth has joined #lisp
fikka has joined #lisp
SuperJen has quit [Ping timeout: 265 seconds]
SuperJen has joined #lisp
pedh has quit [Ping timeout: 240 seconds]
JenElizabeth has quit [Ping timeout: 255 seconds]
fikka has quit [Ping timeout: 256 seconds]
ryanwatkins has quit [Ping timeout: 272 seconds]
fourier has joined #lisp
nalkri has quit [Ping timeout: 265 seconds]
BitPuffin|osx has quit [Ping timeout: 265 seconds]
sz0 has joined #lisp
ChadMcNugget has quit [Quit: Leaving]
<rpg> sb-aclrepl is nice, but unfortunately, it's not compatible with SLIME.
<Bike> what would a repl being compatible with slime mean?
<nyef`> Doesn't SLIME provide its own REPL anyway?
<jackdaniel> it does, but it doesn't provide any goodies akkad asked for
<jackdaniel> swank::simple-repl
<fourier> is where a more/less portable way to get posix file descriptor from open file stream or at least file name? I could get it (filename) relatively easy on LispWorks and apparently on ccl, but dont have sbcl to test...
random-nick has quit [Quit: quit]
Josh_2 has joined #lisp
<jackdaniel> fourier: implementation specific, but sbcl has that, same goes for ecl
<nyef`> clhs namestring
sz0 has quit [Ping timeout: 240 seconds]
<nyef`> clhs truename
<nyef`> Also possibly PROBE-FILE.
<jackdaniel> (sb-sys:fd-stream-fd *standard-output*)
<nyef`> Admittedly, "implementation-dependent" is by no means "posix compliant".
<nyef`> (But then, why would it be on a non-posix host OS?)
<jackdaniel> (EXT:FILE-STREAM-FD *standard-output*) ; ecl
<fourier> thanks jackdaniel ! nice
JenElizabeth has joined #lisp
red-dot has joined #lisp
pedh has joined #lisp
zooey has quit [Remote host closed the connection]
sz0 has joined #lisp
zooey has joined #lisp
<jackdaniel> sure
SuperJen has quit [Ping timeout: 265 seconds]
pedh has quit [Ping timeout: 265 seconds]
LocaMocha has quit [Ping timeout: 240 seconds]
Josh_2 has quit [Remote host closed the connection]
<rme> Is stream-device at all portable? It might be a ccl-only thing.
<rme> e.g., (stream-device *standard-output* :output) => 1 at a ccl tty prompt
SuperJen has joined #lisp
<fourier> jackdaniel: CCL (ccl::stream-device stream :input)
<fourier> jackdaniel: lispworks: (slot-value stream 'stream::file-handle)
<fourier> more/less ok now :)
<rme> note that ccl:stream-device is external in package ccl.
random-nick has joined #lisp
JenElizabeth has quit [Ping timeout: 256 seconds]
foom has quit [Quit: Leaving]
<fourier> indeed
fikka has joined #lisp
shenghi has quit [Remote host closed the connection]
shenghi has joined #lisp
anunnaki has joined #lisp
fikka has quit [Ping timeout: 272 seconds]
foom has joined #lisp
Jen has joined #lisp
Jen is now known as Guest44583
damke_ has joined #lisp
JenElizabeth has joined #lisp
SuperJen has quit [Ping timeout: 256 seconds]
SuperJen has joined #lisp
damke has quit [Ping timeout: 264 seconds]
Guest44583 has quit [Ping timeout: 248 seconds]
JenElizabeth has quit [Ping timeout: 265 seconds]
JenElizabeth has joined #lisp
SuperJen has quit [Ping timeout: 264 seconds]
SuperJen has joined #lisp
JenElizabeth has quit [Ping timeout: 248 seconds]
red-dot has quit [Quit: Going offline, see ya! (www.adiirc.com)]
pedh has joined #lisp
SuperJen has quit [Ping timeout: 240 seconds]
rippa has quit [Quit: {#`%${%&`+'${`%&NO CARRIER]
shka has joined #lisp
pedh has quit [Ping timeout: 256 seconds]
karswell has quit [Remote host closed the connection]
karswell has joined #lisp
random-nick has quit [Remote host closed the connection]
random-nick has joined #lisp
<rme> It's probably too late for this year, but I wonder if it would be good to look into having a Lisp room at FOSDEM (which I just learned about). https://fosdem.org/2018/
<jackdaniel> I like the idea
<jackdaniel> never was at fosdem, but I just thought it would be cool to go there in 2019
anunnaki has quit [Ping timeout: 272 seconds]
* rme puts that idea on his list
<rme> I keep talking about moving to France. If I ever do that, FOSDEM will even be close by.
neoncontrails has joined #lisp
neoncontrails has quit [Remote host closed the connection]
neoncontrails has joined #lisp
fikka has joined #lisp
neoncont_ has joined #lisp
fikka has quit [Ping timeout: 240 seconds]
neoncontrails has quit [Ping timeout: 272 seconds]
anunnaki has joined #lisp
red-dot has joined #lisp
pedh has joined #lisp
neoncont_ has quit [Remote host closed the connection]
pedh has quit [Ping timeout: 240 seconds]
Xal has quit [Ping timeout: 248 seconds]
Xal has joined #lisp
scymtym has quit [Ping timeout: 265 seconds]
jmercouris has joined #lisp
nalkri has joined #lisp
Karl_Dscc has quit [Remote host closed the connection]
pedh has joined #lisp
<alandipert> i can't figure out how to use fixnum-only * in this function, anyone have advice on how to type hint? https://gist.github.com/alandipert/f2602716487f29701b94e0db3a628e14 (everything is always fixnum)
<alandipert> ...and i'm using sbcl
pedh has quit [Ping timeout: 264 seconds]
anunnaki has quit [Read error: Connection reset by peer]
sz0 has quit [Quit: Connection closed for inactivity]
orivej has quit [Ping timeout: 272 seconds]
scymtym has joined #lisp
<rme> I should submit a talk for ELS 2018. I need to think of something good.
Trystam has joined #lisp
<fourier> alandipert: try (optimize (speed 3) (safety 0))and (float 0) (not sure about last one, maybe its lispworks only)
Tristam has quit [Ping timeout: 248 seconds]
pierpa has joined #lisp
<Bike> it is certainly not standard
Trystam has quit [Ping timeout: 272 seconds]
Kyo91_ has joined #lisp
Kyo91_ has quit [Client Quit]
random-nick has quit [Remote host closed the connection]
<jasom> ever have one of those moments where sbcl tells you some code is unreachable, and you just can't figure out why?
<aeth> yes, but it has always been my fault in the end
red-dot has quit [Quit: Going offline, see ya! (www.adiirc.com)]
<jasom> I agree; I just can't figure out how...
poorbean has joined #lisp
poorbean has quit [Remote host closed the connection]
poorbean has joined #lisp
<Bike> Huh.
<Bike> prefix-buckets doesn't return a vector? Dunno.
poorbean has left #lisp [#lisp]
<Bike> (expt +hash-tree-exponent+ (1- depth)) is too big to make an array with?
<jasom> Bike: depth is unknown
<jasom> plus a 64-bit lisp ought to be able to make (expt 4 31), right?
<Bike> looks over array-dimension-limit to me, actually.
<jasom> well changing the type of depth to (mod 16) doesn't change things. Plus it shouldn't be *unreachable* because clearly if depth is 0 (which it's allowed to be) everything works fine
<Bike> so prefix-buckets definitely returns a vector?
mson has quit [Quit: Connection closed for inactivity]
<aeth> rme: One idea would be to do something that can be visualized through computer graphics. There are 6 or so libraries in CL that can handle visualizations, e.g. https://github.com/vydd/sketch
Murii has quit [Ping timeout: 248 seconds]
<jasom> Bike: let me double check the ftype
<Bike> Other than that I'm afraid I'm out of ideas.
<jmercouris> I just implemented imenu in my browser!
<jmercouris> Except it jumps on headings
<jmercouris> I feel bad because I use a global var to store completion candidates temporarily, but the whole minibuffer/command system needs an overhaul/rethink anyway
<jasom> Bike: derived type is just "function"; it returns the result of a map-into which ought always be a vector, but it might not have been able to infer that
<jmercouris> Something to think about for version 0.07 when GTK people start using it
<Bike> still, that shouldn't be an unreachable
<Bike> have you tried macroexpanding the loop? it's ugly, but that tends to help me understand how the compiler is thinking
raphaelss has quit [Ping timeout: 272 seconds]
<jasom> yeah. Also, removing the type declaration for result doesn't change the dead-code note
<jasom> wtf. It expands to (let ((new-level nil)) ...)
<jasom> oh, it does a dsetq later on
shka has quit [Ping timeout: 265 seconds]
<jasom> https://gist.github.com/jasom/c95e083e4ba7c42e8321ede0e3d12583 is now updated with the maxroexpansion
Kyo91 has joined #lisp
papachan has quit [Quit: WeeChat 2.0]
Kyo91 has quit [Client Quit]
Kyo91 has joined #lisp
JenElizabeth has joined #lisp
<Bike> yeah, i hardly see any way the make-array could be dead other than prefix-buckets being weird somehow.
Kyo91 has quit [Client Quit]
hyero has joined #lisp
Kyo91 has joined #lisp
Jesin has quit [Quit: Leaving]
red-dot has joined #lisp
zaquest has quit [Read error: Connection reset by peer]
Tobbi has joined #lisp
mm__ has joined #lisp
atgreen has quit [Quit: atgreen]
Bike has quit [Ping timeout: 260 seconds]
<pierpa> doens't the LAMBDA in (map-into new-level (lambda () (ironclad:make-digest +hash+))) needs an (ignored) argument?
Mon_Ouie has quit [Quit: WeeChat 2.0]
<pierpa> ah. no. Please ignore
eudoxia has joined #lisp
fikka has joined #lisp
<pierpa> hmmm...
Tristam has joined #lisp
Kyo91 has quit [Quit: WeeChat 1.9.1]
Kyo91 has joined #lisp
wheelsucker has quit [Quit: Client Quit]
pedh has joined #lisp
Kyo91 has quit [Client Quit]
Kyo91 has joined #lisp
fikka has quit [Ping timeout: 256 seconds]
josemanuel has quit [Quit: leaving]
pedh has quit [Ping timeout: 248 seconds]
Kundry_Wag has joined #lisp
Baggers has joined #lisp
<AeroNotix> yay lisp
<AeroNotix> jmercouris: what browser are you working on?
<AeroNotix> got a link?
<AeroNotix> I wrote a browser with CL/webkit a while back, then real life + job got in the way. I still longingly look at the repo on github sometimes and think what could've been
Kyo91 has quit [Quit: WeeChat 1.9.1]
<jmercouris> AeroNotix: Yes, I know
<jmercouris> I've looked at your source code extensively
<AeroNotix> Oh ok.
<AeroNotix> Are you using GTK?
LiamH has quit [Quit: Leaving.]
<jmercouris> AeroNotix: No, I'm using native where possible,so on OSX I'm using Cocoa
<AeroNotix> oh that seems like a better option. I got really fed up with using GTK.
<jmercouris> AeroNotix: I WAS using QT, but now I am working on a GTK port for Linux, better bindings and speed
<AeroNotix> What are you using on Linux?
<jmercouris> AeroNotix: Yeah, I know, I saw your efforts at refactoring it out :P
<AeroNotix> I'd use Qt, personally. I keep intending to make lispkit use Qt.
<jmercouris> AeroNotix: There are no good CL bindings for QT
<AeroNotix> I found a mixture of GTK, the webkit gtk bindings were just generally crap
<jmercouris> and Webkit-GTK is way better supported than anything else
<jmercouris> Yeah, I'll have to work on better Webkit-GTK bindings
<AeroNotix> interesting. In my research (that I did a while ago) I found that Qt, at least at first, looked better
<jmercouris> I've already been in touch with Joachim
<Shinmera> Qtools is good, but Qt4 only so oooold
<AeroNotix> I want to say Shinmera was working a lot on Qt stuff and did some good things
<jmercouris> I've already completely implemented it in QT, so I'm very familiar with that path :D
<AeroNotix> oh there you are Shinmera
<Shinmera> Hi
<jmercouris> So, GTK it is :P
<AeroNotix> jmercouris: fair enough. How did it go? On Linux or Mac with Qt?
<jmercouris> AeroNotix: I had it compiling with both
<AeroNotix> if I build next now, will I be able to run it on Linux without any issues?
<jmercouris> AeroNotix: On OSX the rendering was absymal, not necessarily due to the web-engine, but due to QT limitations, their port of any web engine requires them to do rendering, and that was always too slow
<jmercouris> AeroNotix: No, I have to complete the GTK port
<jmercouris> I haven't quite yet started
<AeroNotix> jmercouris: oh yes I remember that Qt takes over a lot of the webkit APIs
<jmercouris> I need help because 1. I don't have experience
<AeroNotix> jmercouris: only ccl?
<jmercouris> It can be SBCL or anything really
<AeroNotix> ok
<jmercouris> I only have CCL specific calls on OSX for the bridge
<AeroNotix> Did you develop this prior to seeing lispkit?
<jmercouris> No, I saw what you did and learned from that :P
<jmercouris> Didn't want to make the same mistakes
<Shinmera> I think for an application it's fine to only support one impl.
<AeroNotix> jmercouris: what do you mena?
<jmercouris> for example, there are literally 0 side effects when loading the code until you hit base.lisp
<jmercouris> ALL foreign code is isolated in separate interfaces
LiamH has joined #lisp
<jmercouris> the system is completely portable
<AeroNotix> I can't remember exactly but lispkit shouldn't execute anything outside of main
<jmercouris> There were some other things
<jmercouris> I noticed you embedding foreign code directly into your lisp code
<jmercouris> things like that
<jmercouris> just small stuff really
<jmercouris> I also stole some of your parenscript for link-hints
<jmercouris> needs some work to be better integrated into my system, but it works fornow
<AeroNotix> I didn't write that and it was very buggy for me
LiamH has quit [Client Quit]
<jmercouris> well, it works fine, just need to do some stuff to it
<AeroNotix> I used that parenscript highlighter for a while. Eventually it started crashing a lot on me.
<jmercouris> AeroNotix: Would you be interested in working on the GTK port?
<jmercouris> I've been asking around a lot to try to find help
<AeroNotix> jmercouris: I would be interested but my day job is ridiculous (and has been for for 3 years plus)
<AeroNotix> if it wasn't lispkit would be more finished
<jmercouris> If you simply complete the GTK port, nEXT is literally ready to use as your daily driver
<jmercouris> and the interface for completing a port is extremely simple as well
<jmercouris> I know, because I made the cocoa port :D
<jmercouris> This is it, all you have to implement: https://github.com/nEXT-Browser/nEXT/blob/master/next/source/package.lisp
<AeroNotix> It's interesting but honestly I have practically zero time
<jmercouris> that's too bad
<jmercouris> I hope you can find a job that gives you more free time soon
<AeroNotix> and honestly I would kind of like to finish lispkit one day
<jmercouris> but why not work on nEXT instead?
<jmercouris> I am further a long
<AeroNotix> Because it's my baby :)
<AeroNotix> If you're full steam ahead though with next I really wish you luck in seeing that idea come to fruition.
<jmercouris> Hmm, I would rather work together on one project and get farther than divide our efforts
<AeroNotix> no no, you misunderstand me.
<AeroNotix> I know that i won't work on lispkit again for a long time :)
LiamH has joined #lisp
<AeroNotix> and likely next or some other project will finish that idea before me
Arcaelyx has joined #lisp
orivej has joined #lisp
<jmercouris> That's unfortunate in a way
<AeroNotix> so having a proper, fully, extensible browser done in The Lisp Way will have been realised.
<jmercouris> but at least youll have a cool browser ;)
<AeroNotix> nah it's the lisp way that
<AeroNotix> people write something, people extend it or the idea
<jmercouris> It's a shame it doesn't work on Linux yet
<AeroNotix> I'm sure it will eventually
<jmercouris> there's so many people asking me about Linux, I want to see their reactions lol
<jmercouris> Yeah, I need about a month I think
<AeroNotix> I do think that linux support should be a very primary goal for it
<jmercouris> it is the next goal of release 0.07
<jmercouris> 0.06 is complete after I add a single document to the repo
<AeroNotix> Cool
<jmercouris> I was about to publish it actually
<jmercouris> If you're interested in the project goals thery can be seen here: https://github.com/nEXT-Browser/nEXT/tree/master/next#release-timeline
<jmercouris> I also hope to be able to one day monetize nEXT, make some contributions back to the Lisp community, develop some tools stuff like that
<jmercouris> I'm not very optimistic, but it would be nice
<AeroNotix> jmercouris: actually one of the reasons I initially started developing lispkit was because I couldn't ever find a browser that I could regexp search within a page
<AeroNotix> I got that working with lispkit at one point
<jmercouris> AeroNotix: Hmm, I don't have that working yet, I only JUST added a really basic search
<AeroNotix> I think actually I was using the webkit APIs for it. I think they genuinely let you use regexp searches on a webkit browser instancce
<jmercouris> I'm only now really getting to grips with parenscript, but I can already do some cool things
<AeroNotix> all this is me remembering from years ago
<jmercouris> AeroNotix: Yes they do
<jmercouris> I am trying to avoid using anything API specific though
<AeroNotix> I can see the benefit of doing that
<jmercouris> I literally only need to be able to 1. make a webkit view, 2. set the url, 3. execute JS
<jmercouris> and my system is infinitely portable
<AeroNotix> Yeah I can see the drive to want to do that
<jmercouris> I saw too many people get burned in the past by comitting to a framework
<AeroNotix> yep, <= this guy
<jmercouris> That and the Qutebrowser guy as well
<jmercouris> bought heavily into QT webkit, and the port to QT Webengine took almost like a year or something insane
<jmercouris> I was able to complete my port in like 3 weeks, and 2 of those weeks were spent learning cocoa
<AeroNotix> Sounds like fun
<jmercouris> Yeah, it is fun
<AeroNotix> What about cookies/profiles?
Arcaelyx has quit [Ping timeout: 248 seconds]
<jmercouris> It's nice to finally have someone else be excited about it
<jmercouris> So on OSX these are handled natively
<jmercouris> for the GTK port, I'll have to do some BS I guess
<AeroNotix> The lisp community was generally quite excited about lispkit/similar things. As much as the lisp community can be. I mean you have 900 stars on github
<AeroNotix> lispkit still gets 1/2 stars a month
<AeroNotix> got to remember there really isn't a huge active community behind lisp these days
<jmercouris> AeroNotix: I have a feeling those are mostly like emacs users/ random programmers
<AeroNotix> exactly
<AeroNotix> targeting emacs users was a primary goal for me
<AeroNotix> jmercouris: did you ever build/run lispkit btw?
<AeroNotix> I suppose being on a mac it might not have worked :)
<jmercouris> Nah, I don't run Linux these days
<AeroNotix> gotcha
<jmercouris> I only use FreeBSD and MacOS
<jmercouris> so it will be quite a journey for me to make it work
<AeroNotix> I did have an ex-colleague who got it working for him
<jmercouris> I'll probably pilfer a bunch of code from Lispkit for the GTK port, so in a way, it will live on :D
<AeroNotix> he never sent me a PR though
Kundry_Wag has quit [Remote host closed the connection]
<AeroNotix> well, feel free. I think the license is libre enough right?
Arcaelyx has joined #lisp
<jmercouris> Yeah, I don't remember what your license is
<jmercouris> BSD or something
<AeroNotix> That works for you?
Bike has joined #lisp
damke has joined #lisp
<jmercouris> I am using BSD license
<AeroNotix> BSD 2-clause apparently.
<jmercouris> Yeah, that's just fine for me
<jmercouris> I have your License located here https://github.com/nEXT-Browser/nEXT/tree/master/documents/external
<AeroNotix> Cool. I'll star next and see where it goes. When it gets to the point of `make && make install` I'll probably switch to it. As I said, day job is just too demanding at the minute for anything deep and dark with non-work related programming if you get me
damke_ has quit [Ping timeout: 264 seconds]
<jmercouris> AeroNotix: I gotcha
<AeroNotix> haha! Man that's crackers :)
<jmercouris> AeroNotix: but the build script will be more like "ccl -l make.lisp"
<AeroNotix> yeah same difference :)
sjl has quit [Ping timeout: 260 seconds]
<jmercouris> AeroNotix: Thank you for the star!
<AeroNotix> np! :)
<jmercouris> When I make it to 1000 I will celebrate by going to tropical island berlin
<AeroNotix> haha
mejja has joined #lisp
<jmercouris> I am being completely serious
<AeroNotix> You're not far from me then
Tobbi has quit [Quit: Leaving]
<jmercouris> perhaps not, I know you are polish, but poland is like an 8 hour drive or so
<jmercouris> unless you are in szceczin or something
<AeroNotix> I am not Polish but I live here
<jmercouris> Ah, whoops, sorry!
<jmercouris> If you don't mind me asking then, where are you from?
<AeroNotix> google maps suggests slightly over 6 hours for berlin => krakow
<AeroNotix> I am from the UK
<jmercouris> That's an interesting move, I don't imagine you have a lot of expatriates there
<AeroNotix> Apparently there are 6,000 registered UK citizens in Poland
<AeroNotix> so +/- a few thousand on top of that.
jealousmonk has quit [Quit: Leaving]
<AeroNotix> I've met three UK citizens in 10 years here
<AeroNotix> that live here I mean
<jmercouris> Lol yeah, I believe it
<jmercouris> Your last name also didn't seem Polish, but I figured maybe you had ancestors from another country or something
nalkri has quit [Ping timeout: 240 seconds]
<AeroNotix> I am not sure about my surname. My mum did some ancestry stuff a few years ago and couldn't figure it out
<AeroNotix> I always thought it was an Anglicisation of "Franz" perhaps
<rme> AeroNotix: were you at the ELS in Krakow a couple of years ago?
<rme> I don't recognize you from your nick.
<AeroNotix> rme: remind me what ELS is, please
<jmercouris> AeroNotix: European lisp symposium
<AeroNotix> Oh Erlang Lisp Symposium
<rme> Probably not, then. :-)
<AeroNotix> rme: I missed it. Not sure if I mentioned but $DAY_JOB is kind of demanding
<AeroNotix> I really, really wanted to go
<jmercouris> Do you work at a startup or something?
Tobbi has joined #lisp
<AeroNotix> No, I wish. :)
<rme> I just like to try to put names to faces.
<jmercouris> rme: Same, but I just have your github profile picture
<AeroNotix> rme: I think we've spoken before though. You
<AeroNotix> you're in PL right? Somewhere north of Krakow if I remember correctly?
<rme> I need a better profile picture. I was trying to be artistic, but now I think it looks dumb.
<rme> No, I'm currently on the US west coast.
<jmercouris> Yeah, I was about to say
<AeroNotix> Oh, wrong person then
<jmercouris> I think RME is in SF or something
<rme> Bellevue, Washington.
<AeroNotix> I remember speaking to someone in here about the Krakow ELS :P
<jmercouris> Whoopsie daisy :D
<jmercouris> rme: You know, that's an interesting name, we have a U Bahn Station here in Berlin named "Bellevue" it's pronounced "Bell Voo"
Tobbi has quit [Client Quit]
mishoo has quit [Ping timeout: 272 seconds]
<rme> the silly Americans say "bell view"
<jmercouris> rme: Are you not American?
<rme> s/the/We/, I guess.
<AeroNotix> Where I grew up in the UK we have a pub at the bottom of my mum's road called The Bellevue
<runejuhl> and the Danes say bællevy :)
<jmercouris> runejuhl: that's not even a real language
<runejuhl> jmercouris: I agree!
<rme> hey now
<jmercouris> Lol I love that video
<runejuhl> I rarely link to videos, but man.. that one crack me up every time
<jmercouris> The thing that makes it funny is that it is too real
<AeroNotix> it literally sounds like English but played backwards
<runejuhl> Learning it is even worse... And the number system, sigh
<AeroNotix> You should try Polish :)
<runejuhl> For numbers 21-99 we say the last digit first, so 21 would be twenty-one in English and en-og-tyve (lit. one and twenty) in Danish
<AeroNotix> oh I think French is like that
<jmercouris> Ah, French is legendary for their "number system"
<runejuhl> AeroNotix: don't know about that, but German is the same
<jmercouris> though I think calling it a "number system" is too much dignity for that
<runejuhl> The Swedes were a bit smarter and decided to do it the logic way
<jmercouris> runejuhl: Yes, German is the same indeed ein und zwanzig
<runejuhl> jmercouris: the worst thing is that kids in Danish schools have a harder time learning numbers (and math) because of the language
<jmercouris> Oh, I totally believe it
<jmercouris> it is a most moronic way of counting
<jmercouris> In literally every other language I know, numbers are consistent, except for the germanic derivatives
<runejuhl> I've heard about teachers using the "correct" way of pronuncing numbers even though it's not valid Danish
LiamH has quit [Quit: Leaving.]
<jmercouris> that's very interesting, maybe it will shift with time
red-dot has quit [Quit: Going offline, see ya! (www.adiirc.com)]
Tobbi has joined #lisp
<runejuhl> There are a bunch more oddities about numbers in Danish. The system used to be based on multiples of 20, so 60 is "tres" (3 x 20) and 50 is "halvtreds" (2 x 20 + one half 20)
<jmercouris> I'm getting a headache just thinking about that
<AeroNotix> What is mayan diaspora
<runejuhl> hah
<AeroNotix> apparently danes
<runejuhl> I remember that from school
<runejuhl> Something with dots and dashes
<jmercouris> Danes are definitely not mayan diaspora
fikka has joined #lisp
<AeroNotix> was a joke :)
<AeroNotix> mayans had a non base 10 counting system.
<jmercouris> Oh, I see
<runejuhl> I'd have stayed there, climate is shitty here...
<jmercouris> true true
nirved has quit [Quit: Leaving]
<runejuhl> I better get to bed and catch a few zzzzs before my fever-ridden offspring decides to wake up and terrorize me...
<runejuhl> Godnat allesammen
mejja has quit [Quit: mejja]
turkja has joined #lisp
Tobbi has quit [Quit: Leaving]
<AeroNotix> night
fikka has quit [Ping timeout: 256 seconds]
<jmercouris> goodnight
<rme> I seem to talk to more Lispers in Europe than I do in the US.
<jmercouris> rme: I'm american, so that's +1 for that side
eudoxia has quit [Quit: Leaving]
fourier has quit [Ping timeout: 248 seconds]
Tobbi has joined #lisp
earl-ducaine has quit [Remote host closed the connection]
wxie has joined #lisp
fikka has joined #lisp
<jasom> so that function now works, but it still has the unreachable code note...
peccu2 has joined #lisp
<AeroNotix> jasom: link code again, please?
peccu1 has quit [Ping timeout: 250 seconds]
ChadMcNugget has joined #lisp
red-dot has joined #lisp
fikka has quit [Ping timeout: 272 seconds]
moei has quit [Quit: Leaving...]