2024-03-12 JS REPL become useful
内容提要
2024年3月12日,JS REPL变得有用。作者发现了一个很酷的工具叫做“bun repl”,它允许他们在不退出控制台的情况下安装新的依赖项。他们更喜欢这个工具而不是使用RunKit.com,因为它不支持ESM。他们也不喜欢在本地环境中留下太多临时代码。作者从Elixir的iex shell中学到了这个技巧。作者认为没有REPL的编程语言是没有用的。
延伸解读
bun repl 解决了什么痛点
作者长期寻找能在 REPL 中直接安装依赖的 JS 工具,bun repl 实现了这一点。相比 RunKit.com,它支持 ESM,避免了 require 带来的割裂感;相比本地 npm install,它无需留下临时代码,也不占用 node_modules 存储空间。这适合只想快速运行某个函数、用完即弃的场景。
从 Elixir 借鉴的 REPL 理念
作者从 Elixir 的 iex shell 中学到在控制台安装依赖的技巧,iex 通过 Mix.install 实现类似功能。作者认为 REPL 是编程语言不可或缺的部分,不好用的 REPL 等于没有。Node.js 自带的 REPL 无法直接使用 import 语句,也不支持安装依赖,因此不被作者视为合格的 REPL。
对日常开发习惯的影响
对于已全面使用 ESM 的开发者,bun repl 提供了一种更连贯的试验方式,无需为了运行一个函数而创建临时项目或安装依赖。作者不喜欢在本地留下太多临时代码,也不希望 node_modules 占用过多存储,因此更倾向于在控制台中即用即弃。这种工作流可能减少本地环境清理的负担。
Q&A
什么是'bun repl'工具?
'bun repl'是一个JavaScript工具,允许用户在不退出控制台的情况下安装新的依赖项。
为什么作者不喜欢使用RunKit.com?
作者不喜欢RunKit.com是因为它不支持ESM,使用require语句让他们感到割裂。
作者从哪里学到了在控制台中安装依赖的技巧?
作者从Elixir的iex shell中学到了在控制台中安装依赖的技巧。
作者对没有REPL的编程语言有什么看法?
作者认为没有REPL的编程语言是没有用的,REPL不好用的话和没有REPL没有区别。
使用'bun repl'有什么优势?
使用'bun repl'可以在控制台中即时安装依赖,避免在本地环境中留下临时代码,节省存储空间。
作者对node.js REPL的看法是什么?
作者认为node.js直接开启的运行环境根本不算一个合格的REPL。