http://code.google.com/p/clojure/issues/detail?id=93

Paul, you can experiment with the patch if you wish.

Christophe

Christophe Grand a écrit :
> Ok, working on it.
>
> Rich Hickey a écrit :
>   
>> On Mar 9, 5:04 am, Timothy Pratley <timothyprat...@gmail.com> wrote:
>>   
>>     
>>> Hi Paul,
>>>
>>>     
>>>       
>>>> I actually mentioned the cycle function in my message, and that's what
>>>> I was using, but the original question came up because accessing the
>>>> nth item in a list takes linear rather than constant time.
>>>>       
>>>>         
>>> Apologies for not reading your post carefully. Indeed I think your
>>> cyclic-vector solution is great.
>>>
>>>     
>>>       
>>>> I'd be interested to hear how what I was attempting violates the
>>>> spirit of clojure. I was trying to work within the bounds of an
>>>> existing abstraction, and to implement my changes in such a way as to
>>>> not break other things that consume that abstraction.
>>>>       
>>>>         
>>> Interop with Java is a real strength of Clojure. But doing so is less
>>> useful for learning Clojure and more useful for learning Java. Feel
>>> free to pursue it, Java interop is certainly not wasted effort/
>>> knowledge. It certainly doesn't violate the spirit of Clojure, my
>>> words were intended in relation to writing Euler solutions in a non-
>>> Java way.
>>>
>>>     
>>>       
>>>> Incidentally, I don't believe the error I'm getting from proxy has
>>>> anything to do with IPersistentVector being an interface, since you
>>>> can clearly do:
>>>>       
>>>> (proxy [clojure.lang.IFn] [])
>>>>       
>>>>         
>>> Indeed you can, but you've really just created an empty object:
>>> user=> ((proxy [clojure.lang.IFn] []))
>>> java.lang.UnsupportedOperationException: invoke (NO_SOURCE_FILE:0)
>>>
>>> Now back to IPersistentVector for a moment:
>>> This class extends lots of interfaces. There is a name overlap between
>>> some of those Interfaces resulting in a very valid error "Duplicate
>>> method name&signature". Not a bug with proxy.
>>>
>>>     
>>>       
>> I really don't know why you are trying to dissuade Paul in all this.
>> What he is trying to do is perfectly fine and it does in fact look
>> like a bug in proxy. It is not an error to inherit a same-sig method
>> from more than one interface, but proxy is probably generating more
>> than one stub method, which is the error.
>>
>> I'm prepping for my London QCon trip and don't have time to chase
>> this, but would appreciate it if a contributor could please file an
>> issue and look into this.
>>
>> Thanks,
>>
>> Rich
>>
>>
>>     
>>   
>>     
>
>
>   


-- 
Professional: http://cgrand.net/ (fr)
On Clojure: http://clj-me.blogspot.com/ (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
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