Personalized Array Translator: Difference between revisions

Jump to navigation Jump to search
m
Undo previous; change one "influenced by" to "influenced"
(Created page with "{{Infobox array language | title = PAT | array model = flat without boxes | numeric types = floats | un...")
 
m (Undo previous; change one "influenced by" to "influenced")
(4 intermediate revisions by 2 users not shown)
Line 5: Line 5:
| unicode support          = no
| unicode support          = no
| released                = 1964
| released                = 1964
| developer                = H. Hellerman
| developer                = Herb Hellerman
| implementation language  = [[wikipedia:IBM_Basic_Assembly_Language_and_successors|BAL]]
| implementation language  = 1620 Symbolic Programming System (SPS)
| platforms                = [[wikipedia:IBM 1620|IBM 1620]]
| platforms                = [[wikipedia:IBM 1620|IBM 1620]]
| documentation            = [https://www.semanticscholar.org/paper/Experimental-personalized-array-translator-system-Hellerman/537d26ca8c4172cdd2976cffedef5422f61a00f2 ''Experimental personalized array translator system'']
| documentation            = [https://www.semanticscholar.org/paper/Experimental-personalized-array-translator-system-Hellerman/537d26ca8c4172cdd2976cffedef5422f61a00f2 ''Experimental personalized array translator system'']
| influenced by            = [[Iverson notation]]
| influenced by            = [[Iverson notation]]
| influenced              = [[IVSYS/7090]]
}}
}}


The '''Personalized Array Translator''' ('''PAT''') was an early experimental system, and together with [[IVSYS/7090]], one of the first implementations of [[Iverson Notation]] as a programming language.
The '''Personalized Array Translator''' ('''PAT''') was an early experimental system create by Dr. Herbert Hellerman of the [[IBM]] System Research Institute. It was the first implementation of [[Iverson Notation]] as a programming language, preceding even [[IVSYS/7090]]. [[Ken Iverson]] used the PAT system in his early work with students in the local secondary school, and had a profound influence on Iverson's notation, as can be seen in his book [https://code.jsoftware.com/wiki/Doc/Elementary_Functions_An_Algorithmic_Treatment ''Elementary Functions An Algorithmic Treatment''].


In lieu of most proper APL [[glyphs]], PAT used letters prefixed by the <code>@</code> symbol. [[Comparison functions]] were denoted by <code>@</code> followed by three digits 0 or 1, indicating whether the function would return 1 or 0 if the left argument would be less than, equal to, or greater than the right argument, respectively. The language only allowed application of one function per statement, with the result being assigned. Valid statements were:<ref>Hellerman, H. [https://www.semanticscholar.org/paper/Experimental-personalized-array-translator-system-Hellerman/537d26ca8c4172cdd2976cffedef5422f61a00f2 Experimental personalized array translator system]. Communications of the [[wikipedia:Association_for_Computing_Machinery|ACM]]. July 1964. [[wikipedia:doi]] https://doi.org/10.1145/364520.364573</ref>
In lieu of most proper APL [[glyphs]], PAT used letters prefixed by the <code>@</code> symbol. [[Comparison functions]] were denoted by <code>@</code> followed by three digits 0 or 1, indicating whether the function would return 1 or 0 if the left argument would be less than, equal to, or greater than the right argument, respectively. The language only allowed application of one function per statement, with the result being assigned. Valid statements were:<ref>Hellerman, H. [https://www.semanticscholar.org/paper/Experimental-personalized-array-translator-system-Hellerman/537d26ca8c4172cdd2976cffedef5422f61a00f2 Experimental personalized array translator system]. Communications of the [[wikipedia:Association_for_Computing_Machinery|ACM]]. July 1964. [[wikipedia:doi|]]: https://doi.org/10.1145/364520.364573</ref>


{| class=wikitable
{| class=wikitable
! Name !! PAT code !! Modern equivalent
! Name !! PAT statement !! Modern equivalent
|-
|-
| [[Add]] || <code>Z = X + Y</code> || <source lang=apl inline>Z ← X + Y</source>
| [[Add]] || <code>Z = X + Y</code> || <source lang=apl inline>Z ← X + Y</source>
Line 113: Line 114:


== References ==
== References ==
 
<references/>
{{APL dialects}}[[Category:IBM APL dialects]][[Category:Flat array languages]]
{{APL dialects}}[[Category:IBM APL dialects]][[Category:Flat array languages]]

Navigation menu