Skip to content

Details

Often as R enthusiasts, we like to use R wherever possible. Some things, like reading large data files in non-standard formats or iterative algorithms like MCMC, are difficult to overcome in R, even after jumping through all the hoops -- refactoring, vectorization, bytecode compilation, etc.

Go (https://golang.org/) can help reduce the pain on a lot of these problems. Go is a statically typed language with garbage collection, type safety, concurrency primitives and flexible interfaces. It has a great community, with a lot of great projects (Docker, etcd, Kubernetes, Vitess, etc.) and linear algebra support. If nothing else, it's more fun than C/C++ and especially more fun than Java.

We'll talk about how we try to balance the best of both languages at Lytics. We'll walk through a changepoint detection package we recently made and open sourced, prototyped and validated in R, then ported to Go to fit in nicely with the rest of our stack.

Related topics

Sponsors

R Consortium

R Consortium

Financial support

You may also like