2011-07-19 64 views
1

我在网站topcoder.com中可以在浏览器中创建和编译代码。是否可以在浏览器中嵌入编译器

是否有可能在我的浏览器中编写类似的代码,我可以在文本编辑器中编写代码,然后在那里编译按钮。

或者可能是请求被发送到服务器gcc上的编译器,然后从那里得到结果。

如何能够做到这样的事情

+0

整个Linux仿真器都是用JavaScript编写的,它可以在浏览器中在客户端编译和运行C程序:http://bellard.org/jslinux/ –

+0

另外,可以编译一个C编译器的源代码使用Emscripten JavaScript:https://github.com/kripken/emscripten –

回答

2

网站类似TopCoder公司有一个后端服务器上的编译器。粘贴到网站的代码被发送到后端服务器,在那里它被编译并运行,结果返回给用户的浏览器。

+0

是否准备好使用库发送代码到服务器在python – user2134226

+2

“准备使用库”是你的问题最少。如果你需要他们,你可能会超出你的联盟。 – MSalters

3

你的后者(发送到服务器)正是像codepad.org这样的网站。当然,安全问题是公开允许人们执行编译器并在服务器上运行程序。

浏览器唯一的选择可能包括:

  • 氯化钠(本地客户端)
  • 写在JS编译器(可能的话,不建议依赖于语言的理智)
  • 使用Java Applet和写作编译器
  • 同上,用于闪存
  • 同上为Silverlight
  • ActiveX控件(不推荐)
+0

考虑到你有一个Java-to-JS编译器和一个用Java编写的Java编译器,似乎很有可能在Javascript中生成一个Java编译器。 – MSalters

+0

您可以在虚拟机或沙箱中运行编译器。这种情况下,它不会在服务器中产生任何副作用 –

1

是的。您可以通过将代码上传到服务器,编译它并将结果/控制台输出发送回浏览器屏幕,将代码发送到您的编译器。

有关您的信息,PHP可以执行shell命令(可以“命令”编译器编译代码)。

相关问题