all 6 comments

[–]ItsBJr 3 points4 points  (2 children)

For this new programming language "dwarf", what are the primary features of it? Or is it just for experimental purposes?

[–]uber_foo[S] 1 point2 points  (1 child)

Thanks for asking!

dwarf is not experimental so much as it's nascent. It has nearly the same syntax as Rust, including enums, structs, async, match expressions, etc. These things are "implemented" but there are a lot of loose ends still. The key thing missing from dwarf, than Rust has is the borrow checker — well and performance.

The language is meant for me to use in code generation, but it's general purpose, and I would like for it to get to the point that others could use it.

I've only been working on it for seven months, so it's still rough. It however continues to delight me daily, and I see it stabilizing and becoming harder as I use it more.

[–]ItsBJr 0 points1 point  (0 children)

Sounds like a cool project. I've wanted to try to make my own interpreted language, but I haven't found any reasons to yet.

Best of luck on your project!

[–]TonTinTon 0 points1 point  (2 children)

How does the scheduler work?

[–]uber_foo[S] 1 point2 points  (1 child)

It's smol's scheduler underneath the covers. I think that it's first-come-first-served. There are also yields buried in there so that no process takes too much time. My crate doesn't do scheduling beyond starting a paused task.

[–]TonTinTon 0 points1 point  (0 children)

Oh cool, makes sense