Classifying Prototype-Based Programming Languages

Total Page:16

File Type:pdf, Size:1020Kb

Classifying Prototype-Based Programming Languages Classifying Prototyp ebased Programming Languages C Dony J Malenfant and D Bardou 1 LIRMM Universite de Montp ellier II rue Ada Montp ellier Cedex France Email donylirmmfr 2 URVALORIA Universite de Bretagne sud CGU de Vannes rue de la Loi Vannes France Email JacquesMalenfantunivubsfr Abstract The prototyp ebased programming mo del has always b een dicult to characterize precisely Prototyp ebased languages are all based on a similar set of basic principles yet they all dier in their precise in terpretation of these principles Moreover if the prototyp ebased mo del advo cates concrete ob jects as the only mean to mo del concepts cur rent languages promote metho dologies reintro ducing abstract construc tions to manage eciently groups of similar ob jects In the past we have prop osed two classications of delegationbased languages in or der to clarify these issues In the present pap er we come back to these two classications in the light of our recent work The rst classication lo oks at the primitives of the virtual machine underlying each language it classies languages according to the semantics of these primitives The second considers the grouporiented constructions provided in each language it classies languages according to the level of abstractness of these constructions The two classications complements each others and also other existing classications They allow p eople to assess more precisely the relative merits of the dierent languages Intro duction A prototyp e is a typical memb er used to represent a family or a category of ob jects Prototyp ebased languages prop ose a vision of ob jectoriented pro gramming based on the notion of prototyp e Since the middle of the eightees numerous prototyp ebased languages have b een designed and implemented self kevo agora garnet moostrap cecil omega newtonscript Other languages such as object lisp or yafool not qualied as prototyp ebased nevertheless oer closely related mechanisms or use prototyp es at the implementation level Finally sys tems mixing prototyp es and classes have also b een prop osed A very general and informal characterization of prototyp ebased languages is rather simple they prop ose a world in which there is one kind of ob jects equip ed with attributes and metho ds three primitives to create ob jects creation ex 1 We use that term to denote a structural characteristic of an ob ject or frame nihilo cloning and extension dierential copy and one control structure mes sage sending together with a delegation mechanism Beyond this generalization all these languages present slight yet profound and interesting dierences They are dierent b ecause they have b een develop ed for dierent application domains They are dierent b ecause they have b een inspired on the one hand by the earlier frame languages used in knowledge representation and on the other hand by actors languages used in distributed AI They are also dierent b ecause they have b een develop ed with dierent goals The rst goal was to provide simpler descriptions of ob jects Peoples nat ural way to grasp new concepts is generally to b egin by creating concrete examples rather than abstract descriptions classbased languages force p eo ple to work in the opp osite direction by creating abstractions classes prior concrete ob jects instances The second goal was to oer a simpler programming mo del with fewer con cepts and primitives Applications in the elds of userinterfaces and virtual reality have tried to escap e the traditional abstract data typ e mo del to move towards a less constrained one For these applications classes have b een considered as a source of complexity b ecause they are playing to o many roles The alternative solution is often based on the concept of pro totyp es more amenable to a form of programmingbyexample and providing an alternative to class instantiation and class inheritance The last goal was to oer new capabilities to represent knowledge Class based languages constrain ob jects by disallowing for example distinctive b ehavior for individual ob jects among their instances and by forbidding in heritance b etween ob jects to share values of instance variables Thus an exact and unique characterization of prototyp ebased programming raises a numb er of issues Current prototyp ebased languages dier in the semantics of ob ject representation ob ject creation ob ject encapsulation ob ject activation and ob ject inheritance There exists various interpretations of what is a prototyp e a concrete ob ject or an average representative of a concept which can lead to dierent languages The semantics of the basic mechanisms cloning dierential copy delegation is not unique and allows for dierent interpretations Dierential copy creates interdep endent ob jects and authorizes various in terpretations concerning the precise nature of the concept of ob ject they implement Finally some of the capabilities oered by classes for example the ability to express sharing at a conceptual level have revealed to b e so imp ortant for program organization that they have b een reintro duced in dierent ways So understanding each language b oth in terms of their expressive p ower and their applicability to sp ecic kinds of problems is not always easy The Frame Frame name whale name MobyDick category mammal isa whale environment sea color white enemy man enemy CptHaccab weight color blue Fig Dierential description Fig Example of Frame Treaty of Orlando prop oses a rst comparison of classbased and prototyp e based languages we go further by addressing more extensively the issues p ending the alternative semantics asso ciated to pure prototyp ebased languages and the level of abstration propsed by the dierent mecahnisms reintro ducing class func tionalities into prototyp edbased languages In the past we have prop osed two complementary classications to this end The goal of the present pap er is to come back to these two classications in order to present and explain their main classication criteria but also to complement them in the light of our recent work The rest of the p qp er is organized as follos Section recalls the genesis of prototyp ebased programming and thus prop oses a rst classication of lan guages Section prop oses a rst classication of prototyp ebased languages according to the vision their conceptor had on them Section presents the com parison criteria related to primitive op erations and mechanisms that constitute a prototyp ebased language virtual machine Section presents the comparison criteria related to how programs written in prototyp ebased languages are orga nized Section prop oses the two classications of languages according to the previously dened criteria Genesis of the Prototyp eBased Programming Mo del To understand the genesis of ideas is a rst imp ortant step in a classication pro cess This section recalls how framebased and actor languages have inuenced prototyp ebased ones Prototyp es and knowledge representation The concepts of prototyp e and dierential description can b e found in the frame theory and in some systems inspired from this theory such as the framebased languages krl or frl Frames have b een designed as an alternative way to represent knowledge such as typicality default values or exceptions which are dicult to describ e in other formalisms Framebased languages use the prototyp es theory and they have inuenced some prototyp ebased languages Structure A frame is a set of attributes Each attribute represents one characteristic of the frame and is made of a couple attribute name set of facets The most common facet and the only one considered in our examples is the attributes value The gure shows a denition of a frame representing a whale Dierential description Dierential description makes it p ossible to cre ate a new frame by only expressing the dierences from an existing one The dierential description creates a relation b etween the new frame and the former its prototyp e or parent This relation is implemented by a link generally called isa The gure shows the denition of a frame representing MobyDick which lo oks like the ab ove whale but is white and has a sp ecic enemy Frame hierarchies and inheritance The isa relation is an order rela tion that denes frame hierarchies A frame can inherit from its parent a set of attributes Framebased systems prop ose inheritance hierarchies made of representatives of concepts which are conceptually very similar to those built later with prototyp ebased systems One can generally nd at the top of those hierarchies average representatives such as whale and at the b ottom concrete representatives such as MobyDick What is tremendously imp ortant here is that what is shared are not descriptions as with class inheritance but rather concrete representations and so bindings of slots to values Actor languages To represent entities with classless ob jects has also b een prop osed in descrip tions of act although the pap ers related to this language dont mention neither the prototyp e concept nor its use in the earlier framebased languages act provides ob jects and mechanisms conceptually close to those describ ed ab ove and part of the fundamental characteristics of to days prototyp ebased language From our p oint of view the main dierence b etween the framebased lan guage krl quoted ab ove and act is that act is a programming and not a representation language Actors thus have attributes acquointances and a set of b ehavior We will use the term metho d to denote the representation
Recommended publications
  • A Low-Cost Printed Circuit Board Design Technique and Processes Using Ferric Chloride Solution
    Nigerian Journal of Technology (NIJOTECH) Vol. 39, No. 4, October 2020, pp. 1223 – 1231 Copyright© Faculty of Engineering, University of Nigeria, Nsukka, Print ISSN: 0331-8443, Electronic ISSN: 2467-8821 www.nijotech.com http://dx.doi.org/10.4314/njt.v39i4.31 A LOW-COST PRINTED CIRCUIT BOARD DESIGN TECHNIQUE AND PROCESSES USING FERRIC CHLORIDE SOLUTION C. T. Obe1, S. E. Oti 2, C. U. Eya3,*, D. B. N. Nnadi4 and O. E. Nnadi 5 1, 2, 3, 4, DEPT. OF ELECTRICAL ENGINEERING, UNIVERSITY OF NIGERIA NSUKKA, ENUGU STATE, NIGERIA 5, ENUGU ELECTRICITY DISTRIBUTION CO. (EEDC), 62 OKPARA AVENUE ENUGU, ENUGU STATE, NIGERIA E-mail addresses: 1 [email protected] , 2 [email protected] , 3 [email protected], 4 [email protected] , 5 [email protected] ABSTRACT This paper presents a low-cost printed circuit board (PCB) design technique and processes using ferric chloride (푭풆푪풍ퟑ) solution on a metal plate for a design topology. The PCB design makes a laboratory prototype easier by reducing the work piece size, eliminating the ambiguous connecting wires and breadboards circuit errors. This is done by manual etching of the designed metal plate via immersion in ferric chloride solutions for a given time interval 0-15mins. With easy steps, it is described on how to make a conventional single-sided printed circuit board with low-cost, time savings and reduced energy from debugging. The simulation and results of the printed circuit is designed and verified in the Multisim software version 14.0 and LeCroy WJ35A oscilloscope respectively.
    [Show full text]
  • The Software Engineering Prototype
    Calhoun: The NPS Institutional Archive Theses and Dissertations Thesis Collection 1983 The software engineering prototype. Kirchner, Michael R. Monterey, California. Naval Postgraduate School http://hdl.handle.net/10945/19989 v':''r'r' 'iCj:.VV',V«',."'''j-i.'','I /" .iy NAVAL POSTGRADUATE SCHOOL Monterey, California THESIS THE SOFTWARE ENGINEERING PROTOTYPE by Michael R. Kirchner June 1983 Th€isis Advisor: Gordon C. Howe 11 Approved for public release; distribution unlimited T210117 t*A ^ Monterey, CA 93943 SECURITY CUASSIPICATION OP THIS PAGE (Wht\ Dmtm Enturmd) READ INSTRUCTIONS REPORT DOCUMENTATION PAGE BEFORE COMPLETING FORM I. REPOHT NUMBER 2. GOVT ACCESSION NO. 3. RECIPIENT'S CATALOG NUMBER 4. TITLE (and Subtltlt) 5. TYPE OF REPORT & PE-RIOD COVERED The Software Engineering Prototype Master's Thesis 6. PERFORMING ORG. REPORT NUMBER 7. AUTHORr«> a. CONTRACT OR GRANT NUMBERr*; Michael R. Kirchner • • PeRFORMINOOROANIZATION NAME AND ADDRESS 10. PROGRAM ELEMENT. PROJECT, TASK AREA & WORK Naval Postgraduate School UNIT NUMBERS Monterey, California 93940 II. CONTROLLING Or^lCE NAME AND ADDRESS 12. REPORT DATE Naval Postgraduate School June, 1983 Monterey, California 13. NUMBER OF PAGES 100 U. MONITORING AGENCY NAME ft AODRESSCi/ d<//*ran( Irom ConUoltlng Oltlem) 15. SECURITY CLASS, (of thia roport) UNCLASSIFIED 15«. DECLASSIFICATION/ DOWNGRADING SCHEDULE te. DISTRIBUTION STATEMENT (ol Ihit Report) Approved for public release; distribution unlimited 17. DISTRIBUTION STATEMENT (of lh» mtattmct anffd /n Block 30, It dlUartH /ram Rmport) le. SURRLEMENTARY NOTES 19. KEY WORDS fConlinu* on fvtf aid* It n»e»aaarr and Idantlty br block numbar) software engineering, software prototype, software design, design theories, software engineering environments, case studies, software development, information systems development, system development life cycle 20.
    [Show full text]
  • Ercatons and Organic Programming: Say Good-Bye to Planned Economy
    View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by Dagstuhl Research Online Publication Server Ercatons and Organic Programming: Say Good-Bye to Planned Economy Oliver Imbusch, Falk Langhammer and Guido von Walter Living Pages Research GmbH Kolosseumstrasse 1a, 80469 Munich, Germany {flabes|falk|guido}@livis.com ABSTRACT 1. Motivation Organic programming (OP) is our proposed and already We are going to present an alternative way to develop soft- emerging programming model which overcomes some of ware. We followed this idea starting from some general the limitations of current practice in software development observations all the way down to a reference implementa- in general and of object-oriented programming (OOP) in tion which was then used in projects of sufficient size. This particular. Ercatons provide an implementation of the makes us trust into the initial idea to the point that we may model. In some respects, OP is less than a (new) program- now be obsessed by it. Let us start by sharing some of the ming language, in others, it is more. An “ercato machine” general observations. implements the ideas discussed and has been used to vali- We start with this trivial anecdote. date the concepts described here. “One morning, we noticed some workers tile our office's Organic programming is centered around the concept of a backyard. The day before, piles of square tiles had been true “Thing”. A thing in an executing software system is delivered and the workers now seemed to make good prog- bound to behave the way an autonomous object does in our ress covering the backyard's middle section.
    [Show full text]
  • Software Prototyping Rapid Software Development to Validate Requirements
    FSE Foundations of software engineering Software Prototyping Rapid software development to validate requirements G51FSE Monday, 20 February 12 Objectives To describe the use of prototypes in different types of development project To discuss evolutionary and throw-away prototyping To introduce three rapid prototyping techniques - high-level language development, database programming and component reuse To explain the need for user interface prototyping FSE Lecture 10 - Prototyping 2 Monday, 20 February 12 System prototyping Prototyping is the rapid development of a system In the past, the developed system was normally thought of as inferior in some way to the required system so further development was required Now, the boundary between prototyping and normal system development is blurred Many systems are developed using an evolutionary approach FSE Lecture 10 - Prototyping 3 Monday, 20 February 12 Why bother? The principal use is to help customers and developers understand the requirements for the system Requirements elicitation: users can experiment with a prototype to see how the system supports their work Requirements validation: The prototype can reveal errors and omissions in the requirements Prototyping can be considered as a risk reduction activity which reduces requirements risks FSE Lecture 10 - Prototyping 4 Monday, 20 February 12 Prototyping bene!ts Misunderstandings between software users and developers are exposed Missing services may be detected and confusing services may be identi!ed A working system is available early in
    [Show full text]
  • Legal Metrology
    CanCan therethere bebe aa metrologymetrology forfor psychometricians?psychometricians? LucaLuca MariMari Università Cattaneo – LIUC, Italy BEAR Seminar, University of California, Berkeley Tuesday, January 31, 2017 AbstractAbstract Metrology -- the “science of measurement and its application” according to the International Vocabulary of Metrology (VIM) -- is a body of knowledge traditionally bound to the measurement of physical quantities, sometimes with the further specification that only high quality (in some sense to be agreed) measurement-related activities constitute actual metrology, as those performed in the US by the NIST. Given the social reputation of measurement, it is not amazing that there is a tension to continue the historical process of expanding such a still strict scope, where in particular under scrutiny is the necessity that the object of measurement is a physical quantity. Arguing about metrology is then a good opportunity to discuss of the very nature of measurement and its limits, between science, technology, mathematics, and society. MyMy profileprofile Luca Mari (MS in physics, University of Milano, Italy, 1987; Ph.D. in measurement science, Polytechnic of Torino, Italy, 1994) since 2006 has been a full professor of measurement science with Università Cattaneo - LIUC, Castellanza, Italy, where he teaches courses on measurement science, statistical data analysis, and system theory. He is currently the chairman of the TC1 (Terminology) and the secretary of the TC25 (Quantities and units) of the International Electrotechnical Commission (IEC), and an IEC expert in the WG2 (VIM) of the Joint Committee for Guides in Metrology (JCGM). He has been the chairman of the TC7 (Measurement Science) of the International Measurement Confederation (IMEKO).
    [Show full text]
  • Recalibration of the U.S. National Prototype Kilogram
    Journal of Research of the National Bureau of Standards Volume 90, Number 4, July-August 1985 Recalibration of the U .S. National Prototype Kilogram R. S. Davis National Bureau of Standards, Gaithersburg, MD 20899 Accepted: June 14, 1985 The U.S. national prototype kilogram, K20, and its check standard, K4, were recalibrated at the Bureau International des Poids et Mesures (BIPM). Both these kilograms are made of platinum-iridium alloy. Two additional kilograms, made of different alloys of stainless steel, were also included in the calibrations. The mass of K20 in 1889 was certified as being 1 kg-O.039 mg. Prior to the work reported below, K20 was most recently recalibrated at the BIPM in 1948 and certified as having a mass of I kg-O.OI9 mg. K4 had never been recalibrated. Its initial certification in 1889 stated its mass as I kg-O.075 mg. The work reported below establishes the new mass value of K20 as 1 kg-O.022 mg and that of K4 as I kg-O.106 mg. The new results are discussed in detail and an attempt is made to assess the long-term stability of the standards involved with a \iew toward assigning a realistic uncertainty to the measurements. Key words: International System of Units; kilogram unit; mass; national prototype kilograms; platinum­ iridium kilograms; stainless steel kilograms; standards of mass; Systeme International d'Unites. 1. Introduction gram artifacts ordered in 1878 from Johnson, Matthey and Company of London. Four years later, 40 more The International Prototype Kilogram (lPK), made replicas of the IPK were ordered; these eventually be­ of an alloy of 90% platinum and 10% iridium, is kept at coming the first national prototypes.
    [Show full text]
  • Weights and Measures Standards of the United States—A Brief History (1963), by Lewis V
    WEIGHTS and MEASURES STANDARDS OF THE UMIT a brief history U.S. DEPARTMENT OF COMMERCE NATIONAL BUREAU OF STANDARDS NBS Special Publication 447 WEIGHTS and MEASURES STANDARDS OF THE TP ii 2ri\ ii iEa <2 ^r/V C II llinCAM NBS Special Publication 447 Originally Issued October 1963 Updated March 1976 For sale by the Superintendent of Documents, U.S. Government Printing Office Wash., D.C. 20402. Price $1; (Add 25 percent additional for other than U.S. mailing). Stock No. 003-003-01654-3 Library of Congress Catalog Card Number: 76-600055 Foreword "Weights and Measures," said John Quincy Adams in 1821, "may be ranked among the necessaries of life to every individual of human society." That sentiment, so appropriate to the agrarian past, is even more appropriate to the technology and commerce of today. The order that we enjoy, the confidence we place in weighing and measuring, is in large part due to the measure- ment standards that have been established. This publication, a reprinting and updating of an earlier publication, provides detailed information on the origin of our standards for mass and length. Ernest Ambler Acting Director iii Preface to 1976 Edition Two publications of the National Bureau of Standards, now out of print, that deal with weights and measures have had widespread use and are still in demand. The publications are NBS Circular 593, The Federal Basis for Weights and Measures (1958), by Ralph W. Smith, and NBS Miscellaneous Publication 247, Weights and Measures Standards of the United States—a Brief History (1963), by Lewis V.
    [Show full text]
  • Dynamic, Instance-Based, Object-Oriented Programming in Max/Msp Using Open Sound Control Message Delegation
    Proceedings of the International Computer Music Conference 2011, University of Huddersfield, UK, 31 July - 5 August 2011 DYNAMIC, INSTANCE-BASED, OBJECT-ORIENTED PROGRAMMING IN MAX/MSP USING OPEN SOUND CONTROL MESSAGE DELEGATION Adrian Freed John MacCallum Andrew Schmeder CNMAT CNMAT CNMAT Dept. of Music Dept. of Music Dept. of Music UC Berkeley, CA 94709 UC Berkeley, CA 94709 UC Berkeley, CA 94709 [email protected] [email protected] [email protected] ABSTRACT oriented programming in Max–presumably because of the hegemony of statically-typed class-based object- A new media programming style is introduced that oriented programming invented in Simula (1962) and brings efficient run-time polymorphism, functional and still active in Objective-C, C++ and Java. instance-based object-oriented programming to Max/MSP and related visual dataflow languages. In 2007 the first author developed a suite of Max/MSP Examples are presented to illustrate new, unusual and patches, called “o.” (pronounced “Oh dot”). These were effective applications of the approach of using OSC specifically designed to exploit generic programming messages for object representations and data flow for (pioneered in Ada in 1980) to simplify and teach gesture method delegation. signal processing in physical computing contexts. This early prototype explored the use of OSC (Sections 2-3 1. INTRODUCTION of this paper), ad-hoc polymorphism and delegation Open Sound Control (OSC) was originally designed as a (Sections 4 and 6) for dynamic class-less object- message-passing format to facilitate exchange of control orientated programming (OOP) based on his experience parameters between programs on different computers developing music programs in prototype-based OOP across a network.
    [Show full text]
  • An Activity in Design for Manufacturability – Concept Generation Through Vol- Ume Production in Less Than Three Hours
    Paper ID #9232 An activity in design for manufacturability – concept generation through vol- ume production in less than three hours Dr. Paul O. Leisher, Rose-Hulman Institute of Technology Dr. Paul O. Leisher is an Associate Professor of Physics and Optical Engineering at Rose-Hulman Institute of Technology. Prior to joining Rose-Hulman in 2011, Dr. Leisher served as the Manager of Advanced Technology at nLight Corporation in Vancouver, Washington, where he worked for over four years. He received the B.S. degree in electrical engineering from Bradley University (Peoria, IL) in 2002. He received the M.S. and Ph.D. degrees in electrical and computer engineering from the University of Illinois at Urbana-Champaign in 2004 and 2007, respectively. Dr. Leisher’s research interests include the design, fabrication, characterization, and analysis of high power semiconductor lasers and other photonic devices. He has authored more than 160 technical journal articles and conference presentations. Dr. Leisher is a member of SPIE and the IEEE Photonics Society. Dr. Scott Kirkpatrick, Rose-Hulman Institute of Technology Scott Kirkpatrick is an Assistant Professor of Physics and Optical Engineering at Rose-Hulman Institute of Technology. He teaches physics, semiconductor processes, and micro electrical and mechanical sys- tems (MEMS). His research interests include heat engines, magnetron sputtering, and nanomaterial self assembly. His masters thesis work at the University of Nebraska Lincoln focused on reactive sputtering process control. His doctoral dissertation at the University of Nebraska Lincoln investigated High Power Impulse Magnetron Sputtering. Dr. Richard W. Liptak, Rose-Hulman Institute of Technology Dr. Sergio Granieri, Rose-Hulman Institute of Technology Dr.
    [Show full text]
  • Weights and Measures Standards of the United States
    r WEIGHTS and MEASURES STANDARDS OF THE C7 FTr^ E a brief history U.S. DEPARTMENT OF COMMERCE NATIONAL BUREAU OF STANDARDS Miscellaneous Pyblicataon 247 National Bureau of Standards MAY 2 0 1954 U.S. Prototype Kilogram 20, the standard of mass of the United States. U.S. Prototype Meter Bar 27, the standard of length of the United States from 1893 to I960. On October 14, I960, the meter was redefined in terms of a wavelength of the krypton 86 atom. EIGHTS and MEASURES S. DEPARTMENT STANDARDS F COMMERCE fhcr H. Hodges, Secretary OF THE MIONAL BUREAU F STAN D ARDS V. Astin, Director a brief history LEWIS V. iUDSON NBS Miscellaneous Publication 247 Issued October 1963 (Supersedes Scientific Paper No. 17 and Miscellaneous Publication No. 64) Fo^ sale by the Superintendent of Documents, U.S. Government Printing Office, Washinston, D.C., 20402 - 35 cents Preface In 1905, Louis A. Fischer, then a distinguished metrologist on the stafF of the National Bureau of Standards, presented a paper entitled "History of the Standard Weights and Measures of the United States" before the First Annual Meeting of the Sealers of Weights and Measures of the United States. This paper quickly came to be considered a classic in its field. It was published by the National Bureau of Standards several times— most recently in 1925 as Miscellaneous Publication 64. For some time it has been out of print and in need of up-to-date revision. The present publication covers the older historical material that Fischer so ably treated; in addition, it includes a brief summary of important later developments affecting the units and standards for length and mass.
    [Show full text]
  • Programming in Lua, Second Edition by Roberto Ierusalimschy
    Programming ROBERTO IERUSALIMSCHY in Lua 2nd edition Lua.org Last update: Wed Jan 13 12:07:33 UTC 2010 Programming in Lua Property of Ian Bloss <[email protected]> Property of Ian Bloss <[email protected]> Programming in Lua Second Edition Roberto Ierusalimschy PUC-Rio, Brazil Lua.org Rio de Janeiro Property of Ian Bloss <[email protected]> Programming in Lua, Second Edition by Roberto Ierusalimschy ISBN 85-903798-2-5 Copyright c 2006, 2003 by Roberto Ierusalimschy. All rights reserved. The author can be contacted at [email protected]. Book cover and illustrations by Dimaquina. Lua logo design by Alexandre Nako. Typesetting by the author using LATEX. Although the author used his best efforts preparing this book, he assumes no responsibility for errors or omissions, or for any damage that may result from the use of the information presented here. All product names mentioned in this book are trademarks of their respective owners. CIP – Biblioteca do Departamento de Informatica,´ PUC-Rio Ierusalimschy, Roberto I22 Programming in Lua / Roberto Ierusalimschy. – 2nd ed. – Rio de Janeiro, 2006. xviii, 308 p. : 25 cm. Includes index. ISBN 85-903798-2-5 1. Lua (Programming language). I. Title. 005.133 – dc20 Property of Ian Bloss <[email protected]> to Ida, Noemi, and Ana Lucia Property of Ian Bloss <[email protected]> Property of Ian Bloss <[email protected]> Contents Preface xiii I The Language 1 1 Getting Started 3 1.1 Chunks 4 1.2 Some Lexical Conventions 5 1.3 Global Variables 6 1.4 The Stand-Alone Interpreter 7 2 Types and Values
    [Show full text]
  • Design by Prototype: Examples from the National Aeronautics and Space Administration Gerald M
    Design by Prototype: Examples from the National Aeronautics and Space Administration Gerald M. Mulenburg and Daniel P. Gundo, National Aeronautics and Space Administration, Ames Research Center MS 273-74 Moffett Field CA 94035 Abstract: This paper describes and provides exa.mples of a technique called Design-by-Prototype used in the development of research hardware at the National Aeronautics and Space Administration's (NASA) Ames Research Center. This is not a new idea. Artisans and great masters have used prototyping as a design technique for centuries. They created prototypes to try out their ideas before making the primary artifact they were planning. This abstract is itself a prototype for others to use in determining the value of the paper .. it describes.-. At-.-: the Ames Research Center Design-by-Prototype is used for developing unique, one-of-a-kind hardware tor small, high-risk projects. The need tor this new/old process is the proliferation of computer "design tools" that can result in both excessive time expended in design, and a lack of imbedded reality in the final product. Despite creating beautiful three-dimensional models and detailed computer drawings that can consume hundreds of engineering hours, the resulting designs can be extremely difficult to make, requiring many changes that add to the cost and schedule. Much design time can be saved and expensive rework eliminated using Design-by-Prototype. Key Words: Prototype, prototyping, rapid-prototyping, design-by-prototype, prototype- uege-dnei ,,,,g~, product developmefit, iiew product development, piGjj.ect mafiagement, project design, project cycle-time. Introduction Is there anything new about project management as it relates to new product development? Project management is changing, but in this author's view, not fast enough and, according to Frame (2002),".
    [Show full text]