/LEX

Generator for non blocking lexer

Primary LanguageScalaApache License 2.0Apache-2.0

Name

LEXX

Tags

Async, Non blocking, streaming, reactive, functional, scala, session types, behavior types, TDD, Type driven development, Test Driven development, lexer, scanner, parser, compiler-compiler, compiler generator

Description

Simple Lexer/Scanner-Generator written in Scala (for now). Generates non blocking Lexer

Motivation

There are many Lexer-Generator out there. Many way better than this one. But no one generates non blocking lexer.

Feature

Speed!
Async (push vs pull)
Generate Behavoir/Session Types
Binary and text-protocols (http 1 with upgrade to http 2)
support multible char sets with change of charset on the fly
safe! memory, control flow
Type mapping from generator language to runtime language

how?

Getting Started

Prerequisites

Installing

Running the tests

Deployment

Built With

Examples

  • JSON
  • XML
  • LISP
  • HTTP 1(.1) and 2 with RFC3229 Delta encoding, chunked encoding
  • SMTP
  • NNTP
  • NTP
  • IMAP
  • DNS
  • SSE Server Side Events
  • CSV
  • Markdown

Contributing

Versioning

Authors

  • Bernd Dutkowski

License

Not yet decided

other implementation

https://en.wikipedia.org/wiki/Comparison_of_parser_generators