Cell es un pequeño lenguaje de programación interpretado que tiene solamente 12 instrucciones.
El código fuente de un programa escrito en Cell contiene unicamente números del 0 al 9
y los símbolos "+" y "-". Todo lo demás, se entenderá como comentarios en el código.
¿ Cómo funciona ?
Cell funciona bajo una máquina virtual muy simple, comprendida por:
Una tabla de memoria que contiene 100 celdas a las que se pueden
asignar valores numéricos distintos.
Un cursor que permite seleccionar celdas para realizar operaciones
sobre ellas.
Una tabla de operaciones posibles a realizar.
Las instrucciones
Para movernos en la tabla de memoria: (las 100 celdas)
8 : nos mueve hacia arriba
2 : nos mueve hacia abajo
4 : nos mueve hacia la izquierda
6 : nos mueve hacia la derecha
5 : selecciona la celda actual
Para movernos en la tabla de operaciones:
- : nos mueve hacia arriba
- : nos mueve hacia abajo
7 : nos mueve hacia la izquierda
9 : nos mueve hacia la derecha
0 : ejecuta la operación actual
Por último, salida de datos:
1 : imprime valor de la celda actual como caracter (ascii)
3 : imprime valor de la celda actual como entero (float en realidad)
Pongamos un ejemplo sencillo
Supongamos que todas las celdas empiezan valiendo "1", y que el cursor
está en la primera celda, asimismo supongamos que la primera operación
de la tabla suma 1 al valor actual de la celda:
30303
Esto imprimiría: 123
"3" imprime el valor de la celda actual como entero
"0" va sumando uno al valor de la celda que empieza siendo "1" y llega a ser "3".
¿ Porqué Cell ?
Porque me apetecía hacerlo, no hay más razones. Cell no va a ser el sustituto
del próximo PASCAL, C++, BASIC o cualquier otro lenguaje. Además, ha sido
un experimento divertido. Cell es tan estúpido como Brainfuck o Whitespace y
probablemente nadie con cabeza lo usaría para nada serio.
En un futuro por simple hobbie, añadiré a Cell bucles, condiciones, arrays,
etc a modo de operaciones que se puedan llamar desde las tablas.
Cell de momento es sólo un experimento y no tiene documentación. Para ver
cómo funciona hay que ver el cell.cpp. (código en C++)
Descargar Cell (ejecutable, fuente C++ y ejemplo de "Hola mundo")
http://s37.yousendit.com/d.aspx?id=2T7DQCPSXO2KS3E5WKPAVLDB4G