Search
Wednesday, 20th of June 2018, 16:33:19 UTC
16:35:14
kuribas
So I found out I can get similar performance as in haskell by using (unsigned-byte 56) instead of fixnum.
16:35:58
kuribas
might have been nice if that was suggested instead of a lecture on safety...
16:36:23
beach
It was suggested. Not by me, though.
16:36:51
kuribas
safety didn't seem to make a real difference.
16:39:40
jeosol
jackdaniel: I am sending you a bottle of your name.
16:42:04
jackdaniel
is there a reason for that? also – where did you find my address? unless it is a virtual bottle…
17:16:34
ultimate_beginne
Hello beach, aeth, white_flame!
17:21:29
ultimate_beginne
Would it be fair to say that C FFI is a lisp DSL for writing low-level operations? Woke up pondering the question.
17:22:08
p_l
ultimate_beginne: depends on the actual implementation, but no
17:31:47
ultimate_beginne
I guess I'm thinking along the lines of (defmacro low-level (...) (...dsl similar to loop macro but with keywords for pointers, volatile, restrict, etc...))
17:32:19
ultimate_beginne
Essentially a compiler.. I suppose.
17:35:15
White_Flame
FFI gives you data access to low-level memory, and the ability to call low-level code. It doesn't let you write low-level operations directly
17:35:54
White_Flame
however, the native code Lisp compilers are written in Lisp, and can be extended
17:57:01
jeosol
jackdaniel: Yes, virtual bottle, don't have your address
18:20:57
jackdaniel
oh, I'm disappointed now
18:21:10
jackdaniel
you've put my hopes high
19:28:50
knobo
jackdaniel: does ecl garbage collect functions that is defined with a gensym as name?
19:30:08
knobo
jackdaniel: like this: (defmacro def () (let ((n (gensym))) `(defun ,n () (format nil "t"))))
19:35:25
jackdaniel
knobo: I think it doesn't, but I don't know it as a fact
23:20:05
Ukari
is defmacro has different with eval in efficiency?
23:23:55
Ukari
for example, (defmacro excute (&body expr) `(progn ,@expr)) (excute (print "foo") (print "bar")) and (eval (list 'progn (list 'print "foo") (list 'print "bar")))
23:26:58
Bike
you're comparing apples and oranges
23:57:17
White_Flame
defmacro will give your expr to be compiled at compiled time, and run at runtime
23:57:33
White_Flame
eval will compile and run at runtime (for implementations which auto-compile)
23:58:04
White_Flame
plus, since macros return source code that art part of a compilation unit, they're better tied to their surroundings than a standalone eval
23:59:03
White_Flame
especially since macros can be inside lexical scopes
0:37:22
White_Flame
Are there examples of binary websockets served by CL somewhere?
0:59:45
johnvonneumann
** NICK Guest11899
1:11:56
LdBeth
Any recommendations on persistent object store implementations
1:12:22
akkad
LdBeth: sure, leveldb, lmdb, and manardb
1:12:47
akkad
the first two use cffi and external libs, but manardb only uses osicat
1:14:00
akkad
manardb uses clos, and is the more lispy
1:14:50
LdBeth
Thanks, I will have a look
1:18:25
LdBeth
akkad: I saw manardb only support Linux
1:25:01
akkad
it works on macos too
1:25:32
akkad
https://github.com/danlentz/manardb might work on bsds as well
Thursday, 21st of June 2018, 4:33:19 UTC