On 31 Mar 2012, at 00:00, Cedric Greevey wrote:

> On Fri, Mar 30, 2012 at 6:17 PM, Lee Spector <lspec...@hampshire.edu> wrote:
>> 
>> On Mar 30, 2012, at 5:11 PM, Cedric Greevey wrote:
>>> 
>>> That opens a giant can of worms. How, for example, do we discover that
>>> (partial * 2) and #(* % 2) and (fn [x] (* 2 x)) and #(+ %1 %1) are all
>>> equal? Nevermind once we get into situations like #(reduce + (map
>>> (constantly 1) %) equals #(loop [n 0 s (seq %)] (if s (recur (inc n)
>>> (next s)) n) equals count.
>> 
>> In fact that's an uncomputable can of worms.
> 
> I was pretty sure it smelled like halting problem; thanks for confirming. :)

Agreed, but I'm not suggesting determining whether two forms are 
computationally equivalent, just if two forms are 
literally equivalent. I know it wouldn't cover all cases, but cases like:

(= (partial * 2) (partial * 2))

it would cover, which would seem like an improvement over the situation today. 
I suppose my bigger point is if code is data 
when thy isn't the code for functions available for analysis at runtime? 

> 
> -- 
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To post to this group, send email to clojure@googlegroups.com
> Note that posts from new members are moderated - please be patient with your 
> first post.
> To unsubscribe from this group, send email to
> clojure+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/clojure?hl=en


-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

Reply via email to