Skip to content

jsouthworth/seq

Repository files navigation

Seq

GoDoc Build Status Coverage Status

Seq is a lazy sequence library for go. It is inspired by Clojure's sequence functions. It originally started because I was interested in transducers and wanted to play with them. Most of the functions in the library are implemeneted as transducers in the jsouthworth.net/go/transduce library and wrapped with a XfrmSequence here. This library relies heavily on reflection to allow for the most flexibility in what the user provides. This means that it is only type checked at runtime.

Getting started

go get jsouthworth.net/go/seq

Usage

The full documentation is available at jsouthworth.net/go/seq

License

This project is licensed under the 0BSD License - see LICENSE

Acknowledgments

  • Clojure's sequence library was the source of inspiration for the organization of this library and the names of the functions.

TODO

  • Implement a few more functions like flatten.
  • Add more conversions for go types (maps as entry sequences, etc.).

About

A sequence library for go

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages