The Honeysuckle programming language: an overview
The Honeysuckle programming language: an overview
- Author(s): I. East
- DOI: 10.1049/ip-sen:20030130
For access to this article, please select a purchase option:
Buy article PDF
Buy Knowledge Pack
IET members benefit from discounts to all IET publications and free access to E&T Magazine. If you are an IET member, log in to your account and the discounts will automatically be applied.
Thank you
Your recommendation has been sent to your librarian.
- Author(s): I. East 1
-
-
View affiliations
-
Affiliations:
1: Department of Computing, School of Technology, Oxford Brookes University, Wheatley Campus, UK
-
Affiliations:
1: Department of Computing, School of Technology, Oxford Brookes University, Wheatley Campus, UK
- Source:
Volume 150, Issue 2,
April 2003,
p.
95 – 107
DOI: 10.1049/ip-sen:20030130 , Print ISSN 1462-5970, Online ISSN 1463-9831
A language for programming systems with Communicating Process Architecture is introduced which builds on the success of occam. The principal innovations are presented, such as a priori deadlock-freedom, a transfer primitive, which conveys object ownership, and an alternation construct. The latter affords direct expression of prioritised reactive (event-driven) behaviour, including exception response. Honeysuckle also offers source-code modularity, object encapsulation, and the recursive definition of both object and process. Despite such ambition, a primary aim has been to retain simplicity in abstraction, expression and implementation.
Inspec keywords: object-oriented languages; concurrency theory; communicating sequential processes; programming language semantics
Other keywords:
Subjects: Object-oriented programming; High level languages; Parallel programming and algorithm theory; Formal languages and computational linguistics
References
-
-
1)
- Jones, G.: `On guards', Proceedings of the 7th Technical Meeting of the occam User Group: International Workshop on the Parallel Programming of Transputer-Based Machines, 1987.
-
2)
- E.W. Dijkstra . The GOTO statement considered harmful. Commun. ACM , 3 , 147 - 148
-
3)
- C.A.R. Hoare . The emperor's old clothes. Commun. ACM , 2 , 75 - 83
-
4)
- S.D. Brookes , C.A.R. Hoare , A.W. Roscoe . A theory of communicating sequential processes. J. ACM , 3 , 560 - 599
-
5)
- P.H. Welch , G. Justo , C. Willcock . (1993) High-level paradigms for deadlock-free high-performance systems, Transputer applications and systems'93.
-
6)
- I.R. East . (2002) The ‘Honeysuckle’ programming language: Object and protocol, Proceedings of communicating process architectures 2002.
-
7)
- S.D. Brookes , A.W. Roscoe , K.R. Apt . (1984) Deadlock analysis in networks of communicating processes, Logics and models of concurrent systems.
-
8)
- Martin, J.M.R.: `The design and construction of deadlock-free concurrent systems', 1996, PhD, University of Buckingham, Hunter StreetBuckingham, MK18 1EG.
-
9)
- O.J. Dahl , C.A.R. Hoare , O. Dahl . (1972) Hierarchical program structures, Structured programming.
-
10)
- J. Martin , I. East , S. Jassim . Design rules for deadlock freedom. Transput. Commun. , 3 , 121 - 133
-
11)
- N. Wirth . (1976) Algorithms+Data structures=programs.
-
12)
- Welch, P.H., Barnes, F.R.M.: `Mobile data types for communicating processes', Proceedings of the 2001 International Conference on Parallel and distributed processing techniques and applications, 2001, CSREA Press, p. 20–26.
-
13)
- I.R. East . (1995) Parallel processing with communicating process architecture.
-
14)
- C.A.R. Hoare . Recursive data structures. Int. J. Comput. Inf. Sci. , 2 , 105 - 132
-
15)
- I.R. East . Deadlock-free programming with service protocol.
-
16)
- C. Böhm , G. Jacopini . Flow diagrams, turing machines, and languages with only two formation rules. Commun. ACM , 5 , 366 - 371
-
17)
- R. Burstall . Proving programs by structures induction. Commut. J. , 1 , 41 - 48
-
18)
- E. Dijkstra . (1976) Array variables, A discipline of programming.
-
19)
- C.A.R. Hoare , C.J. Bunyan . (1974) Hints on programming language design, State of the art report: computer systems reliability.
-
20)
- C.A.R. Hoare , C.B. Jones . (1989) Essays in computing science.
-
21)
- I.R. East . (2002) The “Honeysuckle” programming language: Event and process, Proceedings of communicating process architectures 2002.
-
22)
- K. Nygaard , O.-J. Dahl . (1981) The development of the Simula languages, History of programming languages.
-
23)
- C.A.R. Hoare . (1985) Communicating sequential process.
-
24)
- P.M. Cohn . (1965) Universal algebra.
-
25)
- E. Dijkstra . (1976) An essay on the notion “The scope of variables”, A discipline of programming.
-
26)
- Revised report on the algorithmic language Algol 60. Commun. ACM , 1 , 1 - 17
-
27)
- D. Knuth . Structured programming with GOTO statements. ACM Comput. Surv. , 4 , 261 - 301
-
28)
- Report on the algorithmic language Algol 60. Commun. ACM , 5 , 299 - 314
-
29)
- A.W. Roscoe . (1998) The theory and practice of concurrency.
-
30)
- D. Knuth . Literate programming. CSLI Lecture Notes
-
31)
- Lawrence, A.E.: `Extending CSP', Proceedings of the 21st Technical Meeting of the World occam Transputer User Group, 1998, University of Kent, UK, IOS Press, p. 111–132.
-
32)
- East, I.R.: `Programming prioritized alternation', Proceedings of the 2002 International Conference on Parallel distributed processing techniques and applications, 2002, CSREA Press, p. 531–537.
-
33)
- Maddux, R.: `A study of program structure', 1975, PhD, University of Waterloo.
-
34)
- East, I.R.: `Towards a successor to ', Proceedings of Communicating Process Architectures 2001, 2001, IOS Press, p. 231–241.
-
35)
- O.J. Dahl . Simula—An ALGOL-based simulation language. Commun. ACM , 9 , 671 - 678
-
36)
- (1988) 2 reference manual.
-
37)
- P. Brinch-Hansen . (1973) Operating system principles.
-
38)
- B. Meyer . (1997) Object-oriented software construction.
-
1)