回覆列表
-
1 # 繁星落石
-
2 # liuning1982
有錯誤也是可以執行的,事實上任何軟體都是有錯誤的,也就是bug,不存在完美的軟體。但是,發現了錯誤需要及時修復。
-
3 # 飯特稀406
要看是什麼型別的錯誤,如果是語法錯誤,大多數程式都會拒絕執行,但是有些語言,比如html(不要懷疑,html 確實是一門語言)可以執行。如果是邏輯錯誤,那麼就很難透過語法檢查出來了,大多數語言都難以杜絕這型別錯誤,但是也不是完全不能避免,比如強型別語言可以在一定程度上避免錯誤的發生機率。函式式語言在這方面做的更好些,理論上可以做到沒有bug(沒有bug也不等於沒有錯誤),但是函式式對程式設計者的要求非常高,所以這類程式語言比較小眾,一般僅用在對錯誤低容忍度的系統中。從另一方面來講,語言也在向容易使用發展,比如python這類動態語言,它就非常靈活,但是代價可想而知錯誤率也會提高。
句法錯誤不能執行,因為底層編譯機制無法正確翻譯和連線對應的內容和庫,這和什麼時候的語言沒有關係,是計算機機制決定的。
邏輯錯誤不會阻礙編譯,但是取決於嚴重程度,可能會阻礙執行,嚴重的邏輯錯誤卻是會導致程式陷入崩潰。
假設未來有一種編譯或者執行機制,可以修正開發者的錯誤,開發者可能會拒絕這樣的機制,因為這樣會導致開發結果非常的不穩定和不可預測,對於開發本身來說是個噩夢。