我在網站topcoder.com中可以在瀏覽器中創建和編譯代碼。是否可以在瀏覽器中嵌入編譯器
是否有可能在我的瀏覽器中編寫類似的代碼,我可以在文本編輯器中編寫代碼,然後在那裏編譯按鈕。
或者可能是請求被髮送到服務器gcc上的編譯器,然後從那裏得到結果。
如何能夠做到這樣的事情
我在網站topcoder.com中可以在瀏覽器中創建和編譯代碼。是否可以在瀏覽器中嵌入編譯器
是否有可能在我的瀏覽器中編寫類似的代碼,我可以在文本編輯器中編寫代碼,然後在那裏編譯按鈕。
或者可能是請求被髮送到服務器gcc上的編譯器,然後從那裏得到結果。
如何能夠做到這樣的事情
網站類似TopCoder公司有一個後端服務器上的編譯器。粘貼到網站的代碼被髮送到後端服務器,在那裏它被編譯並運行,結果返回給用戶的瀏覽器。
是否準備好使用庫發送代碼到服務器在python – user2134226
「準備使用庫」是你的問題最少。如果你需要他們,你可能會超出你的聯盟。 – MSalters
你的後者(發送到服務器)正是像codepad.org這樣的網站。當然,安全問題是公開允許人們執行編譯器並在服務器上運行程序。
瀏覽器唯一的選擇可能包括:
考慮到你有一個Java-to-JS編譯器和一個用Java編寫的Java編譯器,似乎很有可能在Javascript中生成一個Java編譯器。 – MSalters
您可以在虛擬機或沙箱中運行編譯器。這種情況下,它不會在服務器中產生任何副作用 –
是的。您可以通過將代碼上傳到服務器,編譯它並將結果/控制檯輸出發送回瀏覽器屏幕,將代碼發送到您的編譯器。
有關您的信息,PHP可以執行shell命令(可以「命令」編譯器編譯代碼)。
整個Linux仿真器都是用JavaScript編寫的,它可以在瀏覽器中在客戶端編譯和運行C程序:http://bellard.org/jslinux/ –
另外,可以編譯一個C編譯器的源代碼使用Emscripten JavaScript:https://github.com/kripken/emscripten –