Announcement

Collapse
No announcement yet.

Mono Picking Up F# Support For Linux, Mac OS X, Etc

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Mono Picking Up F# Support For Linux, Mac OS X, Etc

    Phoronix: Mono Picking Up F# Support For Linux, Mac OS X, Etc

    Last week Microsoft decided to open-source their F# programming language in the form of its compiler and their language's core libraries. Microsoft's F# was opened up under the Apache 2 license and following that release comes a MonoDevelop plug-in and an announcement from Miguel de Icaza that they will begin distributing F# in Mono...

    http://www.phoronix.com/vr.php?view=ODc3OQ

  • #2
    F#

    What the F#?

    sorry, i couldn't resist.

    Comment


    • #3
      A,B,C,C++,D,F#? What happened to E?

      Comment


      • #4
        Originally posted by curaga View Post
        A,B,C,C++,D,F#? What happened to E?
        http://en.wikipedia.org/wiki/Amiga_E

        Comment


        • #5
          yea.. F# = Fis C# = Cis... sorry iam musician ^^

          Comment


          • #6
            Originally posted by curaga View Post
            A,B,C,C++,D,F#? What happened to E?
            http://en.wikipedia.org/wiki/E_programming_language
            http://en.wikipedia.org/wiki/F_programming_language
            http://en.wikipedia.org/wiki/G_programming_language

            Comment


            • #7
              F# rocks big time. Also Apache 2 licensed code from Microsoft, wow!

              Comment


              • #8
                Originally posted by BlackStar View Post
                F# rocks big time. Also Apache 2 licensed code from Microsoft, wow!
                What's good about it? Seriously, I'm curious. From the little blurb I read somewhere it sounds like some sort of declarative systems language(!). Is that correct?

                Comment


                • #9
                  Originally posted by liam View Post
                  What's good about it? Seriously, I'm curious. From the little blurb I read somewhere it sounds like some sort of declarative systems language(!). Is that correct?
                  It's a functional language, like Erlang, Haskell, Standard ML, OCaml, etc.

                  Comment


                  • #10
                    Originally posted by smitty3268 View Post
                    It's a functional language, like Erlang, Haskell, Standard ML, OCaml, etc.
                    Actually, it's a multi-paradigm language that supports functional, object-oriented and imperative (ugh) programming. It is very similar to Ocaml but has simpler/more readable syntax.

                    What's good about it? Seriously, I'm curious. From the little blurb I read somewhere it sounds like some sort of declarative systems language(!). Is that correct?
                    Technically, it has several qualities that make it really powerful:
                    - static typing with extensive type inference.
                    - built-in support for asynchronous programming.
                    - built-in support for units-of-measure. If you define x(m) as position, t(sec) as time and v(m/sec) as velocity, the compiler will let you assign "x = v*t" but will raise an error if you try to do "x = t". This is all compile-time (no performance penalty).
                    - it can consume any Mono/.Net and Java(IKVM) library.
                    - it has first-class IDE and debugging support (MonoDevelop/Visual Studio).

                    Historically, functional languages have historically lived in their own, fragmented little worlds. This may be the first that actually stands a chance to become mainstream, which is quite exciting in itself. (I've actually seen job postings for F#, which I've never seen for Haskell, Lisp or *ML).

                    Finally, this is an open-source project implemented by Microsoft and shipped in Visual Studio. Note that Apache 2.0, section 3, grants an irrevocable patent license - could it be that the behemoth is slowly turning around?

                    Comment


                    • #11
                      From the MSDN article:
                      ... in particular we understand the role that open source versions of languages can play in education and research circles, and as a result can give extra reach to a Microsoft-sponsored language technology.
                      Translation: We want to be hip like Google Go and other open source languages that call us square.

                      Comment


                      • #12
                        Originally posted by Jimmy View Post
                        From the MSDN article:


                        Translation: We want to be hip like Google Go and other open source languages that call us square.
                        Which is a good thing for us.

                        Comment


                        • #13
                          Originally posted by BlackStar View Post
                          Actually, it's a multi-paradigm language that supports functional, object-oriented and imperative (ugh) programming. It is very similar to Ocaml but has simpler/more readable syntax.



                          Technically, it has several qualities that make it really powerful:
                          - static typing with extensive type inference.
                          - built-in support for asynchronous programming.
                          - built-in support for units-of-measure. If you define x(m) as position, t(sec) as time and v(m/sec) as velocity, the compiler will let you assign "x = v*t" but will raise an error if you try to do "x = t". This is all compile-time (no performance penalty).
                          - it can consume any Mono/.Net and Java(IKVM) library.
                          - it has first-class IDE and debugging support (MonoDevelop/Visual Studio).

                          Historically, functional languages have historically lived in their own, fragmented little worlds. This may be the first that actually stands a chance to become mainstream, which is quite exciting in itself. (I've actually seen job postings for F#, which I've never seen for Haskell, Lisp or *ML).

                          Finally, this is an open-source project implemented by Microsoft and shipped in Visual Studio. Note that Apache 2.0, section 3, grants an irrevocable patent license - could it be that the behemoth is slowly turning around?
                          That's right. I do vaguely recall it being called multi-paradigm, but I've never played with such a language that was actually able to work well using different programming models.
                          The asynchronous stuff is quite standard for declarative languages, so that's no big deal. Haskell has useful type checking from my experience. The units support is interesting. I've never heard of that.

                          Thanks for the information.

                          Comment

                          Working...
                          X