freenode/#lisp - IRC Chatlog
Search
10:42:22
phoe
roswell auto-downloads its own SBCL binaries, it doesn't depend on any systemwide Lisp.
10:42:27
Nilby
I'm confused. Are you guys talking about the Robot Operating System, or ros the Roswell commmand.
10:43:55
phoe
after installing the deb file, you should be able to just `ros init` and then `ros install sbcl`
10:49:29
edgar-rft
When the mismatch-index argument is true, it is an integer representing the first character position at which the two substrings differ, as an offset from the beginning of string1
10:52:30
edgar-rft
agree, Lisp was *much* better when strings still were handled by symbol-names :-)
10:55:53
no-defun-allowed
rogersm: It is usually a good idea to stop making sense when writing Lisp.
10:57:10
zge
Can anyone tell me what SBCL's "could not allocate SB-IMPL::TEST" notes mean? I'm getting it for functions that don't even have :test arguments.
10:58:42
no-defun-allowed
A much stupider no-defun-allowed first gave that advice two years ago, but I still stand by it. Though if they act the same, MISMATCH conveys your intent better if you want the mismatch position.
11:00:20
no-defun-allowed
Well, string/= will return false for strings of different lengths (without other start and end positions), so they do not act the same.
11:09:06
edgar-rft
phoe: The inequality functions return a mismatch-index that is true if the strings are not equal, or false otherwise (last paragraph under "Description")-> http://www.lispworks.com/documentation/HyperSpec/Body/f_stgeq_.htm#stringSLEQ
12:40:05
specbot
Initial and Final Execution: http://www.lispworks.com/reference/HyperSpec/Body/06_agb.htm
12:41:13
adlai
does the second paragraph of 6.1.7.2 require that the prologue is enclosed by the initial bindings?
12:51:42
adlai
e.g., a conforming implementation could have the initially clauses enclosed as `(:with #.(gensym) (progn ,@prologue))
12:52:17
phoe
the variables are bound to their initial values, the prologue is executed, and then iteration starts
12:53:59
adlai
ACTION can't find a requirement that the prologue be executed strictly after the bindings
12:54:36
phoe
"...which precedes all loop code except for initial settings supplied by constructs with, for, or as."
12:55:18
adlai
removing the global lispmachine lock around everything in CLHS causes quite a bit of undefined behavior, and I'm wondering whether it's sane to rely on the initial bindings always being available to the prologue.
12:56:34
specbot
Local Variable Initializations: http://www.lispworks.com/reference/HyperSpec/Body/06_abb.htm
12:58:29
phoe
also, if prologue is run with the variables unbound, what does "initial settings supplied by constructs with, for, or as" from 6.1.7.2 refer to?
12:59:35
adlai
in the end of 6.1.2.2's second paragraph, "initializations can be forced to occur in parallel", and again before one of the examples.
13:00:37
phoe
and again, this is only about the difference between LET- and LET*-style variable binding
13:00:53
phoe
it says nothing about whether the prologue is executed in scope of these bindings, or outside it
13:01:44
adlai
this is roughly equivalent to order of argument evaluation, and the issues can probably be ignored together.
13:23:50
shka_
i thought that if two slots in a single class have the same :initarg it would designate that instances will initialize both of slots with the same value if said initarg was passed
13:39:08
lotuseater
it doesn't even say anything if you give multiple same initargs in the same slot
13:39:09
Bike
having initargs initialize more than one slot is intentional. the standard explicitly mentions it in 7.1.1 and i can imagine it being useful.
13:40:01
specbot
Initialization Arguments: http://www.lispworks.com/reference/HyperSpec/Body/07_aa.htm
13:43:48
lotuseater
(defclass foo () ((slot1 :initarg :slot1 :initarg :both-slots) (slot2 :initarg :slot2 :initarg :both-slots)))
13:56:36
adlai
to be precise, why could it ever be problematic? the keywords, and their corresponding arguments, should get evaluated precisely once each before the call to shared-initialize
13:57:36
adlai
ACTION can see this being a warning that people would want, and that others would deliberately ignore.
14:04:16
Bike
it's called by initialize-instance, reinitialize-instance, and also for class redefinitions and change-class
14:04:58
Bike
e.g., the standard method on initialize-instance is essentially (defmethod initialize-instance (i &rest in) (apply #'shared-initialize i t in))
14:06:11
Bike
and (defmethod reinitialize-instance (i &rest in) (apply #'shared-initialize i nil in))
15:46:17
lotuseater
Does anybody of you still uses &AUX in function arguments? Isn't it outdated or when is it really useful?
15:48:51
lotuseater
okay I look it up :) also found interesting article of you "What is wrong with Lisp?" (but transformed it for my eyes to PDF with org and pandoc, hope that is OK)
16:07:58
aeth
lotuseater: &aux is super niche and every time I think I need it, I wind up not using it... but one place where &aux could be useful is rebinding dynamic variables.
16:11:30
aeth
(rebinding dynamic variables in an &aux would make it part of the API of the function, as opposed to doing it at a LET in the body)
16:35:00
jeosol
I wanted to asked if it's possible to have a running SBCL session launch another creating a swank port in the process and the parent session then using slime-eval performing some computations
16:35:34
jeosol
so far, I have done this using docker (problematic, but works) and starting the sessions by hand.
16:36:30
jeosol
lotuseater: Morning to you. I have been told (in the past) that the universal greeting here is "Good morning" . I initially defaulted to my local time
16:38:50
beach
jeosol: Some people use their own local time, and it is interesting to see roughly where people are.
16:39:00
beach
lotuseater: But if everyone then answers with their local time, we will very easily get swamped.
16:39:44
jeosol
For the above, my use case, I am trying to do remote or distributed evaluations. Assuming of having images corresponding to two systems that accept x as an argument, think e.g., y=2x, and another z = x3+2x (in the real case, the same x value results in total different result).
16:41:24
jeosol
Bike: That's what I am still investigating, I haven't gotten it to work yet, I am looking at uiop:launch-program
16:42:21
phoe
you could launch a lisp image and pass it commandline arguments that will have it load up swank and open a swank server, then connect using swank-client or swank-crew from the C&C server
16:43:01
lotuseater
jeosol: okay good to know. it's funny having people from all around the world, so morning is anytime
16:43:14
jeosol
phoe: I haven't used swank-crew but did look at it, I could not get a small case to work because I wasn't sure where the workers are supposed to be running. In my case, they are not simple operations
16:43:17
phoe
swank-crew does not automate launching other lisp images though; I assume this is up for your OS framework to do
16:44:19
jeosol
phoe: I am doing the first part of what you describe, and using some bt-thread and uiop:wait-process, but I don't think I am getting it to work yet, it's exiting. But if I take the command string, paste it into a shell it runs fine
16:45:12
jeosol
phoe: yes, I am using the swank-client for the evaluations for the cases where I started the repls myself
16:50:50
jeosol
Additionally, I can say, I want to start optimizations with one function case, e.g., F(x) = 2*x, then I will fire up the repl for that, do some computations, then when I am done, I can then send some message to close it
16:52:09
jeosol
or if there is some library that does something similar or with bits, I'd like to take a look
16:54:52
jeosol
phoe: about swank-crew, I meant I have looked at it for managing and distributing the work but not starting the repls
16:55:07
adlai
ACTION supposes that is sane if both are actually identical compilers, on the same machine; beyond that, "now you have two problems"
16:56:27
jeosol
adlai: pardon that I use the word optimization loosely where where many might get confused with "code optimization". I am referring to mathematical optimization F(x) given some x, which each F1(x) and F2(x) corresponding to different images
17:48:48
sjl
I have a relatively long question about the MOP, defclass, and the evaluation of custom slot arguments. Pasted here to not flood the channel: https://gist.github.com/sjl/bc5903c62677f0a0ea16a2936e5d3c12
17:49:04
sjl
(the actual thing I'm trying to do is not quite as simple as this example, but this illustrates the problem)
17:57:18
Bike
the reason it's not getting the initarg is, iirc, that slot definition machinery gathers initargs from the direct slotds and applies inheritance rules, and it doesn't know about :tick so it just ignores it? something like that
18:02:28
Bike
i don't think there's any way to customize the evaluation like you want. the defclass macro always quotes extended options. I believe.
18:05:42
Bike
it would be tricky to extend the protocol, since you'd presumably want to use the direct slotd class to customize the macro behavior, but the class isn't known yet
18:08:10
lxsameer
hey folks, CL has more rules when it comes to quasiquotation, what does ",." resolves ?
18:09:11
Bike
«Anywhere ``,@'' may be used, the syntax ``,.'' may be used instead to indicate that it is permissible to operate destructively on the list structure produced by the form following the ``,.'' (in effect, to use nconc instead of append). »
18:14:41
Bike
sjl: you could define your own defclass replacement macro of course. i know that's not convenient, but ensure-class is pretty easy to use
18:38:02
sjl
Bike: yeah, that's what I figured. just wanted to make sure I wasn't missing something. thanks.
19:38:49
mseddon
Stupid question- anyone know if I can license some of the fonts from Genera? or is symbolics just a giant dead holding company now?
19:41:13
mseddon
although it seems very much quite a dead situation now, looks more like a guy in his basement selling boards for people who have to maintain old machines.
19:43:12
mseddon
well. that depends on who has them. there are naturally no copyright notices in the bdfs
19:44:18
mseddon
I suppose a bunch of them I may be able to yoink from the CADR, since MIT actually respond to emails
19:48:34
mseddon
meh. it may be easier and better to do it right and commission them from a font designer to be honest. It'd stand up better anyway.
19:50:46
mseddon
it's kinda easier these days now that we have high dpi screens and you don't need decent 72dpi font hinting
19:51:40
mseddon
yeah the fonts themselves are useless. They look cute and evoke a particular style, but even Cyrillic is not well supported imo
19:54:08
Lycurgus
i found garnet worked fine but it's not usable for anything new because it looks so stone age
19:57:33
mseddon
hehe, yeah. but for example garnet (which I recall from the Amiga days) was a great retro font.
22:08:52
arichiardi[m]
Hi there! I was wondering if anybody know whether CL bindings for LUKS functions (libcryptsetup)? No problem if not, just making sure I am not missing any :D