gcl-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gcl-devel] Re: GCL, pprint and xp


From: Camm Maguire
Subject: [Gcl-devel] Re: GCL, pprint and xp
Date: 06 Jul 2007 16:53:29 -0400
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2

Greetings!

Raymond Toy <address@hidden> writes:

> Camm Maguire wrote:
> > Greetings!  Do you have any experience perhaps with the
> > ansi-compliance level of the xp pprint code?
> >
> 
> Not really.  It used to work on gcl, so you could just try it. :-)
> 
> My gut feeling is that it will mostly work, but the corner cases
> won't. And some of the tests are, IMHO, just silly, like an extra
> space here and there in the output.  It's what the spec says, but I
> don't think the intent was to do that.
> 

I've been trying it out, and it appears you are right.  Installation
is quiht tricky with the shadowing-import, but there appear to be
residual failures involving whitespace.

I'm tring to get gcl 2.7 to pass Paul Dietz' ansi suite by September.
The bulk of the remaining failures are pprint related.  I can think of
three options:

1) Build on the partial implementation we have now.  All the
   non-state-related pprint appears to be working, there is just
   currently no state stored in a standard stream.
2) Use xp -- though I wonder about the performance
3) Use the cmucl port to ecl.

Your thoughts most appreciated.


> If you should try it, let me know.  I'd offer to help, but I always
> have a very hard time building gcl.  Too many linuxisms.
> 

Do you use BSD?  Or solaris?  

If the former, do you know of any C libraries supporting C99 complex
transcendental routines e.g. cexp?  GCL 2.7 has support for unboxed
complex arithmetic.

Please forgive the late reply, but as to your question regarding
mkdir, yes:

COMPILER>(defdlfun (:int "mkdir") :void* :int)

|libc|:|mkdir|

COMPILER>(compile *)

;; Compiling /tmp/gazonk_16455_0.lsp.
; (DEFUN |libc|:|mkdir| ...) is being compiled.
;; End of Pass 1.  
;; End of Pass 2.  
;; OPTIMIZE levels: Safety=0 (No runtime error checking), Space=0, Speed=3, 
(Debug quality ignored)
;; Finished compiling /tmp/gazonk_16455_0.o.
;; Loading /tmp/gazonk_16455_0.o
 ;; start address -T 0xa9f9a0 ;; Finished loading /tmp/gazonk_16455_0.o
#<compiled-function |libc|:|mkdir|>
NIL
NIL

COMPILER>(directory "/tmp/hh4/")

NIL

COMPILER>#o755

493

COMPILER>(|libc|:|mkdir| "/tmp/hh4/" 493)

0

COMPILER>(directory "/tmp/hh4/")

(#P"/tmp/hh4/")

COMPILER>

But this is only 2.7 and above.

We've discussed a lower-level directory function -- windows
portability appears to be the roadblock.  Writing one atop
openddir/readdir should be straightforward.

Take care,


> Ray
> 
> 
> 

-- 
Camm Maguire                                            address@hidden
==========================================================================
"The earth is but one country, and mankind its citizens."  --  Baha'u'llah




reply via email to

[Prev in Thread] Current Thread [Next in Thread]