[Ecls-list] Upcoming
    Matthew Mondor 
    mm_lists at pulsar-zone.net
       
    Wed Jul  3 17:38:34 UTC 2013
    
    
  
On Tue, 2 Jul 2013 12:16:07 +0200
Juan Jose Garcia-Ripoll <juanjose.garciaripoll at gmail.com> wrote:
> * Declaration of C variables
> 
> (let ((a (cos 1.0))
>   (declare (:double a))
>   ...)
> 
> * Direct references to C variables
> 
> (ffi:c-inline (a b) (:double :double) :void
>    "#0 = cos(#1)")
> 
> * Embed imperative lisp in C (syntax not yet decided)
> 
> (let ((a 0))
>    (declare (:int a))
>    (ffi:c-progn (a) ; one or more variables
>      "for (#0 = 1; #0 < 10; #0++) {"
>      (print a)
>      "}"))
I'll surely experiment with these new features eventually as I have
more time, they seem interesting :)
Hmm so in the case of "Direct references to C variables", both a and b
are assumed to have been especially declared as in the last example,
with something similar to (let ((a 0.0) (b 3.3)) (declare (type :double
a b)) ... ?
Thanks,
-- 
Matt
    
    
More information about the ecl-devel
mailing list