Ivy: Difference between revisions

Jump to navigation Jump to search
122 bytes removed ,  01:02, 20 April 2023
m
Version bump
(Version increase)
m (Version bump)
(One intermediate revision by one other user not shown)
Line 2: Line 2:
| released                = 2014
| released                = 2014
| developer                = [[wikipedia:Rob Pike|Rob Pike]]
| developer                = [[wikipedia:Rob Pike|Rob Pike]]
| latest release version  = 0.1.15 / 2022-01-25
| latest release version  = 0.2.10 / 2022-12-03
| array model              = [[flat array model|flat]]
| array model              = [[flat array model|flat]]
| index origin            = <code>) origin</code> 0 or 1
| index origin            = <code>) origin</code> 0 or 1
Line 18: Line 18:
}}
}}


'''Ivy''' is a calculator with APL syntax and functions developed by [[wikipedia:Rob Pike|Rob Pike]] with the [[wikipedia:Go (programming language)|Go]] programming language (itself developed by Pike and others). Built-in functions are written with one or more ASCII characters, and use either the [[wikipedia:C (programming language)|C]]-like symbols of Go or short names such as <code>div</code> or <code>rot</code>. With no looping constructs or recursion, Ivy is intended to perform computations and not for general-purpose programming. It emphasizes high-precision computation, using exact rationals when possible and high-precision floating-point numbers otherwise.
'''Ivy''' is a calculator with APL syntax and functions developed by [[wikipedia:Rob Pike|Rob Pike]] with the [[wikipedia:Go (programming language)|Go]] programming language (itself developed by Pike and others). Built-in functions are written with one or more ASCII characters, and use either the [[wikipedia:C (programming language)|C]]-like symbols of Go or short names such as <code>div</code> or <code>rot</code>. It emphasizes high-precision computation, using exact rationals when possible and high-precision floating-point numbers otherwise.


Ivy allows user-defined functions (called operators), but not higher-order operators; it has only the four built-in operators [[Reduce]], [[Scan]], [[Outer Product]], and [[Inner Product]]. Functions are defined with the <code>op</code> keyword, with a declaration that matches the way the function will be used followed by <code>=</code> and a body of one or more lines (the result of the last is returned). Among APLs, this syntax most closely resembles that of [[A+]].
Ivy allows user-defined functions (called operators), but not higher-order operators; it has only the four built-in operators [[Reduce]], [[Scan]], [[Outer Product]], and [[Inner Product]]. Functions are defined with the <code>op</code> keyword, with a declaration that matches the way the function will be used followed by <code>=</code> and a body of one or more lines (the result of the last is returned). Among APLs, this syntax most closely resembles that of [[A+]].


{{APL dialects}}[[Category:Array languages]][[Category:ASCII languages]]
{{APL dialects}}[[Category:Array languages]][[Category:ASCII languages]]

Navigation menu