CobolScript (2) Primera Función, Factorial

Published on Author lopezLeave a comment

Anterior Post 
Siguiente Post 

JavaScript es manteca en mis manos ;-). Estuve trabajando en mi proyecto CobolScript, compiladr de COBOL a JavaScript, que puede ejecutarse en el navegador o en Node.js.

Agregué soporte de funciones definidaspor el usuario, con parámetros, argumentos a pasar, y hasta variables locales. El primer ejemplo fue el clásico factorial recursivo:

https://github.com/ajlopez/CobolScript/blob/master/samples/factorial/factorial.cob

Pueden ejecutarlo en ese directorio, con la línea de comando:

node run factorial.cob

data division.
working-storage section.
01 n.

procedure division.
perform show-factorial varying n from 1 to 10.

show-factorial local result.
perform factorial using n giving result.
display n "! = " result.

factorial using n local m.
if n = 1 then return n.
subtract 1 from n giving m.
perform factorial using m giving m.
multiply n by m.
return m.

Le agregué nueva sintaxis:

performusing … Para llamar a un procedimiento local pasando argumentos.

– <proc> using …  El procedimiento declara sus argumentos.

– <proc> local(s) … El procedimiento declara sus variables locales (actualización: removido, ahora hay comando local(s)… directamente en el código del procedimiento).

performgiving <var>…  Puedo especificar que el valor de retorno del procedimiento (internamente, es una función JavaScript) sea guardado en una o varias variables.

return (expr)  El procedimiento puede retornar en cualquier momento, con un resultado opcional. Me falta implementar el clásico exit de COBOL.

Le agregué soporte de plantillas, páginas web dinámicas, y acceso a objetos JavaScript/Node.js nativos. Pero eso ya es tema para otro post.

Nos leemos!

Angel “Java” Lopez

http://www.ajlopez.com

http://twitter.com/ajlopez

Leave a Reply

Your email address will not be published. Required fields are marked *