Relativ
the-super-tiny-compiler
Relativ | the-super-tiny-compiler | |
---|---|---|
1 | 19 | |
5,205 | 27,413 | |
- | - | |
7.6 | 0.0 | |
about 3 years ago | 3 months ago | |
C++ | JavaScript | |
GNU General Public License v3.0 only | Creative Commons Attribution 4.0 |
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.
Relativ
-
In-depth software programming
C++: Build your own VR headset for $100
the-super-tiny-compiler
-
ESLint: under the hood
Now, those concepts are a whole entire world to explore, and this is out of the scope of this article. I suggest the reading of the Chapters 4, 5 and 6 of the book Crafting Interpreters by Robert Nystrom for a wider (but still practical) understanding of those subjects. Another practical great resource to look at is The SuperTiny Compiler. To explore them from a theorical point of view, you can find A LOT of resources from books or courses online.
-
Abstract Syntax Trees and Practical Applications in JavaScript
The super tiny compiler by Jamie
-
GCC uses GCC to compile itself
I am currently writing a much more intricate version of the Super Tiny Compiler (https://github.com/jamiebuilds/the-super-tiny-compiler) in Rust, only I plan on handling many basic operations, essentially a compiler for a MUCH simpler version of Go. Great project idea btw, for anyone who wants to explore compilers. But in doing so, have really found a new respect for just what is going on when you gcc -o garbageprogram mytrashcode.c
-
how would you make a programming language if you were a complete beginner?
Here, at least take this floatie: https://github.com/jamiebuilds/the-super-tiny-compiler
-
Any good resources for reading code?
Outside of this, I recently learned about The Super Tiny Compiler which was a project written to be read. Mind you, it has a vast amount of comments, which may be more of a leg-up than you're asking for.
-
Ask HN: Guidance on writing a source to source compiler (transpiler)
You could start here:
https://github.com/jamiebuilds/the-super-tiny-compiler
That converts from lisp-like to javascript. Really though this is a big field, and there are lots of resources out there.
To get started look at your input language; you'll need to lex and parse that. Then massage the parsed structure into the appropriate output.
You can see me convert brainfuck to C, or x86 assembly language here:
https://github.com/skx/bfcc
- The Super Tiny Compiler
What are some alternatives?
linux-vr-player-or-something - Very simple VR video player using libmpv and openhmd.
write-a-C-interpreter - Write a simple interpreter of C. Inspired by c4 and largely based on it.
OpenKneeboard - An open source Kneeboard
es6-cheatsheet - ES2015 [ES6] cheatsheet containing tips, tricks, best practices and code snippets
AdvancedMovement - Advanced Movement Module for Pavlov VR (AMM)
minipack - 📦 A simplified example of a modern module bundler written in JavaScript
NOMI-VR - NOMI VR Is An Inexpensive, Steam VR Compatible, Open Source VR Headset With Finger Tracking, Haptic Gloves.
flowy - The minimal javascript library to create flowcharts ✨
lucidgloves - Arduino/ESP32 based DIY VR Haptic gloves. Compatible with SteamVR via OpenGloves.
fslightbox - An easy to use vanilla JavaScript plug-in without production dependencies for displaying images, videos, or, through custom sources, anything you want in a clean overlying box.
TrueOpenVR-Core - Core, docs
raspberry-pi-os - Learning operating system development using Linux kernel and Raspberry Pi