Gren
Instalación con npm:
$ npm install -g gren-langCreando proyecto:
$ mkdir demo-gren
$ cd demo-gren
$ gren init -yCompilación:
$ gren make MainEsto nos creará un archivo index.html el cual abriremos con un navegador
| module Main exposing (..) | |
| import Html exposing (Html, text) | |
| import String | |
| -- Tipo para el resultado | |
| type alias Resultado = | |
| { futuro : Float | |
| , extra : Float | |
| } | |
| -- Potencia para Float con exponente entero | |
| powFloat : Float -> Int -> Float | |
| powFloat base exp = | |
| if exp == 0 then | |
| 1 | |
| else | |
| base * powFloat base (exp - 1) | |
| -- Función que calcula el monto futuro y el extra | |
| calcular : Float -> Float -> Int -> Resultado | |
| calcular presente tasa periodo = | |
| let | |
| tasaDecimal = | |
| tasa / 100 | |
| futuro = | |
| presente * powFloat (1 + tasaDecimal) periodo | |
| extra = | |
| futuro - presente | |
| in | |
| { futuro = futuro, extra = extra } | |
| -- Ejemplo de uso: mostramos resultados como HTML | |
| main : Html msg | |
| main = | |
| let | |
| presente = 1000.0 | |
| tasa = 5.0 | |
| periodo = 12 | |
| resultado = | |
| calcular presente tasa periodo | |
| salida = | |
| "Monto a pagar: " ++ String.fromFloat resultado.futuro | |
| ++ "\nExtra a pagar: " | |
| ++ String.fromFloat resultado.extra | |
| in | |
| text salida |
| module Main exposing (main) | |
| import Html | |
| main = | |
| Html.text "Hola, mundo en Gren" |