From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by c5ff346549e7 (Postfix) with ESMTPS id 5FD0E5D5 for ; Thu, 23 Aug 2018 12:13:15 +0000 (UTC) X-IronPort-AV: E=Sophos;i="5.53,278,1531778400"; d="scan'208,217";a="343493691" Received: from sympa.inria.fr ([193.51.193.213]) by mail2-relais-roc.national.inria.fr with ESMTP; 23 Aug 2018 14:13:14 +0200 Received: by sympa.inria.fr (Postfix, from userid 20132) id 01541824C8; Thu, 23 Aug 2018 14:13:13 +0200 (CEST) Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by sympa.inria.fr (Postfix) with ESMTPS id 58E3982486 for ; Thu, 23 Aug 2018 14:13:07 +0200 (CEST) Authentication-Results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=yrg@irif.fr; spf=Pass smtp.mailfrom=yrg@irif.fr; spf=None smtp.helo=postmaster@korolev.univ-paris7.fr IronPort-PHdr: =?us-ascii?q?9a23=3A7EEB5xKsyixJfunV/9mcpTZWNBhigK39O0sv0rFi?= =?us-ascii?q?tYgeLv7xwZ3uMQTl6Ol3ixeRBMOHs60C07KempujcFRI2YyGvnEGfc4EfD4+ou?= =?us-ascii?q?JSoTYdBtWYA1bwNv/gYn9yNs1DUFh44yPzahANS47xaFLIv3K98yMZFAnhOgpp?= =?us-ascii?q?POT1HZPZg9iq2+yo9JDffwdFiCChbb9uMR67sRjfus4KjIV4N60/0AHJonxGe+?= =?us-ascii?q?RXwWNnO1eelAvi68mz4ZBu7T1et+ou+MBcX6r6eb84TaFDAzQ9L281/szrugLd?= =?us-ascii?q?QgaJ+3ART38ZkhtMAwjC8RH6QpL8uTb0u+ZhxCWXO9D9QrcpVzS/9KdrUAHnhz?= =?us-ascii?q?sbNzA392HXj9Z/jKNdoBm8oxByzIrZbISTOfFjfK3SYMkaSHJOUchRWSJPAZ6y?= =?us-ascii?q?YZUTAOcaJ+lUs5PwqkESoReiBwShAv7kxD9Shn/x2K03y+YuHhvA3AwmAtkArG?= =?us-ascii?q?7TrNr0NKcJSOy7zajIwi/Fb/xMwjf29Y/FcxA7ofGDRr9wcNDRyUghFw/fgFWQ?= =?us-ascii?q?s5XoMjWI3eoDtGib6vBvVeOpi2M/pAFxoySvxscxiobSnI4a1lfE9SBhzIY7ON?= =?us-ascii?q?24Tld3YdujEJtXqy6WLYV2Qtk6T2F0uSY6zL0HuYOhfCgO0pgo2xnfa/mBfoOV?= =?us-ascii?q?4RzjTP6cLSp8iX9qYr6zmRa//Ee6xuD9S8W4yktGoyRGn9XUqHwByxje5tKER/?= =?us-ascii?q?Z95EutxyuD2xzJ5u1ZIk04iKzWIIM7zLEqjJocq0HDEzf2mEroiK+WcV0p+uuv?= =?us-ascii?q?6+T9ZbXmooGTN5FuhgHjNKQum9K/Df0gMgcURWib+P+82b/58U33WrVGlvw2kq?= =?us-ascii?q?/Hv5DGPckXu6q0DgBP3oo96xuyAC2q3dUFkXUdMV5IdhGKg5DsO17UIfD4Cfm/?= =?us-ascii?q?g06rkDdu3/3HPqfhAprWI3jCirfhfLh951RSyAop1dxf/Y5bCqkdIPLvXU/8rM?= =?us-ascii?q?DXAQU8Mwyw2urnDNR91pgCWW+UGa+YMKbSsUeS6e41IumMYpUVuDfnJPQ/6f7u?= =?us-ascii?q?lyxxpVhIN6Kg2J9SbHGjAtxnJV+YaDzimJ1JRWwDuw57SO3xlHWDVyRSbjC8Rf?= =?us-ascii?q?RvyCs8DdeXBIHFDrosj72amQi6F5tffSgSG0qDOXbydovCVe1aO3HaGdNojjFR?= =?us-ascii?q?DevpcIQmzxz76F6jmuhXa9HM8yhdjqrNkd185undjxY3pG51FcWTlW+XHTgtwj?= =?us-ascii?q?E4AgQu1aU6mnRTj0+Z2PkqguZZG5pd/aERC1poBdvn1+V/TuvKdEfBc9OOEgr0?= =?us-ascii?q?QdK8BjU8UJQsxd4QJl50AdS50VbNxXjyDg=3D=3D?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0BzDgDZo35bh4o9/sJbg1GBFE0yhBeBH?= =?us-ascii?q?YdPi0eCHGmCBgGGQ4xzgWYLJQYBgUuBWYQrGQcBBDQUAQIBAQIBAQEBARMBAQE?= =?us-ascii?q?KCwkIKSMBC0IQAYFiDIMgSQEDIg03AiQSAQUBIhsMgw4BggEEC4ZwjGaDHjyJa?= =?us-ascii?q?YEiXVGEKgGEC4IkBYkfF4IAgRKCFEkHg0kCgSQFBQESAYMgglcChlOBI4pciEo?= =?us-ascii?q?Jf1OEDVOJOxeBPoQwiFKITIJKhVqCQA8hgQI1gQJxTScRbAaCMyCCEoNOgT6JF?= =?us-ascii?q?ncOAWIBAYZ3hB4NF4IkAQE?= X-IPAS-Result: =?us-ascii?q?A0BzDgDZo35bh4o9/sJbg1GBFE0yhBeBHYdPi0eCHGmCBgG?= =?us-ascii?q?GQ4xzgWYLJQYBgUuBWYQrGQcBBDQUAQIBAQIBAQEBARMBAQEKCwkIKSMBC0IQA?= =?us-ascii?q?YFiDIMgSQEDIg03AiQSAQUBIhsMgw4BggEEC4ZwjGaDHjyJaYEiXVGEKgGEC4I?= =?us-ascii?q?kBYkfF4IAgRKCFEkHg0kCgSQFBQESAYMgglcChlOBI4pciEoJf1OEDVOJOxeBP?= =?us-ascii?q?oQwiFKITIJKhVqCQA8hgQI1gQJxTScRbAaCMyCCEoNOgT6JFncOAWIBAYZ3hB4?= =?us-ascii?q?NF4IkAQE?= X-IronPort-AV: E=Sophos;i="5.53,278,1531778400"; d="scan'208,217";a="276607380" Received: from korolev.univ-paris7.fr ([194.254.61.138]) by mail3-smtp-sop.national.inria.fr with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 23 Aug 2018 14:13:04 +0200 Received: from mailhub.math.univ-paris-diderot.fr (mailhub.math.univ-paris-diderot.fr [81.194.30.253]) by korolev.univ-paris7.fr (8.14.4/8.14.4/relay1/75695) with ESMTP id w7NCCDdR016167 for ; Thu, 23 Aug 2018 14:12:13 +0200 Received: from mailhub.math.univ-paris-diderot.fr (localhost [127.0.0.1]) by mailhub.math.univ-paris-diderot.fr (Postfix) with ESMTP id 916F0EB22D for ; Thu, 23 Aug 2018 14:13:04 +0200 (CEST) X-Virus-Scanned: amavisd-new at math.univ-paris-diderot.fr Received: from mailhub.math.univ-paris-diderot.fr ([127.0.0.1]) by mailhub.math.univ-paris-diderot.fr (mailhub.math.univ-paris-diderot.fr [127.0.0.1]) (amavisd-new, port 10023) with ESMTP id u61qDlQecFlU for ; Thu, 23 Aug 2018 14:13:03 +0200 (CEST) Received: from mail-pf1-f181.google.com (mail-pf1-f181.google.com [209.85.210.181]) (Authenticated sender: yrg) by mailhub.math.univ-paris-diderot.fr (Postfix) with ESMTPSA id 97645EB200 for ; Thu, 23 Aug 2018 14:13:02 +0200 (CEST) Received: by mail-pf1-f181.google.com with SMTP id k19-v6so2621977pfi.1 for ; Thu, 23 Aug 2018 05:13:02 -0700 (PDT) X-Gm-Message-State: AOUpUlGD+vEXnIMQ7gKZ9SK4kSqYGQZ5gMbLqL1ZPBx7wPIbNFgDhu7e pnyx6NfBamBhq1Ktz7sOWcaD63yQmUFeEbQK34s= X-Google-Smtp-Source: AA+uWPxuPTC8UN7c1XQrzFOjXqz8zZbsyg8ny9kDkAF3l1Ne7phPJCh0I1WMnf1P7s4P7IgrNK0By9fEVFfVvsHC44o= X-Received: by 2002:a63:c00b:: with SMTP id h11-v6mr54796848pgg.279.1535026381308; Thu, 23 Aug 2018 05:13:01 -0700 (PDT) MIME-Version: 1.0 From: =?UTF-8?B?WWFubiBSw6lnaXMtR2lhbmFz?= Date: Thu, 23 Aug 2018 14:12:43 +0200 X-Gmail-Original-Message-ID: Message-ID: To: "caml-list@inria.fr" Content-Type: multipart/alternative; boundary="0000000000002dca370574192e07" X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.2.7 (korolev.univ-paris7.fr [194.254.61.138]); Thu, 23 Aug 2018 14:12:14 +0200 (CEST) X-Miltered: at korolev with ID 5B7EA49D.000 by Joe's j-chkmail (http : // j-chkmail dot ensmp dot fr)! X-j-chkmail-Enveloppe: 5B7EA49D.000 from mailhub.math.univ-paris-diderot.fr/mailhub.math.univ-paris-diderot.fr/null/mailhub.math.univ-paris-diderot.fr/ X-j-chkmail-Score: MSGID : 5B7EA49D.000 on korolev.univ-paris7.fr : j-chkmail score : . : R=. U=. O=. B=0.000 -> S=0.000 X-j-chkmail-Status: Ham Subject: [Caml-list] Help needed about the OCaml MOOC Reply-To: =?UTF-8?B?WWFubiBSw6lnaXMtR2lhbmFz?= X-Loop: caml-list@inria.fr X-Sequence: 17036 Errors-to: caml-list-owner@inria.fr Precedence: list Precedence: bulk Sender: caml-list-request@inria.fr X-no-archive: yes List-Id: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: --0000000000002dca370574192e07 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Dear OCaml hackers and enthusiasts, we need your help! The third edition of the OCaml MOOC will start in three weeks and that's probably the perfect opportunity for your friends and all your acquaintances to discover the beauty of functional programming in OCaml. Please, take a minute to spread the word around you! Three possible actions: 1. Convince everyone you know to register at https://tinyurl.com/ocamooc3 2. Print, post and share our flyer https://tinyurl.com/ocamooc3flyer 3. Post the announcement message which is pasted at the end of this email. It can also be found here https://gist.github.com/yurug/406b1cf63f083fd6aab76fb646aa3e39 Thank you! Roberto Di Cosmo, Yann R=C3=A9gis-Gianas and Ralf Treinen. ## Learn functional programming with the OCaml programming language ## Registrations are open! Functional programming is attracting interest from a broad range of developers because it allows to write expressive, concise and elegant programs. The course "Introduction to Functional programming using the OCaml language" introduces gradually the central notions of functional programming, via a set of video courses that are complemented by a rich set of interesting exercises that you can perform fully in your browser... Yes, this means you can start learning functional programming without any hassle: nothing to install, nothing to tune up! The programming environment is just one click away! During the course, you will discover powerful mechanisms that allow to build and manipulate complex data structures in a clean and efficient way. And you will see how functions play a central role, as first-class values that can be freely used in any place where an _expression_ can appear. Registrations are already open at https://www.fun-mooc.fr/courses/course-v1:parisdiderot+56002+session03/about The course will start on September 17th 2018, and will run for six weeks. Your expected effort is between 2 and 6 hours per week, depending on your background, including the time spent watching the short video sequences of the course, that total approximately an hour per week. This may seem a significant effort, but at the end of the course you will have actually learned a lot: the final programming project will confirm that you acquired a good mastery of functional programming and the ability to develop medium sized programs with ease. Thousands of learners attended the first two runs of this course in 2015 and 2016, and the many that completed it were extremely satisfied. To introduce you to functional programming, we have chosen to use the OCaml programming language. OCaml is a rich, elegant, efficient programming language that reconciles the conciseness and flexibility of untyped programming languages (like Python, for example) with the safety of strongly typed programming languages (like Java, for example), and that has a vibrant user community. Facebook, Microsoft, JaneStreet, Bloomberg are some big names in industry that adopted OCaml to develop cutting edge applications. The research community uses OCaml for writing tools like the proof assistant Coq, the Coccinelle program transformer, the Frama-C code analyser, or the Astree static analyser. Several start ups use OCaml to obtain tenfold gains in productivity and stability of their code base. Recently, Tezos, one of the most innovative blockchains, has developed its entire software stack using OCaml to get high insurance about the execution of smart contracts. Once you have started mastering functional programming using OCaml, we are sure that other programming languages will never look the same to you again. This course will be held in English, but subtitles are already available in English, in Portuguese and in French. ## Prerequisites To take full advantage of this course you should have already some basic knowledge of computer programming, in particular you should already know how to write simple computer programs in some programming language. For instance, you should know concepts like variables (or identifiers), functions (or procedures, methods), conditionals, and loops. --=20 Yann R=C3=A9gis-Gianas --=20 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= --0000000000002dca370574192e07 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Dear OCaml hackers and enthusiasts,

we need your help! The third edition of the OCaml MOOC will start i= n
three weeks and that's probably the perfect opportunity for= your
friends and all your acquaintances to discover the beauty o= f
functional programming in OCaml. Please, take a minute to sprea= d the word around you!

Three possible actions:

1. Convince everyone you know to register at

=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0https://tinyurl.com/o= camooc3

2. Print, post and share our flyer

=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 https://tinyurl.com/ocamo= oc3flyer

3. Post the announcement message whic= h is pasted at the end of this
=C2=A0 =C2=A0email. It can also be= found here


Thank yo= u!

Roberto Di Cosmo, Yann R=C3=A9gis-Gianas and Ra= lf Treinen.

## Learn functional programming with t= he OCaml programming language
## Registrations are open!

Functional programming is attracting interest from a broad= range of
developers because it allows to write expressive, conci= se and elegant
programs.

The course &quo= t;Introduction to Functional programming using the OCaml
language= " introduces gradually the central notions of functional
pro= gramming, via a set of video courses that are complemented by a
r= ich set of interesting exercises that you can perform fully in your
browser... Yes, this means you can start learning functional
p= rogramming without any hassle: nothing to install, nothing to tune
up! The programming environment is just one click away!

During the course, you will discover powerful mechanisms that allow= to
build and manipulate complex data structures in a clean and e= fficient way.
And you will see how functions play a central role,= as first-class values
that can be freely used in any place where= an _expression_ can appear.

Registrations are alr= eady open at


The course will start on September 17th 2018, and will run for six = weeks.

Your expected effort is between 2 and 6 hou= rs per week, depending on your
background, including the time spe= nt watching the short video sequences
of the course, that total a= pproximately an hour per week.

This may seem a sig= nificant effort, but at the end of the course you will
have actua= lly learned a lot: the final programming project will confirm
tha= t you acquired a good mastery of functional programming and the ability
to develop medium sized programs with ease.

Thousands of learners attended the first two runs of this course in
<= div>2015 and 2016, and the many that completed it were extremely
= satisfied.

To introduce you to functional programm= ing, we have chosen to use the
OCaml programming language. OCaml = is a rich, elegant, efficient programming
language that reconcile= s the conciseness and flexibility of untyped
programming language= s (like Python, for example) with the safety of
strongly typed pr= ogramming languages (like Java, for example), and that has
a vibr= ant user community.

Facebook, Microsoft, JaneStree= t, Bloomberg are some big names in
industry that adopted OCaml to= develop cutting edge applications. The
research community uses O= Caml for writing tools like the proof
assistant Coq, the Coccinel= le program transformer, the Frama-C code
analyser, or the Astree = static analyser.=C2=A0 Several start ups use OCaml
to obtain tenf= old gains in productivity and stability of their code
base. Recen= tly, Tezos, one of the most innovative blockchains, has
developed= its entire software stack using OCaml to get high insurance
abou= t the execution of smart contracts.

Once you have = started mastering functional programming using OCaml, we are
sure= that other programming languages will never look the same to you
again.

This course will be held in English, but s= ubtitles are already available
in English, in Portuguese and in F= rench.

## Prerequisites

T= o take full advantage of this course you should have already some basic
knowledge of computer programming, in particular you should already = know
how to write simple computer programs in some programming la= nguage. For
instance, you should know concepts like variables (or= identifiers),
functions (or procedures, methods), conditionals, = and loops.

--
Yann R=C3= =A9gis-Gianas

--0000000000002dca370574192e07--