Clack: glue for web apps

1,637 views

Published on

Presented at Clack Meetup #1

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,637
On SlideShare
0
From Embeds
0
Number of Embeds
315
Actions
Shares
0
Downloads
10
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Clack: glue for web apps

  1. 1. Clack: glue for web apps Clack Meetup #1 Eitaro Fukamachi
  2. 2. Thank you for coming.
  3. 3. I’m Eitaro Fukamachi @nitro_idiot fukamachi
  4. 4. Topics • What’s Clack? • As an Abstraction Layer • As a composable rule • History
  5. 5. Clack
  6. 6. • Web application environment • Intended to be a basement of frameworks • Abstracts web servers • Composability Clack
  7. 7. Clack (clackup (lambda (env) ‘(200 (:content-type “text/plain”) (“Hello, World”))) :server :hunchentoot)
  8. 8. Clack (clackup (lambda (env) ‘(200 (:content-type “text/plain”) (“Hello, World”))) :server :hunchentoot) Application
  9. 9. Clack (clackup (lambda (env) ‘(200 (:content-type “text/plain”) (“Hello, World”))) :server :hunchentoot) Application Web server to run the application on
  10. 10. Web server Abstract web servers Application Web server Web server Application Application
  11. 11. Web server Abstract web servers Application Web server Web server Application Application Clack
  12. 12. Composability ApplicationRequest Response
  13. 13. Middleware Middleware Composability ApplicationRequest Response
  14. 14. • Middleware wraps an application • Middleware can be reused • ex) access log, session manager “Middleware”
  15. 15. History
  16. 16. We lived 4 ages.
  17. 17. • 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)
  18. 18. • Quicklisp made installation of libraries really easier • It make sure libraries can load at least AQ (the Tool Age)
  19. 19. • Hosted on GitHub • Has many tests • Tested on Jenkins • Has a documentation Clack was out 4 years ago
  20. 20. • 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)
  21. 21. • Hunchentoot, Weblocks, web4r, RESTAS • Most WAF were built on top of Hunchentoot!! • Is Hunchentoot reliable and everlasting? Clack (the Bronze Age)
  22. 22. 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
  23. 23. • Moved many codes to an individual project • Could reduce 1583 lines • Made it stable • Made it faster • Started testing on Clack v1.0
  24. 24. So, what’s next?
  25. 25. • We have everything we need to build a web application • Just try. • Looking for a Common Lisp job? We’re hiring! The next move
  26. 26. Thanks.
  27. 27. EITARO FUKAMACHI 8arrow.org @nitro_idiot fukamachi

×