This is the mail archive of the
kawa@sources.redhat.com
mailing list for the Kawa project.
Re: Minimal Bytecode Generation Program
- Subject: Re: Minimal Bytecode Generation Program
- From: Andreas Schlapbach <schlpbch at iam dot unibe dot ch>
- Date: Tue, 18 Sep 2001 00:30:20 +0200 (CEST)
- cc: <kawa at sourceware dot cygnus dot com>
- Reply-To: <schlpbch at iam dot unibe dot ch>
Dear Per
Thanks, for your quick response, gnu.bytecode.* looks like a good
candidate, eventough I'll look at gnu.expr tomorrow. Especially ClassType
was a good starting point to me. I'm wondering though how the Filter
interface is supposed to be used? (Taking Object as an argument)
Thanks again,
Andreas
On Sun, 16 Sep 2001, Per Bothner wrote:
> Andreas Schlapbach wrote:
>
> >I'm interested in the bytecode-generation features of KAWA, I might use it
> >for a backend for a compiler.
> >
> >I've been reading the javadoced source and the archives, but I didn't find
> >a minimal programm to get started. Is there any such resource?
> >
> >All I would be interested in is how to generate bytecode for [...]
> >and how to pass it on to the JVM using gnu.bytecode.*
> >
> Some people do use just gnu.bytecode for a compiler backend and that has
> the advantage
> that gnu.bytecode is relatively simple, understandable, and the
> interface is fairly stable.
> However, it is very low-level. If you want to use Kawa to write a
> compiler, I
> recommend using the higher-level gnu.expr functionality. That
> gives you various optimization and features builtin. The best way to
> figure out
> how to do this is look at the implementation of the XQuery language.
>
> An example of XQuery hello world in action. First try putting:
> "Hello, world!"
> in a file named hello.xql, and then running:
> java kawa.repl --main --xquery -C hello.xql
> and
> java hello
>
> Then study the XQuery souce code in gnu/xquery/lang/*.java. Except for
> the parser,
> there isn't all that much to it. You can use this code as a model,
> though note that you need
> to register your language in the table in gnu/expr/Interpreter.java.
>
>
Andreas
--
Andreas Schlapbach schlpbch@kde.org
http://www.iam.unibe.ch/~schlpbch
"/home sweet /home."