Daniel HalbertAdafruit Industries LLC
Daniel Halbert
PhD
CircuitPython core developer
About
12
Publications
9,749
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
389
Citations
Introduction
Education
September 1978 - December 1984
September 1974 - June 1978
Publications
Publications (12)
Missing or degraded information continues to be a significant practical challenge facing automatic face representation and recognition. Generally, existing approaches seek either to generatively invert the degradation process or find discriminative representations that are immune to it. Ideally, the solution to this problem exists between these two...
There are four possible genres of input devices that can be attached to personal workstations; keyboard, mouse, pen, and voice. For investigating potentials and limitations of pen-based computers, we propose to compare those four categories as different types of man-machine communication channel.
Even though arrow keys allow a limited scope of 2D c...
Smallstar is a working simulation of the Xerox Star office information system, with programming by demonstration added. I developed SmallStar during 1980-1984 as part of my doctoral research; my motivation was to make it possible for users to program the systems they used.
SmallStar showed that programming by demonstration could be a valuable and...
The Trellis programming environment supports programming in Trellis/Owl, an object-based language with multiple inheritance and compile-time type-checking. Trellis is composed of a number of integrated tools that share a common programming environment database. It is a highly interactive, easy-to-use programming environment, providing various progr...
To be a good object-oriented programmer, you should use types and inheritance wisely. ThiS tutorial will help you do so.
If the object-oriented style of programming hopes to live up to its
potential as an improved methodology for software programming, a clear
understanding of how to use types and inheritance is essential. Our
experiences with using object-oriented languages and teaching
object-oriented techniques to other programmers have shown that
effective use of...
Programming by example is a way of programming a software system in its own user interface. The user of the system writes a program by giving an example of what the program should do. The system records the sequence of actions, and can perform it again. Programming by example allows a user to create programs without doing conventional programming....
DIDL is a LISP debugger that makes extensive use of the capabilities of modern display terminals. The DIDL debugger has two main objectives: to be a comprehensive debugging tool, and to use text display terminals in the flexible way in which they should be used, thinking of their screens as selectively modifiable pictures of text.
DIDL's debugging...