ruby
cpplinks
ruby | cpplinks | |
---|---|---|
6 | 15 | |
40 | 3,999 | |
- | - | |
0.0 | 9.5 | |
5 days ago | 4 days ago | |
Ruby | ||
GNU General Public License v3.0 or later | - |
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.
ruby
-
Assemblers and linkers resources
I have some embedded assembler libraries (usable from within a language, as opposed to the input being text) on my PL resources site. Some of the smaller ones like the tiny one we build during Compiling a Lisp strip some of the magic from assemblers. YJIT's assembler API is a bit messy but the implementation is clean enough.
-
Ruby YJIT Ported to Rust
The Cargo.toml file gives the answer: https://github.com/Shopify/ruby/blob/rust-yjit-upstreaming/y...
There is only a single, optional dependency which is apparently only used for testing.
- SubX: A minimalist assembly language for a subset of the x86 ISA
- YJIT: Yet Another Ruby JIT
-
Shopify/microjit-bench
Hi there! The repo linked in this post is our small set of benchmarks. For those interested in microjit I would link them to our little readme file: https://github.com/Shopify/ruby/blob/microjit/doc/ujit.md
cpplinks
-
Needed an advice in compilers dev!
linking and loading: https://github.com/MattPD/cpplinks/blob/master/executables.linking_loading.md - in addition to the aforementioned books and blog posts, there also some pretty good talks: https://github.com/MattPD/cpplinks/blob/master/executables.linking_loading.md#talks
-
How do you test compiler projects?
For more compilers correctness* resources see https://github.com/MattPD/cpplinks/blob/master/compilers.correctness.md
-
Assemblers and linkers resources
As for linkers and loaders, see https://github.com/MattPD/cpplinks/blob/master/executables.linking_loading.md
-
The Danger of Atomic Operations
More: https://github.com/MattPD/cpplinks/blob/master/atomics.lockfree.memory_model.md
-
How to move onto intermediate c++?
Take the red pill and see how deep the rabbit hole goes... https://github.com/MattPD/cpplinks/ https://github.com/shafik/cpp_learning
-
How should I learn x64 instructions?
x86-64 tutorials here should be a good starting point: https://github.com/MattPD/cpplinks/blob/master/assembly.x86.md#tutorials
-
Where should a static analysis beginner start?
See also static analysis resources (more C++-oriented, although some of the readings are general): https://github.com/MattPD/cpplinks/blob/master/analysis.static.md#readings-books and https://gist.github.com/MattPD/71b63a3e1600c2b52e1db80fa2834e60#correctness-in-practice (formal methods and program analysis in industry).
-
Follow-up resources to Crafting Interpreters
Further readings: Book recommendations in https://github.com/MattPD/cpplinks/blob/master/compilers.md#books as well as program analysis resources (in particular lattice theory, type systems and programming languages theory, related notation): https://gist.github.com/MattPD/00573ee14bf85ccac6bed3c0678ddbef#program-analysis-resources
-
Apple M1 CPU Microarchitectures (Firestorm and Icestorm): instruction tables describing throughput, latency, and uops
Microarchitectural performance analysis research is a pretty active and interesting area--see also: https://github.com/MattPD/cpplinks/blob/master/performance.tools.md#microarchitecture
-
GDB TUI mode
For more on GDB see: https://github.com/MattPD/cpplinks/blob/master/debugging.md#gdb
What are some alternatives?
maru - Maru - a tiny self-hosting lisp dialect
nvim-gdb - Neovim thin wrapper for GDB, LLDB, PDB/PDB++ and BashDB
cosmopolitan - build-once run-anywhere c library
computer-architecture-and-systems-resources - A curated list of Computer Architecture and Systems resources
yjit-metrics - "Tasks for benchmarking, building and collecting stats for YJIT"
cppcoro - A library of C++ coroutine abstractions for the coroutines TS
Opal - Ruby ♥︎ JavaScript
lm8 - A custom 8-bit computer and software suite
microjit-bench - Set of benchmarks for the YJIT CRuby JIT compiler and other Ruby implementations.
.NET Runtime - .NET is a cross-platform runtime for cloud, mobile, desktop, and IoT apps.
Cwerg - The best C-like language that can be implemented in 10kLOC.
clang-tutor - A collection of out-of-tree Clang plugins for teaching and learning