DocumentCode :
1985470
Title :
Prototyping real-time vision systems: an experiment in DSL design
Author :
Reid, Alastair ; Peterson, John ; Hager, Greg ; Hudak, Paul
Author_Institution :
Yale Univ., New Haven, CT, USA
fYear :
1999
fDate :
22-22 May 1999
Firstpage :
484
Lastpage :
493
Abstract :
Describes the enhancement of XVision, a large library of C++ code for real-time vision processing, into FVision (pronounced "fission"), a fully-featured domain-specific language (DSL) embedded in Haskell. The resulting prototype system substantiates the claims of increased modularity, effective code reuse and rapid prototyping that characterize the DSL approach to systems design. It also illustrates the need for judicious interface design: relegating computationally expensive tasks to XVision (pre-existing C++ components) and leaving modular compositional tasks to FVision (Haskell). At the same time, our experience demonstrates how Haskell\´s advanced language features (specifically, parametric polymorphism, lazy evaluation, higher-order functions and automatic storage reclamation) permit a rapid DSL design that is itself highly modular and easily modified. Overall, the resulting hybrid system exceeded our expectations: visual tracking programs continue to spend most of their time executing low-level image processing code, while Haskell\´s advanced features allow us to quickly develop and test small prototype systems within a matter of a few days, and to develop realistic applications within a few weeks.
Keywords :
C++ language; computer vision; functional languages; real-time systems; software libraries; software prototyping; software reusability; C++ components; C++ library; FVision; Haskell; XVision; advanced language features; automatic storage reclamation; code reuse; computationally expensive tasks; computer vision; domain-specific language design; functional programming; higher-order functions; hybrid system; interface design; lazy evaluation; low-level image processing code; modular compositional tasks; modularity; parametric polymorphism; rapid prototyping; real-time vision systems prototyping; systems design; visual tracking programs; Computer interfaces; DSL; Domain specific languages; Image processing; Libraries; Machine vision; Prototypes; Real time systems; Storage automation; System testing;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Software Engineering, 1999. Proceedings of the 1999 International Conference on
Conference_Location :
Los Angeles, CA, USA
ISSN :
0270-5257
Print_ISBN :
1-58113-074-0
Type :
conf
Filename :
841038
Link To Document :
بازگشت