Synchronous programming language: Difference between revisions

Content deleted Content added
My edit from 2012 needed a more precise formulation ~~~~
Line 12:
In contrast, in the asynchronous model of computation, on a sequential processor, the statement "'''a||b'''" can be either implemented as "'''a;b'''" or as "'''b;a'''". This is known as the '''interleaving-based non determinism'''. The drawback with an asynchronous model is that it intrinsically forbids deterministic semantics (e.g., race conditions), which makes formal reasoning such as analysis and verification more complex. Nonetheless, asynchronous formalisms are very useful to model, design and verify distributed systems, because they are intrinsically asynchronous.
 
Also in contrast are systems with processes that basically ''interact synchronously''. An example would be systems built based on the [[Communicating sequential processes|Communicating sequential processes (CSP)]] model, which also allows deterministic (external) and nondeterministic (internal) choice.
 
==Synchronous languages==