V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
V2EX  ›  netabare  ›  全部回复第 3 页 / 共 44 页
回复总数  877
1  2  3  4  5  6  7  8  9  10 ... 44  
我最近在想的是能不能先拿 Rocq 把自己的想法推一个最小的模型,证明一些 invariants ,然后再看怎么让这些东西可以拿来干啥。
什么乱七八糟的…Java 那玩意不就是换个名字的继承。

要说多态最起码也得 adhoc polymorphism 或者 typeclass 那种吧。就更不用提 row polymorphism 或者 effect polymorphism 了。

至于你说的这种动态分派,visitor pattern 就能模拟,那只要一个语言能写 visitor pattern ,就能模拟出来。

Go 、Python 、JS 、C++就不说了,Haskell 都能拿 GADT (不带 typeclass )来模拟。

哦对了,JS 的 prototype 也可以直接运行时「动态替换」,不知道这是不是你要的效果。
@xue777hua 对,这种混淆对于机器和编译器毫无意义。
@geelaw 也许是「给出一个项目代码库,能否通过阅读代码本身和少量的运行调试,明白这个项目在做什么」?
@msg7086 我感觉这里的 Promise 还是蛮明显的,不过 authenticate 、Error 和 fetch 这些词可能会让 AI 偏向于认为这段代码是处理前端业务或者登入鉴权的代码?我一开始想着写这玩意的时候其实想要表达的控制流更像是 util 库里面的简单 wrapper 函数。不过你说的也有道理,代码量太短很难分析出什么有价值的东西。
@sentinelK 之所以想到这个问题,也是因为最近跟 AI 聊天的时候经常发现 AI 回答特别容易给出很平庸的答案,或者识别一个 pattern 立刻不读我的源代码断章取义假设一个我根本不关心的场景。所以我就写了这坨代码去找几个 AI 轮流问一遍了(

不过这种东西对编译器来说应该就是单纯的 nop ,因为 mangling 本来就是编译器的基本操作。
@levelworm 这个的全称是?

@x1596357 这个是每年都有的吗?今年的肯定错过了 quq

@mxgarbage 在法国……

@xiqingongzi @lonely701 感谢!
1 月 29 日
回复了 apacheinsky 创建的主题 程序员 如果没有 AI 低代码会自己死掉吗
低代码不就是 4GL 换个皮?这玩意现在还有人用才是令人难以理解的事情吧。
1 月 29 日
回复了 JieyueXing 创建的主题 Java Java : 2026 年 SpringBoot, Quarkus, Solon ?
图 JVM 那为啥要死磕 java 呢,kotlin 、clojure 不香吗?
1 月 29 日
回复了 blinue 创建的主题 开源软件 开源项目维权太难了
issue 置顶不就是用来做这个的?如果是我我觉得 readme 里面放也不是不行。顺便 DMCA 也发一下,再不行就律师函走起。

另外如果 GPL 过于宽松,建议修改成更为激进的开源协议。毕竟 faker.js 殷鉴不远。
1 月 29 日
回复了 FH0 创建的主题 程序员 Claude 模型很喜欢说:你说的对
每次 GPT 回答我「完全正确」的时候我都会拉着他倒过来分析最后 3-5 个讨论质问他这个正确的完备性,或者把问题的假设反过来质问他是否能给出认同或者批评的观点,然后再做综合分析。

几次这么下来之后,他「完全正确」的次数明显少了很多,当然,如果是免费版降级,那其实还是没办法。
@Tom7 不懂,听上去感觉 Java 好像快完蛋了,还是给 AI 替代吧。
1 月 29 日
回复了 Zhuzhuchenyan 创建的主题 生活 聊一聊法国的看病体验
法国其实很麻烦的一点是许多地方的 GP 很不好找,而且 GP 不一定接新的病人。

我所在的地方是经典的「医疗沙漠」,所以我选择一直保持上学的地方的旧的 GP + 精神科医生,平时如果是常见病直接去诊所找医生开药,因为如果是感冒或者肠胃炎或者鼻炎啥的我自己都知道该开啥药。听同事说如果 GP 距离你大于一百还是多少 km 的话可以随便找医生并且不用担心报销问题。

但我会觉得如果常见病难受的时候我会直接去药房找医生问能不能买扑热息痛、布洛芬(或者其他药品名),有些时候药房可能不太情愿,但一般都能开。多去几次混熟了面孔后就没啥问题了。虽然要自己掏几块钱,但我总觉得比去找专门开处方的医生或者去急诊排队好多了,反正结果都一样。然后我一般找 GP 得坐三小时跨城高铁,是为了去讨论慢性病的。

感觉法国的医疗资源可能很大的一个问题也是医生的资质参差不齐吧,我之前也有过拍片、拔牙、做手术之类的情况,整体上感觉还算流畅,也没需要排太长的队。另外一点就是法国人整体上都很依赖 GP 分流,甚至有法国人以为做体检都得去 GP 报备(实际上 CPAM 提供免费的体检服务),所以我总感觉某种程度上如果有可能,GP 专门用来讨论慢性病跟进,其他的情况对症下药找不同的渠道,体感会好很多。
什么叫「 oracle 的 java 团队等其他语言团队,后续更新」?

你是说 Loom 、Panama 、Valhalla 这种?还是说 AI 写 JEP ?
@gongym 其实 Claude 和 GPT 我都有用,我感觉 Sonnet 不太行,因为跟我不管聊啥最后他的回答都越来越支离破碎。

我对三家 AI 的描述可能是这样的:

GPT 比较容易跟我一起发散
Opus 比较冷
Gemini 有点墙头草

但无论哪种 persona ,在技术问题里我「越界」的时候都会有意无意把讨论往「大部分人能接受的方案」拉并且隐隐约约暗示我的思路不安全、有风险、应该用 POC 、项目规划啥的来 wrap 住,而哪怕是发散的 GPT 还是墙头草的 Gemini 都会在这点上表现得很像。

这种不是哲学家思维能解释的吧(
说到这个,我想到我让 AI 诊断某个 day 0 legacy 的时候,上来 AI 就给我说「 vite dev tool 可能不干净,HMR 很脆弱,你应该手写」然后折腾了几轮后我感觉不对劲直接中断然后反问他说「不干净」是否能搜到讨论,他推荐的浏览器插件方案是不是在 DOM 上更不干净。然后得出的结论是,整个问题一开始压根不是跟 vite dev tool 相关的。

第二天遇到奇怪的问题,问其他人,别人不知道什么地方出问题了并且回答我「我感觉你代码没问题啊」,然后我遇到一个很奇怪的响应式断掉的问题,并且断掉的方向很巧合的有种镜子的感觉。

然后我直接拿这个逻辑去质疑 AI 了:

这个链条是:

-- 我拒绝 Chrome Devtool
-> 我就要 HMR
-> 我拒绝 Vite 的浏览器插件
-> 我就要自带的 vite dev tool
-> 我拒绝「 vue 在 window 」
-> 我就要把 vue 收回来,所以我暴露了 component+mount/unmount
-> 完美的镜面 bug

每一步,都是在逆着 LLM 被训练的偏好走。

如果从一开始我没有质疑、质疑、顶撞「 vite dev tool 真的是不干净的吗」和否定「浏览器插件」,那也许压根发现不了 bug ,连「这里有什么地方很不对劲」都不知道了。

然后我能分析出的唯一的结论就是大数原理和语料问题还有 LLM 天然倾向于打圆场做老好人而不是直接攻进问题核心区。并且这跟 LLM 倾向于一个 commit 在一行改动的同时引入三行无关参数和两行 trivial 注释是类似的。

不过我也在想,也许有问题的远远不止是 LLM 。
我觉得没有必要,用 GPT/Claude Opus/Gemini 后的感觉是,如果真的要做推理分析或者很专业的话题,触发 AI 进入模式的,不是语言,而是你自己如何组织词句,如何给出清晰的逻辑回路,如何有条理的去反驳他,或者质疑一个观点是否可以被证明或者证伪。

另一点是在一些稍微次高端的 AI 模型比如 Sonnet 上,同样的思路来回十几轮后我会发现 AI 的回答开始变得支离破碎,中文夹英文越来越多直到最后整个回答都是短语片段。但我感觉这个更多是 AI 的问题而不是语言的问题。
1 月 25 日
回复了 zhanshen1614 创建的主题 程序员 AI 时代如何证明个人项目的真实性?
如果你能把项目的前因后果、关键决策路线、为什么这个地方要这么写、为什么那个地方要这么设置,项目的技术选择和你要解决的难题之间的关系还有一些项目里面的因果关系说的清楚,说实话,如果是我,哪怕你整个项目是 AI 写的并且到处都是 emoji 我觉得都无所谓。

不然的话,另外一个鉴定项目是否人写的,我会从这么几个角度看:

- git commit 的粒度、git workflow 的控制,是否能看出清晰的思路,还是每次 commit 都是一大坨
- 代码里面的评论、注释是否废话文学,还是记载了一些高密度的信息
- 代码风格,比如变量名是否莫名其妙,是否有莫名其妙没法解释的结构或者模式
- 变更的原子性,比如说是否一次变更只做一件事,还是塞了一大堆乱七八糟的——说起来我跟 AI 聊的时候我会反复跟他强调这件事,并且在他输出一堆无关内容的时候直接反问、质疑

不然的话可能就上动力学分析了。我的印象中,人类写的代码,因为对约束失效、边界条件等真实难点的主动思考,很容易会有复杂度集中存在,产生强耦合/有 causality 和对代码抽象结构的引导和暗示,这些往往会限制或决定未来的项目演化。反过来看,AI 写的代码,至少我觉得经常很...「平」。

如果这段描述有点抽象,那么人类的代码更像在地球上的某个真实地形约束下城市和群落、交通的自然演化和人为规划的结果。而 AI 代码给我的感觉更像 Minecraft 那个 Perlin noise 生成器。

或者,换句话说,看人类的代码,我会好奇:技术债从哪里产生」,看 AI 代码,绝大部分情况下,他甚至连技术债都无从谈起。
1 月 23 日
回复了 weiwenhao 创建的主题 程序员 Nature 编程语言集成 WebView
协程这么用感觉也太奇怪了(
2025 年 12 月 25 日
回复了 youngxxx 创建的主题 程序员 “快手直播事件”引发的技术思考
只能说康威法则永不过时,3#和 4#很好的说明了这一点
AI ?怪不得那么喜欢 OOP 。

有没有一种可能,你说的「 class 继承」这种「高级」功能恰恰就是 OOP 为什么坏的原因。

那个 inc 确实丑,但我不认为这个模式有什么问题,这就是最平凡的 lambda 。「 JS 十几年打磨的 this 和 class 」,我愿意称这是今天看到的最好笑的笑话。

至于「 class 作为 model 载体」,这句话对我来说就是一个危险信号:不再在乎「 model 如何参与渲染循环,而开始把它像业务、intelligence 一样当一个大垃圾堆,像后端人那样把一切看不懂的或者不想理解的东西塞进去」,而这就是 what class supposed to do 。

反过来看这个「没有 this 的坏代码」:

命名明确:count 、inc 一目了然
显示调用:我调用 set/get 的时候我会被迫知道我在干嘛

以及 OOP 不是只有 Jaba ,actor model 也是 OOP 。
2025 年 12 月 23 日
回复了 8675bc86 创建的主题 程序员 AI 是不是基本杀死了 blog
如果你的 blog 因为 ai 就被干掉了,也许这个 blog 本身就没太多值得讨论的。
2025 年 12 月 23 日
回复了 WngShhng 创建的主题 Java 讨论个问题:该不该重写 equal 和 hashcode
抛开业务、框架、Java 这些问题,equals 和 hashcode 的意义是什么?

我的理解是这是为了构建 equivalence 关系吧。

那么问题是,知道不知道 hashcode 重写,对于 equivalence 的构建和对比,会有影响吗?

HashMap 也好,上游 caller site ,他们做对比的时候会关心 hashcode 是如何使用的,还是说这只是一个契约?

我从这个角度讲会觉得 equals+hashcode 必定是要一起出现的。
1  2  3  4  5  6  7  8  9  10 ... 44  
About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2971 Online   Highest 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 40ms · UTC 14:45 · PVG 22:45 · LAX 07:45 · JFK 10:45
♥ Do have faith in what you're doing.