<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
<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
<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
<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
<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>
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>
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.
<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>
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.
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]
<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
<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]
<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)) ...)
<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
<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>
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
<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>
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...