🌘 客製化 Lisp REPL 的方法
➤ 擁抱原生,客製化你的 Lisp 終極體驗
https://aartaka.me/customize-repl.html
本文探討如何透過客製化 Lisp 的 Read-Eval-Print Loop (REPL),以提升開發體驗。作者強調應盡量使用現有工具並避免不必要的額外層級,並分享了他個人偏好的客製化策略,包括自訂提示符、擴充命令、善用 reader macros,以及利用 rlwrap 增強終端機功能。他也對比了原生 REPL 與外部 GUI 除錯器的優劣,並提及了 library 管理的常見方法。
+ 作者的觀點很有說服力,確實很多時候客製化原生工具比引入新層級更具優勢,我也想試試看他提到的 Trivial Toplevel Prompt 和 Trivial Toplevel Commands。
+ 雖然我喜歡 GUI 除錯器,但作者提到原生 REPL 的強大功能,讓我開始思考是否應該更深入地挖掘它們的潛力。reader macros 的部分確實很吸引人!
#Common Lisp #REPL #客製化 #開發工具
Customizing Lisp REPLs

Lisp REPLs are a good tool, but some consider it too rigid. Which leads to abundance of proxy REPLs. Except… you don’t need them!

Artyom Bologov

The REPL-Driven Development workflow in Julia is a game-changer. 🚀

You can build and debug your application interactively, modifying a running program without restarting it. Perfect for a fast, productive feedback loop. #REPL #productivity #opensource

#Lisp #REPL s are these unique beasts, clean windows into the raw interactivity of the languages and a mold to build it from. They are text-only-ish, though. Which is not always optimal. In my new piece, I look at the state of art in #CommonLisp implementation REPLs and their customizabity, and try to advocate for using them still.

Customizing Lisp REPLs: https://aartaka.me/customize-repl.html

Customizing Lisp REPLs

Lisp REPLs are a good tool, but some consider it too rigid. Which leads to abundance of proxy REPLs. Except… you don’t need them!

Artyom Bologov

Would any of you play a terminal interface based #rouge-like /-lite #game similar to NetHack, but it's the future and #cyberpunk? You could walk up to old terminals and run commands in an (ancient) OS built into the game. It would be a #textadventure, so you would have an inventory and could interact with characters and the world in interesting ways. And how about editing the game's own #source code while playing, using a #REPL?

If I don't build this, I hope someone does. 😄

I fuckin love this highly customizable, tweakable and hackable beast    

#StumpWm #CommonLisp #Emacs #REPL

@snyssfx @PaniczGodek no #repl, no normal OOP (like common lisp's clos or clojure'alike), no clojure-alike multimethods, no clojure-alike spec, no lisp-alike pattern-matching, no java/jvm interop (need to write a lot of code again), no ability to do frontend (unlike clojurescript and many other lisp solutions) with it and no normal and supported ability to write Android apps (unlike say react native + cljs), no macroses (like all lisps)...
Um. What else?
I just can't take it seriously.

- Did you know that Guile's metacommands are comming to Arei soon?
- That we already have an incredibly useful guile stack traces viewer?
- That Ares now works with stable version of Guile and doesn't require guile-next?

No? We got you covered:

https://youtu.be/VUnY1LY4Las

https://git.sr.ht/~abcdw/guile-ares-rs
https://git.sr.ht/~abcdw/emacs-arei

Join the discussion:
https://lists.sr.ht/~abcdw/rde-discuss

#guile #scheme #repl #guix

Guile Stack Viewer, Metacommands in Arei, New Ares CLI, Custom Ports Backport | RDE Meetup #6

YouTube

Planning to write a post on #CommonLisp #REPL customization. Gathering state-of-the-art customizations. Remembered that I implemented native graphical debugger in #Nyxt once (immortalized in Ndebug https://github.com/atlas-engineer/ndebug). Went to check on the current state of Nyxt-native debugging.

And yes, native debugger was removed too, much like many other signature features. Which might be a reason to hold a grudge about my work being erased, I guess?

But I'm more saddened about this exemplary REPL hacking piece gone missing, really. I want to point at good examples of custom REPLs in my new post... and there aren't many anymore 😢

GitHub - atlas-engineer/ndebug: A Common Lisp toolkit to construct interface-aware yet standard-compliant debugger hooks.

A Common Lisp toolkit to construct interface-aware yet standard-compliant debugger hooks. - atlas-engineer/ndebug

GitHub
@qmacro is doing a great presentation about #CAP #repl at #recap2025.