freenode/#lisp - IRC Chatlog
Search
17:09:30
asarch
One stupid question: as far I know, (let) is only for variables and (flet) for functions). Is there anything for both variables and functions?
17:12:46
asarch
Using GTK+ for Common Lisp with cl-cffi-gtk: (within-main-loop (let ((window (make-instance 'gtk:window)) (gl-area (make-instance 'gtk:gtk-gl-area))) (flet ((render () (gl:clear(0 0 0 0)))) (gtk:g-signal-connect 'gl-area "render" render))...
17:17:44
Bike
but i meant just have (let ((window ...) (render (lambda () (gl:clear 0 0 0 0)))) (gtk:g-signal-connect 'gl-area "render" render) ...)
23:46:39
p_l
didi: I think it exists in floating point in practice, but I don't think standard says anything about it
23:48:52
Bike
it says an implementation can have negative zero but doesn't have to, and that positive zero = negative zero but not eql
23:49:38
p_l
from CL:ZEROP spec: "Regardless of whether an implementation provides distinct representations for positive and negative floating-point zeros, (zerop -0.0) always returns true."
1:00:38
ebrasca
I have read this link https://mkgnu.net/code-walkers , do you recomend someting else to learn about it?
1:03:52
LdBeth
ebrasca: a book about Common Lisp, which has a section talks about how to code walk with locally bind macros
1:09:09
LdBeth
Which is different to Common Lisp's macro, CL's macro does a little code walking to ensure some macro expansions are properly done
1:10:31
LdBeth
And Scheme's hygienic macro system is totally different, it does manipulating at syntax level
1:15:33
LdBeth
and even the limitations mentioned such as function can't take data type, I believe there're already some programming languages can do that, either with template, dynamic typing, dependent typing etc
3:42:18
dmiles
I been trying to get OPTOP or 3T to run on clisp .. whithout luck .. their defpackage systems are just too complex
4:40:29
beach
jeosol: Hard to describe. I made a resolution to have a native executable by the end of the year. That involved re-thinking the way I generate AST and HIR, so it influences bootstrapping. I am about to design the new bootstrapping phases, and then I will attack code generation.
4:41:57
jeosol
beach: Thanks. I realize my question is very broad and vague. But your response is a good summary.
4:42:56
jeosol
I was here briefly yesterday and saw some expansion you posted ( I don't recall), maybe for defclass and I wanted to ask the reason for the [ and ( brackets. But had to run. I am not expert in compiler design and just stay in the application side of things
4:43:56
beach
And I decided a while ago that the FASL format was just going to be the external representation of the AST.
4:44:05
jeosol
nice. it looked cool: I still have the link open: it was http://metamodular.com/t-defclass.fasl
4:44:19
beach
The Common Lisp HyperSpec requires the file compiler to do "minimal compilation" and this is as minimal as it gets.
4:45:51
beach
The external format is very simple. The left bracket is a reader macro character that reads a class name and a bunch of keyword/value pairs. It then calls make-instance on all that.
4:49:07
beach
Instead of source information being a file name, it is a position into a list of lines of text.