Skip to content

kibumh/pcontainer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GoDoc Build Status Go Report Card

What is this?

Persistent Containers implemented in golang inspired by Clojure programming language.

Quick Start

go get github.com/kibumh/pcontainer

Performance

PushBack

  • trivial PushBack API is about 30 times slower than slice version.
  • transent PushBack API is about 4 times slower than slice version.
BenchmarkPushBack-4            	 3000000	       502 ns/op
BenchmarkTransientPushBack-4   	20000000	        65.7 ns/op
BenchmarkSlicePushBack-4       	100000000	        16.8 ns/op

At

  • at API is about 1.5 times slower than slice version.
BenchmarkAt-4                  	20000000	        89.8 ns/op
BenchmarkSliceAt-4             	20000000	        65.0 ns/op

TODO

  • persistent vector
  • persistent hash map
  • advanced persistent vector using rrb-tree

About

clojure-style persistent containers in go

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages