Peter Schachte
Peter Schachte
For example, the following do not compile: ``` !x - 1 # should decrement x 10 - !x # should subtract x from 10 ``` These elicit these compiler errors:...
This code ``` resource to_parse:string def {partial} digit(?d:int) use !to_parse { to_parse = [?ch | ?to_parse] ch >= '0' & ch
For example, this code compiles: ``` def reverse1(lst:list(T)):list(T) = reverse1(lst, []) def reverse1(lst:list(T), rest:list(T)):list(T) = if {lst = [?h|?t] :: reverse1(t, [h|rest]) | else :: rest } ``` but not...
Using some suitable heuristic, automatically pass some procedure input and output arguments in global variables. This will be beneficial for arguments passed around widely through the program, and probably detrimental...
It's time to abandon llvm-hs. It's dead, Jim. There hasn't been a commit to it in a year, and it's just not making progress. We need to support both Intel...
The point of this is to allow users to specify equivalence-preserving code transformations that will improve efficiency. One example: ``` ?t = a ,, b print(t) ``` should be optimised...
This will permit a much more satisfactory fix for #414. Until then, procs that use the multiple resources with the same resource name (and different modules) can't be supported, and...
This would be like having guards in case labels in Haskell. Syntax would be something like: ``` case foo in { [] :: ... handle empty list ... [?singleton] where...
Wybe issues an error message if you call a test procedure or function outside of a test context. So code like ``` if { lst = [] :: ?z =...
This project will replace the garbage collector in the Wybe system with compiler-mediated direct allocation and deallocation. The details are to be determined, but there are a number of different...