我有一個服務器,生成數值數據6至11維。到目前爲止,我有一個用戶可以在命令中給出的文本框,例如OVERLAYDATA SRC =「some/source/uri」COLS = columen,name,以及這樣的COLOR =(color_min_red ...)(... color_max_blue),並且這將在透明圖貼圖上顯示顏色編碼的數據點。到目前爲止很好,一切都很好。在後端,當然,顏色編碼是通過php生成的,它在網頁源代碼中呼應一條線,這是一個調用外層程序的地方,當瀏覽器看到這條線時,外層的點對象就顯示出來了。用PHP實現/編寫的編譯器? [或javascript:見編輯]
現在我想添加一些進一步的交互性。我想支持用戶定義的數據轉換。爲此,我想象一下,如果有一種語言,它具有編寫(即,不編譯,但編寫了編譯器)PHP編譯器的編譯器。用戶可以使用這個(希望簡單)的語言來定義像他希望改造
function res = some_transformation(data)
{ //do some voodoo here
}
some_transformation(__datasource);
顯然會有一些另外的關鍵詞,如__datasource,這將指向該編譯器本身並不需要一個speciific源瞭解。
,所以我一直在尋找的說,編譯器,發現只有這個至今:
https://github.com/alxlit/coffeescript-php
按我的理解,如果你的程序中的CoffeeScript腳本,和飼料正確的數據時,PHP在背景將接受數據,並執行您在coffeescript中編程的內容,並將結果發回給您。
我希望我設法澄清我在找什麼。
現在的問題:是否有其他如此好的軟件可用?
編輯1:
,因爲它已經指出,這可能會導致安全漏洞,我想知道如果第一隻訪問允許的數據,然後做在客戶端編譯會改變(即JavaScript的?)該情景並使事情變得更弱?
如果是這樣,那麼哪些?我發現用JavaScript編寫的C編譯器,但這有點矯枉過正。
我不知道bison/yacc與php一起工作 - 但是這個:http://sourceforge.net/projects/lime-php/ - 考慮到這一點,是的,我認爲我自己的語言,但不知何故 - 原諒這請 - 我覺得它會太俗氣。話雖如此,goto和if語句就足夠了,還有一個廣泛的數學支持,在提交發送操作之前,我可能會使用http://www.phpmath.com/home或math.js注意事項,但我仍然想看看還有哪些其他選項可用。 – Sean
您可以像使用其他命令一樣在php中使用bison或yacc:您只需將其稱爲cli命令並返回結果即可。這工作正常。 – arkascha