在线 Clojure 编译器

在浏览器中编写、编译并运行 Clojure 代码,适合学习、练习与快速验证。

Clojure 代码编辑器

输出

标准输出(stdout)

 

标准错误(stderr)

 

使用说明

  • 在左侧编辑器编写 Clojure 代码(例如使用 println 输出)。
  • 点击“运行代码”即可在线编译并执行程序。
  • 右侧面板展示输出与错误信息。
  • 绿色区域为标准输出(例如 println)。
  • 红色区域为运行错误与异常栈信息。
  • 执行信息包含退出码与运行状态。
  • 快捷键:Ctrl+Enter(Mac 上为 Cmd+Enter)。

Clojure 基础

基本结构:

;; 简单的 Hello World
(println "Hello, Clojure!")

常用数据结构:

[1 2 3] ;; 向量
{:a 1 :b 2} ;; 映射
#{1 2 3} ;; 集合

控制结构

条件与循环:

(if (> 3 2) (println ">2") (println "<=2"))
(doseq [i (range 3)] (println i))

函数与序列

函数示例:

(defn add [a b] (+ a b))
(println (add 2 3))

常见问题

支持哪些 Clojure 版本?

通常支持常见的 Clojure 版本,具体实现以后端环境为准。

可以引入第三方库吗?

运行环境为沙箱,暂不支持在线引入外部依赖。建议使用基础语言与标准库示例。

运行是否有时间限制?

有。为避免死循环并保证公平使用,运行有时间限制,超时会自动终止。

可以保存代码吗?

暂不支持在线保存。建议将重要代码复制到本地,或使用收藏夹/笔记工具保存片段。

可以交互输入吗?

当前不支持交互式输入。可将测试数据直接写入代码中以进行验证。

示例程序(点击上方运行)

1. 递归计算阶乘

(defn fact [n]
  (if (<= n 1) 1 (* n (fact (dec n)))))
(println "5! =" (fact 5))

2. 映射与过滤

(println (map #(* % %) [1 2 3 4]))
(println (filter odd? [1 2 3 4]))