Skip to content
0:00 / 0:00

#clojure#repl#repl-drivendevelopment

REPL Driven Development, Clojure's Superpower - Sean Corfield

London Clojurians

3.9K subscribers • 47 videos on Hallway

YouTube
  • Recommended by 1 person: 1 in engineering communities.
  • Presented by Sean Corfield

Intermediate. Assumes working knowledge.

24K views5 years ago1 recommendation

Programming languagesTools and practiceLisp and ClojureVim, Emacs and editorsTesting

Sean Corfield demonstrates how to build a web application live from your editor using Clojure's REPL-driven development workflow.

Everyone talks about REPL driven development (RDD) but what it is really? Why is the Clojure REPL not like other languages’ REPLs? Can you really develop an application “live”? What about restarts, refreshes? Don’t I need special, magical tooling for this? This talk will show you how fundamental Clojure’s REPL is to development, and how to build a web application, live, from your editor, with no restarts, no refreshes, just simple, basic tooling. Clojure’s REPL is truly its superpower:it lets you hold your application in your hand, query it, modify it, evolve it, with just a basic set of tools and an understanding of what “REPL-friendly development” means. Sean Corfield used to build compilers, virtual machines, databases and telecom systems but eventually got a real job building web applications. After eight years of ANSI C++ Standardization and a decade of web development with JVM-based languages, he finally found his first love again - functional programming - and for the last decade he has written Clojure almost every day. github.com/seancorfield

Why it's here

1 person recommends this

What people say. Recommended as an excellent demonstration of Clojure's REPL-driven development workflow and its benefits.

u/BrunoBonacciin r/Clojure • Recommends

REPL-Driven Development - Clojure's Superpower by Sean Corfield - @ LndClj

u/jherrlinin r/functionalprogramming • Mentions

On “Which language to choose ?”

Clojure is not a typed language and it goes against your "Write->Compile->Debug". But if interactive development is new to you I really encourage you to look into that. I tend to think about the interactivity as a bash shell but for a programming language. Sean Corfield has a really good talk where he presents it. [video Interactive development is also called REPL driven development, but I often find the naming ambiguous as many programming languages have REPLs but they dont support REPL driven development.

u/vivshawin r/ProgrammingLanguages • Mentions

On “Is there such thing as a “run-on-write” language? See description for an eg”

I'm not sure if I'd say the language is "built around it", but I think you'll find the best expression of it in LISPs^(\*). You may hear this idea referred to as REPL-driven development\- but don't get it confused with "the language just has a REPL executable"! We're talking about a scenario where you can write source in an editor as you usually would, but execute that source on the fly, interactively, as you write it. I find the developer experience is extremely interesting- I can simultaneously be writing an application, and running it, and messing around in the guts of the running system, totally seamlessly. Or by analogy to a more ordinary interpreted lang, like Ruby: it's as though my R…