Hey David,

I wanted to try core.match for a while and fiddled around a bit to see what 
kind of code is generated by match, in doing so I found a potentially 
"dangerous" bug.

See: https://gist.github.com/thheller/5850693#file-match-clj-L67

If a match has no :else clause an IllegalArgumentException is thrown and 
(do-something) is called AGAIN instead of using the top-level let result. 
This might cause problems in some apps. Also why not throw (ex-info 
"bad-match in line <xyz> of <file.clj>" {:result value}).

I always wanted to try erlang style case-expressions in clojure and apart 
from this bug core.match just might finally make me do some serious testing.

Cheers,
/thomas


On Monday, June 24, 2013 4:15:56 PM UTC+2, David Nolen wrote:
>
> I've written up how core.match works here 
> http://github.com/clojure/core.match/wiki/Understanding-the-algorithm
>
> Hopefully this is a bit more approachable than the Maranget paper :)
>
>
> On Mon, Jun 24, 2013 at 7:43 AM, David Nolen <dnolen...@gmail.com<javascript:>
> > wrote:
>
>> core.match 0.2.0-rc1 going out the door. ClojureScript support now up to 
>> date with Clojure. I've also changed the ClojureScript version to optimize 
>> for performance over code size as the code size issues are less problematic 
>> for ClojureScript than they are for the JVM.
>>
>> http://github.com/clojure/core.match/blob/master/CHANGES.md
>>
>> Please give it a try!
>>
>> David
>>
>
>

-- 
-- 
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 unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to