Inserire una breve descrizione delle modifiche fatte
(Richiesto)
Minor changes are by default collapsed in the page history.
No changes
The page does not exist yet.
Failed to load changes
Version by on
Leave Collaboration
Are you sure you want to leave the realtime collaboration and continue editing alone? The changes you save while editing alone will lead to merge conflicts with the changes auto-saved by the realtime editing session.
Separating Concurrent Languages with Categories of Language Embeddings
Ehud Shapiro
23rd Annual ACM Symposium on Theory of Computing (STOC'91), pp. 198–208
ACM, New York, NY, USA
1991
Concurrent programming enjoys a proliferation of languages but suffers from the lack of a general method of language comparison. In particular, concurrent (as well as sequential) programming languages cannot be usefully distinguished based on complexity-theoretic considerations, since most of them are Turing-complete. Nevertheless, differences between programming languages matter, else we would not invented many of them.
We develop a general method for comparing concurrent programming languages based on their algebraic (structured) complexity, and, using this method, achieve separation results among many well-known concurrent languages.
The method is not restricted to concurrent languages. It can be used to compare the complexity of abstract machine models, other families of programming languages, logics, and, more generally, any family of languages with some syntactic operations and a notion of semantic equivalence. The method can also be used to compare the algebraic complexity of families of operations within a language or across languages. We note that using the method we were able to compare languages and computational models that do not have a common semantic basis.