这就是下一代 IDE 吗?

Idea征集:改进lsp-ui-doc 继续讨论:

上次说要讲个东西,然后果然已经有(好几个)人做出来过了类似的东西。

不过鉴于和我设计的还是有点出入,所以该做的我还是要做的什么的。

1 个赞

@casouri @manateelazycat

我觉得可以作为IDE和编辑器的补充卖点, 但是仅凭这一个功能, 很难叫下一代IDE了, 现在开发环境都比拼全面性和自定义能力, 一个卖点不够。

我看来就是语法感知, 不光是模板,而是根据当前的代码进行智能替换, 要把这一点做好很难, 因为很难做到智能, 代码上下文太复杂了。

Anyway, 我觉得这个功能很 cool.

Live coding 这种东西,现在好多工具都有了,他们都有一个共同特点:慢。

Automatic formatting 什么的我觉得早就该普及了,不知道为什么没人做⋯⋯ Mathematica 里自古以来就有⋯⋯

1 个赞

Haskell 十年前也有人玩, 但是我同意你的看法,当一个智能的东西, 如果性能不能快过开发人员的思维, 就很难用下去。

1 个赞

怎么不盖楼了

重点不在 Live Programming,而是用复杂数据结构代替传统储存成纯文本的代码。我也不觉得 Live Programming 有必要做,有 REPL 就够了。

然后过段时间, 自己就看不懂这些复杂的数据结构了, 感觉没有工具, 自己就是智障了, 哈哈哈哈

可以用 OOP 包装个界面出来,按需求从简单到复杂。Common Lisp 有个工具叫 Inspector,专门用来查看复杂数据结构,可以说最擅长这个了。

这个跟解释器干的事很像吧?能不能直接利用解释器?

用数据结构代替文本是为了实现什么功能呢?除了live coding以外?是不是补全,refactor,替换这些?

下一代IDE 不是声控的么?

是的,这就是我为啥提 Mathematica。Mathematica 的 notebook 文件里有大量的元数据,不过存的也不是语法树就是了。

编译器也行。

还有语法分析。

比起 live coding,更希望在代码结构的可视化方面下下功夫,比如括号匹配、缩进层级、函数依赖关系,分支等等,希望以后可以在拓扑关系图上看/写程序

这些就是 Lambu 的项目目标啊。为啥你们都只看到 Live Programming。

另外 Live Coding 是指通过编程现场即兴作曲,莫用错词。

可以啊,用错词成功打开 overtone 的大门,这波不亏

1 个赞

@LdBeth 按照你的想法, 做出来吧,很多东西, 没做出来之前, 大多数人都只会敲敲键盘吐槽, 只有你做出来以后, 大家才会为惊艳的思想所折服, 情不自禁的说: wow, 还可以这样.

5 个赞