又一新穎的程式語言誕生了。日前,谷歌在其開源部落格介紹了一個新的開源邏輯程式語言:Logica。而這個Logica則是個合成詞,是Logic和aggregation合二為一得來的,即邏輯+聚合。所以顧名思義,Logica進一步擴充套件了經典邏輯程式設計語法,尤其在聚合(指對有關資料進行內容挑選、分析、歸類,最後分析得到想要的結果,主要指任何能夠從陣列產生標量值的資料轉換過程)方面外重視。機智客自言自語:看來,我們技術人這一輩子有學不完的語言了。哈。
上面的定義看起來有點太理論太抽象。其實,它只是一個類似於Prolog語言的邏輯程式語言。而Prolog的邏輯程式設計定義,不是針對普通程式設計開發解決數值問題,而是用符號處理能力,專門解決邏輯問題。而這樣解決邏輯問題的程式語言,才更利於在人工智慧、資料分析等領域施展,更有AI味兒。
因此,谷歌的這款新推出的Logica就是典型的邏輯程式語言,屬於Datalog家族的一種語言,但它卻是Yedalog(Yedalog是Google早期開發的語言)的繼承者。它採用的是由數學家專門設計的數學命題邏輯,能將邏輯程式編譯為
SQL 表示式,並且由於邏輯程式設計語法的便利效能在 Google BigQuery 上執行(實驗性地支援 PostgreSQL 和
SQLite)。沒錯,它的功能就是典型地面對SQL功能上的缺陷而來:程式碼量煩冗,對抽象的支援非常有限。
Logica程式語言支援SQL所缺乏的乾淨和可重用的抽象機制,支援模組和匯入,可以在互動式的
Python 筆記本上使用。對於SQL的問題,Google認為Logica可以解決。所以,機智客看Google的推薦時表示的,(當)您使用
SQL,但對它的可讀性不滿意。您想學習邏輯程式設計並將其應用於大資料處理。都可以嘗試Logica語言。
目前,這個新程式語言已經在Apache
2。0許可下開源,而且還是跨平臺的,支援Linux、Windows
等作業系統。而在Linux作業系統裡,我們可以用pip安裝這個程式語言。Google官方在博文中熱情洋溢地介紹Logica語言,並不吝讚美地誇口:你一定會喜歡的。有興趣的朋友可以關注下。