On Fri, 16 Oct 2009 20:11:25 +0400, Leandro Lucarella <llu...@gmail.com> wrote:

Ary Borenszweig, el 16 de octubre a las 14:20 me escribiste:
>I can't agree more. Everything you wrote is in my TODO list,
>starting with a compiler, which already compiles most of the
>druntime (and hopefully will compile it fully by the end of this
>week). I'll release it to public as soon as Brad creates a project
>page at dsource.

Is it a port of DMD? Because I think the main problem with above is
that the front-end is not very good... I think it has a lot of
evolved code and starting from scratch might be a good idea.

And the back-end is not free! You can't distributed and I don't think it
can be ported.


I see no point in porting backend. It's still in C++ and easily accessed from D:

extern (C++) {
void obj_initfile(const(char)* filename, const(char)* csegname, const(char)* modname);
        Symbol* symbol_calloc(const(char)* id);
        type* type_fake(tym_t);
        dt_t** dtnzeros(dt_t** pdtend, targ_size_t size);
        void outdata(Symbol* s);
        dt_t ** dtnbytes(dt_t** pdtend, targ_size_t size, const(char)* ptr);
        type* type_alloc(tym_t ty);
        elem* el_ptr(Symbol*);
        elem* el_bin(uint, tym_t, elem*, elem*);
        // etc
}

(These functions could be then moved to a separate backend.dll so that they would be shared between DMD and D-DMD and then only backend.dll would need to be distributed)

Besides, Walter gave and explicit permission to Tango devs to distribute dmd (alongside with a backend), so I believe this issue can be sorted out.

Walter?

Reply via email to