bread | rumi | |
---|---|---|
1 | 3 | |
5 | 59 | |
- | - | |
0.0 | 0.0 | |
over 1 year ago | over 1 year ago | |
C | C++ | |
MIT License | GNU General Public License v3.0 or later |
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.
bread
-
February 2021 monthly "What are you working on?" thread
After several failed projects, I finally started work on (and have made a lot of progress on) a programming language project that I'm really happy with. My language bread is an expression based, dynamically typed, object oriented language scripting language. When I learned rust, I was particularly excited by the idea of having if-expressions (rather than if-statements) in an imperative language. I went with that idea, and made a language where pretty much everything (function definitions, loops, class definitions) is an expression. I'm not sure how useful the language is, but it's been a lot of fun to write and hopefully I'll find some use for it.
rumi
-
Extensible syntax?
Yes, with rumi, here is an extreme example (look at other tests, they are nicer): https://github.com/MCSH/rumi/blob/master/tests/test8.rum
-
Zero-cost abstractions and "meta programming"
I've written a proof of concept programming language explicitly for this purpose called rumi. Take a look https://github.com/mcsh/rumi . The thing that makes this possible is a macro language that is basically the language itself, and can communicate with the compiler to define macros / query syntax / change the generated code etc. Basically you have the power to write an entirely new programming language with the macros.
-
February 2021 monthly "What are you working on?" thread
Here is the code to rumi: https://github.com/MCSH/rumi
What are some alternatives?
lisp - A lisp JIT compiler and interpreter built with cranelift.
karuta - Karuta HLS Compiler: High level synthesis from prototype based object oriented script language to RTL (Verilog) aiming to be useful for FPGA development.
Foray - A concatenative language written in Zig
pika - A WIP little dependently-typed systems language
lang - A toy language I'm making in my spare time.
passerine - A small extensible programming language designed for concise expression with little code.
Ameyo - Habit + task tracking Chrome extension built with React, Typescript, SCSS, Express, MongoDB, Firebase, + Jest
stonks
ww - A "lexerless" (unified lexer) LALR(1) parser generator supporting dynamic grammar modification
wyvern - The Wyvern programming language.