Talk:Data-driven programming

From Wikipedia, the free encyclopedia
Jump to: navigation, search
WikiProject Computing / Software (Rated Stub-class, Low-importance)
WikiProject icon This article is within the scope of WikiProject Computing, a collaborative effort to improve the coverage of computers, computing, and information technology on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
Stub-Class article Stub  This article has been rated as Stub-Class on the project's quality scale.
 Low  This article has been rated as Low-importance on the project's importance scale.
Taskforce icon
This article is supported by WikiProject Software.


I don't know who wrote this, but it's entirely wrong. Data-driven programming is a paradigm where the processing is controlled by values in data tables, rather than in program logic. E.g.: --jdege (talk) 00:14, 5 November 2011 (UTC)

Yes, at least this is not a usage I've come across before. I've seen it used in the way what follows from the name quite a bit though: data-driven - moving decisions about program flow away from code and into data. As examples both and use it in this way ('so that one can make changes to the logic of the program by editing not the code but the data structure.'). (talk) 17:32, 21 August 2012 (UTC)

No mention of the major, standard text[edit]

How is it possible that this CS article is a Unix article when the standard textbook connects with Unix only in that emacs is used as the Mozart Oz interface ?

There is not even a link to expression-based languages which are homoiconic, as at least one has limited back-tracking.

Is there no expert editor for these AWKward moments in CS articles ? There is no link to multiparadigm programming languages ??

G. Robert Shiplett 12:46, 23 July 2013 (UTC)

is rebol data-oriented, data-driven or is this not even a meaningful characterization ?[edit]

If you take the cases of rebol and Icon (Unicon and Object Icon as well as Converge) you can see that this is a buzzword. Compare the use of "data-oriented parsing" and then look at rebol parse dialect.

Compare using Prolog primarily with fact declarations ( have some of these contributors ever built non-toy software in a Prolog variant ? I have done so and have little patience with these buzzword articles that have no connection to working software in corporations but instead to articles in IT and programmer magazines and blogs.

The best reminder is what Alan Kay said about C++. As someone who worked for a living in C++ and in Smalltalk in mission critical corporate app's, I find it just incredible that software engineering articles reflect buzzwords rather than real working software.

As usual, compared to aeronautics articles, major setbacks on major projects find no mention. What prevents CS articles from approaching the quality of aeronautics articles? "Competitive advantage" has kept corporations from being forth-coming about successes and failures in many areas of software engineering in design, implementation, testing and maintenance. Is there a social science research strategy for circumventing this restriction on available evidence and documents ? One has been US freedom of information for funded software projects.

Until someone takes sociology of computing practices seriously - as evidence-based social science - we will be left with something worse than self-serving propaganda and military lore as compared to peer-reviewed military history.

Software engineering as a social praxis in government, business, volunteer and private activities seems to be an area where falsification of claims is woefully wanting given the endless hype. A natural comparison is to Scientology as religion or technocracy as a political movement or "Social Credit" as an economic doctrine.

One interesting current case might be a non-anecdotal approach to the choice of Silverlight by NetFlix given the competing claims at the time of that choice. Military procurement practices come to mind, especially the history of Boeing with the US Air Force.

Another case of interest might be the use of Informix by Fedex given the competing claims at that time. To what degree does UPS owe its success to faulty decision-making at Fedex during a decade of excellent stock-value performance for investors? The social science issues would include the gradual relocation of IT to east of Memphis and to Colorado following the pistol-whipping of an executive at Memphis airport. What could move these cases beyond anecdotal with the involvement of professional historians and social scientists ?

If this area of applied science is economically critical to Africa, are African nations now proceeding on an evidence-based approach ? Is there even a UNESCO mandate in this technology area which is so prone to folly and irrational decision-making ? SEE : Kerala State and anti-Microsoft politics in India.

One area which does seem to get some attention is the failure of so many corporations exploiting open-source to contribute libraries or new frameworks back into open-source. Compare : the co-operative movement from housing to credit unions to commodity trading (Sask WheatPool) and the limitations now acknowledged ( Cargill versus SWP; credit unions and chartered banking; credit unions and mortgages; S&L.) Technocracy Inc. and Social Credit are, in my experience, often unknown social phenomena to software engineers. Evangelicals among software engineers are often surprising uniformed about the history of evangelicalism - as peculiar as pilots being unaware of the history of CRM.

G. Robert Shiplett 13:19, 23 July 2013 (UTC)

no WP article for E-B SE[edit]

Note that as yet there is no wp article for evidence-based software engineering

G. Robert Shiplett 13:28, 23 July 2013 (UTC)

Stack Overflow[edit]

This crowd gem almost realizes that there is dataflow programming ... but not a standard book often referenced by experienced programmers.

G. Robert Shiplett 22:06, 23 July 2013 (UTC)

Article seems totally wrong[edit]

This article seems totally wrong to me. Data-driven programming might be defined as "where the processing is controlled by values in data tables / data structures, rather than in program if / case logic". "Data-driven" is basically the same idea as "Table-Driven", since an array can be considered a kind of table. and and show the terms are used interchangeably. Refer to Chapter 18 of the book "Code Complete" (Table-Driven methods) for a full explanation. I would say the script running awk or sed is a script, not some kind of table. And the input stream is not any kind of table, but merely the input to be processed. wikipedia has a separate "decision table" article that is somewhat (but only somewhat) related to data / table driven programming. IMO, based on all my understanding of "data-driven" programming, "table-driven programming" should redirect to this article, and the information should be corrected to reflect the correct definition. (talk) 07:01, 29 September 2013 (UTC)

Finally, I don't think there is such a thing as a "data-driven programming language". I would say, as explained in "Code Complete", that "data-driven" is a programming method that may be used with any language that supports arrays or tables (that is, almost any programming language). (talk) 16:04, 30 September 2013 (UTC)