create Teaching Resources page #119

Closed
agarwal opened this Issue Mar 14, 2013 · 38 comments

Comments

Projects
None yet
Member

agarwal commented Mar 14, 2013

It will be useful to provide a list of courses taught in OCaml, IDEs that are particularly useful for teaching purposes, lecture notes that are publicly available, etc.

One item is the lecture notes by Lukasz Stafiniak.

Member

agarwal commented Mar 15, 2013

From: Yaron Minsky yminsky@janestreet.com
Date: Fri, Mar 15, 2013 at 1:56 PM
Subject: Re: [Caml-list] Use of OCaml in universities and engineering schools
To: Nicolas Barnier barnier@recherche.enac.fr
Cc: caml-list@inria.fr

  • Harvard's CS51 is the 2nd-semester course which all CS majors take,
    and it is taught in OCaml.
  • Cornell's algorithms class is mandatory for all majors, and is
    taught in OCaml.
  • Penn teaches OCaml in at least some of it's intro sequence.
  • Not quite OCaml, but CMU teaches SML to all undergrads as part of
    its intro sequence.
  • Brown does at least some OCaml in their CS curriculum, though I'm
    not sure of the details. I just know that a goodly fraction of the
    applicants from Brown know OCaml.
  • Princeton has a new FP course that teaches OCaml, that I know people
    there are pretty excited about.

There are probably more I'm missing, but that's a start

y

Member

agarwal commented Mar 15, 2013

From: Roberto Di Cosmo roberto@dicosmo.org
Date: Fri, Mar 15, 2013 at 2:04 PM
Subject: Re: [Caml-list] Use of OCaml in universities and engineering schools
To: Yaron Minsky yminsky@janestreet.com
Cc: Nicolas Barnier barnier@recherche.enac.fr, caml-list@inria.fr

Hi Nicolas,
nice idea to ask about this... let me add that in the Paris
area there are many many places where OCaml is taught (too
many to list here, but just out of muy head, University Paris Diderot,
level L3 and L1, University Pierre et Marie Curie, Orsay, ESIIE
and Epitech all use OCaml at different levels)

We would really need a central place to keep this info well
structured. Even a simple wiki page would do.

Member

agarwal commented Mar 15, 2013

From: Bertrand Bonnefoy-Claudet bertrandbc@gmail.com
Date: Fri, Mar 15, 2013 at 2:24 PM
Subject: Re: [Caml-list] Use of OCaml in universities and engineering schools
To: Roberto Di Cosmo roberto@dicosmo.org
Cc: Yaron Minsky yminsky@janestreet.com, Nicolas Barnier barnier@recherche.enac.fr, caml-list@inria.fr

Supélec has an introductory course to programming languages for first
year students (mandatory but not graded) and the section on functional
programming is taught with OCaml at least on the Metz campus
(http://www.metz.supelec.fr/metz/personnel/frezza/MLP/). I think that
Lisp is used instead on other campuses.

That's not much but maybe worth mentioning.

Member

Chris00 commented Mar 15, 2013

The students at the University of Mons use OCaml in a Numerical Analysis course and in various projects.

Member

Chris00 commented Mar 15, 2013

From: Marek Kubica marek@xivilization.net
To: Nicolas Barnier barnier@recherche.enac.fr
CC: caml-list@inria.fr
Date: Fri, 15 Mar 2013 21:53:52 +0100

On Fri, 15 Mar 2013 17:49:18 +0100
Nicolas Barnier barnier@recherche.enac.fr wrote:

We were thus wondering which engineering schools and universities are
actually currently using OCaml, and for which cursus.

The Technische Universität München is/was using it for a course called
"Introduction to computer science 2". It is not OCaml specific but
rather focuses on functional programming so a year ago it SML and this
year it was Haskell. Depends on the professor.

Member

agarwal commented Mar 16, 2013

From: Philippe Wang mail@philippewang.info
Date: Fri, Mar 15, 2013 at 9:02 PM
Subject: Re: [Caml-list] Use of OCaml in universities and engineering schools
To: Ashish Agarwal agarwal1975@gmail.com
Cc: Roberto Di Cosmo roberto@dicosmo.org, Yaron Minsky yminsky@janestreet.com, Nicolas Barnier barnier@recherche.enac.fr, OCaml Mailing List caml-list@inria.fr

Yes, there should be such a page somewhere, ocaml.org seems to be the
right place for that.

I started getting more information about the courses:
http://philippewang.info/CL/?id=where_ocaml_is_used_for_teaching_purposes
(it's a draft)

bbc2 commented Mar 16, 2013

From: Bertrand Bonnefoy-Claudet bertrandbc@gmail.com
Date: Sat, 16 Mar 2013 00:20:45 -0500
Subject: Re: [Caml-list] Use of OCaml in universities and engineering schools
To: Lukasz Stafiniak lukstafi@gmail.com
Cc: OCaml Mailing List caml-list@inria.fr, Nicolas Barnier barnier@recherche.enac.fr

I forgot to mention the University of Illinois at Urbana-Champaign.
There's an undergrad course on programming languages and compilers:

http://courses.engr.illinois.edu/cs421/

Member

Chris00 commented Mar 16, 2013

From: Dagnat Fabien fabien.dagnat@telecom-bretagne.eu
To: caml-list@inria.fr
Date: Sat, 16 Mar 2013 09:37:39 +0100

Hello,
In Télécom Bretagne, there is/was two courses using Caml :

Notice that the evolution of the preparatory school toward Python instead of Caml is probably going to cause serious change in lot of French engineering school. Here (at TB) the consequence is a switch to Python as basic language while keeping Java for basic object oriented programming.

Member

Chris00 commented Mar 16, 2013

From: Jason Yeo jasonyeo88@gmail.com
To: Nicolas Barnier barnier@recherche.enac.fr
CC: caml-list@inria.fr
Date: Sat, 16 Mar 2013 13:26:36 +0800

I'm an undergrad at the National University of Singapore. We are taught to use
ocaml for a Programming Language Implementation class.

Previously, the class was taught using java. Ocaml is definitely a better
choice for the class because of ADTs and the expressiveness of the language.

Member

Chris00 commented Mar 16, 2013

From: Valentin ROBERT vrobert@cs.ucsd.edu
CC: caml-list@inria.fr
Date: Fri, 15 Mar 2013 22:34:09 -0700

My 2 cents: OCaml is used at the University of California, San Diego, as part
of the undergraduate Programming Languages class (along with Python and
Prolog).

cf. http://cseweb.ucsd.edu/classes/wi13/cse130-a/

  • Valentin
Member

Chris00 commented Mar 16, 2013

From: Lukasz Stafiniak lukstafi@gmail.com
To: OCaml Mailing List caml-list@inria.fr
CC: Nicolas Barnier barnier@recherche.enac.fr
Date: Sat, 16 Mar 2013 02:15:40 +0100

OCaml is taught in an optional course called "Functional Programming" at Wroc
ław University of Technology and at University of Wrocław. For contrast, at
an obligatory course called "Programming" for Computer Science at University
of Wrocław, there are elements of Haskell and Prolog (rather than OCaml).

http://international.uni.wroc.pl/en/course/functional-programming
http://international.uni.wroc.pl/en/course/programming

Owner

avsm commented Mar 16, 2013

Also Dan Ghica at Birmingham, who has excellent Foundations of Computer Science videos using OCaml available online:
https://sites.google.com/site/focs1112/lecture-videos

Member

samoht commented Mar 16, 2013

All the French ENS have/had a mandatory functional programming course at L3 level for CS major, which heavily involves OCaml. Also, all the Epitech schools in France (not only the one in Paris) have an optional L2 functional programming course where they teach OCaml.

Member

bobzhang commented Mar 16, 2013

in Penn, CIS341 compiler course uses ocaml http://www.seas.upenn.edu/~cis341/current/

Member

Chris00 commented Mar 18, 2013

From: Mark Raymond markr@raymonds.org.uk
To: caml-list@inria.fr
Date: Sun, 17 Mar 2013 16:22:20 +0000

The Compilers course I did at Oxford University two years ago used OCaml.

Member

Chris00 commented Mar 18, 2013

From: Sebastien Ferre Sebastien.Ferre@irisa.fr
To: caml-list@inria.fr
Date: Mon, 18 Mar 2013 11:16:24 +0100

At ISTIC/Université de Rennes 1, OCaml is used in different courses at different levels:

  • functional programming in 3rd year (52h)
  • introduction to programming for students having a
    master in another domain (e.g., biology, chemistry)
    and preparing a master CCI (Complementary Competency in CS)
  • compilation in 1st year of the CS master, in combination
    with LLVM (16h of practicals)
Member

Chris00 commented Mar 18, 2013

From: Christophe Garion christophe.garion@isae.fr
To: "caml-list@inria.fr" caml-list@inria.fr
Date: Mon, 18 Mar 2013 10:52:03 +0100

At ISAE/SUPAERO (http://supaero.isae.fr/en/), OCaML is used in a 20 hours lecture on functional programming and introduction to type theory in the 1st year major on Artificial Intelligence and Foundations of CS.

Member

Chris00 commented Mar 18, 2013

From: Marc Pantel Marc.Pantel@enseeiht.fr
To: Kristopher Micinski micinski@cs.umd.edu
Date: Mon, 18 Mar 2013 09:20:20 +0100

At ENSEEIHT (Ecole Nationale Supérieure d'Electronique, Electrotechnique, Informatique, Hydraulique et Télécommunications, http://www.enseeiht.fr) in Toulouse, France, pure functional subset of OCaML is taught in 1st year of computer science and applied mathematics (L3 level, 5 ETCS, 52 hours) in Algorithms and Functional Programming courses, then it is used in the Compiler (M1 level, 5 ETCS, 52 hours) and the Static Analysis based Verification (M2 level, 3 ETCS, 30 hours) courses.

Member

Chris00 commented Mar 18, 2013

From: Milan Stanojević milanst@gmail.com
To: Valentin ROBERT vrobert@cs.ucsd.edu
CC: caml-list@inria.fr

On Sat, Mar 16, 2013 at 1:34 AM, Valentin ROBERT vrobert@cs.ucsd.edu wrote:

My 2 cents: OCaml is used at the University of California, San Diego, as
part of the undergraduate Programming Languages class (along with Python and
Prolog).

cf. http://cseweb.ucsd.edu/classes/wi13/cse130-a/

  • Valentin

It's similar at University of California, Los Angeles. Depending on
the professor, either SML or OCaml (plus couple of other languages) is
used for cs131, which is a required programming languages course for
computer science majors.

Member

Chris00 commented Mar 18, 2013

From: Alan Schmitt alan.schmitt@polytechnique.org
To: Nicolas Barnier barnier@recherche.enac.fr
Date: Sun, 17 Mar 2013 16:58:12 +0100

There is an Ocaml course at INSA (an engineering school) in Rennes (3rd
year). There is also an university of Rennes 1 course (3rd year as well,
if I remember correctly).

Member

Chris00 commented Mar 18, 2013

From: Kristopher Micinski micinski@cs.umd.edu
To: Nicolas Barnier barnier@recherche.enac.fr
Date: Sun, 17 Mar 2013 17:07:08 -0400

Maryland teaches OCaml in our classes (PL and compilers):

http://www.cs.umd.edu/class/spring2013/cmsc330/
http://www.cs.umd.edu/class/fall2012/cmsc430/

Member

Chris00 commented Mar 19, 2013

From: Simão Sousa desousa@di.ubi.pt
To: caml-list@inria.fr
Date: Tue, 19 Mar 2013 07:35:41 +0000

At the University of Beira Interior, Portugal, we are using OCaml as the underlying programming language (as a tool, not as the subject) in 3 different courses:

  • Theory of Computation and Formal Languages
  • Compilers Construction
  • Program Verification (includes computational logic, decision procedure, deductive methods and program logic)

As a subject of study, Ocaml is used in the following advanced courses:

  • Theory of programming
  • Certified Programming

EPITA uses OCaml for introducing students to computer programming and computer science in the first two years (during the integrated preparatory cycle).

Member

Chris00 commented Mar 22, 2013

From: Luca Saiu luca.saiu@inria.fr
Date: Fri, 22 Mar 2013 15:52:44 +0100

The Computer Science Lab [1] of Université Paris 13 offers an "Advanced
Functional Programming" [2] course at the Master 2 level (fifth year),
specialty "Programming and safe programs" [3].

There is also another introductory course about functional programming
at the "Licence 3" level (third year). Both use OCaml.

[1] http://lipn.univ-paris13.fr
[2] http://ageinghacker.net/lipn-stuff/teaching/PFA-2011/
[3] http://lipn.univ-paris13.fr/~fouquere/M2PLS/

Luca Saiu
INRIA Saclay
Personal home page: http://ageinghacker.net

Member

Chris00 commented Mar 26, 2013

From: Nicolas Braud-Santoni nicolas@braud-santoni.eu
To: Sebastien Ferre Sebastien.Ferre@irisa.fr, caml-list@inria.fr
Date: Tue, 26 Mar 2013 11:21:55 +0100

It is also used (at ISTIC/Rennes 1) at the M2 level, for the Static
Analysis course (Program Analysis for Software Security).

For completeness' sake, I'll add that ENS de Cachan (Rennes campus) uses
OCaml for all programming projects in first year, except for the prog.
tutorial (a different language each year) and the C/C++ and
object-oriented courses.

Just a "thumbs up" comment. I only managed to squeeze eight lectures into one semester (from the lecture notes linked at the top of the thread). I'm preparing the remaining slides for completeness, perhaps to turn them into a book, perhaps to teach a follow-up course someday (but not likely at present).

Contributor

lefessan commented Oct 30, 2013

Any news ? There was such a web page on www.ocaml-lang.org, it is really missing here, as I am trying to convince some university teachers to teach OCaml to their students.

Ideally, there would be links to courses, but also cached copies of the slides, and even better, source copies so that they could be modified...

Member

agarwal commented Oct 30, 2013

@lefessan Unfortunately, this isn't the best time to add a page like this. See summary of current plan by @amirmc. If it is urgent for you, I'm happy to accept a pull request, and I'll manually do the conversion necessary to support the new Markdown based backend.

See lefessan comment above.
Any new news ?

Member

agarwal commented Jan 15, 2014

It will be easy to accept a Pull Request. It requires creating the page site/learn/teaching.md within the repo, and then incorporating the long list of comments above in an organized manner.

Member

amirmc commented Jan 15, 2014

@lefessan If the page already existed on www.ocaml-lang.org, where did it go? Perhaps we can import that content too?

Chris00 added the contribute! label Aug 15, 2014

amirmc added the content label Oct 6, 2014

Member

agarwal commented Nov 13, 2014

@yansh @amirmc Thanks for the new teaching page. It's quite nice, and I like the map! Can this issue now be closed?

Member

Chris00 commented Nov 13, 2014

On Thu, 13 Nov 2014 08:16:36 -0800, Ashish Agarwal wrote:

@yansh @amirmc Thanks for the new teaching page. It's quite nice, and I like
the map! Can this issue now be closed?

Is the page linked from other ones?

Contributor

pw374 commented Nov 14, 2014

There are courses mentioned on this thread that don't seem to appear on https://github.com/ocaml/ocaml.org/blob/master/site/learn/teaching-ocaml.md
But then I don't know if the list is supposed to include courses that no longer exist, and I don't know if all the forgotten courses are those that don't exist anymore.

Contributor

yansh commented Nov 14, 2014

On 14/11/14 14:09, Philippe Wang wrote:

There are courses mentioned on this thread that don't seem to appear
on
https://github.com/ocaml/ocaml.org/blob/master/site/learn/teaching-ocaml.md
But then I don't know if the list is supposed to include courses that
no longer exist, and I don't know if all the forgotten courses are
those that don't exist anymore.

I tried to pick only the existing ones - @yminsky @amirmc should I add
courses that no longer exist?

Member

amirmc commented Nov 14, 2014

We should only include existing courses. If a course no longer uses OCaml, it should be removed.

Best wishes,
Amir

sent via mobile

On 14 Nov 2014, at 14:24, yansh notifications@github.com wrote:

On 14/11/14 14:09, Philippe Wang wrote:

There are courses mentioned on this thread that don't seem to appear
on
https://github.com/ocaml/ocaml.org/blob/master/site/learn/teaching-ocaml.md
But then I don't know if the list is supposed to include courses that
no longer exist, and I don't know if all the forgotten courses are
those that don't exist anymore.

I tried to pick only the existing ones - @yminsky @amirmc should I add
course that no longer exist?

Reply to this email directly or view it on GitHub.

Contributor

dbuenzli commented Nov 14, 2014

Le vendredi, 14 novembre 2014 à 15:32, Amir Chaudhry a écrit :

We should only include existing courses. If a course no longer uses OCaml, it should be removed.

I'm not following closely so I don't know the structure of the page, but if the previous courses teaching material is still available it would be worth keeping links to that.

Daniel

Member

amirmc commented Mar 15, 2015

Since the teaching page has been up a while, with pull requests going directly to it, I'm closing this issue.

amirmc closed this Mar 15, 2015

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment