| is gettings some nice new pattern matching features in the next stable release (1.42.0)


in short:
• subslice patterns, e.g. [x0, .., x1] => match only first and last element
• nested-OR patterns, e.g. Some(x | y) == Some(x) | Some(y)
• binding inner fields with @
• move & ref bindings in same pattern


Stacking enums for the parser AST structure

can a nested enum with 3 levels of nesting can be considered a design flaw or is this more common than my imagination allows?

What I'm thinking of is splitting the parser tokens into a compiled core branch and a user extendable branch. The core branch has variants for container nodes and leaf nodes. Each of those variants has variants for every core syntax element. The user extendable variant is a placeholder for now.


looking into the crate for implementation. It is a parser combinator library, which allows for building up each parsing step with a custom function instead of defining the grammar of a context free language as in the case of parser generators (if I understand correctly).

newbie dev:
okay, let's make the code as general as possible from the get go! Let's make a trait with a factory function!

pub trait Foo {
fn bar() -> impl Foo;

fuuuuuuu... okay, make it general later when advanced traits have been researched.


Created the crate and started working on for the | generation

The parser works in a two step process, by first finding the markers for block elements and afterwards processing the inline. This is almost the same as in the | implementation, but I had some alterations, which allowed for more complex syntax.

The regular expressions are generated by collecting all syntax elements, making one regex for each step

Starting with this toot. Search the hashtag for updates on the development process of my app/framework/library written in with planned scripting support.

Epistropy is an approach at reusable , which builds up a personal , that can be used for more efficient retrieval | | | |
with a simple language at it's base ( inspired by & )

Alright, I'd say that my confidence has surpassed the minimal level to start the project (see previous toots). Technically I've learned this in a little more than a week, if you only count spare time. So one could definitely learn Rust properly in two weeks, assuming the right motivation and sufficiently quick understanding.

I'm considering tooting about the development process with a casual diary under the tag to keep me motivated. More info soon.