Giter Site home page Giter Site logo

tttardigrado / hsderiv Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 2.04 MB

Haskell implementation of Brzozowski derivatives for regular expressions.

License: MIT License

Haskell 100.00%
brzozowski-derivative functional-programming haskell regex regex-matcher regular-expression theory-of-computation

hsderiv's Introduction

HsDeriv

Tests CI Build CI License

Logo

Haskell implementation of Brzozowski derivatives for regular expressions.

Technologies

  • Haskell
  • Parsec
  • Haskeline

References

Papers

Blog Posts

Implementations

  • In gleam by Julian Schurhammer
  • In elm by Hazim Avdal
  • In idris by Mathias Pedersen

hsderiv's People

Contributors

gforce4760 avatar tttardigrado avatar

Watchers

 avatar

hsderiv's Issues

Add smart constructors

Use smart constructors to simplify the tree while building and deriving expressions

ex:

seq Eps a = a
seq a Eps = a
seq Nil _ = Nil
seq _ Nil = Nil
seq a b   = Seq a b

Add regex matching repl

:r sets the new regex

:r regex

:q quits the repl

:p prints the parsed version of the current regex

any other input just matches to the current regex (printing either accepted or rejected)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.