freenode/#lisp - IRC Chatlog
Search
5:24:28
White_Flame
aeth: common lisp has direct lisp lineage; it's not some new offshoot that only takes inspiration without continuance of design
5:26:18
aeth
White_Flame: Good enough for the "Influenced by" in the Wikipedia infobox. https://en.wikipedia.org/wiki/Common_Lisp
5:27:08
aeth
It doesn't go the other way around, though. [[Lisp]] has Common Lisp under "Dialects" not "Influenced"
5:29:44
asarch
One stupid question: I do the query (let ((results (query "SELECT * FROM foo"))) and then I parse every record in the query (loop for record in results do ..., question: how could I initialize a counter from 0 and increment its value on every iteration inside the loop expression?
5:29:44
minion
asarch, memo from pjb: genera and instructions can be found at: https://cliki.net/VLM_on_Linux
5:29:44
minion
asarch, memo from lieven: for recent X versions, you need to patch genera. See https://archives.loomcom.com/genera/genera-install.html#org783aa06
5:31:55
White_Flame
or VLM in docker, where you don't have to worry about any config: https://github.com/sethm/docker-vlm
5:50:53
asarch
(loop for i in (list 1 2 3 4 5) and b = 0 do (format t "Valor: ~d " b) (incf b) (format t "Hello paisanos~%")) <- Why b is not incremented?
5:59:15
minion
seok: look at Universal Greeting Time: It is always morning when a person enters a channel, and late night when they leave. You may want to read http://www.total-knowledge.com/~ilya/mips/ugt.html for further information
6:02:22
no-defun-allowed
https://common-lisp.net/project/mcclim/1.html could be it, but that really only has releases.
6:07:30
holycow
you are accessing irc through something on the google app engine? something perhaps writting in lisp?
7:45:01
LdBeth
is it good idea to store the instruction database :allocation :class into a mixin class so the database can be isolated for different machine
8:28:13
g0d_shatter
LdBeth: I'm sorry I can't help you, but I'm super curious what the application is if you can talk about it!
8:30:23
LdBeth
g0d_shatter: it an assembler modeled after the one used for Symbolics Virtual Lisp Machine https://github.com/hanshuebner/vlm
9:00:12
lieven
yeah the ANSI committee is going to reconvene and bring out a new version of the standard with the deprecated functions removed any day now
9:03:07
heisig
There is none. I think at some point in time, people were too hyped about cl:complement and made some funny choices.
9:05:40
jackdaniel
orthogonal features like complement make a lot of sense from a learning perspective, but deprecated in case of CL means: it will be around for another three standard revisions
9:22:06
aeth
You all covered pretty much every point in one of the strangest CL flamewar topics except also... remove-if-not is faster unless the compiler optimizes remove-if complement, which the compiler authors are less incentivized to do because remove-if-not exists, even though remove-if-not is deprecated
9:31:50
aeth
lieven: Last time it was brought up (although for all I know it was implemented 15 SBCLs ago) it wasn't quite as trivial as it sounds, but imo the key thing it shows is that it wasn't seen as particularly idiomatic or else it would have been optimized already.
9:32:32
heisig
lieven: Heh, 'easily'. Have you ever tried parsing keyword arguments in a compiler macro :)
9:34:01
heisig
And there is the problem that you couldn't optimize (let ((g (complement f))) (remove-if g x)), because the compiler macro only sees 'g'.
9:34:48
aeth
heisig: re keywords, is there a way to get to the point where you can use destructuring-bind? I've never written a compiler macro
9:36:03
lieven
heisig: sure. the whole point of optimizing is to get the low hanging fruit. if people are deliberately obfuscating their code, they can live with the default speed
9:37:44
heisig
aeth: Hmm, one could check that every second argument is a valid keyword, and then use destructuring-bind. Then one would still have to make sure that the order of evaluation is preserved.
11:25:32
heisig
phoe: Issue TEST-NOT-IF-NOT Writeup: "Several alternative names for REMOVE-IF-NOT were suggested: KEEP-IF, ABSTRACT, FILTER. We did not pursue these suggestions."
11:29:46
galdor
did someone already this issue where emacs open all flexi-streams files when loading the system in slime ?
11:33:04
phoe
heisig: IMO twenty+ years of Common Lisp practice have shown that the future ANSI CL committee should likely pursue them at some point in time
11:42:35
heisig
Even if there ever was a new standard, there cannot be any changes to the CL package. Otherwise, this new standard would break existing code.
11:44:57
heisig
I think it would be hilarious if there was a new CL standard, and it would essentially be 'We fixed a few typos and clarified a few descriptions'.
11:48:12
scymtym
"typo fixes and clarifications? why didn't you add lambdas and compile-time metaprogramming? everybody has those nowadays"
14:24:17
pfdietz
slyrus: I have let the power of being able to merge pull requests in fset go to my head, and have merged one of yours from 2018.
14:30:21
chimneys
do i need to run loading after installation as well,.. https://www.quicklisp.org/beta/#loading
14:31:26
chimneys
I open I see sbcl inside it, but it says kernel connecting and cells don't execute
14:33:49
chimneys
A connection to the notebook server could not be established. The notebook will continue trying to reconnect. Check your network connection or notebook server configuration.
14:46:53
dnaeon
hey all! i have two packages that export the same symbols, e.g. package `A:foo` and then I have package `B:foo`. How could I import these symbols into my own package and use both `A:foo` and `B:foo`? Any way I could import-alias them or similar?
14:47:54
jackdaniel
basically you can't import two different symbols with the same name into the same package
14:48:25
chimneys
how do i install the new kernel cl-jupyter , is it not installing because of virtual envs
14:48:49
pjb
dnaeon: (defpackage "YOUR-PACKAGE" (:use "CL" "A" "B") (:shadow "FOO")) (in-package "YOUR-PACKAGE") (+ a:foo b:foo)
14:50:10
pjb
dnaeon: you can also consider whether those two foos are actually the same. For example, it may be the name of a generic function and a:foo is a method on As, while b:foo is a method on Bs. Then both packages A and B should use a package I that exports FOO and (defgeneric foo (…)).
14:50:30
pjb
dnaeon: of course, it may be two entirely different foos, such as cl:car and tesla:car…
14:50:54
phoe
so if you have symbols QWERTYUIOP:FOO and ASDFGHJKL:FOO, you can local-nickname the packages to Q and A
14:52:51
jackdaniel
chimneys: I know that venv is some clever mechanism to bypass problems with the packaging, toher than that I try to not think about things like this
14:52:59
dnaeon
Ok, I was under the impression that if I use `(defpackage my-package (:use :A :B))` then within my package all symbols from `A` and `B` would inherited and cannot fully qualify things such as `A:foo` and `B:foo`.
14:56:49
chimneys
if you don't like to think about it , think what a beginner might be going through who is pasting lisp cmds without understanding them
14:59:44
phoe
USEing a package means that you can refer to all of its symbols without qualifying them with the package name
15:02:06
phoe
because then conflicts occur, and you need to explicitly choose one or the other or not use both packages at the same time.
15:03:13
phoe
There's also the issue if an USEd package decides to change its export list later on, e.g. because it decides to export new functionalities. It means that sudden use conflicts can arise even when you do absolutely *nothing* - only because a dependency has changed.
15:03:31
pjb
If two packages export symbols with the same name, you can use them, shadowing this name!
15:03:43
phoe
pjb: yes, I meant that by explicitly using one or the other - by means of SHADOW or SHADOWING-IMPORT-FROM
15:04:11
phoe
and I don't think that you have a support contract with Shinmera to be able to tell him that it's his job to help you out
15:04:50
phoe
perhaps if no users of cl-jupyter are in here, you could try raising a GitHub issue with the details
15:05:21
phoe
I think it'll capture the maintainers' attention more surely than expressing slightly immature behaviour on IRC
15:07:39
beach
chimneys: Maybe you have misunderstood the purpose of #lisp. It is not a support channel for newbies. It is a forum for discussing the language, its implementations, libraries, and applications between users of Common Lisp.
15:13:07
galdor
are there other general CL communities ? I mean there used to be the pro-lisp mailing list but it's dead
15:14:21
jackdaniel
and there are repositoreis on gitlab.common-lisp.net (so you could say that cl.net users form some kind of a community)
15:16:17
jackdaniel
I've never managed to configure usenet client properly, probably I'm too young :) but I've been told I've avoided plenty of bad experience, so :)
15:24:12
phoe
with an occasional worthwhile post from Jim Newton who seems to be magically immune to all of the shitposts that happen there