I have just published a small package lspline on CRAN that implements linear splines using convenient parametrisations such that coefficients are slopes of consecutive segments coefficients capture slope change at consecutive knots Knot locations can be specified manually (with lspline()) at breaks dividing the range of x into q equal-frequency intervals (with qlspline()) at breaks