Design patterns help to improve communication software quality since they address a fundamental challenge in large-scale software development: communication of architectural knowledge among developers. This paper makes several contributions to the study and practice of design patterns. It presents a case study that illustrates how design patterns helped to… (More)
Developing distributed applications that utilize multi-processing and network services is a promising technique for increasing system performance, scalability, and cost effectiveness. However, designing and implementing efficient, robust, and extensible multi-threaded client/server applications is a complex and challenging task. The Service Configurator… (More)
An earlier version of the paper appeared in the March/April 1995 issue of the C++ Report magazine.
Building system software that is reusable across OS platforms presents developers with many challenges. It is often difficult to reuse existing interfaces and implementations directly due to portability, functionality, and efficiency constraints imposed by different platforms and applications. It may still be possible, however, to leverage prior development… (More)
'When you carry out your tasks…do so—to the best of your ability— in harmony with nature.' Epictetus 1 'In all things of nature there is something of the marvellous.' Aristotle 2 A year has now elapsed since the Primary Care Respiratory Journal (PCRJ) was re-launched as npj Primary Care Respiratory Medicine published by Nature Publishing Group (NPG). In so… (More)
This paper describes the design and implementation of an interface to corpora in 12 languages, stemming from the analysis of the needs of a diverse group of users: language teachers and language students, (non-computational) linguists, researchers in history and translation studies. We identified a set of requirements shared across the disciplines, as well… (More)