SlideShare a Scribd company logo
Clack:
glue for web apps
Clack Meetup #1 Eitaro Fukamachi
Thank you for coming.
I’m Eitaro Fukamachi
@nitro_idiot fukamachi
Topics
• What’s Clack?
• As an Abstraction Layer
• As a composable rule
• History
Clack
• Web application environment
• Intended to be a basement of frameworks
• Abstracts web servers
• Composability
Clack
Clack
(clackup
(lambda (env)
‘(200
(:content-type “text/plain”)
(“Hello, World”)))
:server :hunchentoot)
Clack
(clackup
(lambda (env)
‘(200
(:content-type “text/plain”)
(“Hello, World”)))
:server :hunchentoot)
Application
Clack
(clackup
(lambda (env)
‘(200
(:content-type “text/plain”)
(“Hello, World”)))
:server :hunchentoot)
Application
Web server to run the application on
Web server
Abstract web servers
Application
Web server Web server
Application Application
Web server
Abstract web servers
Application
Web server Web server
Application Application
Clack
Composability
ApplicationRequest Response
Middleware
Middleware
Composability
ApplicationRequest Response
• Middleware wraps an application
• Middleware can be reused
• ex) access log, session manager
“Middleware”
History
We lived 4 ages.
• asdf-install or clbuild (not reliable)
• GitHub wasn’t popular
• Posted a bug to mailing-lists
• Many projects are abandoned or inactive
• We couldn’t tell if a library works with other
libraries
BQ (Before Quicklisp = the Stone Age)
• Quicklisp made installation of libraries
really easier
• It make sure libraries can load at least
AQ (the Tool Age)
• Hosted on GitHub
• Has many tests
• Tested on Jenkins
• Has a documentation
Clack was out 4 years ago
• We had Clack & Caveman1
• We had Quicklisp
• No DBI, No ORM (CLSQL was terrible)
• Many projects were abandoned
• Clojure already had Ring
Clack (the Bronze Age)
• Hunchentoot, Weblocks, web4r, RESTAS
• Most WAF were built on top of
Hunchentoot!!
• Is Hunchentoot reliable and everlasting?
Clack (the Bronze Age)
The Present Age
• We have ningle and Caveman2
• We have CL-DBI, SxQL, datafly and Integral
• We have Woo, a really fast web server
• We have CIM/Roswell and qlot
• Clack reached ver 1.0
• Moved many codes to an individual project
• Could reduce 1583 lines
• Made it stable
• Made it faster
• Started testing on
Clack v1.0
So, what’s next?
• We have everything we need to build a web
application
• Just try.
• Looking for a Common Lisp job? We’re
hiring!
The next move
Thanks.
EITARO FUKAMACHI
8arrow.org
@nitro_idiot fukamachi

More Related Content

PDF
Woo: Writing a fast web server
PDF
Woo: Writing a fast web server @ ELS2015
KEY
About Clack
PDF
Writing a fast HTTP parser
PDF
Building GUI App with Electron and Lisp
ODP
Lisp Meet Up #31, Clake: a GNU make-like build utility in Common Lisp
KEY
自分をClojure化する方法
PPTX
OpenWhisk Go/Swift/Binaries Runtime
Woo: Writing a fast web server
Woo: Writing a fast web server @ ELS2015
About Clack
Writing a fast HTTP parser
Building GUI App with Electron and Lisp
Lisp Meet Up #31, Clake: a GNU make-like build utility in Common Lisp
自分をClojure化する方法
OpenWhisk Go/Swift/Binaries Runtime

What's hot (20)

PDF
Как сделать высоконагруженный сервис, не зная количество нагрузки / Олег Обле...
PDF
High Performance Systems in Go - GopherCon 2014
PDF
Steamlining your puppet development workflow
KEY
Rack
PPTX
Mongo db - How we use Go and MongoDB by Sam Helman
PDF
Building real time applications with Symfony2
PDF
Dokku your own heroku 21
PDF
Dokku - your own heroku
PDF
Vert.x – The problem of real-time data binding
PDF
Data Processing and Ruby in the World
ODP
From Test to Live with Rex
PDF
Git+jenkins+rex presentation
PDF
Ruby in office time reboot
PDF
Altitude SF 2017: Optimizing your hit rate
PPTX
Масштабируя TLS / Артём Гавриченков (Qrator Labs)
PDF
But we're already open source! Why would I want to bring my code to Apache?
PDF
События, шины и интеграция данных в непростом мире микросервисов / Валентин Г...
PDF
Developing Java based microservices ready for the world of containers
ODP
Rex - Lightning Talk yapc.eu 2013
PDF
Frontera распределенный робот для обхода веба в больших объемах / Александр С...
Как сделать высоконагруженный сервис, не зная количество нагрузки / Олег Обле...
High Performance Systems in Go - GopherCon 2014
Steamlining your puppet development workflow
Rack
Mongo db - How we use Go and MongoDB by Sam Helman
Building real time applications with Symfony2
Dokku your own heroku 21
Dokku - your own heroku
Vert.x – The problem of real-time data binding
Data Processing and Ruby in the World
From Test to Live with Rex
Git+jenkins+rex presentation
Ruby in office time reboot
Altitude SF 2017: Optimizing your hit rate
Масштабируя TLS / Артём Гавриченков (Qrator Labs)
But we're already open source! Why would I want to bring my code to Apache?
События, шины и интеграция данных в непростом мире микросервисов / Валентин Г...
Developing Java based microservices ready for the world of containers
Rex - Lightning Talk yapc.eu 2013
Frontera распределенный робот для обхода веба в больших объемах / Александр С...
Ad

Viewers also liked (15)

PDF
SBLint
PDF
Clack & Caveman
PDF
Integral - New O/R Mapper for Common Lisp
PDF
Dexador Rises
PDF
Mito, a successor of Integral
KEY
Shelly
PDF
Lisp Poetry
PDF
Lisperの見る世界
PDF
Redesigning Common Lisp
PDF
ウェブセキュリティ
PDF
Niigatapm
PDF
JavaからClojure、そして夢の世界へ
KEY
第四回関西Emacs「ari.el」
PDF
Lispで仕事をするために
PDF
オウンドメディアのコンテンツ事例集40選(サムライト)
SBLint
Clack & Caveman
Integral - New O/R Mapper for Common Lisp
Dexador Rises
Mito, a successor of Integral
Shelly
Lisp Poetry
Lisperの見る世界
Redesigning Common Lisp
ウェブセキュリティ
Niigatapm
JavaからClojure、そして夢の世界へ
第四回関西Emacs「ari.el」
Lispで仕事をするために
オウンドメディアのコンテンツ事例集40選(サムライト)
Ad

Similar to Clack: glue for web apps (20)

PDF
Web micro-framework BATTLE!
PDF
WebShell - confoo 2011 - sean coates
PDF
Snakes on the Web
PDF
Restinpeaceosidays2011 111121093818-phpapp02
PDF
Basic Introduction to Web Development
ODP
Web Server-Side Programming Techniques
PDF
Get your teeth into Plack
PDF
Unit 02: Web Technologies (1/2)
PPTX
Web Engineering at UCL
PPTX
RESTful Web Services
PPTX
CN UNIT5.pptxCN unit5CN unit5CN unit5CN unit5CN unit5CN unit5CN unit5CN unit5...
PDF
Web Introduction
PDF
YAPC::EU 2015 - Perl Conferences
PDF
Building a desktop app with HTTP::Engine, SQLite and jQuery
KEY
KEY
Week 1 (v3)
KEY
PDF
Code for Startup MVP (Ruby on Rails) Session 1
PPT
02 intro
PDF
12 core technologies you should learn, love, and hate to be a 'real' technocrat
Web micro-framework BATTLE!
WebShell - confoo 2011 - sean coates
Snakes on the Web
Restinpeaceosidays2011 111121093818-phpapp02
Basic Introduction to Web Development
Web Server-Side Programming Techniques
Get your teeth into Plack
Unit 02: Web Technologies (1/2)
Web Engineering at UCL
RESTful Web Services
CN UNIT5.pptxCN unit5CN unit5CN unit5CN unit5CN unit5CN unit5CN unit5CN unit5...
Web Introduction
YAPC::EU 2015 - Perl Conferences
Building a desktop app with HTTP::Engine, SQLite and jQuery
Week 1 (v3)
Code for Startup MVP (Ruby on Rails) Session 1
02 intro
12 core technologies you should learn, love, and hate to be a 'real' technocrat

Recently uploaded (20)

PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Electronic commerce courselecture one. Pdf
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
Big Data Technologies - Introduction.pptx
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Machine learning based COVID-19 study performance prediction
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Encapsulation theory and applications.pdf
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
cuic standard and advanced reporting.pdf
DOCX
The AUB Centre for AI in Media Proposal.docx
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Unlocking AI with Model Context Protocol (MCP)
Digital-Transformation-Roadmap-for-Companies.pptx
Electronic commerce courselecture one. Pdf
Mobile App Security Testing_ A Comprehensive Guide.pdf
Big Data Technologies - Introduction.pptx
Encapsulation_ Review paper, used for researhc scholars
MIND Revenue Release Quarter 2 2025 Press Release
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Machine learning based COVID-19 study performance prediction
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Reach Out and Touch Someone: Haptics and Empathic Computing
Encapsulation theory and applications.pdf
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
cuic standard and advanced reporting.pdf
The AUB Centre for AI in Media Proposal.docx
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
NewMind AI Weekly Chronicles - August'25 Week I
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
The Rise and Fall of 3GPP – Time for a Sabbatical?
Unlocking AI with Model Context Protocol (MCP)

Clack: glue for web apps