作者jans0204 (jans0204)
看板PLT
标题[实作] J003:Lisp500 - real name is Lisp1k5
时间Sun Aug 21 23:14:17 2022
J003:Lisp500 - real name is Lisp1k5
http://modeemi.cs.tut.fi/~chery/lisp500/
原始档的网址已经失效,只好从时间机器找。
https://web.archive.org/web/20040305005602/http://modeemi.cs.tut.fi/~chery/lisp500/
安装使用说明请参考网页,在此不赘述。
由於这是参加隐码竞赛,所以此档伤眼不能明察,不似 otcc 附有明码,可以研究程式码
。
https://bellard.org/otcc/
如果只是要用以写写程式,就下载 lisp500.c 与 init500.lsp 两档,然後编译执行即可
。
https://web.archive.org/web/20040305005602/http://modeemi.cs.tut.fi/~chery/lisp500/lisp500.c
https://web.archive.org/web/20040305104156/http://modeemi.cs.tut.fi/~chery/lisp500/init500.lisp
Chrome 右键选单,另存新档,即可下载。(记得要去掉 .txt)
若想要研究一下,看看结构流程,就要恢复成正常的程式风貌,也就是美化 beautifier
。
# Best C Formatter and Beautifier
https://codebeautify.org/c-formatter-beautifier
lisp500.c -> lisp500-p.c
# use GNU indent -kr option
indent.exe -kr lisp500.c -o lisp500-kr.c
下载 GNUWin32 - Indent
https://sourceforge.net/projects/gnuwin32/files/indent/2.2.10/indent-2.2.10-setup.exe
即便美化了,但是隐码用了大量的结构巨集,美化了不完美,所以仍需人工编修校对。
计算一下最後行数:1775 去掉空白行跟括号行,粗估 1500 以上,所以正名为:Lisp1k5
https://github.com/jans0204/J003-Lisp500---real-name-is-Lisp1k5
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 124.218.31.163 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/PLT/M.1661094870.A.44C.html