From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail1-relais-roc.national.inria.fr (mail1-relais-roc.national.inria.fr [192.134.164.82]) by walapai.inria.fr (8.13.6/8.13.6) with ESMTP id p570PdV6028481 for ; Tue, 7 Jun 2011 02:25:39 +0200 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AtoCAHRv7U3RVaE2imdsb2JhbAA9AQMJCQimBwgUAQEBCgkNBxIGIapugkKMIAqCNIRzOYhiAQEDBoMcgn8EkQOFLIYbPCyDLw X-IronPort-AV: E=Sophos;i="4.65,328,1304287200"; d="scan'208";a="110484743" Received: from mail-fx0-f54.google.com ([209.85.161.54]) by mail1-smtp-roc.national.inria.fr with ESMTP/TLS/RC4-SHA; 07 Jun 2011 02:25:33 +0200 Received: by fxm11 with SMTP id 11so5733643fxm.27 for ; Mon, 06 Jun 2011 17:25:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:reply-to:date:message-id:subject :from:to:content-type:content-transfer-encoding; bh=YF59ZgJOfLODOQE3gckQuoKEqtg9vN6KuPUZENJ9O34=; b=hUr7tO8np8NHUrmbrpcIXt+Zvrn3d5n3JrQYbCtJbCy2jk2E4XLm6r+3YagXQLki75 yZWFqH2Zkw28i3Td2dsUYwoijG1vRXP6f+cWg/7+Zg8StHmxsOSD9gP9zWPPojwVAr0e oW6kGExx1yLO86o+lP7X8kmzhK7betx5X1OEg= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:reply-to:date:message-id:subject:from:to:content-type :content-transfer-encoding; b=cEDn0kHPsvv4y/fadfn4RRWdSBQEPRtDpGNF+Xv79AulFzm7lZuxwFOaXQ+w62KXNN lUNhSiX90xTUXs5pE2IECHqRTlZQOfc4I9LZtd5G/sQe7Ogdp0S5VNLJAv1XLLIXzsm+ 3aBnydDCfZPkclxFOR1AeVILyq+bOwBDuqhTQ= MIME-Version: 1.0 Received: by 10.223.127.213 with SMTP id h21mr1027963fas.45.1307406333364; Mon, 06 Jun 2011 17:25:33 -0700 (PDT) Received: by 10.223.3.15 with HTTP; Mon, 6 Jun 2011 17:25:33 -0700 (PDT) Reply-To: yminsky@gmail.com Date: Mon, 6 Jun 2011 20:25:33 -0400 Message-ID: From: Yaron Minsky To: caml-list@inria.fr Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by walapai.inria.fr id p570PdV6028481 Subject: [Caml-list] REMINDER: CUFP 2011 deadline June 15th CUFP is a workshop for commercial users of functional programming, and the dealine for proposals is fast approaching.  If you use OCaml (or any other functional language) for practical applications, then you should consider applying!  CUFP is a lot of fun, and this year it will be happening in Asia for the first time, in Tokyo.  As usual, CUFP is co-located with ICFP. You can find the call for presentations here: http://cufp.org/2011-call-presentations and I've also included a text version below: =============================================== CUFP Workshop Sponsored by SIGPLAN, Co-located with ICFP 2011 Tokyo, Japan Sep 22-24 Proposal Submission Deadline 15 June 2011 =============================================== Functional programming languages have been a hot topic of academic research for over 35 years, and they have seen an ever larger practical impact in settings ranging from tech startups to financial firms to biomedical research labs. At the same time, a vigorous community of programmers employing functional languages has come into existence. CUFP is designed to serve this community. The annual CUFP workshop is a place where people can see how others are using functional programming to solve real world problems; where practitioners meet and collaborate; where language designers and users can share ideas about the future of their favorite language; and where one can learn practical techniques and approaches for putting functional programming to work. Giving a CUFP Talk ================== If you have experience using functional languages in a practical setting, we invite you to submit a proposal to give a talk at the workshop. We're looking for two kinds of talks: **Experience reports** are typically 25 minutes long, and aim to inform participants about how functional programming plays out in real-world applications, focusing especially on lessons learned and insights gained. Experience reports don't need to be highly technical; reflections on the commercial, management, or software engineering aspects are, if anything, more important. **Technical talks** are also 25 minutes long, and should focus on teaching the audience something about a particular technique or methodology, from the point of view of someone who has seen it play out in practice. These talks could cover anything from techniques for building functional concurrent applications, to managing dynamic reconfigurations, to design recipes for using types effectively in large-scale applications. While these talks will often be based on a particular language, they should be accessible to a broad range of programmers. If you are interested in offering a talk, or nominating someone to do so, send an e-mail to avsm2(at)cl(dot)cam(dot)ac(dot)uk or yminsky(at)janestreet(dot)com by **15 June 2011** with a short description of what you'd like to talk about or what you think your nominee should give a talk about. Such descriptions should be about one page long. There will be a short scribes report of the presentations and discussions but not of the details of individual talks, as the meeting is intended to be more a discussion forum than a technical interchange. *You do not need to submit a paper*, just a proposal for your talk! Program Committee ----------------- * Anil Madhavapeddy (University of Cambridge) * Yaron Minsky (Jane Street) * Jun Furuse (Standard Chartered) * Marius Eriksen (Twitter Inc.) * Michael Williams (Ericsson) * Mike McClurg (Citrix Systems R&D) * R. Kent Dybvig (Indiana University) * Richard Minerich (Bayard Rock) * Sally Browning (Galois) * Shankar Natarajan (SRI Inc.) More information ---------------- For more information on CUFP, including videos of presentations from previous years, take a look at the CUFP website at . Note that presenters, like other attendees, will need to register for the event. Presentations will be video taped and presenters will be expected to sign an ACM copyright release form. Acceptance and rejection letters will be sent out by July 15th. Guidance on giving a great CUFP talk ------------------------------- * **Focus on the interesting bits**: Think about what will distinguish your talk, and what will engage the audience, and focus there. There are a number of places to look for those interesting bits. * **Setting**: There are a few areas where FP is pretty well established, including formal verification, financial processing and server-side web-services. An unusual setting can be a source of interest. If you're deploying FP-based mobile UIs or building servers on oil rigs, then the challenges of that scenario are worth focusing on. Did FP help or hinder in adapting to the setting? * **Social**: as with any new technology, there are often barriers to gaining acceptance within an organisation (be it a startup or a big corporation). Did you face any objections with your choice of language (e.g. hiring worries, risk of new technology, training difficulty). How did this pan out and are there lessons in there for others? * **Technology**: The CUFP audience is hungry to learn about how FP techniques work in practice. What design patterns have you applied, and to what areas? Did you use functional reactive programming for user interfaces, or DSLs for playing chess, or fault-tolerant actors for large scale geological data processing? Teach us something about the techniques you used, and why we should consider using them ourselves. * **Getting things done**: How did you deal with large software development in the absence of a myriad of pre-existing support that are often expected in larger commercial environments (IDEs, coverage tools, debuggers, profilers) and without larger, proven bodies of libraries? Did you hit any brick walls that required support from the community? * **Don't just be a cheerleader**: It's easy to write a rah-rah talk about how well FP worked for you, but CUFP is more interesting when the talks also spend time on what _doesn't_ work. Even when the results were all great, you should spend more time on the challenges along the way than on the parts that went smoothly. * **Don't go too fast**: CUFP talks are short --- you have 25 minutes to get your point across. So don't rush through a lot of technical material at high speed. * **Keep your slides light**: Don't put too much on your slides. You especially shouldn't be reading sentences from your slides aloud. Slides are best when used for keeping track of the broad structure of your talk, and presenting code snippets or graphics. Also, keep your font sizes nice and big so people can read from the back of the room! * **Give a talk that you would love**: As a practitioner of functional programming, ask yourself what topics *you* would like to hear more about, and guide your talk towards those areas.