<rdf:RDF
    xmlns:s='http://snipsnap.org/rdf/snip-schema#'
    xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#'
    xml:base='http://wiki.moredesignpatterns.com/rdf'>
    <s:Comment rdf:about='http://wiki.moredesignpatterns.com/rdf#comment-Value+Object+Known+Uses+v2-1'
         s:oUser=''>
        <s:name>comment-Value Object Known Uses v2-1</s:name>
        <s:content>From the [PLoP 2006] writers&apos; workshop:&#xD;&#xA;&#xD;&#xA;* In Smalltalk, Point should have been a value object.&#xD;&#xA;&#xD;&#xA;* Do math value objects. Fraction, Complex, etc.</s:content>
        <s:cUser>Dirk Riehle</s:cUser>
        <s:mUser>Dirk Riehle</s:mUser>
        <s:mTime>2006-10-24 08:03:30.992</s:mTime>
        <s:cTime>2006-10-24 08:03:28.288</s:cTime>
        <s:commentedSnip>
            <s:Snip rdf:about='http://wiki.moredesignpatterns.com/rdf#Value+Object+Known+Uses+v2'
                 s:oUser=''>
                <s:name>Value Object Known Uses v2</s:name>
                <s:content>The distinction between objects and values in structured and object-oriented programming was first spelled out in the seminal article by MacLennan [Mac82]. It has taken a while, but with the new breed of object-oriented programming languages like X10 [IBM05] and Fortress [SUN06], first-class value types seem to finally have arrived.&#xD;&#xA;&#xD;&#xA;The most widely known uses of the Value Object pattern can probably be found in the Java JDK implementations. The String, Integer, and Float classes are close-to-the-system Value Object implementations. Further and somewhat cleaner examples are the BigInteger and BigDecimal classes, which are in fact implemented as immutable classes, with some caching for common numbers (e.g. values between -10 and +10). The JValue Value Object framework provides more examples: Hierarchical names, URLs, monetary amounts, UML datatypes, and others [Rie99].&#xD;&#xA;&#xD;&#xA;As a pattern, Value Object has first been described by Cunningham [Cun95] and later by Fowler [Fow02] and Evans [Eva04]. We provide a lengthy discussion of Value Object design and implementation considerations in traditional programming languages in [BRSetal98].&#xD;&#xA;&#xD;&#xA;[Next|Value Object Acknowledgements v2]</s:content>
                <s:cUser>Dirk Riehle</s:cUser>
                <s:mUser>Dirk Riehle</s:mUser>
                <s:mTime>2006-09-19 07:19:20.712</s:mTime>
                <s:cTime>2006-09-19 07:14:48.648</s:cTime>
                <s:comments>
                    <rdf:Bag>
                        <rdf:li rdf:resource='http://wiki.moredesignpatterns.com/rdf#comment-Value+Object+Known+Uses+v2-1'/>
                    </rdf:Bag>
                </s:comments>
                <s:snipLinks>
                    <rdf:Bag>
                        <rdf:li rdf:resource='http://wiki.moredesignpatterns.com/rdf#Value Object Sample Code v2'/>
                        <rdf:li rdf:resource='http://wiki.moredesignpatterns.com/rdf#Value Object'/>
                        <rdf:li rdf:resource='http://wiki.moredesignpatterns.com/rdf#Value+Object'/>
                        <rdf:li rdf:resource='http://wiki.moredesignpatterns.com/rdf#Value Object Acknowledgements v2'/>
                        <rdf:li rdf:resource='#Fow02'/>
                        <rdf:li rdf:resource='#snipsnap-index'/>
                        <rdf:li rdf:resource='http://wiki.moredesignpatterns.com/rdf#Dirk Riehle'/>
                        <rdf:li rdf:resource='http://wiki.moredesignpatterns.com/rdf#Value Object Intent v2'/>
                    </rdf:Bag>
                </s:snipLinks>
                <s:attachments
                     rdf:type='http://www.w3.org/1999/02/22-rdf-syntax-ns#Bag'/>
            </s:Snip>
        </s:commentedSnip>
    </s:Comment>
</rdf:RDF>
