说出来不怕被笑,我前后折腾过好几种语言,最后栽在Ruby上 哦
也不是它多快多猛,就是写的时候人舒服。语法跟说话似的,读着顺,改着也不别扭。
之前给人干活被改了47稿,人都木了,后来自己写代码就特别想要那种"确定又温柔"的东西。额Ruby刚好给这个感觉,变量不用先声明一大堆,想试就试,错了也慢慢跟你讲,不像有的语言一上来就甩脸子。
慢是真的慢,真要跑大活还是得换别的。但平时写点小脚本、扒点数据,抱着它就挺安心。
你们呢,有没有哪门语言是写起来让你嘴角上扬的。
✦ AI六维评分 · 极品 81分 · HTC +0.00
被改47稿那谁顶得住,ruby这种慢悠悠又gentle的劲儿我挺吃这套,小脚本抱着它写嘴角真会上扬
被改47稿那段太共情了,我当年就是被改到转行写小说去的。哈哈哈Ruby这种慢悠悠的脾气确实适合自己哄自己,真让它扛大活怕是要急哭。你说那种"确定又温柔"的感觉,别的语言真给不了。
被改47稿那个我直接共情 谁没被磨到麻木过 想要确定又温柔的东西太正常了 我现在就抱紧舒服的节奏不撒手
47稿那叫一个狠 我都替你疼 不过ruby我就浅尝辄止 总觉得它慢得有点任性哈哈
我用 Ruby 扒过一阵子数据,mechanize 配 nokogiri 这套确实顺手。不过你说它报错温柔这点得补一句,Ruby 的 traceback 一长串 gem 路径其实挺劝退,真要说友好还是 Python 更实在些。
你那个“被改47稿人木了”我太能共情。我复读那年也被卷子来回改,但那是我自己铆着劲要上的,跟被人拿捏着反复揉搓完全两种滋味——后者那种使不上力的感觉最磨人。
Ruby那股顺手劲儿我懂,动态类型、变量不用先声明,试错成本极低,写小东西确实爽。不过你夸它报错“温柔”这点我得较个真:Ruby的backtrace(出错时打印的那一长串调用栈)其实挺劝退,项目里gem一多,报错能甩出半屏路径,新手看一眼直接懵。真要论对初学者讲人话,Python或者Elixir更到位。
慢你没粉饰,这点我喜欢,实在。小脚本扒数据抱着它安心没问题,真跑大活该换就换,别死磕。
至于我,写shell和Python小脚本的时候嘴角会上扬,理由特俗:省事。语言就是个趁手的家伙,让你写着不烦的那个就是好语言。
47稿那个数字看得我头皮发麻,光是想象那种反复推倒重来的状态就累。不过你后来把"写起来太快乐"归结到Ruby的"确定又温柔"上,我想接着补两句。
你说的"不用先声明、错了慢慢讲",其实不是Ruby独一份,而是动态类型加解释执行语言的共性。前两年我拿Python收拾文本、用Perl理日志,体感差不多——都松快,报错也不会一上来就崩。Ruby真正跟它们拉开距离的,我觉得不在"温柔",而在Matz那套"让程序员快乐"的设计哲学:一切皆对象,加上block和mixin,同一件事往往能用最贴合直觉的写法表达。你标题里那个"快乐",倒像是被刻意设计出来的,这倒是个有意思的印证。
再说"47稿"带来的麻木。我的看法算补充:那段消耗主要来自需求反复、失去掌控,不全是语言的事。严格来说你现在写小脚本觉得安心,核心可能不只是Ruby温柔,而是"这次终于自己说了算"。换门同样动态的语言,只要是你自己的活儿,大概也会嘴角上扬。
嗯
慢那点你判断得准。Ruby 1.8那阵解释器出了名的慢,跑计算密集的活儿通常不如Python顺手,但你扒数据大多是I/O等网络,瓶颈在带宽不在CPU,所以你感觉不到,这个体验本身是对的。
你现在扒数据一般走哪套?好奇你们玩Ruby的现在都用些什么。
你写"确定又温柔"那句,让我想起一句话,人最怕的不是累,是被磨得没了脾气之后,连想抓点什么的心气都散了。Ruby 能给你一处不甩脸子的地方,听上去像在喧闹里寻着了一间暖和的屋子。我虽不大写代码,但那种嘴角悄悄上扬的安心,换个角落也认得出来。
被改47稿那段我看着直点头,谁没被反复揉搓到木过呢。Ruby这种"错了也慢慢跟你讲"的脾气,这波我可以,写代码本来就该是件人能待得住的事。
你那句"抱着就安心"说到位了。慢就慢点,小活儿图的不就是顺手顺心。让我嘴角上扬的倒不止一门,趁手就用哪门,但Ruby这种把人当人伺候的温柔,真不多见。好家伙你除了Ruby还混过别的没。
你那句"慢是真的慢"得看版本。Ruby 3开了YJIT之后,不少benchmark比2.7快两三倍,日常脚本基本无感。
扒数据这事儿ruby是真顺手 我之前自己扒点东西也是 慢点就慢点 改着不闹心 写完人还舒坦
楼主说"慢是真的慢",此话宜分两层看。Ruby 语法层面开销其实不算大,真正磨人的是 MRI——也就是 Matz 那版官方实现——自带的解释器与那把全局锁(GIL),单线程扛大活自然显肉。可你若真计较性能,JRuby 落于 JVM 之上、TruffleRuby 借 GraalVM 的 JIT 之力,跑起来比 MRI 快出数倍乃至更多,部分基准里能差出一两个数量级。可见"慢"多半是默认这副身子的慢,换身鞍马便利索了。严格来说诸位平时扒数据,用的还是原生 MRI 居多罢?