Hi Tomas, > > Two major issues are still missing: Networking and database support. > > Is there a way to link this version with C libraries and do some kind > of FFI easily?
This is a third issue (there may be more, though minor, issues) ;-) I think we discussed it here last year. Basically, there will be a general 'native' function that allows the direct call of an arbitrary C function. It will probably look like (native "fun" "lib" <ret> <val> ..) The return type <ret> and the <val> arguments are Lisp expressions that encode C primitive types, arrays and structures. I don't want to go too much into the details yet, as all is still evolving. The advantage over the 32-bit version is that you can directly call C functions in external libraries, without the need of glue functions. The disadvantage is that Lisp functions cannot easily be written in C any more, as the implementation language is now assembly. The 'ext', 'ht' etc. libraries are also not implemented yet, but the hooks are there. A smoke test for 'ext' is already in the release $ ./dbg : (getd 'ext:foo) -> 2950612706386 : (ext:foo) -> 1 > Why did you abandon "lisp syntax" for the assembler? Good question. I considered it initially, but found no advantage using it (not even for the parser). I think that in such a case the parentheses would be rather unwieldy. Why would you prefier lisp syntax here? Cheers, - Alex -- UNSUBSCRIBE: mailto:[email protected]?subject=unsubscribe
