RawParser
Showing how a grammar driven parser can be implemented (by FransFaase)
mexdown
A lightweight integrating markup language (by smasher164)
RawParser | mexdown | |
---|---|---|
3 | 2 | |
8 | 13 | |
- | - | |
0.0 | 10.0 | |
almost 2 years ago | about 4 years ago | |
C | Go | |
MIT License | MIT License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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.
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.
RawParser
Posts with mentions or reviews of RawParser.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-03-21.
-
Literate programming is much more than just commenting code
I have started working on a program that can parse Markdown files with fragments of C code and weave those fragments into a C program that can be compiled. For an example input, see https://github.com/FransFaase/RawParser#documentation
- Show HN: JWEB (a modern implementation of the CWEB Literate Programming system)
-
Show HN: Carburetta – C/C++ Fused Scanner and Parser Generator
The distinction between a scanner and a parser is somewhat arbitrary. One could use one and the same formalism for it. The scanner usually deals with things that are considered 'atomic' elements in the language, while grammar is used for 'compound' elements consisting of one or more other elements. If there are seen as one and the same, than it naturally flows that the scanner is called from the parser, and not how it is traditionally done, that the scanner acts as a first pass. This seems a logical approach, but in practices, when scanning is context sensitive, requires the implementation of all kinds of hacks. Also, the treatment of keywords (where it is possible that they are case insensitive) it is better to have a grammar for parsing a keyword 'identifier' and a check whether the result matches the keyword. For pure performance this would not be the best solution, but I understand that Carburetta is not design for that. I have been developing a parser that makes no distinction between scanning and parsing in C, which I called RawParser: https://github.com/FransFaase/RawParser . It also offers more powerful grammar constructs and gives examples on how to implement memory management in a uniform way.
mexdown
Posts with mentions or reviews of mexdown.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-02-14.
-
Include diagrams in your Markdown files with Mermaid
I like this approach of using the tag associated with a code block to determine how to render the output. It's the same approach I take in my markdown-derived markup language: https://github.com/smasher164/mexdown.
The top example there takes a GraphViz description and passes it into the dot command, placing the resultant SVG into the HTML output.
-
Show HN: JWEB (a modern implementation of the CWEB Literate Programming system)
This is similar to the approach I take in my markup language: https://github.com/smasher164/mexdown. Pipe the body of a code block to the command's stdin, and replace the code block with its output.
What are some alternatives?
When comparing RawParser and mexdown you can also consider the following projects:
clerk - ⚡️ Moldable Live Programming for Clojure
Mermaid - Edit, preview and share mermaid charts/diagrams. New implementation of the live editor.
sicmutils - Computer Algebra, Physics and Differential Geometry in Clojure.
aasvg - Turn ASCII art into SVG
markup - Determines which markup library to use to render a content file (e.g. README) on GitHub
jweb - The JWEB system of Literate Programming
asciitosvg - Create beautiful SVG renderings of ASCII diagrams.