其實這是一個滿有深度的問題喔 所以藉文跟大家分享一下.
在程式語言發展的歷史, 有一個相當明確的目標, 不是要寫出執行速度
最快的程式語言,而是要寫出跟「人類口語」最接近的程式語言.
這個目標看似簡單, 但非常困難. 因為人類使用的語言有太多潛規則和
模糊空間:Ex. 你給我試試看. 大家都知道真正的意思是不要試, 但是
電腦只接受嚴謹的語言描述. 給他模糊的語言, 他就無法判斷是A還B了.
這個方向的努力在Wall發展出Perl語言時, 可謂達到極致. Larry Wall
是一位語言學家,所以Perl幽美而口語,甚至有人拿Perl來寫詩呢.
在數學方面, 不少人應該知道Mathematica的程式語法已經幾乎跟打數學
方程式一樣了. 讓電腦可以判斷人類輸入的語言甚可視是人工智慧的前身.
畢竟, 要叫電腦幫你下棋, 要先教他聽懂你的指令吧.
有了這些認識, 分號的使用就是再自然也不過的事了吧: 當你寫完一子句,
通常就用分號區隔. 承襲此一習慣的程式語言, 像是R或Perl, 基本上就看
得出來有往程式語言口語化的目標努力過的痕跡阿~
※ 引述《jimmy689 (吉米蛆蛆)》之銘言:
: ㄤㄤ
: 肥宅我正在學程式齁
: 覺得很奇怪R
: 為什麼都要用;當結尾呢
: 很不人性R
: 有時我的函式充滿驚奇
: 我想用驚嘆號也不行
: foo()!
: 也不能用問號來表示疑問
: foo()?
: 都只能用;實在很鳥R
: 不能表達準確的語氣,無法表現出文字該有的情感熱度
: 設計的人都沒考慮到嗎,有沒有八卦R?