Re: [請益] 大家是怎麼學新語言的?

看板Soft_Job (軟體人)作者時間3年前 (2022/05/28 19:51), 3年前編輯推噓2(5340)
留言48則, 9人參與, 最新討論串2/2 (看更多)
我覺得如果你是想做自我精進,這邊提供一個方向 ## 選跟你不熟的programming paradigm語言 Paradigm的中文叫做範式 可是我看不懂中文... 不知道的可以看以下wiki https://en.wikipedia.org/wiki/Programming_paradigm https://www.freecodecamp.org/news/an-introduction-to-programming-paradigms/ 懶得看文章也沒關係 下面就是懶人包 簡單講 你看看下面這幾種你精通那一項 然後選另一項 Procedural, OOP, Declaratvie, Functional 不同的paradigm各有優缺點,學會之後在架構層級你會知道什麼時候該使用哪種paradigm ## 個人推薦 然後個人私心推薦一個非常酷 應該沒什麼人知道的程式語言 APL & BQN APL是一個用筆就可以寫的程式語言 全名叫做 A Programming Language Try it on online compier: https://tryapl.org/ 他是一種array-oriented programming langauge 嘗試用符號表達各種矩陣操作 符號太多沒辦法在bbs上貼出來,建議點過去看看 想想pyhton要寫十行的東西,APL可能一行就寫完,真的是潮爆... 我是說等你學完五六十個符號之後 BQN則是對APL嘗試做一些改進 畢竟APL也是1962年開發的語言 -- 等等,我是不知道妳是看了什麼神槍手的故事,可是為什麼要拿我當靶 (′Д‵) 什麼!是黃忠和后羿的故事?他們拿的不是銃,是弓! 長門,妳手上拿著蘋果跟繩子是作什麼?今天晚餐不是關東煮是烤乳豬嗎? 連爸爸都沒弄痛過我,可不可以不要綁這麼緊,好歹鬆一點讓我有空間逃吧,古泉。 好,我認了,要射就射吧,可是請聽一下在我死前的最後一個願望。 不 要 拿 霰 彈 來.....噗滋(腦漿聲) 摘自「阿虛的最後一餐」 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.231.132.191 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1653738685.A.4E6.html ※ 編輯: wulouise (61.231.132.191 臺灣), 05/28/2022 19:54:58

05/28 20:19, 3年前 , 1F
推APL跟BQN,不過APL是 1962 年由 ken Iverson 開始設
05/28 20:19, 1F
感謝 更正一下時間 我剛剛看錯XD

05/28 20:19, 3年前 , 2F
計的,他也因此拿了Turing award。另外還有J、Q跟K都是
05/28 20:19, 2F

05/28 20:19, 3年前 , 3F
array programming language。BQN 的線上 REPL https:
05/28 20:19, 3F

05/28 20:19, 3年前 , 4F
//mlochbaum.github.io/BQN/try.html
05/28 20:19, 4F

05/28 20:22, 3年前 , 5F
然後介紹 APL 一定要秀 game of life 啊
05/28 20:22, 5F

05/28 20:22, 3年前 , 6F
※ 編輯: wulouise (61.231.132.191 臺灣), 05/28/2022 22:18:21

05/29 00:55, 3年前 , 7F
最近爬文爬到一個很奇耙的語言 brainfuck
05/29 00:55, 7F

05/29 00:55, 3年前 , 8F
如果太閒想學也可以 但我看完只覺得網路用得太多
05/29 00:55, 8F

05/29 01:09, 3年前 , 9F
brainfuck蠻適合拿來練習寫complier的
05/29 01:09, 9F

05/29 03:28, 3年前 , 10F
fortran 是 functional,SQL 是 declarative?
05/29 03:28, 10F

05/29 03:28, 3年前 , 11F
你真的知道你自己在說什麼嗎???
05/29 03:28, 11F
我是參照wiki https://en.wikipedia.org/wiki/Declarative_programming wiki定義下domain specific的SQL也是被放在declarative下面 https://en.wikipedia.org/wiki/Functional_programming Fortran95也被放在functional programming底下 mordern fortran的確有OOP 但我對fortran不熟 如果你有更有建設性的意見歡迎推文或回文討論 ※ 編輯: wulouise (61.231.132.191 臺灣), 05/29/2022 09:42:44

05/29 11:09, 3年前 , 12F
有程式經驗可以試試rust,生命週期的概念很有趣
05/29 11:09, 12F

05/29 12:56, 3年前 , 13F
原文應該沒寫過functional 就來嘴了。
05/29 12:56, 13F

05/29 12:58, 3年前 , 14F
另外 programming paradigm 現在早就不用語言來分了。許多
05/29 12:58, 14F

05/29 12:58, 3年前 , 15F
語言都有多種paradigm。
05/29 12:58, 15F

05/29 13:00, 3年前 , 16F
物件導向的做法C#, java,也不叫做 procedure,叫做 struc
05/29 13:00, 16F

05/29 13:00, 3年前 , 17F
tured。
05/29 13:00, 17F

05/29 13:01, 3年前 , 18F
用語言來分 programming paradigm,現在2022年都不適用了
05/29 13:01, 18F

05/29 13:01, 3年前 , 19F
05/29 13:01, 19F

05/29 13:59, 3年前 , 20F
各位前輩 像C++ 可以模擬物件導向的語言 該怎麼分類呢?
05/29 13:59, 20F

05/29 23:54, 3年前 , 21F
C++ 算 multi paradigm,但寫 C++ 重點根本也不在 paradi
05/29 23:54, 21F

05/29 23:54, 3年前 , 22F
gm 所以算什麼其實根本沒差
05/29 23:54, 22F

05/30 10:37, 3年前 , 23F
感謝回覆
05/30 10:37, 23F

05/30 10:47, 3年前 , 24F
原po我們不分類的,.我們只有鄙視鏈(沒跟你開玩笑
05/30 10:47, 24F
深有感觸 其實我原本只是想從語言一開始的paradigm來看... ※ 編輯: wulouise (61.231.132.191 臺灣), 05/30/2022 21:48:14

05/30 22:25, 3年前 , 25F
和鄙視鏈有關係?你說 fortran 是 functional,SQL 是 de
05/30 22:25, 25F

05/30 22:25, 3年前 , 26F
clarative 就像有人問你鳥和魚長怎樣你回答蝴蝶是鳥,海
05/30 22:25, 26F

05/30 22:25, 3年前 , 27F
馬是魚一樣
05/30 22:25, 27F

05/30 22:26, 3年前 , 28F
海馬(SQL)的確是魚(declarative),但一般的魚根本不
05/30 22:26, 28F

05/30 22:26, 3年前 , 29F
長那樣,蝴蝶(fortran)也根本不是鳥(functional),你
05/30 22:26, 29F

05/30 22:26, 3年前 , 30F
引用的 wiki 也直接說了它就是 imperative,唯一能和 fun
05/30 22:26, 30F

05/30 22:26, 3年前 , 31F
ctional 沾上邊的也只有它的 pure function,到底從哪裡
05/30 22:26, 31F

05/30 22:26, 3年前 , 32F
看出來的鄙視鏈?
05/30 22:26, 32F

05/30 22:38, 3年前 , 33F
推文完全沒有任何人提到哪個 paradigm 是 superior 哪個
05/30 22:38, 33F

05/30 22:38, 3年前 , 34F
是 inferior,到底哪裡來的鄙視鏈?
05/30 22:38, 34F
所以我分類錯了,已經把例子移除 有空可以幫我舉幾個例子嗎? ※ 編輯: wulouise (61.231.128.229 臺灣), 05/31/2022 13:30:09

05/31 23:44, 3年前 , 35F
感謝C大回應
05/31 23:44, 35F

06/02 23:35, 3年前 , 36F
declarative 最大宗就是 functional,functional 還比較
06/02 23:35, 36F

06/02 23:35, 3年前 , 37F
多人用的最大宗就是 ML 家族
06/02 23:35, 37F

06/02 23:35, 3年前 , 38F
如果要 declarative 和 functional 到極致可以去寫 Agda,
06/02 23:35, 38F

06/02 23:35, 3年前 , 39F
Coq 或 Idris2 之類的
06/02 23:35, 39F

06/02 23:35, 3年前 , 40F
在這些語言裡面任何一個 term 都是 declarative 和 funct
06/02 23:35, 40F

06/02 23:35, 3年前 , 41F
ional 的,包含 types
06/02 23:35, 41F

06/02 23:35, 3年前 , 42F
如果想要試試 declarative 的話,要找有支援 gadt 的 pur
06/02 23:35, 42F

06/02 23:35, 3年前 , 43F
e functional languages,否則 types 不知道是從哪來的 f
06/02 23:35, 43F

06/02 23:35, 3年前 , 44F
unction 也不一定 declarative,如果只是想要試試看 func
06/02 23:35, 44F

06/02 23:35, 3年前 , 45F
tional 的話 JavaScript 支援的東西就夠你玩了
06/02 23:35, 45F

06/02 23:38, 3年前 , 46F
如果不想要 Agda, idris 那麼深,也不想要 JavaScript
06/02 23:38, 46F

06/02 23:38, 3年前 , 47F
那麼隨便,那其實就去玩一般大家推薦的 fp 語就好了啊
06/02 23:38, 47F

06/05 15:38, , 48F
感謝C大補充<O>
06/05 15:38, 48F
文章代碼(AID): #1YaWozJc (Soft_Job)
文章代碼(AID): #1YaWozJc (Soft_Job)