These are not B-splines:
These are called discrete B-splines. They span a function spaced called discrete splines, which are analogous to splines, but defined in terms of a suitable discrete notion of smoothness.
Discrete splines have continuous discrete derivatives at their knots (rather than continuous derivatives, as splines do).
They have important computational properties, like the fact that interpolation within the space of discrete splines can be done in constant-time.
They are intimately connected to trend filtering (they provide the basis representation that underlies the trend filtering estimator).
For more background, see the monograph: “Divided differences, falling factorials, and discrete splines: Another look at trend filtering and related problems”.
The dspline
package provides tools for computations with discrete splines. The core routines are written in C++ for efficiency. See the reference index for a summary of the tools that are available.