[Update 05-09_2007: minor change to both source and binary release to fix F# interactive intergration, if you download a version before this date please redownload]
Recently I’ve been working on integrating F# into #Develop. It’s a nice, well designed and developed platform, and despite one or two glitches integration has gone pretty quick. My aim is to get the F# made part of the #Develop distribution, but, rightly so, there are a couple of legal and quality hurdles that need to be reached before it can be integrated into their main release. I’m sure these hurdles will be over come soon, but I decide to do an alpha release from my own site to solicit feedback and in case there’s anyone out there eager to see this sort of thing.
Installation of Binaries:
Create a new folder FSharpBindings in \AddIns\AddIns\BackendBindings
Copy FSharpBinding.addin, fsharpbinding.dll, fsharpbinding.pdb and Templates folder to this new directory
Copy ICSharpCode.Build.Tasks.dll, ICSharpCode.Build.Tasks.pdb and SharpDevelop.Build.Fsc.targets to \Bin the versions of ICSharpCode.Build.Tasks.dll and ICSharpCode.Build.Tasks.pdb that exist in this directory should be over written
fsharpbinding.dll: This can be build with either visual studio, #Develop or msbuild using FSharpBinding.VisualStudio.sln or FSharpBinding.SharpDevelop.sln
ICSharpCode.Build.Tasks.dll: This requires the #Develop source. Add fsc.cs to this ICSharpCode.Build.Tasks project and add a reference to System.Configuration
I have tested this installation using F# version 188.8.131.52 and SharpDev 2.2.1. 2648, if you intend to us another version F#, or it is not installed in the default location, you will need set an AppSettings key “alt_fs_bin_path” to give the location of the compilers bin directory. If you want to use another version of #Develop you will probably need to rebuild the binaries.
Reorder of Source Files
F# Interactive integration
TODO List (roughly in order of priority):
Clever search for the F# compiler and other binaries
Support .fsi interface files
Support Automatic Error Checking
Create Icons to avoid icon theft!