
On 5/25/07, Edi Weitz <edi@agharta.de> wrote:
Hi,
You're asking at the right moment... :)
It seems we currently have problems with OpenMCL and I can't do much about it as I don't have a Mac. If you check the mailing list archives of tbnl-devel and flexi-streams-devel of this month, you'll find all the details.
Flexi-streams passes all its tests on the latest OpenMCL, I don't think that is the problem.
I was close to removing OpenMCL support from Hunchentoot, but if you can help fixing the issues, that's fine of course.
Any experience converting a project from aserve to Hunchentoot?
Not me.
Probably the timer functions have been removed in some of the later versions of OpenMCL. Unless someone has a fix already I will dig into this.
Or possibly these functions where never in OpenMCL. I think these functions (ccl::make-timer-request etc.) are defined in acl-compat, and some how never made it over to port-mcl. They are in a file called mcl-timers.lisp in acl-compat. Perhaps, if licensing allows, you could include that file. Reading the mailing list archive, I noticed another problem that I also had. ... i get an error that says: Unknown http return code: 500 I have tracked this down. It is not related to flexi-streams, but to a defconstant in specials.lisp: (defconstant +http-reason-phrase-map+ (make-hash-table) When the file is complied and loaded that hash table is empty. I haven't checked with the OpenMCL developers, but I think this might be invoking undefined behavior. CLHS: "An implementation may choose to evaluate the value-form at compile time, load time, or both." If the compiler evaluates the (make-hash-table) both at compile time and load time, and optimizes away the constant lookup (directly uses that hash table as a literal) in the setter forms. The result would be as observed in openmcl. I think either of these would work: (defparameter +http-reason-phrase-map+ (make-hash-table) (defconstant +http-reason-phrase-map+ '#.(make-hash-table) With these changes I can now get the test examples to work. -- //Lennart Staflin