zoukankan      html  css  js  c++  java
  • educoder SML程序设计题线下编译环境搭建

    背景

    最近《串并行数据结构与算法设计》的老师在educoder上布置了一些SML程序设计题,虽然网站上有在线编译功能,但还是在线下编译调试方便,特记录编译环境过程如下(我用的GVIM,但Notepad++、Visual Studio Code等编辑器可以类推)

    第一步:安装编译器

    下载Standard ML of New Jersey(https://www.smlnj.org/),下载完直接一路安装就行,环境变量已经自动配好了。

    第二步:配置GVIM

    打开GVIM目录下的配置文件_vimrc,加入

    func Run()
        exec 'w'
        if &filetype == 'sml'
            exec '!sml < %'
        endif
    endfunc
    map <C-F5> :call Run() <CR>

    这段话的意思是按下Ctrl + F5之后GVIM保存当前文件,之后如果当前文件类型是SML则执行命令“sml < 当前sml文件”,把当前sml文件的内容重定向到sml交互命令行程序中执行。

    第三步:写程序前的操作

    首先复制网站题目编辑器给的输入输出模板到GVIM中,因为sml交互命令行程序的标准输入已经被我们的sml文件占了,所以标准读入函数不能用,所以我们需要在程序的首行添加

    val input = TextIO.openIn("input.txt");

    接着把程序中所有的TextIO.stdIn替换成input,之后在程序的相同目录建立一个input.txt存储样例输入,然后就可以在模板里的begin和end里面写你自己的内容了。交代码时只要把程序里begin和end里面你写的内容贴到网站题目编辑器里面的begin和end之间就行了。

    试一下CSDN多久会复制我这篇文章。

  • 相关阅读:
    转自一位前辈的杂谈
    在vim编辑器中实现python的tab补全
    Go语言 异常panic和恢复recover用法
    go语言的cron包的简单使用
    go语言的指针
    Python 报 OpenSSL.SSL.SysCallError: (10054, 'WSAECONNRESET')
    python 之图像处理
    git 线上连接及版本控制
    vue依赖pycharm启动
    模拟django 后台管理
  • 原文地址:https://www.cnblogs.com/YuanZiming/p/11568989.html
Copyright © 2011-2022 走看看