Supported by: TechAscent markTechAscent logo

Macroexpand-Deep - the first Clojure AI conference

đź“… October 24-25, 2025 | Online Conference

The Macroexpand-Deep conference focuses on the development of research and practical applications around AI systems in Clojure. As the first dedicated Clojure AI conference, we’re bringing together pioneers exploring how Clojure’s unique strengths can advance AI development. This conference is one of the Macroexpand 2025 pair of conferences organized by Scicloj.

About the Conference

A two-day online event exploring AI systems in Clojure - from LLMs and neural networks to symbolic AI and hybrid approaches. Share production applications, research insights, and novel techniques that leverage Clojure’s unique strengths for AI development. For Clojure programmers at all levels and AI practitioners curious about functional approaches.

📌 How to participate, register, and join →

🎟️ Register Now (Free)

Tentative Schedule

đź’¬
Talk
📚
Tutorial
🗣️
Discussion
đź’»
Practice
đź“‹
Administrative
Time Friday, October 24 Saturday, October 25
09:00

Opening & Welcome

Abstract

We will just spend some time together and discuss what is coming for the day.

Opening & Welcome

Abstract

We will just spend some time together and discuss what is coming for the day.

10:00

A Clojure-based Portfolio Analysis Tool based on LLM Integration

Matthias BuehlmaierEdward WidjajaTanvi Nagar

Abstract

This research paper / talk presents the design and implementation of a Portfolio Analysis Program built almost entirely in Clojure for The University of Hong Kong's Center for Investment Management.

The program enables users to construct custom portfolios from individual stocks or asset classes, evaluate performance using key financial metrics, and visualize results interactively.

What sets this tool apart is its integration of financial market narratives through a Large Language Model (LLM), which contextualizes portfolio performances using real-time financial news.

Read more at Clojure Civitas

Speakers

Matthias Buehlmaier
Matthias Buehlmaier

Matthias Buehlmaier is an associate professor of teaching in finance and the BBA(IBGM) program director at HKU Business School, University of Hong Kong (HKU). He is a winner of several teaching and research awards, e.g. the Outstanding Teaching Award and the Teaching Innovation Award granted by HKU. His research has appeared in the Review of Financial Studies (Oxford University Press) and has been featured in the Harvard Law School Forum on Corporate Governance and Financial Regulation.

Edward Widjaja
Edward Widjaja

Edward Widjaja is a final-year Data Science and Engineering student at the University of Hong Kong. He's always been interested in anything nerdy; from algorithms and trading systems to quirky side projects, he is now channeling that curiosity into finance. Currently taking a semester off to work at a bank, he's exploring how emerging technologies intersect with financial markets. His goal is to build a career that combines data-driven decision-making with practical financial solutions. In his spare time, Edward enjoys swimming, gaming, and chatting about anything from market trends to tech experiments, so feel free to reach out!

Tanvi Nagar
Tanvi Nagar

Tanvi Nagar is a final year student at the University of Hong Kong, studying International Business and Global Management. She is passionate about mathematics, finance and their integration with technology - which is why she chose Information Systems and Analytics as her second major. Hoping to build a career in finance, she has solidified her technical and professional skills through roles in Financial Services Consulting, Corporate Banking and Wealth Management. Being a curious mind, she is always looking to broaden her horizons through learning about new things, travelling the world and plays badminton in her free time along with reading voraciously.

Bridging Worlds: Building Graph Neural Networks with Clojure and Python Interoperability (+ Practice)

Jelena Losic

Abstract

Discover how to build Graph Neural Networks by combining Clojure's functional elegance with Python's ML ecosystem. This talk demonstrates practical interoperability using libpython-clj to call PyTorch Geometric from Clojure, creating powerful GNN solutions while maintaining REPL-driven development workflows. We'll live-code a complete Graph Convolutional Network, from data ingestion to visualization, showing how Clojure's immutability and Python's deep learning capabilities create a useful combination for modern AI development. After the talk and discussion, we will practice some things in the REPL together: using PyTorch from Clojure, and maybe more.

Speaker

Jelena Losic
Jelena Losic

I am Jelena, functional programming developer with 10 years of industry experience and mathematical educational background. I am curious about the networks and laws that are applicable in large scales, leading to better understanding of big data.

11:00

2D CFD Simulation based optimization of airfoils using freecad & openfoam

Siavash MohammadySiyoung Byun

Abstract

This talk presents a 2D airfoil optimization approach using FluidX3D for CFD simulation and genetic algorithms, implemented in Clojure. The presentation covers the architecture, showing how FluidX3D evaluates airfoil fitness by computing aerodynamic properties, and how the genetic algorithm encodes airfoil geometries using parametric representations. LLMs are integrated at various stages of the optimization pipeline to guide mutation strategies, suggest promising crossover operations, and analyze population diversity.

Speakers

Siavash Mohammady
Siavash Mohammady

Siavash is a Clojure developer with a knack for trying new things and crafting solutions through creative combinations of technology. He's worked on GIS software for agriculture, building a low-code BI tool powered by Clojure, LLMs, and rule engines to extract key reports for executives. These days, he's working on startcheck.xyz, an automatic pitch deck evaluation software.

Siyoung Byun
Siyoung Byun

Siyoung Byun is currently a freelance fullstack Clojure developer living in Seoul, South Korea. She studied Astrophysics for her undergrad in Canada, where she first got into programming and data analysis while running simulations of dying stars crashing into each other. Ever since she was introduced to Clojure at a previous employer in 2018, it quickly became her favorite programming language and her passion. Beyond software development and data analysis, she likes to hike, bike, knit, sew and snuggle with her cat in her free time.

12:00

Open Practice

Abstract

We will spend some time together practicing the tools, methods, and ideas we have seen at other talks.

Open Practice

Abstract

We will spend some time together practicing the tools, methods, and ideas we have seen at other talks.

13:00

Building QClojure with AI assistance

Ludger Solbach

Abstract

QClojure is a functional quantum computing library for Clojure with backend protocols, simulation backends and visualizations. It has been built with AI assistance right from the beginning. Four months into the implementation, I have gained some experience with AI assisted coding, which I'd like to share in this talk.

First I like to give an overview of QClojure to set the stage. I will show the tools and the workflow for AI assisted coding, including some prompts. Then we look at the actual process of working with the AI. Finally I will give you some of my best practices and summarize with the lessons learned.

Speaker

Ludger Solbach
Ludger Solbach

Ludger Solbach is a software architect for 'msg for automotive' in Germany. He is the creator of Overarch, a lightweight system modeling and visualization tool and QClojure, a library for programming quantum computers. His favorite programming language by far is Clojure, a modern functional LISP. He uses it for his open source work, at work when feasible, and to create models for his 3D-Printer.

Building Dynamic Entity Extraction with Bosquet

Žygimantas Medelis

Abstract

Every text processing application needs to answer a question: what is this text about? Named entity extraction is one part of the answer to this. It identifies and links words to real-world entities—turning "Macroexpand 2025" into structured data about a specific technology conference happening in a specific year.

This extraction process involves multiple steps that can be implemented using LLMs. This presentation demonstrates how Bosquet, an LLM orchestration library, can help with building entity extraction pipelines.

Speaker

Žygimantas Medelis
Žygimantas Medelis

Author of Bosquet, Clojure user since its v1.0. I have been working with unstructured text data processing for over a decade - hence the topic of the talk.

14:00

Panel: AI assistants

Eric DalloPeter StrombergBruce Hauman

Abstract

We will have a conversation with a few of the toolmakers behind Clojure's main AI assistants.

Speakers

Eric Dallo
Eric Dallo

Eric Dallo is a Emacs, NixOS fanatic, he loves programming, especially when focused on dev tooling, He maintains clojure-lsp, ECA, deps-bin, lsp-mode, and other related libraries, Eric works with Clojure at Nubank and currently is focused on AI pair programming multi-editors with ECA.

Peter Stromberg
Peter Stromberg

Peter Strömberg is a curious coder since 40+ years and is extra fascinated by making software that he uses do new things. These days he practically lives in VS Code and is making Clojure related extensions for it. Peter maintains Calva, Joyride, and Calva Backseat Driver. Backseat Driver is an AI extension for VS Code Copilot, giving the AI tools for using the Clojure REPL, as well as for structural editing.

Bruce Hauman
Bruce Hauman

Bruce Hauman is a prolific toolmaker and long-time contributor to the Clojure community, perhaps best known as the creator of Figwheel—the build tool that introduced live code reloading and made real-time browser development a reality for ClojureScript developers. Bruce’s legendary 2014 “Flappy Bird” demo not only turned heads, but set a new standard for interactive coding, enabling developers to see their changes instantly and stay in the creative flow. Bruce also built Devcards, a library for interactive documentation that brings a visual REPL experience to ClojureScript, and Rebel Readline, the feature-rich REPL for Clojure and ClojureScript, complete with syntax highlighting, code completion, and inline documentation. Bruce’s latest project, Clojure MCP, tackles the next frontier: enabling AI assistants to work Clojure projects by connecting directly to live REPLs, providing real-time feedback and validation to improve the quality of AI-generated Clojure code. Beyond his tool building chops, Bruce is guided by a profound respect for users and a conviction that developer tooling should be radically better—simple, powerful, and joyful to use. He’s also a fan of the outdoors: an avid canoe tripper, Appalachian Trail thru-hiker, and, currently, the hands-on renovator of a former church-turned-home in Saskatchewan.

Panel: broader implications of AI

Kira HoweRay McDermottJosh GloverSiavash MohammadySiyoung Byun

Abstract

We will discuss the broader implications of the AI rush, a few of the ways it affects our lives, and what we might be able to do about it.

Speakers

Kira Howe
Kira Howe

Kira's been writing software for the past decade with a focus on data-intensive web apps and a particular interest in Clojure programming and data visualization. She loves open source development, fostering communities online and in-person, and learning new things. When she's not at her desk, you can find Kira teaching yoga, playing violin, or running with her dog.

Ray McDermott
Ray McDermott

Ray has decades of experience writing commercial software for databases, finance, manufacturing and cloud services. He is a Clojure enthusiast and advocate and produces and participates in several podcasts and YouTube channels. The impact of hyper-scaled LLMs is the subject of his most recent project. While not raging, he’s gardening, out on a bike or in the woods with a camera.

Josh Glover
Josh Glover

Josh is a software engineer, engineering leader, podcast host, and union organiser hailing from Stockholm. A technology enthusiast from early in life, he has been becoming increasingly aware of the social impacts of technology. He advocates a Luddite perspective, where the worth of technologies is determined by whether they contribute to or detract from human thriving.

Siavash Mohammady
Siavash Mohammady

Siavash is a Clojure developer with a knack for trying new things and crafting solutions through creative combinations of technology. He's worked on GIS software for agriculture, building a low-code BI tool powered by Clojure, LLMs, and rule engines to extract key reports for executives. These days, he's working on startcheck.xyz, an automatic pitch deck evaluation software.

Siyoung Byun
Siyoung Byun

Siyoung Byun is currently a freelance fullstack Clojure developer living in Seoul, South Korea. She studied Astrophysics for her undergrad in Canada, where she first got into programming and data analysis while running simulations of dying stars crashing into each other. Ever since she was introduced to Clojure at a previous employer in 2018, it quickly became her favorite programming language and her passion. Beyond software development and data analysis, she likes to hike, bike, knit, sew and snuggle with her cat in her free time.

15:00
16:00

Architecting reliability in LLM systems

Siavash Mohammady

Abstract

Large Language Models have captured the imagination of developers worldwide, yet many LLM-powered systems fail in production despite impressive demos. The root cause is often not technical incompetence, but rather an over-optimistic faith in LLM capabilities without accounting for their fundamental limitations. Just as an engineer hanging a heavy shelf wouldn't rely solely on manufacturer specifications without safety margins, building reliable LLM systems requires a "Murphy's Law" mindset that anticipates failure modes. Through our experience building StartCheck, a production document analysis platform, we've learned that true reliability comes from understanding and designing around core LLM limitations: input quality sensitivity, task complexity degradation, reasoning constraints, output length trade-offs, hallucinations, and consistency challenges.

Speaker

Siavash Mohammady
Siavash Mohammady

Siavash is a Clojure developer with a knack for trying new things and crafting solutions through creative combinations of technology. He's worked on GIS software for agriculture, building a low-code BI tool powered by Clojure, LLMs, and rule engines to extract key reports for executives. These days, he's working on startcheck.xyz, an automatic pitch deck evaluation software.

Building Realtime Voice AI Agents with Clojure - Best Practices

Stoica Ovidiu

Abstract

Exploring how to build reliable voice AI agents in a functional data-driven way with Clojure. This talk will go over all of the pieces involved in voice ai from best models to use, turn detection, context management to scripting and instruction following to hosting and scaling. By the end you will better understand what it takes to build highly reliable voice AI agents with Clojure

Speaker

Stoica Ovidiu
Stoica Ovidiu

Ovidiu Stoica is a software developer with 10 years of experience, out of which the last 5 are in Clojure. He has been building voice AI agents for the last 1.5 years for enterprise clients and is the creator of simulflow - a voice AI agent clojure framework.

17:00

Open Practice

Abstract

We will spend some time together practicing the tools, methods, and ideas we have seen at other talks.

Building Event Sourced Agentic Applications with Grain

Cameron Barre

Abstract

Learn how ObneyAI uses its open source Clojure framework called Grain to build Event Sourced applications with first-class agentic workflows that blend the best of the Clojure and Python ecosystems.

Speaker

Cameron Barre
Cameron Barre

Cameron Barre has been a professional Clojure developer since 2016 and is currently CTO at a small consultancy in the AI engineering space called ObneyAI.

18:00

Experimenting with LLM Subliminal Learning in Clojure

Justin Tirrell

Abstract

I read the paper "Subliminal Learning: Language models transmit behavioral traits via hidden signals in data" and wanted to explore these concepts myself. In this talk I replicate some of the results from the paper interactively in a live coding demo. Specifically, we will look at running multiple interdependent batch processing jobs from a Clojure REPL.

Speaker

Justin Tirrell
Justin Tirrell

I'm Justin, I'm a Clojure maximalist and independent software developer. I like working on trading systems and GUIs and rolling my own software tools and yak shaving.

Lightning Talks

Abstract

Various short talks by conference participants

19:00

Jank & Torch: Native Deep Learning in Clojure

Monty BichounaShantanu SardesaiJianling Zhong

Abstract

In the field of AI, Python is the current reigning champ. But the Python ecosystem's dirty secret is that most of the libraries holding the system together are wrappers around C/C++ libraries that do most of the important work. Jank is the native Clojure dialect built on compiler technologies like LLVM, giving it access into the same native libraries powering the Python ecosystem. As Jank heads towards its first alpha release, its most highly anticipated feature, seamless C++ interop is already capable of wrapping and using native C++ libraries for machine learning and artificial intelligence. In this talk, we will show how to leverage Jank's C++ interop to wrap the most popular deep learning library in usage right now, libtorch, which most would have known through its Python frontend, PyTorch. As a proof of concept, we will display an implementation of GPT-2, the LLM released in 2019 using our Torch wrapper. This talk will give Clojure practitioners interested in using Clojure for ML/AI a glimpse into the future of how important C++ libraries can be utilized with Jank.

Speakers

Monty Bichouna
Monty Bichouna

Monty is an aspiring compiler engineer who enjoys Lisps and always wanted a reason to learn Clojure. He found an excellent reason with jank, the native Clojure dialect.

Shantanu Sardesai
Shantanu Sardesai

Shantanu is a budding Clojure programmer and the newest member of the jank mentees team. With a background in mainstream languages like Kotlin and TypeScript, and a longstanding fascination with Clojure, compilers, and runtimes, he was naturally drawn to jank.

Jianling Zhong
Jianling Zhong

Jianling is a software engineer with a focus on machine learning. He has always been intrigued by how compilers work. He has been hacking on jank, even though he had little experience with Clojure! The work of bringing torch to jank is right up his alley.

20:00

Conclusion

Abstract

We will spend some time together with closing thoughts.

Friday, October 24

09:00

Opening & Welcome

Abstract

We will just spend some time together and discuss what is coming for the day.

10:00

A Clojure-based Portfolio Analysis Tool based on LLM Integration

Matthias BuehlmaierEdward WidjajaTanvi Nagar

Abstract

This research paper / talk presents the design and implementation of a Portfolio Analysis Program built almost entirely in Clojure for The University of Hong Kong's Center for Investment Management.

The program enables users to construct custom portfolios from individual stocks or asset classes, evaluate performance using key financial metrics, and visualize results interactively.

What sets this tool apart is its integration of financial market narratives through a Large Language Model (LLM), which contextualizes portfolio performances using real-time financial news.

Read more at Clojure Civitas

Speakers

Matthias Buehlmaier
Matthias Buehlmaier

Matthias Buehlmaier is an associate professor of teaching in finance and the BBA(IBGM) program director at HKU Business School, University of Hong Kong (HKU). He is a winner of several teaching and research awards, e.g. the Outstanding Teaching Award and the Teaching Innovation Award granted by HKU. His research has appeared in the Review of Financial Studies (Oxford University Press) and has been featured in the Harvard Law School Forum on Corporate Governance and Financial Regulation.

Edward Widjaja
Edward Widjaja

Edward Widjaja is a final-year Data Science and Engineering student at the University of Hong Kong. He's always been interested in anything nerdy; from algorithms and trading systems to quirky side projects, he is now channeling that curiosity into finance. Currently taking a semester off to work at a bank, he's exploring how emerging technologies intersect with financial markets. His goal is to build a career that combines data-driven decision-making with practical financial solutions. In his spare time, Edward enjoys swimming, gaming, and chatting about anything from market trends to tech experiments, so feel free to reach out!

Tanvi Nagar
Tanvi Nagar

Tanvi Nagar is a final year student at the University of Hong Kong, studying International Business and Global Management. She is passionate about mathematics, finance and their integration with technology - which is why she chose Information Systems and Analytics as her second major. Hoping to build a career in finance, she has solidified her technical and professional skills through roles in Financial Services Consulting, Corporate Banking and Wealth Management. Being a curious mind, she is always looking to broaden her horizons through learning about new things, travelling the world and plays badminton in her free time along with reading voraciously.

11:00

2D CFD Simulation based optimization of airfoils using freecad & openfoam

Siavash MohammadySiyoung Byun

Abstract

This talk presents a 2D airfoil optimization approach using FluidX3D for CFD simulation and genetic algorithms, implemented in Clojure. The presentation covers the architecture, showing how FluidX3D evaluates airfoil fitness by computing aerodynamic properties, and how the genetic algorithm encodes airfoil geometries using parametric representations. LLMs are integrated at various stages of the optimization pipeline to guide mutation strategies, suggest promising crossover operations, and analyze population diversity.

Speakers

Siavash Mohammady
Siavash Mohammady

Siavash is a Clojure developer with a knack for trying new things and crafting solutions through creative combinations of technology. He's worked on GIS software for agriculture, building a low-code BI tool powered by Clojure, LLMs, and rule engines to extract key reports for executives. These days, he's working on startcheck.xyz, an automatic pitch deck evaluation software.

Siyoung Byun
Siyoung Byun

Siyoung Byun is currently a freelance fullstack Clojure developer living in Seoul, South Korea. She studied Astrophysics for her undergrad in Canada, where she first got into programming and data analysis while running simulations of dying stars crashing into each other. Ever since she was introduced to Clojure at a previous employer in 2018, it quickly became her favorite programming language and her passion. Beyond software development and data analysis, she likes to hike, bike, knit, sew and snuggle with her cat in her free time.

12:00

Open Practice

Abstract

We will spend some time together practicing the tools, methods, and ideas we have seen at other talks.

13:00

Building QClojure with AI assistance

Ludger Solbach

Abstract

QClojure is a functional quantum computing library for Clojure with backend protocols, simulation backends and visualizations. It has been built with AI assistance right from the beginning. Four months into the implementation, I have gained some experience with AI assisted coding, which I'd like to share in this talk.

First I like to give an overview of QClojure to set the stage. I will show the tools and the workflow for AI assisted coding, including some prompts. Then we look at the actual process of working with the AI. Finally I will give you some of my best practices and summarize with the lessons learned.

Speaker

Ludger Solbach
Ludger Solbach

Ludger Solbach is a software architect for 'msg for automotive' in Germany. He is the creator of Overarch, a lightweight system modeling and visualization tool and QClojure, a library for programming quantum computers. His favorite programming language by far is Clojure, a modern functional LISP. He uses it for his open source work, at work when feasible, and to create models for his 3D-Printer.

14:00 - 16:00

Panel: AI assistants

Eric DalloPeter StrombergBruce Hauman

Abstract

We will have a conversation with a few of the toolmakers behind Clojure's main AI assistants.

Speakers

Eric Dallo
Eric Dallo

Eric Dallo is a Emacs, NixOS fanatic, he loves programming, especially when focused on dev tooling, He maintains clojure-lsp, ECA, deps-bin, lsp-mode, and other related libraries, Eric works with Clojure at Nubank and currently is focused on AI pair programming multi-editors with ECA.

Peter Stromberg
Peter Stromberg

Peter Strömberg is a curious coder since 40+ years and is extra fascinated by making software that he uses do new things. These days he practically lives in VS Code and is making Clojure related extensions for it. Peter maintains Calva, Joyride, and Calva Backseat Driver. Backseat Driver is an AI extension for VS Code Copilot, giving the AI tools for using the Clojure REPL, as well as for structural editing.

Bruce Hauman
Bruce Hauman

Bruce Hauman is a prolific toolmaker and long-time contributor to the Clojure community, perhaps best known as the creator of Figwheel—the build tool that introduced live code reloading and made real-time browser development a reality for ClojureScript developers. Bruce’s legendary 2014 “Flappy Bird” demo not only turned heads, but set a new standard for interactive coding, enabling developers to see their changes instantly and stay in the creative flow. Bruce also built Devcards, a library for interactive documentation that brings a visual REPL experience to ClojureScript, and Rebel Readline, the feature-rich REPL for Clojure and ClojureScript, complete with syntax highlighting, code completion, and inline documentation. Bruce’s latest project, Clojure MCP, tackles the next frontier: enabling AI assistants to work Clojure projects by connecting directly to live REPLs, providing real-time feedback and validation to improve the quality of AI-generated Clojure code. Beyond his tool building chops, Bruce is guided by a profound respect for users and a conviction that developer tooling should be radically better—simple, powerful, and joyful to use. He’s also a fan of the outdoors: an avid canoe tripper, Appalachian Trail thru-hiker, and, currently, the hands-on renovator of a former church-turned-home in Saskatchewan.

16:00

Architecting reliability in LLM systems

Siavash Mohammady

Abstract

Large Language Models have captured the imagination of developers worldwide, yet many LLM-powered systems fail in production despite impressive demos. The root cause is often not technical incompetence, but rather an over-optimistic faith in LLM capabilities without accounting for their fundamental limitations. Just as an engineer hanging a heavy shelf wouldn't rely solely on manufacturer specifications without safety margins, building reliable LLM systems requires a "Murphy's Law" mindset that anticipates failure modes. Through our experience building StartCheck, a production document analysis platform, we've learned that true reliability comes from understanding and designing around core LLM limitations: input quality sensitivity, task complexity degradation, reasoning constraints, output length trade-offs, hallucinations, and consistency challenges.

Speaker

Siavash Mohammady
Siavash Mohammady

Siavash is a Clojure developer with a knack for trying new things and crafting solutions through creative combinations of technology. He's worked on GIS software for agriculture, building a low-code BI tool powered by Clojure, LLMs, and rule engines to extract key reports for executives. These days, he's working on startcheck.xyz, an automatic pitch deck evaluation software.

17:00

Open Practice

Abstract

We will spend some time together practicing the tools, methods, and ideas we have seen at other talks.

18:00

Experimenting with LLM Subliminal Learning in Clojure

Justin Tirrell

Abstract

I read the paper "Subliminal Learning: Language models transmit behavioral traits via hidden signals in data" and wanted to explore these concepts myself. In this talk I replicate some of the results from the paper interactively in a live coding demo. Specifically, we will look at running multiple interdependent batch processing jobs from a Clojure REPL.

Speaker

Justin Tirrell
Justin Tirrell

I'm Justin, I'm a Clojure maximalist and independent software developer. I like working on trading systems and GUIs and rolling my own software tools and yak shaving.

19:00
20:00

Saturday, October 25

09:00

Opening & Welcome

Abstract

We will just spend some time together and discuss what is coming for the day.

10:00 - 12:00

Bridging Worlds: Building Graph Neural Networks with Clojure and Python Interoperability (+ Practice)

Jelena Losic

Abstract

Discover how to build Graph Neural Networks by combining Clojure's functional elegance with Python's ML ecosystem. This talk demonstrates practical interoperability using libpython-clj to call PyTorch Geometric from Clojure, creating powerful GNN solutions while maintaining REPL-driven development workflows. We'll live-code a complete Graph Convolutional Network, from data ingestion to visualization, showing how Clojure's immutability and Python's deep learning capabilities create a useful combination for modern AI development. After the talk and discussion, we will practice some things in the REPL together: using PyTorch from Clojure, and maybe more.

Speaker

Jelena Losic
Jelena Losic

I am Jelena, functional programming developer with 10 years of industry experience and mathematical educational background. I am curious about the networks and laws that are applicable in large scales, leading to better understanding of big data.

12:00

Open Practice

Abstract

We will spend some time together practicing the tools, methods, and ideas we have seen at other talks.

13:00

Building Dynamic Entity Extraction with Bosquet

Žygimantas Medelis

Abstract

Every text processing application needs to answer a question: what is this text about? Named entity extraction is one part of the answer to this. It identifies and links words to real-world entities—turning "Macroexpand 2025" into structured data about a specific technology conference happening in a specific year.

This extraction process involves multiple steps that can be implemented using LLMs. This presentation demonstrates how Bosquet, an LLM orchestration library, can help with building entity extraction pipelines.

Speaker

Žygimantas Medelis
Žygimantas Medelis

Author of Bosquet, Clojure user since its v1.0. I have been working with unstructured text data processing for over a decade - hence the topic of the talk.

14:00 - 16:00

Panel: broader implications of AI

Kira HoweRay McDermottJosh GloverSiavash MohammadySiyoung Byun

Abstract

We will discuss the broader implications of the AI rush, a few of the ways it affects our lives, and what we might be able to do about it.

Speakers

Kira Howe
Kira Howe

Kira's been writing software for the past decade with a focus on data-intensive web apps and a particular interest in Clojure programming and data visualization. She loves open source development, fostering communities online and in-person, and learning new things. When she's not at her desk, you can find Kira teaching yoga, playing violin, or running with her dog.

Ray McDermott
Ray McDermott

Ray has decades of experience writing commercial software for databases, finance, manufacturing and cloud services. He is a Clojure enthusiast and advocate and produces and participates in several podcasts and YouTube channels. The impact of hyper-scaled LLMs is the subject of his most recent project. While not raging, he’s gardening, out on a bike or in the woods with a camera.

Josh Glover
Josh Glover

Josh is a software engineer, engineering leader, podcast host, and union organiser hailing from Stockholm. A technology enthusiast from early in life, he has been becoming increasingly aware of the social impacts of technology. He advocates a Luddite perspective, where the worth of technologies is determined by whether they contribute to or detract from human thriving.

Siavash Mohammady
Siavash Mohammady

Siavash is a Clojure developer with a knack for trying new things and crafting solutions through creative combinations of technology. He's worked on GIS software for agriculture, building a low-code BI tool powered by Clojure, LLMs, and rule engines to extract key reports for executives. These days, he's working on startcheck.xyz, an automatic pitch deck evaluation software.

Siyoung Byun
Siyoung Byun

Siyoung Byun is currently a freelance fullstack Clojure developer living in Seoul, South Korea. She studied Astrophysics for her undergrad in Canada, where she first got into programming and data analysis while running simulations of dying stars crashing into each other. Ever since she was introduced to Clojure at a previous employer in 2018, it quickly became her favorite programming language and her passion. Beyond software development and data analysis, she likes to hike, bike, knit, sew and snuggle with her cat in her free time.

16:00

Building Realtime Voice AI Agents with Clojure - Best Practices

Stoica Ovidiu

Abstract

Exploring how to build reliable voice AI agents in a functional data-driven way with Clojure. This talk will go over all of the pieces involved in voice ai from best models to use, turn detection, context management to scripting and instruction following to hosting and scaling. By the end you will better understand what it takes to build highly reliable voice AI agents with Clojure

Speaker

Stoica Ovidiu
Stoica Ovidiu

Ovidiu Stoica is a software developer with 10 years of experience, out of which the last 5 are in Clojure. He has been building voice AI agents for the last 1.5 years for enterprise clients and is the creator of simulflow - a voice AI agent clojure framework.

17:00

Building Event Sourced Agentic Applications with Grain

Cameron Barre

Abstract

Learn how ObneyAI uses its open source Clojure framework called Grain to build Event Sourced applications with first-class agentic workflows that blend the best of the Clojure and Python ecosystems.

Speaker

Cameron Barre
Cameron Barre

Cameron Barre has been a professional Clojure developer since 2016 and is currently CTO at a small consultancy in the AI engineering space called ObneyAI.

18:00

Lightning Talks

Abstract

Various short talks by conference participants

19:00

Jank & Torch: Native Deep Learning in Clojure

Monty BichounaShantanu SardesaiJianling Zhong

Abstract

In the field of AI, Python is the current reigning champ. But the Python ecosystem's dirty secret is that most of the libraries holding the system together are wrappers around C/C++ libraries that do most of the important work. Jank is the native Clojure dialect built on compiler technologies like LLVM, giving it access into the same native libraries powering the Python ecosystem. As Jank heads towards its first alpha release, its most highly anticipated feature, seamless C++ interop is already capable of wrapping and using native C++ libraries for machine learning and artificial intelligence. In this talk, we will show how to leverage Jank's C++ interop to wrap the most popular deep learning library in usage right now, libtorch, which most would have known through its Python frontend, PyTorch. As a proof of concept, we will display an implementation of GPT-2, the LLM released in 2019 using our Torch wrapper. This talk will give Clojure practitioners interested in using Clojure for ML/AI a glimpse into the future of how important C++ libraries can be utilized with Jank.

Speakers

Monty Bichouna
Monty Bichouna

Monty is an aspiring compiler engineer who enjoys Lisps and always wanted a reason to learn Clojure. He found an excellent reason with jank, the native Clojure dialect.

Shantanu Sardesai
Shantanu Sardesai

Shantanu is a budding Clojure programmer and the newest member of the jank mentees team. With a background in mainstream languages like Kotlin and TypeScript, and a longstanding fascination with Clojure, compilers, and runtimes, he was naturally drawn to jank.

Jianling Zhong
Jianling Zhong

Jianling is a software engineer with a focus on machine learning. He has always been intrigued by how compilers work. He has been hacking on jank, even though he had little experience with Clojure! The work of bringing torch to jank is right up his alley.

20:00

Conclusion

Abstract

We will spend some time together with closing thoughts.

Detecting your timezone...

* Schedule is subject to change. Final schedule with confirmed speakers will be published closer to the conference date.

Connect & Discuss

Join the conversation at the Clojurians Zulip chat where we discuss AI projects and help each other explore this exciting frontier.

Questions? Let's talk