Property based dispatch in functional languages



Climb is a generic image processing library. A generic algorithm interface often requires several different specialized implementations. Olena, a C++ library, solved this using properties. We present a way to dispatch a function call to the best specialized implementation using properties in a dynamic programming language: Common Lisp. Then, we introduce examples of algorithms and properties used in image processing.