views:

299

answers:

2
+13  Q: 

What is a Shim?

What's the definition of a Shim?

+16  A: 

From Wikipedia:

In computer programming, a shim is a small library that transparently intercepts an API, changing the parameters passed, handling the operation itself, or redirecting the operation elsewhere. Shims typically come about when the behaviour of an API changes, thereby causing compatibility issues for older applications that still rely on the older functionality. In these cases, the older API can still be supported by a thin compatibility layer on top of the newer code. Shims can also be used to run programs on different software platforms than they were developed for.

Prasoon Saurav
+5  A: 

As for origins of the word, quoth Apple's Dictionary widget

noun
   a washer or thin strip of material used to align parts, 
   make them fit, or reduce wear.

verb ( shimmed, shimming) [ trans. ]
   wedge (something) or fill up (a space) with a shim.

ORIGIN early 18th cent.: of unknown origin

This seems to fit quite well with how web designers use the term.

Thilo