freenode/#lisp - IRC Chatlog
Search
7:32:41
fiddlerwoaroof
Hmm, I'd imagine you could just close *standard-input*, *standard-output* and, essentially, daemonize
7:33:25
fiddlerwoaroof
But that probably has issues in a multi-threaded environment, even if it's theoretically possible
8:18:18
stylewarning
Shinmera: I want to make objects print readably, but I want to be conservative about read macros
8:19:30
beach
Oh, so you want to make #. part of the printed representation, as opposed to just using it in the code for the print function?
8:22:00
stylewarning
Shinmera: Right now CL-ALGEBRAIC-DATA-TYPE prints defined data using a list representation, which isn't right
8:23:18
stylewarning
example: (defdata maybe (just t) nothing), then (list (just 5) nothing) ==> ((JUST 5) NOTHING)
8:23:58
Shinmera
That tells me your data is just lists in which case the standard print/read syntax is okey?
8:23:59
stylewarning
It looks sort of nice but is ultimately confusing because the results are not actually lists
8:24:12
jackdaniel
beach: not that unusual, if you print arrays readably on sbcl you have #.… representation
10:01:06
beach
So, it doesn't seem like a good idea for a text editor to INTERN symbols that it sees in the buffer.
10:02:05
beach
Instead, it is probably better to use a pair of strings, one for the package name and one for the symbol name.
10:02:42
phoe_
Delete the package after the buffer is closed. This will automatically unintern all symbols from it.
10:05:38
phoe_
An idea would be to extend your CLOS to have a custom EQUAL-specialized dispatch aside from just EQL, but that is a very silly idea.
10:07:32
beach
So, as long as I have a well defined protocol, I can always optimize the implementation later.
10:08:08
phoe_
Having custom EQUAL specializers would be weird and very non-standard, but would be consistent with your heavy usage of CLOS.
10:10:11
phoe_
Maybe make it work in any way first, and then think of how you'd like it to look in the final code of yours.
10:10:49
beach
Yeah, this is not a public library (at least not yet), so I am free to modify the code as I please.
10:23:48
phoe_
"For any two objects, x and y, both of which are (...) strings, (...), and which are similar, (sxhash x) and (sxhash y) yield the same mathematical value."
10:24:15
phoe_
and similarity is defined as http://www.lispworks.com/documentation/lw61/CLHS/Body/03_bdbb.htm
10:25:51
shka
phoe_: i don't know what you are trying to do, just don't go full retard and do not forget about hash collisions
10:29:43
Colleen
Clhs: function sxhash http://www.lispworks.com/documentation/HyperSpec/Body/f_sxhash.htm
18:46:06
pjb
asarch: like greek atoms, lisp atoms can be divised: (ldb (byte 3 4) 123456) #| --> 4 |# (aref #(1 2 3 4 5) 2) #| --> 3 |# etc.
18:48:26
pjb
function names are symbol (or lists of the form (setf foo)); variable names are symbols, macro names are symbols, special operator names are symbols, but also: tags, class names, type names, and my brother-in-law.
18:49:09
pjb
asarch: dynamic/lexical is orthogonal to local/global (only CL provides operators to create only dynamic global, but it's trivial to implement lexical globals using deine-symbol-macro).
18:49:49
pjb
asarch: perhaps you'd want to read the tutorials at http://cliki.net/Online+Tutorial first?
19:00:20
asarch
I read in the "Gentle Introduction to..." book that you cannot actually divide an atom