The parametric singleton design pattern combines the singleton design pattern with a parameter that enables unique creation of instances of a class. These instances are cached in a table. When a user asks for an instance with these parameters, the table is checked and instances are created conditionally. Lazy instantiation is not new, nor, for that matter, is the singleton design pattern. However, parametric lazy instantiation is new and so is the parametric singleton.
Journal of Object Technology
Lyon, Douglas A. and Castellanos, Francisco, "The Parametric Singleton Design Pattern" (2007). Engineering Faculty Publications. 58.
Douglas Lyon, Francisco Castellanos, “The Parametric Singleton Design Pattern”, Journal of Object Technology, Volume 6, no. 3 (March 2007), pp. 13-23