Daniel Henry Holmes Ingalls, Jr.
   HOME
*





Daniel Henry Holmes Ingalls, Jr.
Daniel Henry Holmes Ingalls Jr. (born 1944) is a pioneer of Object-oriented programming, object-oriented computer programming and the principal Systems architect, architect, designer and implementer of five generations of Smalltalk environments. He designed the bytecoded virtual machine that made Smalltalk practical in 1976. He also invented bit blit, the general-purpose graphical operation that underlies most bitmap computer graphics systems today, and Context menu, pop-up menus. He designed the generalizations of BitBlt to arbitrary color depth, with built-in Scaling (geometry), scaling, rotation, and Spatial anti-aliasing, anti-aliasing. He made major contributions to the Squeak version of Smalltalk, including the original concept of a Smalltalk Self-hosting (compilers), written in itself and made Porting, portable and efficient by a Smalltalk-to-C (programming language), C Source-to-source compiler, translator. Education Ingalls received his Bachelor of Arts (B.A.) in physics ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Washington, D
Washington commonly refers to: * Washington (state), United States * Washington, D.C., the capital of the United States ** A metonym for the federal government of the United States ** Washington metropolitan area, the metropolitan area centered on Washington, D.C. * George Washington (1732–1799), the first president of the United States Washington may also refer to: Places England * Washington, Tyne and Wear, a town in the City of Sunderland metropolitan borough ** Washington Old Hall, ancestral home of the family of George Washington * Washington, West Sussex, a village and civil parish Greenland * Cape Washington, Greenland * Washington Land Philippines *New Washington, Aklan, a municipality *Washington, a barangay in Catarman, Northern Samar *Washington, a barangay in Escalante, Negros Occidental *Washington, a barangay in San Jacinto, Masbate *Washington, a barangay in Surigao City United States * Washington, Wisconsin (other) * Fort Washington (other) ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Bit Blit
Bit blit (also written BITBLT, BIT BLT, BitBLT, Bit BLT, Bit Blt etc., which stands for ''bit block transfer'') is a data operation commonly used in computer graphics in which several bitmaps are combined into one using a ''boolean function''. The operation involves at least two bitmaps: a "source" (or "foreground") and a "destination" (or "background"), and possibly a third that is often called the "mask". The result may be written to a fourth bitmap, though often it replaces the destination. The pixels of each are combined bitwise according to the specified raster operation (ROP) and the result is then written to the destination. The ROP is essentially a boolean formula. The most obvious ROP overwrites the destination with the source. Other ROPs may involve AND, OR, XOR, and NOT operations. The Commodore Amiga's graphics chipset (and others) could combine three source bitmaps using any of the 256 possible boolean functions with three inputs. Modern graphics software has almost ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Bytecode
Bytecode (also called portable code or p-code) is a form of instruction set designed for efficient execution by a software interpreter. Unlike human-readable source code, bytecodes are compact numeric codes, constants, and references (normally numeric addresses) that encode the result of compiler parsing and performing semantic analysis of things like type, scope, and nesting depths of program objects. The name bytecode stems from instruction sets that have one-byte opcodes followed by optional parameters. Intermediate representations such as bytecode may be output by programming language implementations to ease interpretation, or it may be used to reduce hardware and operating system dependence by allowing the same code to run cross-platform, on different devices. Bytecode may often be either directly executed on a virtual machine (a p-code machine, i.e., interpreter), or it may be further compiled into machine code for better performance. Since bytecode instructions ar ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  




Systems Architect
The systems architect is an information and communications technology professional. Systems architects define the architecture of a computerized system (i.e., a system composed of software and hardware) in order to fulfill certain requirements. Such definitions include: a breakdown of the system into components, the component interactions and interfaces (including with the environment, especially the user), and the technologies and resources to be used in its design and implementation. The systems architect's work should seek to avoid implementation issues and readily permit unanticipated extensions/modifications in future stages. Because of the extensive experience required for this, the systems architect is typically a very senior technologist with substantial, but general, knowledge of hardware, software, and similar (user) systems. Above all, the systems architect must be reasonably knowledgeable of the users' domain of experience. For example, the architect of an air traff ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Computer Programming
Computer programming is the process of performing a particular computation (or more generally, accomplishing a specific computing result), usually by designing and building an executable computer program. Programming involves tasks such as analysis, generating algorithms, profiling algorithms' accuracy and resource consumption, and the implementation of algorithms (usually in a chosen programming language, commonly referred to as coding). The source code of a program is written in one or more languages that are intelligible to programmers, rather than machine code, which is directly executed by the central processing unit. The purpose of programming is to find a sequence of instructions that will automate the performance of a task (which can be as complex as an operating system) on a computer, often for solving a given problem. Proficient programming thus usually requires expertise in several different subjects, including knowledge of the application domain, specialized algori ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Object-oriented Programming
Object-oriented programming (OOP) is a programming paradigm based on the concept of "objects", which can contain data and code. The data is in the form of fields (often known as attributes or ''properties''), and the code is in the form of procedures (often known as ''methods''). A common feature of objects is that procedures (or methods) are attached to them and can access and modify the object's data fields. In this brand of OOP, there is usually a special name such as or used to refer to the current object. In OOP, computer programs are designed by making them out of objects that interact with one another. OOP languages are diverse, but the most popular ones are class-based, meaning that objects are instances of classes, which also determine their types. Many of the most widely used programming languages (such as C++, Java, Python, etc.) are multi-paradigm and they support object-oriented programming to a greater or lesser degree, typically in combination with imper ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

ACM Software Systems Award
The ACM Software System Award is an annual award that honors people or an organization "for developing a software system that has had a lasting influence, reflected in contributions to concepts, in commercial acceptance, or both". It is awarded by the Association for Computing Machinery (ACM) since 1983, with a cash prize sponsored by IBM of currently $35,000. Recipients The following is a list of recipients of the ACM Software System Award: See also * Software system * List of computer science awards References External links Software System Award — ACM Awards{{Association for Computing Machinery Awards established in 1983 Software System Award The ACM Software System Award is an annual award that honors people or an organization "for developing a software system that has had a lasting influence, reflected in contributions to concepts, in commercial acceptance, or both". It is awarded by ... Computer science awards ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Grace Murray Hopper Award
The Grace Murray Hopper Award (named for computer pioneer RADM Grace Hopper) has been awarded by the Association for Computing Machinery (ACM) since 1971. The award goes to a computer professional who makes a single, significant technical or service contribution at or before age 35. __TOC__ Recipients * 1971 Donald Knuth * 1972 Paul H. Dirksen * 1972 Paul H. Cress * 1973 Lawrence M. Breed * 1973 Richard H. Lathwell * 1973 Roger Moore * 1974 George N. Baird * 1975 Allan L. Scherr * 1976 Edward H. Shortliffe * 1977 ''no award'' * 1978 Ray Kurzweil * 1979 Steve Wozniak * 1980 Robert M. Metcalfe * 1981 Daniel S. Bricklin * 1982 Brian K. Reid * 1983 ''no award'' * 1984 Daniel Henry Holmes Ingalls, Jr. * 1985 Cordell Green * 1986 William Nelson "Bill" Joy * 1987 John Ousterhout * 1988 Guy L. Steele Jr. * 1989 W. Daniel Hillis * 1990 Richard Stallman * 1991 Feng-hsiung Hsu * 1992 ''no award'' * 1993 Bjarne Stroustrup * 1994–1995 ''no award'' * 1996 Shafrira Goldwasser * 1997- ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Association For Computing Machinery
The Association for Computing Machinery (ACM) is a US-based international learned society for computing. It was founded in 1947 and is the world's largest scientific and educational computing society. The ACM is a non-profit professional membership group, claiming nearly 110,000 student and professional members . Its headquarters are in New York City. The ACM is an umbrella organization for academic and scholarly interests in computer science ( informatics). Its motto is "Advancing Computing as a Science & Profession". History In 1947, a notice was sent to various people: On January 10, 1947, at the Symposium on Large-Scale Digital Calculating Machinery at the Harvard computation Laboratory, Professor Samuel H. Caldwell of Massachusetts Institute of Technology spoke of the need for an association of those interested in computing machinery, and of the need for communication between them. ..After making some inquiries during May and June, we believe there is ample interest to ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Lively Kernel
The Lively Kernel is an open-source web programming environment. It supports desktop-style applications with rich graphics and direct manipulation abilities, but without the installation or upgrade troubles of conventional desktop applications. Development began at Sun Microsystems Laboratories in Menlo Park, California, and later moved to the Hasso Plattner Institute in Potsdam-Babelsberg near Berlin. Overview The Lively Kernel is a graphical composition and integrated programming environment written fully in the programming language JavaScript using standard browser graphics (W3C Canvas or SVG). It is thus accessible to any browser as a web page, and it begins operating as soon as the web page is loaded. It is able to edit its own code and graphics, and through its built-in WebDAV support, it can save its results or even clone itself onto new web pages. Along with its application development abilities, it can also function as its own integrated development environment (IDE), ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Visual Programming Language
In computing, a visual programming language (visual programming system, VPL, or, VPS) is any programming language that lets users create programs by manipulating program elements ''graphically'' rather than by specifying them ''textually''. A VPL allows programming with visual expressions, spatial arrangements of text and graphic symbols, used either as elements of syntax or secondary notation. For example, many VPLs (known as ''dataflow'' or ''diagrammatic programming'') are based on the idea of "boxes and arrows", where boxes or other screen objects are treated as entities, connected by arrows, lines or arcs which represent relations. Definition VPLs may be further classified, according to the type and extent of visual expression used, into icon-based languages, form-based languages, and diagram languages. Visual programming environments provide graphical or iconic elements which can be manipulated by users in an interactive way according to some specific spatial grammar for p ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Fabrik (software)
Fabrik is a visual programming integrated development environment implemented in Smalltalk and designed at Apple Computer by Dan Ingalls, Scott Wallace, Yu-Ying Chow, Frank Ludolph, Ken Doyle and others during the mid-1980s. It consists of a kit of computational and graphic user interface In the industrial design field of human–computer interaction, a user interface (UI) is the space where interactions between humans and machines occur. The goal of this interaction is to allow effective operation and control of the machine f ... components that can be "wired" together to build new components and useful applications. External linksFabrik - A Visual Programming Environment* Fabrik History * Fabrik Fabrik entry from the Squeak Swiki {{prog-lang-stub Visual programming languages ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]