[Call for Participation]: 2.5 hour Haskell Foundation Online Workshop
摘要
这是 Haskell Foundation 组织的一场 2.5 小时线上 workshop,将于美东时间 6 月 26 日 11:30–14:00 直播,共 5 个技术分享,主题集中在 AI/LLM 在 Haskell 开发中的应用实践。内容包括:在咨询与企业流程中如何使用 LLM 辅助开发与测试;在高安全后端开发中将 LLM 融入软件开发生命周期(SDLC),例如优化上下文窗口、生成合规 PR、辅助调试,并对比 Claude、Gemini、GLM、Gemma 等模型在 Haskell 场景下的表现;Haskell 开发工具 tricorder 的介绍,它作为 ghcid/ghciwatch 替代品,支持多组件构建、后台 daemon、TUI 反馈界面,并强调与 LLM 结对编程时的反馈闭环优势;一个通过 agentic coding 实现 Constraint Handling Rules 编译器的案例分享,讨论该问题为何适合 AI 辅助开发及经验总结;以及 GHC 插件 OllamaHoles,利用 LLM 为 typed holes 提供补全建议,探讨 LLM 与类型系统工具协同工作的方式。整体偏经验分享与工具实践,而非纯理论。
荐读理由
Tricorder 工具支持多组件、后台构建守护、TUI 测试反馈和 LLM 配对,可直接替换 ghcid/ghciwatch 应用在 AI 工程开发项目
原文
[Call for Participation]: 2.5 hour Haskell Foundation Online Workshop
Hello everyone,
Please join us this Friday for 5 talks on the uses of AI in Haskell development.
The event will stream on our YouTube Channel starting at 11:30am Eastern on Friday, June 26th. And will go until 14:00 Eastern.
Here’s the scheduled program (talk abstracts are below)
11:30 Alfredo Di Napoli: Consulting for clients who use AI: a tale of a few hats 12:00 Gautier Di Folco: LLM as a SDLC support 12:30 Christian Georgii: Tricorder, A new development tool for Haskell and LLMs 13:00 Lorenzo Tabacchini: Though this be madness, yet there is method in’t 13:30 Nathan Bloomfield: Typed Holes + LLM + GHC Plugin
It’s a good mix of tools and experience reports, I hope to see you there!
Talk Abstracts
Consulting for clients who use AI: a tale of a few hats (Alfredo Di Napoli)
As individuals, we are in charge of our own development processes and tools; as employees of a company, we must adjust them to fit the company’s best practices and blessed workflows; as consultants, we must do all of the above and comply with the client’s own processes – and if those include substantial use of LLMs, how do we navigate all of that? The last part is a challenge in itself: how to balance a consultancy’s ethos of producing the most valuable output from an hourly rate with the temptation of offloading some of the mechanical work to an AI? What does “most valuable” even mean when machine-assisted development is in the mix?
In this talk I’ll try to give my own answers to those questions by presenting my personal and professional experience using LLMs to design, write, test and review code, ranging from recreational projects like Rusholme, where human-supplied domain expertise drove the design of a toy Haskell compiler, to my daily job as a Well-Typed consultant working with clients who make heavy use of LLMs and encourage us to do the same. In this experience report I’ll show what worked for me and what didn’t – and that ultimately it comes down to wearing a few hats: most of the time an “architect”, sometimes a “coder”, and, occasionally, knowing when to take the hat off entirely.
LLM as SDLC Support (Gautier Di Folco)
Building a highly secure communication toolset requires rigorous engineering, especially when maintaining a robust Haskell backend.
In this session, we will explore the practical realities of integrating AI into a daily workflow. Moving beyond the hype, this talk dives into the actual development trenches to demonstrate how to effectively leverage LLMs for complex backend engineering. We will cover actionable techniques for optimizing context windows to yield highly accurate results, utilizing AI to draft compliant Pull Requests, and streamlining the debugging process when things go wrong.
Finally, I will share candid insights from my hands-on journey testing and evaluating multiple models (Claude, Gemini, GLM, and Gemma) highlighting how each handles the unique challenges of Haskell development and tight feedback loops.
Tricorder, A new development tool for Haskell and LLMs (Christian Georgii)
tricorder has been my daily driver for Haskell development for months now. It works really well as a standalone replacement for ghcid or ghciwatch with some extra features that make it very attractive:
Multiple component support and auto-discovery out of the box.
A daemon that builds the code in the background and serves as the backend for any number of TUI/CLI sessions so nothing gets built twice.
A TUI with different levels of detail: overview, test failures, complete test output.
Configurable hotkeys, mouse scrolling support.
However, it really shines when pair programming with an LLM agent. The included CLI surfaces build information in a way that is context-aware and reliable, so the feedback loop is very tight
Though this be madness, yet there is method in’t (Lorenzo Tabacchini)
I wrote a compiler for Constraint Handling Rules, almost entirely through agentic coding.
In this talk I will show you how it went, why this compiler seems to be an exceptionally AI-friendly problem, and what I learnt about agentic coding in general, with a handful of suggestions you can test against your own work.
Typed Holes + LLM + GHC Plugin (Nathan Bloomfield)
Typed holes are a handy design and reasoning tool available in languages with sufficiently strong type systems, including Haskell. They stand in for code that isn’t yet written but which the typechecker can still infer useful information about from context available at compile time. OllamaHoles is a GHC plugin by Matthias Gissurarson that uses an LLM to generate valid hole fit suggestions. This talk tours how the plugin gets the LLM and GHC to cooperate by doing what each one does best, with some reflections on the presenter’s experience using an LLM as a development tool.
这条对你有帮助吗?