HOPL: Difference between revisions

Jump to navigation Jump to search
2,865 bytes added ,  17:05, 20 March 2020
Detach from SIGAPL
m (1 revision imported: Migrate from miraheze)
(Detach from SIGAPL)
Tag: Removed redirect
Line 1: Line 1:
#REDIRECT [[SIGAPL#HOPL]]
The '''History of Programming Languages conference''' is a conference held by [[wikipedia:SIGPLAN|SIGPLAN]] to discuss and record the history of programming language development. It is notable to APL historians because of the very detailed papers presented at the 1978 and 2020 conferences. [[wikipedia:ACM|ACM]] SIGPLAN is the Special Interest Group on Programming Languages; while [[SIGAPL]] is a chapter of SIGPLAN, it is not directly associated with HOPL.
 
To date, there have been four HOPL conferences: they are held infrequently, but with increasing frequency. The first, in 1978, featured a presentation by [[Ken Iverson]] and [[Adin Falkoff]] on APL<ref>[[Adin Falkoff|Falkoff, A.D.]], and [[Ken Iverson|K.E. Iverson]], [https://dl.acm.org/doi/abs/10.1145/960118.808372 ''The Evolution of APL''] ([https://www.jsoftware.com/papers/APLEvol.htm web]), ACM SIGPLAN Notices, Volume 13, Number 8, 1978-08.</ref>. The fourth conference, in 2020, features an APL presentation again, this time by [[Morten Kromberg]] and [[Roger Hui]]<ref>HOPL IV. [https://hopl4.sigplan.org/track/hopl-4-papers#List-of-Accepted-Papers "HOPL IV List of Accepted Papers"].</ref>.
 
Conference years appear to be given by the expression:
<source lang=apl>
      1962++\⌽⍳16
1978 1993 2007 2020 2032 2043 2053 2062 2070 2077 2083 2088 2092 2095 2097 2098
</source>
 
[[File:BadgeAPL.png|thumb|right|One of HOPL IV's conference badges]]
=== HOPL IV conference badge ===
 
One of the conference badges for HOPL IV features an APL expression <math>\div+\!/\div(\mathcal E \ne 0)/\mathcal E</math> or <source lang=apl inline>÷+/÷(E≠0)/E</source> which computes multiple aspects of electrical circuits:
 
{|
|<source lang=apl inline>÷</source>||<source lang=apl inline>+/</source>||<source lang=apl inline>÷</source>||<source lang=apl inline>(E≠0)</source>||<source lang=apl inline>/</source>||<source lang=apl inline>E</source>
|-
| colspan=6|<hr/>
|-
|||||||||||<source lang=apl inline>E</source>||is a vector of real numeric values
|-
|||||||<source lang=apl inline>(E≠0)</source>||||||produces a Boolean mask indicating which components have a non-zero value
|-
|||||||<source lang=apl inline>(E≠0)</source>||<source lang=apl inline>/</source>||<source lang=apl inline>E</source>||uses the mask to filter the components, thus removing the zeros
|-
|||||<source lang=apl inline>÷</source>||||||||finds the reciprocal of those
|-
|||<source lang=apl inline>+/</source>|||||||||||sums them up
|-
|<source lang=apl inline>÷</source>||||||||||||computes the reciprocal of that
|}
 
The equivalent mathematical formula would be quite involved:
 
:<math>1\over\displaystyle\sum_{i=1}^n\frac1{E_i}[E_i\neq 0]</math>
 
== External links ==
 
* [[wikipedia:HOPL|HOPL]]
* [http://www.sigplan.org/ SIGPLAN] website
* [https://hopl4.sigplan.org/ HOPL IV] website
 
== References ==
<references />
{{APL community}}

Navigation menu