If the intermediate language doesn't have high-level constructs then we're going to be compiling them out, only to have to bring them back for the transformation to the target languages (C, Java, Ruby, etc). That strikes me as the wrong approach.

On 13-03-08 06:21 AM, ragel-u...@jgoettgens.de wrote:
Yes, but does it hurt? My understanding is that you are using a
transformation tool anyway. Personally I would say that a lower level
description is a perfect match for an FSM, which would also give you
more freedom to implement the characterics of a higher level language.
If the intermediate language is already at a fairly high level, anything
derived from that probably soon faces the problem of the lowest common
denominator.

There are decompilers available for CIL that typically generate C# code.
As a start, one could look at them to see how they deal with the code
generation.

I have not looked at Colm yet, but some time ago I played with txl. Txl
seems to be more suitable for text based transformations. Working with
CIL probably asks for implementing sequences of tree transformations at
a binary level until you arrive at something that can easily be printed
out as native source code.

This way one could easily support native looking C++, Lisp, or FORTRAN
77 (not really). CIL byte code is more or less language independent.

I would have a personal interest in this kind of low level stuff, so I
could contribute more than usual.

jg


_______________________________________________
ragel-users mailing list
ragel-users@complang.org
http://www.complang.org/mailman/listinfo/ragel-users

_______________________________________________
ragel-users mailing list
ragel-users@complang.org
http://www.complang.org/mailman/listinfo/ragel-users

Reply via email to