V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  ufo5260987423  ›  全部回复第 11 页 / 共 12 页
回复总数  224
1 ... 3  4  5  6  7  8  9  10  11  12  
2023-02-10 16:59:05 +08:00
回复了 liuhaoyang 创建的主题 开源软件 Erda 开源的迷失和反思
开源的真正威力在于业务的标准化。
现在搞开源的都是把自己搞不定的东西开源出去,当然举步维艰。
2023-02-04 14:27:27 +08:00
回复了 ggp1ot2 创建的主题 程序员 打工没有出路,程序员关于副业、独立开发者的思考。
你的考虑和我很像,但是我的方向是做一些积累性的工作,越老越吃香的那种。所以我自己就搞了一个 scheme-langserver( https://github.com/ufo5260987423/scheme-langserver)。还是有一些人觉得比较 cool 的,目前正在往里面加 type inference
2023-01-30 10:46:12 +08:00
回复了 god7d 创建的主题 随想 欧卡如人生
@weak 说的太对了!买了一辆车以后就想着如何尽量多跑车。买了车库以后就想着怎么样让员工多跑车。
@ufan0 我的意思是,既然安全要求较高,那插件会不会有一个什么要求?
@ufan0 这种云 IDE 让装插件么?
@pisc 嗯呢,我对 haskell 只有一个印象,并没有使用过。也看不太懂 haskell 社区讨论的太多东西,感觉有很多学术内容。
@mascteen 我当年也跟着田春冰河的足迹学过一些 common lisp 。我不是很熟悉现在的 cl 实践,但是正如我上面所说的:我需要一门足够简单的语言,然后根据自己的需求通过加库的方式激活一些特性。这方面 scheme 已经满足需求了。或者这么说吧(肯定不精确),我需要 c ,但是不需要 c++。
@gowl 正如你所说,语义密度 scheme 太高了。scheme-langserver 表现怎么样,这种时候就看你如何在文件层面分割了。
@gowl 我突然想到一点 scheme 的绝对优势:肯定不会学 python 新标准把旧标准完全抛弃哈哈哈哈
@gowl 你的写大了,大概是多大的量?
可以交流一下你的 case ,我针对性写一下代码。
@gowl 哈哈哈哈,是嘛……我基本上只有十年前玩过 clojure
@gowl 我用过的其他静态类型的函数式语言只有 clojure ,所以我这里只能告诉你两点:
1 、我为啥不用 clojure 、haskell 、racket 、ocaml 、rust 等等。
2 、我为啥用 scheme
----
我认为首先要确认一下,我喜欢的 scheme 是执行了 r6rs 标准的 Chez Scheme ,它具有如下特点:
1 、核心非常小,透过语法我可以直接看见 c 看见汇编,我也可以看见逻辑表达式。
2 、速度非常快(堪比手写,未经优化的 C ,如果你认真研究过 r6rs 的标准并且认真写代码的话),我写 scheme-langserver 的一个目标是用来辅助开发一些机器学习的东西。
3 、由于发展历史非常长,有大量的各个领域的库可以用(当然不太好找,很多还要自己调试,但是现在有 akku 和 github 了)

相比之下,
1 、十年前的 clojure 太慢(现在好像仍然这样),而且它们的目标似乎是用灵活性解决商业问题——过度灵活的商业问题恰恰意味着盈利不稳定,而在一定范围内稳定的商业问题可以通过开发各种框架解决。所以我不用 clojure 。
2 、haskell 的主要特点似乎是:它是一个 prover ,用各种数学证明保证你是正确的。我对这个没有太多的感觉,我认为保证正确——这个事情应该让程序语言以外的静态检查、开发工具去解决。实际上我看到有说法“haskell 自己就是一种 lisp”。
我希望在写完代码以后根据需求选择检查工具看看可能有什么漏洞,不想在写代码之前先读书。
3 、rust 和 ocaml 我了解的都非常少,但是对于一些所谓“由语言带来的特性”,我的观点同上。

总结:lisp 其实有一个不可替代的地方,就是它是存活到现在的第二古老的计算机语言(第一似乎是 fortran )。这意味着它和计算机语言学的前半生是纠结在一起的,你想要什么样的东西都几乎可以不受到语法的限制(因为约等于没有语法,笑)快速实现。而剥去语法的外衣,我可以直接看到 C (仅对于 chez scheme ),可以直接看到逻辑表达式。
@zhuangzhuang1988
1 、不是 parse ,而是更新 index 。因为 lsp 面对的很多代码可能是无法很好的 parse 的。
2 、更新的 scope 是文件级别的。因为 lisp 的控制过于灵活,很多情况下你更新一个字(比如一个左括号)都会导致语义的重大区别(但是仍然有 define-top-level-value 这种鬼畜的东西存在);理想的更新当然是只更新牵涉更改的 index ,但是这肯定是很靠后的事情了;
3 、目前更新索引对使用的影响还马马虎虎能够接受,so……
当然了,有好的想法的话希望可以讨论一下。O(∩_∩)O 谢谢
@ksco 大概十年前就开始搞一些 lisp 的方言,比如 clojure 。不过正经搞也就是去年 7 月份的事情(你可以去看一下 scheme-langserver 的提交记录)。
实际上我基本上是拿 chez scheme 当 C 语言那么写,基本上写一下就会发现,你能写出来代码和会不会用 lisp 的高级特性无关。
当然入门写 scheme 其实不太友好,因为各种现代工具太少了,我写 scheme-langserver 也是希望大家都来玩 scheme 。
@gowl 因为这样我处理地球人的时候就不用太有心理压力了 2333
@gowl 噗,我一直不太想当地球人。
@zhizunzz 也欢迎问一些关于解释器的其他问题啦。
@BBCCBB 其实也要看情况,比如 Chez 的 String 实现效率貌似就不是很高。
@enchilada2020 哈哈,感谢。
2022-11-25 16:21:13 +08:00
回复了 xuAN111 创建的主题 程序员 我这个爬虫是否违法?
你肯定是违法的,关键看是否愿意执法。
1 ... 3  4  5  6  7  8  9  10  11  12  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2180 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 21ms · UTC 04:50 · PVG 12:50 · LAX 21:50 · JFK 00:50
Developed with CodeLauncher
♥ Do have faith in what you're doing.