ACM Home Page
Please provide us with feedback. Feedback
Programming languages and systems for prototyping concurrent applications
Full text PdfPdf (560 KB)
Source ACM Computing Surveys (CSUR) archive
Volume 32 ,  Issue 1  (March 2000) table of contents
Pages: 43 - 79  
Year of Publication: 2000
ISSN:0360-0300
Author
Wilhelm Hasselbring  Tilburg Univ., Tilburg, The Netherlands
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 40,   Downloads (12 Months): 269,   Citation Count: 4
Additional Information:

abstract   references   cited by   index terms   review   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/349194.349199
What is a DOI?

ABSTRACT

Concurrent programming is conceptually harder to undertake and to understand than sequential programming, because a programmer has to manage the coexistence and coordination of multiple concurrent activities. To alleviate this task several high-level approaches to concurrent programming have been developed. For some high-level programming approaches, prototyping for facilitating early evaluation of new ideas is a central goal. Prototyping is used to explore the essential features of a proposed system through practical experimentation before its actual implementation to make the correct design choices early in the process of software development. Approaches to prototyping concurrent applications with very high-level programming systems intend to alleviate the development in different ways. Early experimentation with alternate design choices or problem decompositions for concurrent applications is suggested to make concurrent programming easier. This paper presents a survey of programming languages and systems for prototyping concurrent applications to review the state of the art in this area. The surveyed approaches are classified with respect to the prototyping process.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
2
3
 
4
 
5
AKARSU, E., Fox, G., AND HAUPT, T. 1998. DARP: Java-based data analysis and rapid prototyping environment for distributed high performance computations. In Proceedings of the ACM Workshop on Java for High-Performance Network Computing (Palo Alto, CA, Feb./Mar.), ACM Press, New York, NY.
 
6
7
 
8
9
 
10
 
11
BANERJEE, U., EIGENMANN, R., NICOLAU, A., AND PADUA, D. A. 1993. Automatic program parallelization. Proc. IEEE 81, 2 (Feb.), 211-243.
 
12
BARBACCI, M. AND LICHOTA, R. 1991. Durra: An integrated approach to software specification, modeling, and rapid prototyping. In Proceedings of the Second International Workshop on Rapid System Prototyping (Research Triangle Park, NC, June), N. Kanopoulos, Ed. IEEE Computer Society Press, Los Alamitos, CA, 67-81.
13
 
14
 
15
16
 
17
 
18
BREANT, F. 1991. Rapid prototyping from Petri- Net on a loosely coupled parallel architecture. In Proceedings of the International Conference on Applications of Transputers (Glasgow, UK), T. S. Durrani, W. A. Sandham, J. J. Soraghan, and J. Hulskamp, Eds. IOS Press, Amsterdam, The Netherlands, 644-649.
 
19
 
20
 
21
BuccI, G. AND VICARIO, E. 1992. Rapid prototyping through communicating Petri nets. In Proceedings of the Third Interntional Workshop on Rapid System Prototyping (Research Triangle Park, NC, June), N. Kanopoulos, Ed. IEEE Computer Society Press, Los Alamitos, CA, 58-75.
 
22
BUCHS, D., FLUMET, J., AND RACLOZ, P. 1992. Producing prototypes from CO-OPN specifications. In Proceedings of the Third Interntional Workshop on Rapid System Prototyping (Research Triangle Park, NC, June), N. Kanopoulos, Ed. IEEE Computer Society Press, Los Alamitos, CA, 77-93.
 
23
 
24
 
25
 
26
CALVEZ, J., PASQUIER, O., AND HERAULT, V. 1994. A complete toolset for prototyping and validating multi-transputer real-time applications. In Proceedings of the Conference on TRANS- PUTERS'94: Advanced Research and Industrial Applications (Royale d'Arc et Senans, France, Sept.), M. Becker, L. Litzler, and M. Tr hel, Eds. IOS Press, Amsterdam, The Netherlands, 71-86.
 
27
CAO, J., DE VEL, O., AND TONG, K. 1993. Supporting a rapid prototyping system for distributed algorithms on a transputer network. In Transputer and Occam Research: New Directions, J. Kerridge, Ed. IOS Press, Amsterdam, The Netherlands, 115-130.
 
28
 
29
 
30
31
 
32
CIANCARINI, P. 1992. Parallel programming with logic languages: a survey. Comput. Lang. 17, 4 (Apr.), 213-240.
33
 
34
 
35
 
36
37
 
38
 
39
 
40
 
41
DOBERKAT, E.-E., FRANKE, W., GUTENBEIL, U., HAS- SELBRING, W., LAMMERS, U., AND PAHL, C. 1992. ProSet; A language for prototyping with sets. In Proceedings of the Third Interntional Workshop on Rapid System Prototyping (Research Triangle Park, NC, June), N. Kanopoulos, Ed. IEEE Computer Society Press, Los Alamitos, CA, 235-248.
 
42
DONATELLI, S., FRANCESCHINIS, G., RIBAUDO, M., AND RUSSO, S. 1994. Use of GSPNs for concurrent software validation in EPOCA. Inf. Softw. Technol. 36, 7 (July), 443-448.
43
 
44
DOUGLAS, A., ROWSTRON, A., AND WOOD, A. 1995. ISETL-Linda: parallel programming with bags. Tech. Rep. YCS 257. Department of Computer Science, University of York, York, UK.
 
45
 
46
FLOYD, C. 1984. A systematic look at prototyping. In Approaches to Prototyping, R. Budde, K. Kuhlenkamp, L. Mathiassen, and H. Z llighoven, Eds. Springer-Verlag, New York, NY, 1-18.
 
47
 
48
 
49
50
51
 
52
 
53
GOLDBERG, A., MILLS, P., NYLAND, L., PRINS, J., REIF, J., AND RIELY, J. 1994. Specification and development of parallel algorithms with the Proteus system. In DIMACS: Specification of Parallel Algorithms, G. Blelloch, K. Chandy, and S. Jagannathan, Eds. AMS, Providence, RI.
 
54
 
55
56
 
57
 
58
 
59
HASSELBRING, W., JODELEIT, P., AND KIRSCH, M. 1997. Implementing parallel algorithms based on prototype evaluation and transformation. Software-Technik Memo Nr. 93. Department of Computer Science, University of Dortmund, Dortmund, Germany.
 
60
 
61
HEPING, H. AND ZEDAN, H. 1996. An executable specification language for fast prototyping parallel responsive systems. Comput. Lang. 22, 1, 1-13.
 
62
63
 
64
HOUCK, C. AND AGHA, G. 1992. HAL: A highlevel actor language and its distributed implementation. In Proceedings of the 21st International Conference on Parallel Processing ((ICPP 91), Volume II, St. Charles, IL, Aug.), 158-165.
 
65
 
66
HUANG, Y.-M. AND RAVISHANKAR, C. 1996. URPC: A toolkit for prototyping remote procedure calls. Comput. J. 39, 6, 525-540.
 
67
 
68
HUBER, F. AND SCH TZ, B. 1997. Rapid prototyping with AutoFocus. In Formale Beschreibungstechniken f r verteilte Systeme (GI/ITG Fachgespr . In English, St. Augustin, Germany), A. Wolisz, I. Schieferdecker, and A. Rennoch, Eds. 343-352.
 
69
HUMMEL, S. F. AND KELLY, R. 1993. A rationale for parallel programming with sets. J. Program. Lang. 1, 3, 187-207.
 
70
 
71
IONA TECHNOLOGIES PLC. 1997. White Paper: OrbixTalk. IONA Technologies PLC, Dublin, Ireland.
 
72
 
73
 
74
JELLY, I. AND GRAY, J. 1992. Prototyping parallel systems: A performance evaluation approach. In Proceedings of the International Conference on Parallel and Distributed Computing and Systems (Pittsburgh, PA, Oct.), ISSM Press, 7-12.
 
75
JONES, D., DOWDESWELL, S., AND HINTZ, T. 1990. A rapid prototyping method for parallel programs. In Proceedings of the Conference on The Transputer in Australia (ATOUG-3, Sydney, Australia, June), T. Bossomaier, T. Hintz, and J. Hulskamp, Eds. IOS Press, Amsterdam, The Netherlands, 121-128.
 
76
JOZWIAK, J. 1993. Exploiting parallelism in SETL programs. Master's thesis. University of Illinois at Urbana-Champaign, Champaign, IL.
 
77
 
78
KRUCHTEN, P., SCHONBERG, E., AND SCHWARTZ, J. 1984. Software prototyping using the SETL programming language. IEEE Software 1, 4 (Oct.), 66-75.
 
79
 
80
 
81
LOBE, G., SZAFRON, D., AND SCHAEFFER, J. 1993. Program design and animation in the Enterprise parallel programming environment. Tech. Rep. 93-04. University of Alberta, Edmonton, Canada.
 
82
 
83
 
84
 
85
86
 
87
 
88
MICHAELSON, G. AND SCAIFE, N. 1995. Prototyping a parallel vision system in Standard ML. J. Funct. Programm. 5, 3 (July), 345-382.
 
89
MILLS, P., NYLAND, L., PRINS, J., REIF, J., AND WAGNER, R. 1991. Prototyping parallel and distributed programs in Proteus. In Proceedings of the Third IEEE Symposium on Parallel and Distributed Processing (Dallas, TX, Dec.), 26-34.
 
90
MITCHELL, S. AND TELLINGS, A. 1996. Synchronisation, concurrent object-oriented programming and the inheritance anomaly. Comput. Lang. 22, 1, 15-26.
 
91
 
92
NIXON, P., BIRKINSHAW, C., CROLL, P., AND MAR- RIOT, D. 1994. Rapid prototyping of parallel fault tolerant systems. In Proceedings of the Euromicro Workshop on Parallel and Distributed Systems (Malaga, Spain), IEEE Computer Society Press, Los Alamitos, CA, 202- 210.
 
93
NIXON, P. AND CROLL, P. 1993. The functional specification of Occam programs for time critical applications. In Transputer and Occam Research: New Directions, J. Kerridge, Ed. IOS Press, Amsterdam, The Netherlands, 131-145.
 
94
 
95
 
96
 
97
 
98
99
 
100
 
101
 
102
 
103
 
104
 
105
SCHAEFFER, J. AND SZAFRON, D. 1996. Software engineering considerations in the construction of parallel programs. In High Performance Computing: Technology and Applications, J. Dongarra, L. Grandinetti, G. Joubert, and J. Kowalik, Eds. Elsevier Science Inc., New York, NY.
 
106
107
 
108
 
109
SON, S. H. AND KIM, Y. 1989. A software prototyping environment and its use in developing a multiversion distributed database system. In Proceedings of the International Conference on Parallel Processing (ICPP '89, Aug.), Pennsylvania State University, University Park, PA.
 
110
 
111
SUAREZ, F., GARCIA, J., ENTRIALGO, J., GARCIA, D., GRAFFA, S., AND DE MIGUEL, P. 1998. A toolset for visualization and behavioral analysis of parallel real-time embedded systems based on fast prototyping techniques. In Proceedings of the Sixth Euromicro Workshop on Parallel and Distributed Processing (PDP'98, Madrid, Jan.), IEEE Computer Society Press, Los Alamitos, CA.
 
112
SZAFRON, D. AND SCHAEFFER, J. 1996. An experiment to measure the usability of parallel programming systems. Concurrency: Pract. Exper. 8, 2, 147-166.
113
114
 
115
 
116
UNGER, B. 1988. Distributed software via prototyping and simulation: JADE. Tech. Rep. 88/300/12. University of Calgary, Calgary, Canada.
 
117
 
118
 
119
 
120
 
121
 
122
 
123
 
124
 
125
 
126
1996. Proceedings of the First International Workshop on Software Engineering for Parallel and Distributed Systems. (PDSE'96, Berlin, Mar.). IEEE Computer Society Press, Los Alamitos, CA.
127
 
128
1998. Proceedings of the International Symposium on Software Engineering for Parallel and Distributed Systems. (PDSE'98, Kyoto, Japan, Apr.). IEEE Computer Society Press, Los Alamitos, CA.
129



REVIEW

"William I. Thacker : Reviewer"

The author surveys prototyping systems and languages for concurrent applications. A taxonomy of the approaches that existing systems use is developed. Each category in the taxonomy is described, and then, an example is given, with sufficient d  more...

Collaborative Colleagues:
Wilhelm Hasselbring: colleagues