Remix.run Logo
bjoli 2 days ago

He went on to implement https://github.com/hypirion/c-rrb Which are just like clojures vectors but has fast insertions/deletes and merges.

I semi-ported it to c# here: https://github.com/bjoli/RrbList/tree/main/src/Collections

It is faster than clojures vectors (running on the JVM, so apples and cucumbers) in all cases, and mostly beats scala's vectors except for splitting which is crazy fast in scala's vectors).

panick21_ 2 days ago | parent [-]

Oh god, I remember, I tried to implemented this in Dylan once long ago. I didn't get very far but I really liked the data-structure:

https://github.com/nickik/RRB-Vector-in-Dylan/blob/master/RR...

bjoli 2 days ago | parent [-]

I tried in scheme first, but failed miserably. Doing it in c# was easier since I could more directly compare code.

panick21_ 2 days ago | parent [-]

Dylan wasn't the issue I failed, I found it nice to work with.