Live data from Hacker News

Teaching OCaml

ocaml.org

11–20 of 34 posts

Re: Teaching OCaml

#11

In the "suggested textbooks" section, #3 is Real World OCaml which has Jason Hickey as an author and is available for free online, and #4 is Jason Hickey's notes for a course, is marked "Draft. Do No Redistribute", and at first glance its table of contents looks similar to Real World OCaml. Isn't the latter redundant and in violation of whatever?

There is no shared text at all between Real World OCaml and Jason Hickey's course notes. We wrote the RWO content from scratch due to the different style (O'Reilly vs academic) and set of libraries used.

Re: Teaching OCaml

#12

I think "all of Ocaml compiles to JS " is a bit optimistic. AFAIK, code using Jane Street's Core stdlib doesn't work. But a lot of Ocaml code should be fine.

All of the core compiler library does compile to efficient JavaScript. For instance, see the IOCamlJS interactive notebooks that embed the entire compiler in the browser with a web UI. Just press the play button:

- http://andrewray.github.io/iocamljs/oh261.html (H.261 video decoding)

- http://www.ujamjar.com/hardcaml/ (HardCaml RTL hardware description language, similar to Chisel in Scala)

- http://gazagnaire.org/fuconf14/ (building a 2048 game implementation)

Re: Teaching OCaml

#14
post #13

So many functional languages. Which one to learn? Haskell? OCaml? F#? Scheme? Common Lisp? Clojure?

Learn more than one. I would suggest, in no particular order, at least one from each of these three groups:

Static, strict-by-default ML derivatives (Standard ML, F#, Ocaml, AliceML, etc.)

Static, lazy-by-default ML-inspired (Haskell, probably others, but, really, Haskell).

Dynamic Lisp-family languages (Racket, Scheme, Common Lisp, Clojure)

Re: Teaching OCaml

#17
post #13

So many functional languages. Which one to learn? Haskell? OCaml? F#? Scheme? Common Lisp? Clojure?

Learn more than one. I would suggest, in no particular order, at least one from each of these three groups: Static, strict-by-default ML derivatives (Standard ML, F#, Ocaml, AliceML, etc.) Static, lazy-by-default ML-inspired (Haskell, probably others, but, really, Haskell). Dynamic Lisp-family languages (Racket, Scheme, Common Lisp, Clojure)

I would add a Logic Programming language like Prolog to the list.

Re: Teaching OCaml

#18
FCT UNL (Portugal) should probably be in the list.

Back in the mid-90's they were teaching Caml Light. Most likely they are on OCaml nowadays.

The CS department is very strong in FP and LP languages and theory.

Post reply on HN