Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
lboasso
searching Neon…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
31 ms
·
1.
▲
by
lboasso
1y ago
Author of oberonc here, thanks for trying it out :)
2.
▲
by
lboasso
3y ago
I think Fogus was able to summarize it quite well in his "Six works of Computer Science-Fiction" blog post [0]: "Wirth’s magnum opus is the quintessential example of Computer Science alternative-history world-building."
3.
▲
by
lboasso
3y ago
You are right, but as you can see at page 11 (Figure 4 rightmost AST) of The Oberon System Family paper [0], Wirth's approach was extended to "hint" destinations as well. [0] https://www.research-collection.ethz.ch
4.
▲
by
lboasso
3y ago
It would be great to have a simple Virgil x86-64 backend based only on the destination-driven code generation technique, and compare the performance of the generated code (and compilation speed) with the official optimizing x86-64 backend.
5.
▲
by
lboasso
3y ago
It is interesting to see that this approach has been used by Niklaus Wirth in most of his compilers, see "Compiler Construction - The Art of Niklaus Wirth" by Hanspeter Mössenböck [0]. This technique was also described by David R
6.
▲
by
lboasso
3y ago
The Oberon programming language is 37 years old. Since it is a memory safe language a compiler for the JVM can be written (with some workarounds), for example see the self-hosting compiler oberonc [0]. [0] https://github.com/
7.
▲
by
lboasso
4y ago
If you want to try out only the Oberon language, you might be interested in oberonc [0] an oberon-07 self-hosting compiler for the JVM. There are other several Oberon implementations for different platforms listed here[1] [0] https:/&
8.
▲
by
lboasso
4y ago
If you want to try out only the Oberon language, you might be interested in oberonc [0] an oberon-07 self-hosting compiler for the JVM. There are other several Oberon implementations for different platforms listed here[1] [0] https:/&
9.
▲
by
lboasso
5y ago
If you want to try out only the Oberon language, you might be interested in oberonc [0] an oberon-07 self-hosting compiler for the JVM. There are other several Oberon implementations for different platforms listed here[1] [0] https:/&
10.
▲
by
lboasso
5y ago
If you want to try out only the Oberon language, there are several Oberon implementations for different platforms, including embedded systems, native windows executables, and the Java virtual machine: http://oberon07.com/com
11.
▲
by
lboasso
6y ago
When I read this book I had an hard time running and compiling the source code included. If you want to read the book and try out the example compiler (oberon0), you can follow the instructions here: https://github.com/lboas
12.
▲
by
lboasso
6y ago
When I benchmarked oberonc [0], an oberon-07 self-hosting compiler for the JVM, it took about 100 ms with a hot VM on a old Intel i5 @ 2.80GHz. That compiler follows the same one-pass compilation approach. [0] https://github.com&
13.
▲
by
lboasso
7y ago
You might be interested in oberonc [0] an oberon-07 self-hosting compiler for the JVM. [0] https://github.com/lboasso/oberonc
14.
▲
by
lboasso
7y ago
> And a lot of the compilers and tooling seems to be weirdly Windows-oriented When I read this book I had an hard time running and compiling the source code included. If you want to read the book and try out the example compiler (oberon0
15.
▲
by
lboasso
7y ago
If you want to try out the Oberon language, there are several Oberon implementations for different platforms, including embedded systems, native windows executables, and the Java virtual machine: http://oberon07.com/compiler
16.
▲
by
lboasso
7y ago
I wrote a self-hosted one pass compiler exactly to showcase Niklaus Wirth's approach to writing compilers: https://github.com/lboasso/oberonc We often forget this alternative way (with its pros and cons).
17.
▲
by
lboasso
7y ago
Here is the repo: https://github.com/lboasso/oberon0 Yes, you can write small Oberon-0 programs and compile them with an Oberon-07 compiler, but it is simpler to just use the Oberon-0 compiler from the repo above.
18.
▲
by
lboasso
7y ago
With oberonc you can compile the source code at http://www-oldurls.inf.ethz.ch/personal/wirth/CompilerConstr... with minor changes to the I/O library calls. I can push the changes in a repo if you are inter
19.
▲
by
lboasso
7y ago
For the excellent introductory book "Compiler Construction" by Niklaus Wirth, you could find compilers for the implementation language at http://oberon07.com/compilers.xhtml . If you have a JVM installed, you could
20.
▲
by
lboasso
8y ago
Several other Oberon implementations exist for different platforms, including embedded systems, native windows executables, and the Java virtual machine: http://oberon07.com/compilers.xhtml
21.
▲
by
lboasso
8y ago
or as pragmatic alternative "Tcl: An Embeddable Command Language" [0]. [0] https://web.stanford.edu/~ouster/cgi-bin/papers/tcl-usenix.p...
22.
▲
by
lboasso
8y ago
or as pragmatic alternative "Tcl: An Embeddable Command Language" [0]. [0] https://web.stanford.edu/~ouster/cgi-bin/papers/tcl-usenix.p...
23.
▲
by
lboasso
8y ago
If you are interested in the Oberon-07 language, I made a port of Wirth's compiler for the JVM, see [0]. Several other implementations exist for different platforms [1]. [0] https://github.com/lboasso/oberonc [1]
24.
▲
by
lboasso
8y ago
I enjoyed most of it. In particular: * Ch. 4 "Modules Should Be Deep" * Ch. 10 "Define Errors Out Of Existence" * Ch. 20 "Designing for Performance"
25.
▲
by
lboasso
8y ago
Another excellent resource is "A Philosophy of Software Design" [0], from John Ousterhout (known for Tcl/Tk, Raft, RAMCloud, Log-Structured File System). Like Niklaus Wirth, he is striving for designs that fight complexities
26.
▲
by
lboasso
8y ago
Go was heavily influenced by Oberon, in fact Robert Griesemer is a former Wirth's PhD.
27.
▲
by
lboasso
8y ago
I have been following the development of Oberon-07 (and submitted minor fixes to Prof. Wirth) over the years. The compiler's source code is the fruit of refinements and simplifications accumulated over 30+ years (more if you include hi
28.
▲
by
lboasso
8y ago
as mentioned in another comment, an example of bootstrapping compiler for Oberon on the JVM is: https://github.com/lboasso/oberonc
29.
▲
by
lboasso
8y ago
Bootstrapping a compiler is fun. I wrote a self-hosting compiler for the Oberon-07 language, targeting the JVM: https://github.com/lboasso/oberonc Initially the project was written in Java, after enough features were w
30.
▲
by
lboasso
9y ago
Wirth's compilers generated reasonably good code: 80% of the performance of optimizing compilers with 20% of the effort. The first Java client jit compiler, was developed by Robert Griesemer (former PhD student of Wirth). The design of
More ›