Library And Primitives Blurring

One technique that makes for a powerful dynamic or meta-language is blurring the distinction between what are "primitives" (built-in operations) and libraries (add-on-able functions, classes, and APIs).

LispLanguage and SmalltalkLanguage are known for this more or less. Some questions:

If the distinction is blurred (LibraryAndPrimitivesBlurring) this gives developers less chance to specialize - and in a recognizable way so.

Forces: AntiPattern: TooPowerfulForItsOwnGood

So a clear separation between library and primitive is one means to ensure defined domains. There may be other differentiations.

This seems to be an instance of AlternateHardAndSoftLayers.


View edit of April 21, 2013 or FindPage with title or text search