I don't have this "computer science". :) You don't need it for functional programming. I was trying to program "functionally" in C, 20 years ago (after asm), but I didn't know there was a whole programming paradigm supporting what I kept wanting to do. (I favored recursion, use of ternary conditional, wanted closures but didn't know what that was, avoided mutable state...) However when I started learning OCaml (my first FP language), it was still a steep learning curve. I needed to develop enough familiarity with the idioms to use them with less mental friction. That takes time. I think imperative techniques can be easier to grasp, much like a GUI is easier at first, but it doesn't scale as well -- if you stick with the GUI you limit yourself. You don't need compsci, but I think there's more time to gain familiarity -- though in my case it might have been more unlearning that took the time. On Tue, May 28, 2013 at 12:51 PM, Mr. Herr wrote: > > Am 28.05.2013 03:17, schrieb Francois Berenger: > > On 05/27/2013 09:38 PM, Mr. Herr wrote: > >> > >> Am 27.05.2013 10:53, schrieb Erik de Castro Lopo: > >>> Mr. Herr wrote: > >>>> I think the biggest problem is you generally can only learn FP and/or > Ocaml at > >>>> university, because: > >>>> > >>>> The FP terminology is at first (and a long time after starting > learning it), > >>>> without > >>>> a teacher, not understandable. > >>> Sorry, that's simply not true. > >>> > >>> I studied my last univeristy course in 1992. I picked up Ocaml in 2004 > >>> and Haskell in 2008. Before Ocaml, the only functional language I had > >>> used was scheme in the late 1980s. > >>> > >> > >> Scheme is terribly functional, so to say, and is absolutely immerged in > the Lispy > >> slang. > >> All your knowlegde in C, Java, PHP, Assembler, Tcl/Tk, Pascal ... will > not help you > >> there. > >> > >> I started as an IBM /370 Systems Admin in the late nineties, and it > took me months of > >> reading in 2012 > >> to get some understanding about what the heck the scheme people are > talking about. > >> > >> Scheme is even a better example for the problems non university > learners encounter, > >> than Ocaml, IMO. > > > > A very good book on scheme (which is also quite a deep introduction to > computer > > science if you read the whole thing in fact): > > > > "structure and interpretation of computer programs" > > > > http://mitpress.mit.edu/sicp/full-text/book/book.html > > > > Yes, a good book. The author takes care to only use terms and features he > explained > before. I started working through it, then I thought there must be an > easier way to > write some system admin scripts like checking if IPv6 is functional, > ssh-agent has > identities, ... I will come back to the book. > > I find for myself Ocaml is indeed easier to start with than Scheme for a > FP beginner. > > But this is the point: do we need computer science to start with > functional programming? > > Before someone answers "computer science will be good for you" - other > programming > languages do not have this requirement. > > /Str. > > > -- > Caml-list mailing list. Subscription management and archives: > https://sympa.inria.fr/sympa/arc/caml-list > Beginner's list: http://groups.yahoo.com/group/ocaml_beginners > Bug reports: http://caml.inria.fr/bin/caml-bugs >