Patent
1996-07-08
1998-04-07
Oberley, Alvin E.
395792, 395793, 395708, G06F 944
Patent
active
057376085
ABSTRACT:
A system and method are disclosed that enable a batch lexer to be used to incrementally update a token stream representation of a computer program maintained in an editor as the computer program is being edited. A keystroke executive interprets editing inputs and dispatches editing events to a lexical analyzer. The lexical analyzer converts a range of the tokens likely to be affected to an equivalent old textual stream that preserves whitespace implied by but not represented within the token stream. A new text stream is generated from the old text stream by carrying out the current editing event. I.e., insertion of text is handled by the insertion of the relevant text into the old text stream (now the new stream) and deletion of a character is handled by deleting the appropriate character from the old text stream. The batch lexer is then invoked on the new text stream and as a result returns a new token stream. The fewest possible tokens from the new token stream that reflect the entire impact of the current editing event are returned to the keystroke executive along with an updated editing point within the new token stream as the suggested token stream update. The keystroke executive is free to ignore or accept the suggested update. The new token stream and the new text stream can be generated lazily, respectively one token and one character at a time.
REFERENCES:
patent: 4989145 (1991-01-01), Kyushima
patent: 5493678 (1996-02-01), Arcuri et al.
patent: 5504902 (1996-04-01), McGrath et al.
patent: 5513305 (1996-04-01), Magboulden
patent: 5625773 (1997-04-01), Bespallo et al.
Shilling, "Incremental LL(1) Parsing in Language-based Editors", IEEE Frans. Soft. Engg., V. 19 N. 9, pp. 935-940, Sep. 1992.
Lunney et al., "Sytax-directed Editing", Software Engg. Journal, V. 3, N. 2, pp. 37-46, Mar. 1988.
Madhavji et al., "Semi-Structured Cursor Movement in MUPE-2". Soft Engg. Journal V. 4, N. 6, pp. 309-317, Nov. 1989.
Zelkowitz et al., "Experiences building a syntax-directed editor", Soft. Engg. Journal, V. 4, N. 6, pp. 294-300, Nov. 1989.
Video: Siggraph Video Review: Magpie--Tektronix. Item #9.
Oman, et al., Typographic Style is More Than Cosmetic (May 1990) Communications of the ACM, May 1990 vol. 33, No. 5, pp. 506-520.
Reps, et al. The Synthesizer Generator Reference Manual (Jul. 1987) Dept. of Computer Science, Cornell University, Section 3, pp. 79-106.
Van de Vanter, User Interaction In Language-Based Editing Systems (1992) Chapter 4 and Chapter 5, pp. 35-111 & List of References.
Ballance, et al., Grammatical Abstraction and Incremental Syntax Analysis (1988) University of Calif., Berkeley, pp. 185-198.
Calliss, Problems With Automatic Restructurers (Nov. 1987) University of Durham, Durham, England, pp. 13-21.
Graham, et al., The Pan Language --Based Editing System (Jan. 1992) ACM Transactions on Software Engineering & Methodology, vol. 1, pp. 95-127.
Schwartz, et al., Incremental Compilation in Magpie (Jun. 1984) Sigplan Notice, vol. 19, No. 6, pp. 122-131.
Teitelblaum, et al., The Cornell Program Synthesizer: A Syntax Directed Programming environment (Sep. 1981) Association for Computing Machinery, Inc., pp. 97-116.
Baecker, et al. Human Factors and Typography for More Readable Programs (1987) Chapter 6, pp. 259-279 +List of References & Bibliography.
Chaki Kakali
Crisman Douglas J.
Oberley Alvin E.
Sun Microsystems Inc.
LandOfFree
Per-keystroke incremental lexing using a conventional batch lexe does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Per-keystroke incremental lexing using a conventional batch lexe, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Per-keystroke incremental lexing using a conventional batch lexe will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-26655