推 Ommm5566: 你問的問題都是沒意義的 因為所有語言都是turing等價 01/02 10:41
→ Ommm5566: 因為現在語言最後都是變成Von Neumann架構 所以核心就 01/02 10:43
→ Ommm5566: 只有每次至多一筆資料去執行指令 01/02 10:43
→ Ommm5566: 你如果要說subset那就是原本的分類像是funtional prog. 01/02 10:44
→ Ommm5566: object-oriented 之類的Programming paradigms 01/02 10:45
推 Ommm5566: 所以根本就不存在A語言能解的問題但B語言不能解 01/02 10:49
→ fayhong: 你要這麼說真的是沒錯,這樣 Assembly與C便統一天下了 01/02 10:50
→ fayhong: 程式語言最終也是轉成 machine code 執行,但它提供的抽 01/02 10:51
→ fayhong: 象機制,目的我認為是要提高語言的可讀性 01/02 10:51
→ fayhong: 因為可讀,所以可以傳達,因為可以傳達,所以可以合作 01/02 10:52
→ fayhong: 的確不存在A語言能解,而B語言不能的問題,除非B語言的 01/02 10:53
→ fayhong: 設計有本質上的問題 01/02 10:53
推 lachtchlee: 板大獨漏Self 01/02 12:24
推 NoNameL: 的確不存在A語言能解,而B語言不能的問題 <= 我想到一種 01/02 12:26
→ NoNameL: 狀況,那這樣是不是在努力之後,可以用javascript或是lua 01/02 12:27
→ NoNameL: 之類的東西去寫BIOS以及韌體之類的? 01/02 12:27
→ pttworld: 臉書有社群號稱js在寫作業系統 01/02 13:00
→ dnabossking: 抽像是抽像,可讀是可讀 01/02 13:02
→ bcew: 只要實現組語產生器,還有各專案的變數記憶體配置表 01/02 13:07
→ bcew: 高階語言就能碰底層,但如果不是研究或好玩就沒必要 01/02 13:09
推 Argos: 不能因為最後都轉成機器碼就都說這都一樣阿?不然人跟狗都 01/02 13:19
→ Argos: 原子組成反正都一樣 這樣邏輯對嗎? 01/02 13:19
→ Argos: 為何要有高階語言就是因為用低階語言寫某些東西會搞死人阿 01/02 13:20
→ Argos: 不然程式語言都可以扔了大家回去組語 不然寫機器碼好了 XD 01/02 13:20
→ Argos: 一堆程式語言和平台架構的最終目的是在做什麼?先搞清楚來 01/02 13:24
→ Argos: 因為人類對於過度複雜的東西無法全面掌控 所以才使用切割並 01/02 13:25
→ Argos: 且模組化的策略 高階語言也是模組化低階部份功能來的 真正 01/02 13:26
→ Argos: 為的是簡化重複出現的問題 以面對更複雜的真實世界需求 01/02 13:26
→ Argos: 整個資訊技術事實上都在努力化繁為簡 努力的切割模組 努力 01/02 13:27
→ Argos: 的讓後人不要再造輪子 難道這些都沒意義? 01/02 13:27
→ fayhong: 樓上所言甚是,程式語言常是為了某些領域的問題所造 01/02 13:44
→ fayhong: 以減化問題的解決過程,並重複那些好的practice與paradigm 01/02 13:44
※ 編輯: fayhong (180.217.137.115), 01/02/2018 13:55:06
推 stosto: 我選給我兩百萬年薪的工作要寫的語言 01/02 14:09
→ freeunixer: 用 C 刻個 web framework,就能丟掉 ror, node 了(~誤 01/02 14:41
→ robber1234: 還好你沒提到Scala 不然先噓再說 01/02 15:02
→ fayhong: 糟,我竟壓根地把它忘了..... 01/02 15:35
→ Argos: 其實除了切割模組外 黑暗面是商業考量 甚至我覺得商業考量 01/02 17:55
→ Argos: 的影響還多過於業界真正想解決問題呢 XDDD 01/02 17:56
推 youngce: R大這麼討厭scala哦 01/02 18:48
推 xxxorc: 我在剛轉行時也覺得scheme很棒,學這個才是cs正統 01/02 20:23
→ xxxorc: 但現在只求做出有那麼一點點價值的產品就好 01/02 20:24
→ xxxorc: 成功或淘汰都是有歷史因素 就跟人類文明一樣 01/02 20:25
→ xxxorc: 而且要比簡單 R5RS 應該沒人比得過吧 01/02 20:26
→ fayhong: 我現在只希望能用一個沒那麼多弱點,但可能特性也不多的 01/02 21:24
→ fayhong: 語言,能夠搭建出具有時間價值的東西,Java 有很多 3rd 01/02 21:24
→ fayhong: party 的東西,ecosystem 極為龐大,雖然用起來很方便, 01/02 21:25
→ fayhong: 但我更希望能夠慢慢地自己能建構更深的東西, 01/02 21:26
→ fayhong: 用更簡潔的方法來做事,Scheme、Haskell、OCaml都是很值 01/02 21:27
→ fayhong: 得一學的語言,不一定能用在真實場景,有時候是因為旁邊 01/02 21:28
→ fayhong: 的人沒辦法接受太跳tone的語法,但真的可以重新建構寫 01/02 21:28
→ fayhong: 程式的觀點 01/02 21:29
推 cybermeow: 推OCaml Haskell 01/02 21:40
→ cybermeow: 不過最近也蠻喜歡Rust的 01/02 21:47
推 genius945: 推這篇,感謝原po的分享 01/03 00:41
推 kaifrankwind: 第6點那句話最後翻得不太對 沒有"好使得" 就只是移 01/03 01:00
→ kaifrankwind: 減少看似需要加入新特性才能彌補短處的缺陷 01/03 01:03
推 changyuheng: 最後一句翻得怪怪的。原意白話是:語言設計的考量點 01/03 02:03
→ changyuheng: 不該是如何在既有特性上追加更多能力,而是要反其道 01/03 02:03
→ changyuheng: 而行——移除那些造成要追加功能才能使語言更加完善 01/03 02:03
→ changyuheng: 的弱點和限制。 01/03 02:03
推 cobrasgo: 跟大家講個翻譯的觀念,不要侷限在原本的句子而是要把 01/03 07:31
→ cobrasgo: 它的意義翻出來。 01/03 07:31
推 cobrasgo: 若設計的語言存在不足與缺陷,我們該做的是移除這些缺 01/03 07:36
→ cobrasgo: 陷而不是新增功能來彌補這些缺陷 01/03 07:36
→ fayhong: 謝謝樓上的修正,我一直不知道怎麼翻比較正確.... 01/03 07:43