GNU APL: Difference between revisions

Jump to navigation Jump to search
Numeric types
m (removed reference to try-GNU-APL online demo - which no longer exists in any fashion)
(Numeric types)
 
Line 3: Line 3:
| index origin            = 0 or 1
| index origin            = 0 or 1
| function styles          = [[tradfn]], [[dfn]] (limited)
| function styles          = [[tradfn]], [[dfn]] (limited)
| numeric types            = [[complex]] floats, rational
| numeric types            = [[complex]] float, 64-bit integer
| unicode support          = full
| unicode support          = full
| released                = 2013
| released                = 2013
Line 28: Line 28:


Documents on GNU APL sometimes quote [[Richard Stallman]], who both founded GNU and programmed in APL. However, Stallman is not directly associated with the project.
Documents on GNU APL sometimes quote [[Richard Stallman]], who both founded GNU and programmed in APL. However, Stallman is not directly associated with the project.
== Encoding ==
== Encoding ==


GNU APL tends to prefer the [[Unicode]] ''Lozenge'' (U+25CA; <syntaxhighlight lang=apl inline>◊</syntaxhighlight>) and ''Element of'' (U+2208; <syntaxhighlight lang=apl inline>∈</syntaxhighlight>) over ''Diamond operator'' (U+22C4; <syntaxhighlight lang=apl inline>⋄</syntaxhighlight>) and ''Small Element of'' (U+220A; <syntaxhighlight lang=apl inline>∊</syntaxhighlight>) which are more commonly used by other dialects. This can lead to [[SYNTAX ERROR]]s if attempting to use code written for GNU APL in other implementations. However, GNU APL also accepts the more common code points.
GNU APL tends to prefer the [[Unicode]] ''Lozenge'' (U+25CA; <syntaxhighlight lang=apl inline>◊</syntaxhighlight>) and ''Element of'' (U+2208; <syntaxhighlight lang=apl inline>∈</syntaxhighlight>) over ''Diamond operator'' (U+22C4; <syntaxhighlight lang=apl inline>⋄</syntaxhighlight>) and ''Small Element of'' (U+220A; <syntaxhighlight lang=apl inline>∊</syntaxhighlight>) which are more commonly used by other dialects. This can lead to [[SYNTAX ERROR]]s if attempting to use code written for GNU APL in other implementations. However, GNU APL also accepts the more common code points.
== Numeric types ==
GNU APL supports both 64-bit floats and 64-bit integers, as well as complex numbers whose components are floating-point. The integer type is used when a value can be conveniently determined to have an integer value, in particular when a primitive that is "integer by nature" is called on integer arguments and the result is not too large (GNU reserves a region at the boundary of the 64-bit range where results may be either integer or float).<ref>GNU APL documentation §3.1, [https://www.gnu.org/software/apl/apl.html#System-Limits System Limits]. Accessed 2024-02-22.</ref> Monadic function <syntaxhighlight lang=apl inline>⊤∨</syntaxhighlight> converts near-integer floating-point values to the integer type. Experimental support for rationals, which are ratios of 64-bit integers, can be enabled at compile time.
== External links ==
== External links ==
* [http://www.gnu.org/software/apl The GNU APL Homepage]
* [http://www.gnu.org/software/apl The GNU APL Homepage]
* [http://lists.gnu.org/archive/html/bug-apl/ The GNU APL Mailing List]
* [http://lists.gnu.org/archive/html/bug-apl/ The GNU APL Mailing List]
Line 39: Line 44:
* [https://savannah.gnu.org/svn/?group=apl Help for GNU APL Subversion]
* [https://savannah.gnu.org/svn/?group=apl Help for GNU APL Subversion]
* [http://www.gnu.org/software/apl/Community.html The GNU APL Community]
* [http://www.gnu.org/software/apl/Community.html The GNU APL Community]
== References ==
<references/>
{{APL dialects}}[[Category:APL dialects]][[Category:Nested array languages]]
{{APL dialects}}[[Category:APL dialects]][[Category:Nested array languages]]

Navigation menu