chicken-hackers
[Top][All Lists]
Advanced

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

[Chicken-hackers] node types in chicken's core language


From: Xing Su
Subject: [Chicken-hackers] node types in chicken's core language
Date: Thu, 08 Aug 2013 21:24:29 +0800
User-agent: Mozilla/5.0 (X11; Linux i686; rv:17.0) Gecko/20130510 Thunderbird/17.0.6

Hi everybody! I have a question about node types in chicken's CORE language.

I'd like to hack into chicken and now I'm reading through the source code.
The release version I use is the latest stable release, version 4.8.0.4.

According to the compiler internal on chicken wiki, the there are several compiler
passes from Scheme code to native C, and after the first pass named CANONICALIZATION,
the scheme code is translated to the chicken CORE language, which is actually an
abstract-syntax-tree. I want to insert a user-defined pass here after CANONICALIZATION
and before CPS CONVERSION, so all kinds of nodes in CORE language should be taken
in to consideration.

What confused me is that, as the wiki says, there are compiler nodes and
compiler special forms and they share some type of nodes.
After a simple test, I found that after canonicalization can produce nodes
in both category.

I wonder that
(1) what's the difference between these two categories?
(2) should I deal with all node types in both categories when wring a user-defined pass?

thank you!

pysuxing


reply via email to

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