Unanswered Questions
9 questions with no upvoted or accepted answers
14
votes
0
answers
307
views
What is the relationship between STG and RVSDG?
GHC is an optimizing Haskell compiler. Since Haskell is lazy and mutation is rare, control flow and data flow are often very closely aligned. Therefore, it is often most useful to think about ...
12
votes
0
answers
224
views
Why were OS/360 PL/I procedure calls so expensive?
In Guy Steele’s famous paper Debunking the “expensive procedure call” myth or, procedure call implementations considered harmful or, LAMBDA: The Ultimate GOTO, he describes the poor performance of ...
10
votes
0
answers
226
views
What styles of interpreter are not well-supported by RPython?
The RPython toolchain translates interpreters to JIT compilers. The interpreter may be written in any style; the corresponding JIT compiler is defined by annotations on the main loops of the ...
8
votes
0
answers
88
views
How does GADTs as in Haskell-like languages compare to indexed families in dependent types?
In Haskell, GADTs are only indexed by types, while indexed families in DT are mainly indexed by terms. With the presence of without-K, it is hard to refute cases just by unifying type terms, while in ...
6
votes
0
answers
112
views
Extending Hindley Milner with (mutual) recursion
What's a good approach for extending Hindley Milner with mutual recursion without de-sugaring to let+fix+records?
My thinking is (assuming no polymorphic recursion)
Collect mutually recursive lets ...
4
votes
0
answers
139
views
Why has there been little recent work on GPU compiler phase optimization?
While GPU compiler phase optimization has been shown to improve performance significantly (e.g. https://link.springer.com/chapter/10.1007/978-3-319-75178-8_35), there has been very little follow-up ...
3
votes
0
answers
136
views
Do any languages provide arrays that are always powers of 2 in length?
In the early 1970s, I had university a co-op job at a place where one of the main languages used was like a glorified calculator.
It provided two stacks, and all variables and operators were a single ...
2
votes
1
answer
94
views
Is there a way to define expressiveness that includes a notion of computational complexity?
There is a nice answer here providing an exposition of Felleisen's definition of expressiveness. But there is a missing piece for me.
It feels like adding tail calls to a language that lacks any ...
2
votes
0
answers
155
views
Why would an APL implementation include "Deep Transpose"?
APL64 includes a ⎕DTR system function which, as far as I can tell, is equivalent to ⍉¨⍉ i.e. the transposed outer array with ...