為什么目前中國開發不出流行的操作系統和編程語言呢
因為中國沒有人才.35歲就要被離開公司,哪里來的經驗!高級人才都是經過很多年的實踐,35歲可能只是摸了個門就要走了,如何有發明.
為什么中國出了這么多厲害的互聯網公司,但沒有自己設計過編程語言
本人在互聯網從事研發,個人體會沒人做一門新語言是因為沒必要。開發編程語言雖然有難度,但沒有那么難,就好像上班要10公里,可以坐地鐵為啥非要步行?別談理想,傷錢。
另外國人不是沒有參與編程語言開發的,當語言有bug或特性不滿足需求的時候,會給維護語言的開源社區提PR,好多語言可以看到中國程序員和公司的貢獻。
不要所有的問題都站在民粹的角度看,外國有了,我們必須有,全球化的視角下外國有不一定是一個國家做,很可能是各國都有參與,編程語言,開源數據庫,linux內核等由社區維護就是全人類的智慧貢獻的產物。不要糾結所有東西都要國人自主研發的,這樣不是愛國,是浪費。
設計編程語言需要用什么(無需提供步驟)
要自己設計一個編程語言,下面幾點必須要考慮。
確定目標受眾首先要明確你所設計語言的目標受眾是什么。比如是如C/C++、Java、Python等這種通用的語言,還是如AWK、Make、CMake等領域特定語言(DSL)。
如果是通用語言,那么是C/C++這種系統型語言,還是Java、python等這種應用型的語言。
確定要支持的語言特性根據目標受眾,確定你的編程所要支持的語言特性。比如是否支持面向對象編程,是否支持函數式編程,是否支持并行處理、是否支持泛型編程等。
此外,還要確定是強類型語言還是弱類型語言?是靜態類型語言還是動態類型語言等。
制定語言的文法規范和語義規范根據語言要支持的特性,制定語言的文法規范。比如變量如何聲明、函數如何定義、支持哪些控制語句,各種表達式的運算規則等。
確定語言的實現方式同一種語言可以有不同的實現方式。比如是如絕大多數C/C++的實現一樣,直接編譯成二進制機器碼?還是像Java這樣,編譯編譯成字節碼,然后用虛擬機來運行?還是直接解釋執行等等。
可利用的工具對于編譯器前端來說,可以選擇手工編寫,也可以選擇使用工具。
手工編寫的話,比較簡單實用的方法是遞歸下降和算符優先等算法。
選擇工具的話,也有很多工具可用,比如Lex+YACC、Flex+Bison等
如果主要的目的是學習的話,建議還是手寫比較好。
對于后端來說,代碼優化是非常重要的一部分。毫不夸張的說,代碼優化是一個現代編譯器能否成功的決定性因素,也是整個編譯器設計中難度最大,最為復雜的部分,也是最容易出BUG的部分。
一般,還是建議選擇使用一些成熟的工具。比如LLVM,應該作為首選。大名鼎鼎的Clang的后端就是LLVM。LLVM現在已經相當成熟,近幾年很多新的編譯器都是采用LLVM作為后端。
覺得有用的話,點個贊唄!
對編譯器、OS內核、性能調優、虛擬化等技術感興趣的童鞋,歡迎關注!
寫畢業設計需要什么編程語言
如果想做軟件,數據分析方向的課題,或者寫個小網站,腳本什么的,就用python,python適合做數據,邏輯為主的工作,用起來比較簡單。
如果想寫ui或者小游戲這種的,用c++。
如果想做硬件方向,就肯定要用c了(當然也有用vhdl這種的)。
如果要從簡單而言,個人認為C++比較簡單,他是圖形化界面的,這個比較易懂。
計算機程序設計語言和計算機編程語言有沒有區別
其實沒有本質上的區別,這些名稱都是當時對某個專業而細分命名的。
其實程序設計語言,大部分指的的程序框架的設計,包括UML等。
編程語言單純指編程語言,如java、Python、php等。
機械設計專業的學什么編程語言比較合適
現在C語言就能應用到PLC上了,PLC是工業上用的自動化控制系統。PLC是指揮加工機械工作和協調與主控制器之間的聯系和通信的。