The Macintosh Programmer's Workshop

Total Page:16

File Type:pdf, Size:1020Kb

The Macintosh Programmer's Workshop The Macintosh Programmer’s Workshop Richard J. Meym and Jeff W. PaIrish,Apple Computer me Macintosh hen the Apple Macintosh was ming), a shell command language, and a introduced, it was clear that language for automating program builds. development WApple needed to provide acom- Originally developed for the Macintosh environment combines plete softwaredevelopmen t environment Plus, MPW now also runs on the Macin- for both itself and third-party developers. tosh SE and 11. a gPaphica1 intehce, The result was the Macintosh Program- This article focuses on the programde- Unix-like command mer’s Workshop.’ MPW includes a com- velopment environment rather than on IangUNe, and prehensive set of programming tools and the tools in that environment. Innovations handles several languages. It also com- not covered here include C and Pascal ex- immediate command bines the graphical interface common to tensions for extended-precision IEEE execution in any all Macintosh applications, a command floating-point numbers, tools to compile window. Here’s how language similar to the Unix shell lan- and decompile Macintosh resources (data guages, and Smalltalk’simmediate execu- structures used to describe menus, win- it works. tion of commands in any window. dows,and dialogues), and the MacApp ob Innovative features include an inte- ject-oriented generic application. grated command and editing language, redirection of input and output to win- History dows and to selected text in windows, a When the Macintosh was introduced in graphical interface for each command, January 1984, most software for it was writ- and userdefined menus, which associate ten using the Lisa Workshop, acrossdevel- shell commands with menu items. opment system that ran on Apple’s Lisa The supported languages include Mo computer. The Lisa Workshop provided a torola 68xxx assembly, C, Apple Pascal mousedriven editor, 68000 assembly lan- (which supports objectariented program- guage, Pascal, a linker, and several utilities May 1988 0740-7459/88/0500/0059/$01 .00 @ 1988 IEEE 59 running in an environment similar to ties. The various system components tion to the point that system and user soft- UCSD Pascal. A second alternative, the should share a common set of windows, ware were difficult to distinguish, and MDS Macintosh development system,had both for reading and writing. This would some automation and extensibility. the advantage of running on the Macin- let the user view the input and output of However,it was difficult to use Smalltalk to tosh, but it provided only assembly lan- several development tools simultaneously. create stand-alone applications, and its guage and was merely a collection of sepa- And an integrated system would provide a performance was not adequate. rate applications (including an editor, basis on which to build automated opera- Envisioning a system that met our goals assembler, and linker) that were executed tion. was not a problem: Acombination of Mac- sequentially- it was not an integrated en- The system had to protide automated intosh’s user interface, Smalltalk’sinterac- vironmen t. operation for program builds. As the com- tive nature, and Unix’s command lan- By summer 1984, it was clear that a more plexity of Macintosh software grew in re- guage was a good approximation. The complete development system running sponse to increased hardware capabilities, challenge was to engineer this vision on on the Macintosh was needed as soon as building software essentially by hand - the limited hardware and software avail- possible. The urgency of this need was un- one step at a time -was rapidly becoming able on early Macintosh systems:The Mac- derscored by the prediction that the Lisa unworkable. MPW had to provide a mech- intosh Plus, which would be the high-end would soon be superseded by the Macin- anism to automate program builds -and machine when MPW was introduced, in- tosh, bringing cross development to an it had to manage the dependencies be- cluded a Motorola 68000 running at 7.3 abrupt end. tween software components. MHz and only IMbyte of main memory. The engineering team grew from three The system had to be easily extensible, The maximum hard-disk capacity was 20 to 15 during the first year of development. both by Apple and by other users. The tar- Mbytes. At the end of that year, earlyversions of the Software constraints provided an even Macintosh Programmer’s Workshop were bigger challenge: The system architec- being used todevelopMPWitself. Much of ture, encoded in ROM chips, would run Apple’s internal Macintosh software devel- Wehadfourm~ordes&b only asingle application in asingle address opment has been done with this software oWectives=Make space. Multiprocessing, multitasking, and since late 1985. In September 1986, Ver- the virtual memory were not provided. The sion 1.0 was released through the Apple system comprehensive, system did, however, provide code Programmer’s and Developer’s Associa- interne it with the segmentation, resources (swappable data tion, a group based in Renton, Wash. - environment, provide structures, such as descriptions of menus just less than two years after the project automated builds, and and windows), and a memory manager began. A major update, Version 2.0, was make it easily extensible. that supports a heap with relocatable ob completed and released in August 1987. jects. Goals Design Four major design objectives helped get audience for MPW was broad. It in- MPW is built around a single application shaped the system: cluded university students, software en- program that serves as a combined editor The system had to be comprehensive, thusiasts, professional application devel- and shell. Add-on components, called meeting most needs of most developers. opers, and Apple engineers. It would be tools, run in the same address space as the Software developers inside Apple, as well impossible to satisfy the individual needs, primary application. A command lan- as third-party developers, expected MPW much less the preferences, ofall our users, guage automates operation, and a graphi- to support development in 68000 as- so the system had to be easy to customize cal interface helps construct and execute sembly, Pascal, and C. Because MPWwas to and extend. The goal was to let individual commands. be the development system that Apple sup userscustomize the system, making simple plied, it was difficult to cut corners: If modifications and additions, and let prw Macintosh application. The central de- something was needed for software devel- fessionals add major new components, velopment-system component is MPW opment on Macintosh, itwasour responsi- such as additional programming lan- Shell. Because it is a Macintosh applica- bility to provide it, whether minor or guages, without our involvement. tion, it can be run from Finder, which pre major. Several systems already existed that met vides icon-and window-based file manipu- We preferred an integrated system many of our goals. Unix provided a com- lation, by opening any MPW document. over the multiapplication Macintosh prehensive set of tools, automated opera- (Documents are files created by applica- Development System that was in use when tion, and some degree of extensibility,but tions. Documents are opened to see their the design work began. The system should most versions lacked the window-based contents.) You can also use MPW Shell as be a Macintosh application, providing the user interface. Unix also placed demands the start-up application. standard windows, menus, and dialogues. on the hardware that the Macintosh could MPW Shell provides a multiwindow en- Moreover, it had to appear as a single ap not satisfy at the time. Smalltalk provided vironment for editing text files (see Figure plication rather than a set of disjoint utili- a user interface closer to our goals, integra- 1). Editing is done with the mouse (or cur- 60 IEEE Software sor keys) and pull-down menus (with key- MPW provides many commands, such as naturally included in scripts and Make board equivalents). You can select font those for text editing, window manipula- files; these commands have graphical in- styles and sizes for each window. Because tion, file management, and compiling, terfaces. the shell provides the user interface com- linking, and executing programs. Version Commands are implemented four ways: mon to all Macintosh applications, the 2.0 contains more than 100 commands. Built-in. Many commands are imple- users know the basic system operation. Integrating the shell and editor lets us mented directly by MPW Shell. These use a single command language for both built-in commands provide the fastest exe- Integrated editor and shell. MPW Shell editing and shell operations. This has sev- cution and require the least amount of combines the functionalityofa traditional eral obvious advantages - and some disk space. However, because they are editor and shell. Windows can contain advantages that surprised us. The major linked with the shell program, they can source code, documentation, scripts, and ones are that: only be modified or replaced by rebuild- so on; the shell provides general text- Users learn a single command lan- ing the shell. editing capabilities. Editing is disk-based: guage rather than separate languages for Command-language control constructs The entire document need not be in editing and operating the system. (Begin, If, For, Loop, Break, Continue, memory, so you can edit very large files, Selection expressions (an extension of and Exit) are implemented in the shell as helping satisfy the comprehensiveness de- regular expressions) are used both to part of the command interpreter. Most of sign goal. You can use menus to create, match file names (normallya shell capabil- the file-handling commands (like Files, open, and print files, to edit, to search and ity) and to match text in find and replace Duplicate, Rename, and Delete) and replace text using literal or regular-expres commands. editing commands (like Align, Copy, Cut, sion-based patterns, and to manipulate All the power of the command lan- Paste, and Find) are also built in.
Recommended publications
  • A Kermit File Transfer Protocol for the Apple II Series Personal Computers : John Patrick Francisco Lehigh University
    Lehigh University Lehigh Preserve Theses and Dissertations 1986 A Kermit file transfer protocol for the Apple II series personal computers : John Patrick Francisco Lehigh University Follow this and additional works at: https://preserve.lehigh.edu/etd Part of the Electrical and Computer Engineering Commons Recommended Citation Francisco, John Patrick, "A Kermit file transfer protocol for the Apple II series personal computers :" (1986). Theses and Dissertations. 4628. https://preserve.lehigh.edu/etd/4628 This Thesis is brought to you for free and open access by Lehigh Preserve. It has been accepted for inclusion in Theses and Dissertations by an authorized administrator of Lehigh Preserve. For more information, please contact [email protected]. A KERMIT FILE TRANSFER PROTOCOL FOR THE APPLE II SERIES PERSONAL COMPUTERS (Using the Apple Pascal Operating system) by John Patrick Francisco A Thesis Presented to the Graduate Committee of Lehigh University in Candidacy for the Degree of Master of Science 1n• Computer Science Lehigh University March 1986 This thesis is accepted and approved in partial fulfillment of the requirements for the degree of Master of science.• (date) Professor in Charge -------------- --------------- Chairman of the Division Chairman of the Department • • -11- ACKNOWLEDGEMENTS It would be somewhat of an understatement to say this project was broad in scope as the disciplines involved ranged from Phychology to Electrical Engineering. Since the project required an extensive amount of detailed in­ formation in all fields, I was impelled to seek the help, advice and opinion of many. There were also numerous t friends and relatives upon whom I relied for both moral and financial support.
    [Show full text]
  • Oral History Interview with John Brackett and Doug Ross
    An Interview with JOHN BRACKETT AND DOUG ROSS OH 392 Conducted by Mike Mahoney on 7 May 2004 Needham, Massachusetts Charles Babbage Institute Center for the History of Information Processing University of Minnesota, Minneapolis Copyright, Charles Babbage Institute John Brackett and Doug Ross Interview 7 May 2004 Oral History 392 Abstract Doug Ross and John Brackett focus on the background of SofTech and then its entry into the microcomputer software marketplace. They describe their original contact with the University of California at San Diego (UCSD) and licensing the p-System which had been developed there. They discuss the effort required to bring the program to production status and the difficulties in marketing it to the sets of customers. They talk about the transition from 8 bit to 16 bit machines and how that affected their market opportunities. They conclude with a review of the negotiations with IBM and their failure to get p-System to become a primary operating environment. That, and the high performance of Lotus 1-2-3, brought about the demise of the p- System. [John Brackett requested that the following information from Wikipedia, the free encyclopedia, be provided as an introduction to this oral history interview: “UCSD p-System or UCSD Pascal System was a portable, highly machine independent operating system based upon UCSD Pascal. The University of California, San Diego Institute for Information Systems developed it in 1978 to provide students with a common operating system that could run on any of the then available microcomputers as well as campus DEC PDP-11 minicomputers. UCSD p- System was one of three operating systems (along with PC-DOS and CP/M-86) that IBM offered for its original IBM PC.
    [Show full text]
  • Call-A.P.P.L.E. Magazine 1982-8
    Call-A.P.P.L.E. Magazine • August 1982 ~.I~~c!)~-A ~ - ...P. P. L. E. APPLE PUGETSOUND PROGRAM LIBRARY EXCHANGE A W .. shinglon 51 .. 11.' Non-Profit Corpordlion Call-A.P.P.L.E. Magazine Issue Year 1982 Issue Month August Apple Pugetsound Program Library Exchange I Page 0001 of 0090 Call-A.P.P.L.E. Magazine • August 1982 II Volume V, Number 8 £L 75 UK, A Call -A.P.P.L.E. TECHNIQUE: Garbagemen Strike Page 9 A Call -A.P.P.L.E. APPLECATION: Total Recall PagelS A Call -A.P.P.L.E. REVIEW: BASIS 108 ... An Alternative Page 23 A Call -A.P.P.L.E. REVIEW: Spelling Programs Page 31 Apple Pugetsound Program Library Exchange Page 0002 of 0090 Call-A.P.P.L.E. Magazine • August 1982 H, II II Volume V, Number 8 August 1982 52.50 (53.00 Canada, £1. 75 UK. A Call -A.P.P.L.E. TECHNIQUE: Garbagemen Strike Page 9 A Call -A.P.P.L.E. APPLECATION: Total Recall PagelS A Call -A.P.P.L.E. REVIEW: BASIS 108 ... An Alternative Page 23 A Call -A.P.P.L.E. REVIEW: Spelling Programs Page 31 Apple Pugetsound Program Library Exchange Page 0003 of 0090 Call-A.P.P.L.E. Magazine • August 1982 THE PROWRITER COMETH. (And It Cometh On Like Gangbusters.) Evolution. It's InevItable. An eternal venty. Just when you thInk you've got it knocked. and you're resting on your laurels. some­ body comes along and makes a dinosaur out of you.
    [Show full text]
  • Pascal Quick Guide
    PPAASSCCAALL -- QQUUIICCKK GGUUIIDDEE http://www.tutorialspoint.com/pascal/pascal_quick_guide.htm Copyright © tutorialspoint.com PPAASSCCAALL -- OOVVEERRVVIIEEWW Pascal is a general-purpose, high-level language that was originally developed by Niklaus Wirth in the early 1970s. It was developed for teaching programming as a systematic discipline and to develop reliable and efficient programs. Pascal is Algol-based language and includes many constructs of Algol. Algol 60 is a subset of Pascal. Pascal offers several data types and programming structures. It is easy to understand and maintain the Pascal programs. Pascal has grown in popularity in the teaching and academics arena for various reasons: Easy to learn. Structured language. It produces transparent, efficient and reliable programs. It can be compiled on a variety of computer platforms. Features of the Pascal Language Pascal has the following features − Pascal is a strongly typed language. It offers extensive error checking. It offers several data types like arrays, records, files and sets. It offers a variety of programming structures. It supports structured programming through functions and procedures. It supports object oriented programming. Facts about Pascal The Pascal language was named for Blaise Pascal, French mathematician and pioneer in computer development. Niklaus Wirth completed development of the original Pascal programming language in 1970. Pascal is based on the block structured style of the Algol programming language. Pascal was developed as a language suitable for teaching programming as a systematic discipline, whose implementations could be both reliable and efficient. The ISO 7185 Pascal Standard was originally published in 1983. Pascal was the primary high-level language used for development in the Apple Lisa, and in the early years of the Mac.
    [Show full text]
  • (TIL) Apple II Articles
    ––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– Apple II Computer Family Technical Information ––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– Apple Technical Information Library (TIL) Apple II Articles ––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– Date March 1997 ––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– Source Compuserve Apple II Computer Family Technical Information Apple Technical Information Library (TIL) Apple II Articles : March 1997 : 1 of 681 ––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– ================================================================================ DOCUMENT March 1997 A2TIL.Catalog ================================================================================ Apple ][ Articles from the Apple Technical Information Library March 1997 -- David T. Craig ([email protected]) Columns: 1 - File name 2 - Pages (assumes 60 lines per page) 3 - Lines 4 - Longest line length 5 - Article title A2TIL001.TXT 6 358 84 Apple Tech Info Library Overview: How to Search for Articles A2TIL002.TXT 2 102 75 16K RAM / Language Cards: Alternate Suppliers A2TIL003.TXT 2 105 79 80-Column Text Card: Applesoft Control Codes (11/96) A2TIL004.TXT 1 31 78 80-Column Text Cards: Apple II & II Plus Compatibility (11/96) A2TIL005.TXT 1 27 76 Access II and Apple IIc Plus: No 40-Column Mode A2TIL006.TXT 1 15 77 Access II: Does Not Support VT100 Line Graphics A2TIL007.TXT 1 52 76 Access II: Specifications (Discontinued) A2TIL008.TXT 1 48 78 Apple 3.5 Drive: Description
    [Show full text]
  • Washington Apple Pi Journal, August 1984
    $2 Wa/hington Apple Pi The Journal of Washingtono Apple Pi, Ltd. Volume. 6 AUGust1984 number 8 Hiahliahtl v - - mAC SOFTWARE UPDATE PLAYinG TI.,E mARI<ET WITI-f 0TOCI<SIG An APPLE TE.LE.COmm TUTORIAL nE.W RELE.ASE.S FRom APPLE. AnD T I-IE PIG In This Issue.. Officers &Staff, Editorial 3 When is a Data Base a Data Base?.Alex. E. Barnes 23 President's Corner • David Morganstein 4 Playing the Market with StockSIG •• Robert Wood 24 Job Mart ••••• 4 Apple-Oriented Telecomm. Tutorial. George Kinal 28 Minutes, Notes from the Office, SIGNews ••••• 5 Feeding at the Trough: ••••• Michael Hartman 32 WAP Calendar ••••••••••••••••••• 6 Specialized Data Management ••••• Bob Oringel 35 Membership Directory ••••• Dana J. Schwartz 7 Softviews ••••••••••• David Morganstein 36 WAP Hotline ••••••••••••••••••• 8 Permutation Generator in LISP •••• Bill Wurzel 38 Hardware Helpers, Genl. [nformation, Event Queue. 9 Update of Auto-Repeat Dialing ••• George Kinal 39 WAP Election Results, Classifieds • • • • • • •• 9 Apple Writer Printer Glossary. •• Al R. Rumble 40 Q &A • • • • • • • • • • • • •• Bruce F. Field 10 Apple Tracks •••••••• Richard Langston II 42 A Page From the Stack •••••• Robert C. Platt 12 Apple Tech Notes Richard Langston II 46 DisabledSIG News ••••••••••• Jay Thal 16 Letter to the Editor ••••• Ludwig Benner Jr. 47 EDSIG News . Peter Combes 16 Premium Softcard lie: A Review •• Robert C. Platt 48 Low-Cost Cooling Idea ••••••• George Kinal 17 Monthly Tutorial Outline •••••••••••• 49 Macintosh Software Availability Update ••••• 18 WAP Tutorial Registration •••••••••••• 50 Mac Mailing List Management ••• Brooks Leffler 19 Membership Director Change Form ••••••••• 50 Glossary For New Mac Owners ••• Robert C. Platt 20 Disketeria Mail Order Form ••••••••••• 51 A Letter to St.Mac •••••• David Morganstein 22 Index to Advertisers • 52 8 DISK IlIon 8 II ? $Igg WOWI Clinton Computer had an opportunity to buy a limited number of brand new Apple Disk I I Is at a very special price from Apple.
    [Show full text]
  • AUTHOR AVAILABLE from This Updated Bibliography Was Prepared to Provide a Computing, and to Give Particular Attention to Computi
    DOCUMENT RESUME ED .241 284 SE 043 935 AUTHOR Adams, Judy TITLE Guide to Resources in, InstructionalComputing. Revised. INSTITUTION National Council of Teachers. of Mathematics,Inc., Reston, Va. PUB DATE Jan 84 NOTE 36p.; Original edition by Mary KayCorbitt. Dept. AVAILABLE FROMNational Council of Teachers of Mathematics, p 1906 Association Dr., Reston, VA 22091(,$2.00 prepaid). PUB TYPE Reference Materials Bibliographies (181) EDRS PRICE MF01 Plus Postage. PC Not Availablefrom EDRS. ,DESCRIPTORS Computer Oriented Programs; Computers;Educational Research; Elementary SecondaryEducation; Higher Education; *Learning Activities; *Mathematics Curriculum; *Mathematics Education;*Mathematics Instruction; *Microcomputers; Programing ABSTRACT This updated bibliography was preparedto provide a source of currentinformation on general aspects ofinstructional computing, and to give particular attentionto computing in mathematics education. The generalinformation it contains will provide a starting point for educatorswho are beginning their work in instructional computing. The referencesto applications of computing in the mathematics curriculumprovide information to beginners as well as to those with moreadvanced backgrounds. Efforts have been made to be selective,with the major criteria being how relevant the items appear inrelation,to the purposes of the guide and the currentness of the items.The guide is on a word-processing system, and will be updated andrevised semiannually. Section 1 contains sources of hardware, software,and other information.
    [Show full text]
  • ~Hie San Francisco APPLE CORE Presents
    ~Hie San Francisco APPLE CORE presents -fHt 6EST Of vB.0Ui THE DATA BASE YOUR APPLE HAS BEEN WAITING FOR! Available September 1980 48K/ROM APPLESOFT/DISK at the computer store near you. "HUMAN ENGINEERED" FOR EASE OF DATA PACKING FOR INCREASED USE BY NON PROGRAMMERS DISK CAPACITY • No complex "menu trees" Integers stored in one or 2 bytes, real numbers in 5 bytes • Easy-to-follow prompting Recurring characters and un-used portions of alphanumeric • Formats displayed on screen as you create them fields packed into 2 bytes • Easy . .. Convenient editing for all inputs Special code fields store short codes, but print full descrip­ • 10 data types, including auto-formatting for dates, phone tions on reports numbers, social security numbers • Calculator style right to left input for $ fields POWERFUL REPORT GENERATOR LARGE CAPACITY Up to 100 columns on 1 to 9 lines Up to 24 computed fields—compute with record values, • Up to 100 fields (items) per record constants or other computed fields • Record size to 1020 bytes Up to 5 horizontal subtotals (assign any field to any subtotal) • 1-4f ields in primary keys and grand total • Any number of secondary keys Up to 6 sort and control break fields—column sub totals at • 1 to 9 user formatted screen pages or "masks" per record, control breaks and page breaks and 1 - 24 fields per "mask" Control break or compute on printing and non-printing fields • Special "update masks" for rapid editing Comment lines and fields, auto page numbering and report dating, number formatting, and much more! FAST ISAM FILING SYSTEM Retrieve ANY RECORD from a FULL DISK, IN LESS • Records are sorted by primary and secondary keys AS THAN 3 SECONDS THEY ARE ENTERED Search for records by any combination of range, wild cards, • Three levels of password protection partial strings, and relational, etc.
    [Show full text]
  • Pascal Tutorial
    Pascal Tutorial PASCAL TUTORIAL Simply Easy Learning by tutorialspoint.com tutorialspoint.com i ABOUT THE TUTORIAL Pascal Tutorial Pascal is a procedural programming language, designed in 1968 and published in 1970 by Niklaus Wirth and named in honor of the French mathematician and philosopher Blaise Pascal. Pascal runs on a variety of platforms, such as Windows, Mac OS, and various versions of UNIX/Linux. This tutorial will give you great understanding on Pascal to proceed with Delphi and other related frameworks etc. Audience This tutorial is designed for Software Professionals who are willing to learn Pascal Programming Language in simple and easy steps. This tutorial will give you great understanding on Pascal Programming concepts and after completing this tutorial you will be at intermediate level of expertise from where you can take yourself at higher level of expertise. Prerequisites Before proceeding with this tutorial you should have a basic understanding of software basic concepts like what is source code, compiler, text editor and execution of programs etc. If you already have understanding on any other computer programming language then it will be an added advantage to proceed. Compile/Execute Pascal Programs If you are willing to learn the Pascal programming on a Linux machine but you do not have a setup for the same, then do not worry. The compileonline.com is available on a high end dedicated server giving you real programming experience with a comfort of single click compilation and execution. Yes! it is absolutely free and its online. Copyright & Disclaimer Notice All the content and graphics on this tutorial are the property of tutorialspoint.com.
    [Show full text]
  • Using an Apple II Microcomputer for Real-Time Control in a Behavioral Laboratory
    Behavior Research Methods & Instrumentation 1983, Vol. 15(2),158-166 SESSION IV TECHNICAL ISSUES IN SYSTEM DESIGN STUDENT COMPETITION AWARD Using an Apple II microcomputer for real-time control in a behavioral laboratory WINFORD A. GORDON, DON FOREE, and DAVIn A. ECKERMAN University ofNorth Carolina, ChapelHill, North Carolina 27154 This report describes the hardware and software developed to implement an Apple II (48 KB) as a real-time control device for operant experiments. The hardware has a straightforward design, so that it is readily understandable and can be built by individuals with only minimal experience in the use of integrated circuits and other electronic components. The software routines listed below represent an approach to controlling and handling the data generated by an operant experiment. Using these routines, we are able to record each response and experi­ mental event, the time of the occurrence, and the conditions at that time. The advent of microprocessor systems has made THE INTERFACE EXPANSION real-time computer control broadly available. Yet, lack­ ing the electronic skills needed to interface a micro­ The first element in the system is the AIO serial­ processor with laboratory equipment, many researchers parallel interface card, which has two 8-bit parallel are reluctant to implement a computer control system. ports and two serial ports. Since we do not use the Commercially produced hardware and software systems serial ports in this application, the expansion circuit are available, but the cost of these systems is often could be adapted to any device that provides two prohibitive. We have developed a control system that is 8-bit parallel ports.
    [Show full text]
  • Impact of UCSD Pascal a View from the Trenches
    Impact of UCSD Pascal A View from the Trenches Roger Sumner 1 Before The Flood • Languages of the day: Fortran, COBOL, PL/I, RPG(!) • Batch Mainframe Computers – Punch cards, line printers, reel-to-reel tapes, overnight batch runs – HUGELY EXPENSIVE • Minicomputers: Data General, DEC PDP- 10, PDP-11, early Prime 2 Rise of the Microcomputer • Assembly language • Basic (many dialects) • PL/M (Digital Research, Intel) • All limited to specific platforms • Very difficult to use • Open need: portable, easy to use, powerful language + compiler + system 3 Pascal As A New Language • Other academic/niche languages: Simula, Euler, APL, Lisp, Algol; all on mainframes • Pascal was an academic language, too, but… – Simple enough for a modest-sized compiler – Powerful enough to write a compiler! – Pointers as a full-fledged data type – Enabled recursive data structures 4 Key Features of Pascal • Strong type checking - parameters & expressions • Pointer types – Safe, coupled to specific types (unlike “C” at the time) – Allows easily expressed recursive data structures • Very easy to like! – Structured programming wasn’t common in those days – UCSD Pascal popularized Pascal itself, which was then picked up by… • Microsoft Pascal • Borland Turbo Pascal • Apple Pascal (32-bit) – Adopted as a standard development language by many organizations, but… 5 Limitations! • What Brian Kernighan saw as missing: – Strings, variable size arrays, logical ops – Separate compilation, libraries –Flexible I/O – An “escape” from compiler builtins & dogma • Lots of folks
    [Show full text]
  • Call-A.P.P.L.E. Magazine 1983-6
    Call-A.P.P.L.E. Magazine • June 1983 ~..~~:()~-A . p... P. L.. E APPLE PUGETSOUND PROGRAM LIBRARY EXCHANGE 1\ w.. hinllton St.tr Non-Profit Corpor.tion Call-A.P.P.L.E. Magazine Issue Year 1983 Issue Month June Apple Pugetsound Program Library Exchange I Page 0001 of 0088 Call-A.P.P.L.E. Magazine • June 1983 TPt Volume VI, Number 6 June 1983 52.50 (53.00- Canada, £1. 75 IIUK., THE lie AND THE PLUS: Comparing Apples and Apples Page 9 A Call -A.P.P.L.E. SOFTWARE REVIEW: Spreadsheet Programs Page 17 MACHINE POWER: Creating an Amper-Library Page23 Special Education Section PREPARING FOR LIFE: The Arcadian Approach Page 31 \.0 Apple PugetSound Program Library Exchange Apple Pugetsound Program Library Exchange Page 0002 of 0088 Call-A.P.P.L.E. Magazine • June 1983 Tfii II II Volume VI, Number 6 June 1983 52.50 (53.00 Canada, £1. 75 UK., ITHE lie AND THE PLUS: Comparing Apples and Apples Page 9 A Call -A.P.P.L.E. SOFTWARE REVIEW: Spreadsheet Programs Page 17 MACHINE POWER: Creating an Amper-Library Page23 Special Education Section PREPARING FOR LIFE: The Arcadian Approach Page 31 \.0 Apple PugetSound Program Library Exchange Apple Pugetsound Program Library Exchange Page 0003 of 0088 Call-A.P.P.L.E. Magazine • June 1983 • MORE THAI JUST AlOTHER PREm FACE. Says who? Says ANSI. make life miserable for everyone in the disk-making Specifically, subcommittee X3B8 of the American business. National Standards Institute (ANSI) says so. The fact How? By gathering together periodically (often, is all Elephant ™floppies meet or exceed the specs one suspects, under the full moon) to concoct more required to meet or exceed all their standards.
    [Show full text]