小编Ant*_*wns的帖子

制作小的haskell可执行文件?

有没有什么好方法可以制作小的haskell可执行文件?使用ghc6,一个简单的hello world程序似乎达到了370kB(在strip之前为523kB).C中的Hello世界大约是4kB(剥离前9kB).

linker haskell ghc static-linking

40
推荐指数
7
解决办法
8494
查看次数

你如何用lua构建一个读写管道?

我想做相当于:

foo=$(echo "$foo"|someprogram)
Run Code Online (Sandbox Code Playgroud)

在lua中 - 也就是说,我有一个包含一堆文本的变量,我想通过一个过滤器运行它(在python中实现它).

任何提示?

补充:真的很想不使用临时文件

lua pipe

15
推荐指数
4
解决办法
2万
查看次数

是否可以从python中的对象(而不是类)中删除方法?

我有一个带有几个方法的类,其中一些只在对象处于特定状态时才有效.我希望这些方法在它们处于合适的状态时不会被绑定到对象上,这样我得到的结果如下:

>>> wiz=Wizard()
>>> dir(wiz)
['__doc__', '__module__', 'addmana']
>>> wiz.addmana()
>>> dir(wiz)
['__doc__', '__module__', 'addmana', 'domagic']
>>> wiz.domagic()
>>> dir(wiz)
['__doc__', '__module__', 'addmana']
>>> wiz.domagic()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: Wizard instance has no attribute 'domagic'
Run Code Online (Sandbox Code Playgroud)

我可以看到如何添加方法(types.MethodType(方法,对象)),但我看不到任何方法只删除单个对象的方法:

>>> wiz.domagic
<bound method Wizard.domagic of <__main__.Wizard instance at 0x7f0390d06950>>
>>> del wiz.domagic
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: Wizard instance has no attribute 'domagic'
Run Code Online (Sandbox Code Playgroud)

覆盖__dir__(并且在调用时获取InvalidState或NotEnoughMana异常而不是引用时的AttributeError)可能没问题,但我无法准确地看到如何模仿dir()的内置行为.(理想情况下,我更喜欢在Python 2.5中运行的方式)

想法?

python

5
推荐指数
4
解决办法
4799
查看次数

在 coq 中,如何以不搞乱归纳假设的方式进行“归纳 n eqn: Hn”?

使用归纳法时,我想有假设n = 0n = S n'分开案例。

Section x.
  Variable P : nat -> Prop.
  Axiom P0: P 0.
  Axiom PSn : forall n, P n -> P (S n).

  Theorem Pn: forall n:nat, P n.
  Proof. intros n. induction n.
   - (* = 0 *) 
     apply P0. 
   - (* = S n *)
     apply PSn. assumption.
  Qed.
Run Code Online (Sandbox Code Playgroud)

理论上我可以用 来做到这一点induction n eqn: Hn,但这似乎扰乱了归纳假设:

  Theorem Pn2: forall n:nat, P n.
  Proof. intros n. induction n eqn: …
Run Code Online (Sandbox Code Playgroud)

coq

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

标签 统计

coq ×1

ghc ×1

haskell ×1

linker ×1

lua ×1

pipe ×1

python ×1

static-linking ×1