Jim Brown: Difference between revisions

From APL Wiki
Jump to navigation Jump to search
(History up to publication of Ph.D. thesis)
(APL2 development, APL Blossom Time, NestedComputing)
Line 1: Line 1:
'''James Arthur Brown''' is an APL language designer and the primary force behind [[IBM]]'s [[APL2]]. In this role he was one of the primary advocates for the [[nested array model]]. He was awarded the [[Iverson Award]] in 1993 for his work on APL2.
'''James Arthur Brown''' is an APL language designer and the primary force behind [[IBM]]'s [[APL2]]. In this role he was one of the primary advocates for the [[nested array model]]. He was awarded the [[Iverson Award]] in 1993 for his work on APL2.


Brown studied mathematics at [[wikipedia:Gannon College|Gannon College]] in Pennsylvania<ref>Jim Brown. [https://old.aplwiki.com/JimBrown APL Wiki user page]</ref> (he first used a computer there in 1958). After graduating, he took a position at [[IBM]] [[wikipedia:IBM Federal Systems|Federal Systems]] in 1965, and soon learned about APL and its use in [[Falkoff]] and [[Iverson]]'s "A formal description of SYSTEM/360".<ref>[[Adin Falkoff]], [[Ken Iverson]], and Edward H. Sussenguth Jr. [https://www.cs.trinity.edu/~jhowland/class.files.cs2321.html/falkoff.pdf "A Formal Description of System/360"]. IBM Systems Journal '''3''':3:198-262. 1964.</ref> Brown later (at an [[wikipedia:Association for Computing Machinery|ACM]] meeting) met Adin Falkoff, who demonstrated [[APL\360]] to him on a 2741 terminal. Although Brown's manager declined to make him an account on the Yorktown Heights installation Falkoff had connected to, Brown learned of a planned installation at [[Syracuse University]] and enrolled in Ph.D. studies there in 1968. He would graduate in 1971 having written (advised by [[Garth Foster]]) "A Generalization of APL" for his thesis—the document that later became the foundation of [[APL2]] and an influence on [[NARS]]. However, he had left his IBM position to begin studies, and the pay for his new job running Syracuse's APL service pay proved insufficient, so in 1969 Brown also began work at IBM's [[wikipedia:Thomas J. Watson Research Center|Watson Research Center]] at Yorktown Heights. In addition to APL implementation such as extending [[Encode]], [[Decode]], and [[Catenate]] to higher-rank arrays, Brown discussed language designs with his colleagues and in particular [[Trenchard More]], whose array theory closely resembled Brown's ideas. However, Brown was not allowed at the time to access More's proposals made at IBM in order to avoid their content being made public.<ref>Jim Brown. [https://old.aplwiki.com/OnAPLsHistory?action=AttachFile&do=view&target=JimBrownsPersonalHistoryOf_APL_20170405.pdf A Personal History of APL]. Updated 2017-04-05.</ref>
Brown studied mathematics at [[wikipedia:Gannon College|Gannon College]] in Pennsylvania<ref name=wiki>Jim Brown. [https://old.aplwiki.com/JimBrown APL Wiki user page]</ref> (he first used a computer there in 1958). After graduating, he took a position at [[IBM]] [[wikipedia:IBM Federal Systems|Federal Systems]] in 1965, and soon learned about APL and its use in [[Falkoff]] and [[Iverson]]'s "A formal description of SYSTEM/360".<ref>[[Adin Falkoff]], [[Ken Iverson]], and Edward H. Sussenguth Jr. [https://www.cs.trinity.edu/~jhowland/class.files.cs2321.html/falkoff.pdf "A Formal Description of System/360"]. IBM Systems Journal '''3''':3:198-262. 1964.</ref> Brown later (at an [[wikipedia:Association for Computing Machinery|ACM]] meeting) met Adin Falkoff, who demonstrated [[APL\360]] to him on a 2741 terminal. Although Brown's manager declined to make him an account on the Yorktown Heights installation Falkoff had connected to, Brown learned of a planned installation at [[Syracuse University]] and enrolled in Ph.D. studies there in 1968. He would graduate in 1971 having written (advised by [[Garth Foster]]) "A Generalization of APL" for his thesis—the document that later became the foundation of [[APL2]] and an influence on [[NARS]]. However, he had left his IBM position to begin studies, and the pay for his new job running Syracuse's APL service pay proved insufficient, so in 1969 Brown also began work at IBM's [[wikipedia:Thomas J. Watson Research Center|Watson Research Center]] at Yorktown Heights. In addition to APL implementation such as extending [[Encode]], [[Decode]], and [[Catenate]] to higher-rank arrays, Brown discussed language designs with his colleagues and in particular [[Trenchard More]], whose array theory closely resembled Brown's ideas. However, Brown was not allowed at the time to access More's proposals made at IBM in order to avoid their content being made public.<ref name=personal>Jim Brown. [https://old.aplwiki.com/OnAPLsHistory?action=AttachFile&do=view&target=JimBrownsPersonalHistoryOf_APL_20170405.pdf A Personal History of APL]. Updated 2017-04-05.</ref>


Brown left IBM in 1996 and began working as an independent consultant. He and James Wheeler, a former manager at [[STSC]], founded the analytics company SmartArrays in 1999.<ref>SmartArrays. [https://web.archive.org/web/20180517005151/http://www.smartarrays.com/about.aspx "About Us"]. Archived from the original on 2018-05-17.</ref> Brown remained a manager at SmartArrays until its dissolution in 2019.<ref>[http://www.smartarrays.com/ smartarrays.com]. Accessed 2020-03-17.</ref>
After completing his Ph.D., Brown joined IBM's Philadelphia Scientific Center under [[Dick Lathwell]], and began work on a [[Nested array model|nested]] extension to APL, what would become [[APL2]] (he changed departments to Palo Alto in 1974, back to Yorktown Heights in 1978, and Palo Alto again in 1981<ref name=personal/>). He discussed [[Trenchard More]]'s ideas with Ziad Ghandour and later More himself, and adopted the details of More's theory, particularly [[prototype]]s, for APL2. A prototype of APL2 (Installed User Program or IUP) was released in 1982 with Brown serving as chief architect; because of discussions with Falkoff and Iverson at Yorktown various extensions had been changed to favor a flatter array style, but based on user experience and conversation with [[Bob Smith]] (development manager of [[NARS]] at [[STSC]]), Brown changed them back to match his earlier definitions.<ref>James A. Brown. [https://dl.acm.org/doi/abs/10.1145/190271.190277 The Origins of APL2] at [[APL94]].</ref> Another aspect of the APL2 design advocated by Brown was the generalization of [[strand notation]] to any arrays rather than just numbers. APL2 was released in 1984, and Brown continued to work at IBM on design as well as service and marketing. He also arranged the performance of [[APL Blossom Time]] at [[APL81]], playing guitar and singing along with the band and hundreds of conference attendees.
 
Brown left IBM in 1996 and began working as an independent consultant. He and James Wheeler, a former manager at [[STSC]], founded the analytics company SmartArrays in 1999.<ref>SmartArrays. [https://web.archive.org/web/20180517005151/http://www.smartarrays.com/about.aspx "About Us"]. Archived from the original on 2018-05-17.</ref> Brown remained a manager at SmartArrays until its dissolution in 2019.<ref>[http://www.smartarrays.com/ smartarrays.com]. Accessed 2020-03-17.</ref> Additionally, he formed NestedComputing with Mircea Morosan in 2011 to work on an array operating system, supported by [[Gitte Christensen]] and [[Morten Kromberg]].<ref name=wiki/>


== Publications ==
== Publications ==

Revision as of 20:45, 18 March 2024

James Arthur Brown is an APL language designer and the primary force behind IBM's APL2. In this role he was one of the primary advocates for the nested array model. He was awarded the Iverson Award in 1993 for his work on APL2.

Brown studied mathematics at Gannon College in Pennsylvania[1] (he first used a computer there in 1958). After graduating, he took a position at IBM Federal Systems in 1965, and soon learned about APL and its use in Falkoff and Iverson's "A formal description of SYSTEM/360".[2] Brown later (at an ACM meeting) met Adin Falkoff, who demonstrated APL\360 to him on a 2741 terminal. Although Brown's manager declined to make him an account on the Yorktown Heights installation Falkoff had connected to, Brown learned of a planned installation at Syracuse University and enrolled in Ph.D. studies there in 1968. He would graduate in 1971 having written (advised by Garth Foster) "A Generalization of APL" for his thesis—the document that later became the foundation of APL2 and an influence on NARS. However, he had left his IBM position to begin studies, and the pay for his new job running Syracuse's APL service pay proved insufficient, so in 1969 Brown also began work at IBM's Watson Research Center at Yorktown Heights. In addition to APL implementation such as extending Encode, Decode, and Catenate to higher-rank arrays, Brown discussed language designs with his colleagues and in particular Trenchard More, whose array theory closely resembled Brown's ideas. However, Brown was not allowed at the time to access More's proposals made at IBM in order to avoid their content being made public.[3]

After completing his Ph.D., Brown joined IBM's Philadelphia Scientific Center under Dick Lathwell, and began work on a nested extension to APL, what would become APL2 (he changed departments to Palo Alto in 1974, back to Yorktown Heights in 1978, and Palo Alto again in 1981[3]). He discussed Trenchard More's ideas with Ziad Ghandour and later More himself, and adopted the details of More's theory, particularly prototypes, for APL2. A prototype of APL2 (Installed User Program or IUP) was released in 1982 with Brown serving as chief architect; because of discussions with Falkoff and Iverson at Yorktown various extensions had been changed to favor a flatter array style, but based on user experience and conversation with Bob Smith (development manager of NARS at STSC), Brown changed them back to match his earlier definitions.[4] Another aspect of the APL2 design advocated by Brown was the generalization of strand notation to any arrays rather than just numbers. APL2 was released in 1984, and Brown continued to work at IBM on design as well as service and marketing. He also arranged the performance of APL Blossom Time at APL81, playing guitar and singing along with the band and hundreds of conference attendees.

Brown left IBM in 1996 and began working as an independent consultant. He and James Wheeler, a former manager at STSC, founded the analytics company SmartArrays in 1999.[5] Brown remained a manager at SmartArrays until its dissolution in 2019.[6] Additionally, he formed NestedComputing with Mircea Morosan in 2011 to work on an array operating system, supported by Gitte Christensen and Morten Kromberg.[1]

Publications

APL conferences

Main article: APL conference

Other talks

External links

References

  1. 1.0 1.1 Jim Brown. APL Wiki user page
  2. Adin Falkoff, Ken Iverson, and Edward H. Sussenguth Jr. "A Formal Description of System/360". IBM Systems Journal 3:3:198-262. 1964.
  3. 3.0 3.1 Jim Brown. A Personal History of APL. Updated 2017-04-05.
  4. James A. Brown. The Origins of APL2 at APL94.
  5. SmartArrays. "About Us". Archived from the original on 2018-05-17.
  6. smartarrays.com. Accessed 2020-03-17.
APL community [edit]
Activities ConferencesUser groups and meetupsIverson AwardExercises
Chat rooms and forums APL FarmAPL OrchardAPL Wiki
People Phil AbramsBrian BeckerBob BerneckyLarry BreedCharles BrennerJim BrownAdám BrudzewskyGitte ChristensenPeter DonnellyJohn EarnestAdin FalkoffGarth FosterLib GibsonAaron HsuRoger HuiKen IversonMorten KrombergDick LathwellMarshall LochbaumEugene McDonnellRoger MooreTrenchard MoreAlan PerlisRaghu RanganathanHenry RichAl RoseJohn ScholesIan SharpBob SmithGeoff StreeterJoey TuttleArthur Whitney
Other APL TrustAPL Quote QuadBlogsBooksCase studiesFamous APL usersHumourJobsMerchandisePapersPodcastsTryAPLTry It OnlineVideo channels