java-probabilistic-earley-parser
JFlex
java-probabilistic-earley-parser | JFlex | |
---|---|---|
1 | 1 | |
34 | 575 | |
- | 1.0% | |
0.0 | 4.3 | |
over 1 year ago | 8 months ago | |
Java | Java | |
MIT License | GNU General Public License v3.0 or later |
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.
java-probabilistic-earley-parser
-
[2015 day 19] Part 2 [spoilers!]
Finally, I looked for java libraries for Earley parsers, and found this one. Constructing the grammar was straightforward, and I had the advantage of being able to "weight" each production rule with a 1-epsilon probability, meaning it would selectively produce the shortest possible parse derivation first.
JFlex
-
How to write your own language plugin for IDEA (part 1)
Perhaps, the easiest way to create a lexer for IDEA is to use JFlex. The GrammarKit plugin already contains implementation and allows you to generate a lexer from .bnf file or from .flex file (with more customization options). An example for the Monkey language can be viewed here, a more complex one for Frege - here.
What are some alternatives?
gll-combinators - A parser combinator library based on the GLL algorithm
ANTLR - ANTLR (ANother Tool for Language Recognition) is a powerful parser generator for reading, processing, executing, or translating structured text or binary files.
intellij-erlang - Erlang IDE
RE-flex - A high-performance C++ regex library and lexical analyzer generator with Unicode support. Extends Flex++ with Unicode support, indent/dedent anchors, lazy quantifiers, functions for lex and syntax error reporting and more. Seamlessly integrates with Bison and other parsers.
lexer - A lexical analyzer based on DFA that is built using JS and supports multi-language extensions / 一个基于DFA的支持多语言扩展的JS版开源词法分析器
intellij-rainbow-brackets - 🌈Rainbow Brackets for IntelliJ based IDEs/Android Studio/HUAWEI DevEco Studio/Fleet
Grammar-Kit - Grammar files support & parser/PSI generation for IntelliJ IDEA
intellij-frege - IntelliJ IDEA plugin for Frege language
parsertl-playground - A web based playground for parsertl/lexertl
jsonschema2pojo - Generate Java types from JSON or JSON Schema and annotate those types for data-binding with Jackson, Gson, etc
wyldcard - A clone of Apple's HyperCard and HyperTalk scripting language.
clex - clex is a simple lexer generator