Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Mi propio compilador (una frikada)

99 views
Skip to first unread message

Boriel

unread,
Jun 13, 2007, 6:20:03 PM6/13/07
to
O si quieren la "compilatriz" :-D

Bueno, siempre me gustaron los compiladores. Así que me he hecho en
python (estoy terminándolo) una herramienta para generar compiladores
(en python). Suena un poco raro, pero esto permitiría (espero
terminarlo en breve), hacer cosas como:

1) Un intérprete de BASIC (del ZX) en python, que se ejecute en el PC
(por ejemplo, en PyGame). Esto permitiría correr programas BASIC
(teóricamente) en el PC (con mucha más velocidad, y con la comodidad
de un editor en el PC).

2) Crear un compilador de cualquier lenguaje para el ZX (o un
ensamblador, aunque mejor que ZX88dk, no creo :D). El programita en
python recibiría nuestro lenguaje de entrada y escupiría el código
máquina directamente (bytes, binario) o ASM.

3) Un compilador de BASIC del ZX a ASM del ZX, de manera que se
podrían acelerar los programas bastante sin tener que dominar ASM
(aunque no quedarán igual de optimizados que a mano, evidentemente).

Por ser python es multiplataforma. Será GPL.
Espero no arrepentirme de poner esto aquí. :-| Igual se queda en
nada. :-P
Pero creo que ya está casi terminado, y podría crear un pequeño
lenguaje de ejemplo, para ilustrar su uso. Y, que diablos, aunque a
nadie le interese, yo me he dado el gustazo haciéndolo.

Saludotes,
Boriel

Gandulf

unread,
Jun 14, 2007, 3:17:52 AM6/14/07
to

Por lo que veo tu utilidad es una herramienta para el que realmente
quiera hacer el compilador, como bien dices. El problema es que el
trabajo para hacer un compilador de C para Z80 o de Basic a ASM como
dices tu (esto último sería un compilador de Basic), es enorme
(ingente), aun utilizando el Compilatrix este. En cuanto lo pongas
disponible le echaré un ojo, que puede ser útil para muchas otras
cosas.

Gracias y un saludo,

Gandulf

compiuter

unread,
Jun 14, 2007, 7:03:31 AM6/14/07
to
Me encantará probarlo en cuanto lo tengas terminado.
Gracias a tí por hacer esta herramienta.
Espero que esta "institutriz" tenga versión pda.
Será magnifico leer el código que resulte:
10 PRINT 9
=
LD A,9
LD HL,16384
CALL OPEN ...
Un saludo y gracias.

Gandulf

unread,
Jun 14, 2007, 8:30:45 AM6/14/07
to

> Será magnifico leer el código que resulte:
> 10 PRINT 9
> =
> LD A,9
> LD HL,16384
> CALL OPEN ...

No, pero él, si he entendido bien, ha hecho la herramienta para que
alguien haga el compilador. Es decir, usando su herramienta y
currando, tienes que hacer que pase del print al ASM, pero la
herramienta es para hacer compiladores, no el compilador en si mismo.

Boriel

unread,
Jun 14, 2007, 2:35:39 PM6/14/07
to
Gandulf tiene razón. Es eso. Lo que pasa es que lo estoy intentando
hacer más sencillo de usar que, por ejemplo, Lex y Yacc (aparte de que
es un poco más potente, porque admite gramáticas más ambiguas, etc).
De todas maneras, si lo termino, ya pediré consejo por aquí, para
hacer algo (por ejemplo, lo que pone compiuter arriba, un traductor de
BASIC a ASM).

Con Lex y Yacc es mucho más complicado de hacer (y de modificar).

Saludotes, Jose

0 new messages