Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>I honestly find your explanation and examples difficult to follow (<strong>update:</strong> your blog is much better and reading <a href="http://cplang.wordpress.com/2009/12/19/statement-ordering/" rel="nofollow noreferrer">Statement Ordering</a> there I'm even more convinced that you are aiming at a form of <strong>dataflow programming</strong>).</p> <p>However, your final description:</p> <blockquote> <p>Everything stated in the language is "as is", and is continuously actively executed. This means; the programmer does not know in which order (unless explicitly stated using constructions) elements are, nor when statements are executed. The language is completely separated from the "time"-concept, i.e. it's continuously executed: saying that "a" is "b" and "b" is "a" is a simple loop-structure, for instance.</p> </blockquote> <p>.. induces me to think that the general term that you are searching for is <strong><a href="http://en.wikipedia.org/wiki/Dataflow" rel="nofollow noreferrer">dataflow programming</a></strong> (even if loops are not permitted in the more simple instances of dataflow programming). Quoting from Wikipedia:</p> <blockquote> <p><strong>Dataflow</strong> is a software architecture based on the idea that changing the value of a variable should automatically force recalculation of the values of variables which depend on its value.</p> </blockquote> <p><a href="http://en.wikipedia.org/wiki/Reactive_programming" rel="nofollow noreferrer">Reactive programming</a> and <a href="http://en.wikipedia.org/wiki/Functional_reactive_programming" rel="nofollow noreferrer">functional reactive programming</a> are, <em>as <strong>I</strong> understand them</em>, variations on the same theme.</p> <p>Icon's goal-directed evaluation is more restricted in scope (see this <a href="http://www.cs.arizona.edu/icon/intro.htm" rel="nofollow noreferrer">A Brief Introduction to Icon</a>: <em>The backtracking implied by the goal-directed evaluation mechanism is limited to the expression in which it occurs</em>).</p> <p>See also this question on Stackoverflow: <a href="https://stackoverflow.com/questions/461796/dataflow-programming-languages">Dataflow Programming Languages</a>.</p> <p><strong>Update:</strong> Pindatjuh asks in comments "<em>Can you also comment, whether this language is a new variation on the theme of dataflow?</em>". I think so, but the question is really about definitions and so about consensus. In a recent survey about dataflow languages, <a href="http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.99.7265" rel="nofollow noreferrer">Advances in dataflow programming languages</a> (published in <a href="http://portal.acm.org/citation.cfm?id=1013209" rel="nofollow noreferrer">ACM Computing Surveys, Volume 36 , Issue 1, March 2004</a>), authors wrote (page 10):</p> <blockquote> <p>The best list of features that constitute a dataflow language was put forward by Ackerman [1982] and reiterated by Whiting and Pascoe [1994] and Wail and Abramson [1995]. This list includes the following:</p> <ol> <li>freedom from side effects,</li> <li>locality of effect,</li> <li>data dependencies equivalent to scheduling,</li> <li>single assignment of variables,</li> <li>an unusual notation for iterations due to features 1 and 4,</li> <li>lack of history sensitivity in procedures.</li> </ol> </blockquote> <p>I haven't read all your blog but just perused it lightly, so you are more qualified than me to judge about your programming language (which is a moving target anyway).</p> <p><strong>Update:</strong> I unconsciously missed the word "new" in your question "<em>... this language is a <strong>new</strong> variation on...</em>". It is an hard task: one needs to consider all the dataflow languages invented until now and carefully examine their semantics in detail to spot a novelty in your approach. I surely haven't the necessary knowledge at this time.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload