diff --git a/events/2025-haskell-implementors-workshop.markdown b/events/2025-haskell-implementors-workshop.markdown index 42f0f328..8b21da07 100644 --- a/events/2025-haskell-implementors-workshop.markdown +++ b/events/2025-haskell-implementors-workshop.markdown @@ -11,82 +11,12 @@ The 17th Haskell Implementors' Workshop is to be held on June 6th 2025 alongside In the past the Haskell Implementors' Workshop was co-located with ICFP (International Conference on Functional Programming). However, in recent years it has become more and more challenging to attract a large enough audience and sufficiently many speakers for an appealing program. ZuriHac and the Haskell Ecosystem Workshop have become an important annual gathering of a large part of the Haskell community. This year the Haskell Implementors' Workshop will be co-located with these events to be accessible to a broader audience. -## Call for Proposals - -The call for proposals is closed. The [program](#program) can be found further below. -Lightning talks will be scheduled on the day of the event. - -### Scope and Target Audience - -The Haskell Implementors' Workshop is an ideal place to describe a Haskell extension, describe works-in-progress, demo a new Haskell-related tool, or even propose future lines of Haskell development. Members of the wider Haskell community are encouraged to attend the workshop - we need your feedback to keep the Haskell ecosystem thriving. Students working with Haskell are especially encouraged to share their work. - -The scope covers any of the following topics. There may be some topics that people feel we've missed, so by all means submit a proposal even if it doesn't fit exactly into one of these buckets: - -* Compilation techniques -* Language features and extensions -* Type system implementation -* Concurrency and parallelism: language design and implementation -* Performance, optimization and benchmarking -* Virtual machines and run-time systems -* Libraries and tools for development or deployment - -### Talks - -We invite proposals from potential speakers for talks and demonstrations. We are aiming for 20-minute talks with 5 minutes for questions and changeovers. We want to hear from people writing compilers, tools, or libraries, people with cool ideas for directions in which we should take the platform, proposals for new features to be implemented, and half-baked crazy ideas. Please submit a talk title and abstract of no more than 300 words. - -We will also have a lightning talks session. Lightning talks should be ~7mins and are scheduled on the day of the workshop. Suggested topics for lightning talks are to present a single idea, a work-in-progress project, a problem to intrigue and perplex Haskell implementors, or simply to ask for feedback and collaborators. - -### Program Committee - -* Luite Stegeman -* Jaro Reinders -* Emily Pillmore -* Rodrigo Mesquita -* Ian-Woo Kim -* Andreas Herrmann (chair) - -## In-Person Attendance - -Registration is open. Please sign up [on Eventbrite](https://www.eventbrite.com/e/2025-workshops-at-zurihac-tickets-1247256801669?aff=oddtdtcreator). Registrations for both the Haskell Ecosystem Workshop (HEW) and Haskell Implementors' Workshop (HIW) are managed using the same ticketing system. **Please make sure to include a Haskell Implementors' Workshop ticket in your booking.** - -Due to space constraints and to ensure that registered participant slots do not go unused, there will be a fee for participation. -Fees will be used to cover some of the costs of running the event, the remainder of the cost is sponsored by the Haskell Foundation. -The fee depends on participant category: - - * _Enrolled students_ ($$10) are participants who are enrolled full-time at an educational institution. - - * _Other participants_ ($$20) are participants who do not meet the criterion above. - -All fees are in US dollars. - -## Video Recordings and Live Streaming - -We will record all presentations and make them available online. - -## The Workshop - -The Haskell Implementors' Workshop is an ideal place to describe a Haskell extension, describe works-in-progress, demo a new Haskell-related tool, or even propose future lines of Haskell development. Members of the wider Haskell community are encouraged to attend the workshop - we need your feedback to keep the Haskell ecosystem thriving. Students working with Haskell are especially encouraged to share their work. - -The scope covers any of the following topics. There may be some topics that people feel we've missed, so by all means submit a proposal even if it doesn't fit exactly into one of these buckets: - -* Compilation techniques -* Language features and extensions -* Type system implementation -* Concurrency and parallelism: language design and implementation -* Performance, optimization and benchmarking -* Virtual machines and run-time systems -* Libraries and tools for development or deployment - ## Practical Information and Schedule The workshop will be held at the [Rapperswil-Jona campus of OST](https://www.ost.ch/en/university-of-applied-sciences/campus/rapperswil-jona-campus). It is right next to the Rapperswil train station, at [Oberseestrasse 10](https://goo.gl/maps/DkF6U9qdgdjcMfz29). The [Zurihac 2025 site](https://zfoh.ch/zurihac2025/) has instructions for transportation between Rapperswil and Zürich. All talks and presentations will be held in an air-conditioned classroom that will be configured conference-style, which means that most seats won't have a table or desk attached. During the event, we'll let you know which additional spaces are good for compiler hacking. We will post the exact room number when that becomes available. -### Preparation - -You are invited to bring the necessary equipment to work on GHC (laptop, power adapter, etc). Swiss electricity is 220 volts, 50 Hz AC. [Swiss power outlets](https://en.wikipedia.org/wiki/AC_power_plugs_and_sockets#Swiss_SN_441011_(Type_J)) are different than in many European countries, so please bring an appropriate adapter if necessary. Drinking fountains are not common in Europe, so please bring a refillable water bottle. - ### Program
10:50 | 11:15 | The GHC Debugger+Collaborators: Matthew Pickering, Hannes Siebenhandl While using the Haskell debugger has been possible via GHCi for the last two decades, the lack of a modern integration with IDEs, and incomplete, slow, or unimplemented @@ -148,6 +79,7 @@ You are invited to bring the necessary equipment to work on GHC (laptop, power a | Teo Camarasu | ||||||||||
12:05 | 12:30 | Making GHCi compatible with multiple home units+Collaborators: Matthew Pickering, Rodrigo Mesquita The ability to compile multiple units within a single session was a key innovation for GHC API consumers like GHCi and HLS. Today, most Haskell @@ -177,6 +109,7 @@ You are invited to bring the necessary equipment to work on GHC (laptop, power a 14:00 | 14:25 | Explicit Level Imports+Collaborators: Rodrigo Mesquita, Adam Gundry Explicit Level Imports is an extension to GHC which allows a programmer to be more precise about which dependencies are needed for Template Haskell. @@ -197,6 +130,7 @@ finally reflect on future directions the extension makes possible. Matthew Pickering | 14:25 | 14:50 | Intensional Analysis of Typed Template Haskell Quotations+Collaborators: Matthew Pickering Typed Template Haskell allows us to write Haskell code which generates other Haskell programs in a type-safe and principled manner. However, the generated programs are completely opaque and cannot be introspected, limiting the type of analysis and transformations that we can perform. We propose a system which allows the programmer to overload the meaning of quoted Template Haskell expressions by desugaring these expressions into a well-typed PHOAS representation. Being a regular datatype, the PHOAS representation is much more amenable to analysis and transformation, indirectly giving the programmer the ability to overload the meaning of quoted expressions by further processing the PHOAS representation. Primitive Haskell constructs such as variables (both free and bound), lambda expressions and patterns are all exposed in the PHOAS interface, giving the programmer a large amount of control over the meaning of their quoted expressions. We believe that this system has a variety of useful applications, particularly for creating EDSLs - we give motivating examples in practical areas such as distributed computing and program generation to demonstrate the effectiveness of this approach. More precisely, in this paper we discuss the design and implementation of this idea as a new Haskell extension implemented on top of GHC. @@ -252,12 +186,82 @@ finally reflect on future directions the extension makes possible.17:50 | 18:00 | closing | |