pavex
rustc_codegen_clr
pavex | rustc_codegen_clr | |
---|---|---|
2 | 5 | |
1,556 | 975 | |
- | - | |
9.4 | 9.7 | |
9 days ago | 6 days ago | |
Rust | Rust | |
Apache License 2.0 | MIT 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.
pavex
-
Pavex DevLog #5: redesigning our runtime types [Rust web framework]
The update goes into the details of the rationale driving the new design choices, which might of interest if you use or design web frameworks. The project is developed in the open on GitHub if you want to have a look under the hood.
-
Pavex, progress report #2: route all the things
The code is also available on GitHub if you want to have a look.
rustc_codegen_clr
- Rust in .NET Projects
- RustPython
-
The Rust compiler backend for .NET can now compile std with (numerous) errors, and supports allocation (Box, Vec, String, etc.)
After adding support for statics and many bug fixes related to pointers/slices, my compiler backend targeting .NET can finally build a barely working version of the standard library. It can be loaded into the .NET runtime, allocate memory (e.g. for a Box, Vec or String), push elements to Vec's and String's (currently without relocations). There are also some other parts of the standard library that already work, but I want to stress that the project is still fairly early into development (I started working on it late August), and you should expect most things in std to not work at all. Things working is the exception, not the rule. This newest set of commits allows you to use a small subset of the standard library, within code running inside the .NET runtime. | Here is some Rust code that I wrote to demo the ability to use the Rust std within the .NET runtime:
-
.NET backend for Rust now compiles 1000 functions within core.
This is a small update about my rustc backend, which is supposed to allow compilation of Rust code into .NET assemblies. This would allow you to use Rust crates in C#, and C# libraries in Rust.
-
Need help modeling some type constraints
I am currently working on a rust codegen targeting .NET. One of the features I currently work on is a .NET interop layer, mycorrhiza, and I am having some trouble modeling certain type constraints. There are 2 ways to store a reference to a GC type in Rust: 1. By a handle - this type has some cost associated with it, but can be stored anywhere (heap, stack). 2. By a raw reference - raw references may only live on the stack. They can be copied, and behave almost exactly like a normal rust type (with exceptions related to transmutes and enums), as long as they are stored on the stack.
What are some alternatives?
anansi - A simple full-stack web framework for Rust
ffidji - 🐶 FFIDJI is a tool to automatically generate bindings between languages, like calling Rust code from C# for instance.
rspack - A fast Rust-based web bundler 🦀️
wrapped_mono - Wrapper around mono library. Allows easy loading and interop between code written for the .NET framework and Rust.
harbor - A language that ports⚓: examining the limits of compilation⚙️.
openEcommerce - .NET 6, ASP.NET Core 6, Entity Framework Core 6, C# 10, Angular 14, CQRS, Clean Architecture,SOLID, DDD.
rust-web-developer-roadmap - Roadmap to becoming a Rust Web Developer in 2022
kalem.rs - Fegeya Kalem.rs, Rust implementation of Kalem, work-in-progress.
rspack - A fast Rust-based web bundler 🦀️ [Moved to: https://github.com/web-infra-dev/rspack]
extism - The framework for building with WebAssembly (wasm). Easily load wasm modules, move data, call functions, and build extensible apps.
chiselstrike - ChiselStrike abstracts common backends components like databases and message queues, and let you drive them from a convenient TypeScript business logic layer
customasm - 💻 An assembler for custom, user-defined instruction sets! https://hlorenzi.github.io/customasm/web/