<!-- 
RSS generated by JIRA (4.4#649-r158309) at Sat May 18 04:21:23 CDT 2013

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary add field=key&field=summary to the URL of your request.
For example:
http://dev.clojure.org/jira/si/jira.issueviews:issue-xml/CLJ-1065/CLJ-1065.xml?field=key&field=summary
-->
<rss version="0.92" >
<channel>
    <title>Clojure JIRA</title>
    <link>http://dev.clojure.org/jira</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>4.4</version>
        <build-number>649</build-number>
        <build-date>25-07-2011</build-date>
    </build-info>

<item>
            <title>[CLJ-1065] Allow duplicate set elements and map keys for all set and map constructors</title>
                <link>http://dev.clojure.org/jira/browse/CLJ-1065</link>
                <project id="10010" key="CLJ">Clojure</project>
                        <description>&lt;p&gt;See description here &lt;a href=&quot;http://dev.clojure.org/display/design/Allow+duplicate+map+keys+and+set+elements&quot;&gt;http://dev.clojure.org/display/design/Allow+duplicate+map+keys+and+set+elements&lt;/a&gt;&lt;/p&gt;</description>
                <environment></environment>
            <key id="15685">CLJ-1065</key>
            <summary>Allow duplicate set elements and map keys for all set and map constructors</summary>
                <type id="1" iconUrl="http://dev.clojure.org/jira/images/icons/bug.gif">Defect</type>
                                <priority id="4" iconUrl="http://dev.clojure.org/jira/images/icons/priority_minor.gif">Minor</priority>
                    <status id="6" iconUrl="http://dev.clojure.org/jira/images/icons/status_closed.gif">Closed</status>
                    <resolution id="1">Completed</resolution>
                                <assignee username="-1">Unassigned</assignee>
                                <reporter username="jafingerhut">Andy Fingerhut</reporter>
                        <labels>
                    </labels>
                <created>Sat, 8 Sep 2012 01:15:16 -0500</created>
                <updated>Thu, 4 Oct 2012 10:15:06 -0500</updated>
                    <resolved>Thu, 4 Oct 2012 10:15:06 -0500</resolved>
                            <version>Release 1.4</version>
                                <fixVersion>Release 1.5</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>3</watches>
                        <comments>
                    <comment id="29405" author="jafingerhut" created="Sat, 8 Sep 2012 01:19:50 -0500"  >&lt;p&gt;I think that clj-1065-set-map-constructors-allow-duplicates-v1.txt dated Sep 7 2012 updates Clojure for the behavior Rich recommends on the dev Wiki page in the description.  I may have missed something, though.  Perhaps the most questionable part is the way I&apos;ve chosen to implement array-map always taking the last key&apos;s value.  It is no less efficient than the PersistentArrayMap createWithCheck method, i.e. O(n^2). &lt;/p&gt;</comment>
                    <comment id="29409" author="richhickey" created="Sat, 8 Sep 2012 07:10:54 -0500"  >&lt;p&gt;Thanks!&lt;/p&gt;

&lt;p&gt;array-map is ok. I would prefer that the docs strings say &quot;as if by repeated assoc&quot; (or conj for sets). &quot;eliminates&quot; and &quot;last&quot; are less precise e.g. what if you pass equal things, but with different metadata, to hash-set? &quot;Eliminates dupes&quot; doesn&apos;t say.&lt;/p&gt;</comment>
                    <comment id="29412" author="jafingerhut" created="Sat, 8 Sep 2012 15:39:25 -0500"  >&lt;p&gt;clj-1065-set-map-constructors-allow-duplicates-v2.txt dated Sep 8 2012 supersedes yesterday&apos;s -v1.txt patch, which I will remove.&lt;/p&gt;

&lt;p&gt;This one updates doc strings per Rich&apos;s suggestion.&lt;/p&gt;

&lt;p&gt;Also, his mention of metadata and &quot;as if by assoc&quot; led me to beef up the new test cases to check that metadata is correct, and I thus found that my new array-map constructor was not doing the right thing.  This one does.&lt;/p&gt;

&lt;p&gt;There is still no implementation of Rich&apos;s #3 yet.  Just wanted to get this one up there in case someone else builds on it before I do.&lt;/p&gt;</comment>
                    <comment id="29414" author="jafingerhut" created="Sun, 9 Sep 2012 03:07:01 -0500"  >&lt;p&gt;Patch clj-1065-do-map-constant-duplicate-key-checks-compile-time-only-v1.txt only makes changes that should eliminate run-time checks for duplicate map keys, if they are compile-time constants.&lt;/p&gt;

&lt;p&gt;It is currently separate from the changes to those for the set/map constructor functions, since I am less sure about these changes.  I&apos;m not terribly familiar with the compiler internals, and I might be going about this the wrong way.  Better to get separate feedback on these changes alone.  I&apos;m happy to merge them all into one patch if both parts look good.&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                    <attachment id="11488" name="clj-1065-do-map-constant-duplicate-key-checks-compile-time-only-v1.txt" size="8648" author="jafingerhut" created="Sun, 9 Sep 2012 03:07:01 -0500" />
                    <attachment id="11487" name="clj-1065-set-map-constructors-allow-duplicates-v2.txt" size="9261" author="jafingerhut" created="Sat, 8 Sep 2012 15:39:25 -0500" />
                </attachments>
            <subtasks>
        </subtasks>
                <customfields>
                                <customfield id="customfield_10002" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                <customfieldname>Approval</customfieldname>
                <customfieldvalues>
                        <customfieldvalue key="10007">Ok</customfieldvalue>

                </customfieldvalues>
            </customfield>
                                                                                    <customfield id="customfield_10010" key="com.pyxis.greenhopper.jira:gh-global-rank">
                <customfieldname>Global Rank</customfieldname>
                <customfieldvalues>
                    
                </customfieldvalues>
            </customfield>
                                            <customfield id="customfield_10000" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                <customfieldname>Patch</customfieldname>
                <customfieldvalues>
                        <customfieldvalue key="10002">Code and Test</customfieldvalue>

                </customfieldvalues>
            </customfield>
                                                                                        </customfields>
    </item>
</channel>
</rss>