小编mdg*_*rge的帖子

vim中的Unicode打印

我正在处理包含大量unicode字符(≼,⊓,⊔,...)的文本文件.Vim显示它们很好,但是当我打印时它们被一般字符替换.Gedit打印它们没有问题,但是为了打印而启动另一个编辑器有点痛苦.

有没有办法让vim(在Linux/Gnome上)正确打印?我尝试使用vim-gnome,希望它使用与gedit相同的基础设施,但事实并非如此.

printing unicode vim gnome

5
推荐指数
1
解决办法
882
查看次数

Coq中归纳数据类型的广义折叠

我发现自己要一遍又一遍地重复一个模式,我想对它进行抽象。我相当有信心coq具有足够的表现力来捕捉模式,但是我在弄清楚如何做到这一点上有些麻烦。我正在定义一种编程语言,它具有表示语法术语的相互递归的归纳数据类型:

Inductive Expr : Set :=
  | eLambda  (x:TermVar) (e:Expr)
  | eVar     (x:TermVar)
  | eAscribe (e:Expr)  (t:IFType)
  | ePlus    (e1:Expr) (e2:Expr)

  | ... many other forms ...

with DType : Set :=
  | tArrow (x:TermVar) (t:DType) (c:Constraint) (t':DType)
  | tInt

  | ... many other forms ...

with Constraint : Set :=
  | cEq (e1:Expr) (e2:Expr)
  | ...
Run Code Online (Sandbox Code Playgroud)

现在,我需要在这些类型上定义许多功能。例如,我想要一个函数来查找所有自由变量,一个函数来执行替换,以及一个函数来拉出所有约束的集合。这些函数都具有以下形式:

Fixpoint doExpr (e:Expr) := match e with
  (* one or two Interesting cases *)
  | ...

  (* lots and lots of boring …
Run Code Online (Sandbox Code Playgroud)

fold coq

5
推荐指数
1
解决办法
391
查看次数

标签 统计

coq ×1

fold ×1

gnome ×1

printing ×1

unicode ×1

vim ×1