无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

小而美幾個(gè)項(xiàng)目:troff實(shí)現(xiàn),C編譯器……

2022-03-31 14:00 作者:clerk_ma  | 我要投稿

作為一個(gè)挖坑不填,拖更多年甚至快失蹤了的TeX開發(fā)者,我也并不是只看TeX相關(guān)的項(xiàng)目。

我也研究過troff,這個(gè)項(xiàng)目是很有意思的。這軟件出現(xiàn)在1971年。Knuth在思考自己要用的排版軟件的時(shí)候,是思考過troff的。

從1971年開始,有相當(dāng)數(shù)量的技術(shù)書其實(shí)是通過troff來排版的。感興趣的朋友們可以通過七八九十年代的版權(quán)頁來判別。

現(xiàn)在troff的使用,還是有。但是普通用戶就很少了。不過這東西的好處是模塊化?;旧弦粋€(gè)功能,就是一個(gè)程序來控制,比如有畫數(shù)學(xué)公式的,畫流程圖的,畫化學(xué)式的。(這里我有一個(gè)關(guān)于Markdown的天坑想法,這里裝不下,就不寫了)

今天要介紹的是Ali Gholami Rudi的幾個(gè)項(xiàng)目。這人是伊朗的一個(gè)大學(xué)——Babol Noshirvani University of Technology——的一個(gè)Assistant Professor。他在Github上放了一些自己寫的項(xiàng)目。

他寫的幾個(gè)troff相關(guān)的項(xiàng)目,分別是:neatroff(troff實(shí)現(xiàn)的本體部分),neateqn(數(shù)學(xué)公式排版部分),neatpost(postscript代碼生成部分),neatmkfn(字體數(shù)據(jù)生成部分)。

這個(gè)troff和gnu troff的區(qū)別,就兩點(diǎn),一是小,二是支持OpenType。當(dāng)然了,它對(duì)于OTF的支持,路徑可能比較復(fù)雜,甚至不一定比在TeX里面用OTF簡(jiǎn)單。支持OTF的另一個(gè)troff引擎,是heirloom troff,不過這軟件屬于多年未更新,且因?yàn)樵S可證的問題,在很多Linux發(fā)行版里面都找不到。

再說neatroff的小。這種級(jí)別的項(xiàng)目,真能寫得得心應(yīng)手,一是要熟悉算法和數(shù)據(jù)結(jié)構(gòu),另外就是極度熟悉C語言。這樣寫出來的東西,總有一股小而美的味道。但是這種“小而美”確實(shí)還是很難的,就如Fabrice Bellard寫tcc和qemacs,是沒有什么心結(jié)的,寫的很痛快,但是不熟悉算法和語言的人看起來就會(huì)有一些痛苦了。

Ali Gholami Rudi寫的另外的幾個(gè)有趣的項(xiàng)目,是關(guān)于C編譯器的,即neatcc(編譯器),neatld(連接器),neatlibc(libc標(biāo)準(zhǔn)庫)。編譯器這東西,雖然本質(zhì)上,就是從一種文本轉(zhuǎn)換為另一種文本(哪怕是二進(jìn)制的),但是在沒有引導(dǎo)的情況下,一般人是很難上手的。這幾個(gè)項(xiàng)目看起來是很有意思的。

關(guān)于C編譯器設(shè)計(jì)的書,其實(shí)不少,比如Allen Holub的Compiler Design in C,比如Dave Hanson和Chris Fraser的A Retargetable C Compiler: Design and Implementation,比如James E. Hendrix的A Small C Compiler。

當(dāng)然,讀了多少書,不如寫多少的代碼。

小而美幾個(gè)項(xiàng)目:troff實(shí)現(xiàn),C編譯器……的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
石泉县| 定襄县| 民权县| 三河市| 习水县| 蛟河市| 青铜峡市| 陕西省| 平湖市| 峨眉山市| 东丽区| 通许县| 谢通门县| 库伦旗| 郸城县| 思南县| 多伦县| 福建省| 佛山市| 九寨沟县| 渑池县| 永川市| 和平区| 新巴尔虎左旗| 沈阳市| 迭部县| 桃园县| 西城区| 襄垣县| 沧源| 泽库县| 庆阳市| 林周县| 井研县| 宁乡县| 潍坊市| 泰州市| 漳州市| 安平县| 聂荣县| 栾川县|