Ep 099: REPL Your World

Ep 099: REPL Your World

Update: 2023-11-16
Share

Description

Each week, we discuss a different topic about Clojure and functional programming.


If you have a question or topic you'd like us to discuss, tweet @clojuredesign, send an email to feedback@clojuredesign.club, or join the #clojuredesign-podcast channel on the Clojurians Slack.


This week, the topic is: "taking the REPL beyond your application". We free our REPL to explore and automate the world around us.


Our discussion includes:



  • What are the different ways of working with the REPL?

  • How can you be more productive by using the REPL?

  • What is the connected editor?

  • How to use the REPL beside writing code for your application.

  • What is often missing from API docs.

  • Moving from bash to Clojure.

  • Using the REPL for exploration.

  • What is a "fiddle" approach to using the REPL? What is it good for?

  • Why should you use your editor for non-coding activities?

  • How to save time when you're stuck with manual testing.

  • Interacting with databases.

  • When is the REPL better than a script?

  • How a REPL is like a bash prompt, and how it's not.

  • What supports the supporting activities of software development?

  • Using the REPL as your application interface.

  • Migrating data using the REPL.

  • Why your REPL is a natural place for difficult to access resources.

  • Why the REPL saves you from extra coding.


Selected quotes:



  • "We share because we care."

  • "The connected editor is an interface to productivity."

  • "I like to call it whiplash-driven development because it's so fast that you literally have no time between when you write the code to when you execute it. You're just blown back by the productivity!"

  • "This is a Clojure Podcast, so I bet you know where this is going."

  • "The REPL as a window into another system."

  • "I actually wrote the API, so I know how it should behave...but not how it does!"

  • "Isn't that one of the goals of your programming language and experience: to spend less time doing the things that are really mundane and repetitive and more time actually doing new things?"

  • "I don't want to just let that go into the history file. I want to save it someplace more important."

  • "I have all of the power of Clojure before the query and then after the query. I don't have to trick psql to write that data out somewhere so I can read it in my REPL. It's already there!"

  • "It's not that there aren't other ways to do this. That's not the point. The point is that all of a sudden you realize there's a lot of interactive exploration and processing and task automation you can do from the REPL because you don't need to write a script to do it."

  • "You can just execute a form, and boom! It's off. It's running."

  • "But then, I was like 'Wait, there's got to be a better way!' You know, infomercial style."

  • "It's functional programming, so we're going to talk about composition. It'll happen."

  • "Whoa! The REPL could be a terminal! A super powerful terminal into a vast warehouse of data, and I can slice it and dice it all sorts of different ways and discover things."

  • "The REPL is just a way of doing structured execution very rapidly and very flexibly."

  • "With the REPL, every function or form is a potential entry point. You can have all kinds of entry points."

  • "The malleability of it is its power."


Links:


Comments 
In Channel
Ep 118: Pure Parts

Ep 118: Pure Parts

2024-06-2728:28

Ep 116: The Main Focus

Ep 116: The Main Focus

2024-05-1622:44

Ep 115: The Main Event

Ep 115: The Main Event

2024-05-0928:42

Ep 113: Highlightify!

Ep 113: Highlightify!

2024-02-2927:13

Ep 112: Purify!

Ep 112: Purify!

2024-02-2233:20

Ep 111: Loopify!

Ep 111: Loopify!

2024-02-1528:54

Ep 110: Contextify!

Ep 110: Contextify!

2024-02-0823:22

Ep 109: Extractify!

Ep 109: Extractify!

2024-02-0126:35

Ep 108: Testify!

Ep 108: Testify!

2024-01-2522:42

Ep 107: Idempotify!

Ep 107: Idempotify!

2024-01-1831:53

Ep 106: Robustify!

Ep 106: Robustify!

2024-01-1130:37

Ep 105: Codify!

Ep 105: Codify!

2024-01-0425:42

Ep 104: Assembleify!

Ep 104: Assembleify!

2023-12-2135:03

Ep 103: Explorify!

Ep 103: Explorify!

2023-12-1432:15

Ep 102: REPLify!

Ep 102: REPLify!

2023-12-0728:11

Ep 101: Sportify!

Ep 101: Sportify!

2023-11-3017:03

loading
00:00
00:00
x

0.5x

0.8x

1.0x

1.25x

1.5x

2.0x

3.0x

Sleep Timer

Off

End of Episode

5 Minutes

10 Minutes

15 Minutes

30 Minutes

45 Minutes

60 Minutes

120 Minutes

Ep 099: REPL Your World

Ep 099: REPL Your World

Christoph Neumann and Nate Jones