freenode/#lisp - IRC Chatlog
Search
10:03:13
p_l
jmercouris: multiple implementations that are kept compatible *strengthen* the community
10:03:36
makomo
beach: hmm, i'm trying to think of such an example -- maybe a macro constructing the symbol in a sneaky way or something? you could still take care of it by doing extra checks after reading, i.e. reading everything, macroexpanding it and then checking, perhaps?
10:03:59
makomo
beach: but i think then you'll have to do codewalking, right? and that isn't really portable
10:04:01
p_l
if there's *no effort to provide compatible separate implementations*, bad shit happens (Python)
10:04:53
p_l
jmercouris: having a healthy ecosystem of multiple implementations gives more pressure to write portable code
10:05:19
beach
makomo: You would have to recognize attempts to do intern and fdefinition and funcall.
10:05:23
makomo
jmercouris: there's also this :-) https://github.com/robert-strandh/SICL/blob/master/FAQ.text
10:05:25
p_l
jmercouris: enough that you end up having companies that explicitly take different implementations for their specific quirks and write compatible code
10:06:12
p_l
jmercouris: for example ITA Software, iirc, used both SBCL and CCL, because CCL was much faster in compiling but SBCL had higher final performance, so CCL handled web code for example
10:06:34
jmercouris
p_l: wait a second, I thought you couldn't count on compiled code to work between different implementations?
10:06:57
makomo
beach: i've noticed that you rarely include pdfs in your repositories, i.e. leaving it to the reader to compile the documents from latex. is this a valid observation or did i just stumble upon a few such repos?
10:07:44
makomo
not sure what your rationale is, but it's much much easier to just click a pdf than to (1) clone the repo, (2) fetch the latex deps, (3) build the pdf
10:08:36
p_l
jmercouris: I've been trying to get one started, but it would be probably more DevOps oriented because it would exist to troll for contracts
10:08:45
makomo
they are both products of the build system, sure, but the pdfs are something that should be readily available imo
10:08:57
makomo
beach: nothing in particular, but i noticed it just now when i went to see the SICL docs
10:09:57
p_l
jmercouris: ... that's a tricky question, sometimes you actually should include them...
10:10:14
makomo
i agree with not including binaries such as fasls in your git repo, because they're implementation specific, blah blah
10:10:51
p_l
makomo: better option would be to provide a quick and easy way to publish them from repo
10:11:05
makomo
browsing a git repo through the web interface and having the convenience of just clicking on a pdf is great IMO
10:16:42
makomo
p_l: oh like that, yeah that's an option i guess, but it's much more work to do than just leaving a compiled pdf in the repo
10:17:25
makomo
beach: oh yeah, i actually wanted to read the ILC-2014 paper, do you have that one available somewhere?
10:20:39
makomo
beach: i found a few small typos in the FAQ btw: https://github.com/robert-strandh/SICL/blob/master/FAQ.text#L145 "files so obtain", https://github.com/robert-strandh/SICL/blob/master/FAQ.text#L182 "contribute should get"
10:25:17
makomo
beach: instead of pushing the pdfs into the repo, you should perhaps set up an index of the pdfs you host on metamodular, organized by projects or similar
10:27:14
makomo
SICL/Papers/ has a lot of good stuff and you can't read any of it without compiling it yourself. call me lazy, but i like being able to browse around a project's github repo and inspect the docs within my browser
10:38:07
White_Flame
given that one might describe something beneficial as "the bomb", does that mean you're someone who will set us up the bomb?
10:38:08
p_l
i.e. something that would build PDFs from your repos and publish them without any work from you?
10:38:42
makomo
would one have to pay for hosting or could one just use something like github pages?
10:57:23
p_l
I'll take a look later over your repos, you keep them all on github or also in some other places?
11:00:00
beach
But I think I need help with the mechanisms of publishing after modifications to some documentation.
11:00:20
p_l
beach: ultimately it's a question of how to push the changed documents, i.e. how to provide access to the server
11:00:40
p_l
with CI we can easily integrate that for example every commit to "master" will result in a build and push
12:29:53
xificurC
(asdf:load-system :foo) and therefore (require :foo) writes compilation output to *standard-output*. Giving :verbose nil to asdf:load-system still does it. Why isn't this information going into stderr?
12:39:22
Xach
xificurC: I don't know definitively, but *standard-error* is specified to be for warnings and non-interactive error messages.
12:41:10
xificurC
when I do (let ((*standard-output* (make-broadcast-stream))) (require :foo)) the output goes away
14:12:19
slyrus1
scymtym: I see you setup the sharplispers/xpath repo. are you going to push your code to it?
14:27:05
scymtym
slyrus1: yes, i'm planning to. i have a bug fix and few commits that get rid of ASDF warnings
14:33:28
slyrus1
scymtym: sounds good! I think I have a few minor fixes lying around that I'll dig up next week.
14:40:48
scymtym
Xach: sure. but since i just started, i would like to test the modifications a bit before they are rolled out to everyone
14:58:16
rpg
Is there a standard anaphoric if/when out there? I know alexandria doesn't provide one. I'd like one, but prefer to use one that's commonly use.
14:59:57
rpg
Xach: I usually do, too, but sometimes the let-binding followed by if seems like just too much
15:00:00
rpg
Xach: I usually do, too, but sometimes the let-binding followed by if seems like just too much >
15:03:39
rpg
loke: Oh. I was just looking at the comments in alexandria, which disclaim intent to add anaphoric constructs.
15:10:06
sjl
I have my own (if|when)-let*? macros I made a while back that handle declarations properly, etc. Maybe I should put them somewhere.
18:58:42
tyrese
I have (loop for c across format do (if (eq c \#%) ..., how can I get the next character in the loop?
18:59:58
pjb
tyrese: characters may be not eq to themselves. And their reader syntax is #\% not \#% which would be symbol, and therefore a free variable!
19:14:29
pjb
Of course, the original was programmed on a vectorial screen, so it was different, but the following ones that were programmed on raster screens used that trick.
19:54:58
p_l
pjb: I did a presentation on basics of design of operating system with a historical view back in High School, specifically as teaching material
20:16:02
rpg
Quick question: the gitlab docs say that it's possible to do a squash merge to accept a merge request. But on cl.net I don't see this option. Anyone know how to use it? Or is this feature unavailable on cl.net?
20:51:23
aeth
member typep is faster than find in a sequence, at least for characters (where the sequence is a string) and unlike the latter it can be entirely resolved at compile time (find will iterate even if everything's constant)
21:54:51
dacoda
I was wondering if it was possible to create an array displaced to another array of a different type
21:55:15
dacoda
For example, if I have one array of '(unsigned-byte 8) and I wanted to displace another array of '(unsigned-byte 16), is this possible?
21:55:28
dacoda
Otherwise, how can I re-use the data of the first array while interpreting it as 16-bit integers?
21:56:46
MichaelRaskin
I wouldn't expect this to work well, given that many implementations «tag» the data to keep track of types
21:57:43
dacoda
Hahahaha, that would be an interesting way around it! Just have a C function that takes in a uint8_t buffer and casts it to a uint16_t buffer, eh?
21:58:09
dacoda
I'm using it for a little toy script, and if that's the solution, I might as well write it in C
21:58:29
MichaelRaskin
Well, FFI has functions for direct manipulation of foreign memory, no need for the C function.
21:59:50
MichaelRaskin
Note that you give up any and all Common Lisp safety when you do foreign memory manipulations by hand…