Our upcoming line of .NET developer tools has very ambitious goals. We set out to design complete solutions to the most common development problems. In order to accomplish these goals, we realized that our products would need to completely understand your .NET code. So we would need a complete .NET parser. But we wanted to go further, so we decided it is important for code analysis to happen in real-time. So we would need a very fast .NET parser. And our solutions would not be the best unless we had 100% complete integration with the IDE you use every day. So our parser would need to hosted within Visual Studio .NET.
FMS has a long history in delivering source code analysis solutions. In 1989 we shipped our first analysis tools for Borland's PAL language. In 1994, we shipped the world's first full VB/Access Basic parser to support Microsoft Access Basic. In 1996 we shipped the first complete code analysis tools for Microsoft's VBA language, and in 1998 we added full support for Visual Basic 6 and all dialects of VBA.
With the advent of .NET, we realized that we would need to start from scratch. .NET's amazing new concept of language parity, IL, CLI and the Common Language Runtime means that traditional parsing solutions aren't up to the job. We needed a parser that was built on .NET for .NET. Starting with the PDC preview version of .NET in May, 2000, we commenced on a long journey with one goal: to create the world's fastest complete third-party .NET source code parser.
This goal dictated that our new parser would need:
The result is the FMS .NET parser, the core of all our upcoming .NET developer tools. The FMS .NET parser fully understands C# and Visual Basic .NET code to the lowest level. In fact, the parser is so complete that with a bit of additional work (i.e. an IL generator) we could actually create compiled .NET programs from source code. With fast performance and tight integration with Visual Studio .NET, you can be assured that our .NET developer solutions will offer you radical improvements in productivity and code quality.