honey-potion
oberon-risc-emu
Our great sponsors
honey-potion | oberon-risc-emu | |
---|---|---|
6 | 2 | |
233 | 254 | |
4.7% | - | |
6.4 | 0.0 | |
about 1 month ago | about 2 years ago | |
C | C | |
GNU General Public License v3.0 only | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
honey-potion
-
Targetting C
Hi! We have been translating Elixir to C (which we translate to eBPF) in HoneyPotion. We used mostly Chapter 15 of Appel's Modern Compiler Implementation in Java to implement the code generator (that's "15. Functional Programming Languages"). I think the choice of C has been good thus far. The implementation of Elixir's pattern matching took much work, but if we had chosen a higher level target, we would still have to translate that to eBPF. Here's the entry point for the translator.
-
Suggestion for a backend?
We have been working on a tool that translates Elixir to eBPF. We actually translate eBPF to C. Now that we have more stuff working, I really wonder if generating C was a good choice.
-
Intersection of PLs with the OS
That's exactly what Honey Potion does, when we translate Elixir into Linux' eBPF!
oberon-risc-emu
-
Intersection of PLs with the OS
Do you mean something like Project Oberon? The garbage collector runs at the OS level and invoking commands is just calling a procedure from a module which is then compiled and executed. There's a working emulator that can run on a few platforms.
-
Catalog of resources related with Oberon programming language
FWIW there are a few emulators for the Oberon RISC chip:
In C: https://github.com/pdewacht/oberon-risc-emu
In JavaScript and Java: https://schierlm.github.io/OberonEmulator/
(The JS one runs in the browser so you can launch an emulated Oberon OS from the little web form there. It has the compiler included!)
In Python: https://pythonoberon.readthedocs.io/en/latest/ (My own project.)
What are some alternatives?
pl0c - Self-hosting PL/0 to C compiler to teach basic compiler construction from a practical, hands-on perspective.
fping - High performance ping tool
TripleCross - A Linux eBPF rootkit with a backdoor, C2, library injection, execution hijacking, persistence and stealth capabilities.
libfirm - graph based intermediate representation and backend for optimising compilers
amacc - Small C Compiler generating ELF executable Arm architecture, supporting JIT execution
libbpf - Automated upstream mirror for libbpf stand-alone build.
linux-nitrous - Mirror of https://gitlab.com/xdevs23/linux-nitrous
mir - A lightweight JIT compiler based on MIR (Medium Internal Representation) and C11 JIT compiler and interpreter based on MIR
wasmtime - A fast and secure runtime for WebAssembly
site - Код главной страницы сайта oberon.org
pwru - Packet, where are you? -- eBPF-based Linux kernel networking debugger
Oberon - Oberon parser, code model & browser, compiler and IDE with debugger