publications: - title: "SELF: The Power of Simplicity" author: - name: "David Ungar" link: "http://research.sun.com/people/ungar/" - name: "Randall B. Smith" link: "http://research.sun.com/people/randy/" year: "1988" tags: - "Self" researchr: "https://researchr.org/publication/UngarS88" cites: 0 citedby: 0 pages: "162-165" booktitle: "COMPCON 88, Digest of Papers, Thirty-Third IEEE Computer Society International Conference, San Francisco, California, USA, February 29 - March 4, 1988" publisher: "IEEE Computer Society" kind: "inproceedings" key: "UngarS88" - title: "From Kansas to Oz" author: - name: "Randall B. Smith" link: "http://research.sun.com/people/randy/" - name: "Mario Wolczko" link: "https://researchr.org/alias/mario-wolczko" - name: "David Ungar" link: "http://research.sun.com/people/ungar/" year: "1997" researchr: "https://researchr.org/publication/SmithWU97" cites: 0 citedby: 0 journal: "Communications of the ACM" volume: "40" number: "4" pages: "72-78" kind: "article" key: "SmithWU97" - title: "Programming as an Experience: The Inspiration for Self" author: - name: "Randall B. Smith" link: "http://research.sun.com/people/randy/" - name: "David Ungar" link: "http://research.sun.com/people/ungar/" year: "1995" doi: "http://link.springer.de/link/service/series/0558/bibs/0952/09520303.htm" abstract: "The Self system attempts to integrate intellectual and non-intellectual aspects of programming to create an overall experience. The language semantics, user interface, and implementation each help create this integrated experience. The language semantics embed the programmer in a uniform world of simple ob jects that can be modified without appealing to definitions of abstractions. In a similar way, the graphical interface puts the user into a uniform world of tangible objects that can be directly manipulated and changed without switching modes. The implementation strives to support the world-of-objects illusion by minimiz ing perceptible pauses and by providing true source-level semantics without sac rificing performance. As a side benefit, it encourages factoring. Although we see areas that fall short of the vision, on the whole, the language, interface, and im plementation conspire so that the Self programmer lives and acts in a consistent and malleable world of objects. " links: doi: "http://link.springer.de/link/service/series/0558/bibs/0952/09520303.htm" "sun": "http://research.sun.com/self/papers/programming-as-experience.html" tags: - "programming languages" - "object-oriented programming" - "semantics" - "meta programming" - "Self" - "source-to-source" - "aspect oriented programming" - "programming" - "subject-oriented programming" - "abstraction" - "Meta-Environment" - "feature-oriented programming" - "open-source" - "meta-objects" researchr: "https://researchr.org/publication/SmithU95" cites: 0 citedby: 0 pages: "303-330" booktitle: "ECOOP 95 - Object-Oriented Programming, 9th European Conference, Åarhus, Denmark, August 7-11, 1995, Proceedings" editor: - name: "Walter G. Olthoff" link: "https://researchr.org/alias/walter-g.-olthoff" volume: "952" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "3-540-60160-0" kind: "inproceedings" key: "SmithU95" - title: "Supporting Flexible Roles in a Shared Space" author: - name: "Randall B. Smith" link: "http://research.sun.com/people/randy/" - name: "Ranald Hixon" link: "https://researchr.org/alias/ranald-hixon" - name: "Bernard Horan" link: "https://researchr.org/alias/bernard-horan" year: "1998" doi: "http://doi.acm.org/10.1145/289444.289494" links: doi: "http://doi.acm.org/10.1145/289444.289494" researchr: "https://researchr.org/publication/SmithHH98" cites: 0 citedby: 0 pages: "197-206" booktitle: "CSCW" kind: "inproceedings" key: "SmithHH98" - title: "SELF: The Power of Simplicity" author: - name: "David Ungar" link: "http://research.sun.com/people/ungar/" - name: "Randall B. Smith" link: "http://research.sun.com/people/randy/" year: "1991" researchr: "https://researchr.org/publication/UngarS91" cites: 0 citedby: 0 journal: "Higher-Order and Symbolic Computation" volume: "4" number: "3" pages: "187-205" kind: "article" key: "UngarS91" - title: "A Simple and Unifying Approach to Subjective Objects" author: - name: "Randall B. Smith" link: "http://research.sun.com/people/randy/" - name: "David Ungar" link: "http://research.sun.com/people/ungar/" year: "1996" tags: - "meta-model" - "Meta-Environment" - "systematic-approach" - "meta-objects" researchr: "https://researchr.org/publication/SmithU96" cites: 0 citedby: 0 journal: "TAPOS" volume: "2" number: "3" pages: "161-178" kind: "article" key: "SmithU96" - title: "Transparent Sharing of Java Applets: A Replicated Approach" author: - name: "James Begole" link: "https://researchr.org/alias/james-begole" - name: "Craig A. Struble" link: "https://researchr.org/alias/craig-a.-struble" - name: "Clifford A. Shaffer" link: "https://researchr.org/alias/clifford-a.-shaffer" - name: "Randall B. Smith" link: "http://research.sun.com/people/randy/" year: "1997" doi: "http://doi.acm.org/10.1145/263407.263509" links: doi: "http://doi.acm.org/10.1145/263407.263509" tags: - "Java" - "systematic-approach" researchr: "https://researchr.org/publication/BegoleSSS97" cites: 0 citedby: 0 pages: "55-64" booktitle: "ACM Symposium on User Interface Software and Technology" kind: "inproceedings" key: "BegoleSSS97" - title: "Directness and Liveness in the Morphic User Interface Construction Environment" author: - name: "John H. Maloney" link: "https://researchr.org/alias/john-h.-maloney" - name: "Randall B. Smith" link: "http://research.sun.com/people/randy/" year: "1995" doi: "http://doi.acm.org/10.1145/215585.215636" links: doi: "http://doi.acm.org/10.1145/215585.215636" tags: - "meta-model" - "Meta-Environment" - "meta-objects" researchr: "https://researchr.org/publication/MaloneyS95" cites: 0 citedby: 0 pages: "21-28" booktitle: "ACM Symposium on User Interface Software and Technology" kind: "inproceedings" key: "MaloneyS95" - title: "Prototype-based languages: object lessons from class-free programming" author: - name: "Randall B. Smith" link: "http://research.sun.com/people/randy/" - name: "Mark Lentczner" link: "https://researchr.org/alias/mark-lentczner" - name: "Walter R. Smith" link: "https://researchr.org/alias/walter-r.-smith" - name: "Antero Taivalsaari" link: "https://researchr.org/alias/antero-taivalsaari" - name: "David Ungar" link: "http://research.sun.com/people/ungar/" year: "1994" tags: - "programming languages" - "object-oriented programming" - "rule-based" - "programming" - "subject-oriented programming" - "feature-oriented programming" researchr: "https://researchr.org/publication/SmithLSTU94%3A0" cites: 0 citedby: 0 journal: "OOPS Messenger" volume: "5" number: "4" pages: "48-53" kind: "article" key: "SmithLSTU94:0" - title: "Object, Message, and Performance: How They Coexist in Self" author: - name: "David Ungar" link: "http://research.sun.com/people/ungar/" - name: "Randall B. Smith" link: "http://research.sun.com/people/randy/" - name: "Craig Chambers" link: "https://researchr.org/alias/craig-chambers" - name: "Urs Hölzle" link: "https://researchr.org/alias/urs-h%C3%B6lzle" year: "1992" tags: - "meta-model" - "Self" - "Meta-Environment" - "meta-objects" researchr: "https://researchr.org/publication/UngarSCH92" cites: 0 citedby: 0 journal: "IEEE Computer" volume: "25" number: "10" pages: "53-64" kind: "article" key: "UngarSCH92" - title: "Resource sharing for replicated synchronous groupware" author: - name: "James Begole" link: "https://researchr.org/alias/james-begole" - name: "Randall B. Smith" link: "http://research.sun.com/people/randy/" - name: "Craig A. Struble" link: "https://researchr.org/alias/craig-a.-struble" - name: "Clifford A. Shaffer" link: "https://researchr.org/alias/clifford-a.-shaffer" year: "2001" doi: "http://portal.acm.org/citation.cfm?id=504611.504624" links: doi: "http://portal.acm.org/citation.cfm?id=504611.504624" researchr: "https://researchr.org/publication/BegoleSSS01" cites: 0 citedby: 0 journal: "IEEE/ACM Trans. Netw." volume: "9" number: "6" pages: "833-843" kind: "article" key: "BegoleSSS01" - title: "Subjectivity in object-oriented systems" author: - name: "William H. Harrison" link: "http://portal.acm.org/author_page.cfm?id=81385594269&coll=GUIDE&dl=GUIDE&trk=0&CFID=51121975&CFTOKEN=97290572" - name: "Harold Ossher" link: "http://portal.acm.org/author_page.cfm?id=81100333974&coll=GUIDE&dl=GUIDE&trk=0&CFID=51132785&CFTOKEN=62287740" - name: "Randall B. Smith" link: "http://research.sun.com/people/randy/" - name: "David Ungar" link: "http://research.sun.com/people/ungar/" year: "1994" doi: "http://doi.acm.org/10.1145/260060.260179" abstract: "Subjectivity in object-oriented systems is a new research area. At this, the first workshop in this area, there was much discussion of fundamental concepts and issues, as well as of perceived needs for subjectivity and models for realizing it. The discussion is summarized here, and a list of issues that were identified during the workshop is presented." links: doi: "http://doi.acm.org/10.1145/260060.260179" tags: - "object-oriented programming" - "meta programming" - "meta-model" - "modeling" - "object-role modeling" - "subject-oriented programming" - "Meta-Environment" - "feature-oriented programming" - "meta-objects" researchr: "https://researchr.org/publication/HarrisonOSU94" cites: 0 citedby: 0 journal: "OOPS Messenger" volume: "5" number: "4" pages: "131-136" kind: "article" key: "HarrisonOSU94" - title: "Work rhythms: analyzing visualizations of awareness histories of distributed groups" author: - name: "James Begole" link: "https://researchr.org/alias/james-begole" - name: "John C. Tang" link: "https://researchr.org/alias/john-c.-tang" - name: "Randall B. Smith" link: "http://research.sun.com/people/randy/" - name: "Nicole Yankelovich" link: "https://researchr.org/alias/nicole-yankelovich" year: "2002" doi: "http://doi.acm.org/10.1145/587078.587125" links: doi: "http://doi.acm.org/10.1145/587078.587125" tags: - "C++" - "context-aware" - "history" researchr: "https://researchr.org/publication/BegoleTSY02" cites: 0 citedby: 0 pages: "334-343" booktitle: "CSCW" kind: "inproceedings" key: "BegoleTSY02" - title: "Prototype-Based Languages: Object Lessons from Class-Free Programming (Panel)" author: - name: "Randall B. Smith" link: "http://research.sun.com/people/randy/" - name: "Mark Lentczner" link: "https://researchr.org/alias/mark-lentczner" - name: "Walter R. Smith" link: "https://researchr.org/alias/walter-r.-smith" - name: "Antero Taivalsaari" link: "https://researchr.org/alias/antero-taivalsaari" - name: "David Ungar" link: "http://research.sun.com/people/ungar/" year: "1994" tags: - "programming languages" - "object-oriented programming" - "rule-based" - "programming" - "subject-oriented programming" - "feature-oriented programming" researchr: "https://researchr.org/publication/SmithLSTU94" cites: 0 citedby: 0 pages: "102-112" booktitle: "OOPSLA" kind: "inproceedings" key: "SmithLSTU94" - title: "Self" author: - name: "David Ungar" link: "http://research.sun.com/people/ungar/" - name: "Randall B. Smith" link: "http://research.sun.com/people/randy/" year: "2007" doi: "http://doi.acm.org/10.1145/1238844.1238853" links: doi: "http://doi.acm.org/10.1145/1238844.1238853" tags: - "programming languages" - "history of programming languages" - "Self" - "HOPL" - "history" researchr: "https://researchr.org/publication/UngarS07" cites: 0 citedby: 0 pages: "1-50" booktitle: "Proceedings of the Third ACM SIGPLAN History of Programming Languages Conference (HOPL-III), San Diego, California, USA, 9-10 June 2007" editor: - name: "Barbara G. Ryder" link: "https://researchr.org/alias/barbara-g.-ryder" - name: "Brent Hailpern" link: "https://researchr.org/alias/brent-hailpern" publisher: "ACM" kind: "inproceedings" key: "UngarS07" - title: "Perspectives on Reuse (Panel Session)" author: - name: "Lorette Cameron" link: "https://researchr.org/alias/lorette-cameron" - name: "Charles Berman" link: "https://researchr.org/alias/charles-berman" - name: "Sanjiv Gossain" link: "https://researchr.org/alias/sanjiv-gossain" - name: "Brian Henderson-Sellers" link: "https://researchr.org/alias/brian-henderson-sellers" - name: "Laura Hill" link: "https://researchr.org/alias/laura-hill" - name: "Randall B. Smith" link: "http://research.sun.com/people/randy/" year: "1996" tags: - "reuse" researchr: "https://researchr.org/publication/CameronBGHHS96" cites: 0 citedby: 0 pages: "101-103" booktitle: "OOPSLA" kind: "inproceedings" key: "CameronBGHHS96" - title: "The Self-4.0 User Interface: Manifesting a System-wide Vision of Concreteness, Uniformity and Flexibility" author: - name: "Randall B. Smith" link: "http://research.sun.com/people/randy/" - name: "John Maloney" link: "https://researchr.org/alias/john-maloney" - name: "David Ungar" link: "http://research.sun.com/people/ungar/" year: "1995" tags: - "Self" researchr: "https://researchr.org/publication/SmithMU95" cites: 0 citedby: 0 pages: "47-60" booktitle: "OOPSLA" kind: "inproceedings" key: "SmithMU95" - title: "Self: The Power of Simplicity" author: - name: "David Ungar" link: "http://research.sun.com/people/ungar/" - name: "Randall B. Smith" link: "http://research.sun.com/people/randy/" year: "1987" abstract: "Self is an object-oriented language for exploratory programming based on a small number of simple and concrete ideas: prototypes, slots, and behavior. Prototypes combine inheritance and instantiation to provide a framework that is simpler and more flexible than most object-oriented languages. Slots unite variables and procedures into a single construct. This permits the inheritance hierarchy to take over the function of lexical scoping in conventional languages. Finally, because Self does not distinguish state from behavior, it narrows the gaps between ordinary objects, procedures, and closures. Self's simplicity and expressiveness offer new insights into object-oriented computation. " links: "sun": "http://research.sun.com/self/papers/self-power.html" "postscript": "http://research.sun.com/self/papers/selfPower.ps.gz" tags: - "programming languages" - "object-oriented programming" - "rule-based" - "meta programming" - "Self" - "prototype" - "programming" - "subject-oriented programming" - "Meta-Environment" - "feature-oriented programming" - "meta-objects" researchr: "https://researchr.org/publication/UngarS87" cites: 0 citedby: 0 pages: "227-242" booktitle: "OOPSLA" kind: "inproceedings" key: "UngarS87"