Creating an efficient persistent ArrayList alternative


Details
Programul intalnirii:
6:30 - 7:00 sosirea participantilor + pizza din partea Ullink
7:00 - 8:30 - Lőrinc Pap - Creating an efficient persistent ArrayList alternative
Globally propagating mutations hinder us from being able to reason about an application with only minimal knowledge of its surroundings, from stepping back in a debugger and replaying the whole sequence of operations, from creating simple performance benchmarks or tests, without being concerned with the overall state of the application at all times.
Let’s see how we could design for correcting many of these issues, by creating a data structure that has the same (or better!) space/time complexities than Java’s beloved ArrayList does, and by providing a real-world example where it would shine with its simplicity.
We will explore some of the design compromises we took when creating Javaslang’s persistent Radix-Balanced Vector tree, and compare it to Scala and Clojure – feature and performance-wise.

Creating an efficient persistent ArrayList alternative