From MFKP_wiki

Jump to: navigation, search

Selection: with tag programming [25 articles] 


Legacy system anti-patterns and a pattern-oriented migration response

In Systems Engineering for Business Process Change (2000), pp. 239-250,
edited by Peter Henderson


Mature information systems grow old disgracefully as successive waves of hacking result in accidental architectures which resist the reflection of ongoing business process change. Such petrified systems are termed legacy systems. Legacy systems are simultaneously business assets and business liabilities. Their hard-won dependability and accurate reflection of tacit business knowledge prevent us from undertaking green-field development of replacement systems. Their resistance to the reflection of business process change prevents us from retaining them. Consequently, we are drawn in this paper to ...


It's impossible to conduct research without software, say 7 out of 10 UK researchers

Software and research, Vol. 5 (2014), 1536


No one knows how much software is used in research. Look around any lab and you’ll see software – both standard and bespoke – being used by all disciplines and seniorities of researchers. Software is clearly fundamental to research, but we can’t prove this without evidence. And this lack of evidence is the reason why we ran a survey of researchers at 15 Russell Group universities to find out about their software use and background. [Excerpt: Headline figures] [::] 92% of academics use ...


Ten steps to programming mastery



[Excerpt] Here are ten ways you can improve your coding. The overriding principle to improving your skill at coding, as well as almost endeavor, is open your mind and then fill it with better knowledge. Improvement necessarily implies change, yet it is human nature to fear and resist change. But overcoming that fear and embracing change as a way of life will enable you to reach new levels of achievement. [...] [::Big Rule 1: Break your own habits] When you began coding, you were much less experienced ...


A (partial) introduction to software engineering practices and methods



[Excerpt: Introduction] Software engineering is concerned with all aspects of software production from the early stages of system specification through to maintaining the system after it has gone into use. [...] [\n] [...] As a discipline, software engineering has progressed very far in a very short period of time, particularly when compared to classical engineering field (like civil or electrical engineering). In the early days of computing, not much more than 50 years ago, computerized systems were quite small. Most of the programming was done by scientists trying to ...


(INRMM-MiD internal record) List of keywords of the INRMM meta-information database - part 28

(February 2014)
Keywords: inrmm-list-of-tags   power-law   ppm   practice   pre-alpine   pre-print   precaution   precaution-principle   precipitation   precisely-wrong   precursor-research   predation   predator-satiation   predatory-publishers   prediction   prediction-bias   predictive-modelling   predictors   predisposition   premature-optimization   preparedness   preprints   prescribed-burn   presence-absence   presence-only   pressure-volume-curves   pressures   prestoea-montana   pretreatment   prey-predator   pricing   primary-productivity   principal-components-regression   prisoners-dilemma   pristiphora-abietina   probability-vs-possibility   problem-driven   processes   processing   production-rules   productivity   programming   progressive-learning   prolog   proportion   prosopis-alba   prosopis-glandulosa   prosopis-pallida   protected-areas   protected-species   protection   protective-forest   protocol-uncertainty   provenance   provisioning-services   pruning   prunus-avium   prunus-cerasifera   prunus-domestica   prunus-dulcis   prunus-fruticosa   prunus-ilicifolia   prunus-laurocerasus   prunus-mahaleb   prunus-malaheb   prunus-padus   prunus-salicina   prunus-serotina   prunus-spinosa   prunus-spp   prunus-tenella   pseudo-absences   pseudo-random   pseudoaraucaria-spp   pseudolarix-spp   pseudomonas-avellanae   pseudomonas-spp   pseudomonas-syringae   pseudotsuga   pseudotsuga-macrocarpa   pseudotsuga-menziesii   pseudotsuga-spp   psychology   pterocarpus-indicus   pterocarpus-officinalis   pterocarya-pterocarpa   public-domain   publication-bias   publication-delay   publication-errors   publish-or-perish   puccinia-coronata   pull-push-pest-control   pulp   punica-granatum   purdiaea-nutans   pyrenees-region   pyrolysis   pyrus-amygdaliformis   pyrus-browiczii  


List of indexed keywords within the transdisciplinary set of domains which relate to the Integrated Natural Resources Modelling and Management (INRMM). In particular, the list of keywords maps the semantic tags in the INRMM Meta-information Database (INRMM-MiD). [\n] The INRMM-MiD records providing this list are accessible by the special tag: inrmm-list-of-tags ( ). ...


License compatibility and relicensing

In Licenses (2016)


If you want to combine two free programs into one, or merge code from one into the other, this raises the question of whether their licenses allow combining them. [\n] There is no problem merging programs that have the same license, if it is a reasonably behaved license, as nearly all free licenses are.(*) [\n] What then when the licenses are different? In general we say that several licenses are compatible if there is a way to merge code under those various licenses ...


A framework and methodology for studying the causes of software errors in programming systems

Journal of Visual Languages & Computing, Vol. 16, No. 1-2. (February 2005), pp. 41-84,


An essential aspect of programmers’ work is the correctness of their code. This makes current HCI techniques ill-suited to analyze and design the programming systems that programmers use everyday, since these techniques focus more on problems with learnability and efficiency of use, and less on error-proneness. We propose a framework and methodology that focuses specifically on errors by supporting the description and identification of the causes of software errors in terms of chains of cognitive breakdowns. The framework is based on ...


An Evaluation Framework and Comparative Analysis of the Widely Used First Programming Languages

PLoS ONE, Vol. 9, No. 2. (24 February 2014), e88941,


Computer programming is the core of computer science curriculum. Several programming languages have been used to teach the first course in computer programming, and such languages are referred to as first programming language (FPL). The pool of programming languages has been evolving with the development of new languages, and from this pool different languages have been used as FPL at different times. Though the selection of an appropriate FPL is very important, yet it has been a controversial issue in the ...


Limits on Fundamental Limits to Computation

Nature, Vol. 512, No. 7513. (17 Aug 2014), pp. 147-154,


An indispensable part of our personal and working lives, computing has also become essential to industries and governments. Steady improvements in computer hardware have been supported by periodic doubling of transistor densities in integrated circuits over the past fifty years. Such Moore scaling now requires ever-increasing efforts, stimulating research in alternative hardware and stirring controversy. To help evaluate emerging technologies and increase our understanding of integrated-circuit scaling, here I review fundamental limits to computation in the areas of manufacturing, energy, physical ...


Twenty questions for Donald Knuth

INFORMIT, Vol. 2014 (2014), 2213858


To celebrate the publication of the eBooks of The Art of Computer Programming, (TAOCP), we asked several computer scientists, contemporaries, colleagues, and well-wishers to pose one question each to author Donald E. Knuth. Here are his answers. ...


A Multi-Language Computing Environment for Literate Programming and Reproducible Research

Journal of Statistical Software, Vol. 46, No. 3. (2012)


We present a new computing environment for authoring mixed natural and computer language documents. In this environment a single hierarchically-organized plain text source file may contain a variety of elements such as code in arbitrary programming languages, raw data, links to external resources, project management data, working notes, and text for publication. Code fragments may be executed in situ with graphical, numerical and textual output captured or linked in the file. Export to LATEX, HTML, LATEX beamer, DocBook and other formats ...


IEEE Standard for Floating-Point Arithmetic

IEEE Std 754-2008 In IEEE Std 754-2008 (August 2008), pp. 1-70,
Keywords: ieee   mathematics   multiauthor   programming   standard  


This standard specifies interchange and arithmetic formats and methods for binary and decimal floating-point arithmetic in computer programming environments. This standard specifies exception conditions and their default handling. An implementation of a floating-point system conforming to this standard may be realized entirely in software, entirely in hardware, or in any combination of software and hardware. For operations specified in the normative part of this standard, numerical results and exceptions are uniquely determined by the values of the input data, sequence of ...


An American National Standard- IEEE Standard for Binary Floating-Point Arithmetic

ANSI/IEEE Std 754-1985 In ANSI/IEEE Std 754-1985, No. Std 754-1985. (1985), 0_1,
by John E. May, John P. Riganati, Sava I. Sherr, James H. Beall, Fletcher J. Buckley, Rene Castenschiold, Edward Chelotti, Edward J. Cohen, Paul G. Cummings, Donald C. Fleckenstein, Jay Forster, Daniel L. Goldberg, Kenneth D. Hendrix, Irvin N. Howell, Jack Kinn, Joseph L. Koepfinger, Irving Kolodny, R. F. Lawrence, Lawrence V. McCall, Donald T. Michael, Frank L. Rose, Clifford O. Swanson, J. Richard Weger, W. B. Wilkens, Charles J. Wylie, Andrew Allison, William Ames, Mike Arya, Janis Baron, Steve Baumel, Dileep Bhandarkar, Joel Boney, E. H. Bristol, Werner Buchholz, Jim Bunch, Ed Burdick, Gary R. Burke, Paul Clemente, W. J. Cody, Jerome T. Coonen, Jim Crapuchettes, Itzhak Davidesko, Wayne Davison, R. H. Delp, James Demmel, Donn Denman, Alvin Despain, Augustin A. Dubrulle, Tom Eggers, Philip J. Faillace, Richard Fateman, David Feign, Don Feinberg, Smart Feldman, Eugene Fisher, Paul F. Flanagan, Gordon Force, Lloyd Fosdick, Robert Fraley, Howard Fullmer, Daniel D. Gajski, David M. Gay, C. W. Gear, Martin Graham, David Gustavson, Guy K. Haas, Kenton Hanson, Chuck Hastings, David Hough, John E. Howe, Thomas E. Hull, Suren Irukulla, Richard, Paul S. Jensen, W. Kahan, Howard Kaikow, Richard Karpinski, Virginia Klema, Les Kohn, Dan Kuyper, M. Dundee Maples, Roy Martin, William H. McAllister, Colin McMaster, Dean Miller, Webb Miller, John C. Nash, Dan O'Dowd, Cash Olsen, A. Padegs, John F. Palmer, Beresford Parlett, Dave Patterson, Mary H. Payne, Tom Pittman, Lew Randall, Robert Reid, Christian Reinsch, Frederic N. Ris, Stan Schmidt, Van Shahan, Robert L. Smith, Roger Stafford, G. W. Stewart, Robert Stewart, Harold S. Stone, W. D. Strecker, Robert Swarz, George Taylor, James W. Thomas, Dar-Sun Tsien, Greg Walker, John S. Walther, Shlomo Waser, P. C. Waterman, Charles White
Keywords: ansi   ieee   mathematics   multiauthor   programming   standard  


This standard is a product of the Floating-Point Working Group of the Microprocessor Standards Subcommittee of the Standards Committee of the IEEE Computer Society. This work was sponsored by the Technical Committee on Microprocessors and Minicomputers. Draft 8.0 of this standard was published to solicit public comments. Implementation techniques can be found in An Implementation Guide to a Proposed Standard for Floating-Point Arithmetic by J.T. Coonen, which was based on a still earlier draft of the proposal. This standard defines a ...


The documentary structure of source code

Information and Software Technology, Vol. 44, No. 13. (October 2002), pp. 767-782,


Many tools designed to help programmers view and manipulate source code exploit the formal structure of the programming language. Language-based tools use information derived via linguistic analysis to offer services that are impractical for purely text-based tools. In order to be effective, however, language-based tools must be designed to account properly for the documentary structure of source code: a structure that is largely orthogonal to the linguistic but no less important. Documentary structure includes, in addition to the language text, all ...


The links between human error diversity and software diversity: implications for fault diversity seeking

Science of Computer Programming (March 2014),


Software diversity is known to improve fault tolerance in N-version software systems by independent development. As the leading cause of software faults, human error is considered an important factor in diversity seeking. However, there is little scientific research focusing on how to seek software fault diversity based on human error mechanisms. A literature review was conducted to extract factors that may differentiate people with respect to human error-proneness. In addition, we constructed a conceptual model of the links between human error ...


fireLib user manual and technical reference

(October 1996)


Introduction. fireLib is a C function library for predicting the spread rate and intensity of free-burning wildfires. It is derived directly from the BEHAVE (Andrews 1986) fire behavior algorithms for predicting fire spread in two dimensions, but is optimized for highly iterative applications such as cell- or wave-based fire growth simulation. The BEHAVE System was developed in the early 1980's to calculate a few (less than 50) fire behavior projections at a time and display the results in a small table. In the ...


The Computing Machines in the Future

In Nishina Memorial Lectures, Vol. 746 (2008), pp. 99-114,


This address was presented by Richard P. Feynman as the Nishina Memorial Lecture at Gakushuin University (Tokyo), on August 9, 1985. ...


Teaching Real-World Programming

In BLOG@CACM (January 2013)

Exceptional C++



Exceptional C++ shows by example how to go about sound software engineering in standard C++. Do you enjoy solving thorny C++ problems and puzzles? Do you relish writing robust and extensible code? Then take a few minutes and challenge yourself with some tough C++ design and programming problems. The puzzles and problems in Exceptional C++ not only entertain, they will help you hone your skills to become the sharpest C++ programmer you can be. Many of these problems are culled from ...


Portability of Prolog programs: theory and case-studies

(20 Sep 2010)


(Non-)portability of Prolog programs is widely considered as an important factor in the lack of acceptance of the language. Since 1995, the core of the language is covered by the ISO standard 13211-1. Since 2007, YAP and SWI-Prolog have established a basic compatibility framework. This article describes and evaluates this framework. The aim of the framework is running the same code on both systems rather than migrating an application. We show that today, the portability within the family of Edinburgh/Quintus derived Prolog implementations is good enough to allow ...


Conformity assessment I; Syntax

No. ISO/IEC JTC1 SC22 WG17. (2012)

On the portability of Prolog applications

In Practical Aspects of Declarative Languages, Vol. 6539 (2011), pp. 69-83,


The non-portability of Prolog programs is widely considered one of the main problems facing Prolog programmers. Although since 1995, the core of the language is covered by the ISO standard 13211-1, this standard has not been sufficient to support large Prolog applications. As an approach to address this problem, since 2007, YAP and SWI-Prolog have established a basic compatibility framework. The aim of the framework is running the same code on Edinburgh-based Prolog systems rather than having to migrate an application. ...


Computer programming as an art

Communications of the ACM, Vol. 17, No. 12. (1 December 1974), pp. 667-673,


When Communications of the ACM began publication in 1959, the members of ACM's Editorial Board made the following remark as they described the purposes of ACM's periodicals [2]: “If computer programming is to become an important part of computer research and development, a transition of programming from an art to a disciplined science must be effected.” Such a goal has been a continually recurring theme during the ensuing years; for example, we read in 1970 of the “first steps toward transforming ...


A comparative evaluation of Matlab, Octave, FreeMat, Scilab, R, and IDL on tara

No. HPCF-2012-15. (2012)


Matlab is the most popular commercial package for numerical computations in mathematics, statistics, the sciences, engineering, and other fields. IDL, a commercial package used for data analysis, along with the free numerical computational packages Octave, FreeMat, Scilab, and the statistical package R shares many of the same features as Matlab. They are available to download on the Linux, Windows, and Mac OS X operating systems. We investigate whether these packages are viable alternatives to Matlab for uses in research and teaching. ...


Neuro-dynamic programming

(01 May 1999)


This is the first textbook that fully explains the neuro-dynamic programming/reinforcement learning methodology, which is a recent breakthrough in the practical application of neural networks and dynamic programming to complex problems of planning, optimal decision making, and intelligent control. [\n] Neuro-dynamic programming uses neural network approximations to overcome the "curse of dimensionality" and the "curse of modeling" that have been the bottlenecks to the practical application of dynamic programming and stochastic control to complex problems. The methodology allows systems to learn ...

This page of the database may be cited as:
Integrated Natural Resources Modelling and Management - Meta-information Database.

Publication metadata

Bibtex, RIS, RSS/XML feed, Json, Dublin Core

Meta-information Database (INRMM-MiD).
This database integrates a dedicated meta-information database in CiteULike (the CiteULike INRMM Group) with the meta-information available in Google Scholar, CrossRef and DataCite. The Altmetric database with Article-Level Metrics is also harvested. Part of the provided semantic content (machine-readable) is made even human-readable thanks to the DCMI Dublin Core viewer. Digital preservation of the meta-information indexed within the INRMM-MiD publication records is implemented thanks to the Internet Archive.
The library of INRMM related pubblications may be quickly accessed with the following links.
Search within the whole INRMM meta-information database:
Search only within the INRMM-MiD publication records:
Full-text and abstracts of the publications indexed by the INRMM meta-information database are copyrighted by the respective publishers/authors. They are subject to all applicable copyright protection. The conditions of use of each indexed publication is defined by its copyright owner. Please, be aware that the indexed meta-information entirely relies on voluntary work and constitutes a quite incomplete and not homogeneous work-in-progress.
INRMM-MiD was experimentally established by the Maieutike Research Initiative in 2008 and then improved with the help of several volunteers (with a major technical upgrade in 2011). This new integrated interface is operational since 2014.