oxide-lang
otpcl
Our great sponsors
oxide-lang | otpcl | |
---|---|---|
7 | 1 | |
125 | 36 | |
- | - | |
0.0 | 0.0 | |
about 2 years ago | over 1 year ago | |
Rust | Erlang | |
MIT License | 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.
oxide-lang
-
Lust 🦞
well this exists.
-
Lagoon - a tiny scripting language in Rust
Nice! A while ago I have worked on a similar project: Oxide. So I'll share my thoughts based on that.
- Oxide, scripting language with a Rust-like syntax, written in Rust
- Oxide, scripting language with a Rust-like syntax
-
What’s everyone working on this week (16/2021)?
Polishing as type type casting for my hobby rust-like language. It works just fine, but have to think semantics better for edge cases
-
I created Oxide lang, Scripting Language with Rust-influenced syntax
https://github.com/tuqqu/oxide-lang (there are examples there!)
otpcl
-
Parser Combinators in Elixir
I guess I can chime in on the "by hand" front, since that's how I ended up going about the first non-trivial parser I wrote[1]: https://github.com/otpcl/otpcl/blob/master/src/otpcl_parse.e...
I'd say the difficulty was moderately high, but that was with no real prior experience with parsers. With that water under the bridge, I'd now rate it at around moderate effort. And the result was gaining a clear and precise understanding of the implicit state machine transitions, and being able to control exactly where and how those transitions happen, such that I didn't really need much of a lexer (the "lexer" just tags each character with its position, so that I didn't have to track that separately in the actual parser code itself).
That said, the result is a bit of a tangled mess; it didn't start that way, but eventually the parsing logic got complex enough that I needed to resort to Erlang's preprocessor macros, and while the end result is manageable through some judicious organization, in hindsight I probably could've done the same with functions, and in a more reusable and maintainable way. If I ever get around to another parser rewrite, I might try using parser combinators or some approximation thereof instead.
----
[1]: Technically the second or third, since I rewrote it a couple times as one can see from the commit history - although said history is a bit hard to pin down across all the renames of the relevant file.
What are some alternatives?
prost - PROST! a Protocol Buffers implementation for the Rust Language
pocketlang - A lightweight, fast embeddable scripting language.
common_comments - Simply counts occurrences of phrases.
Dictu - Dictu is a high-level dynamically typed, multi-paradigm, interpreted programming language.
milli - Search engine library for Meilisearch ⚡️
gravity - Gravity Programming Language
evdi - Extensible Virtual Display Interface
endbasic - BASIC environment with a REPL, a web interface, a graphical console, and RPi support written in Rust
cacao - Rust bindings for AppKit (macOS) and UIKit (iOS/tvOS). Experimental, but working!
Mond - A scripting language for .NET Core
senile - Collecting todo statements from code because we usually either ignore or forget about them.
Crafting Interpreters - Repository for the book "Crafting Interpreters"