Show Idle (>14 d.) Chans


← 2023-03-26 | 2023-03-28 →
jonsykkel[asciilifeform]: thoguht my asembler was bugy
phf: http://logs.bitdash.io/pest/2023-03-24#1025217 << and as soon as i said that btcbase decided to crash
bitbot[asciilifeform]: Logged on 2023-03-24 11:22:39 phf[4]: and then things simply stopped working en mass, hosting providers closed, new hosting providers encourage s3 style "spin up instance per task", etc. probably btcbase is the most long running casual process i have at this point
bitbot[asciilifeform]: Logged on 2023-03-27 07:36:02 jonsykkel: hehe http://zzz.st/up/5F0Osbq0/
bitbot[asciilifeform]: Logged on 2022-12-05 11:22:11 phf[awt]: i maybe wasn't articulate on the point, but i still think that sexps make for a poor interchange format (and neither bolix nor cadr used them for that)
phf: but if you're going to use them as serialization format, from common lisp, then you'd better know exactly what you're doing
phf: the documentation for write http://www.lispworks.com/documentation/HyperSpec/Body/f_wr_pr.htm#write has a bunch of `printer control variables` which affect the print in a variety of ways. they can be passed to some functions explicitly (write/write-to-string), and some functions bind them implicitly for convenience
phf: specifically variables of interest are *print-escape*/*print-readably*, or :escape and :readably as arguments, they decide between "intended to look good for people" and "intended to be acceptable to read"
phf: so patching above to (... (write-to-string x :escape t :readably t) ...) will produce desired result
phf: 􏿽but with that out of the way for this particular sequence sbcl has a funny bug, because of course it does. with just :escape t it prints `#\Space` as `#\ `, and it just happens that it breaks the line on #\ being the last element. so when you read it back instead of it being `#\ `
phf: 􏿽it's actually `#\<Newline>` and you get back #\newline instead of #\space
phf: the printer facility is so elaborate, you can do (write '(defun ...) :escape t :readable t :pretty t) and it'll give you a pretty-printed source code back, which knows how to indent elaborate things like loop macro
jonsykkel[asciilifeform]: http://logs.bitdash.io/pest/2023-03-27#1025280 << 5 difrent print functions and none of them do the useful thing of binding all those control vars by default
bitbot[asciilifeform]: Logged on 2023-03-27 10:30:14 phf[4]: the documentation for write http://www.lispworks.com/documentation/HyperSpec/Body/f_wr_pr.htm#write has a bunch of `printer control variables` which affect the print in a variety of ways. they can be passed to some functions explicitly (write/write-to-string), and some functions bind t
jonsykkel[asciilifeform]: with-standard-io-syntax does at least
jonsykkel[asciilifeform]: http://logs.bitdash.io/pest/2023-03-27#1025285 << should wire that into editor to auto format stuff
bitbot[asciilifeform]: Logged on 2023-03-27 10:59:08 phf[4]: the printer facility is so elaborate, you can do (write '(defun ...) :escape t :readable t :pretty t) and it'll give you a pretty-printed source code back, which knows how to indent elaborate things like loop macro
asciilifeform: jonsykkel: what were you trying to do ? ( ... write x86 asmer in cl ? )
jonsykkel[asciilifeform]: asciilifeform: im writing secd machine in c first 2 get a feel for it and wanted to test it quickly without having any reader
jonsykkel[asciilifeform]: so now i can "assemble" from cl macros etc into masterpieces like this http://zzz.st/up/IF6EkAGu/
asciilifeform: obfuscated sexpr contest
jonsykkel[asciilifeform]: nono this is c src
asciilifeform: well yes
jonsykkel[asciilifeform]: time to do reader maybe
asciilifeform: jonsykkel: possibly bake a static reader (and proper 1 later)
jonsykkel[asciilifeform]: asciilifeform: yep thats the plan
← 2023-03-26 | 2023-03-28 →