Haskell语言支持
By王安琪
一、所需要提前知道
了解Backbone框架。
二、任务完成情况
1. 阅读了Popush后端代码,理解了工程如何调用外部编译器和解释器进行编译和解释以及运行源码文件的整个过程。
2. 添加对Haskell语言的支持
添加Linux下编译Haskell文件的命令行。
case 'hs': that.class = that.name.substr(0, that.name.lastIndexOf('.')); that.script = [ {cmd:'ghc', args:[that.name]}, {cmd:'./'+that.class,args:[], start:true} ]; break;
添加Windows下编译Haskell文件的命令行。
case 'hs': that.class = that.name.substr(0, that.name.lastIndexOf('.')); that.script = [ {cmd:'ghc', args:[that.name]}, {cmd:'./' + that.class + '.exe', args:[], start:true} ]; break;
在\static\js\models\file.js中添加haskell文件格式。
var ext2icon = { 'c': 'c', 'clj': 'clj', 'coffee': 'coffee', 'cpp': 'cpp', 'cs': 'cs', 'css': 'css', 'go': 'go', 'h': 'h', 'htm': 'htm', 'html': 'html', 'hpp': 'hpp', 'java': 'java', 'js': 'js', 'json': 'json', 'lisp': 'lisp', 'lua': 'lua', 'md': 'md', 'pas': 'pas', 'php': 'php', 'pl': 'pl', 'py': 'py', 'rb': 'rb', 'sql': 'sql', 'tex': 'tex', 'vbs': 'vbs', 'xml': 'xml', 'hs': 'hs', };
新建.hs文件。
文件显示在列表中。
点击运行后能在控制台输出相应的结果。
三、遇到的问题及解决方案
问题:一开始不了解整个工程的架构,面对这么多没有注释的文件,不知道如何下手。
解决方案:阅读static目录下的Readme.txt,了解BackBone框架,对前端有了较清晰的认识后,阅读models目录下的js文件和app.js,逐渐建立起对后端工作过程的认识。
四、个人的收获体会
收获:了解到了前端BackBone框架,以及作为一个在线编程网站是如何调用编译器和解释器来进行源码文件的编译、解释和运行的。
体会:写完代码之后写注释是多么的重要,再次写Readme.txt介绍下文件源码的功能也是可以接受的。当然就行Popush一样代码只通过函数名和变量名就能让人一目了然也是很赞了。