chicken-hackers
[Top][All Lists]
Advanced

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

Re: [Chicken-hackers] compiler docs


From: Peter Keller
Subject: Re: [Chicken-hackers] compiler docs
Date: Sat, 2 Jun 2007 16:09:39 -0500
User-agent: Mutt/1.4.2.1i

On Sat, Jun 02, 2007 at 10:33:31AM +0200, felix winkelmann wrote:
> I proudly present a first draft of the beginnings of my meagre
> attempt to provide an inadequate and ridiculuous joke of
> something remotely similar to a description of the compilation
> process and internal structure of the compiler:
> 
> http://chicken.wiki.br/Internals

Thank you!

> Lots of typos and mistakes are mandatory and the lack
> of completeness should be obvious. Please feel free to
> ask for more details.

I have a detail to ask:

In the first pass of the compilation of the N-queens problem, I see this:

      (let ((t15 (set! dec-to1
                   (lambda (n4)
                     (##core#app
                       (let ((loop5 (##core#undefined)))
                         (let ((t8 (set! loop5
                                     (lambda (i6 l7)
                                       (if (= i6 '0) l7 (loop5 (- i6 '1) (cons 
i6 l7)))))))
                           (let () loop5)))
                       n4
                       '())))))

What is t15? You seem to be having set! return a value of some kind and
always capturing it.

Also, how is match.scm used and where can I find a good document on how to use
what that file implements?

> More documentation regarding the runtime system and
> foreign function interface are planned, but I need a break
> now, so this may take some time.

I appreciate very much what you've already done!

> There is also a new egg, called "peep" that allows one
> to interactively inspect the compiled program (very simple,
> and needs the newest development version), but this
> generally be only useful with some knowledge of the
> internals (hopefully gained through reading the mentioned
> documents).

Cool!

Later,
-pete




reply via email to

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