Page 1 of 1

How to compile SBCL as a DLL

Posted: Fri Aug 08, 2008 8:34 am
by pTymN
Hello,

A few days ago, I asked how to embed SBCL into a C++ app, and among other things, I was warned that SBCL makes too many assumptions about owning memory, but this cannot be completely true if it is able to load ordinary DLLs, which almost certainly do their own memory management. I'm pretty newbie about open source contributions (usually I just anon-cvs fetch stuff and build). Does anyone here know enough about the SBCL build process to know if it is reasonable to build SBCL as an .exe and then somehow apply a patch that uses that SBCL to compile a DLL version? ECL's performance numbers are disappointing, even compared to CormanCL, but I would really like to move to a frequently updated and speedy version of Lisp, and contribute new stuff to OSS at the same time. Is there any interest? I work in the video game industry, so a Lisp that plays well on Win32 machines is important, regardless of my personal feelings towards Win32... Any takers?

-Tim Kerchmar

Re: How to compile SBCL as a DLL

Posted: Fri Aug 08, 2008 12:09 pm
by jast
Hi,

I think the best thing to do is ask directly to the SBCL developers, mainly the ones who work in the win32 port.

Cheers.

Re: How to compile SBCL as a DLL

Posted: Sat Aug 09, 2008 10:56 am
by nuntius
Disclaimer: I'm not an SBCL dev.

That said, the #1 SBCL issue on windows has been the clash with DLLs loaded to random spots in memory, thus preventing SBCL from obtaining a nice large contiguous heap. There has been work on this issue, but I don't think it was fully resolved. Ask on sbcl-help or sbcl-devel for details.

Would it be possible to work this the other way? e.g. SBCL loads your game code as a DLL?