Re: status of openmcl and :ccl-1.11-sockets feature

2015-04-15 Thread Stas Boukarev
CL does guarantee it. Each form is read one by one. And eval-when causes
evaluation.
If that didn't work, how do you imagine IN-PACKAGE would work?

On Wed, Apr 15, 2015 at 4:16 AM, Mark H. David m...@clozure.com wrote:

 I see there's code to add feature :ccl-1.11-sockets and to use it via a
 read-time feature check in the same file. The file is
 backend/openmcl.lisp.  I don't think this can work reliably.  It seems to
 work, but I don't think Common Lisp guarantees it.

 The code is

 (eval-when (:compile-toplevel :load-toplevel :execute)
   (when (find-class 'ccl::ip6-socket-address nil)
 (pushnew :ccl-1.11-sockets *features*)))

 I think a much more robust solution would be for this to go in an earlier
 file that is guaranteed to be loaded before backend/openmcl.lisp is
 compiled.

 Can one of the developers review this?

 Also, any word on when this will propagate to Quicklisp?

 Thanks,

 Mark




-- 
With best regards, Stas.


Re: status of openmcl and :ccl-1.11-sockets feature

2015-04-15 Thread Mark H. David
Ok fine, seems to work.

How about Quicklisp? Quicklisp uses the same version of usocket as
what's linked to on the CLiki (http://cliki.net/USOCKET), version
0.6.1, released July 20 (or 21), 2013. Could there be a release soon? We
strongly prefer to use quicklisp's dist, and we need this new socket
functionality for running on CCL trunk.

Thanks,

Mark


On Apr 15, 2015, at 5:08 AM, Stas Boukarev stass...@gmail.com wrote:

 CL does guarantee it. Each form is read one by one. And eval-when
 causes evaluation. If that didn't work, how do you imagine IN-PACKAGE
 would work?

 On Wed, Apr 15, 2015 at 4:16 AM, Mark H. David
 m...@clozure.com wrote:
 I see there's code to add feature :ccl-1.11-sockets and to use it via
 a read-time feature check in the same file. The file is
 backend/openmcl.lisp. I don't think this can work reliably. It seems
 to work, but I don't think Common Lisp guarantees it.


The code is


(eval-when (:compile-toplevel :load-toplevel :execute)

(when (find-class 'ccl::ip6-socket-address nil)

(pushnew :ccl-1.11-sockets *features*)))


I think a much more robust solution would be for this to go in an
earlier file that is guaranteed to be loaded before backend/openmcl.lisp
is compiled.


Can one of the developers review this?


Also, any word on when this will propagate to Quicklisp?


Thanks,


Mark



 --
 With best regards, Stas.



status of openmcl and :ccl-1.11-sockets feature

2015-04-14 Thread Mark H. David
I see there's code to add feature :ccl-1.11-sockets and to use it via a 
read-time feature check in the same file. The file is backend/openmcl.lisp.  I 
don't think this can work reliably.  It seems to work, but I don't think Common 
Lisp guarantees it.

The code is

(eval-when (:compile-toplevel :load-toplevel :execute)
  (when (find-class 'ccl::ip6-socket-address nil)
(pushnew :ccl-1.11-sockets *features*)))

I think a much more robust solution would be for this to go in an earlier file 
that is guaranteed to be loaded before backend/openmcl.lisp is compiled.

Can one of the developers review this?

Also, any word on when this will propagate to Quicklisp?

Thanks,

Mark