Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Learning F#

Learning F#

Scheduled Pinned Locked Moved The Lounge
learningcsharpphpwpfcom
50 Posts 23 Posters 7 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • realJSOPR realJSOP

    Josh Smith wrote:

    The problem is, the existing F# tutorials SUCK.

    They must have been written by the VSS developers, because VSS sucks too.

    "Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997
    -----
    "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001

    J Offline
    J Offline
    Josh Smith
    wrote on last edited by
    #20

    John Simmons / outlaw programmer wrote:

    They must have been written by the VSS developers, because VSS sucks too.

    I'd be surprised if the people who are creating F# and its documentation also pooped out VSS.

    :josh: My WPF Blog[^] Without a strive for perfection I would be terribly bored.

    1 Reply Last reply
    0
    • J Josh Smith

      I've been spending some of my free time trying to learn about F# because it seems really interesting.  The problem is, the existing F# tutorials SUCK.  I think that the language tutorials provided by Microsoft were written by brainiacs in the Microsoft Research group, so it's not really helpful at all.  For example, I read that this:

      int -> int

      ...represents a function which takes and int and returns an int.  The problem is, the author failed to mention which "int" represents the return type and which the parameter type. :|  There's only one F# book out there yet, and all the reviews I've read of it say that it sucks too.  Come on MS, if you're gonna publicly announce[^] that F# is on the rise, at least give us some good introductory material first!! Don't make it so f#ckin hard for us! ;)

      :josh: My WPF Blog[^] Without a strive for perfection I would be terribly bored.

      J Offline
      J Offline
      Jim Crafton
      wrote on last edited by
      #21

      I'll bet if you get a good grip on Lisp in the meantime, that will help you out, since I would imagine that a lot of the ideas in F# have their roots in Lisp.

      ¡El diablo está en mis pantalones! ¡Mire, mire! Real Mentats use only 100% pure, unfooled around with Sapho Juice(tm)! SELECT * FROM User WHERE Clue > 0 0 rows returned Save an Orange - Use the VCF! VCF Blog

      J J 2 Replies Last reply
      0
      • J Jim Crafton

        I'll bet if you get a good grip on Lisp in the meantime, that will help you out, since I would imagine that a lot of the ideas in F# have their roots in Lisp.

        ¡El diablo está en mis pantalones! ¡Mire, mire! Real Mentats use only 100% pure, unfooled around with Sapho Juice(tm)! SELECT * FROM User WHERE Clue > 0 0 rows returned Save an Orange - Use the VCF! VCF Blog

        J Offline
        J Offline
        Josh Smith
        wrote on last edited by
        #22

        Jim Crafton wrote:

        I'll bet if you get a good grip on Lisp in the meantime, that will help you out

        Good idea.  However, Nemanja pointed out that F# is based on OCaml, and OCaml has good tutorials online.  I'll probably start with those tutorials.

        :josh: My WPF Blog[^] Without a strive for perfection I would be terribly bored.

        1 Reply Last reply
        0
        • R Ryan Roberts

          I remember that notation from university, but they really need to explain it. Lots of the tutorials assume that you have been taught discrete maths, and over and above that loads of the examples are hairy mathematical functions. MS really need tutorials and examples that don't assume a compsci background if they want to get traction for F#. Many of us know that pure functional programming is going to be a good solution for dealing with multiple cores but find the existing documentation very heavy going, they really need to do some functional programming for business programmers tutorials.

          E Offline
          E Offline
          Ennis Ray Lynch Jr
          wrote on last edited by
          #23

          Required base compsci MS would go out of business. If I had a dollar for all the times I had to explain basic data structures and algorithms ...


          Need a C# Consultant? I'm available.
          Happiness in intelligent people is the rarest thing I know. -- Ernest Hemingway

          J 1 Reply Last reply
          0
          • J Josh Smith

            leppie wrote:

            It's called common sense, aka from 'int' -> (to) 'int'

            You call that common sense?  I call that conditioning.  Every language I've ever worked with before, all of which are C-based, put the return type on the left side.

            :josh: My WPF Blog[^] Without a strive for perfection I would be terribly bored.

            J Offline
            J Offline
            Jorgen Sigvardsson
            wrote on last edited by
            #24

            Josh Smith wrote:

            I call that conditioning

            No, it's a clever convention. Especially when you start mixing in currying and composition. It's an algebra. :)

            -- Kein Mitleid Für Die Mehrheit

            1 Reply Last reply
            0
            • J Jim Crafton

              I'll bet if you get a good grip on Lisp in the meantime, that will help you out, since I would imagine that a lot of the ideas in F# have their roots in Lisp.

              ¡El diablo está en mis pantalones! ¡Mire, mire! Real Mentats use only 100% pure, unfooled around with Sapho Juice(tm)! SELECT * FROM User WHERE Clue > 0 0 rows returned Save an Orange - Use the VCF! VCF Blog

              J Offline
              J Offline
              Jorgen Sigvardsson
              wrote on last edited by
              #25

              Hrm.. I think F# has more roots in languages such as Haskell, than in Lisp. F# seems much more pure than Lisp is, from a functional point of view.

              -- Kein Mitleid Für Die Mehrheit

              1 Reply Last reply
              0
              • J Josh Smith

                I've been spending some of my free time trying to learn about F# because it seems really interesting.  The problem is, the existing F# tutorials SUCK.  I think that the language tutorials provided by Microsoft were written by brainiacs in the Microsoft Research group, so it's not really helpful at all.  For example, I read that this:

                int -> int

                ...represents a function which takes and int and returns an int.  The problem is, the author failed to mention which "int" represents the return type and which the parameter type. :|  There's only one F# book out there yet, and all the reviews I've read of it say that it sucks too.  Come on MS, if you're gonna publicly announce[^] that F# is on the rise, at least give us some good introductory material first!! Don't make it so f#ckin hard for us! ;)

                :josh: My WPF Blog[^] Without a strive for perfection I would be terribly bored.

                A Offline
                A Offline
                Andy Brummer
                wrote on last edited by
                #26

                I think most of the F# docs assume you already know another functional language like OCaml or Haskell. I haven't used OCaml much, but Haskell has some good books written for it.


                This blanket smells like ham

                1 Reply Last reply
                0
                • J Josh Smith

                  I've been spending some of my free time trying to learn about F# because it seems really interesting.  The problem is, the existing F# tutorials SUCK.  I think that the language tutorials provided by Microsoft were written by brainiacs in the Microsoft Research group, so it's not really helpful at all.  For example, I read that this:

                  int -> int

                  ...represents a function which takes and int and returns an int.  The problem is, the author failed to mention which "int" represents the return type and which the parameter type. :|  There's only one F# book out there yet, and all the reviews I've read of it say that it sucks too.  Come on MS, if you're gonna publicly announce[^] that F# is on the rise, at least give us some good introductory material first!! Don't make it so f#ckin hard for us! ;)

                  :josh: My WPF Blog[^] Without a strive for perfection I would be terribly bored.

                  M Offline
                  M Offline
                  Marc Clifton
                  wrote on last edited by
                  #27

                  Josh Smith wrote:

                  Come on MS, if you're gonna publicly announce[^] that F# is on the rise, at least give us some good introductory material first!! Don't make it so f#ckin hard for us!

                  Oh come now. They do this with actual products, why not continue the trend with experimental ones? Besides, it's written by a bunch of geeks. Do you think geeks document? Marc

                  Thyme In The Country
                  Interacx
                  My Blog

                  J 1 Reply Last reply
                  0
                  • M Marc Clifton

                    Josh Smith wrote:

                    Come on MS, if you're gonna publicly announce[^] that F# is on the rise, at least give us some good introductory material first!! Don't make it so f#ckin hard for us!

                    Oh come now. They do this with actual products, why not continue the trend with experimental ones? Besides, it's written by a bunch of geeks. Do you think geeks document? Marc

                    Thyme In The Country
                    Interacx
                    My Blog

                    J Offline
                    J Offline
                    Josh Smith
                    wrote on last edited by
                    #28

                    Marc Clifton wrote:

                    Besides, it's written by a bunch of geeks. Do you think geeks document?

                    Point well taken!

                    :josh: My WPF Blog[^] Without a strive for perfection I would be terribly bored.

                    1 Reply Last reply
                    0
                    • E Ennis Ray Lynch Jr

                      Required base compsci MS would go out of business. If I had a dollar for all the times I had to explain basic data structures and algorithms ...


                      Need a C# Consultant? I'm available.
                      Happiness in intelligent people is the rarest thing I know. -- Ernest Hemingway

                      J Offline
                      J Offline
                      Josh Smith
                      wrote on last edited by
                      #29

                      Ennis Ray Lynch, Jr. wrote:

                      If I had a dollar for all the times I had to explain basic data structures and algorithms ...

                      You'd be a CompSci professor?

                      :josh: My WPF Blog[^] Without a strive for perfection I would be terribly bored.

                      O E 2 Replies Last reply
                      0
                      • J Josh Smith

                        I've been spending some of my free time trying to learn about F# because it seems really interesting.  The problem is, the existing F# tutorials SUCK.  I think that the language tutorials provided by Microsoft were written by brainiacs in the Microsoft Research group, so it's not really helpful at all.  For example, I read that this:

                        int -> int

                        ...represents a function which takes and int and returns an int.  The problem is, the author failed to mention which "int" represents the return type and which the parameter type. :|  There's only one F# book out there yet, and all the reviews I've read of it say that it sucks too.  Come on MS, if you're gonna publicly announce[^] that F# is on the rise, at least give us some good introductory material first!! Don't make it so f#ckin hard for us! ;)

                        :josh: My WPF Blog[^] Without a strive for perfection I would be terribly bored.

                        J Offline
                        J Offline
                        Judah Gabriel Himango
                        wrote on last edited by
                        #30

                        Like others have mentioned, the documentation should state this. That said, mathematics contributes to it being this way, the doc writers must have assumed a mathematics background. C# 3 has something like this with lambdas: var square = int i => i*i; // takes an int i, returns i * i As a side note, I know some folks have played with WPF and F# together. A quick search reveals a few hits: XAML or F#[^]? F# meets 3d[^].

                        Tech, life, family, faith: Give me a visit. I'm currently blogging about: No, Not I - A poem by Holocaust escapee, chief rabbi, and Messiah-follower Daniel Zion The apostle Paul, modernly speaking: Epistles of Paul Judah Himango

                        L J 2 Replies Last reply
                        0
                        • J Judah Gabriel Himango

                          Like others have mentioned, the documentation should state this. That said, mathematics contributes to it being this way, the doc writers must have assumed a mathematics background. C# 3 has something like this with lambdas: var square = int i => i*i; // takes an int i, returns i * i As a side note, I know some folks have played with WPF and F# together. A quick search reveals a few hits: XAML or F#[^]? F# meets 3d[^].

                          Tech, life, family, faith: Give me a visit. I'm currently blogging about: No, Not I - A poem by Holocaust escapee, chief rabbi, and Messiah-follower Daniel Zion The apostle Paul, modernly speaking: Epistles of Paul Judah Himango

                          L Offline
                          L Offline
                          leppie
                          wrote on last edited by
                          #31

                          Judah Himango wrote:

                          int i => i*i

                          To me that is just syntactic sugar for anonymous delegates.

                          xacc.ide
                          The rule of three: "The first time you notice something that might repeat, don't generalize it. The second time the situation occurs, develop in a similar fashion -- possibly even copy/paste -- but don't generalize yet. On the third time, look to generalize the approach."

                          1 Reply Last reply
                          0
                          • J Judah Gabriel Himango

                            Like others have mentioned, the documentation should state this. That said, mathematics contributes to it being this way, the doc writers must have assumed a mathematics background. C# 3 has something like this with lambdas: var square = int i => i*i; // takes an int i, returns i * i As a side note, I know some folks have played with WPF and F# together. A quick search reveals a few hits: XAML or F#[^]? F# meets 3d[^].

                            Tech, life, family, faith: Give me a visit. I'm currently blogging about: No, Not I - A poem by Holocaust escapee, chief rabbi, and Messiah-follower Daniel Zion The apostle Paul, modernly speaking: Epistles of Paul Judah Himango

                            J Offline
                            J Offline
                            Josh Smith
                            wrote on last edited by
                            #32

                            Judah Himango wrote:

                            As a side note, I know some folks have played with WPF and F# together.

                            Yeah, I've already seen that crazy stuff. :cool:

                            :josh: My WPF Blog[^] Without a strive for perfection I would be terribly bored.

                            1 Reply Last reply
                            0
                            • J Josh Smith

                              Ennis Ray Lynch, Jr. wrote:

                              If I had a dollar for all the times I had to explain basic data structures and algorithms ...

                              You'd be a CompSci professor?

                              :josh: My WPF Blog[^] Without a strive for perfection I would be terribly bored.

                              O Offline
                              O Offline
                              originSH
                              wrote on last edited by
                              #33

                              :laugh::laugh::laugh:

                              1 Reply Last reply
                              0
                              • J Josh Smith

                                I've been spending some of my free time trying to learn about F# because it seems really interesting.  The problem is, the existing F# tutorials SUCK.  I think that the language tutorials provided by Microsoft were written by brainiacs in the Microsoft Research group, so it's not really helpful at all.  For example, I read that this:

                                int -> int

                                ...represents a function which takes and int and returns an int.  The problem is, the author failed to mention which "int" represents the return type and which the parameter type. :|  There's only one F# book out there yet, and all the reviews I've read of it say that it sucks too.  Come on MS, if you're gonna publicly announce[^] that F# is on the rise, at least give us some good introductory material first!! Don't make it so f#ckin hard for us! ;)

                                :josh: My WPF Blog[^] Without a strive for perfection I would be terribly bored.

                                F Offline
                                F Offline
                                Fernando A Gomez F
                                wrote on last edited by
                                #34

                                Josh Smith wrote:

                                The problem is, the existing F# tutorials SUCK.

                                Let's ask Chris to change that Java section of CodeProject into a F# section... :)


                                Hope is the negation of reality - Raistlin Majere

                                J 1 Reply Last reply
                                0
                                • F Fernando A Gomez F

                                  Josh Smith wrote:

                                  The problem is, the existing F# tutorials SUCK.

                                  Let's ask Chris to change that Java section of CodeProject into a F# section... :)


                                  Hope is the negation of reality - Raistlin Majere

                                  J Offline
                                  J Offline
                                  Josh Smith
                                  wrote on last edited by
                                  #35

                                  Fernando A. Gomez F. wrote:

                                  Let's ask Chris to change that Java section of CodeProject into a F# section...

                                  Yeah, then it might actually be used!

                                  :josh: My WPF Blog[^] Without a strive for perfection I would be terribly bored.

                                  1 Reply Last reply
                                  0
                                  • J Josh Smith

                                    Ennis Ray Lynch, Jr. wrote:

                                    If I had a dollar for all the times I had to explain basic data structures and algorithms ...

                                    You'd be a CompSci professor?

                                    :josh: My WPF Blog[^] Without a strive for perfection I would be terribly bored.

                                    E Offline
                                    E Offline
                                    Ennis Ray Lynch Jr
                                    wrote on last edited by
                                    #36

                                    Seriously though, a lot of the code I end up fixing would never had been authored if the original author had a foundation in computer science. I try not to be pedantic and ignore it most of the time but sometimes they are so bad that something must be said for the greater good. My most insane political belief is that social problems can be solved with good education. It equates well to any field.


                                    Need a C# Consultant? I'm available.
                                    Happiness in intelligent people is the rarest thing I know. -- Ernest Hemingway

                                    1 Reply Last reply
                                    0
                                    • J Josh Smith

                                      peterchen wrote:

                                      from -< to

                                      Haha.  Stop screwing with my brain! ;P

                                      :josh: My WPF Blog[^] Without a strive for perfection I would be terribly bored.

                                      P Offline
                                      P Offline
                                      peterchen
                                      wrote on last edited by
                                      #37

                                      Sorry, this was an honest typo (but a good one! :cool: ) It was supposed to be from -> to, as in mathematical notation, e.g. f: N2 -> N would be equivaluent to C monkeys int f(int x, int y)


                                      We are a big screwed up dysfunctional psychotic happy family - some more screwed up, others more happy, but everybody's psychotic joint venture definition of CP
                                      My first real C# project | Linkify!|FoldWithUs! | sighist

                                      J 1 Reply Last reply
                                      0
                                      • P peterchen

                                        Sorry, this was an honest typo (but a good one! :cool: ) It was supposed to be from -> to, as in mathematical notation, e.g. f: N2 -> N would be equivaluent to C monkeys int f(int x, int y)


                                        We are a big screwed up dysfunctional psychotic happy family - some more screwed up, others more happy, but everybody's psychotic joint venture definition of CP
                                        My first real C# project | Linkify!|FoldWithUs! | sighist

                                        J Offline
                                        J Offline
                                        Josh Smith
                                        wrote on last edited by
                                        #38

                                        peterchen wrote:

                                        Sorry, this was an honest typo (but a good one! :cool: )

                                        Ok, I understand. Thanks for the advice!

                                        :josh: My WPF Blog[^] Without a strive for perfection I would be terribly bored.

                                        1 Reply Last reply
                                        0
                                        • J Josh Smith

                                          I've been spending some of my free time trying to learn about F# because it seems really interesting.  The problem is, the existing F# tutorials SUCK.  I think that the language tutorials provided by Microsoft were written by brainiacs in the Microsoft Research group, so it's not really helpful at all.  For example, I read that this:

                                          int -> int

                                          ...represents a function which takes and int and returns an int.  The problem is, the author failed to mention which "int" represents the return type and which the parameter type. :|  There's only one F# book out there yet, and all the reviews I've read of it say that it sucks too.  Come on MS, if you're gonna publicly announce[^] that F# is on the rise, at least give us some good introductory material first!! Don't make it so f#ckin hard for us! ;)

                                          :josh: My WPF Blog[^] Without a strive for perfection I would be terribly bored.

                                          T Offline
                                          T Offline
                                          Tomas Petricek
                                          wrote on last edited by
                                          #39

                                          Hi Josh, First of all, I should mention that I started learning F# more than a year ago and I'm using it a lot (so I'm very glad to hear that it will get more support from Developer Division). Regarding the books, I have seen both of them. "Foundations of F#" by Robert Pickering and I think it is a great book that I would recommend to anyone with C# backround. There is also second book "Expert F#" by Don Syme and others, which explains more details and uses the new F# syntax, so if you want to become F# expert, you'll need this one (too) :-). I agree that there are only a few resources about F#, but I hope that it will get better. As someone already mentioned, you can read an introduction to OCaml language, because F# is largely based on this language. Anyway, I started writing a tutorial about F# some time ago (though it is quite short and covers many things, so it may not be appropriate for a complete beginner in the field). It is almost done :-), but I still have a few remaining parts to finish, but if you (or anyone else) wanted to read at the unfinished version, send me a private message. I hope to publish it on my blog in a next few days. BTW: I'd be glad to post it to the F# section at CodeProject once Chris creates this section :rolleyes:

                                          Homepage: TomasP.net | Photo of the month: Calendar | C# and LINQ, F#, Phalanger: My Blog
                                          Latest article: Phalanger, PHP for .NET: Introduction for .NET developers

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups