Matches in DBpedia 2016-04 for { <http://wikidata.dbpedia.org/resource/Q2375732> ?p ?o }
Showing triples 1 to 34 of
34
with 100 triples per page.
- Q2375732 subject Q11703571.
- Q2375732 subject Q7056792.
- Q2375732 abstract "A synchronous programming language is a computer programming language optimized for programming reactive systems. Computer systems can be sorted in three main classes: (1) transformational systems that take some inputs, process them, deliver their outputs, and terminate their execution; a typical example is a compiler; (2) interactive systems that interact continuously with their environment, at their own speed; a typical example is the web; and (3) reactive systems that interact continuously with their environment, at a speed imposed by the environment; a typical example is the automatic flight control system of modern airplanes. Reactive systems must therefore react to stimuli from the environment within strict time bounds. For this reason they are often also called real-time systems, and are found often in embedded systems.Synchronous programming (also synchronous reactive programming or SRP) is a computer programming paradigm supported by synchronous programming languages. The principle of SRP is to make the same abstraction for programming languages as the synchronous abstraction in digital circuits. Synchronous circuits are indeed designed at a high-level of abstraction where the timing characteristics of the electronic transistors are neglected. Each gate of the circuit (or, and, ...) is therefore assumed to compute its result instantaneously, each wire is assumed to transmit its signal instantaneously. A synchronous circuit is clocked and at each tick of its clock, it computes instantaneously its output values and the new values of its memory cells (latches) from its input values and the current values of its memory cells. In other words, the circuit behaves as if the electrons were flowing infinitely fast. The first synchronous programming languages were invented in France in the 1980s: Esterel, Lustre and Signal. Since then, many other synchronous languages have emerged.The synchronous abstraction makes reasoning about time in a synchronous program a lot easier, thanks to the notion of logical ticks: a synchronous program reacts to its environment in a sequence of ticks, and computations within a tick are assumed to be instantaneous, i.e., as if the processor executing them were infinitely fast. The statement “a||b” is therefore abstracted as the package “ab” where “a” and “b” are simultaneous. To take a concrete example, the Esterel statement “every 60 second emit minute” specifies that the signal “minute” is exactly synchronous with the 60-th occurrence of the signal “second”. At a more fundamental level, the synchronous abstraction eliminates the non-determinism resulting from the interleaving of concurrent behaviors. This allows deterministic semantics, therefore making synchronous programs amenable to formal analysis, verification and certified code generation, and usable as formal specification formalisms.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 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 (CSP) model, which also allows nondeterministic choice.".
- Q2375732 wikiPageExternalLink SYNCHRONE.
- Q2375732 wikiPageExternalLink newbook.pdf.
- Q2375732 wikiPageExternalLink Polychrony.
- Q2375732 wikiPageExternalLink paper.html.
- Q2375732 wikiPageWikiLink Q1120460.
- Q2375732 wikiPageWikiLink Q11703571.
- Q2375732 wikiPageWikiLink Q1414548.
- Q2375732 wikiPageWikiLink Q15777.
- Q2375732 wikiPageWikiLink Q188267.
- Q2375732 wikiPageWikiLink Q193040.
- Q2375732 wikiPageWikiLink Q232661.
- Q2375732 wikiPageWikiLink Q2874223.
- Q2375732 wikiPageWikiLink Q34010.
- Q2375732 wikiPageWikiLink Q3545879.
- Q2375732 wikiPageWikiLink Q3988.
- Q2375732 wikiPageWikiLink Q464622.
- Q2375732 wikiPageWikiLink Q4817198.
- Q2375732 wikiPageWikiLink Q486926.
- Q2375732 wikiPageWikiLink Q68.
- Q2375732 wikiPageWikiLink Q7056792.
- Q2375732 wikiPageWikiLink Q7119633.
- Q2375732 wikiPageWikiLink Q7390335.
- Q2375732 wikiPageWikiLink Q7424380.
- Q2375732 wikiPageWikiLink Q746261.
- Q2375732 wikiPageWikiLink Q7662070.
- Q2375732 wikiPageWikiLink Q850484.
- Q2375732 wikiPageWikiLink Q9143.
- Q2375732 type Thing.
- Q2375732 comment "A synchronous programming language is a computer programming language optimized for programming reactive systems.".
- Q2375732 label "Synchronous programming language".
- Q2375732 seeAlso Q389085.