如何嵌入编译器和解释器到一个网站像codecademy

how to embed compiler and interpreters to a website like codecademy?

本文关键字:一个 网站 codecademy 编译器 何嵌入 解释器      更新时间:2023-09-26

我得到了一个项目,设计一个网站,其中有一个javascript &HTML解释器,数据库,c++编译器。我搜索了相关的网站,最后用codecademy结束了搜索. 现在我想建立一个类似codecademy的网站,拥有我自己的特点和功能。虽然我知道如何创建一个动态的网站,但我不知道如何嵌入解释器,编译器和所有。请大家帮助我建立这个项目,并成功运行

简单来说,有两种方法可以在网站上实现实时解释器/编译器:

  1. 为你的语言找到(或编写)一个用Javascript编写的编译器/解释器

  2. 创建一个(本地)CGI应用程序并在您的服务器上运行它,该应用程序将通过(本地)解释器/编译器(也在您的服务器上)运行给定的代码片段并返回运行结果。然后写一个网页,调用CGI做的工作,通常使用ajax Javascript的东西,如xmlHttpRequest,或至少一个web表单。

这就是所有这些网站本质上归结为什么。有些只是有一个解释器或CGI,可以记住调用之间的状态,然后可以显示中间步骤。这可能是因为你基于javascript的解释器支持暂停,或者你的CGI可以让程序在lldb中运行,然后你的页面向lldb发送某些命令并返回信息。

注:如果你的问题更多的是关于如何在JavaScript中实际编写解释器,我在这里详细介绍了解释器部分的基础知识:http://orangejuiceliberationfront.com/how-to-write-a-compiler/它适用于C程序员,但基础知识适用于任何编程语言。你可以用数组代替内存块,用数组索引代替内存地址。

简单的web应用程序将我们的代码作为输入,并以各自的编程语言扩展名(如。java,。c等)存储在文件中,然后他们使用服务器端安装编译器运行代码,并通过网页将输出转发给客户端。

假设在java中,有Runtime和Process类,在这个类的帮助下,我们在服务器端获得控制,安装java, javac等软件,我们运行程序并将输出传递给用户。

这很简单,如果有人想要代码,请告诉我…