开发者_运维知识库
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 8 years ago.
Improve this questionCould 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 ...)?
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.
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?
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#
精彩评论