Ask Community: Feedback/Suggestion Needed about the Code Nirvana Specification

2018-11-08 Thread Piyush Katariya
Hello Clojurians, Could you please have a look at the specification of Code Nirvana and share your feedback/opinion/suggestion about it in terms of its need, usability and productivity

RE: An Error spec?

2018-11-08 Thread Sean Corfield
Alex, I’m curious, should this https://github.com/dawcs/flow/blob/master/src/dawcs/flow.clj#L53 use *exception-base-class* rather than Throwable directly? It looks very interesting and elegant – I’ll probably give this a test drive next week! Sean Corfield -- (970) FOR-SEAN -- (904) 302-SEAN

Re: An Error spec?

2018-11-08 Thread alex
Thanks Sean, simple api is really main goal in Flow design. Initially we had much more sugar, but resulting version is pretty concise. We use it in production at Eventum, mostly in graphql resolvers/mutations and we're quite happy with it. четверг, 8 ноября 2018 г., 21:18:18 UTC+2

RE: An Error spec?

2018-11-08 Thread Sean Corfield
Flow reminds me a bit of a project I started in early 2015 and decided to sunset in late 2016: https://github.com/seancorfield/engine We actually used Engine at work for a while but decided the resulting code was both harder to read and not really very idiomatic. I’ll be interested to hear how

Re: [ANN] 1.10.0-beta5

2018-11-08 Thread Timothy Baldridge
Nope, you're right, I missed the "extend, extend-type, extend-protocol" part of the original post. On Thu, Nov 8, 2018 at 10:12 AM Alex Miller wrote: > > On Thursday, November 8, 2018 at 10:44:34 AM UTC-6, tbc++ wrote: >> >> The instance based polymorphism is a bit wonky in some cases. Can we

Re: [ANN] 1.10.0-beta5

2018-11-08 Thread Alex Miller
On Thursday, November 8, 2018 at 10:44:34 AM UTC-6, tbc++ wrote: > > The instance based polymorphism is a bit wonky in some cases. Can we get > some sort of spec that tells us what the rules are for resolution? > >From the top of the thread: "Protocol implementations are checked first for

Re: [ANN] 1.10.0-beta5

2018-11-08 Thread Timothy Baldridge
The instance based polymorphism is a bit wonky in some cases. Can we get some sort of spec that tells us what the rules are for resolution? See these cases where it breaks in some rather strange ways. Clojure 1.10.0-beta5 user=> (defprotocol ILevel (level [this])) ILevel user=> (extend-protocol

Re: [ANN] 1.10.0-beta5

2018-11-08 Thread Rick Moynihan
On Thu, 8 Nov 2018 at 14:36, alex wrote: > No, that will not work exactly like Ruby eigenclass, cause eigenclass has > a priority when method lookup is performed. In Clojure case if instance's > class has implementation of method, it will be preferred instead of meta > version. If I understand

Re: [ANN] 1.10.0-beta5

2018-11-08 Thread alex
No, that will not work exactly like Ruby eigenclass, cause eigenclass has a priority when method lookup is performed. In Clojure case if instance's class has implementation of method, it will be preferred instead of meta version. If I understand everything correctly. четверг, 8 ноября 2018 г.,

Re: [ANN] 1.10.0-beta5

2018-11-08 Thread Rick Moynihan
Cool, so I guess it's the clojure of equivalent of Ruby's eigenclasses: f = "some object" class << f def foo "new foo method on f" end end f.foo # => "new foo method on f" It's a shame this mechanism only works for values implementing IMeta, but I understand the JVM is a little