還記得上程式語言課程時花了很多時間於程式除錯,一個簡單不過的程式就要除錯好幾回,有些同學甚至於用完了全部的測試額度還做不出個結果來;不就是個語言嘛,為什麼電腦語言就這麼難搞呢?這和人類的語言又有何不同?
話說程式語言的除錯,不外乎文法、邏輯、需求錯誤這幾種。文法錯誤應是對該語言的文法不熟悉的緣故吧,多寫幾回就該滾瓜爛熟啦。其實不然,就算是程式高手,新寫的程式從來沒有一次就過關的;邏輯錯誤應是對該事物的法則不熟悉的緣故吧,多寫幾回就該滾瓜爛熟啦。其實不然,就算是該作業的老鳥,新寫的作業也是從來沒有一次就過關的;需求錯誤應是對該業務的作業需求不熟悉的緣故吧,多寫幾回就該滾瓜爛熟啦。其實不然,就算是該業務的權威,新寫的系統也是從來沒有一次就過關的!
資訊系統畢竟是人造的東西,充斥著機械化的僵硬,也就是說一不二的性格。雖然資訊系統係用來解決人類社會的作業需求,但是只要有丁點衝突,他便迷惑了、罷工了,所以必須不斷的除錯;雖然很多人試著去改變資訊系統這種僵硬的性格,也就是模仿人類社會容錯的特質,但是發現想要發展擬人化的智慧非常的不容易,不是一蹴可及的。
人類的語言可以省略(無論主詞、動詞、受詞皆可能省略)、可以借用(一般用詞覺得不夠好時借用其他更合適的用詞),還可以使用典故,所以變化十分豐富,適用於任何情境。更重要的,這種容錯的態度還鼓勵大家創造新詞,也就是說人類的語言是活的,會與時俱長的,所以資訊系統的語言永遠追不上人類的語言。
沒有留言:
張貼留言