Hacker Courses The online courses programmers keep recommending, ranked from 20 years of public forum comments.
i
#1174 overall

COS 326 Functional Programming

Princeton University

1 recommender · 1 thread · recommended in 1 year, 2016 · score 0.7

Go to course ↗

COS 326 is Princeton's undergraduate functional programming course, taught in OCaml, covering functional programming concepts, types, and programming language design through challenging programming assignments.

Commenters point to it as a source of challenging OCaml programming assignments once you have the basics.

Programming Languagesintermediate#functional programming#ocaml#programming languages#princeton

Recommendations by year

20062026

What commenters said (1)

  1. Recommendskrat0sprakhar2016in “OCaml 4.03.0 released (including flambda)”

    OCaml is a great language. I'm so glad I was forced to learn at in university. Apart from the language itself, the ecosystem surrounding it is very mature as well.

    - OCamlbuild is the bee's knees. Configuring complex projects requires just one line in the Makefile

    - OPAM works wonderfully. No configuration required. Everything just works.

    - Merlin (https://github.com/the-lambda-church/merlin) is incredible. If you use Vim / Emacs, you owe it to yourself to set it up and have better syntax highlighting, indentation and type information right within your editor.

    - Approachable online guides to get started. RWO[1] is a fantastic resource and teaches you the good parts right from the start.

    - Utop (https://github.com/diml/utop) is a very modern, fully-featured REPL (almost as good as IPython)

    ----------

    If you've been thinking of learning OCaml, here are a few useful resources -

    - Real World OCaml [RWO] - https://realworldocaml.org/

    - Using, Understanding, and Unraveling the OCaml Language - http://caml.inria.fr/pub/docs/u3-ocaml/index.html

    - Developing applications with OCaml - http://caml.inria.fr/pub/docs/oreilly-book/html/index.html

    - System programming in OCaml - https://ocaml.github.io/ocamlunix/ocamlunix.html

    Lastly, if you are out of ideas on what to build with OCaml, try out these courses for some challenging programming assignments

    - Functional Programming (Princeton) : http://www.cs.princeton.edu/~dpw/courses/cos326-12/info.php

    - Programming Languages and Compilers (UIUC): https://courses.engr.illinois.edu/cs421/fa2014/

Related courses

Keyboard

In the course grid
←↑→↓
Move between courses
Home End
Start / end of row (with Ctrl: first / last)
PgUp PgDn
Jump several rows
Enter
Open course
S
Save / unsave course
1–5
Best, Trending, Hidden gems, Evergreen, Saved
[ ]
Previous / next topic
On a course page
← →
Previous / next course in your list
S
Save / unsave
O
Open the course website
Esc
Back to the grid
Everywhere
/
Search
T
Light / dark theme
?
This help