The Newtonscript Programming Language

Total Page:16

File Type:pdf, Size:1020Kb

The Newtonscript Programming Language ð The NewtonScript Programming Language Apple Computer, Inc. Apple Computer, Inc. ALL IMPLIED WARRANTIES ON © 1996, Apple Computer, Inc. 20525 Mariani Avenue THIS MANUAL, INCLUDING All rights reserved. Cupertino, CA 95014 IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS No part of this publication or the 408-996-1010 FOR A PARTICULAR PURPOSE, ARE software described in it may be Apple, the Apple logo, APDA, LIMITED IN DURATION TO NINETY reproduced, stored in a retrieval AppleLink, LaserWriter, (90) DAYS FROM THE DATE OF THE system, or transmitted, in any form Macintosh, and Newton are ORIGINAL RETAIL PURCHASE OF or by any means, mechanical, trademarks of Apple Computer, THIS PRODUCT. electronic, photocopying, Inc., registered in the United States recording, or otherwise, without and other countries. Even though Apple has reviewed this prior written permission of Apple The light bulb logo, MessagePad, manual, APPLE MAKES NO Computer, Inc., except in the normal NewtonScript, and Newton Toolkit WARRANTY OR REPRESENTATION, use of the software or to make a are trademarks of Apple Computer, EITHER EXPRESS OR IMPLIED, backup copy of the software. The Inc. WITH RESPECT TO THIS MANUAL, same proprietary and copyright ITS QUALITY, ACCURACY, Adobe Illustrator and PostScript notices must be affixed to any MERCHANTABILITY, OR FITNESS are trademarks of Adobe Systems permitted copies as were affixed to FOR A PARTICULAR PURPOSE. AS A Incorporated, which may be the original. This exception does not RESULT, THIS MANUAL IS SOLD registered in certain jurisdictions. allow copies to be made for others, “AS IS,” AND YOU, THE whether or not sold, but all of the FrameMaker is a registered PURCHASER, ARE ASSUMING THE material purchased (with all trademark of Frame Technology ENTIRE RISK AS TO ITS QUALITY backup copies) may be sold, given, Corporation. AND ACCURACY. Helvetica and Palatino are or loaned to another person. Under IN NO EVENT WILL APPLE BE registered trademarks of Linotype the law, copying includes LIABLE FOR DIRECT, INDIRECT, Company. translating into another language or SPECIAL, INCIDENTAL, OR format. You may use the software on ITC Zapf Dingbats is a registered CONSEQUENTIAL DAMAGES any computer owned by you, but trademark of International RESULTING FROM ANY DEFECT OR extra copies cannot be made for this Typeface Corporation. INACCURACY IN THIS MANUAL, purpose. Simultaneously published in the even if advised of the possibility of Printed in the United States of United States and Canada. such damages. America. THE WARRANTY AND REMEDIES The Apple logo is a registered SET FORTH ABOVE ARE EXCLUSIVE trademark of Apple Computer, Inc. AND IN LIEU OF ALL OTHERS, Use of the “keyboard” Apple logo ORAL OR WRITTEN, EXPRESS OR (Option-Shift-K) for commercial IMPLIED. No Apple dealer, agent, or purposes without the prior written employee is authorized to make any consent of Apple may constitute modification, extension, or addition to trademark infringement and unfair LIMITED WARRANTY ON MEDIA this warranty. competition in violation of federal AND REPLACEMENT and state laws. Some states do not allow the exclusion No licenses, express or implied, are If you discover physical defects in the or limitation of implied warranties or granted with respect to any of the manual or in the media on which a liability for incidental or consequential technology described in this book. software product is distributed, APDA damages, so the above limitation or Apple retains all intellectual will replace the media or manual at no exclusion may not apply to you. This property rights associated with the charge to you provided you return the warranty gives you specific legal rights, technology described in this book. item to be replaced with proof of and you may also have other rights This book is intended to assist purchase to APDA. which vary from state to state. application developers to develop applications only for licensed Newton platforms. 11/95 Contents Figures, Tables, and Listings ix Preface About This Book xi About the Audience xi Related Books xi Sample Code xii Conventions Used in This Book xiii Special Fonts in Text xiii Syntax Conventions xiv Developer Products and Support xv Undocumented System Software Objects xvi Chapter 1 Overview 1-1 Introduction 1-1 Semantic Overview 1-2 Expressions 1-2 The Object Model 1-2 Data Types and Classes 1-3 Scope 1-4 Extent 1-6 Garbage Collection 1-6 How Is NewtonScript Dynamic? 1-7 Basic Syntax 1-8 Semicolon Separators 1-8 In-Line Object Syntax 1-9 Character Set 1-9 Comments 1-10 A Code Example 1-10 Compatibility 1-11 iii Chapter 2 Objects, Expressions, and Operators 2-1 Objects and the Class System 2-1 Classes and Subclasses 2-3 Immediate and Reference Values 2-5 The NewtonScript Objects 2-8 Character 2-8 Boolean 2-9 Integer 2-10 Real 2-11 Symbol 2-12 String 2-13 Array 2-15 Array Accessor 2-16 Frame 2-17 Frame Accessor 2-19 Path Expression 2-20 Expressions 2-22 Variables 2-23 Local 2-23 Constants 2-26 Constant 2-26 Quoted Constant 2-28 Operators 2-29 Assignment Operator 2-29 Arithmetic Operators 2-31 Equality and Relational Operators 2-33 Boolean Operators 2-34 Unary Operators 2-35 String Operators 2-36 Exists 2-37 Operator Precedence 2-38 iv Chapter 3 Flow of Control 3-1 Compound Expressions 3-1 If…Then…Else 3-2 Iterators 3-3 For 3-4 Foreach 3-6 Loop 3-10 While 3-11 Repeat 3-12 Break 3-13 Exception Handling 3-13 Working with Exceptions 3-14 Defining Exceptions 3-15 Exception Symbol Parts 3-16 Exception Frames 3-16 The Try Statement 3-18 Throwing Exceptions 3-19 Throwing an Exception to Another Handler 3-20 Catching Exceptions 3-21 Responding to Exceptions 3-24 Chapter 4 Functions and Methods 4-1 About Functions and Methods 4-1 Function Constructor 4-2 Return 4-3 Function Invocations 4-3 Message-Send Operators 4-4 Call With 4-6 Global Function Declaration 4-7 Global Function Invocation 4-8 Passing Parameters 4-8 v Function Objects 4-9 Function Context 4-10 The Lexical Environment 4-10 The Message Environment 4-11 An Example Function Object 4-13 Using Function Objects to Implement Abstract Data Types 4-15 Native Functions 4-16 Chapter 5 Inheritance and Lookup 5-1 Inheritance 5-2 Prototype Inheritance 5-2 Creating Prototype Frames 5-2 Prototype Inheritance Rules 5-3 Parent Inheritance 5-4 Creating Parent Frames 5-4 Parent Inheritance Rules 5-5 Combining Prototype and Parent Inheritance 5-6 Inheritance Rules for Slot and Message Lookup 5-7 Inheritance Rules for Testing for the Existence of a Slot 5-9 Inheritance Rules for Setting Slot Values 5-9 An Object-Oriented Example 5-11 Chapter 6 Built-In Functions 6-1 Compatibility 6-2 New Functions 6-2 New Object System Functions 6-2 New String Functions 6-3 New Array Functions 6-3 New Sorted Array Functions 6-3 New Message Sending Functions 6-4 vi New Data Stuffing Functions 6-4 New Functions to Get and Set Globals 6-4 New Miscellaneous Functions 6-4 Obsolete Functions 6-5 Object System Functions 6-5 String Functions 6-16 Bitwise Functions 6-23 Array Functions 6-23 Sorted Array Functions 6-36 Integer Math Functions 6-45 Floating Point Math Functions 6-48 Managing the Floating Point Environment 6-65 Financial Function 6-69 Exception Functions 6-71 Message Sending Functions 6-73 Data Extraction Functions 6-77 Data Stuffing Functions 6-81 Getting and Setting Global Variables and Functions 6-86 Miscellaneous Functions 6-89 Summary of Functions and Methods 6-92 Appendix A Reserved Words A-1 Appendix B Special Character Codes B-1 Appendix C Class-Based Programming C-1 What Are Classes Good For? C-1 Classes: A Brief Reminder C-2 Inheritance in NewtonScript C-3 vii The Basic Idea C-3 Practical Issues C-6 Class Variables C-7 Superclasses C-9 Using Classes to Encapsulate Soup Entries C-10 ROM Instance Prototypes C-10 Leaving Instances Behind C-11 Conclusion C-11 Appendix D NewtonScript Syntax Definition D-1 About the Grammar D-2 Phrasal Grammar D-2 Lexical Grammar D-12 Operator Precedence D-16 Appendix E Quick Reference Card E-1 Glossary GL-1 Index IN-1 viii Figures, Tables, and Listings Chapter 1 Overview 1-1 Figure 1-1 A sample data structure 1-4 Listing 1-1 A simple frame 1-3 Listing 1-2 A dynamic example 1-11 Chapter 2 Objects, Expressions, and Operators 2-1 Figure 2-1 NewtonScript built-in classes 2-3 Figure 2-2 NewtonScript code sample 2-6 Figure 2-3 C code sample 2-7 Table 2-1 Characters with special meanings 2-9 Table 2-2 Codes for specifying special characters within strings 2-14 Table 2-3 Special slot names and their specifications 2-19 Table 2-4 Constant substitution work-arounds 2-27 Table 2-5 Operator precedence and associativity 2-39 Chapter 3 Flow of Control 3-1 Figure 3-1 Data objects and their relationships 3-9 Table 3-1 Result comparison for the iterators foreach and foreach deeply 3-10 Table 3-2 Exception frame data slot name and contents 3-17 Table 3-3 Exception frame examples 3-17 Listing 3-1 Exception symbols 3-16 Listing 3-2 The Throw function 3-19 Listing 3-3 Several onexception clauses ordered improperly 3-22 ix Listing 3-4 The onexception clauses properly ordered 3-22 Listing 3-5 Improperly nested try blocks 3-23 Listing 3-6 Nested try block problem fixed using begin and end (shown in bold) 3-23 Listing 3-7 Handling a soup store exception 3-24 Listing 3-8 An exception handler checking the exception frame 3-25 Chapter 4 Functions and Methods 4-1 Figure 4-1 The parts of a function object 4-10 Figure 4-2 functionObject1 dissected 4-14 Chapter 5 Inheritance and Lookup 5-1 Figure 5-1 A prototype frame 5-3 Figure 5-2 A prototype chain 5-4 Figure 5-3 Parent-child relationship 5-5 Figure 5-4 Prototype and parent inheritance interaction order 5-7 Figure 5-5 An inheritance structure 5-12 Chapter 6 Built-In Functions 6-1 Table 6-1 Floating point exceptions 6-65 Table 6-2 Exception frame data slot name and contents 6-72 Appendix B Special Character Codes B-1 Table B-1 Character codes sorted by Macintosh character code B-1 Table B-2 Character codes sorted by Unicode B-7 x PREFACE About This Book The NewtonScript Programming Language is the definitive reference for anyone learning the NewtonScript programming language.
Recommended publications
  • 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]
  • Develop-21 9503 March 1995.Pdf
    develop E D I T O R I A L S T A F F T H I N G S T O K N O W C O N T A C T I N G U S Editor-in-Cheek Caroline Rose develop, The Apple Technical Feedback. Send editorial suggestions Managing Editor Toni Moccia Journal, a quarterly publication of or comments to Caroline Rose at Technical Buckstopper Dave Johnson Apple Computer’s Developer Press AppleLink CROSE, Internet group, is published in March, June, [email protected], or fax Bookmark CD Leader Alex Dosher September, and December. develop (408)974-6395. Send technical Able Assistants Meredith Best, Liz Hujsak articles and code have been reviewed questions about develop to Dave Our Boss Greg Joswiak for robustness by Apple engineers. Johnson at AppleLink JOHNSON.DK, His Boss Dennis Matthews Internet [email protected], CompuServe This issue’s CD. Subscription issues Review Board Pete “Luke” Alexander, Dave 75300,715, or fax (408)974-6395. Or of develop are accompanied by the Radcliffe, Jim Reekes, Bryan K. “Beaker” write to Caroline or Dave at Apple develop Bookmark CD. The Bookmark Ressler, Larry Rosenstein, Andy Shebanow, Computer, Inc., One Infinite Loop, CD contains a subset of the materials Gregg Williams M/S 303-4DP, Cupertino, CA 95014. on the monthly Developer CD Series, Contributing Editors Lorraine Anderson, which is available from APDA. Article submissions. Ask for our Steve Chernicoff, Toni Haskell, Judy Included on the CD are this issue and Author’s Guidelines and a submission Helfand, Cheryl Potter all back issues of develop along with the form at AppleLink DEVELOP, Indexer Marc Savage code that the articles describe.
    [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]
  • 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]
  • Socialize the Brand
    Executive Summary: The CMO’s Social Media Handbook Chapter 4: Socialize the Brand When marketing = the integration of brand and culture in the service of a human experience. In this executive summary, we provide a summary of the fourth chapter of Peter Friedman’s new book, “The CMO’s Social Media Handbook”. You have made the decision to use social media as a part of your marketing efforts. You have an idea of the team you need, and you know how you will measure your performance. This chapter provides the next steps for your brand or company’s social media plan to create your social brand identity and ensure it is connected to your business goals. SUMMARY The role of social has been clarified, and you have committed social media program and the social marketing mix used to do it right with dedicated focus and resources, so it’s by the brand. time to connect your business goals to social media. This starts with thinking about what it means to take your brand To find its social identity, a brand must establish high- social. A truly socialized brand has social at its core a level goals. From there, the Social Brand Identity Program culture that feeds from social into every other touchpoint— concentrates on socializing the brand, a process that is ads, promotions, retail, direct messaging, events, digital, made up of three parts that are detailed in the book: PR, and products themselves. Develop a socialized brand identity and It’s up to the company to create the social brand identity, 1 culture.
    [Show full text]
  • Compileit! •••.••....•.••.••••.•.•..•...••.•.....•.• 119
    Compilelt! The XCMD Development System The XCMD Development System User Manual For Technical Support Call 510-943-7667 Monday-Friday, 9 am - 5 pm Pacific time Helzer Software Compilelt! User Manual ©1990-94 Heizer Software. All Rights Reserved. Rev. 5/95 Copyright Notice You are permitted, even encouraged, to make one backup copy of the enclosed programs. Beyond that is piracy and illegal. The software (computer programs) you purchased are copyrighted by the author with all rights reserved. Under the copyright laws, the programs may not be copied, in whole or part, without the written consent of the copyright holder, except in the normal use of the software or to make a backup copy. This exception does not allow copies to be made for others, whether or not sold, but the material purchased (together with all backup copies) may be sold, given, or loaned to another party. Under the law, copying includes translating into another language or format. You may use the software on any computer owned by you, but extra copies cannot be made for this purpose. If you have several computers requiring the use of this software, we are prepared to discuss a multi-use or site license with you. Compilelt! ©1989-1994 Tom Pittman. All Rights Reserved. Debuglt! ©1991-1994 Tom Pittman. All Rights Reserved. Compilelt! User Manual ©1990-94 Heizer Software. All Rights Reserved. No part of this document and the software product that it documents may be photocopied, reproduced, or translated to another language without the express, written consent of the copyright holders. The information contained in this document is subject to change without notice.
    [Show full text]
  • Develop-22 9506 June 1995.Pdf
    develop E D I T O R I A L S T A F F T H I N G S T O K N O W C O N T A C T I N G U S Editor-in-Cheek Caroline Rose develop, The Apple Technical Feedback. Send editorial suggestions Managing Editor Toni Moccia Journal, a quarterly publication of or comments to Caroline Rose at Technical Buckstopper Dave Johnson Apple Computer’s Developer Press AppleLink CROSE, Internet group, is published in March, June, [email protected], or fax Bookmark CD Leader Alex Dosher September, and December. develop (408)974-6395. Send technical Able Assistant Meredith Best articles and code have been reviewed questions about develop to Dave Our Boss Greg Joswiak for robustness by Apple engineers. Johnson at AppleLink JOHNSON.DK, His Boss Dennis Matthews Internet [email protected], CompuServe This issue’s CD. Subscription issues Review Board Pete “Luke” Alexander, Dave 75300,715, or fax (408)974-6395. Or of develop are accompanied by the Radcliffe, Jim Reekes, Bryan K. “Beaker” write to Caroline or Dave at Apple develop Bookmark CD. This CD contains Ressler, Larry Rosenstein, Andy Shebanow, Computer, Inc., 1 Infinite Loop, M/S a subset of the materials on the monthly Gregg Williams 303-4DP, Cupertino, CA 95014. Developer CD Series, available from Contributing Editors Lorraine Anderson, APDA. Included on the CD are this Article submissions. Ask for our Steve Chernicoff, Toni Haskell, Jody Larson, issue and all back issues of develop along Author’s Guidelines and a submission Cheryl Potter with the code that the articles describe.
    [Show full text]
  • The Self-4.0 User Interface: Manifesting a System-Wide Vision of Concreteness, Uniformity, and Flexibility
    The Self-4.0 User Interface: Manifesting a System-wide Vision of Concreteness, Uniformity, and Flexibility Randall B. Smith, John Maloney†, and David Ungar Sun Microsystems Laboratories 2550 Casey Ave. MTV29-116 Mountain View, CA 94043 [email protected], [email protected], [email protected] Abstract ming systems seem pretty awkward and abstruse by comparison. Manipulating programs is hard, while manipulating Of course it would be a difficult and dubious objects in the physical world is often easy. Several attributes of the physical world help make it compre- effort to literally replicate the physical world in the hensible and manipulable: concreteness, uniformity, computer. But embodying key elements of our physi- and flexibility. The Self programming system cal reality might bring benefits to the computing attempts to apply these attributes to the world within experience. The rise of object-oriented programming the computer. The semantics of the language, the may be viewed as the outcome of an effort to allow efficiency and fidelity of its implementation, and the computers to more directly model physical systems. architecture of its user interface conspire to make the experience of constructing programs in Self immedi- However, even object-oriented programming sys- ate and tangible. We describe the mechanisms used tems don’t really give you anything like that real- to achieve this goal, and illustrate those mechanisms world sense of obvious straightforwardness, that within the context of an extended programming task. sense of immediacy. We believe something more can be found by reexamining the essence of physical sys- tems. I. Introduction Three important characteristics of physical reality that are not truly present in most program- There is a satisfying directness in working ming systems, even object-oriented ones, are con- with physical objects.
    [Show full text]
  • QD GX Printing 1994.Pdf
    INSIDE MACINTOSH QuickDraw GX Printing Addison-Wesley Publishing Company Reading, Massachusetts Menlo Park, California New York Don Mills, Ontario Wokingham, England Amsterdam Bonn Sydney Singapore Tokyo Madrid San Juan Paris Seoul Milan Mexico City Taipei Apple Computer, Inc. ITC Zapf Dingbats is a registered LIMITED WARRANTY ON MEDIA AND © 1994 Apple Computer, Inc. trademark of International Typeface REPLACEMENT Corporation. All rights reserved. ALL IMPLIED WARRANTIES ON THIS No part of this publication may be Optrotech is a trademark of Orbotech MANUAL, INCLUDING IMPLIED reproduced, stored in a retrieval Corporation. WARRANTIES OF MERCHANTABILITY system, or transmitted, in any form or Simultaneously published in the United AND FITNESS FOR A PARTICULAR by any means, mechanical, electronic, States and Canada. PURPOSE, ARE LIMITED IN DURATION photocopying, recording, or otherwise, TO NINETY (90) DAYS FROM THE DATE without prior written permission of OF THE ORIGINAL RETAIL PURCHASE Apple Computer, Inc. Printed in the OF THIS PRODUCT. United States of America. Even though Apple has reviewed this No licenses, express or implied, are manual, APPLE MAKES NO WARRANTY granted with respect to any of the OR REPRESENTATION, EITHER EXPRESS technology described in this book. OR IMPLIED, WITH RESPECT TO THIS Apple retains all intellectual property MANUAL, ITS QUALITY, ACCURACY, rights associated with the technology MERCHANTABILITY, OR FITNESS FOR A described in this book. This book is PARTICULAR PURPOSE. AS A RESULT, intended to assist application THIS MANUAL IS SOLD “AS IS,” AND developers to develop applications only YOU, THE PURCHASER, ARE ASSUMING for Apple Macintosh computers. THE ENTIRE RISK AS TO ITS QUALITY Every effort has been made to ensure AND ACCURACY.
    [Show full text]
  • First Class P E R I P H E R a L S
    FIRST CLASS P E R I P H E R A L S THE SIDER GS/OS HARD DISK DRIVERS INSTALLATION I USER GUIDE SIDER GS/OS Hard Disk Device Drivers for use with the Sider Family of Drives Installation I Users Guide Part Number 103854 REVISION A PREFACE The following manual contains instructions for installing the FIRST CLASS PERIPHERALS’ custom OS/OS device drives for the Sider family of hard drives running with the APPLE has. The instructions in the manual assume you have a working knowledge of the APPLE system. COPYRIGHT INFORMATION © Copyright 1989 By FIRST CLASS PERIPHERAlS All lights reserved. This publication contains proprietary information that is pro- tected by copyright. No part of this publication may be reproduced, transcribed, stored in a retrieval system, translated into any language or computer language, or transmitted in any form whatsoever without prior written consent of FIRST CLASS PERIPHERALS. For information contact: FIRST CLASS PERIPHERALS 3579 HIGHWAY 50 EAST CARSON CITY, NEVADA 89701 702-883-2500 702-883-8200 24 hour bulletin board 702-883.9264 (set modem to 8-n-1 {bands supported 2400,1200,300}) COMPUSERVE APPLE VENDORS FORUM (When in COMPUSERVE enter ‘GO APPVEND’ and you will find us under sub-topic 6) TRADEMARK INFORMATION Sider, Sider D2, Sider D4, Sider D4A, Sider D4T, Sider C46, Sider D9, Sider C96 SiderFile, Siderware, are Copyrights of FIRST CLASS PERIPHERALS, INC. Apple, Apple //e, Apple IIGS, are all trademarks and Copyrights of Apple Computer Inc. ProSel, Copyright 1988 of Glen Bredon. 521 State Road, Princeton, NJ. 08540 Table of Contents 1.
    [Show full text]
  • Comparative Programming Languages CM20253
    We have briefly covered many aspects of language design And there are many more factors we could talk about in making choices of language The End There are many languages out there, both general purpose and specialist And there are many more factors we could talk about in making choices of language The End There are many languages out there, both general purpose and specialist We have briefly covered many aspects of language design The End There are many languages out there, both general purpose and specialist We have briefly covered many aspects of language design And there are many more factors we could talk about in making choices of language Often a single project can use several languages, each suited to its part of the project And then the interopability of languages becomes important For example, can you easily join together code written in Java and C? The End Or languages And then the interopability of languages becomes important For example, can you easily join together code written in Java and C? The End Or languages Often a single project can use several languages, each suited to its part of the project For example, can you easily join together code written in Java and C? The End Or languages Often a single project can use several languages, each suited to its part of the project And then the interopability of languages becomes important The End Or languages Often a single project can use several languages, each suited to its part of the project And then the interopability of languages becomes important For example, can you easily
    [Show full text]
  • The Evolution of Lua
    The Evolution of Lua Roberto Ierusalimschy Luiz Henrique de Figueiredo Waldemar Celes Department of Computer Science, IMPA–Instituto Nacional de Department of Computer Science, PUC-Rio, Rio de Janeiro, Brazil Matematica´ Pura e Aplicada, Brazil PUC-Rio, Rio de Janeiro, Brazil [email protected] [email protected] [email protected] Abstract ing languages offer associative arrays, in no other language We report on the birth and evolution of Lua and discuss how do associative arrays play such a central role. Lua tables it moved from a simple configuration language to a versatile, provide simple and efficient implementations for modules, widely used language that supports extensible semantics, prototype-based objects, class-based objects, records, arrays, anonymous functions, full lexical scoping, proper tail calls, sets, bags, lists, and many other data structures [28]. and coroutines. In this paper, we report on the birth and evolution of Lua. We discuss how Lua moved from a simple configuration Categories and Subject Descriptors K.2 [HISTORY OF language to a powerful (but still simple) language that sup- COMPUTING]: Software; D.3 [PROGRAMMING LAN- ports extensible semantics, anonymous functions, full lexical GUAGES] scoping, proper tail calls, and coroutines. In §2 we give an overview of the main concepts in Lua, which we use in the 1. Introduction other sections to discuss how Lua has evolved. In §3 we re- late the prehistory of Lua, that is, the setting that led to its Lua is a scripting language born in 1993 at PUC-Rio, the creation. In §4 we relate how Lua was born, what its original Pontifical Catholic University of Rio de Janeiro in Brazil.
    [Show full text]