Children Learning by Doing: Squeak

Total Page:16

File Type:pdf, Size:1020Kb

Children Learning by Doing: Squeak Children Learning by Doing Squeak Etoys on the OLPC XO Alan Kay VPRI Research Note RN-2007-006-a Viewpoints Research Institute, 1209 Grand Central Avenue, Glendale, CA 91201 t: (818) 332-3001 f: (818) 244-9761 Rough Draft – Rough Draft – Rough Draft – Rough Draft Children Learning By Doing Squeak Etoys on the OLPC XO 1 Rough Draft – Rough Draft – Rough Draft – Rough Draft A non-profit public-benefit 501(c)3 organization devoted to children’s education and systems research. All of our results are free and open source. President Alan Kay © Viewpoints Research Institute, April 2007 Executive Director 1209 Grand Central Ave Kimberly Rose Glendale, California 91201 Board of Advisors John Perry Barlow Children Learning By Doing – Etoys on the OLPC XO Gordon Bell Jerome Bruner Was written by Alan Kay, and is made from a variety of previous View- Vint Cerf points Research Institute writings adapted for the XO, plus new material Mihaly Csikszentmihalyi done especially for this book. Richard Dawkins Betty Edwards Doug Engelbart Some of the researchers Other research colleagues, in Bran Ferren Gerhard Fischer who directly contributed addition to the Board of Ad- Tim Gallwey to and built major parts visors, whose ideas ad- Adele Goldberg of Etoys: vanced the Etoys design: Danny Hillis Kazuhiro Abe Hal Abelson Quincy Jones Bob Arning Bill Atkinson Leonard Kleinrock B.J. Allen-Conn Bobby Blatt Geraldine Laybourne Diego GomezDeck Andy diSessa Paul MacCready Bert Freudenberg Marvin Minsky Mary Laycock Dan Ingalls Ike Nassi Julia Nishijima Nicholas Negroponte Alan Kay Mitchel Resnick Doreen Nelson Ted Kaehler Julaine Salem David P. Reed John Maloney Brian Silverman Mitchel Resnick Yoshiki Ohshima Cynthia Solomon Paul Saffo Andreas Raab Mike Travers Larry Smarr Michael Rueger Elliot Soloway Kim Rose Lex Spoon Advisor Emeritus Seymour Papert Scott Wallace Takashi Yamamiya Advisors Etherius Douglas Adams Neil Postman Frank Thomas This document is a first draft of a summary of Etoys on the One Laptop Per Child XO computer. It will undergo many changes in the next few months. The first official edition is expected by August 2007. 2 Rough Draft – Rough Draft – Rough Draft – Rough Draft Dedications Seymour Papert: “Should the computer pro- Jerome Bruner: True learning is “fig- gram the kid, or should the kid program the uring out how to use what you already computer?” know in order to go beyond what you already think.” Preface This document is an early draft of an introductory book about Etoys on the OLPC laptop for teachers and parents. It is planned to be completed this summer in time for XO experiments around the world. We are putting out this unfinished draft to help provide context for the OLPC “Countries Meeting” on April 25th 2007 in Cambridge, Mass. Though incomplete, we have attempted to leave most of the unfinished parts at the end, and provide a coher- ent a narrative as possible. To be added are many more examples, more discussion of curriculum and ap- proach to math and science learning, and quite a bit more about the kinds of media authoring and collabora- tion that can be done in Etoys. Table Of Contents Dedications, Preface, Table of Contents. 3 Etoys is: . 4 A Worldwide, Multilingual, Authoring and Learning Environment . 5 “Like LOGO” with Costumes . 6 “Like Starlogo” At All Scales . 7 “Like Hypercard”, Presentations, Desktop & Web Publishing, Multimedia . 8 “Like Squeak Smalltalk”, Multiplatform, etc. 9 Examples: Detailed Table Of Contents . 11 Educational Examples . 34 Multimedia Examples . 45 Squeak Smalltalk . xx Acknowledgements . xx References . xx 3 Rough Draft – Rough Draft – Rough Draft – Rough Draft Etoys & Squeak on the OLPC XO Squeak Etoys is a multimedia authoring system especially aimed at helping chil- dren learn powerful ideas by constructing them. It was inspired by LOGO, Small- talk, Hypercard, and Starlogo and presents a unified style, user-interface, media and scripting environment for making things from computer stuff. It is free and open source, and can be downloaded for many platforms from http://squeakland.org . This summary presents the main kinds of media, authoring and styles of learning that most children will do on the One Laptop Per Child XO computer. We will first give a few examples from the main areas of interest to provide a gist of what Etoys is all about, and then provide more detail and examples in each of the areas. Squeak Etoys in Nepalese village “Like-LOGO”: Scripting that is also mathematics, turtle as a vector, “Like-Hypercard”: WYSIWYG Page ori- ented UI & Media author- ing for presentations, web content, etc. “Like-Starlogo”: Massively parallel objects “Like Squeak Smalltalk”: Everything is a dynamic object, mul- timedia, multiplatform, etc. Aimed at a wide variety of users and levels of use In use by many children and adults around the world Good for constructivist learning and teaching Multilingual Self contained and runs on many platforms Both standalone and web-based Integrated multimedia Collaborative Made from many integrated media objects Authorable at all levels from end-user to expert 4 Rough Draft – Rough Draft – Rough Draft – Rough Draft Etoys is a Worldwide Authoring & Learning Environment Etoys is “Like Logo” – but with costumes, multimedia, etc. “Like Starlogo” – but at all levels of scale “Like Hypercard and Powerpoint” – but simpler and richer “Like Smalltalk” – it is Squeak Smalltalk underneath “Like itself” – it has special properties that are unique Just “how like” will be shown on the next few pages. Below are Logo-like scripts in different languages to move the car in a circle . Etoys was first tested with children in 1997, and has since spread around the world to be used by many children in cultural and lan- guage environments. Etoys is multilingual and has been success- fully used in USA, Europe, South America, Japan, Korea, India, Nepal, and elsewhere. The multilingualization is dynamic: languages can be switched on the fly (this can be illuminating for children) and there is a “kit” that aids the introduction of a new language. Etoys is also “ecumenical”: it runs on more than 20 platforms bit- identically including all of the standard ones, many PDAs and SmartPhones, and on the OLPC XO machine. Current Languages include: English, French, German, Spanish, Portuguese, Japanese, Chinese, Korean, Swahili Languages in progress include: Arabic Greek Thai The main website http://www.squeakland.org contains downloads, tutorials, example content, access to other web sites, essays, and books, including “Powerful Ideas in the Classroom”, an introduc- tion to Etoys for 4-5-6 grade teachers. There are two international conferences each year that are centered on Etoys and similar environments: IEEE C5 conference (usually in Jan) and SqueakFest (usually in Aug). 5 Rough Draft – Rough Draft – Rough Draft – Rough Draft Etoys is “Like LOGO”: But With Universal Objects & Costumes A project that nine, ten and eleven year old children all over the world love is to design and make a car they would like to learn how to drive. They first draw their car (and often put big off-road tires on them like this). A typical Etoys script So far this is just a picture. But then they can look “inside” their drawing to see its properties (for example where the car is located and heading) and behaviors (the ability to go forward in the direction it is heading, or change its heading by Etoys “viewer” for the car turning. These behaviors can be pulled out and dropped on the “world” to make a script – without the need for typing – which can be set “ticking” by clicking on the clock. The car starts moving in accordance with the script. If we drop the car’s pen on the world, it will leave a track (in this case a circle), and we see that this is Papert’s LOGO turtle in disguise – a turtle with a “cos- tume” and easy ways to view, script and control it. In fact, it is easy to make a Logo in Etoys, and it can take advantage of the “no keyboard input” feature. We can just draw a turtle, as we did with the car. In Etoys we can choose or now to show the object’s name in a script (to not show it is classical Logo style). So we can make a script that will draw a line of some length and turn a corner. Then we can invoke this script to make many kinds of geometric figures: 6 Rough Draft – Rough Draft – Rough Draft – Rough Draft Etoys is “Like Starlogo”: But At All Scales & With Etoys Scripting Squeak Etoys allows an enormous number of objects to be run simultaneously (inspired by Starlogo) that are scripted using the same conventions used with the larger media objects. This allows children to think through complex parts of a project – such as an ant or salmon follow- ing a scent gradient – in the large with a few large ants or fish, and then to use what has been discovered with a population of thousands of particle animals. From scripting one object, The Beauty and Importance of Complex Systems we can make lots of them Lots of interesting things come in bunches which exhibit emergent group behavior, such as: … Electrons (current flow, etc.) Atoms and molecules (gases, liquids, solids) Cells Populations of animals and plants Etoys can handle many 10’s of 1000s of objects at many frames per second, and this is enough to allow excellent models of the important properties of these systems to be made. … to explore simple interactions The continuity of scripting between large and small allows children to explore very com- like collisions, disease, etc., and … plex systems by just scripting the behavior of one item and making many copies.
Recommended publications
  • Ref.Pdf 7.02KB 2020-09-13 23:03:26
    Introduction to Smalltalk - References Ó Ivan Tomek 9/18/00 References Books Kent Beck: Smalltalk: Best Practice Patterns, Prentice-Hall, 1997. Timothy Budd: A Little Smalltalk, Addison-Wesley, 1987. Erich Gamma, Richard Helm, Ralph Johnson, John Vlassides: Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley, 1995. Adele Goldberg: Smalltalk-80: The Interactive Programming Environment, Addison-Wesley, 1983. Adele Goldberg, David Robson: Smalltalk-80: The Language and its Implementation, Addison-Wesley, 1985. Adele Goldberg, David Robson: Smalltalk-80, The Language, Addison-Wesley, 1989. Trevor Hopkins, Bernard Horan: Smalltalk: An Introduction to Application Development Using VisualWorks, Prentice-Hall, 1995. Tim Howard: The Smalltalk Developer’s Guide to Visual Works, SIGS Books, 1995. Ted Kaehler, Dave Patterson: A Taste of Smalltalk, Norton, 1986. Wilf Lalonde: Discovering Smalltalk, Addison-Wesley, 1994. Wilf Lalonde, John R. Pugh: Inside Smalltalk, Volume I, II, Prentice-Hall, 1991. Wilf Lalonde, John R. Pugh: Smalltalk/V, Practice and Experience, Prentice-Hall, 1994. Simon Lewis: The Art and Science of Smalltalk, Prentice-Hall, 1995. Chamond Liu: Smalltalk, Objects, and Design, Prentice-Hall, 1996. Mark Lorenz: Rapid Software Development with Smalltalk, SIGS Books, 1995. Lewis J. Pinson: An Introduction to Object-Oriented Programming and Smalltalk, Addison-Wesley, 1988. Jonathan Pletzke: Advanced Smalltalk, Wiley, 1997. Wolfgang Pree: Design Patterns for Object-Oriented Software Development, Addison-Wesley, 1994. Timothy Ryan: Distributed Object Technology, Concepts and Applications, Prentice-Hall, 1996. Dusko Savic: Object-Oriented Programming with Smalltalk, Prentice-Hall, 1990. Susan Skublics, Edward J. Klimas, David A. Thomas: Smalltalk with Style, Prentice-Hall, 1996. Dan Shafer, Dean A. Ritz: Practical Smalltalk, Springer-Verlag, 1991.
    [Show full text]
  • The Most Admired* What Do Clint Eastwood, Jimmy
    The Most Admired* What do Clint Eastwood, Jimmy Carter, and Warren Buffett have in common? No, this isn’t a setup for a pop culture joke, but rather a partial list of the most admired Americans over age 75. Provided with the names of 23 major personalities in this age bracket and asked to select the two they most admire, Americans compile a list that is at once diverse and homogenous; topping the list are two actors, two former presidents, a man of the cloth, and a financial wizard turned philanthropist. All remarkably accomplished, but all male. Clint Eastwood ranks highest overall, with 23% rating him as their most admired public figure over age 75; among men that proportion rises to 30%, and he reaches 33% among Republicans despite his unusual 2012 GOP convention appearance, making him that group’s second highest choice. Morgan Freeman runs a close second with 21% overall, but he is the clear favorite among both African Americans (40%) and Millennials (33%). Jimmy Carter finishes third overall with 19%, but he tops Democrats’ list (33%). Similarly, George H.W. Bush is number one among Republicans (36%), and he finishes fourth overall with 17%. Rounding out the most admired list in double digits are Billy Graham (16%) and Warren Buffett (13%). Buffett’s popularity lands him in second place among college-educated adults and affluent Americans. Billy Graham is relatively well loved among those over age 50. The three most admired women cross the ideological spectrum—former First Lady Nancy Reagan (9%) on the right, Justice Ruth Bader Ginsburg (7%) on the left, and TV newswoman Barbara Walters (9%) in the middle.
    [Show full text]
  • QATAR ASW ONLINE SCRIPT V.8.0 Pages
    “DEXIGN THE FUTURE: Innovation for Exponential Times” ARNOLD WASSERMAN COMMENCEMENT ADDRESS VIRGINIA COMMONWEALTH UNIVERSITY IN QATAR 2 MAY 2016 مساء الخير .Good afternoon It is an honor to be invited to address you on this important day. Today you artists and designers graduate into the future. Do you think about the future? Of course you do. But how do you think about the future? Is the future tangible - or is it intangible ? Is it a subject for rational deliberation? Or is it an imagined fantasy that forever recedes before us? Is the future simply whatever happens to us next? Or is it something we deliberately create? Can we Dexign the Future? What I would like us to think about for the next few moments is how creative professionals like yourselves might think about the future. What I have to say applies as much to art as it does to design. Both are technologies of creative innovation. I will take the liberty here of calling it all design. My speech is also available online. There you can follow a number of links to what I will talk about here. The future you are graduating into is an exponential future. What that means is that everything is happening faster and at an accelerating rate. For example, human knowledge is doubling every 12 months. And that curve is accelerating. An IBM researcher foresees that within a few years knowledge will be doubling every 12 hours as we build out the internet of things globally. This acceleration of human knowledge implies that the primary skill of a knowledge worker like yourself is research, analysis and synthesis of the not-yet-known.
    [Show full text]
  • Traits: Experience with a Language Feature
    7UDLWV([SHULHQFHZLWKD/DQJXDJH)HDWXUH (PHUVRQ50XUSK\+LOO $QGUHZ3%ODFN 7KH(YHUJUHHQ6WDWH&ROOHJH 2*,6FKRRORI6FLHQFH1(QJLQHHULQJ$ (YHUJUHHQ3DUNZD\1: 2UHJRQ+HDOWKDQG6FLHQFH8QLYHUVLW\ 2O\PSLD$:$ 1::DONHU5G PXUHPH#HYHUJUHHQHGX %HDYHUWRQ$25 EODFN#FVHRJLHGX ABSTRACT the desired semantics of that method changes, or if a bug is This paper reports our experiences using traits, collections of found, the programmer must track down and fix every copy. By pure methods designed to promote reuse and understandability reusing a method, behavior can be defined and maintained in in object-oriented programs. Traits had previously been used to one place. refactor the Smalltalk collection hierarchy, but only by the crea- tors of traits themselves. This experience report represents the In object-oriented programming, inheritance is the normal way first independent test of these language features. Murphy-Hill of reusing methods—classes inherit methods from other classes. implemented a substantial multi-class data structure called ropes Single inheritance is the most basic and most widespread type of that makes significant use of traits. We found that traits im- inheritance. It allows methods to be shared among classes in an proved understandability and reduced the number of methods elegant and efficient way, but does not always allow for maxi- that needed to be written by 46%. mum reuse. Consider a small example. In Squeak [7], a dialect of Smalltalk, Categories and Subject Descriptors the class &ROOHFWLRQ is the superclass of all the classes that $UUD\ +HDS D.2.3 [Programming Languages]: Coding Tools and Tech- implement collection data structures, including , , 6HW niques - object-oriented programming and . The property of being empty is common to many ob- jects—it simply requires that the object have a size method, and D.3.3 [Programming Languages]: Language Constructs and that the method returns zero.
    [Show full text]
  • April 2021 Will Wells, Timber Creek High School C/O 2007
    Black Horse Pike Regional School District Spotlight on Alumni - April 2021 Will Wells, Timber Creek High School c/o 2007 “Will graduated in 2007. Since then he has worked as a professional musician, composer, film scoring composer, arranger, and music producer. Will was a guitarist, keyboardist, and backing vocalist for the group "Imagine Dragos" and went on their world tour with them in 2015-2016. Will also was the Electronic Music Producer for the Broadway smash hit, "Hamilton." Will has also worked with famous musicians Barbara Streisand, LMFAO, Anthony Ramos, Quincey Jones, Cynthia Erivo (Star of the movie "Harriet"), Pentatonix, and many, many more! For more information, check out his website at: willwellsmusic.com Each year Will returns to Timber Creek to speak with our musicians, has brought in guest performers and conducted a song writing workshop. ~John Perkis, TC Music Education teacher 1. AA: Upon graduation, what post-secondary path did you take and why? Will: Upon graduating from Timber Creek Regional High School in 2007, I decided to attend Berklee College of Music in Boston, Massachusetts. After completing their “5- Week Summer Program” in the Summer of 2005, I knew that there was something about this institution that uniquely suited my needs, my passion, and my dreams. I was always interested in traditional and contemporary music, as well as the ever-evolving technology that was used in its creation. Berklee truly felt like the only place where I could fully immerse myself in the study of music and music technology, while being surrounded by thousands of other scholars who were passionate about music or the music industry.
    [Show full text]
  • A Metacircular Architecture for Runtime Optimisation Persistence Clément Béra
    Sista: a Metacircular Architecture for Runtime Optimisation Persistence Clément Béra To cite this version: Clément Béra. Sista: a Metacircular Architecture for Runtime Optimisation Persistence. Program- ming Languages [cs.PL]. Université de Lille 1, 2017. English. tel-01634137 HAL Id: tel-01634137 https://hal.inria.fr/tel-01634137 Submitted on 13 Nov 2017 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. Universit´edes Sciences et Technologies de Lille { Lille 1 D´epartement de formation doctorale en informatique Ecole´ doctorale SPI Lille UFR IEEA Sista: a Metacircular Architecture for Runtime Optimisation Persistence THESE` pr´esent´eeet soutenue publiquement le 15 Septembre 2017 pour l'obtention du Doctorat de l'Universit´edes Sciences et Technologies de Lille (sp´ecialit´einformatique) par Cl´ement B´era Composition du jury Pr´esident: Theo D'Hondt Rapporteur : Ga¨elThomas, Laurence Tratt Examinateur : Elisa Gonzalez Boix Directeur de th`ese: St´ephaneDucasse Co-Encadreur de th`ese: Marcus Denker Laboratoire d'Informatique Fondamentale de Lille | UMR USTL/CNRS 8022 INRIA Lille - Nord Europe Numero´ d’ordre: XXXXX i Acknowledgments I would like to thank my thesis supervisors Stéphane Ducasse and Marcus Denker for allowing me to do a Ph.D at the RMoD group, as well as helping and supporting me during the three years of my Ph.D.
    [Show full text]
  • The Future: the Story of Squeak, a Practical Smalltalk Written in Itself
    Back to the future: the story of Squeak, a practical Smalltalk written in itself Dan Ingalls, Ted Kaehler, John Maloney, Scott Wallace, and Alan Kay [Also published in OOPSLA ’97: Proc. of the 12th ACM SIGPLAN Conference on Object-oriented Programming, 1997, pp. 318-326.] VPRI Technical Report TR-1997-001 Viewpoints Research Institute, 1209 Grand Central Avenue, Glendale, CA 91201 t: (818) 332-3001 f: (818) 244-9761 Back to the Future The Story of Squeak, A Practical Smalltalk Written in Itself by Dan Ingalls Ted Kaehler John Maloney Scott Wallace Alan Kay at Apple Computer while doing this work, now at Walt Disney Imagineering 1401 Flower Street P.O. Box 25020 Glendale, CA 91221 [email protected] Abstract Squeak is an open, highly-portable Smalltalk implementation whose virtual machine is written entirely in Smalltalk, making it easy to debug, analyze, and change. To achieve practical performance, a translator produces an equivalent C program whose performance is comparable to commercial Smalltalks. Other noteworthy aspects of Squeak include: a compact object format that typically requires only a single word of overhead per object; a simple yet efficient incremental garbage collector for 32-bit direct pointers; efficient bulk- mutation of objects; extensions of BitBlt to handle color of any depth and anti-aliased image rotation and scaling; and real-time sound and music synthesis written entirely in Smalltalk. Overview Squeak is a modern implementation of Smalltalk-80 that is available for free via the Internet, at http://www.research.apple.com/research/proj/learning_concepts/squeak/ and other sites. It includes platform-independent support for color, sound, and image processing.
    [Show full text]
  • Simula Mother Tongue for a Generation of Nordic Programmers
    Simula! Mother Tongue! for a Generation of! Nordic Programmers! Yngve Sundblad HCI, CSC, KTH! ! KTH - CSC (School of Computer Science and Communication) Yngve Sundblad – Simula OctoberYngve 2010Sundblad! Inspired by Ole-Johan Dahl, 1931-2002, and Kristen Nygaard, 1926-2002" “From the cold waters of Norway comes Object-Oriented Programming” " (first line in Bertrand Meyer#s widely used text book Object Oriented Software Construction) ! ! KTH - CSC (School of Computer Science and Communication) Yngve Sundblad – Simula OctoberYngve 2010Sundblad! Simula concepts 1967" •# Class of similar Objects (in Simula declaration of CLASS with data and actions)! •# Objects created as Instances of a Class (in Simula NEW object of class)! •# Data attributes of a class (in Simula type declared as parameters or internal)! •# Method attributes are patterns of action (PROCEDURE)! •# Message passing, calls of methods (in Simula dot-notation)! •# Subclasses that inherit from superclasses! •# Polymorphism with several subclasses to a superclass! •# Co-routines (in Simula Detach – Resume)! •# Encapsulation of data supporting abstractions! ! KTH - CSC (School of Computer Science and Communication) Yngve Sundblad – Simula OctoberYngve 2010Sundblad! Simula example BEGIN! REF(taxi) t;" CLASS taxi(n); INTEGER n;! BEGIN ! INTEGER pax;" PROCEDURE book;" IF pax<n THEN pax:=pax+1;! pax:=n;" END of taxi;! t:-NEW taxi(5);" t.book; t.book;" print(t.pax)" END! Output: 7 ! ! KTH - CSC (School of Computer Science and Communication) Yngve Sundblad – Simula OctoberYngve 2010Sundblad!
    [Show full text]
  • Creating a Roadmap for the Future of Music at the Smithsonian
    Creating a Roadmap for the Future of Music at the Smithsonian A summary of the main discussion points generated at a two-day conference organized by the Smithsonian Music group, a pan- Institutional committee, with the support of Grand Challenges Consortia Level One funding June 2012 Produced by the Office of Policy and Analysis (OP&A) Contents Acknowledgements .................................................................................................................................. 3 Introduction ................................................................................................................................................ 4 Background ............................................................................................................................................ 4 Conference Participants ..................................................................................................................... 5 Report Structure and Other Conference Records ............................................................................ 7 Key Takeaway ........................................................................................................................................... 8 Smithsonian Music: Locus of Leadership and an Integrated Approach .............................. 8 Conference Proceedings ...................................................................................................................... 10 Remarks from SI Leadership ........................................................................................................
    [Show full text]
  • April 22 -- STEPS NSF 2012 Report
    ! 2012 REPORT ! STEPS Toward Expressive Programming Systems ! “A#Science#Experiment”# ! by# (In#random#order)#Yoshiki#Ohshima,#Dan#Amelang,#Ted#Kaehler,#Bert#Freudenberg,# Aran#Lunzer,#Alan#Kay,#Ian#Piumarta,#Takashi#Yamamiya,#Alan#Borning,#Hesam# Samimi,#Bret#Victor,#Kim#Rose*# VIEWPOINTS#RESEARCH#INSTITUTE# # # *These#are#the#STEPS#researchers#for#the#year#2012.#For#a#complete#listing# of#the#participants#over#the#length#of#the#project#see#the#section#on#the# NSF#site#which#contains#this#report.# TABLE OF CONTENTS — The STEPS Project for the General Public Summary of the STEPS project . Origin . STEPS aims at personal computing . What does STEPS look like? . STEPS is a “science project” . General approach . “T-shirt programming” . Overall map of STEPS . General STEPS results . Making “runnable maths” . Assessing STEPS Summary of STEPS research in 2012 . Inventing & building a language for STEPS “UI and applications”, and rewriting Frank in it . Producing a workable “chain of meaning” that extends from the screen all the way to the CPU . Inventing methods that create automatic visualizers for languages created from metalanguages . Continuing the start of “What vs How” programming via “Cooperating Languages and Solvers” Reflections on the STEPS Project to Date References Outreach Activities for final year of NSF part of the STEPS project Publications for the NSF part of the STEPS project Appendix I: KScript and KSWorld Appendix II: Making Applications in KSWorld ——— ! The$STEPS$Project$For$The$General$Public$ If#computing#is#important—for#daily#life,#learning,#business,#national#defense,#jobs,#and#
    [Show full text]
  • Design and Implementation of an Optionally-Typed Functional Programming Language
    Design and Implementation of an Optionally-Typed Functional Programming Language Shaobai Li Electrical Engineering and Computer Sciences University of California at Berkeley Technical Report No. UCB/EECS-2017-215 http://www2.eecs.berkeley.edu/Pubs/TechRpts/2017/EECS-2017-215.html December 14, 2017 Copyright © 2017, by the author(s). All rights reserved. Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission. Design and Implementation of an Optionally-Typed Functional Programming Language by Patrick S. Li A dissertation submitted in partial satisfaction of the requirements for the degree of Doctor of Philosophy in Engineering { Electrical Engineering and Computer Sciences in the Graduate Division of the University of California, Berkeley Committee in charge: Professor Koushik Sen, Chair Adjunct Professor Jonathan Bachrach Professor George Necula Professor Sara McMains Fall 2017 Design and Implementation of an Optionally-Typed Functional Programming Language Copyright 2017 by Patrick S. Li 1 Abstract Design and Implementation of an Optionally-Typed Functional Programming Language by Patrick S. Li Doctor of Philosophy in Engineering { Electrical Engineering and Computer Sciences University of California, Berkeley Professor Koushik Sen, Chair This thesis describes the motivation, design, and implementation of L.B. Stanza, an optionally- typed functional programming language aimed at helping programmers tackle the complexity of architecting large programs and increasing their productivity across the entire software development life cycle.
    [Show full text]
  • Type Feedback for Bytecode Interpreters Position Paper ICOOOLPS 2007
    Type Feedback for Bytecode Interpreters Position Paper ICOOOLPS 2007 Michael Haupt1, Robert Hirschfeld1, and Marcus Denker2 1 Software Architecture Group Hasso-Plattner-Institut University of Potsdam, Germany 2 Software Composition Group Institute of Computer Science and Applied Mathematics University of Berne, Switzerland michael.haupt,hirschfeld @hpi.uni-potsdam.de, [email protected] { } Abstract. This position paper proposes the exploitation of type feed- back mechanisms, or more precisely, polymorphic inline caches, for purely interpreting implementations of object-oriented programming languages. Using Squeak’s virtual machine as an example, polymorphic inline caches are discussed as an alternative to global caching. An implementation proposal for polymorphic inline caches in the Squeak virtual machine is presented, and possible future applications for online optimization are outlined. 1 Introduction Bytecode interpreters are small in size and comparatively easy to implement, but generally execute programs much less efficiently than just-in-time (JIT) compilers. Techniques like threaded interpretation [9, 11, 2] focus on speeding up bytecode interpretation itself, and caching [4, 5, 1] improves the performance of message sends—the most common operation in object-oriented software [7]. It is interesting to observe that, while threading mechanisms are used natu- rally to a varying degree in bytecode interpreter implementations, such systems usually employ only global caching to speed up dynamic method dispatch. A global cache is clearly beneficial with respect to overall performance. Still, it does not provide optimal support for polymorphic message send sites, and it does not allow for exploiting type information (we provide details on these issues in the following section). In our opinion, the employment of polymorphic inline caches (PICs) [5] instead can provide means for achieving significant speedups in bytecode interpreters while exhibiting only a moderate increase in memory footprint and implementation complexity.
    [Show full text]