Clack: glue for web apps
-
Upload
fukamachi -
Category
Technology
-
view
1.145 -
download
5
Transcript of Clack: glue for web apps
• 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
• Middleware wraps an application
• Middleware can be reused
• ex) access log, session manager
“Middleware”
• 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
• We have everything we need to build a web application
• Just try.
• Looking for a Common Lisp job? We’re hiring!
The next move
EITARO FUKAMACHI 8arrow.org @nitro_idiot fukamachi