V2EX pursuer 的所有回复 第 1 页 / 共 18 页
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX    pursuer    全部回复第 1 页 / 共 18 页
回复总数  360
1  2  3  4  5  6  7  8  9  10 ... 18  
4 天前
回复了 keelii 创建的主题 Node.js Node.JS 作者 Ryan Dahl 的故事
@june4
卡住一段时间这个定义太模糊,甚至有时候设计的时候不能确定函数是否会卡住,比如 node 的 require 是同步的,实际模块加载甚至可能从网络加载这一点来看,应该被设计为一个异步操作。后来 esm 设计的 dynamic import 就成异步的了。
async 明确切出点对并发编程和性能优化确实很友好。实际在 HTTP 服务器中考虑锁的情况相对少,但是我经常忘记写 await ,即使用了 ts 也只能部分避免这类错误。而且作为脚本语言应该追求书写简单,引入无栈协程对新手来说不是很友好。python 的 asyncio 也是有些人不爱用,Go 的无脑 goroutine 反而受欢迎。
5 天前
回复了 keelii 创建的主题 Node.js Node.JS 作者 Ryan Dahl 的故事
@keelii
学到了,不过似乎大部分 NPM 库都不发布.ts 。
5 天前
回复了 keelii 创建的主题 Node.js Node.JS 作者 Ryan Dahl 的故事
@june4
lua 的协程栈十分轻量,免去了 async/await 染色问题,只是性能较无栈的会差一些,我认为作为易用性优先的脚本语言实现有栈会更好一些,同时提供回调/无栈式 API 作为可选优化。考虑到 JS 的发展史,现在无栈设计可能是考虑到要兼容旧的 JS 单线程模型的无奈之举。
无栈更应该是给 C++/Java/C#/Go 这种追求性能上限的语言用(虽然上述其中两个语言反而整了个有栈的实现)。

另外 lua 可以自定义协程调度器,也带来很多便利,例如现在依然在 JS 提案阶段的[async-context]( https://github.com/tc39/proposal-async-context)在 lua 中就可以轻易实现。Node 现在似乎是通过提供一个内置的模块 async_hooks 来实现类似的功能。


@otakustay js 很容易出现不兼容更新,node_modules 算是当时那个时间的好选择。但让包管理来处理复杂的依赖问题我觉得还是有局限性的,有的库不支持在同一个运行时环境下共存时,包管理也没辙。现在 typescript 库大量出现,在类型提示的帮助下兼容问题得到了改善,但现在 node_modules 的机制下 IDE 跳转只能跳到声明,看不到实现,对比其他包管理就成了劣势。(顺便提一个我一直在做的一个高度可扩展的多端统一的模块加载机制和包管理框架 t/1104713 就是为了解决相关问题。)
5 天前
回复了 keelii 创建的主题 Node.js Node.JS 作者 Ryan Dahl 的故事
要说的话,脚本语言里 Lua 支持有栈协程和自定义协程调度器,用作 IO 开发要更加合适。
但 JS 就是靠着浏览器,通过用户积累生态,并收获更多用户的循环开始延伸到了各个领域(有意思的是 frida 这种不太相关的领域也用的 JS)。quickjs 的出现也让更多嵌入型框架开始考虑使用 js 作为支持脚本,即使其性能比不上 Lua 。
遗憾的是 NPM/node_modules 和 GYP 真的是十分拖后腿的设计。
@nashaofu 有点意外,倒是听说 tauri 在 linux 的 webview 很容易出问题
tauri 用起来怎么样
@bf109_ Firefox 内核一直是 Gecko 吧,还有新老内核的说法吗,要说最新内核大概说的 Servo?那个兼容性更不好说吧。
我觉得这不能完全算是 C/C++的锅,Windows 的 COM 组件也是 C++的,但 Windows 的兼容是公认做的比较好的。再看 Linux 阵营,虽然很多库是用 C 写的,但升起来也费劲,glibc 更是重量级。
@wudanyang 协程的作用就是协作执行,执行时间长(我假设说的 CPU 密集)还需要自动让出,那就是多线程的场景。实际多线程要考虑锁和线程安全,写线程安全代码未必比手动 await 简单。python 的线程是抢占式调度,但这个和协程无关,无论多少协程也都是跑在这个可以抢占调度的线程上的。
第一条 python 的 await 如果写漏了,协程是不会运行的,第二条没改造的第三方库可以丢给其他线程跑,第三条和数据量大用不用协程都存在的一样的问题
通关+1 ,似乎是 500 分通关,第一个角色比其他角色多 50HP 是什么原因不清楚,游戏技巧就是优先升 1 级子弹伤害,后面优先子弹频率或者伤害,毕竟最重要的是清理近身或路径上的怪,其他的 AOE 可以随意点点,子弹体积我不知道有什么用没点过,HP 恢复数值太低可以无视。游戏的碰撞比预想的大需要注意下
142 天前
回复了 weiwenhao 创建的主题 程序员 /span> 我写了一个编程语言,受 golang 启发
@weiwenhao #33 大语言模型已经在力大飞砖了,编程语言生态还在分裂。我觉得一门编程语言生态非常重要。很多人说编程语言只是工具,但是我真不想用不同的工具造相同/相似的轮子了。
我很好奇被 Go 语法简单的吸引的用户,其他语言的高级特性不用也没什么影响。而 Go 这样衍生语言很多什么 go+,walang 还有这个 nature ,最终也是将其他特性丰富的语言的碎片组合,除了使生态分裂,感觉也没什么好处。
现在大模型靠算力力大砖飞,让我觉得现在才出现的新语言前景更微妙了。
我今天碰到了,开 Persistent Log 好像好了,但不知道是不是只是碰巧好了
@alect 不卡和底层漏洞没什么关系,是那些卡的 APP 塞了太多垃圾代码了,当然也有一些踩坑的经验。
@Radeon ESM 不能满足我的需要,我的目标是前后端使用同一套模块加载机制且足够灵活(比如支持通过 indexeddb 加载模块,在加载前预编译代码等),所以 ESM 的灵活性对我来说是不够的,而且 service worker 内不支持 dynamic import ,所以才做了 pxseed ,AMD 只需要 require,define,requirejs 3 个变量也还好
怕污染可以 rollup 打包 AMD ,虽然我觉得污染影响不大?
顺便打广告,一个利用 AMD 实现前后端共用代码的框架 地址 https://github.com/partic2/pxseed-CorePackages
txiki.js 应该可以更小一点,我也想在 txiki.js 上实现 node 兼容的,但不太顺利,网上找到的 polyfill 大部分都是针对浏览器环境,对 node 服务器侧的支持很弱
1  2  3  4  5  6  7  8  9  10 ... 18  
    帮助文档     自助推广系统     博客     API     FAQ     Solana     864 人在线   最高记录 6679       Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 31ms UTC 21:35 PVG 05:35 LAX 14:35 JFK 17:35
Do have faith in what you're doing.
ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86