# Eugene McDonnell: Difference between revisions

m (Text replacement - "Category:People" to "Category:PeopleCategory:Designers") |
m (Text replacement - "<source" to "<syntaxhighlight") |
||

(4 intermediate revisions by 2 users not shown) | |||

Line 5: | Line 5: | ||

== Contributions to APL and J == | == Contributions to APL and J == | ||

McDonnell suggested the symbol < | McDonnell suggested the symbol <syntaxhighlight lang=apl inline>×</syntaxhighlight> for [[Signum]] and designed the [[Circle function]] (<syntaxhighlight lang=apl inline>○</syntaxhighlight>) as a way to unify trigonometric and hyperbolic functions<ref>McDonnell, Eugene. [https://www.jsoftware.com/papers/eem/storyofo.htm "The Story of ○"].</ref>. He designed APL's [[complex Floor]]<ref>McDonnell, Eugene. [https://www.jsoftware.com/papers/eem/complexfloor.htm "Complex Floor"].</ref> and suggested the extension of [[Or]] (<syntaxhighlight lang=apl inline>∨</syntaxhighlight>) and [[And]] (<syntaxhighlight lang=apl inline>∧</syntaxhighlight>) to [[GCD]] and [[LCM]]<ref>McDonnell, Eugene. [https://www.jsoftware.com/papers/eem/gcd.htm "A Notation for the GCD and LCM Functions"].</ref>. He was also involved in the introduction of [[complex number]]s to [[SHARP APL]]<ref>McDonnell, Eugene. [https://www.jsoftware.com/papers/satn40.htm SATN-40: Complex Numbers].</ref>. His suggestion that zero divided by zero should be zero rather than one<ref>McDonnell, Eugene. [https://www.jsoftware.com/papers/eem/0div0.htm "Zero Divided by Zero"].</ref> was later adopted by [[J]]. | ||

In 1988, McDonnell and [[Ken Iverson]] developed [[function train]] notation, one of the major innovations that spurred the creation of [[J]]. | In 1988, McDonnell and [[Ken Iverson]] developed [[function train]] notation, one of the major innovations that spurred the creation of [[J]]. | ||

Line 12: | Line 12: | ||

=== APL conferences === | === APL conferences === | ||

{{Main|APL conference}} | |||

* [[APL73]]: The variety of definitions of a simple function. | * [[APL73]]: The variety of definitions of a simple function. | ||

* [[APL74]]: The caret functions: Efficient algorithms for scans and reductions of eight Boolean functions. | * [[APL74]]: The caret functions: Efficient algorithms for scans and reductions of eight Boolean functions. | ||

Line 44: | Line 44: | ||

<references /> | <references /> | ||

{{APL community}}{{DEFAULTSORT:McDonnell}}[[Category:People]][[Category:Designers]][[Category:Implementers]] | {{APL community}}{{DEFAULTSORT:McDonnell}}[[Category:People]][[Category:IBM employees]][[Category:I.P. Sharp Associates employees]][[Category:Designers]][[Category:Implementers]] |

## Latest revision as of 22:15, 10 September 2022

**Eugene Edward McDonnell** (October 18, 1926 – August 17, 2010) was an APL implementer and designer, and popularizer of APL and J. He edited the APL Quote-Quad column "Recreational APL" and wrote the "At Play with J" series of articles for Vector journal, and received the Iverson Award in 1987.

McDonnell, a programmer since 1954, joined IBM and first learned about Iverson notation in 1961, and joined Ken Iverson's group at IBM in 1968.^{[1]} He left IBM for I.P. Sharp Associates in 1978, where he worked under Eric Iverson.^{[2]}

## Contributions to APL and J

McDonnell suggested the symbol `×`

for Signum and designed the Circle function (`○`

) as a way to unify trigonometric and hyperbolic functions^{[3]}. He designed APL's complex Floor^{[4]} and suggested the extension of Or (`∨`

) and And (`∧`

) to GCD and LCM^{[5]}. He was also involved in the introduction of complex numbers to SHARP APL^{[6]}. His suggestion that zero divided by zero should be zero rather than one^{[7]} was later adopted by J.

In 1988, McDonnell and Ken Iverson developed function train notation, one of the major innovations that spurred the creation of J.

## Publications

### APL conferences

*Main article: APL conference*

- APL73: The variety of definitions of a simple function.
- APL74: The caret functions: Efficient algorithms for scans and reductions of eight Boolean functions.
- APL75: A notation for the GCD and LCM functions.
- APL76: Zero divided by zero.
- APL79: Fuzzy residue.
- APL80: Extending APL to infinity. With Jeffrey Shallit.
- IPSA '80: Commercial Applications for Event Handling.
- IPSA '82: APL as a Functional Programming Language.
- APL85: Promoting APL (panel). With Patricia A. Buteux, Edward M. Cherlin, Percy Feiner, Jim Lucas, Michael Sunday, and Sheryl Winton.
- APL86: A perfect square root routine.
- APL88: Life: Nasty, brutish, and short.
- APL89: Phrasal forms. With K. E. Iverson.
- APL90: APL\?. With Roger K. W. Hui, Kenneth E. Iverson, and Arthur T. Whitney.
- APL91: Tacit definition. With Roger K. W. Hui and Kenneth E. Iverson.
- APL93: From trees into boxes. With David Steinbrook.

### SHARP APL Technical Notes

- SATN-40: Complex Numbers. 1981-06-20.
- SATN-45: Language Extensions of May 1983 (with Bob Bernecky, Ken Iverson, Robert Metzger, and J. Henri Schueler). 1983-05-02.

## External links

- Eugene McDonnell
- JSoftware paper collection (includes links to Recreational APL and At Play with J articles)
- "At Play With J", updated by the J community
- Eugene McDonnell Quotations and Anecdotes assembled by Roger Hui

## References

- ↑ Anon.
*Candidates for STAPL Offices*(excerpt). APL Quote-Quad, Volume 7, Number 4, Winter 1977. - ↑ Hui, Roger. "Eugene McDonnell Quotations and Anecdotes".
- ↑ McDonnell, Eugene. "The Story of ○".
- ↑ McDonnell, Eugene. "Complex Floor".
- ↑ McDonnell, Eugene. "A Notation for the GCD and LCM Functions".
- ↑ McDonnell, Eugene. SATN-40: Complex Numbers.
- ↑ McDonnell, Eugene. "Zero Divided by Zero".