Aldor es un lenguaje de programación . [ 1 ] [ 2 ] [ 3 ] Es el sucesor de A# como lenguaje de extensión del sistema de álgebra computacional Axiom .
Aldor combina características imperativas, funcionales y orientadas a objetos . Posee un elaborado sistema de tipos, [ 4 ] que permite utilizar los tipos como valores de primera clase. La sintaxis de Aldor está fuertemente influenciada por Pascal , pero es opcionalmente sensible a la indentación, utilizando caracteres de espacio en blanco y la regla de desplazamiento , al igual que Python . En su implementación actual, se compila, pero se proporciona un oyente interactivo.
Aldor se distribuye como software libre y de código abierto , bajo la licencia Apache 2.0.
Ejemplos
El programa "Hola mundo" tiene este aspecto:
#incluir "aldor" #incluir "aldorio"stdout << "¡Hola, mundo!" << nueva línea ;Ejemplo de tipos dependientes (de la Guía del usuario):
# incluir "aldor" # incluir "aldorio" # pilasumlist ( R: ArithmeticType , l : List R ) : R == s : R := 0 ; for x in l repeat s := s + x simport from List Integer , Integer , List SingleFloat , SingleFloat stdout << sumlist ( Integer , [ 2 , 3 , 4 , 5 ]) << newline stdout << sumlist ( SingleFloat , [ 2.0 , 2.1 , 2.2 , 2.4 ]) << newline# incluir "aldor" # incluir "aldorio"importar desde Entero , Cadena ;bob ( n : Entero ) : Cadena == { b : Cadena := " botella" ;si n ~= 1 entonces b := b + "s" ; b + " de cerveza" ; }main () : () == { n : Integer := 99 ; otw : String := " en la pared" ;-- refrenarse mientras n > 0 repetir { stdout << n << bob ( n ) << otw << ", " << n << bob ( n ) << "." << nueva línea ; stdout << "Toma uno y pásalo, " ; n := n - 1 ; si n > 0 entonces stdout << n ; si no stdout << "no más" ; stdout << bob ( n ) << otw << "." << nueva línea ; stdout << nueva línea ; }-- último verso stdout << "No más" << bob ( n ) << otw << ", no más" << bob ( n ) << "." << newline ; stdout << "Ve a la tienda y compra más, " ; n : Entero := 99 ; stdout << n << bob ( n ) << otw << "." << newline ; }principal () ;Referencias
- ↑ Gerdt, Vladimir P.; Koepf, Wolfram; Mayr, Ernst W.; Vorozhtsov, Evgenii V. (7 de septiembre de 2010). Álgebra computacional en computación científica: 12.º Taller Internacional, CASC 2010, Tsakhadzor, Armenia, 6-12 de septiembre de 2010, Actas . Springer. ISBN 978-3-642-15274-0. Consultado el 5 de julio de 2023 .
- ↑ Kirchner, Helene; Ringeissen, Christophe (30 de diciembre de 2006). Fronteras de la combinación de sistemas: Tercer taller internacional, FroCoS 2000 Nancy, Francia, 22-24 de marzo de 2000 Actas . Springer. ISBN 978-3-540-46421-1.
- ↑ Kerber, Manfred; Kohlhase, Michael (2 de abril de 2001). Computación simbólica y razonamiento automatizado: El simposio CALCULEMUS-2000 . CRC Press. ISBN 978-1-4398-6423-4. Consultado el 5 de julio de 2023 .
- ↑ "Lenguaje de programación Aldor" . Aldor.org . Consultado el 12 de febrero de 2017 .
Enlaces externos
- Sitio web oficial
- Desarrollo de código abierto - Repositorio Git
- Guía del usuario de Aldor
- Lenguajes de programación experimentales
- Lenguajes de programación orientados a objetos
- Temas básicos de lenguajes de programación