8

For my current class, I have to pick and research a Programming Language (or popular scripting language) and answer quite a few questions about it, write a paper, and do some example programs displaying it's strengths and weaknesses compared to other languages.

I'm currently looking into F# as a possible candidate, my problem is I can't find any information stating (at least explicitly) why F# was created. I've found many strengths and a few weaknesses of F# but do these necessarily imply reasons as to why it was created?

Does anyone know any links or reads that would explicitly state why F# was created and/or the history of F# (particularly things like, what the creator was thinking, and stuff like that)? And yes, I've been searching and will continue to, I just can only find implicit reasons, and I was hoping to find something stating explicitly reasons why F# was created.

7
  • 5
    Please share with us some links as to what you've read so far. Aug 30, 2013 at 15:17
  • Mostly, Wikipedia, Fsharp.org, and something from the microsoft website that I can't find the link to atm. Oh, and this, en.wikibooks.org/wiki/F_Sharp_Programming/Introduction
    – Shelby115
    Aug 30, 2013 at 15:19
  • I would start with the F part and what that could possibly relate to. (Hint: it means Functional)
    – Ampt
    Aug 30, 2013 at 15:19
  • I feel I understand why it was created, I was hoping to find something to reference for the sake of a paper that explicitly states why.
    – Shelby115
    Aug 30, 2013 at 15:23
  • I did just stumble upon this: extremetech.com/computing/… Seems to be pretty close to what I'm looking for. I'm going to keep looking though. Aiming for 100% in all my classes this semester haha.
    – Shelby115
    Aug 30, 2013 at 15:30

1 Answer 1

15

When .net originally came out it was supposed to be a platform that any language could run on top of, so there was a strong push by MS to port a large number of different types of languages to the .net platform. You had microsoft contributing heavily if a project organically sprung up like ironpython, and if none did MS wrote it themselves. F# started as a port of OCaml to the .net framework to cover the strongly typed functional language spot that had no organic project.

Just in case the Don Syme link ever dies here is the main take away from it:

"The visional design of the .NET platform was very much expected to be a multilanguage platform from the start. Right back in 1998, just in fact as our research group in programming languages started at Microsoft and I joined the team and then other 10 of us joined the team, we were approached by a guy called James Plamondon, who started the project called Project 7, which was about getting 7 academic and 7 industrial programming languages on each side to target the .NET common language runtime and really check out if it was good enough, to see if design changes could be made early on in the design process of .NET to make sure it was good enough for a range of programming languages."

and a little further down

"I took what I learned from .NET Generics and saw that there was a chance to do a ML like language fitted very closely with .NET. During this time we had a go doing Haskell for .NET, we actually got a long way in doing that, but in the end there is quite a lot of dissonance between Haskell and .NET."

5
  • 9
    Citation from Don Syme: infoq.com/interviews/F-Sharp-Don-Syme Aug 30, 2013 at 15:36
  • I'll accept this as the answer, though I feel it's not complete without the link jozafg provided.
    – Shelby115
    Aug 30, 2013 at 15:41
  • Thanks @jozefg I was having trouble finding that link again.
    – stonemetal
    Aug 30, 2013 at 15:44
  • There had been an organic project - Nemerle.
    – Den
    Aug 30, 2013 at 16:49
  • So much for my theory that JavaScript had something to do with it. Aug 31, 2013 at 0:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.