first draft of the gsl-less version