Agena

Versione: 
6.6.11
Data rilascio: 
Lunedì, 9 Marzo, 2009

Licenza:

Interfaccia:

Authors/Port authors:

Agena è un linguaggio di programmazione procedurale facile da apprendere e studiato per l'utilizzo quotidiano. Implementato come linguaggio interpretato, può essere usato per applicazioni scientifiche, educative, linguistiche e altro. La sua sintassi risulta simile all'Algol 68 semplificato, con elementi presi dal Lua e da SQL.

Questo software è distribuito come pacchetto compresso, da scaricare e installare manualmente; se ci sono prerequisiti da soddisfare, andranno anch'essi scaricati e installati manualmente.

Installazione manuale

Disponibile sia in formato ZIP che WarpIN:

  • scaricare il pacchetto ZIP in una cartella temporanea e scompattarlo nella cartella di destinazione;
  • il pacchetto WarpIN è autoinstallante.

Vedi sotto per il(i) link di download.

E' possibile installare i prerequisiti con rpm, eseguendo la stringa seguente in una finestra comandi:

yum install libc libcx libgcc1 libssp libstdc++6 libstdc++ libsupc++6 libsupc++ libgcc-fwd readline ncurses expat sqlite

Qui di seguito trovi i link di download per l'installazione manuale del software:

Agena v. 6.6.11 (30/1/2026, Alexander Walz) Readme/What's new
agena >> `The Power of Procedural Programming` 6.6.11 Shiraz, January 30, 2026 - `getmetatable` has been extended and allows to retrieve a metatable directly from the Agena registry instead of doing so by querying a certain individual value, such as a structure or userdata. You must pass the name of the metatable and the `true` option, though, to accomplish this, for example: > getmetatable('numarray', true): [__add ~ procedure(01D6FDF8), __aeq ~ procedure(01D64150), ...] Some safeguards have been implemented to prevent abuse, see the Agena Reference. - New `long.trigamma` and `long.tetragamma` implement the trigamma and tetragamma functions for 80-bit long doubles. - Stymied error messages of `os.getconsolemode`, `os.setconsolemode` and `os.shellcolour` have been fixed. - Error messages of `ads.open`, `ads.read`, `calc.sections`, `factory.count`, `long.count`, `math.length` are no longer corrupted. - With unknown file I/O or socket errors, many Agena functions caused memory leaks when printing the error message. This has been fixed. - Added a few human-readable error messages for failed socket IO. - On Windows, `printf` when called in colour mode, issued an error if it could not determine the console mode. This can happen when stdout is redirected to NUL, especially in batch scripts. Now `printf` just prints the text without colour in these cases and no longer stops execution. - New `dual.gamma` and `dual.beta` implement the Gamma and Beta functions for (hyper-)dual numbers, respectively. - New `dual.psi` implements the Psi/Digamma function. - The `lngamma` and `invsqrt` operators now support (hyper-)dual numbers. - `dual.erfcx` now supports hyper-dual numbers. - New `dual.hypot4` computes tzhe cathetus sqrt(x^2 - y^2) for (hyper-)dual numbers. - New `dual.pytha` computes squared sum x^2 + y^2 for (hyper-)dual numbers. - New `dual.pytha4` computes squared difference x^2 - y^2 for (hyper-)dual numbers. - New `dual.totable puts all the (hyper-)dual number components into a table. - Added the new `dual.generate` function which easily allows to create new functions processing (hyper-)dual numbers. All you need are the operators and procedures working on ordinary Agena numbers [sic !], the function definition itself plus its first and second derivative. Example: > dual.lnGAMMA := # implements ln(gamma(x)) > dual.generate(<: x -> lngamma(x) :>, calc.Psi, <: v -> calc.Psi(1, v) :>, 'dual.lnGAMMA'); This allows you to utilize the whole realm of operators and functions that you find in the base, `calc`, `stats` and other libraries, to compute derivatives accurately. - The minimum CPU requirement for the Windows installers that have the phrase `-sse2-` in the file name is: Pentium 4/Athlon 64 or newer, SSE2 instruction set. AVX is not required. The SSE2-compatible Windows version of Agena is around 1.5 percent faster than the one using the x87 instruction set.
 sourceforge.net/projects/agena/files/Binaries/Agena 6.6.11/agena-6.6.11-os2.wpi/download
Agena v. 4.12.5 (20/5/2025, Alexander Walz) Readme/What's new
4.12.5 Merryville, May 20, 2025 - In the past, the bitshift operators <<< (left shift), >>> (right shift), <<<< (left rotation) and >>>> (right rotation) had different behaviour across platforms when a number at or beyond the +/-2^32 threshold has been processed. This has been changed and the results in these situations are now the same. Likewise, `bytes.numto32` is now returning the same results on all platforms when casting a value at or beyond the +/-2^32 border. This also benefits various functions in the `hashes` package as their returns are now the same across platforms, as well. To check the new underflow or overflow behaviour, use `math.wrap`. - New function `math.fmod` works and returns the same result as the binary `symmod` operator. It has just been added to facilitate porting C code to Agena. - The results of `hashes.mix`, `hashes.crc32`, `hashes.crc8`, `hashes.reflect`, `hashes.parity`, `hashes.fibmod`, `hashes.interweave`, `hashes.jinteger` may now be different with out-of-range input, that is with arguments at or beyond the 2^32 threshold, depending on your platform.
 www.hobbesarchive.com/Hobbes/pub/os2/dev/proglang/misc/Agena_4-12-5.wpi
Agena Manual v. 6.6.11 (, Alexander Walz)
 sourceforge.net/projects/agena/files/Manuals/agena.pdf/download
Agena source code v. 6.6.11 (Source code, , Alexander Walz)
 sourceforge.net/projects/agena/files/Sources/agena-6.6.11-src.tar.gz/download
Scheda aggiornata l'ultima volta il: 30/01/2026 - 19:19

Commenti

Hello, thank you very much for listing me. Greetings from Bonn, Rhineland, Alex

Aggiungi un commento