PACMPL (ICFP) seeks contributions on the design, implementations, principles, and uses of functional programming, covering the entire spectrum of work, from practice to theory, including its peripheries. Authors of papers published in this issue of PACMPL will present their work at during the in-person conference, providing an opportunity for researchers and developers to hear about the latest work in functional programming.
Tue 5 SepDisplayed time zone: Pacific Time (US & Canada) change
08:50 - 09:00 | WelcomeICFP Papers and Events / ICFP Keynotes at A - Grand Ballroom 2 Chair(s): Nikhil Swamy Microsoft Research | ||
08:50 10m | Welcome ICFP Papers and Events Nikhil Swamy Microsoft Research |
09:00 - 10:00 | Morning keynoteICFP Keynotes / ICFP Papers and Events at A - Grand Ballroom 2 Chair(s): Sam Lindley University of Edinburgh | ||
09:00 60mKeynote | Programming for the planet ICFP Keynotes Anil Madhavapeddy University of Cambridge, UK |
10:00 - 10:30 | |||
10:30 - 12:00 | |||
10:30 30mTalk | A General Fine-Grained Reduction Theory for Effect Handlers ICFP Papers and Events Filip Sieczkowski Heriot-Watt University, Mateusz Pyzik University of Wrocław, Dariusz Biernacki University of Wrocław DOI | ||
11:00 30mTalk | Modular Models of Monoids with Operations ICFP Papers and Events DOI | ||
11:30 30mTalk | With or Without You: Programming with Effect Exclusion ICFP Papers and Events Matthew Lutze Aarhus University, Magnus Madsen Aarhus University, Philipp Schuster University of Tübingen, Jonathan Immanuel Brachthäuser University of Tübingen DOI |
10:30 - 12:00 | |||
10:30 30mTalk | Is Sized Typing for Coq Practical?JFP Presentation ICFP Papers and Events Jonathan Chan University of Pennsylvania, Yufeng Li University of Waterloo, William J. Bowman University of British Columbia Link to publication DOI Media Attached | ||
11:00 30mTalk | Dependently-Typed Programming with Logical Equality Reflection ICFP Papers and Events DOI | ||
11:30 30mTalk | A Graded Modal Dependent Type Theory with a Universe and Erasure, Formalized ICFP Papers and Events Andreas Abel Gothenburg University, Nils Anders Danielsson Chalmers and Gothenburg University, Oskar Eriksson Chalmers and Gothenburg University DOI |
12:00 - 13:30 | |||
13:30 - 14:30 | Afternoon keynoteICFP Keynotes / ICFP Papers and Events at A - Grand Ballroom 2 Chair(s): Nikhil Swamy Microsoft Research | ||
13:30 60mKeynote | As low-level as possible, but no lower ICFP Keynotes Andreas Rossberg Independent |
14:30 - 15:00 | |||
15:00 - 16:00 | Concurrency and distributionICFP Papers and Events at A - Grand Ballroom 2 Chair(s): Satnam Singh Groq | ||
15:00 30mTalk | Special Delivery: Programming with Mailbox Types ICFP Papers and Events Simon Fowler University of Glasgow, Duncan Paul Attard University of Glasgow, Franciszek Sowul University of Glasgow, Simon J. Gay University of Glasgow, UK, Phil Trinder University of Glasgow DOI Pre-print | ||
15:30 30mTalk | HasChor: Functional Choreographic Programming for All (Functional Pearl)Functional PearlDistinguished Paper ICFP Papers and Events Gan Shen University of California, Santa Cruz, USA, Shun Kashiwa University of California, Santa Cruz, Lindsey Kuper University of California, Santa Cruz DOI Pre-print |
15:00 - 16:00 | FixpointsICFP Papers and Events at B - Fifth Avenue Chair(s): Sam Tobin-Hochstadt Indiana University | ||
15:00 30mTalk | Combinator-Based Fixpoint Algorithms for Big-Step Abstract Interpreters ICFP Papers and Events DOI | ||
15:30 30mTalk | More Fixpoints! (Functional Pearl)Functional Pearl ICFP Papers and Events Joachim Breitner unaffiliated DOI Pre-print File Attached |
16:00 - 16:30 | |||
16:30 - 17:30 | |||
16:30 35m | Student research contest talks ICFP Papers and Events | ||
17:05 25m | Programming contest report ICFP Papers and Events |
18:00 - 19:30 | |||
Wed 6 SepDisplayed time zone: Pacific Time (US & Canada) change
09:00 - 10:00 | |||
09:00 60mKeynote | TypeScript: Static types for JavaScript ICFP Keynotes Anders Hejlsberg Microsoft |
10:00 - 10:30 | |||
10:30 - 12:00 | Verification 1ICFP Papers and Events at A - Grand Ballroom 2 Chair(s): Tahina Ramananandro Microsoft Research | ||
10:30 30mTalk | Modularity, Code Specialization, and Zero-Cost Abstractions for Program Verification ICFP Papers and Events DOI | ||
11:00 30mTalk | Higher-Order Property-Directed Reachability ICFP Papers and Events Hiroyuki Katsura University of Tokyo, Naoki Kobayashi University of Tokyo, Ryosuke Sato University of Tokyo DOI | ||
11:30 30mTalk | Verifying Reliable Network Components in a Distributed Separation Logic with Dependent Separation ProtocolsRemote ICFP Papers and Events Léon Gondelman Aarhus University, Jonas Kastberg Hinrichsen Aarhus University, Denmark, Mário Pereira NOVA LINCS & DI -- Nova School of Science and Technology, Amin Timany Aarhus University, Lars Birkedal Aarhus University DOI |
10:30 - 12:00 | |||
10:30 30mTalk | Reflecting on Random GenerationDistinguished Paper ICFP Papers and Events Harrison Goldstein University of Pennsylvania, Samantha Frohlich University of Bristol, Meng Wang University of Bristol, Benjamin C. Pierce University of Pennsylvania DOI | ||
11:00 30mTalk | Etna: An Evaluation Platform for Property-Based Testing (Experience Report)Experience Report ICFP Papers and Events Jessica Shi University of Pennsylvania, Alperen Keles University of Maryland at College Park, Harrison Goldstein University of Pennsylvania, Benjamin C. Pierce University of Pennsylvania, Leonidas Lampropoulos University of Maryland, College Park DOI | ||
11:30 30mTalk | Formal Specification and Testing for Reinforcement LearningRemote ICFP Papers and Events Mahsa Varshosaz IT University of Copenhagen, Denmark, Mohsen Ghaffari IT University of Copenhagen, Einar Broch Johnsen University of Oslo, Andrzej Wąsowski IT University of Copenhagen, Denmark DOI |
12:00 - 13:30 | |||
13:30 - 14:30 | Circuits and monoidsICFP Papers and Events at A - Grand Ballroom 2 Chair(s): Patrik Jansson Chalmers University of Technology | ||
13:30 30mTalk | Timely Computation ICFP Papers and Events Conal Elliott Independenet DOI Pre-print | ||
14:00 30mTalk | A well-known representation of monoids and its application to the function ‘vector reverse’Functional PearlJFP PresentationRemote ICFP Papers and Events Wouter Swierstra Utrecht University, Netherlands Link to publication DOI |
13:30 - 14:30 | |||
13:30 30mTalk | Embedding by Unembedding ICFP Papers and Events Kazutaka Matsuda Tohoku University, Samantha Frohlich University of Bristol, Meng Wang University of Bristol, Nicolas Wu Imperial College London DOI | ||
14:00 30mTalk | MacoCaml: Staging Composable and Compilable Macros ICFP Papers and Events Ningning Xie University of Toronto, Leo White Jane Street, Olivier Nicole Tarides, Jeremy Yallop University of Cambridge DOI Pre-print |
14:30 - 15:00 | |||
15:00 - 16:00 | |||
15:00 30mTalk | Generic Programming with Extensible Data Types: Or, Making Ad Hoc Extensible Data Types Less Ad Hoc ICFP Papers and Events DOI Pre-print | ||
15:30 30mTalk | Typing Records, Maps, and Structs ICFP Papers and Events Giuseppe Castagna CNRS; Université Paris Cité DOI |
15:00 - 16:00 | Modal FRPICFP Papers and Events at B - Fifth Avenue Chair(s): Amos Robinson Australian National University, Australia | ||
15:00 30mTalk | Modal FRP for all: Functional reactive programming without space leaks in HaskellJFP Presentation ICFP Papers and Events Patrick Bahr IT University of Copenhagen Link to publication DOI | ||
15:30 30mTalk | Asynchronous Modal FRP ICFP Papers and Events DOI Pre-print |
16:00 - 16:30 | |||
16:30 - 17:15 | Business meetingICFP Papers and Events at A - Grand Ballroom 2 Chair(s): Nikhil Swamy Microsoft Research | ||
16:30 15mAwards | Awards ICFP Papers and Events File Attached | ||
16:45 5m | JFP at ICFP ICFP Papers and Events Gabriele Keller Utrecht University | ||
16:50 5m | Diversity, equality, and inclusion at ICFP ICFP Papers and Events Daan Leijen Microsoft Research | ||
16:55 15m | PC Chair's report ICFP Papers and Events Sam Lindley University of Edinburgh File Attached | ||
17:10 5m | ICFP 2024 announcement ICFP Papers and Events Marco Gaboardi Boston University File Attached |
Thu 7 SepDisplayed time zone: Pacific Time (US & Canada) change
09:00 - 10:00 | KeynoteICFP Keynotes / ICFP Papers and Events at A - Grand Ballroom 2 Chair(s): Matthew Flatt University of Utah | ||
09:00 60mKeynote | The Cogent and Dargent approach to facilitating verified software development ICFP Keynotes Christine Rizkallah University of Melbourne |
10:00 - 10:30 | |||
10:30 - 12:00 | Verification 2ICFP Papers and Events at B - Fifth Avenue Chair(s): Niki Vazou IMDEA Software Institute | ||
10:30 30mTalk | Explicit Refinement Types ICFP Papers and Events DOI | ||
11:00 30mTalk | Flexible Instruction-Set Semantics via Abstract Monads (Experience Report)Experience Report ICFP Papers and Events Thomas Bourgeat , Ian Clester Georgia Institute of Technology, Andres Erbsen MIT, Samuel Gruetter Massachusetts Institute of Technology, Pratap Singh CMU, Andy Wright MIT, Adam Chlipala Massachusetts Institute of Technology DOI |
12:00 - 13:30 | |||
13:30 - 14:30 | Session typing functional pearlsICFP Papers and Events at A - Grand Ballroom 2 Chair(s): Andrew K. Hirsch University at Buffalo, SUNY | ||
13:30 30mTalk | Intrinsically Typed Sessions with Callbacks (Functional Pearl)Functional Pearl ICFP Papers and Events Peter Thiemann University of Freiburg, Germany DOI | ||
14:00 30mTalk | Dependent Session Protocols in Separation Logic from First Principles (Functional Pearl)Functional PearlRemote ICFP Papers and Events Jules Jacobs Radboud University Nijmegen, Jonas Kastberg Hinrichsen Aarhus University, Denmark, Robbert Krebbers Radboud University Nijmegen DOI |
13:30 - 14:30 | Blame and educationICFP Papers and Events at B - Fifth Avenue Chair(s): Benjamin C. Pierce University of Pennsylvania | ||
13:30 30mTalk | How to Evaluate Blame for Gradual Types, Part 2 ICFP Papers and Events Lukas Lazarek Northwestern University, Ben Greenman Brown University, Matthias Felleisen PLT @ Northeastern University, Christos Dimoulas PLT @ Northwestern University DOI | ||
14:00 30mTalk | What Happens When Students Switch (Functional) Languages (Experience Report)RemoteExperience Report ICFP Papers and Events Kuang-Chen Lu Brown University, USA, Shriram Krishnamurthi Brown University, United States, Kathi Fisler Brown University, Ethel Tshukudu University of Botswana DOI |
14:30 - 15:00 | |||
15:00 - 16:00 | |||
15:00 30mTalk | Calculating Compilers for Concurrency ICFP Papers and Events DOI Pre-print | ||
15:30 30mTalk | Trustworthy Runtime Verification via Bisimulation (Experience Report)Experience Report ICFP Papers and Events Ryan Scott Galois, Inc., Mike Dodds Galois, Inc., Robert Dockins Amazon, Ivan Perez NASA Ames Research Center, Alwyn Goodloe NASA Langley Research Center DOI Pre-print |
15:00 - 16:00 | Data representationICFP Papers and Events at B - Fifth Avenue Chair(s): Lennart Augustsson Epic Games | ||
15:00 30mTalk | Read/write factorizable programsJFP Presentation ICFP Papers and Events Link to publication DOI | ||
15:30 30mTalk | Bit-Stealing Made Legal: Compilation for Custom Memory Representations of Algebraic Data Types ICFP Papers and Events Thaïs Baudon ENS de Lyon & LIP, Gabriel Radanne Inria, Laure Gonnord Univ. Grenoble Alpes, Grenoble INP, LCIS, Valence, France DOI Pre-print Media Attached File Attached |
16:00 - 16:30 | |||
16:30 - 17:30 | Fireside chatICFP Papers and Events at A - Grand Ballroom 2 Chair(s): Amal Ahmed Northeastern University, USA | ||
16:30 60mOther | Fireside chat: Amal Ahmed hosts Felix Klock and Greg Morrisett ICFP Papers and Events C: Amal Ahmed Northeastern University, USA, P: Felix Klock Amazon Web Services, P: Greg Morrisett Cornell University |
17:45 - 18:15 | Ask me anything with Tim SweeneyICFP Papers and Events at A - Grand Ballroom 2 Chair(s): Simon Peyton Jones Epic Games | ||
17:45 30mLive Q&A | Ask me anything with Tim Sweeney ICFP Papers and Events Tim Sweeney Epic Games |
Accepted Papers
Call for Papers
PACMPL issue ICFP 2023 seeks original papers on the art and science of functional programming. Submissions are invited on all topics from principles to practice, from foundations to features, and from abstraction to application. The scope includes all languages that encourage functional programming, including both purely applicative and imperative languages, as well as languages with objects, concurrency, or parallelism. Topics of interest include (but are not limited to):
-
Language Design: concurrency, parallelism, and distribution; modularity; components and composition; meta-programming; macros; pattern matching; type systems; type inference; dependent types; effect types; gradual types; refinement types; session types; interoperability; domain-specific languages; imperative programming; object-oriented programming; logic programming; probabilistic programming; reactive programming; generic programming; bidirectional programming.
-
Implementation: abstract machines; virtual machines; interpretation; compilation; compile-time and run-time optimisation; garbage collection and memory management; runtime systems; multi-threading; exploiting parallel hardware; interfaces to foreign functions, services, components, or low-level machine resources.
-
Software-Development Techniques: algorithms and data structures; design patterns; specification; verification; validation; proof assistants; debugging; testing; tracing; profiling; build systems; program synthesis.
-
Foundations: formal semantics; lambda calculus; program equivalence; rewriting; type theory; logic; category theory; computational effects; continuations; control; state; names and binding; program verification.
-
Analysis and Transformation: control flow; data flow; abstract interpretation; partial evaluation; program calculation.
-
Applications: symbolic computing; formal-methods tools; artificial intelligence; systems programming; distributed systems and web programming; hardware design; databases; scientific and numerical computing; graphical user interfaces; graphics and multimedia; GPU programming; scripting; system administration; security.
-
Education: teaching introductory programming; mathematical proof; algebra.
Submissions will be evaluated according to their relevance, correctness, significance, originality, and clarity. Each submission should explain its contributions in both general and technical terms, clearly identifying what has been accomplished, explaining why it is significant, and comparing it with previous work. The technical content should be accessible to a broad audience.
PACMPL issue ICFP 2023 also welcomes submissions in two separate categories — Functional Pearls and Experience Reports — that must be marked as such when submitted and that need not report original research results. Detailed guidelines on both categories are given at the end of this call.
Submissions from underrepresented groups are encouraged. Authors who require financial support to attend the conference can apply for PAC funding (http://www.sigplan.org/PAC/).
The General Chair and PC Chair may not submit papers. PC members (other than the PC Chair) may submit papers. However, SIGPLAN guidelines dictate that they be held to a higher standard: a PC paper can be accepted if after the discussion it has at least one strongly-supportive review and no detractors. Each PC member may be listed as a coauthor on a maximum of three submissions.
Please contact the Programme Chair if you have questions or are concerned about the appropriateness of a topic.
About PACMPL
Proceedings of the ACM on Programming Languages (PACMPL https://pacmpl.acm.org/) is a Gold Open Access journal publishing research on all aspects of programming languages, from design to implementation and from mathematical formalisms to empirical studies. Each issue of the journal is devoted to a particular subject area within programming languages and will be announced through publicised Calls for Papers, like this one.
Preparation of submissions
Deadline: The deadline for submissions is Wednesday, March 1, 2023, Anywhere on Earth (https://www.timeanddate.com/time/zones/aoe). This deadline will be strictly enforced.
Formatting: Submissions must be in PDF format, printable in black and white on US Letter sized paper and interpretable by common PDF tools. All submissions must adhere to the “ACM Small” template that is available (in both LaTeX and Word formats) from https://www.acm.org/publications/authors/submissions.
There is a limit of 25 pages for a full paper or Functional Pearl and 12 pages for an Experience Report; in either case, the bibliography and an optional clearly marked appendix will not be counted against these limits. Submissions that exceed the page limits or, for other reasons, do not meet the requirements for formatting, will be summarily rejected.
See also PACMPL’s Information and Guidelines for Authors at https://pacmpl.acm.org/authors.cfm.
Submission: Submissions will be accepted at https://icfp23.hotcrp.com/
Improved versions of a paper may be submitted at any point before the submission deadline using the same web interface.
Author Response Period: Authors will have a 72-hour period, starting at 12:00 (noon) UTC on Monday, May 1, 2023, to read reviews and respond to them.
Appendix and Supplementary Material: Authors have the option to include a clearly marked appendix and/or to attach supplementary material to a submission, on the understanding that reviewers may choose not to look at such an appendix or supplementary material. Supplementary material may be uploaded as a separate PDF document or tarball. Any supplementary material must be uploaded at submission time, not by providing a URL in the paper that points to an external repository.
Authors are free to upload both anonymised and non-anonymised supplementary material. Anonymised supplementary material will be visible to reviewers immediately; non-anonymised supplementary material (which must be submitted separately) will be revealed to reviewers only after they have submitted their review of the paper and learned the identity of the author(s).
Authorship Policies: All submissions are expected to comply with the ACM Policies for Authorship that are detailed at https://www.acm.org/publications/authors/information-for-authors.
Republication Policies: Each submission must adhere to SIGPLAN’s republication policy, as explained on the web at http://www.sigplan.org/Resources/Policies/Republication.
ORCID: ORCID provides a persistent digital identifier (an ORCID iD) that you own and control, and that distinguishes you from every other researcher: https://orcid.org/. ACM now require an ORCID iD for every author of a paper, not just the corresponding author. So, the author who is filling out the permission form should make sure they have the ORCID iDs for all of their coauthors before filling out the form. Any authors who do not yet have an ORCID iD can go to https://orcid.org/register to have one assigned.
Review Process
This section outlines the two-stage process with lightweight double-blind reviewing that will be used to select papers for PACMPL issue ICFP 2023.
New this year: ICFP 2023 will have an Associate Chair who will help the PC Chair monitor reviews, solicit external expert reviews for submissions when there is not enough expertise on the committee, and facilitate reviewer discussions.
PACMPL issue ICFP 2023 will employ a two-stage review process. The first stage in the review process will assess submitted papers using the criteria stated above and will allow for feedback and input on initial reviews through the author response period mentioned previously. As a result of the review process, a set of papers will be conditionally accepted and all other papers will be rejected. Authors will be notified of these decisions on May 18, 2023.
Authors of conditionally accepted papers will be provided with committee reviews along with a set of mandatory revisions. By June 15, 2023, the authors may provide a second submission. The second and final reviewing phase assesses whether the mandatory revisions have been adequately addressed by the authors and thereby determines the final accept/reject status of the paper. The intent and expectation is that the mandatory revisions can feasibly be addressed within three weeks.
The second submission should clearly identify how the mandatory revisions were addressed. To that end, the second submission must be accompanied by a cover letter mapping each mandatory revision request to specific parts of the paper. The cover letter will facilitate a quick second review, allowing for confirmation of final acceptance within two weeks. Conversely, the absence of a cover letter will be grounds for the paper’s rejection.
PACMPL issue ICFP 2023 will employ a lightweight double-blind reviewing process.
To facilitate this, submitted papers must adhere to two rules:
-
author names and institutions must be omitted, and
-
references to authors’ own related work should be in the third person (e.g., not “We build on our previous work …” but rather “We build on the work of …”).
The purpose of this process is to help the reviewers come to an initial judgement about the paper without bias, not to make it impossible for them to discover the authors if they were to try. Nothing should be done in the name of anonymity that weakens the submission or makes the job of reviewing the paper more difficult (e.g., important background references should not be omitted or anonymised). In addition, authors should feel free to disseminate their ideas or draft versions of their papers as they normally would. For instance, authors may post drafts of their papers on the web or give talks on their research ideas.
Information for Authors of Accepted Papers
-
As a condition of acceptance, final versions of all papers must adhere to the ACM Small format. The page limit for the final versions of papers will be increased by two pages to help authors respond to reviewer comments and mandatory revisions: 27 pages plus bibliography for a regular paper or Functional Pearl, 14 pages plus bibliography for an Experience Report.
-
Authors of accepted submissions will be required to agree to one of the three ACM licensing options, one of which is Creative Commons CC-BY publication; this is the option recommended by the PACMPL editorial board. A reasoned argument in favour of this option can be found in the article Why CC-BY? published by OASPA, the Open Access Scholarly Publishers Association. The other options are copyright transfer to ACM or retaining copyright but granting ACM exclusive publication rights.
-
PACMPL is a Gold Open Access journal, and authors are encouraged to publish their work under a CC-BY license. Gold Open Access guarantees permanent free online access to the definitive version in the ACM Digital Library, and the recommended CC-BY option also allows anyone to copy and distribute the work with attribution. Gold Open Access has been made possible by generous funding through ACM SIGPLAN, which will cover all open access costs in the event authors cannot. Authors who can cover the costs may do so by paying an Article Processing Charge (APC). PACMPL, SIGPLAN, and ACM Headquarters are committed to exploring routes to making Gold Open Access publication both affordable and sustainable.
-
ACM Author-Izer is a unique service that enables ACM authors to generate and post links on either their home page or institutional repository for visitors to download the definitive version of their articles from the ACM Digital Library at no charge. Downloads through Author-Izer links are captured in official ACM statistics, improving the accuracy of usage and impact measurements. Consistently linking to the definitive version of an ACM article should reduce user confusion over article versioning. After an article has been published and assigned to the appropriate ACM Author Profile pages, authors should visit http://www.acm.org/publications/acm-author-izer-service to learn how to create links for free downloads from the ACM DL.
-
The official publication date is the date the papers are made available in the ACM Digital Library. This date may be up to two weeks prior to the first day of the conference. The official publication date affects the deadline for any patent filings related to published work.
-
Authors of each accepted submission are invited to attend and be available for the presentation of that paper at the conference. The schedule for presentations will be determined and shared with authors after the full program has been selected.
Artifact Evaluation
Authors of papers that are conditionally accepted in the first phase of the review process will be encouraged (but not required) to submit supporting materials for Artifact Evaluation. These items will then be reviewed by an Artifact Evaluation Committee, separate from the paper Review Committee, whose task is to assess how the artifacts support the work described in the associated paper. Papers that go through the Artifact Evaluation process successfully will receive a seal of approval printed on the papers themselves. Authors of accepted papers will be encouraged to make the supporting materials publicly available upon publication of the papers, for example, by including them as “source materials” in the ACM Digital Library. An additional seal will mark papers whose artifacts are made available, as outlined in the ACM guidelines for artifact badging.
Participation in Artifact Evaluation is voluntary and will not influence the final decision regarding paper acceptance.
Special categories of papers
In addition to research papers, PACMPL issue ICFP solicits two kinds of papers that do not require original research contributions: Functional Pearls, which are full papers, and Experience Reports, which are limited to half the length of a full paper. Authors submitting such papers should consider the following guidelines.
Functional Pearls
A Functional Pearl is an elegant essay about something related to functional programming. Examples include, but are not limited to:
-
a new and thought-provoking way of looking at an old idea
-
an instructive example of program calculation or proof
-
a nifty presentation of an old or new data structure
-
an interesting application of functional programming techniques
-
a novel use or exposition of functional programming in the classroom
While pearls often demonstrate an idea through the development of a short program, there is no requirement or expectation that they do so. Thus, they encompass the notions of theoretical and educational pearls.
Functional Pearls are valued as highly and judged as rigorously as ordinary papers, but using somewhat different criteria. In particular, a pearl is not required to report original research, but, it should be concise, instructive, and entertaining. A pearl is likely to be rejected if its readers get bored, if the material gets too complicated, if too much-specialised knowledge is needed, or if the writing is inelegant. The key to writing a good pearl is polishing.
A submission that is intended to be treated as a pearl must be marked as such on the submission web page and should contain the words “Functional Pearl” somewhere in its title or subtitle. These steps will alert reviewers to use the appropriate evaluation criteria. Pearls will be combined with ordinary papers, however, for the purpose of computing the conference’s acceptance rate.
Experience Reports
The purpose of an Experience Report is to describe the experience of using functional programming in practice, whether in industrial application, tool development, programming education, or any other area.
Possible topics for an Experience Report include, but are not limited to:
-
insights gained from real-world projects using functional programming
-
comparison of functional programming with conventional programming in the context of an industrial project or a university curriculum
-
project-management, business, or legal issues encountered when using functional programming in a real-world project
-
curricular issues encountered when using functional programming in education
-
real-world constraints that created special challenges for an implementation of a functional language or for functional programming in general
An Experience Report is distinguished from a normal PACMPL issue ICFP paper by its title, by its length, and by the criteria used to evaluate it.
-
Both in the papers and in any citations, the title of each accepted Experience Report must end with the words “(Experience Report)” in parentheses. The acceptance rate for Experience Reports will be computed and reported separately from the rate for ordinary papers.
-
Experience Report submissions can be at most 12 pages long, excluding bibliography.
-
Each accepted Experience Report will be presented at the conference, but depending on the number of Experience Reports and regular papers accepted, authors of Experience Reports may be asked to give shorter talks.
-
Because the purpose of Experience Reports is to enable our community to understand the application of functional programming, an acceptable Experience Report need not add to the body of knowledge of the functional-programming community by presenting novel results or conclusions. It is sufficient if the report describes an illuminating experience with functional programming, or provides evidence for a clear thesis about the use of functional programming. The experience or thesis must be relevant to ICFP, but it need not be novel.
The review committee will accept or reject Experience Reports based on whether they judge the paper to illuminate some aspect of the use of functional programming. Anecdotal evidence will be acceptable provided it is well-argued and the author explains what efforts were made to gather as much evidence as possible. Typically, papers that show how functional programming was used are more convincing than papers that say only that functional programming was used. It can be especially effective to present comparisons of the situations before and after the experience described in the paper, but other kinds of evidence would also make sense, depending on context. Experience drawn from a single person’s experience may be sufficient, but more weight will be given to evidence drawn from the experience of groups of people.
An Experience Report should be short and to the point. For an industrial project, it should make a claim about how well functional programming worked and why; for a pedagogy paper, it might make a claim about the suitability of a particular teaching style or educational exercise. Either way, it should produce evidence to substantiate the claim. If functional programming worked in this case in the same ways it has worked for others, the paper need only summarise the results — the main part of the paper should discuss how well it worked and in what context. Most readers will not want to know all the details of the experience and its implementation, but the paper should characterise it and its context well enough so that readers can judge to what degree this experience is relevant to their own circumstances. The paper should take care to highlight any unusual aspects; specifics about the experience are more valuable than generalities about functional programming.
If the paper not only describes experience but also presents new technical results, or if the experience refutes cherished beliefs of the functional-programming community, it may be better to submit it as a full paper, which will be judged by the usual criteria of novelty, originality, and relevance. The Program Chair will be happy to advise on any concerns about which category to submit to.