Melody was posted here (not by myself), but the project was still in very early stages, and so I wanted to post an update that Melody now has:<p>- A Babel plugin - https://www.npmjs.com/package/babel-plugin-melody<p>- NodeJS bindings via WASM - https://www.npmjs.com/package/melodyc<p>- A playground - https://melody-playground.vercel.app/<p>- VSCode and JetBrains extensions - https://marketplace.visualstudio.com/items?itemName=yoavlavi.melody https://plugins.jetbrains.com/plugin/18693-melody<p>- A CLI and REPL<p>- A documentation book - https://yoav-lavi.github.io/melody/book/<p>The idea behind Melody is to represent regular expressions in a readable, maintainable format that plays nicely with larger projects, multiple people, diffs and so forth, while adding some QOL features.<p>See the repository here: https://github.com/yoav-lavi/melody
I like innovation, and I'm all for making programming easier.<p>That said, from the example documentation..
<start>;<p>option of "v";<p>capture major {
some of <digit>;
}<p>".";<p>capture minor {
some of <digit>;
}<p>".";<p>capture patch {
some of <digit>;
}<p><end>;<p>// v1.0.0<p>Show that to someone who isn't familiar with regex, and they'll have no idea what it means.<p>Someone who is familiar with regex, will likely prefer the regex format.
I can see the value of this but I worry that the implementation of support for it has rushed ahead of what "it" is. To be successful I think a formal definition of how say 90% of regex expressions would be represented should be created and reviewed.