The next 5 years for Eclipse Collections

Donald Raab
3 min readDec 31, 2020

--

My top 25 wish list for the future of Eclipse Collections development

9 Years OSS, 5 years at Eclipse Foundation

Eclipse Collections has existed as an open source project on GitHub for a total of 9 years. Eclipse Collections has been a project at the Eclipse Foundation for 5 years. There have been 4 major versions of Eclipse Collections released, and there were 7 major versions of GS Collections prior to that.

The open source community has done a lot of work on this amazing library, and I would like to thank everyone who has contributed and continues to contribute their time, spirit and code. There is plenty more that can be done to evolve the library, and it will continue to be work done by the community for the community. This makes it kind of hard to predict anything, but I can easily make a wish list.

More of this, Less of that

It’s always nice to consider what new features should be added to a library, but in order to move forward we also have to pay down the technical debt.

Here’s my wish list for Eclipse Collections for the next 5 years.

Technical Debt

  • Combine Unit Tests and Unit Tests Java 8 modules
  • Replace Scala Unit Tests with Java Equivalent Tests
  • Remove JMH Scala Tests
  • Refresh and update the Eclipse Collections Reference Guide
  • Improve JavaDoc
  • Move slow running unit tests to acceptance tests
  • Replace legacy anonymous inner classes with lambdas and method references
  • Clean up performance tests

Java Upgrades

  • Upgrade library to Java 11
  • Leverage Java Module System fully
  • Leverage Local Variable Type Inference sparingly to improve readability
  • Test and integrate with Project Valhalla features
  • Upgrade to JUnit 5

New Containers

  • DataFrames
  • Trees
  • More primitive collection types
  • Lazy Collections (specific types like LazyList)
  • Off-heap Collections
  • Persistent Collections (Functional)

New APIs

  • Improve symmetry between object and primitive APIs
  • More converter methods between types
  • Implement more Parallel APIs

Performance Tuning

  • Optimize APIs from JDK

IDE Refactoring Support

  • Refactor from Java Streams to Eclipse Collections
  • Refactor from for-loops to Eclipse Collections
  • Refactor from Object collections to Primitive Collections

Growing the community

I would love to see more projects using and benefitting from the engineering investment we have collectively made in Eclipse Collections. Here’s my top 10 Project list that I would like to see include the goodness of Eclipse Collections.

The future is up to you, the contributor

Is there something missing from my wish list that you would like to see in Eclipse Collections? You have the power to impact and influence with your voice and your keyboard. Eclipse Collections is open for contributions, and we’d love to have more contributors helping shape the future of the library.

Have a Happy, Safe and Healthy New Year!

I am a Project Lead and Committer for the Eclipse Collections OSS project at the Eclipse Foundation. Eclipse Collections is open for contributions. If you like the library, you can let us know by starring it on GitHub.

--

--

Donald Raab
Donald Raab

Written by Donald Raab

Java Champion. Creator of the Eclipse Collections OSS Java library (https://github.com/eclipse/eclipse-collections). Inspired by Smalltalk. Opinions are my own.