(sml) 我将创建一个函数,以 Lisp 表示法精美地打印字符串树

(sml) I'm going to make a function that prints a string tree beautifully in Lisp notation

其实我并不知道“lisp notation”到底是什么意思。 所以我试图让它尽可能类似于列表格式,但我不能像示例一样表达它,因为 () 或 (,) 看起来一样。 我怎样才能像示例一样表示列表?




这可能不是您的确切解决方案。但是 Lisp 是一个编程语言家族,具有悠久的历史和独特的完全括号前缀表示法。

在 Lisp 中表示源代码时,表达式的第一个元素通常是运算符或函数名称,任何剩余元素都被视为参数。这称为“前缀表示法”或“波兰表示法”。例如,在C中写成4 == (2 + 2)的布尔表达式,在Lisp的前缀中表示为(= 4 (+ 2 2))表示法。

您可以在网上找到许多前缀(或预序)算法并根据您的程序语言实现它。