From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@sympa.inria.fr Delivered-To: caml-list@sympa.inria.fr Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by sympa.inria.fr (Postfix) with ESMTPS id 079F37FF1D for ; Tue, 28 Jun 2016 00:02:49 +0200 (CEST) IronPort-PHdr: 9a23:tqEt8RUuqQ5LBDLJCAyJEUV6EbjV8LGtZVwlr6E/grcLSJyIuqrYZhKFt8tkgFKBZ4jH8fUM07OQ6PG4HzVaqs7c+Fk5M7V0HycfjssXmwFySOWkMmbcaMDQUiohAc5ZX0Vk9XzoeWJcGcL5ekGA6ibqtW1aJBzzOEJPK/jvHcaK1oLshrj0oseYO1gArQH+SIs6FA+xowTVu5teqqpZAYF19CH0pGBVcf9d32JiKAHbtR/94sCt4MwrqHwI6LoJvvRNWqTifqk+UacQTHF/azh0t4XXskzoRA6Lrl8dSXlexhFBBgyA6BDhQr/wtDH7v6xzwn/JE9fxSOUWVC6v6rYjeRbsjCAff2oo+WXTjdRYg6dSoRbnrBt6ld2HKLqJPeZzK/uONegRQnBMC4MID3RM Authentication-Results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=yallop@gmail.com; spf=Pass smtp.mailfrom=yallop@gmail.com; spf=None smtp.helo=postmaster@mail-qk0-f170.google.com Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of yallop@gmail.com) identity=pra; client-ip=209.85.220.170; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="yallop@gmail.com"; x-sender="yallop@gmail.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail2-smtp-roc.national.inria.fr: domain of yallop@gmail.com designates 209.85.220.170 as permitted sender) identity=mailfrom; client-ip=209.85.220.170; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="yallop@gmail.com"; x-sender="yallop@gmail.com"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of postmaster@mail-qk0-f170.google.com) identity=helo; client-ip=209.85.220.170; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="yallop@gmail.com"; x-sender="postmaster@mail-qk0-f170.google.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A0DMAQDXoXFXhqrcVdFbg1w4fQanMIdKjSgXC4UsSgKBKwc7EQEBAQEBAQEBEQEBAQgLCwkhL4IyghsBAQQSCwYdARsYBQEDDAYFCw8CJgICIgERAQUBHAYTIodzAQMXDqIxgTE+MYs7gWqCWgWGfgoZJw1SgzgBAQEBAQUBAQEBAQEBGAIGEHGJBzwxgTmCYwQggkkLLROCRwWIFos3hTSJAIU3gWmEVIhnjkASHoEPNIIbGgSBWDsyAQGIMYFEAQEB X-IPAS-Result: A0DMAQDXoXFXhqrcVdFbg1w4fQanMIdKjSgXC4UsSgKBKwc7EQEBAQEBAQEBEQEBAQgLCwkhL4IyghsBAQQSCwYdARsYBQEDDAYFCw8CJgICIgERAQUBHAYTIodzAQMXDqIxgTE+MYs7gWqCWgWGfgoZJw1SgzgBAQEBAQUBAQEBAQEBGAIGEHGJBzwxgTmCYwQggkkLLROCRwWIFos3hTSJAIU3gWmEVIhnjkASHoEPNIIbGgSBWDsyAQGIMYFEAQEB X-IronPort-AV: E=Sophos;i="5.26,538,1459807200"; d="scan'208";a="224408770" Received: from mail-qk0-f170.google.com ([209.85.220.170]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/AES128-GCM-SHA256; 28 Jun 2016 00:02:48 +0200 Received: by mail-qk0-f170.google.com with SMTP id q79so85285773qke.0 for ; Mon, 27 Jun 2016 15:02:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=2BowfJVKBMuRdnLuiv43p+hsMO0qvMex9v8soTUvCw0=; b=ZfoqpnrlGndOvROLiEHgpkqd24HQ64E591ApNxaOjHo+/ym+Hhx2WtxqBrITmPpK3W I2V+oLbj37/uY7vf0fRoMojIGxkbEJ7zyrA/DrlhDm0aj6nxN7kVa9SFUF3QA4mNl9aX uZFMscuBuSvDwHFfVaxmBK6sSjqesY5uETxEZots8U0v/yNISixISmVmiYbJL01y8RFq XfaA8lD3QU8JKEEVbiWA12/BiUJ908TM6u/WpXYfk/7zZZn2eFTcVeAo6wS8cLtZqW+M ianrdaaVfFqTciquwexweOn2nFaQVZDWwuWsvWhPcXaJzPA75V1iZ7I0cR304NN0DHGI 6QlA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=2BowfJVKBMuRdnLuiv43p+hsMO0qvMex9v8soTUvCw0=; b=mOD42+0ElAzxjPMBzsJ/5NCvP2r6ZbB5qNfF5KfnvoymR5DHH8oS2k3zmsz9/ZXfCh FqM2XGaJZkanUGL0nkvCj4uIipG5n+mSdwwpnLp4ke57xn3z7eEnyi7phoznQz7ikMF8 4qT2IO9cp08WWE1Joczze7ki9cg1wOB4OALxbskUXgijj0ot0b+lyLPwH3yZmkrtsiG7 AhloVusFnzDWH7qoJnGQrjB4VS4uG/JwKpL8rwg29fphmKm8KqxymqWbqahN4FjOPR+F zRxClcsmom7OxaRO4XWbFxWFXT9OyQsSKsEuFFH9Sge1FaVv1DIFFkvODcerEQg23QbL tMcQ== X-Gm-Message-State: ALyK8tJ2Msx8mduJ+LRa++2v9+OxseMXJquMn+KGJ5R3/Ew2IVCBHJuS3WeACd/i41SxogNTLKLt0GCPhoYTOQ== X-Received: by 10.55.118.196 with SMTP id r187mr26030366qkc.32.1467064966670; Mon, 27 Jun 2016 15:02:46 -0700 (PDT) MIME-Version: 1.0 Received: by 10.55.182.6 with HTTP; Mon, 27 Jun 2016 15:02:46 -0700 (PDT) In-Reply-To: References: From: Jeremy Yallop Date: Mon, 27 Jun 2016 23:02:46 +0100 Message-ID: To: Caml List Cc: Gemma Gordon , Ohad Kammar Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Subject: Re: [Caml-list] International summer school on metaprogramming (Cambridge, 8-12 Aug 2016) [A final call for applications for the Metaprogramming Summer School. We're happy to announce that Oracle Labs will also sponsor this event, which will allow us to fully subsidise more applicants. If you or someone you know think of applying, please note that the deadline for applications _and_ support letters is this Thursday, 30th June. Yours, Jeremy, Gemma, and Ohad.] =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D International summer school on metaprogramming Robinson College, Cambridge, United Kingdom 8th-12th August, 2016 http://www.cl.cam.ac.uk/events/metaprog2016/ =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Metaprogramming is an approach to improving programs by treating program fragments (such as expressions or types) as values that the program can manipulate. Metaprogramming comes in various forms, including * staged programming: treating expressions as program values. The execution of a staged program is spread over several phases, with each stage using the available data to generate specialized code. Staged programming has a wide variety of applications =E2=80=94 numeric computations, parsing, database queries, generic programming, domain specific languages, and many more. Precompiling the staged code can have dramatic performance improvements, in some cases an order of magnitude or more. * generic programming: treating types as program values. Generic programming can improve code flexibility, allowing to give a single definition of a function that operates in a predictable (but not uniform) way on many different types. Generic programming techniques can be used to define a wide variety of functions, including traversals, comparisons, pretty printers, serialization functions, and many more. The goal of the summer school is to explore the state-of-the art in metaprogramming and its applications, covering both theory and practice. -------------------------------------------------------------------- Lecturers and courses Philip Wadler, Sam Lindley and Shayan Najd (University of Edinburgh) Normalisation and embedding Simon Peyton Jones (Microsoft Research) Oleg Kiselyov (Tohoku University) Type-safe embedding and optimizing domain-specific languages in the typed final style Laurence Tratt (Kings College London) The highs and lows of macros in a modern language Jeremy Yallop (University of Cambridge) Staging generic programming Martin Berger (University of Sussex) Foundations of meta-programming Chris Seaton (Oracle Labs) Self-Specialising Interpreters and Partial Evaluation Jos=C3=A9 Pedro Magalh=C3=A3es (Standard Chartered) -------------------------------------------------------------------- Prerequisites The school is aimed at graduate students in programming languages and related areas, but is open to researchers, practitioners and strong masters students with the support of a supervisor. Some experience of typed functional programming in Haskell, OCaml, Scala, or a similar language will be assumed. -------------------------------------------------------------------- Costs Thanks to generous industrial sponsorship, we are able to offer places with significantly reduced fees. There are three categories of fees, all of which cover registration, accommodation in Robinson College from Monday to Friday, and all meals and refreshments. Participants who can pay the full fees will help allocate more fully-subsidised slots to less financially-able students. Your category of fees will not have any direct bearing on your acceptance into the school, but could affect how many slots we can offer. * The full fee is =C2=A3800. * The standard (partly-subsidised) fee is =C2=A3295. * We also have a limited number of fully-subsidised places available for a nominal registration fee of =C2=A350. We will notify you of your fee upon acceptance. -------------------------------------------------------------------- Application procedure You will need to complete the online registration form at: http://www.cl.cam.ac.uk/events/metaprog2016/application.html and ensure your referees send your references to: metaprog-2016@cl.cam.ac.uk by the application deadline. TIMETABLE * 30 June: Application and reference letters deadline. * 10 July: Notification of acceptance. * 24 July: Registration deadline. * 8 August: Summer school. -------------------------------------------------------------------- Further information For questions relating to the material of the school, please contact Jeremy Yallop (jeremy.yallop@cl.cam.ac.uk) Ohad Kammar (ohad.kammar@cs.ox.ac.uk) For administrative questions, please contact Gemma Gordon (gg417@cl.cam.ac.uk)