Algebraic laws for nondeterminism and concurrency
Journal of the ACM (JACM)
Advances in Petri nets 1986, part I on Petri nets: central models and their properties
Global renaming operators in concrete process algebra
Information and Computation
Algebraic specification
Computer networks
A process specification formalism
Fundamenta Informaticae
Process algebra
A process specification formalism based on static COLD
Algebraic methods II
LAPACK: a portable linear algebra library for high-performance computers
Proceedings of the 1990 ACM/IEEE conference on Supercomputing
Formal specification and design
Formal specification and design
Modular specification of process algebras
Theoretical Computer Science
Computer Networks and ISDN Systems - Special issue on tools for FDTs
Algebraic specification of communication protocols
Algebraic specification of communication protocols
Branching time and abstraction in bisimulation semantics
Journal of the ACM (JACM)
The discrete time TOOLBUS—a software coordination architecture
Science of Computer Programming
Communicating sequential processes
Communications of the ACM
Distributed processes: a concurrent programming concept
Communications of the ACM
A Calculus of Communicating Systems
A Calculus of Communicating Systems
An updated set of basic linear algebra subprograms (BLAS)
ACM Transactions on Mathematical Software (TOMS)
A Classification of CASE Technology
Computer
XP, an Experiment in Modular Specification
FORTE '91 Proceedings of the IFIP TC6/WG6.1 Fourth International Conference on Formal Description Techniques for Distributed Systems and Communication Protocols: Formal Description Techniques, IV
TAPSOFT '89 Proceedings of the International Joint Conference on Theory and Practice of Software Development, Volume 2: Advanced Seminar on Foundations of Innovative Software Development II and Colloquium on Current Issues in Programming Languages
µCRL: A Toolset for Analysing Algebraic Specifications
CAV '01 Proceedings of the 13th International Conference on Computer Aided Verification
CAV '91 Proceedings of the 3rd International Workshop on Computer Aided Verification
A brief history of process algebra
Theoretical Computer Science - Process algebra
Kilim: Isolation-Typed Actors for Java
ECOOP '08 Proceedings of the 22nd European conference on Object-Oriented Programming
Process Algebra: Equational Theories of Communicating Processes
Process Algebra: Equational Theories of Communicating Processes
Fundamenta Informaticae - Understanding Computers' Intelligence Celebrating the 100th Volume of Fundamenta Informaticae in Honour of Helena Rasiowa
Hi-index | 0.01 |
Modern day computer architectures offer ever-increasing support for parallel processing, still it turns out to be quite difficult for programmers and therefore programs to tap into these parallel resources. To benefit from real general-purpose parallel computing we claim that it is likely that a paradigm shift is needed in the way we think about programming. This change of thought in turn will need to be reflected in future programming languages as well. We think that the field of process algebra provides thorough insight in how to reason about the construction of software for concurrent systems and will be one of the enabling technologies supporting this transition. The wish to connect process algebra, a mathematical theory, to the world of computer-readable and executable specifications led to the development of PSF (Process Specification Formalism). PSF is an implementation of the process algebra ACP (Algebra of Communicating Processes) integrating ASF (Algebraic Specification Formalism) to specify algebraic data types. One of the first publications on PSF appeared in Fundamenta Informaticae in 1990. Here we stated as the first sentence of the abstract: "Traditional methods for programming sequential machines are inadequate for specifying parallel systems". Unfortunately, though some advancements have been made since 1990, we can still uphold this statement 20 years later. This current report documents the developments that lead to the construction of PSF and the 1990 publication and moreover it also documents how PSF and its tools have evolved since 1990 taking the conclusion and the outlook for future work from the original article as a reference point. Using the knowledge gained both in constructing tools for PSF and in using PSF to specify concurrent systems, we will judge, discuss and criticise the design decisions taken and show paths for future developments.