HOME

TheInfoList



OR:

Roger Kwok Wah Hui (December 29 1953 – October 16, 2021) was a
computer scientist A computer scientist is a person who is trained in the academic study of computer science. Computer scientists typically work on the theoretical side of computation, as opposed to the hardware side on which computer engineers mainly focus ( ...
who worked on
array programming In computer science, array programming refers to solutions which allow the application of operations to an entire set of values at once. Such solutions are commonly used in scientific and engineering settings. Modern programming languages tha ...
languages. He codeveloped the
programming language A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language. The description of a programming l ...
J.


Education and career

Hui was born in
Hong Kong Hong Kong ( (US) or (UK); , ), officially the Hong Kong Special Administrative Region of the People's Republic of China (abbr. Hong Kong SAR or HKSAR), is a city and special administrative region of China on the eastern Pearl River Delta i ...
in 1953. In 1966, he immigrated to
Canada Canada is a country in North America. Its ten provinces and three territories extend from the Atlantic Ocean to the Pacific Ocean and northward into the Arctic Ocean, covering over , making it the world's second-largest country by tota ...
with his whole family. In 1973, Hui entered the
University of Alberta The University of Alberta, also known as U of A or UAlberta, is a public research university located in Edmonton, Alberta, Canada. It was founded in 1908 by Alexander Cameron Rutherford,"A Gentleman of Strathcona – Alexander Cameron Ruth ...
. In his second year he took a course on
probability Probability is the branch of mathematics concerning numerical descriptions of how likely an Event (probability theory), event is to occur, or how likely it is that a proposition is true. The probability of an event is a number between 0 and ...
and statistics in which students were expected to learn the programming language APL with little or no formal instruction. He used all the time he could muster on a heavily burdened computer, and benefited from the ''APL\360 User's Manual'' (the book ''APL Language'' was not published until March 1975). Because the manual was written by Adin Falkoff and
Kenneth E. Iverson Kenneth Eugene Iverson (17 December 1920 – 19 October 2004) was a Canadian computer scientist noted for the development of the programming language APL. He was honored with the Turing Award in 1979 "for his pioneering effort in programming l ...
, Hui thought it reasonable to say he learned APL from Falkoff and Iverson. As a summer student in 1975 and 1976, Hui worked at
I. P. Sharp Associates I. P. Sharp Associates (IPSA) was a major Canadian computer time-sharing, consulting and services firm of the 1970s and 1980s. IPSA is well known for its work on the programming language APL, an early packet switching computer network named IPSA ...
(IPSA) in
Calgary Calgary ( ) is the largest city in the western Canadian province of Alberta and the largest metro area of the three Prairie Provinces. As of 2021, the city proper had a population of 1,306,784 and a metropolitan population of 1,481,806, maki ...
, on workspaces for statistical and probability calculations. The major attraction of the job was the unrestricted computer time with access to APL. After receiving a BSc degree with first class honors in
computer science Computer science is the study of computation, automation, and information. Computer science spans theoretical disciplines (such as algorithms, theory of computation, information theory, and automation) to practical disciplines (includin ...
in 1977, Hui worked for two years as a full-time
programmer A computer programmer, sometimes referred to as a software developer, a software engineer, a programmer or a coder, is a person who creates computer programs — often for larger computer software. A programmer is someone who writes/creates ...
and analyst in the new
Edmonton Edmonton ( ) is the capital city of the Canadian province of Alberta. Edmonton is situated on the North Saskatchewan River and is the centre of the Edmonton Metropolitan Region, which is surrounded by Alberta's central region. The city anc ...
office of IPSA, where his main duty was to support clients in their use of APL
time-sharing In computing, time-sharing is the sharing of a computing resource among many users at the same time by means of multiprogramming and multi-tasking.DEC Timesharing (1965), by Peter Clark, The DEC Professional, Volume 1, Number 1 Its emergence ...
. He attended the APL79 conference in
Rochester, New York Rochester () is a city in the U.S. state of New York, the seat of Monroe County, and the fourth-most populous in the state after New York City, Buffalo, and Yonkers, with a population of 211,328 at the 2020 United States census. Located i ...
, where Iverson gave two papers: "The Role of Operators in APL" and "The Derivative Operator". On the way, Hui stopped at IPSA in Toronto and obtained a copy of "Operators and Functions" BM Research Report No. 7091, 1978 He has been studying that paper and its successors ever since. In September 1979, Hui entered the Department of Computer Science at the
University of Toronto The University of Toronto (UToronto or U of T) is a public research university in Toronto, Ontario, Canada, located on the grounds that surround Queen's Park. It was founded by royal charter in 1827 as King's College, the first institu ...
, and received his MSc in May 1981 with a thesis on "The complexity of some decompositions in matrix algebra." After completing his master's degree, Hui worked from 1981 to 1985 as an APL
systems analyst A systems analyst, also known as business technology analyst, is an information technology (IT) professional who specializes in analyzing, designing and implementing information systems. Systems analysts assess the suitability of information syst ...
and programmer for the Alberta Energy Company in Edmonton. In February 1982 Hui purchased ''A Source Book in APL'' (1981), in which the most memorable papers were "The Design of APL" (1973), "The Evolution of APL" (1978), and "Notation as a Tool of Thought" (1980). Hui's work was described at the APL85 conference in a paper, "DESIGN: A Financial Modelling System", written jointly with his supervisor, Fred Appleyard. The basic objects in the system were in "Direct Definition" (Iverson, 1976, 1980), and Falkoff and Iverson's ''The Design of APL'' was cited. Hui left Alberta Energy shortly after being promoted to a non-APL and non-programming position, and was out of work, and had no access to computers, from September 1985 to April 1986. This gave him plenty of time for intense study of Iverson's ''Rationalized APL'' (1983) and ''A Dictionary of the APL Language'', as it was then named. Hui and his wife Stella had two children. He died on October 16, 2021 from cancer.Roger Hui - 1953 - 2021
also found at http://jsoftware.com/pipermail/programming/2021-October/059091.html


J language

In the early 1990s, Ken Iverson and Hui began collaborating on an advanced continuation of an APL-like language which they named J. The improvements were intended to fix some of the persistent character set issues that had plagued APL since its inception, and to add new advanced features such as support for parallel ''multiple instruction, multiple data'' ( MIMD) operations. It was intended that the J language be an improvement over then extant APL. The J interpreter and language continue to evolve. In 1996, he received the Kenneth E. Iverson Award for Outstanding Contribution to APL.


References


External links

*, JSoftware, creators of ''J''
Memorial webpage
{{DEFAULTSORT:Hui, Roger 1953 births 2021 deaths Canadian computer programmers Hong Kong emigrants to Canada I. P. Sharp Associates employees Naturalized citizens of Canada Programming language designers University of Alberta alumni University of Toronto alumni APL implementers