[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Tinycc-devel] new in this mail-list
From: |
fpuentes |
Subject: |
Re: [Tinycc-devel] new in this mail-list |
Date: |
Fri, 19 Dec 2003 10:28:14 +0000 |
User-agent: |
Internet Messaging Program (IMP) 3.2 |
Mensaje citado por Basile STARYNKEVITCH <address@hidden>:
> On Thu, Dec 18, 2003 at 11:47:32AM +0000, address@hidden wrote:
> > Hi, TCC:
> >
> > I am new in this mail list. I hope use TCC in the next future with the
> purpouse
> > to use it as embedded language in my doctoral project VAIN (Virtual Active
>
> > Network). The term Virtual is because really it isn't exists yet ;-) (but
> the
> > are prototypes)
>
> Is your work a continuation of Synthesis from Massalin?
> http://citeseer.nj.nec.com/massalin92synthesi.html
> >
No, really no, an active network is a device (aka router) that can modify the
packets that cosses them, not only the headers (as pasive devices do) the
payload too. The main ideas is: support for new protocols without restart the
device and put a partial semantic into the net (such like middleware). I use a
Node OS (NOS) as operating system but i am not going to do one or modify one.
In fact i use Linux, but i thing VAIN will live in a different NOS to allow
better control over the application. Any suggerence?
> > I have experience in C/C++ programming and i hope improve TCC like a RTCG
> > (runtime code generation) tool. In fact i want use TCC to generate plugins
> at
> > runtime and link them with my host application.
>
> Just a few notes. Tcc is a C compiler, so, in order to generate code,
> you need to generate the C code first (in a file, or in a memory
> string). Unless your code is simple or somehow regular (at least from
> the generator's point of view), it is usually a good practice to
> represent some abstract syntax tree of the generated code.
>
Yes i think so, in fact i am evaluating too LLMV which is more complex than TCC
and less complex than GCC. But TCC is simple to modify, and i am think about
expose some parts of TCC in libtcc.h (only thinking...).
> TCC is fine for C compilation, notably if you already have some C
> template machinery available.
>
Yes, TCC is perfect for a scratch, but it is posible that TCC be little for
future evolutions of my work. At the moment it is fine.
> If you start a project from scratch, and if you want to generate
> quickly code (even faster generation time than with TCC) you might
> consider using GNU lightning, which is a library for direct machine
> code generation. See
> http://www.gnu.org/directory/libs/gnulightning.html for details.
>
I have evaluated GNU lightning, but it have a novel support for floatpoint and
i need a total support.
The only lack of TCC is that only support iA32 code machine and it would be
fine if it support other architectures (althogh it isn't important nowadays).
With TCC only need these changes (or improvements .. i am not sure if TCC
support these yet):
+ Support for NAMESPACES (uhmmm, hard to do?).
+ Support for INTERFACES: easy, appending a "@interface" and "@import" and
making a PRE-PRE-PROCESSOR to substitute this sentences with C code (extern
declarations of functions)
+ Better support to manage ELF (sections and symbols) file in memory.
+ Capacity to extend ELF in memory with new sections ("author" section and,
maybe, "interface" section for declare digital firm and imported and exported
simbols).
A question:
¿TCC link with libraries without be order from libtcc functions?
For plugins i need linker DON'T link with anything except functions in
execution environment (by demand and with the authority of the node). The only
functions that pluging can invoke are local functions and functions from the
host system (with tcc_add_symbol). It will fine too if plugings support a
better control with fatal errors, i need to know which pluging have a problem
to destroy it without affect the rest of the node; maybe installing its own
hooks for exceptions (well it is only a idea).
Thank you for you help: Fran.
> Regards
> --
>
> Basile STARYNKEVITCH http://starynkevitch.net/Basile/
> email: basile<at>starynkevitch<dot>net
> aliases: basile<at>tunes<dot>org = bstarynk<at>nerim<dot>net
> 8, rue de la Faïencerie, 92340 Bourg La Reine, France
>
>
> _______________________________________________
> Tinycc-devel mailing list
> address@hidden
> http://mail.nongnu.org/mailman/listinfo/tinycc-devel
>
>
---------------------------------------------------------------------------
Correo enviado usando el servicio de Webmail del SIAIN: http://siain.udc.es