This site uses cookies for analytics, personalized content and ads. By continuing to browse this site, you agree to this use. Learn more
Skip to main content
Microsoft
Premier Developer
Premier Developer
  • Home
  • DevBlogs
    • App Center
    • Azure DevOps
    • Visual Studio
    • Visual Studio Code
    • Visual Studio for Mac
    • Azure Artifacts
    • Azure Boards
    • Azure Pipelines
    • Azure Repos
    • Azure Test Plans
    • DevOps
    • C++
    • Java
    • Java Blog in Chinese
    • JavaScript
    • PowerShell
    • Python
    • Q#
    • Scripting
    • TypeScript
    • Visual Basic
    • Visual C#
    • Visual F#
    • .NET
    • ASP.NET
    • NuGet
    • Xamarin
    • Apps for Windows
    • Azure Government
    • Azure SDKs
    • Bing Dev Center
    • Command Line
    • DirectX Developer Blog
    • IoT Developer
    • Microsoft Edge Dev
    • Microsoft Azure
    • Office 365 Development
    • Old New Thing
    • PIX on Windows
    • Premier Developer
    • Surface Duo
    • Windows Search Platform
    • Azure Cosmos DB
    • Azure Data Studio
    • Azure SQL
    • OData
    • Revolutions R
    • SQL Server Data Tools

    Premier Developer

    Building the business of tomorrow with developers today

    Immutability Archives | Premier Developer

    ImmutableObjectGraph has some big updates now, and more coming soon
    ImmutableObjectGraph has some big updates now, and more coming soon
    AvatarAndrew ArnottNovember 19, 2014Nov 19, 201411/19/14
    I was able to work out a model for continued open source development of ImmutableObjectGraph -- at least in a limited way. This means that the 16 month silence on the public repo is over, and I was able to push a bunch of the commits I had been keeping internal to the public.For those of you not already familiar with the library/tool, you can
    Immutable Object Graph updates
    Immutable Object Graph updates
    AvatarAndrew ArnottMay 7, 2013May 7, 201305/7/13
    In my last post, I introduced a T4 template that constructs efficient and quite capable immutable objects based on the simplest mutable type definition. I also mentioned that the published sample is (necessarily, ala T4 style) open source and hosted online. Two outsiders have already submitted pull requests that have been accepted. Some though
    Simple immutable objects
    Simple immutable objects
    AvatarAndrew ArnottJanuary 8, 2013Jan 8, 201301/8/13
    We’re all familiar with immutable collections now. But immutability is only as immutable as it is deep. And an immutable collection of mutable objects may not provide the depth you’re looking for. So how can one create an immutable object? Suppose you would define the mutable version like this: An immutable version might be def
    Immutable collection algorithmic complexity
    Immutable collection algorithmic complexity
    AvatarAndrew ArnottJanuary 7, 2013Jan 7, 201301/7/13
    I received some feedback from my recent BCL blog post on the prerelease of the immutable collections that my algorithm complexity table left a few important entries out. Here is the table again, with more data filled in (particularly around list indexer lookup and enumeration): A noteworthy trait to call out here is that where a List<
    Immutable collections now available
    Immutable collections now available
    AvatarAndrew ArnottDecember 19, 2012Dec 19, 201212/19/12
    In previous posts, I discussed immutable collections. I’m pleased to say they are now available. Read my announcement on the BCL blog.
    Immutable collections with mutable performance
    Immutable collections with mutable performance
    AvatarAndrew ArnottAugust 29, 2011Aug 29, 201108/29/11
    In my last post, I detailed the differences among read/write, read only, frozen and immutable collection types.  I described how immutable collections come with a hit to the garbage collector due to the garbage they generate during mutations.  I have a very positive update on that topic. My previous implementation for the immutabl
    Read only, frozen, and immutable collections
    Read only, frozen, and immutable collections
    AvatarAndrew ArnottAugust 21, 2011Aug 21, 201108/21/11
    [Update: a more recent post with new data on attainable performance of immutable collections] The topics of immutability and functional programming has fascinated me lately.  Mostly because of my work on the Visual Studio Common Project System (CPS) which is a large, highly multi-threaded code base that only remains sane because of its
    Relevant Links

    About Us

    Premier Support for Developers

    Contact Us

    Case Studies

    Join our Team


    Content issues or broken links?  Please leave a comment or send us a note!

    Top Bloggers
    Premier Developer

    Premier Developer

    Avatar

    Vishal Saroopchand

    Avatar

    Andrew Arnott
    Principal Software Engineer

    Reed Robison

    Reed Robison
    Principal Application Development Manager

    Archive
  • July 2020
  • June 2020
  • May 2020
  • April 2020
  • March 2020
  • February 2020
  • January 2020
  • December 2019
  • November 2019
  • October 2019
  • September 2019
  • August 2019
  • July 2019
  • June 2019
  • May 2019
  • April 2019
  • March 2019
  • February 2019
  • January 2019
  • December 2018
  • November 2018
  • October 2018
  • September 2018
  • August 2018
  • July 2018
  • June 2018
  • May 2018
  • April 2018
  • March 2018
  • February 2018
  • January 2018
  • December 2017
  • November 2017
  • October 2017
  • September 2017
  • August 2017
  • July 2017
  • June 2017
  • May 2017
  • April 2017
  • March 2017
  • February 2017
  • January 2017
  • December 2016
  • November 2016
  • October 2016
  • September 2016
  • August 2016
  • July 2016
  • June 2016
  • May 2016
  • April 2016
  • March 2016
  • February 2016
  • January 2016
  • December 2015
  • November 2015
  • October 2015
  • September 2015
  • August 2015
  • July 2015
  • June 2015
  • May 2015
  • April 2015
  • March 2015
  • February 2015
  • January 2015
  • December 2014
  • November 2014
  • October 2014
  • September 2014
  • May 2014
  • March 2014
  • May 2013
  • January 2013
  • December 2012
  • June 2012
  • August 2011
  • February 2010
  • October 2008
  • September 2008
  • August 2008
  • April 2008
  • February 2008
  • January 2008
  • December 2007
  • November 2007
  • October 2007
  • September 2007
  • August 2007
  • July 2007
  • June 2007
  • Stay informed

    Login
    Code Block
    What's new
    • Surface Go 2
    • Surface Book 3
    • Microsoft 365
    • Surface Pro X
    • Windows 10 apps
    Microsoft Store
    • Account profile
    • Download Center
    • Microsoft Store support
    • Returns
    • Order tracking
    • Store locations
    • Virtual workshops and training
    • Microsoft Store Promise
    Education
    • Microsoft in education
    • Office for students
    • Office 365 for schools
    • Deals for students & parents
    • Microsoft Azure in education
    Enterprise
    • Azure
    • AppSource
    • Automotive
    • Government
    • Healthcare
    • Manufacturing
    • Financial services
    • Retail
    Developer
    • Microsoft Visual Studio
    • Windows Dev Center
    • Developer Center
    • Microsoft developer program
    • Channel 9
    • Office Dev Center
    • Microsoft Garage
    Company
    • Careers
    • About Microsoft
    • Company news
    • Privacy at Microsoft
    • Investors
    • Diversity and inclusion
    • Accessibility
    • Security
    English (United States)
    • Sitemap
    • Contact Microsoft
    • Privacy & cookies
    • Terms of use
    • Trademarks
    • Safety & eco
    • About our ads
    • © Microsoft 2020