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
  • 37,241
  • 25
  • 195
  • 267
gsv
  • 277
  • 1
  • 9

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,664
  • 14
  • 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,380
  • 20
  • 31