Skip to content
/ chuff Public
forked from Maddiaa0/chuff

An error resistant Huff parser for lsps

Notifications You must be signed in to change notification settings

Philogy/chuff

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Mard!

Mard is a huff-language parser with a focus on error recovery at the parsing stages. It's purpose is to produce a partial AST that can be used to grant rich error feedback.

Warning Mard is currently under active development and is not suited for production use. Go for it, but it probably won't do what you want it to.

Wat do?

Mard is a huff parser build with chumsky. A "parser library for humans with powerful error recovery". Using chumsky as a base reduces the effort to build a parser that can recover from errors and reproduce a functional AST, which is essential if you want to show errors across the whole file.

Why

lsp

This software is being written to start the effort in creating a functional lsp for huff. Huff is a hard language to learn as there are so many footguns. Creating an LSP aims to provide feedback to people learning that will reduce the pain of it all.

TODO

  • Complete Parsing Mvp
  • File based span support
  • Create example folder with an example of rich error feedback
  • Create sister project for ast verification

About

An error resistant Huff parser for lsps

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 99.8%
  • Makefile 0.2%