English 中文(简体)
在方案解释期间有效的增量计算
原标题:Efficient incremental hash computation during program interpretation

我愿写一个<明星>,让计划译员。 在评价期间的任何时刻,口译人员在作为论据收到以前所看到的一种言论和环境时,都应能够发现。

<<>plain memoization of eval and apply is in Efficiency 。 这需要在每张<代码>eval<>/code>//apply的散列表中研究这些论点,这将要求在海面表上浏览整个(可能较大的)论点。

例如,假设口译员对方案进行评价。

(car (list A))

A. 对大物体进行评价。 口译员在评价申请时,首先对<代码>>>>>>、<代码>和<代码>分别进行评价。 在适用<代码><>list>/code>至A之前,委员会在其散列表中研究一下该申请是否在前面看到过,从整个<代码>A转向对散射。 稍后,当口译人员在包含A的名单中应用car时,它就这份清单计算出一个散列,这再次涉及穿过整个物体。

相反,我希望建立一个口译员,以加紧建造大约独特的斜体,尽可能避免计算,并保障不可能发生碰撞。

For example, one could recursively extend each object that the interpreter operates on with the MD5 of its value, or, if it is a compound object, with the MD5 of its component hashes. An environment might store the hash for each of its variable/value entries, and the hash of the environment might be computed as a function of the individual hashes. Then, if an entry in the environment changes, it is not necessary to rewalk the entire environment to compute the new hash of the environment. Instead, only the hash of the changed variable/value pair needs to be recomputed and the global hash of the set of entry hashes needs to be updated.

www.un.org/spanish/ecosoc 是否在逐步建立大约独特的斜体方面开展了相关工作,特别是在复读和/或方案评价方面?

最佳回答

Note that if expressions are immutable (no self-modifying code allowed) then you can use EQ equality on them. If environments are immutable, you can treat them likewise. EQ equality is fast since you re just taking the bits from the machine pointer to be a hash.

那么,问题就是交错的环境,使表达价值发生变化。 如果允许,如何处理。

一种办法是说明在其法律范畴中包含破坏性规范的环境,并在一定程度上加以说明,以便评价者能够认识到这种“污染环境”,而不是为他们打上手脚。

By the way, you obviously want hash tables with weak semantics for this so that any objects that become garbage do not pile up in memory.

问题回答

暂无回答




相关问题
Lisp code called from Java

Long story: I am doing a project for my functional programing class, and I thought of writing an AI controller in Lisp, for the Mario AI competition. I was looking over frameworks/libraries/ways of ...

Emacs, Zen-Coding mode, and Putty

I use emacs via Putty and since Putty doesn t send certain key combinations to the remote console I generally need to re-bind them to other key combinations. After installing the amazing Zen-Coding ...

In Which Cases Is Better To Use Clojure? [closed]

I develop in Lisp and in Scheme, but I was reading about Clojure and then I want to know, in which cases is better to use it than using Lisp or Scheme? Thanks

lambda-gtk negative pointer

I was trying to write my own put-pixel on (Gdk) pixbuf in Lisp. When I finally realized how I can operate on C pointers in CL, new obstacle came along - (gdk:pixbuf-get-pixels pb) returns me negative ...

Is there a common lisp package naming convention?

I have created some of my own user packages and have run into a name clash. In Java, the naming convention is to use your domain name in the package name: e.g. import com.example.somepackage;. Are ...

SOAP request from within an AutoLISP/AutoCAD macro

We have built a webservice for a client that uses AutoCAD. They have a macro that runs in AutoCAD that builds a SOAP request. But they have not figured out how to actually send() the soap request to ...

热门标签