grapl
mirage
grapl | mirage | |
---|---|---|
8 | 32 | |
671 | 2,433 | |
- | 0.5% | |
9.8 | 8.7 | |
over 1 year ago | 4 days ago | |
Rust | OCaml | |
Apache License 2.0 | ISC License |
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.
grapl
-
Rust – Faster compilation with the parallel front-end in nightly
https://github.com/grapl-security/grapl/
I just did a clean build `cargo build`, 19 minutes 44 seconds.
I added 1 line (`dbg!("foo")`) and it took 14.76s
-
Introduction to Curp Protocol
Awesome. So, CURP was pretty inspiring for the work I did on Grapl. Grapl Schemas had to define conflict resolution algorithms.
https://github.com/grapl-security/grapl/blob/main/etc/exampl...
As you can see here, there are some special built-ins that aren't important (keys, timestamps) but you can see there's @immutable (FWW) and @increment_only.
This meant that our graphs formed a big CRDT, which meant that every operation commuted, which meant that we could do weird things with our consensus. Reads could happen on stale data, writes could be dropped, we could read from two inconsistent databases and resolve the inconsistency in memory, etc. I even hacked this into ScyllaDB by encoding each merge function into an integer, and setting that as the TIMESTAMP, for when replication merging happened to the values - this meant we could perform writes (repeatedly) without reading a value first, and with no coordination between nodes. What I didn't have was a native solution that could take advantage of these constraints.
As you can tell, this project is obviously very interesting to me. I ran through this pretty quickly but I'll dig in more soon. I'm just excited to see this.
- Transitioning to Rust as a company
- Rust for cyber security
-
Why Rust is a great choice for startups
Rust, Python and Go. Props to you for being sensible with technology choice.
https://github.com/grapl-security/grapl
-
Is Rust Web Yet?
That's great for you and your team, but looking at https://github.com/grapl-security/grapl it seems like your needs are pretty different from most web developers.
- NPM malware and what it could imply for Cargo
mirage
-
Gokrazy – Go Appliances
Interesting, and thanks.
I didn't know about those. I kind of thought you may have used MirageOS, which I had read about earlier. It is done in OCaml.
https://mirage.io/
- Mirage – A programming framework for building type-safe, modular systems
-
What's Zig got that C, Rust and Go don't have? [video]
Unix system programming in OCaml (2014)
https://ocaml.github.io/ocamlunix/
"MirageOS is a library operating system that constructs unikernels for secure, high-performance network applications across a variety of cloud computing and mobile platforms."
https://mirage.io/
-
PostgreSQL reconsiders its process-based model
That was/is part of the promise of the whole unikernel thing, no?
https://mirage.io/ or similar could then let you boot your database. That said, it's not really taken off from what I can tell, so I'm guessing there's more to it than that.
-
Writing an OS in Rust to run on RISC-V
MirageOS is not Rust, but in the ballpark!
https://mirage.io/
-
Container runtime as a static binary?
OCaml MirageOS? https://mirage.io/
- OCaml 5.0 Multicore is out
- Ask HN: Operating Systems built with functional languages?
-
Is there an operating systems that is a runtime of a programming language?
MirageOS is a runtime for OCaml to create unikernels. They describe themselves as "library operating system". Probably not quite what you were asking for, but I think it's quite interesting for certain use cases (e.g. running services as standalone unikernels in VMs or embedded devices instead of "traditional" programs on top of a general purpose OS).
What are some alternatives?
ntex - framework for composable networking services
unikraft - A next-generation cloud native kernel designed to unlock best-in-class performance, security primitives and efficiency savings.
cargo-deny - ❌ Cargo plugin for linting your dependencies 🦀
oberon-riscv - Oberon RISC-V port, based on Samuel Falvo's RISC-V compiler and Peter de Wachter's Project Norebo. Part of an academic project to evaluate Project Oberon on RISC-V.
demo-rust-axum - Demo of Rust and axum web framework with Tokio, Tower, Hyper, Serde
Carp - A statically typed lisp, without a GC, for real-time applications.
nodo - Pre-emptively created repository so the design can be discussed on the issue tracker before commits are made (repo name may change)
linuxkit - A toolkit for building secure, portable and lean operating systems for containers
rfcs - RFCs for changes to Rust
Mezzano - An operating system written in Common Lisp
rust-wiki-backup - A backup of the Rust wiki
Lupine-Linux - Linux in Unikernel Clothing