When I interviewed Arthur Whitney in 2009[0], Roger came up again and again. (He only appears in the transcript once, but Arthur spoke of him several times, always with great fondness.) Roger clearly had an outsized influence on Arthur -- in addition to his particularly close relationship with computer science pioneer Ken Iverson. Condolences to his family -- and to his close friends like Arthur, who I know must be grieving this loss.<p>[0] <a href="https://queue.acm.org/detail.cfm?id=1531242" rel="nofollow">https://queue.acm.org/detail.cfm?id=1531242</a>
For those of you that are not familiar with Roger Hui, he is the author of "An Implementation of J"[0]. Which is a fantastic resource if you want to know how to implement an array programming language.<p>[0]: <a href="https://www.jsoftware.com/books/pdf/aioj.pdf" rel="nofollow">https://www.jsoftware.com/books/pdf/aioj.pdf</a>
One of his memorable blog posts was on generating permutations in array languages[1]. In his spoiler explanation he comments about generating permutations of 0..4 starting from permutations of 0..3 and a "magical matrix" to do that, and then discusses:<p>"<i>What is the “best” perm function I can write in APL? This “best” is a benchmark not only on my own understanding but also on advancements in APL over the years.</i>" and then shows one he wrote in 1981, one from 1987, then "<i>I worked on perm from time to time in this period [1990-2007] but in J rather than in APL</i>", then one from 2008, and one from 2015, and where future improvements might be found. In a video talk on it he says "some of these sub-expressions can be improved, but the APL language cannot yet express the thought that I have"[2]. I just like that pattern of returning to the same problems and polishing both the language and solution over multiple decades.<p>[1] <a href="https://www.dyalog.com/blog/2015/07/permutations/" rel="nofollow">https://www.dyalog.com/blog/2015/07/permutations/</a><p>[2] <a href="https://youtu.be/e0rywC7-i0U?t=2254" rel="nofollow">https://youtu.be/e0rywC7-i0U?t=2254</a><p>[3] talk is taken from his writing here, I think: <a href="https://www.jsoftware.com/papers/50/" rel="nofollow">https://www.jsoftware.com/papers/50/</a>
This is shattering. I am glad he was able to be with family and friends; Roger was an immense help to me as I learned how to navigate APL/J and build a TSDB in the latter. He never let on that there were any health concerns - I feel guilty now for sending him so many messages over the last half decade.<p>I hope he gets the recognition he deserves. What he and Iverson have developed is truly unique and powerful.<p>EDIT: A bit macabre but Ken had his stroke on the 16th of October (2004) and died on the 19th. I know it’s coincidence but my mammalian brain can’t help but ascribe significance.
I had the pleasure of working with him for several years. I count the paper we wrote together[0] (well, it was mostly him that wrote it, but we worked out the theory together) as one of my greatest achievements.<p>[0] <a href="https://www.jsoftware.com/papers/TAOaxioms.htm" rel="nofollow">https://www.jsoftware.com/papers/TAOaxioms.htm</a>
I thought it was interesting that the notice about Roger's death was by Eric Iverson. The name struck me because Ken Iverson was the creator of APL and I wondered if they were related. Looking it up, they are. Eric is Ken's son -- so interest in APL has gone across generations.
Rest in peace. Roger Hui deserves a black bar just about as much as anyone.<p>A (likely incomplete) list of his talks can be found here; if you have the time, you should watch at least some of them: <a href="https://aplwiki.com/wiki/Roger_Hui" rel="nofollow">https://aplwiki.com/wiki/Roger_Hui</a><p>He dedicated a substantial portion of his life to the design and implementation of two of the last truly-unique languages in our field.<p>We all owe him a degree of debt. If you use numpy, for example, you're actually closer to the heritage of his work than you might imagine; about two steps removed. Start from the top of this thread and work your way down (I am sorry for the source of the link, but none of the frontends cover threads this long and with this many authors):<p><a href="https://twitter.com/teoliphant/status/1115283666995941377" rel="nofollow">https://twitter.com/teoliphant/status/1115283666995941377</a>
I met Roger briefly as a presentation on J at SFSU.<p>He seemed like a mellow, straightforward person and I enjoyed how he explained a one-page long set of c-macros that expanded into the initial J compiler (written by Ken Iverson or someone else).<p>I remember asking him, "How do you debug something like that" and he said "don't make mistakes".
I wanted to learn more about "J" and this person, it is a nifty language<p>Some people might enjoy this thread on "A look at the J language: the fine line between genius and insanity (2012)"
<a href="https://news.ycombinator.com/item?id=16393873" rel="nofollow">https://news.ycombinator.com/item?id=16393873</a><p>Also this answer here at math stack exchange
<a href="https://math.stackexchange.com/questions/856153/the-j-programming-language-is-it-useful-for-mathematics/1761055#1761055" rel="nofollow">https://math.stackexchange.com/questions/856153/the-j-progra...</a>
RIP to a real one. I've played with all the major array langs, but J is the one I keep coming back to. There's still so much more I have to learn from this guy.
Met him a long time ago when J was relatively new, through a friend. Didn’t know anything about him except he was a friend colleague of my friend. And we was such a mellow, soft-spoken, nice guy. Who I learned a few months later was both seriously smart and had made this thing that had inspired me.<p>Real loss.
This is sad news indeed. A couple of things about Roger:<p>The less important one: his Erdős number is 2, thanks to his coauthoring "A generalization of the fast LUP matrix decomposition algorithm and applications" with Shlomo Moran whose Erdős number is 1. (It's not shown on his Wikipedia page, but he's listed at <a href="https://en.wikipedia.org/wiki/List_of_people_by_Erd%C5%91s_number#H_2" rel="nofollow">https://en.wikipedia.org/wiki/List_of_people_by_Erd%C5%91s_n...</a> .)<p>Roger was a great example of "precision with humanity", like Ken Iverson. This was obvious in many ways, and here's an unusual one: I've managed various technical groups over the decades, and Roger was the only person who, when he said he'd have something done by a particular date, was finished by that date, every single time. When he ran into a snag I would sometimes tell him that it would be okay if it took longer, but no, as far as he was concerned he'd made a commitment and was going to meet it, even if that meant working a lot of extra hours.<p>Rohan Jayasekera
I first ran into J from their ICFP submission one year. The J implementation did quite well in the contest despite being shockingly terse, and running on an interpreter. That prompted me to figure out why, and I learned a lot of interest if unconventional ideas as a result.
I’ve been seeing more and more of these unfortunate postings lately. I often only hear of these contributions or even the languages themselves after the person passes on, which is unfortunate. Hope his family is ok.
RIP<p>Is this the reason for the black stripe on HN? Is there a way to click the stripe or otherwise see the reason for it, other than scanning posts for the sad news?