Expand description
§orco
IDK, S2S compiler? Developed on streams
§Goals
orco development is currently guided by those goals:
- Effortless language interop. It should be able to generate very easy bindings for libraries compiled through it. Ideally those bindings should work even with regular compilers when linking the library later.
- Being able to run the resulting code in any environment. Transpiling to C for compatibility with any platform, using native libraries, transpiling to JS or LUA.
- Following on #2, injecting runtime features, such as:
- Hot code reloading
- JIT
- Debugging
- Interpreting
§Roadmap for next few streams
You can watch me do this live on
Twitch and Youtube
Currently working with rust frontend and C backend (reference backend),
going through some of rust by example and figuring out generics.
Re-exports§
pub use codegen::CodegenBackend;pub use types::Type;pub use sinter;
Modules§
- attrs
- Attributes are a way to pass information about a function to the backend
- codegen
- Code generation, outside of declaration Code generation APIs, used to actually define functions and generate code.
- types
- Type enums
Structs§
- Symbol
- An Interned string
Traits§
- Declaration
Backend - Declare items before defining them. Think of it as an interface to generate C headers.