3

Could you recommend an open source library written in F# which provides generic types for FA construction and basic algorithms (NFA to DFA transformation, FA minimization ...)?

Cœur
  • 34,719
  • 24
  • 185
  • 251
gsv
  • 267
  • 1
  • 8

3 Answers3

1

My first thought would be to use the state machine monad, which has be blogged/written/discussed/produced several times, a couple of references are below.

http://fsharpcode.blogspot.com/2008/12/f-state-monad-type-state-state-state-of.html
http://codebetter.com/blogs/matthew.podwysocki/archive/2009/12/30/much-ado-about-monads-state-edition.aspx

although this doesn't give you the translations you want... Might be a place to start.

Snark
  • 1,624
  • 15
  • 27
0

Probably not what you are looking for but a quick and dirty way to get some FA things working would be to write an equivalent context free grammar for your FA then using fsyacc?

Jurgen
  • 451
  • 2
  • 13
0

Jolt.NET

It does not fulfil all your requirements: It's in C#, and it does not seem to support translation to DFA or minimization. At least it's usable from F# and could be used as a starting point. I've never used it myself, so I can't vouch for its suitability or quality.

See also NFA/DFA implementation in C#

Community
  • 1
  • 1
Joh
  • 2,370
  • 20
  • 30