MonoDevelop is the Third IDE for F#
MonoDevelop has become the third IDE to support Microsoft’s F# language. With .NET support essentially dead on the Eclipse IDE and WebMatrix being targeted for causal developers, it is likely to be the last IDE to add support for it in the foreseeable future.
The feature list for MonoDevelop’s F# Plugin include:
- Identifier completion - The editor automatically suggests identifiers such as member names after the "." symbol. You can also hit Ctrl+Space to get all identifiers available in the current scope (such as variable and type names).
- Tool tips - When you place mouse pointer over an identifier, a tool tip with information about the identifier appears. Tool tips usually show type signatures, list of members of types etc.
- Background type-checking - The F# compiler runs as a background process and checks the edited file for parsing errors as well as type errors. Errors are immediately shown using red underlining.
- F# Interactive pad - The plugin adds F# Interactive as a new tool window to MonoDevelop. You can use it to interactively evaluate F# code written in the editor as well as for writing simple code snippets to test things.
The source code for F# on MonoDevelop is licensed under Apache 2.0 and can be found at https://github.com/fsharp.
MonoDevelop started as a fork of SharpDevelop, the only other general purpose .NET IDE not made by Microsoft. (Other .NET IDEs do exist, but are dedicated to a specific language such as Delphi Prism.) To better support Linux, SharpDevelop’s original user interface was ported to Gtk#. Since then MonoDevelop and SharpDevelop continued to diverge, with MonoDevelop becoming the IDE of choice for Novell’s commercial offerings such as MonoTouch. (Again, there are third-party IDEs that support MonoTouch development.) Meanwhile SharpDevelop remained a Windows-only product and is in the process of replacing the user interface with one built using WPF.