frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Show HN: Lamina – A compiler backend that is not LLVM or Cranelift

https://github.com/SkuldNorniern/lamina
3•skuldnorniern•1h ago
Recently, I've been working on Lamina, a compiler infrastructure that generates native assembly for multiple architectures without relying on LLVM or Cranelift. It's designed for building compilers for new languages, educational projects, and any projects that can utilize a custom syntax of code generation.

Instead of depending on external backends, Lamina provides a complete pipeline from a single SSA based IR directly to the supported target's assembly generation. The IR is readable, also provides a IRBuilder API that is easy to use via programmatic construction.

For better management of the code generation process, in the future, it will use a new pipeline IR -> MIR -> native assembly with the optimization passes.

Key features: - Direct code generation: IR -> assembly/machine code without LLVM/Cranelift - SSA based IR: single assignment form optimized for analysis and optimization passes - MIR based codegen(experimental): new intermediate representation with register allocation and advanced optimizations - IRBuilder API: fluent interface for building modules, functions, blocks, and control flow - Readable IR: easy to debug and lower than high level languages - Zero external backend dependencies: simplified builds and transparent pipeline while being faster to build

Optimization passes (experimental MIR flow only): - Control flow: CFG simplification, jump threading, branch optimization - Loop optimizations: loop fusion, loop invariant code motion, loop unrolling - Code motion: copy propagation, common subexpression elimination, constant folding - Function optimizations: inlining, tail call optimization - Arithmetic: strength reduction, peephole optimizations

Performance: On a 256×256 matrix multiplication benchmark (300 runs), Lamina's experimental MIR-based codegen (which includes all optimization passes) generates code comparable to C/C++/Rust (within 1.8x) and faster than Java, Go, JavaScript, and Python. The experimental MIR based flow's result is much faster than the IR-> Assembly based codegen.

Written in Rust (2024 edition), Current Version 0.0.7. Optional nightly features available for SIMD, atomic placeholders, and experimental targets.

Show HN: Awesome J2ME

https://github.com/hstsethi/awesome-j2me
5•catstor•49m ago•2 comments

Show HN: Wasda – Experience transformer attention as music

https://github.com/farukalpay/wasda
2•kinders•1h ago•0 comments

Show HN: Lamina – A compiler backend that is not LLVM or Cranelift

https://github.com/SkuldNorniern/lamina
3•skuldnorniern•1h ago•0 comments

Show HN: Interactive research papers (a big step up from ArXiv HTML)

https://sciencestack.ai
5•cjlooi•2h ago•4 comments

Show HN: F32 – An Extremely Small ESP32 Board

https://github.com/PegorK/f32
44•pegor•16h ago•4 comments

Show HN: I made a down detector for down detector

https://downdetectorsdowndetector.com
549•gusowen•1d ago•161 comments

Show HN: CTON: JSON-compatible, token-efficient text format for LLM prompts

https://github.com/davidesantangelo/cton
7•daviducolo•3h ago•1 comments

Show HN: OctoDNS, Tools for managing DNS across multiple providers

https://octodns.readthedocs.io/en/latest/
23•gardnr•14h ago•1 comments

Show HN: DNS Benchmark Tool – Compare and monitor resolvers

https://github.com/frankovo/dns-benchmark-tool
47•ovo101•18h ago•27 comments

Show HN: RowboatX – open-source Claude Code for everyday automations

https://github.com/rowboatlabs/rowboat
123•segmenta•1d ago•40 comments

Show HN: I built a Chrome Extension to inject custom UTM parameters into URLs

https://chromewebstore.google.com/detail/utm-bandit/hgkdaigafpdboigkdogdffiedbbbajep
2•RyanDavid•1h ago•0 comments

Show HN: Reproducible Dotfiles with Nix Flakes

https://github.com/momeemt/config
2•momeemt•6h ago•0 comments

Show HN: Browser-based interactive 3D Three-Body problem simulator

https://trisolarchaos.com/?pr=O_8(0.6)&n=3&s=5.0&so=0.00&im=rk4&dt=1.00e-4&rt=1.0e-6&at=1.0e-8&bs...
236•jgchaos•1d ago•110 comments

Show HN: I built a synth for my daughter

https://bitsnpieces.dev/posts/a-synth-for-my-daughter/
1264•random_moonwalk•1w ago•209 comments

Show HN: Guts – convert Golang types to TypeScript

https://github.com/coder/guts
99•emyrk•1d ago•30 comments

Show HN: Vibe Prolog

https://github.com/nlothian/Vibe-Prolog
25•nl•20h ago•4 comments

Show HN: Marimo VS Code extension – Python notebooks built on LSP and uv

https://github.com/marimo-team/marimo-lsp
54•manzt•18h ago•4 comments

Show HN: A subtly obvious e-paper room air monitor

https://www.nicolin-dora.ch/blog/en-epaper-room-air-monitor-part-1/
64•nomarv•2d ago•27 comments

Show HN: Parqeye – A CLI tool to visualize and inspect Parquet files

https://github.com/kaushiksrini/parqeye
159•kaushiksrini•2d ago•35 comments

Show HN: ESPectre – Motion detection based on Wi-Fi spectre analysis

https://github.com/francescopace/espectre
207•francescopace•2d ago•50 comments

Show HN: Continuous Claude – run Claude Code in a loop

https://github.com/AnandChowdhary/continuous-claude
163•anandchowdhary•4d ago•59 comments

Show HN: Reversing a Cinema Camera's Peripherals Port

https://3nt3.de/blog/reversing-fs7-comms
47•3nt3•1w ago•2 comments

Show HN: PrinceJS – 19,200 req/s Bun framework in 2.8 kB (built by a 13yo)

https://princejs.vercel.app
150•lilprince1218•2d ago•68 comments

Show HN: PgEdge Control Plane, a declarative API for multi-region Postgres mgmt

https://github.com/pgEdge/control-plane
4•pgedge_postgres•14h ago•0 comments

Show HN: Tokenflood – simulate arbitrary loads on instruction-tuned LLMs

https://github.com/twerkmeister/tokenflood
21•twerkmeister•1w ago•0 comments

Show HN: ChunkBack – A Fake LLM API server for testing apps without paying

https://github.com/4shub/chunkback
5•forthwall•20h ago•0 comments

Show HN: Unflip – a puzzle game about XOR patterns of squares

https://unflipgame.com/
180•bogdanoff_2•1w ago•53 comments

Show HN: Kalendis – Scheduling API (keep your UI, we handle timezones/DST)

https://kalendis.dev
18•dcabal25mh•2d ago•8 comments

Show HN: Ice Breaker Games

https://icebreakergames.art
3•ethanYIAI•22h ago•0 comments

Show HN: Fixing a single pointer bug unlocked 1M+ row JSON parsing on Windows

4•hilti•22h ago•0 comments