Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Gilad Bracha is active.

Publication


Featured researches published by Gilad Bracha.


european conference on object oriented programming | 1990

Mixin-based inheritance

Gilad Bracha; William R. Cook

The diverse inheritance mechanisms provided by Smalltalk, Beta, and CLOS are interpreted as different uses of a single underlying construct. Smalltalk and Beta differ primarily in the direction of class hierarchy growth. These inheritance mechanisms are subsumed in a new inheritance model based on composition of mixins, or abstract subclasses. This form of inheritance can also encode a CLOS multiple-inheritance hierarchy, although changes to the encoded hierarchy that would violate encapsulation are difficult. Practical application of mixin-based inheritance is illustrated in a sketch of an extension to Modula-3.


conference on object oriented programming systems languages and applications | 1993

Strongtalk: typechecking Smalltalk in a production environment

Gilad Bracha; David Griswold

Strongtalk TM is a typechecker for a downwardcompatible Smalltalk dialect. It is designed for large-scale production software development, and incorporates a strong, modern structural type system. It not only separates the notions of type and class, but also deals with the more dicult issue of separating inheritance and subtyping using the notion of inherited types [CHC90, Bru93a] to preserve encapsulation. Strongtalk integrates inherited types, metaclasses, blocks and polymorphic methods into a highly usable, full-scale language.


international conference on computational logistics | 1992

Modularity meets inheritance

Gilad Bracha; Gary Lindstrom

Several roles of classes in existing languages are unbundled by providing a suite of operators independently controlling such effects as combination, modification, encapsulation, name resolution, and sharing, all on the single notion of a module. It is pointed out that all module operators are forms of inheritance: thus, inheritance not only is not in conflict with modularity in the present system, but is its foundation. This allows a previously unobtainable spectrum of features to be combined in a cohesive manner, including multiple inheritance, mixings, encapsulation, and strong typing. The proposed approach is demonstrated in a language called Jigsaw. The language is modular in two senses: it manipulates modules and it is highly modular in its own conception, permitting various module combinators to be included, omitted, or newly constructed in various realizations.<<ETX>>


european conference on object oriented programming | 2010

Modules as objects in newspeak

Gilad Bracha; Peter von der Ahé; Vassili Bykov; Yaron Kashai; William Maddox; Eliot Miranda

We describe support for modularity in Newspeak, a programming language descended from Smalltalk [33] and Self [69]. Like Self, all computation -- even an objects own access to its internal structure -- is performed by invoking methods on objects. However, like Smalltalk, Newspeak is class-based. Classes can be nested arbitrarily, as in Beta [44]. Since all names denote method invocations, all classes are virtual; in particular, superclasses are virtual, so all classes act as mixins. Unlike its predecessors, there is no static state in Newspeak, nor is there a global namespace. Modularity in Newspeak is based exclusively on class nesting. There are no separate modularity constructs such as packages. Top level classes act as module definitions, which are independent, immutable, self-contained parametric namespaces. They can be instantiated into modules which may be stateful and mutually recursive.


Software - Practice and Experience | 1987

GCI—a tool for developing interactive CAD user interfaces

Ehud Gudes; Gilad Bracha

GCI is a Unix‐based tool for developing interactive CAD programs. By separating command/ menu definitions from the progam, GCI makes it easier to change and extend the user interface. The language provided by GCI is used to define the syntax of commands, menus, messages, and help text. Generally, GCI supports a static hierarchical structure of commands and menus. However, through a program interface, an application program has the freedom to change environments, commands and menus. This flexibility of run‐time control of the user interface is essential for developing highly responsive interfaces in a CAD environment.


Archive | 1992

The programming language jigsaw: mixins, modularity and multiple inheritance

Gilad Bracha


Archive | 2002

Mixins in Strongtalk

Lars Bak; Gilad Bracha; Robert Griesemer; David Griswold


Archive | 1996

Extending smalltalk with mixins

Gilad Bracha; David Griswold


conference on object-oriented programming systems, languages, and applications | 2001

Adding Generics to the JavaTM Programming Language

Gilad Bracha; Norman H. Cohen; C. A. Kemper; David P. Stoutamire; Kresten Krab Thorup; Philip Wadler


Archive | 2001

Jsr 14: add generic types to the java programming language

Gilad Bracha; Norman H. Cohen; C. A. Kemper; Steffen Marx

Collaboration


Dive into the Gilad Bracha's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

William R. Cook

University of Texas at Austin

View shared research outputs
Top Co-Authors

Avatar

Ehud Gudes

Ben-Gurion University of the Negev

View shared research outputs
Researchain Logo
Decentralizing Knowledge