37
Debugger

Debugger & Editor.ppt

Embed Size (px)

Citation preview

Page 1: Debugger & Editor.ppt

Debugger

bull A debugger is a program execution platform that allows ndash pausing program execution at specific pointsndash inspecting the values of program variablesndash modifying the values of program variablesndash evaluating arbitrary expressionsndash calling arbitrary routines

bull Debuggers allowndash Controlled stepping through programndash Runtime examination of variablesndash Interactive analysis of programndash No recompile needed each time a possible

bug ruled out

ndash A breakpoint is a pseudo instruction that the user insert at any place into the program at debug time

ndash execution is controlled by the debugger and the debugger will interpret the breakpoints

ndash When execution crosses a breakpoint the debugger will pause program execution

ndash The user can thenbull inspect variablesbull set or clear breakpointsbull continue execution

bull Debugging system provide functions such asndash Tracing

bull Used to track the flow of execution logic amp data modifications

bull Control flow can be traced at different levels Ie procedure branch individual instructionhellip

ndash Trace backbull Show the path by which the current statement was reachedbull Shows which statements have modified a given variable or

parameterndash Program display capability

bull Display the program being debugged complete with statement numbers

bull Software tools to assist the programmer in debugging arendash Debug monitors

bull Provides debugging support for a program by providing information of errors

ndash Source code control systems bull Helps to keep track of the modifications in the

source code

bull Debuggingndash It is the process of isolating amp correcting the causes

of the known errors in a program ndash Debug monitors provides the following facilities for

debugging1 Setting break points in the program2 Initiating a debug conversation when control reaches a

break point3 Displaying values of variables4 Assigning new values to variables5 Testing user defined programs

Steps in Debugging1 User compiles the program under Debug option Compiler

produces1 Compiled code file2 Debug information file

2 User activates the debug monitor amp indicates the name of program to be debugged

3 Debug monitor opens1 Compiled code2 Debug information file of the program

4 User specifies his debug requirements with1 List of break points2 Action to be performed at break points

5 Debug monitor builds a table containing1 Statement number2 Debug action

Steps 4 amp 5 are repeated until the end of the debug session6 Program executes up to a break point and then a software

interrupt is generated amp control is given to the debug monitor then consults debug table and performs the debug actions specified for the break point

7 Control returns to the program

bull Debugger usage modesbull Postmortem analysisbull Program understandingbull Hypothesis testing

Postmortem analysis bull When a program that is run in a debugger crashes

ndash debugger is used to understand the reason for the crashndash This analysis is done after the factndash (post mortem after death)

bull It is based on analyzingndash which calls in the program produced the call nesting that was

active at the time of the crashndash the variables in these active calls

bull Advantagendash Postmortem analysis is simple and possibly quick

bull Disadvantagendash One cannot analyze how the program arrived at the program

state that produced the crash

Program understanding

bull A debugger helps understanding code one does know wellndash Choose simple program inputs firstndash Single-step through the programndash Step into methods of interest step over the restndash Inspect variables as requiredndash Use a breakpoint to finish loops you have understood

bull Advantage ndash No thinking errorsndash Computer keeps track of variable values for you

bull Limitationsndash Difficult to apply for non-sequential programs

Hypothesis testing bull A debugger helps gathering information about

specific aspects of a program without modifying the program

ndash 1048707No need to insert analysis code recompile redeploy

bull Kinds of informationndash 1048707Program state at a certain point during executionndash 1048707Validating specific expected events

bull their occurrencebull their orderbull their frequency

ndash 1048707Catching specific impossible (unexpected) events

Editors

bull A text editor is a type of program used for editing plain text files Often provided with operating systems

Features of text editorsbull DaggerString searching algorithmbull DaggerCut copy and pastebull DaggerText formattingbull DaggerUndo and redobull DaggerData transformationbull DaggerFilteringbull Syntax highlighting

Types of Editors

bull Line editorsbull Stream editorsbull Screen editorsbull Word processorsbull Structure editors

Line Editors

ndash Scope of line editors is limited to a line of textndash The line is designated positionally by

specifying the serial number in the textndash Edit characters like end of line is maintained

internallyndash Advantage

bull SimplicityEg-ed is a line editor for the Unix operating system

bull Line Editorbull bull Line editor is one of the simplest type of

editor which uses a buffer to store information

bull bull It operates in command mode User give the command to the editor for any operation Editor will respond this command

bull bull Buffer is in the main memory That is set aside to store the information which is entered from the keyboard

bull Meritsbull 1) Simple for read and writebull 2) Simple in design and implementationbull 3) Command and responses are

interleavedbull Demeritsbull 1) Not user friendlybull 2) Context of the text is not displayedbull 3) Only single line

Stream Editorsndash Views the entire text as a stream of characters amp

permits edit operation to cross line boundariesndash It support character line amp context oriented editing

commandsndash Current editing context is indicated by the position of

the text pointer called cursorndash Cursor can be used to move across amp within the linesndash Cursor can be moved by using positioning amp search

commands

Screen Editors

ndash It uses what-you-see- is what-you-get modendash It displays a screen full of text at a timendash User can move the cursor over the screen

position it on a point where the editing process is to be performed

ndash Effect of edit operation can be seen on the screen

ndash Useful while formatting the text to produce printed documents

Word processors

ndash Document editors with additional features to produce well formatted hard copy output

ndash Featuresbull Commands for moving section of text from one

place to anotherbull Merging of textbull Searching wordsbull Replacing wordsbull Spell checking

Structure Editors

ndash Incorporates an awareness of the structure of a document

ndash Useful in browsing through a document amp editing it

ndash Structure is specified while creating or modifying the document

ndash Editing requirement is specified using structure

Editing Processbull Document-editing process is an interactive

user-computer dialogue designed to accomplish 4 tasks

1 Select the part of the target document to be viewed and manipulated

2 Determine how to format this view on-line amp how to display it

3 Specify amp execute operations that modify the target document

4 Update the view appropriately

bull Travellingndash Moving through the editing document to a new

position in the textndash Done explicitly by the userndash It specifies where the area of interest is

bull Editingndash Adding new textndash Modifying the existing textndash Erasing the contentndash Formatting the existing data

bull Viewing amp displaying ndash Viewing amp formatting the text desired for the userndash Abstract viewndash Display component maps this abstract view into the

physical characteristics of the display device being used amp determines where a particular text may appear on user screen

Editor Structure

Commandlanguageprocessor

Editingcomponent

Travelingcomponent

Viewingcomponent

Displaycomponent

Editingbuffer

Viewingbuffer

EditingFilter

Viewingfilter

Mainmemory

Filesystem

input

Output devices

Paging

routines

bull Command language processorndash It accepts input from the usersrsquos input device amp analyses the

tokens and syntactic structure of the commandsndash It then produce an intermediate representation of the desired

editing operationsndash Interpreter then decodes this intermediate representation

bull Editing managerndash Start of the area to be edited is determined by the current editing

pointer maintained by the editing managerndash Current editing pointer can be set or reset explicitly by the user

with traveling commands such as next paragraph or implicitly as a side effect of the previous edit operation as delete paragraph

bull Traveling managerndash Setting of the current editing and viewing pointersndash Invoked explicitly by the user or implicitly by editing operations

bull Viewing Managerndash Start of the area to be viewed is determined by current viewing

pointerndash It is maintained by viewing manager which is collection of

modules responsible for determining the next viewndash Current viewing pointer can be set or reset explicitly by the user

or implicitly by the system as a result of the previous edit operation

bull Display Managerndash Makes provision for appropriate display of textndash Its function may be combined with viewing manager

bull Viewing Filterndash To update display viewing manager invokes the viewing filterndash It filters the document to generate a new buffer with content for

viewingbull Viewing Buffer

ndash Has the content for viewingndash This content is passed to the viewing manager which produces

the display by mapping the buffers content to a window

bull Editing filterndash Filtering is the process of selection of contiguous

characters beginning from the current positionndash When the user issues an edit command the editing

manager invokes the editing filter This filter filters the document to generate a new buffer with content for editing

ndash As editing is performed editing filter reflects the changes into the internal form amp updates the contents of the viewing buffer inorder to make the changes visible on the screen

ndash Support an undo function by storing a stack of previous views

bull Editing bufferndash Editing filter creates an editing buffer that contains the

portion of document selected by the user for editing

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 2: Debugger & Editor.ppt

bull A debugger is a program execution platform that allows ndash pausing program execution at specific pointsndash inspecting the values of program variablesndash modifying the values of program variablesndash evaluating arbitrary expressionsndash calling arbitrary routines

bull Debuggers allowndash Controlled stepping through programndash Runtime examination of variablesndash Interactive analysis of programndash No recompile needed each time a possible

bug ruled out

ndash A breakpoint is a pseudo instruction that the user insert at any place into the program at debug time

ndash execution is controlled by the debugger and the debugger will interpret the breakpoints

ndash When execution crosses a breakpoint the debugger will pause program execution

ndash The user can thenbull inspect variablesbull set or clear breakpointsbull continue execution

bull Debugging system provide functions such asndash Tracing

bull Used to track the flow of execution logic amp data modifications

bull Control flow can be traced at different levels Ie procedure branch individual instructionhellip

ndash Trace backbull Show the path by which the current statement was reachedbull Shows which statements have modified a given variable or

parameterndash Program display capability

bull Display the program being debugged complete with statement numbers

bull Software tools to assist the programmer in debugging arendash Debug monitors

bull Provides debugging support for a program by providing information of errors

ndash Source code control systems bull Helps to keep track of the modifications in the

source code

bull Debuggingndash It is the process of isolating amp correcting the causes

of the known errors in a program ndash Debug monitors provides the following facilities for

debugging1 Setting break points in the program2 Initiating a debug conversation when control reaches a

break point3 Displaying values of variables4 Assigning new values to variables5 Testing user defined programs

Steps in Debugging1 User compiles the program under Debug option Compiler

produces1 Compiled code file2 Debug information file

2 User activates the debug monitor amp indicates the name of program to be debugged

3 Debug monitor opens1 Compiled code2 Debug information file of the program

4 User specifies his debug requirements with1 List of break points2 Action to be performed at break points

5 Debug monitor builds a table containing1 Statement number2 Debug action

Steps 4 amp 5 are repeated until the end of the debug session6 Program executes up to a break point and then a software

interrupt is generated amp control is given to the debug monitor then consults debug table and performs the debug actions specified for the break point

7 Control returns to the program

bull Debugger usage modesbull Postmortem analysisbull Program understandingbull Hypothesis testing

Postmortem analysis bull When a program that is run in a debugger crashes

ndash debugger is used to understand the reason for the crashndash This analysis is done after the factndash (post mortem after death)

bull It is based on analyzingndash which calls in the program produced the call nesting that was

active at the time of the crashndash the variables in these active calls

bull Advantagendash Postmortem analysis is simple and possibly quick

bull Disadvantagendash One cannot analyze how the program arrived at the program

state that produced the crash

Program understanding

bull A debugger helps understanding code one does know wellndash Choose simple program inputs firstndash Single-step through the programndash Step into methods of interest step over the restndash Inspect variables as requiredndash Use a breakpoint to finish loops you have understood

bull Advantage ndash No thinking errorsndash Computer keeps track of variable values for you

bull Limitationsndash Difficult to apply for non-sequential programs

Hypothesis testing bull A debugger helps gathering information about

specific aspects of a program without modifying the program

ndash 1048707No need to insert analysis code recompile redeploy

bull Kinds of informationndash 1048707Program state at a certain point during executionndash 1048707Validating specific expected events

bull their occurrencebull their orderbull their frequency

ndash 1048707Catching specific impossible (unexpected) events

Editors

bull A text editor is a type of program used for editing plain text files Often provided with operating systems

Features of text editorsbull DaggerString searching algorithmbull DaggerCut copy and pastebull DaggerText formattingbull DaggerUndo and redobull DaggerData transformationbull DaggerFilteringbull Syntax highlighting

Types of Editors

bull Line editorsbull Stream editorsbull Screen editorsbull Word processorsbull Structure editors

Line Editors

ndash Scope of line editors is limited to a line of textndash The line is designated positionally by

specifying the serial number in the textndash Edit characters like end of line is maintained

internallyndash Advantage

bull SimplicityEg-ed is a line editor for the Unix operating system

bull Line Editorbull bull Line editor is one of the simplest type of

editor which uses a buffer to store information

bull bull It operates in command mode User give the command to the editor for any operation Editor will respond this command

bull bull Buffer is in the main memory That is set aside to store the information which is entered from the keyboard

bull Meritsbull 1) Simple for read and writebull 2) Simple in design and implementationbull 3) Command and responses are

interleavedbull Demeritsbull 1) Not user friendlybull 2) Context of the text is not displayedbull 3) Only single line

Stream Editorsndash Views the entire text as a stream of characters amp

permits edit operation to cross line boundariesndash It support character line amp context oriented editing

commandsndash Current editing context is indicated by the position of

the text pointer called cursorndash Cursor can be used to move across amp within the linesndash Cursor can be moved by using positioning amp search

commands

Screen Editors

ndash It uses what-you-see- is what-you-get modendash It displays a screen full of text at a timendash User can move the cursor over the screen

position it on a point where the editing process is to be performed

ndash Effect of edit operation can be seen on the screen

ndash Useful while formatting the text to produce printed documents

Word processors

ndash Document editors with additional features to produce well formatted hard copy output

ndash Featuresbull Commands for moving section of text from one

place to anotherbull Merging of textbull Searching wordsbull Replacing wordsbull Spell checking

Structure Editors

ndash Incorporates an awareness of the structure of a document

ndash Useful in browsing through a document amp editing it

ndash Structure is specified while creating or modifying the document

ndash Editing requirement is specified using structure

Editing Processbull Document-editing process is an interactive

user-computer dialogue designed to accomplish 4 tasks

1 Select the part of the target document to be viewed and manipulated

2 Determine how to format this view on-line amp how to display it

3 Specify amp execute operations that modify the target document

4 Update the view appropriately

bull Travellingndash Moving through the editing document to a new

position in the textndash Done explicitly by the userndash It specifies where the area of interest is

bull Editingndash Adding new textndash Modifying the existing textndash Erasing the contentndash Formatting the existing data

bull Viewing amp displaying ndash Viewing amp formatting the text desired for the userndash Abstract viewndash Display component maps this abstract view into the

physical characteristics of the display device being used amp determines where a particular text may appear on user screen

Editor Structure

Commandlanguageprocessor

Editingcomponent

Travelingcomponent

Viewingcomponent

Displaycomponent

Editingbuffer

Viewingbuffer

EditingFilter

Viewingfilter

Mainmemory

Filesystem

input

Output devices

Paging

routines

bull Command language processorndash It accepts input from the usersrsquos input device amp analyses the

tokens and syntactic structure of the commandsndash It then produce an intermediate representation of the desired

editing operationsndash Interpreter then decodes this intermediate representation

bull Editing managerndash Start of the area to be edited is determined by the current editing

pointer maintained by the editing managerndash Current editing pointer can be set or reset explicitly by the user

with traveling commands such as next paragraph or implicitly as a side effect of the previous edit operation as delete paragraph

bull Traveling managerndash Setting of the current editing and viewing pointersndash Invoked explicitly by the user or implicitly by editing operations

bull Viewing Managerndash Start of the area to be viewed is determined by current viewing

pointerndash It is maintained by viewing manager which is collection of

modules responsible for determining the next viewndash Current viewing pointer can be set or reset explicitly by the user

or implicitly by the system as a result of the previous edit operation

bull Display Managerndash Makes provision for appropriate display of textndash Its function may be combined with viewing manager

bull Viewing Filterndash To update display viewing manager invokes the viewing filterndash It filters the document to generate a new buffer with content for

viewingbull Viewing Buffer

ndash Has the content for viewingndash This content is passed to the viewing manager which produces

the display by mapping the buffers content to a window

bull Editing filterndash Filtering is the process of selection of contiguous

characters beginning from the current positionndash When the user issues an edit command the editing

manager invokes the editing filter This filter filters the document to generate a new buffer with content for editing

ndash As editing is performed editing filter reflects the changes into the internal form amp updates the contents of the viewing buffer inorder to make the changes visible on the screen

ndash Support an undo function by storing a stack of previous views

bull Editing bufferndash Editing filter creates an editing buffer that contains the

portion of document selected by the user for editing

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 3: Debugger & Editor.ppt

bull Debuggers allowndash Controlled stepping through programndash Runtime examination of variablesndash Interactive analysis of programndash No recompile needed each time a possible

bug ruled out

ndash A breakpoint is a pseudo instruction that the user insert at any place into the program at debug time

ndash execution is controlled by the debugger and the debugger will interpret the breakpoints

ndash When execution crosses a breakpoint the debugger will pause program execution

ndash The user can thenbull inspect variablesbull set or clear breakpointsbull continue execution

bull Debugging system provide functions such asndash Tracing

bull Used to track the flow of execution logic amp data modifications

bull Control flow can be traced at different levels Ie procedure branch individual instructionhellip

ndash Trace backbull Show the path by which the current statement was reachedbull Shows which statements have modified a given variable or

parameterndash Program display capability

bull Display the program being debugged complete with statement numbers

bull Software tools to assist the programmer in debugging arendash Debug monitors

bull Provides debugging support for a program by providing information of errors

ndash Source code control systems bull Helps to keep track of the modifications in the

source code

bull Debuggingndash It is the process of isolating amp correcting the causes

of the known errors in a program ndash Debug monitors provides the following facilities for

debugging1 Setting break points in the program2 Initiating a debug conversation when control reaches a

break point3 Displaying values of variables4 Assigning new values to variables5 Testing user defined programs

Steps in Debugging1 User compiles the program under Debug option Compiler

produces1 Compiled code file2 Debug information file

2 User activates the debug monitor amp indicates the name of program to be debugged

3 Debug monitor opens1 Compiled code2 Debug information file of the program

4 User specifies his debug requirements with1 List of break points2 Action to be performed at break points

5 Debug monitor builds a table containing1 Statement number2 Debug action

Steps 4 amp 5 are repeated until the end of the debug session6 Program executes up to a break point and then a software

interrupt is generated amp control is given to the debug monitor then consults debug table and performs the debug actions specified for the break point

7 Control returns to the program

bull Debugger usage modesbull Postmortem analysisbull Program understandingbull Hypothesis testing

Postmortem analysis bull When a program that is run in a debugger crashes

ndash debugger is used to understand the reason for the crashndash This analysis is done after the factndash (post mortem after death)

bull It is based on analyzingndash which calls in the program produced the call nesting that was

active at the time of the crashndash the variables in these active calls

bull Advantagendash Postmortem analysis is simple and possibly quick

bull Disadvantagendash One cannot analyze how the program arrived at the program

state that produced the crash

Program understanding

bull A debugger helps understanding code one does know wellndash Choose simple program inputs firstndash Single-step through the programndash Step into methods of interest step over the restndash Inspect variables as requiredndash Use a breakpoint to finish loops you have understood

bull Advantage ndash No thinking errorsndash Computer keeps track of variable values for you

bull Limitationsndash Difficult to apply for non-sequential programs

Hypothesis testing bull A debugger helps gathering information about

specific aspects of a program without modifying the program

ndash 1048707No need to insert analysis code recompile redeploy

bull Kinds of informationndash 1048707Program state at a certain point during executionndash 1048707Validating specific expected events

bull their occurrencebull their orderbull their frequency

ndash 1048707Catching specific impossible (unexpected) events

Editors

bull A text editor is a type of program used for editing plain text files Often provided with operating systems

Features of text editorsbull DaggerString searching algorithmbull DaggerCut copy and pastebull DaggerText formattingbull DaggerUndo and redobull DaggerData transformationbull DaggerFilteringbull Syntax highlighting

Types of Editors

bull Line editorsbull Stream editorsbull Screen editorsbull Word processorsbull Structure editors

Line Editors

ndash Scope of line editors is limited to a line of textndash The line is designated positionally by

specifying the serial number in the textndash Edit characters like end of line is maintained

internallyndash Advantage

bull SimplicityEg-ed is a line editor for the Unix operating system

bull Line Editorbull bull Line editor is one of the simplest type of

editor which uses a buffer to store information

bull bull It operates in command mode User give the command to the editor for any operation Editor will respond this command

bull bull Buffer is in the main memory That is set aside to store the information which is entered from the keyboard

bull Meritsbull 1) Simple for read and writebull 2) Simple in design and implementationbull 3) Command and responses are

interleavedbull Demeritsbull 1) Not user friendlybull 2) Context of the text is not displayedbull 3) Only single line

Stream Editorsndash Views the entire text as a stream of characters amp

permits edit operation to cross line boundariesndash It support character line amp context oriented editing

commandsndash Current editing context is indicated by the position of

the text pointer called cursorndash Cursor can be used to move across amp within the linesndash Cursor can be moved by using positioning amp search

commands

Screen Editors

ndash It uses what-you-see- is what-you-get modendash It displays a screen full of text at a timendash User can move the cursor over the screen

position it on a point where the editing process is to be performed

ndash Effect of edit operation can be seen on the screen

ndash Useful while formatting the text to produce printed documents

Word processors

ndash Document editors with additional features to produce well formatted hard copy output

ndash Featuresbull Commands for moving section of text from one

place to anotherbull Merging of textbull Searching wordsbull Replacing wordsbull Spell checking

Structure Editors

ndash Incorporates an awareness of the structure of a document

ndash Useful in browsing through a document amp editing it

ndash Structure is specified while creating or modifying the document

ndash Editing requirement is specified using structure

Editing Processbull Document-editing process is an interactive

user-computer dialogue designed to accomplish 4 tasks

1 Select the part of the target document to be viewed and manipulated

2 Determine how to format this view on-line amp how to display it

3 Specify amp execute operations that modify the target document

4 Update the view appropriately

bull Travellingndash Moving through the editing document to a new

position in the textndash Done explicitly by the userndash It specifies where the area of interest is

bull Editingndash Adding new textndash Modifying the existing textndash Erasing the contentndash Formatting the existing data

bull Viewing amp displaying ndash Viewing amp formatting the text desired for the userndash Abstract viewndash Display component maps this abstract view into the

physical characteristics of the display device being used amp determines where a particular text may appear on user screen

Editor Structure

Commandlanguageprocessor

Editingcomponent

Travelingcomponent

Viewingcomponent

Displaycomponent

Editingbuffer

Viewingbuffer

EditingFilter

Viewingfilter

Mainmemory

Filesystem

input

Output devices

Paging

routines

bull Command language processorndash It accepts input from the usersrsquos input device amp analyses the

tokens and syntactic structure of the commandsndash It then produce an intermediate representation of the desired

editing operationsndash Interpreter then decodes this intermediate representation

bull Editing managerndash Start of the area to be edited is determined by the current editing

pointer maintained by the editing managerndash Current editing pointer can be set or reset explicitly by the user

with traveling commands such as next paragraph or implicitly as a side effect of the previous edit operation as delete paragraph

bull Traveling managerndash Setting of the current editing and viewing pointersndash Invoked explicitly by the user or implicitly by editing operations

bull Viewing Managerndash Start of the area to be viewed is determined by current viewing

pointerndash It is maintained by viewing manager which is collection of

modules responsible for determining the next viewndash Current viewing pointer can be set or reset explicitly by the user

or implicitly by the system as a result of the previous edit operation

bull Display Managerndash Makes provision for appropriate display of textndash Its function may be combined with viewing manager

bull Viewing Filterndash To update display viewing manager invokes the viewing filterndash It filters the document to generate a new buffer with content for

viewingbull Viewing Buffer

ndash Has the content for viewingndash This content is passed to the viewing manager which produces

the display by mapping the buffers content to a window

bull Editing filterndash Filtering is the process of selection of contiguous

characters beginning from the current positionndash When the user issues an edit command the editing

manager invokes the editing filter This filter filters the document to generate a new buffer with content for editing

ndash As editing is performed editing filter reflects the changes into the internal form amp updates the contents of the viewing buffer inorder to make the changes visible on the screen

ndash Support an undo function by storing a stack of previous views

bull Editing bufferndash Editing filter creates an editing buffer that contains the

portion of document selected by the user for editing

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 4: Debugger & Editor.ppt

ndash A breakpoint is a pseudo instruction that the user insert at any place into the program at debug time

ndash execution is controlled by the debugger and the debugger will interpret the breakpoints

ndash When execution crosses a breakpoint the debugger will pause program execution

ndash The user can thenbull inspect variablesbull set or clear breakpointsbull continue execution

bull Debugging system provide functions such asndash Tracing

bull Used to track the flow of execution logic amp data modifications

bull Control flow can be traced at different levels Ie procedure branch individual instructionhellip

ndash Trace backbull Show the path by which the current statement was reachedbull Shows which statements have modified a given variable or

parameterndash Program display capability

bull Display the program being debugged complete with statement numbers

bull Software tools to assist the programmer in debugging arendash Debug monitors

bull Provides debugging support for a program by providing information of errors

ndash Source code control systems bull Helps to keep track of the modifications in the

source code

bull Debuggingndash It is the process of isolating amp correcting the causes

of the known errors in a program ndash Debug monitors provides the following facilities for

debugging1 Setting break points in the program2 Initiating a debug conversation when control reaches a

break point3 Displaying values of variables4 Assigning new values to variables5 Testing user defined programs

Steps in Debugging1 User compiles the program under Debug option Compiler

produces1 Compiled code file2 Debug information file

2 User activates the debug monitor amp indicates the name of program to be debugged

3 Debug monitor opens1 Compiled code2 Debug information file of the program

4 User specifies his debug requirements with1 List of break points2 Action to be performed at break points

5 Debug monitor builds a table containing1 Statement number2 Debug action

Steps 4 amp 5 are repeated until the end of the debug session6 Program executes up to a break point and then a software

interrupt is generated amp control is given to the debug monitor then consults debug table and performs the debug actions specified for the break point

7 Control returns to the program

bull Debugger usage modesbull Postmortem analysisbull Program understandingbull Hypothesis testing

Postmortem analysis bull When a program that is run in a debugger crashes

ndash debugger is used to understand the reason for the crashndash This analysis is done after the factndash (post mortem after death)

bull It is based on analyzingndash which calls in the program produced the call nesting that was

active at the time of the crashndash the variables in these active calls

bull Advantagendash Postmortem analysis is simple and possibly quick

bull Disadvantagendash One cannot analyze how the program arrived at the program

state that produced the crash

Program understanding

bull A debugger helps understanding code one does know wellndash Choose simple program inputs firstndash Single-step through the programndash Step into methods of interest step over the restndash Inspect variables as requiredndash Use a breakpoint to finish loops you have understood

bull Advantage ndash No thinking errorsndash Computer keeps track of variable values for you

bull Limitationsndash Difficult to apply for non-sequential programs

Hypothesis testing bull A debugger helps gathering information about

specific aspects of a program without modifying the program

ndash 1048707No need to insert analysis code recompile redeploy

bull Kinds of informationndash 1048707Program state at a certain point during executionndash 1048707Validating specific expected events

bull their occurrencebull their orderbull their frequency

ndash 1048707Catching specific impossible (unexpected) events

Editors

bull A text editor is a type of program used for editing plain text files Often provided with operating systems

Features of text editorsbull DaggerString searching algorithmbull DaggerCut copy and pastebull DaggerText formattingbull DaggerUndo and redobull DaggerData transformationbull DaggerFilteringbull Syntax highlighting

Types of Editors

bull Line editorsbull Stream editorsbull Screen editorsbull Word processorsbull Structure editors

Line Editors

ndash Scope of line editors is limited to a line of textndash The line is designated positionally by

specifying the serial number in the textndash Edit characters like end of line is maintained

internallyndash Advantage

bull SimplicityEg-ed is a line editor for the Unix operating system

bull Line Editorbull bull Line editor is one of the simplest type of

editor which uses a buffer to store information

bull bull It operates in command mode User give the command to the editor for any operation Editor will respond this command

bull bull Buffer is in the main memory That is set aside to store the information which is entered from the keyboard

bull Meritsbull 1) Simple for read and writebull 2) Simple in design and implementationbull 3) Command and responses are

interleavedbull Demeritsbull 1) Not user friendlybull 2) Context of the text is not displayedbull 3) Only single line

Stream Editorsndash Views the entire text as a stream of characters amp

permits edit operation to cross line boundariesndash It support character line amp context oriented editing

commandsndash Current editing context is indicated by the position of

the text pointer called cursorndash Cursor can be used to move across amp within the linesndash Cursor can be moved by using positioning amp search

commands

Screen Editors

ndash It uses what-you-see- is what-you-get modendash It displays a screen full of text at a timendash User can move the cursor over the screen

position it on a point where the editing process is to be performed

ndash Effect of edit operation can be seen on the screen

ndash Useful while formatting the text to produce printed documents

Word processors

ndash Document editors with additional features to produce well formatted hard copy output

ndash Featuresbull Commands for moving section of text from one

place to anotherbull Merging of textbull Searching wordsbull Replacing wordsbull Spell checking

Structure Editors

ndash Incorporates an awareness of the structure of a document

ndash Useful in browsing through a document amp editing it

ndash Structure is specified while creating or modifying the document

ndash Editing requirement is specified using structure

Editing Processbull Document-editing process is an interactive

user-computer dialogue designed to accomplish 4 tasks

1 Select the part of the target document to be viewed and manipulated

2 Determine how to format this view on-line amp how to display it

3 Specify amp execute operations that modify the target document

4 Update the view appropriately

bull Travellingndash Moving through the editing document to a new

position in the textndash Done explicitly by the userndash It specifies where the area of interest is

bull Editingndash Adding new textndash Modifying the existing textndash Erasing the contentndash Formatting the existing data

bull Viewing amp displaying ndash Viewing amp formatting the text desired for the userndash Abstract viewndash Display component maps this abstract view into the

physical characteristics of the display device being used amp determines where a particular text may appear on user screen

Editor Structure

Commandlanguageprocessor

Editingcomponent

Travelingcomponent

Viewingcomponent

Displaycomponent

Editingbuffer

Viewingbuffer

EditingFilter

Viewingfilter

Mainmemory

Filesystem

input

Output devices

Paging

routines

bull Command language processorndash It accepts input from the usersrsquos input device amp analyses the

tokens and syntactic structure of the commandsndash It then produce an intermediate representation of the desired

editing operationsndash Interpreter then decodes this intermediate representation

bull Editing managerndash Start of the area to be edited is determined by the current editing

pointer maintained by the editing managerndash Current editing pointer can be set or reset explicitly by the user

with traveling commands such as next paragraph or implicitly as a side effect of the previous edit operation as delete paragraph

bull Traveling managerndash Setting of the current editing and viewing pointersndash Invoked explicitly by the user or implicitly by editing operations

bull Viewing Managerndash Start of the area to be viewed is determined by current viewing

pointerndash It is maintained by viewing manager which is collection of

modules responsible for determining the next viewndash Current viewing pointer can be set or reset explicitly by the user

or implicitly by the system as a result of the previous edit operation

bull Display Managerndash Makes provision for appropriate display of textndash Its function may be combined with viewing manager

bull Viewing Filterndash To update display viewing manager invokes the viewing filterndash It filters the document to generate a new buffer with content for

viewingbull Viewing Buffer

ndash Has the content for viewingndash This content is passed to the viewing manager which produces

the display by mapping the buffers content to a window

bull Editing filterndash Filtering is the process of selection of contiguous

characters beginning from the current positionndash When the user issues an edit command the editing

manager invokes the editing filter This filter filters the document to generate a new buffer with content for editing

ndash As editing is performed editing filter reflects the changes into the internal form amp updates the contents of the viewing buffer inorder to make the changes visible on the screen

ndash Support an undo function by storing a stack of previous views

bull Editing bufferndash Editing filter creates an editing buffer that contains the

portion of document selected by the user for editing

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 5: Debugger & Editor.ppt

bull Debugging system provide functions such asndash Tracing

bull Used to track the flow of execution logic amp data modifications

bull Control flow can be traced at different levels Ie procedure branch individual instructionhellip

ndash Trace backbull Show the path by which the current statement was reachedbull Shows which statements have modified a given variable or

parameterndash Program display capability

bull Display the program being debugged complete with statement numbers

bull Software tools to assist the programmer in debugging arendash Debug monitors

bull Provides debugging support for a program by providing information of errors

ndash Source code control systems bull Helps to keep track of the modifications in the

source code

bull Debuggingndash It is the process of isolating amp correcting the causes

of the known errors in a program ndash Debug monitors provides the following facilities for

debugging1 Setting break points in the program2 Initiating a debug conversation when control reaches a

break point3 Displaying values of variables4 Assigning new values to variables5 Testing user defined programs

Steps in Debugging1 User compiles the program under Debug option Compiler

produces1 Compiled code file2 Debug information file

2 User activates the debug monitor amp indicates the name of program to be debugged

3 Debug monitor opens1 Compiled code2 Debug information file of the program

4 User specifies his debug requirements with1 List of break points2 Action to be performed at break points

5 Debug monitor builds a table containing1 Statement number2 Debug action

Steps 4 amp 5 are repeated until the end of the debug session6 Program executes up to a break point and then a software

interrupt is generated amp control is given to the debug monitor then consults debug table and performs the debug actions specified for the break point

7 Control returns to the program

bull Debugger usage modesbull Postmortem analysisbull Program understandingbull Hypothesis testing

Postmortem analysis bull When a program that is run in a debugger crashes

ndash debugger is used to understand the reason for the crashndash This analysis is done after the factndash (post mortem after death)

bull It is based on analyzingndash which calls in the program produced the call nesting that was

active at the time of the crashndash the variables in these active calls

bull Advantagendash Postmortem analysis is simple and possibly quick

bull Disadvantagendash One cannot analyze how the program arrived at the program

state that produced the crash

Program understanding

bull A debugger helps understanding code one does know wellndash Choose simple program inputs firstndash Single-step through the programndash Step into methods of interest step over the restndash Inspect variables as requiredndash Use a breakpoint to finish loops you have understood

bull Advantage ndash No thinking errorsndash Computer keeps track of variable values for you

bull Limitationsndash Difficult to apply for non-sequential programs

Hypothesis testing bull A debugger helps gathering information about

specific aspects of a program without modifying the program

ndash 1048707No need to insert analysis code recompile redeploy

bull Kinds of informationndash 1048707Program state at a certain point during executionndash 1048707Validating specific expected events

bull their occurrencebull their orderbull their frequency

ndash 1048707Catching specific impossible (unexpected) events

Editors

bull A text editor is a type of program used for editing plain text files Often provided with operating systems

Features of text editorsbull DaggerString searching algorithmbull DaggerCut copy and pastebull DaggerText formattingbull DaggerUndo and redobull DaggerData transformationbull DaggerFilteringbull Syntax highlighting

Types of Editors

bull Line editorsbull Stream editorsbull Screen editorsbull Word processorsbull Structure editors

Line Editors

ndash Scope of line editors is limited to a line of textndash The line is designated positionally by

specifying the serial number in the textndash Edit characters like end of line is maintained

internallyndash Advantage

bull SimplicityEg-ed is a line editor for the Unix operating system

bull Line Editorbull bull Line editor is one of the simplest type of

editor which uses a buffer to store information

bull bull It operates in command mode User give the command to the editor for any operation Editor will respond this command

bull bull Buffer is in the main memory That is set aside to store the information which is entered from the keyboard

bull Meritsbull 1) Simple for read and writebull 2) Simple in design and implementationbull 3) Command and responses are

interleavedbull Demeritsbull 1) Not user friendlybull 2) Context of the text is not displayedbull 3) Only single line

Stream Editorsndash Views the entire text as a stream of characters amp

permits edit operation to cross line boundariesndash It support character line amp context oriented editing

commandsndash Current editing context is indicated by the position of

the text pointer called cursorndash Cursor can be used to move across amp within the linesndash Cursor can be moved by using positioning amp search

commands

Screen Editors

ndash It uses what-you-see- is what-you-get modendash It displays a screen full of text at a timendash User can move the cursor over the screen

position it on a point where the editing process is to be performed

ndash Effect of edit operation can be seen on the screen

ndash Useful while formatting the text to produce printed documents

Word processors

ndash Document editors with additional features to produce well formatted hard copy output

ndash Featuresbull Commands for moving section of text from one

place to anotherbull Merging of textbull Searching wordsbull Replacing wordsbull Spell checking

Structure Editors

ndash Incorporates an awareness of the structure of a document

ndash Useful in browsing through a document amp editing it

ndash Structure is specified while creating or modifying the document

ndash Editing requirement is specified using structure

Editing Processbull Document-editing process is an interactive

user-computer dialogue designed to accomplish 4 tasks

1 Select the part of the target document to be viewed and manipulated

2 Determine how to format this view on-line amp how to display it

3 Specify amp execute operations that modify the target document

4 Update the view appropriately

bull Travellingndash Moving through the editing document to a new

position in the textndash Done explicitly by the userndash It specifies where the area of interest is

bull Editingndash Adding new textndash Modifying the existing textndash Erasing the contentndash Formatting the existing data

bull Viewing amp displaying ndash Viewing amp formatting the text desired for the userndash Abstract viewndash Display component maps this abstract view into the

physical characteristics of the display device being used amp determines where a particular text may appear on user screen

Editor Structure

Commandlanguageprocessor

Editingcomponent

Travelingcomponent

Viewingcomponent

Displaycomponent

Editingbuffer

Viewingbuffer

EditingFilter

Viewingfilter

Mainmemory

Filesystem

input

Output devices

Paging

routines

bull Command language processorndash It accepts input from the usersrsquos input device amp analyses the

tokens and syntactic structure of the commandsndash It then produce an intermediate representation of the desired

editing operationsndash Interpreter then decodes this intermediate representation

bull Editing managerndash Start of the area to be edited is determined by the current editing

pointer maintained by the editing managerndash Current editing pointer can be set or reset explicitly by the user

with traveling commands such as next paragraph or implicitly as a side effect of the previous edit operation as delete paragraph

bull Traveling managerndash Setting of the current editing and viewing pointersndash Invoked explicitly by the user or implicitly by editing operations

bull Viewing Managerndash Start of the area to be viewed is determined by current viewing

pointerndash It is maintained by viewing manager which is collection of

modules responsible for determining the next viewndash Current viewing pointer can be set or reset explicitly by the user

or implicitly by the system as a result of the previous edit operation

bull Display Managerndash Makes provision for appropriate display of textndash Its function may be combined with viewing manager

bull Viewing Filterndash To update display viewing manager invokes the viewing filterndash It filters the document to generate a new buffer with content for

viewingbull Viewing Buffer

ndash Has the content for viewingndash This content is passed to the viewing manager which produces

the display by mapping the buffers content to a window

bull Editing filterndash Filtering is the process of selection of contiguous

characters beginning from the current positionndash When the user issues an edit command the editing

manager invokes the editing filter This filter filters the document to generate a new buffer with content for editing

ndash As editing is performed editing filter reflects the changes into the internal form amp updates the contents of the viewing buffer inorder to make the changes visible on the screen

ndash Support an undo function by storing a stack of previous views

bull Editing bufferndash Editing filter creates an editing buffer that contains the

portion of document selected by the user for editing

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 6: Debugger & Editor.ppt

bull Software tools to assist the programmer in debugging arendash Debug monitors

bull Provides debugging support for a program by providing information of errors

ndash Source code control systems bull Helps to keep track of the modifications in the

source code

bull Debuggingndash It is the process of isolating amp correcting the causes

of the known errors in a program ndash Debug monitors provides the following facilities for

debugging1 Setting break points in the program2 Initiating a debug conversation when control reaches a

break point3 Displaying values of variables4 Assigning new values to variables5 Testing user defined programs

Steps in Debugging1 User compiles the program under Debug option Compiler

produces1 Compiled code file2 Debug information file

2 User activates the debug monitor amp indicates the name of program to be debugged

3 Debug monitor opens1 Compiled code2 Debug information file of the program

4 User specifies his debug requirements with1 List of break points2 Action to be performed at break points

5 Debug monitor builds a table containing1 Statement number2 Debug action

Steps 4 amp 5 are repeated until the end of the debug session6 Program executes up to a break point and then a software

interrupt is generated amp control is given to the debug monitor then consults debug table and performs the debug actions specified for the break point

7 Control returns to the program

bull Debugger usage modesbull Postmortem analysisbull Program understandingbull Hypothesis testing

Postmortem analysis bull When a program that is run in a debugger crashes

ndash debugger is used to understand the reason for the crashndash This analysis is done after the factndash (post mortem after death)

bull It is based on analyzingndash which calls in the program produced the call nesting that was

active at the time of the crashndash the variables in these active calls

bull Advantagendash Postmortem analysis is simple and possibly quick

bull Disadvantagendash One cannot analyze how the program arrived at the program

state that produced the crash

Program understanding

bull A debugger helps understanding code one does know wellndash Choose simple program inputs firstndash Single-step through the programndash Step into methods of interest step over the restndash Inspect variables as requiredndash Use a breakpoint to finish loops you have understood

bull Advantage ndash No thinking errorsndash Computer keeps track of variable values for you

bull Limitationsndash Difficult to apply for non-sequential programs

Hypothesis testing bull A debugger helps gathering information about

specific aspects of a program without modifying the program

ndash 1048707No need to insert analysis code recompile redeploy

bull Kinds of informationndash 1048707Program state at a certain point during executionndash 1048707Validating specific expected events

bull their occurrencebull their orderbull their frequency

ndash 1048707Catching specific impossible (unexpected) events

Editors

bull A text editor is a type of program used for editing plain text files Often provided with operating systems

Features of text editorsbull DaggerString searching algorithmbull DaggerCut copy and pastebull DaggerText formattingbull DaggerUndo and redobull DaggerData transformationbull DaggerFilteringbull Syntax highlighting

Types of Editors

bull Line editorsbull Stream editorsbull Screen editorsbull Word processorsbull Structure editors

Line Editors

ndash Scope of line editors is limited to a line of textndash The line is designated positionally by

specifying the serial number in the textndash Edit characters like end of line is maintained

internallyndash Advantage

bull SimplicityEg-ed is a line editor for the Unix operating system

bull Line Editorbull bull Line editor is one of the simplest type of

editor which uses a buffer to store information

bull bull It operates in command mode User give the command to the editor for any operation Editor will respond this command

bull bull Buffer is in the main memory That is set aside to store the information which is entered from the keyboard

bull Meritsbull 1) Simple for read and writebull 2) Simple in design and implementationbull 3) Command and responses are

interleavedbull Demeritsbull 1) Not user friendlybull 2) Context of the text is not displayedbull 3) Only single line

Stream Editorsndash Views the entire text as a stream of characters amp

permits edit operation to cross line boundariesndash It support character line amp context oriented editing

commandsndash Current editing context is indicated by the position of

the text pointer called cursorndash Cursor can be used to move across amp within the linesndash Cursor can be moved by using positioning amp search

commands

Screen Editors

ndash It uses what-you-see- is what-you-get modendash It displays a screen full of text at a timendash User can move the cursor over the screen

position it on a point where the editing process is to be performed

ndash Effect of edit operation can be seen on the screen

ndash Useful while formatting the text to produce printed documents

Word processors

ndash Document editors with additional features to produce well formatted hard copy output

ndash Featuresbull Commands for moving section of text from one

place to anotherbull Merging of textbull Searching wordsbull Replacing wordsbull Spell checking

Structure Editors

ndash Incorporates an awareness of the structure of a document

ndash Useful in browsing through a document amp editing it

ndash Structure is specified while creating or modifying the document

ndash Editing requirement is specified using structure

Editing Processbull Document-editing process is an interactive

user-computer dialogue designed to accomplish 4 tasks

1 Select the part of the target document to be viewed and manipulated

2 Determine how to format this view on-line amp how to display it

3 Specify amp execute operations that modify the target document

4 Update the view appropriately

bull Travellingndash Moving through the editing document to a new

position in the textndash Done explicitly by the userndash It specifies where the area of interest is

bull Editingndash Adding new textndash Modifying the existing textndash Erasing the contentndash Formatting the existing data

bull Viewing amp displaying ndash Viewing amp formatting the text desired for the userndash Abstract viewndash Display component maps this abstract view into the

physical characteristics of the display device being used amp determines where a particular text may appear on user screen

Editor Structure

Commandlanguageprocessor

Editingcomponent

Travelingcomponent

Viewingcomponent

Displaycomponent

Editingbuffer

Viewingbuffer

EditingFilter

Viewingfilter

Mainmemory

Filesystem

input

Output devices

Paging

routines

bull Command language processorndash It accepts input from the usersrsquos input device amp analyses the

tokens and syntactic structure of the commandsndash It then produce an intermediate representation of the desired

editing operationsndash Interpreter then decodes this intermediate representation

bull Editing managerndash Start of the area to be edited is determined by the current editing

pointer maintained by the editing managerndash Current editing pointer can be set or reset explicitly by the user

with traveling commands such as next paragraph or implicitly as a side effect of the previous edit operation as delete paragraph

bull Traveling managerndash Setting of the current editing and viewing pointersndash Invoked explicitly by the user or implicitly by editing operations

bull Viewing Managerndash Start of the area to be viewed is determined by current viewing

pointerndash It is maintained by viewing manager which is collection of

modules responsible for determining the next viewndash Current viewing pointer can be set or reset explicitly by the user

or implicitly by the system as a result of the previous edit operation

bull Display Managerndash Makes provision for appropriate display of textndash Its function may be combined with viewing manager

bull Viewing Filterndash To update display viewing manager invokes the viewing filterndash It filters the document to generate a new buffer with content for

viewingbull Viewing Buffer

ndash Has the content for viewingndash This content is passed to the viewing manager which produces

the display by mapping the buffers content to a window

bull Editing filterndash Filtering is the process of selection of contiguous

characters beginning from the current positionndash When the user issues an edit command the editing

manager invokes the editing filter This filter filters the document to generate a new buffer with content for editing

ndash As editing is performed editing filter reflects the changes into the internal form amp updates the contents of the viewing buffer inorder to make the changes visible on the screen

ndash Support an undo function by storing a stack of previous views

bull Editing bufferndash Editing filter creates an editing buffer that contains the

portion of document selected by the user for editing

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 7: Debugger & Editor.ppt

bull Debuggingndash It is the process of isolating amp correcting the causes

of the known errors in a program ndash Debug monitors provides the following facilities for

debugging1 Setting break points in the program2 Initiating a debug conversation when control reaches a

break point3 Displaying values of variables4 Assigning new values to variables5 Testing user defined programs

Steps in Debugging1 User compiles the program under Debug option Compiler

produces1 Compiled code file2 Debug information file

2 User activates the debug monitor amp indicates the name of program to be debugged

3 Debug monitor opens1 Compiled code2 Debug information file of the program

4 User specifies his debug requirements with1 List of break points2 Action to be performed at break points

5 Debug monitor builds a table containing1 Statement number2 Debug action

Steps 4 amp 5 are repeated until the end of the debug session6 Program executes up to a break point and then a software

interrupt is generated amp control is given to the debug monitor then consults debug table and performs the debug actions specified for the break point

7 Control returns to the program

bull Debugger usage modesbull Postmortem analysisbull Program understandingbull Hypothesis testing

Postmortem analysis bull When a program that is run in a debugger crashes

ndash debugger is used to understand the reason for the crashndash This analysis is done after the factndash (post mortem after death)

bull It is based on analyzingndash which calls in the program produced the call nesting that was

active at the time of the crashndash the variables in these active calls

bull Advantagendash Postmortem analysis is simple and possibly quick

bull Disadvantagendash One cannot analyze how the program arrived at the program

state that produced the crash

Program understanding

bull A debugger helps understanding code one does know wellndash Choose simple program inputs firstndash Single-step through the programndash Step into methods of interest step over the restndash Inspect variables as requiredndash Use a breakpoint to finish loops you have understood

bull Advantage ndash No thinking errorsndash Computer keeps track of variable values for you

bull Limitationsndash Difficult to apply for non-sequential programs

Hypothesis testing bull A debugger helps gathering information about

specific aspects of a program without modifying the program

ndash 1048707No need to insert analysis code recompile redeploy

bull Kinds of informationndash 1048707Program state at a certain point during executionndash 1048707Validating specific expected events

bull their occurrencebull their orderbull their frequency

ndash 1048707Catching specific impossible (unexpected) events

Editors

bull A text editor is a type of program used for editing plain text files Often provided with operating systems

Features of text editorsbull DaggerString searching algorithmbull DaggerCut copy and pastebull DaggerText formattingbull DaggerUndo and redobull DaggerData transformationbull DaggerFilteringbull Syntax highlighting

Types of Editors

bull Line editorsbull Stream editorsbull Screen editorsbull Word processorsbull Structure editors

Line Editors

ndash Scope of line editors is limited to a line of textndash The line is designated positionally by

specifying the serial number in the textndash Edit characters like end of line is maintained

internallyndash Advantage

bull SimplicityEg-ed is a line editor for the Unix operating system

bull Line Editorbull bull Line editor is one of the simplest type of

editor which uses a buffer to store information

bull bull It operates in command mode User give the command to the editor for any operation Editor will respond this command

bull bull Buffer is in the main memory That is set aside to store the information which is entered from the keyboard

bull Meritsbull 1) Simple for read and writebull 2) Simple in design and implementationbull 3) Command and responses are

interleavedbull Demeritsbull 1) Not user friendlybull 2) Context of the text is not displayedbull 3) Only single line

Stream Editorsndash Views the entire text as a stream of characters amp

permits edit operation to cross line boundariesndash It support character line amp context oriented editing

commandsndash Current editing context is indicated by the position of

the text pointer called cursorndash Cursor can be used to move across amp within the linesndash Cursor can be moved by using positioning amp search

commands

Screen Editors

ndash It uses what-you-see- is what-you-get modendash It displays a screen full of text at a timendash User can move the cursor over the screen

position it on a point where the editing process is to be performed

ndash Effect of edit operation can be seen on the screen

ndash Useful while formatting the text to produce printed documents

Word processors

ndash Document editors with additional features to produce well formatted hard copy output

ndash Featuresbull Commands for moving section of text from one

place to anotherbull Merging of textbull Searching wordsbull Replacing wordsbull Spell checking

Structure Editors

ndash Incorporates an awareness of the structure of a document

ndash Useful in browsing through a document amp editing it

ndash Structure is specified while creating or modifying the document

ndash Editing requirement is specified using structure

Editing Processbull Document-editing process is an interactive

user-computer dialogue designed to accomplish 4 tasks

1 Select the part of the target document to be viewed and manipulated

2 Determine how to format this view on-line amp how to display it

3 Specify amp execute operations that modify the target document

4 Update the view appropriately

bull Travellingndash Moving through the editing document to a new

position in the textndash Done explicitly by the userndash It specifies where the area of interest is

bull Editingndash Adding new textndash Modifying the existing textndash Erasing the contentndash Formatting the existing data

bull Viewing amp displaying ndash Viewing amp formatting the text desired for the userndash Abstract viewndash Display component maps this abstract view into the

physical characteristics of the display device being used amp determines where a particular text may appear on user screen

Editor Structure

Commandlanguageprocessor

Editingcomponent

Travelingcomponent

Viewingcomponent

Displaycomponent

Editingbuffer

Viewingbuffer

EditingFilter

Viewingfilter

Mainmemory

Filesystem

input

Output devices

Paging

routines

bull Command language processorndash It accepts input from the usersrsquos input device amp analyses the

tokens and syntactic structure of the commandsndash It then produce an intermediate representation of the desired

editing operationsndash Interpreter then decodes this intermediate representation

bull Editing managerndash Start of the area to be edited is determined by the current editing

pointer maintained by the editing managerndash Current editing pointer can be set or reset explicitly by the user

with traveling commands such as next paragraph or implicitly as a side effect of the previous edit operation as delete paragraph

bull Traveling managerndash Setting of the current editing and viewing pointersndash Invoked explicitly by the user or implicitly by editing operations

bull Viewing Managerndash Start of the area to be viewed is determined by current viewing

pointerndash It is maintained by viewing manager which is collection of

modules responsible for determining the next viewndash Current viewing pointer can be set or reset explicitly by the user

or implicitly by the system as a result of the previous edit operation

bull Display Managerndash Makes provision for appropriate display of textndash Its function may be combined with viewing manager

bull Viewing Filterndash To update display viewing manager invokes the viewing filterndash It filters the document to generate a new buffer with content for

viewingbull Viewing Buffer

ndash Has the content for viewingndash This content is passed to the viewing manager which produces

the display by mapping the buffers content to a window

bull Editing filterndash Filtering is the process of selection of contiguous

characters beginning from the current positionndash When the user issues an edit command the editing

manager invokes the editing filter This filter filters the document to generate a new buffer with content for editing

ndash As editing is performed editing filter reflects the changes into the internal form amp updates the contents of the viewing buffer inorder to make the changes visible on the screen

ndash Support an undo function by storing a stack of previous views

bull Editing bufferndash Editing filter creates an editing buffer that contains the

portion of document selected by the user for editing

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 8: Debugger & Editor.ppt

Steps in Debugging1 User compiles the program under Debug option Compiler

produces1 Compiled code file2 Debug information file

2 User activates the debug monitor amp indicates the name of program to be debugged

3 Debug monitor opens1 Compiled code2 Debug information file of the program

4 User specifies his debug requirements with1 List of break points2 Action to be performed at break points

5 Debug monitor builds a table containing1 Statement number2 Debug action

Steps 4 amp 5 are repeated until the end of the debug session6 Program executes up to a break point and then a software

interrupt is generated amp control is given to the debug monitor then consults debug table and performs the debug actions specified for the break point

7 Control returns to the program

bull Debugger usage modesbull Postmortem analysisbull Program understandingbull Hypothesis testing

Postmortem analysis bull When a program that is run in a debugger crashes

ndash debugger is used to understand the reason for the crashndash This analysis is done after the factndash (post mortem after death)

bull It is based on analyzingndash which calls in the program produced the call nesting that was

active at the time of the crashndash the variables in these active calls

bull Advantagendash Postmortem analysis is simple and possibly quick

bull Disadvantagendash One cannot analyze how the program arrived at the program

state that produced the crash

Program understanding

bull A debugger helps understanding code one does know wellndash Choose simple program inputs firstndash Single-step through the programndash Step into methods of interest step over the restndash Inspect variables as requiredndash Use a breakpoint to finish loops you have understood

bull Advantage ndash No thinking errorsndash Computer keeps track of variable values for you

bull Limitationsndash Difficult to apply for non-sequential programs

Hypothesis testing bull A debugger helps gathering information about

specific aspects of a program without modifying the program

ndash 1048707No need to insert analysis code recompile redeploy

bull Kinds of informationndash 1048707Program state at a certain point during executionndash 1048707Validating specific expected events

bull their occurrencebull their orderbull their frequency

ndash 1048707Catching specific impossible (unexpected) events

Editors

bull A text editor is a type of program used for editing plain text files Often provided with operating systems

Features of text editorsbull DaggerString searching algorithmbull DaggerCut copy and pastebull DaggerText formattingbull DaggerUndo and redobull DaggerData transformationbull DaggerFilteringbull Syntax highlighting

Types of Editors

bull Line editorsbull Stream editorsbull Screen editorsbull Word processorsbull Structure editors

Line Editors

ndash Scope of line editors is limited to a line of textndash The line is designated positionally by

specifying the serial number in the textndash Edit characters like end of line is maintained

internallyndash Advantage

bull SimplicityEg-ed is a line editor for the Unix operating system

bull Line Editorbull bull Line editor is one of the simplest type of

editor which uses a buffer to store information

bull bull It operates in command mode User give the command to the editor for any operation Editor will respond this command

bull bull Buffer is in the main memory That is set aside to store the information which is entered from the keyboard

bull Meritsbull 1) Simple for read and writebull 2) Simple in design and implementationbull 3) Command and responses are

interleavedbull Demeritsbull 1) Not user friendlybull 2) Context of the text is not displayedbull 3) Only single line

Stream Editorsndash Views the entire text as a stream of characters amp

permits edit operation to cross line boundariesndash It support character line amp context oriented editing

commandsndash Current editing context is indicated by the position of

the text pointer called cursorndash Cursor can be used to move across amp within the linesndash Cursor can be moved by using positioning amp search

commands

Screen Editors

ndash It uses what-you-see- is what-you-get modendash It displays a screen full of text at a timendash User can move the cursor over the screen

position it on a point where the editing process is to be performed

ndash Effect of edit operation can be seen on the screen

ndash Useful while formatting the text to produce printed documents

Word processors

ndash Document editors with additional features to produce well formatted hard copy output

ndash Featuresbull Commands for moving section of text from one

place to anotherbull Merging of textbull Searching wordsbull Replacing wordsbull Spell checking

Structure Editors

ndash Incorporates an awareness of the structure of a document

ndash Useful in browsing through a document amp editing it

ndash Structure is specified while creating or modifying the document

ndash Editing requirement is specified using structure

Editing Processbull Document-editing process is an interactive

user-computer dialogue designed to accomplish 4 tasks

1 Select the part of the target document to be viewed and manipulated

2 Determine how to format this view on-line amp how to display it

3 Specify amp execute operations that modify the target document

4 Update the view appropriately

bull Travellingndash Moving through the editing document to a new

position in the textndash Done explicitly by the userndash It specifies where the area of interest is

bull Editingndash Adding new textndash Modifying the existing textndash Erasing the contentndash Formatting the existing data

bull Viewing amp displaying ndash Viewing amp formatting the text desired for the userndash Abstract viewndash Display component maps this abstract view into the

physical characteristics of the display device being used amp determines where a particular text may appear on user screen

Editor Structure

Commandlanguageprocessor

Editingcomponent

Travelingcomponent

Viewingcomponent

Displaycomponent

Editingbuffer

Viewingbuffer

EditingFilter

Viewingfilter

Mainmemory

Filesystem

input

Output devices

Paging

routines

bull Command language processorndash It accepts input from the usersrsquos input device amp analyses the

tokens and syntactic structure of the commandsndash It then produce an intermediate representation of the desired

editing operationsndash Interpreter then decodes this intermediate representation

bull Editing managerndash Start of the area to be edited is determined by the current editing

pointer maintained by the editing managerndash Current editing pointer can be set or reset explicitly by the user

with traveling commands such as next paragraph or implicitly as a side effect of the previous edit operation as delete paragraph

bull Traveling managerndash Setting of the current editing and viewing pointersndash Invoked explicitly by the user or implicitly by editing operations

bull Viewing Managerndash Start of the area to be viewed is determined by current viewing

pointerndash It is maintained by viewing manager which is collection of

modules responsible for determining the next viewndash Current viewing pointer can be set or reset explicitly by the user

or implicitly by the system as a result of the previous edit operation

bull Display Managerndash Makes provision for appropriate display of textndash Its function may be combined with viewing manager

bull Viewing Filterndash To update display viewing manager invokes the viewing filterndash It filters the document to generate a new buffer with content for

viewingbull Viewing Buffer

ndash Has the content for viewingndash This content is passed to the viewing manager which produces

the display by mapping the buffers content to a window

bull Editing filterndash Filtering is the process of selection of contiguous

characters beginning from the current positionndash When the user issues an edit command the editing

manager invokes the editing filter This filter filters the document to generate a new buffer with content for editing

ndash As editing is performed editing filter reflects the changes into the internal form amp updates the contents of the viewing buffer inorder to make the changes visible on the screen

ndash Support an undo function by storing a stack of previous views

bull Editing bufferndash Editing filter creates an editing buffer that contains the

portion of document selected by the user for editing

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 9: Debugger & Editor.ppt

bull Debugger usage modesbull Postmortem analysisbull Program understandingbull Hypothesis testing

Postmortem analysis bull When a program that is run in a debugger crashes

ndash debugger is used to understand the reason for the crashndash This analysis is done after the factndash (post mortem after death)

bull It is based on analyzingndash which calls in the program produced the call nesting that was

active at the time of the crashndash the variables in these active calls

bull Advantagendash Postmortem analysis is simple and possibly quick

bull Disadvantagendash One cannot analyze how the program arrived at the program

state that produced the crash

Program understanding

bull A debugger helps understanding code one does know wellndash Choose simple program inputs firstndash Single-step through the programndash Step into methods of interest step over the restndash Inspect variables as requiredndash Use a breakpoint to finish loops you have understood

bull Advantage ndash No thinking errorsndash Computer keeps track of variable values for you

bull Limitationsndash Difficult to apply for non-sequential programs

Hypothesis testing bull A debugger helps gathering information about

specific aspects of a program without modifying the program

ndash 1048707No need to insert analysis code recompile redeploy

bull Kinds of informationndash 1048707Program state at a certain point during executionndash 1048707Validating specific expected events

bull their occurrencebull their orderbull their frequency

ndash 1048707Catching specific impossible (unexpected) events

Editors

bull A text editor is a type of program used for editing plain text files Often provided with operating systems

Features of text editorsbull DaggerString searching algorithmbull DaggerCut copy and pastebull DaggerText formattingbull DaggerUndo and redobull DaggerData transformationbull DaggerFilteringbull Syntax highlighting

Types of Editors

bull Line editorsbull Stream editorsbull Screen editorsbull Word processorsbull Structure editors

Line Editors

ndash Scope of line editors is limited to a line of textndash The line is designated positionally by

specifying the serial number in the textndash Edit characters like end of line is maintained

internallyndash Advantage

bull SimplicityEg-ed is a line editor for the Unix operating system

bull Line Editorbull bull Line editor is one of the simplest type of

editor which uses a buffer to store information

bull bull It operates in command mode User give the command to the editor for any operation Editor will respond this command

bull bull Buffer is in the main memory That is set aside to store the information which is entered from the keyboard

bull Meritsbull 1) Simple for read and writebull 2) Simple in design and implementationbull 3) Command and responses are

interleavedbull Demeritsbull 1) Not user friendlybull 2) Context of the text is not displayedbull 3) Only single line

Stream Editorsndash Views the entire text as a stream of characters amp

permits edit operation to cross line boundariesndash It support character line amp context oriented editing

commandsndash Current editing context is indicated by the position of

the text pointer called cursorndash Cursor can be used to move across amp within the linesndash Cursor can be moved by using positioning amp search

commands

Screen Editors

ndash It uses what-you-see- is what-you-get modendash It displays a screen full of text at a timendash User can move the cursor over the screen

position it on a point where the editing process is to be performed

ndash Effect of edit operation can be seen on the screen

ndash Useful while formatting the text to produce printed documents

Word processors

ndash Document editors with additional features to produce well formatted hard copy output

ndash Featuresbull Commands for moving section of text from one

place to anotherbull Merging of textbull Searching wordsbull Replacing wordsbull Spell checking

Structure Editors

ndash Incorporates an awareness of the structure of a document

ndash Useful in browsing through a document amp editing it

ndash Structure is specified while creating or modifying the document

ndash Editing requirement is specified using structure

Editing Processbull Document-editing process is an interactive

user-computer dialogue designed to accomplish 4 tasks

1 Select the part of the target document to be viewed and manipulated

2 Determine how to format this view on-line amp how to display it

3 Specify amp execute operations that modify the target document

4 Update the view appropriately

bull Travellingndash Moving through the editing document to a new

position in the textndash Done explicitly by the userndash It specifies where the area of interest is

bull Editingndash Adding new textndash Modifying the existing textndash Erasing the contentndash Formatting the existing data

bull Viewing amp displaying ndash Viewing amp formatting the text desired for the userndash Abstract viewndash Display component maps this abstract view into the

physical characteristics of the display device being used amp determines where a particular text may appear on user screen

Editor Structure

Commandlanguageprocessor

Editingcomponent

Travelingcomponent

Viewingcomponent

Displaycomponent

Editingbuffer

Viewingbuffer

EditingFilter

Viewingfilter

Mainmemory

Filesystem

input

Output devices

Paging

routines

bull Command language processorndash It accepts input from the usersrsquos input device amp analyses the

tokens and syntactic structure of the commandsndash It then produce an intermediate representation of the desired

editing operationsndash Interpreter then decodes this intermediate representation

bull Editing managerndash Start of the area to be edited is determined by the current editing

pointer maintained by the editing managerndash Current editing pointer can be set or reset explicitly by the user

with traveling commands such as next paragraph or implicitly as a side effect of the previous edit operation as delete paragraph

bull Traveling managerndash Setting of the current editing and viewing pointersndash Invoked explicitly by the user or implicitly by editing operations

bull Viewing Managerndash Start of the area to be viewed is determined by current viewing

pointerndash It is maintained by viewing manager which is collection of

modules responsible for determining the next viewndash Current viewing pointer can be set or reset explicitly by the user

or implicitly by the system as a result of the previous edit operation

bull Display Managerndash Makes provision for appropriate display of textndash Its function may be combined with viewing manager

bull Viewing Filterndash To update display viewing manager invokes the viewing filterndash It filters the document to generate a new buffer with content for

viewingbull Viewing Buffer

ndash Has the content for viewingndash This content is passed to the viewing manager which produces

the display by mapping the buffers content to a window

bull Editing filterndash Filtering is the process of selection of contiguous

characters beginning from the current positionndash When the user issues an edit command the editing

manager invokes the editing filter This filter filters the document to generate a new buffer with content for editing

ndash As editing is performed editing filter reflects the changes into the internal form amp updates the contents of the viewing buffer inorder to make the changes visible on the screen

ndash Support an undo function by storing a stack of previous views

bull Editing bufferndash Editing filter creates an editing buffer that contains the

portion of document selected by the user for editing

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 10: Debugger & Editor.ppt

Postmortem analysis bull When a program that is run in a debugger crashes

ndash debugger is used to understand the reason for the crashndash This analysis is done after the factndash (post mortem after death)

bull It is based on analyzingndash which calls in the program produced the call nesting that was

active at the time of the crashndash the variables in these active calls

bull Advantagendash Postmortem analysis is simple and possibly quick

bull Disadvantagendash One cannot analyze how the program arrived at the program

state that produced the crash

Program understanding

bull A debugger helps understanding code one does know wellndash Choose simple program inputs firstndash Single-step through the programndash Step into methods of interest step over the restndash Inspect variables as requiredndash Use a breakpoint to finish loops you have understood

bull Advantage ndash No thinking errorsndash Computer keeps track of variable values for you

bull Limitationsndash Difficult to apply for non-sequential programs

Hypothesis testing bull A debugger helps gathering information about

specific aspects of a program without modifying the program

ndash 1048707No need to insert analysis code recompile redeploy

bull Kinds of informationndash 1048707Program state at a certain point during executionndash 1048707Validating specific expected events

bull their occurrencebull their orderbull their frequency

ndash 1048707Catching specific impossible (unexpected) events

Editors

bull A text editor is a type of program used for editing plain text files Often provided with operating systems

Features of text editorsbull DaggerString searching algorithmbull DaggerCut copy and pastebull DaggerText formattingbull DaggerUndo and redobull DaggerData transformationbull DaggerFilteringbull Syntax highlighting

Types of Editors

bull Line editorsbull Stream editorsbull Screen editorsbull Word processorsbull Structure editors

Line Editors

ndash Scope of line editors is limited to a line of textndash The line is designated positionally by

specifying the serial number in the textndash Edit characters like end of line is maintained

internallyndash Advantage

bull SimplicityEg-ed is a line editor for the Unix operating system

bull Line Editorbull bull Line editor is one of the simplest type of

editor which uses a buffer to store information

bull bull It operates in command mode User give the command to the editor for any operation Editor will respond this command

bull bull Buffer is in the main memory That is set aside to store the information which is entered from the keyboard

bull Meritsbull 1) Simple for read and writebull 2) Simple in design and implementationbull 3) Command and responses are

interleavedbull Demeritsbull 1) Not user friendlybull 2) Context of the text is not displayedbull 3) Only single line

Stream Editorsndash Views the entire text as a stream of characters amp

permits edit operation to cross line boundariesndash It support character line amp context oriented editing

commandsndash Current editing context is indicated by the position of

the text pointer called cursorndash Cursor can be used to move across amp within the linesndash Cursor can be moved by using positioning amp search

commands

Screen Editors

ndash It uses what-you-see- is what-you-get modendash It displays a screen full of text at a timendash User can move the cursor over the screen

position it on a point where the editing process is to be performed

ndash Effect of edit operation can be seen on the screen

ndash Useful while formatting the text to produce printed documents

Word processors

ndash Document editors with additional features to produce well formatted hard copy output

ndash Featuresbull Commands for moving section of text from one

place to anotherbull Merging of textbull Searching wordsbull Replacing wordsbull Spell checking

Structure Editors

ndash Incorporates an awareness of the structure of a document

ndash Useful in browsing through a document amp editing it

ndash Structure is specified while creating or modifying the document

ndash Editing requirement is specified using structure

Editing Processbull Document-editing process is an interactive

user-computer dialogue designed to accomplish 4 tasks

1 Select the part of the target document to be viewed and manipulated

2 Determine how to format this view on-line amp how to display it

3 Specify amp execute operations that modify the target document

4 Update the view appropriately

bull Travellingndash Moving through the editing document to a new

position in the textndash Done explicitly by the userndash It specifies where the area of interest is

bull Editingndash Adding new textndash Modifying the existing textndash Erasing the contentndash Formatting the existing data

bull Viewing amp displaying ndash Viewing amp formatting the text desired for the userndash Abstract viewndash Display component maps this abstract view into the

physical characteristics of the display device being used amp determines where a particular text may appear on user screen

Editor Structure

Commandlanguageprocessor

Editingcomponent

Travelingcomponent

Viewingcomponent

Displaycomponent

Editingbuffer

Viewingbuffer

EditingFilter

Viewingfilter

Mainmemory

Filesystem

input

Output devices

Paging

routines

bull Command language processorndash It accepts input from the usersrsquos input device amp analyses the

tokens and syntactic structure of the commandsndash It then produce an intermediate representation of the desired

editing operationsndash Interpreter then decodes this intermediate representation

bull Editing managerndash Start of the area to be edited is determined by the current editing

pointer maintained by the editing managerndash Current editing pointer can be set or reset explicitly by the user

with traveling commands such as next paragraph or implicitly as a side effect of the previous edit operation as delete paragraph

bull Traveling managerndash Setting of the current editing and viewing pointersndash Invoked explicitly by the user or implicitly by editing operations

bull Viewing Managerndash Start of the area to be viewed is determined by current viewing

pointerndash It is maintained by viewing manager which is collection of

modules responsible for determining the next viewndash Current viewing pointer can be set or reset explicitly by the user

or implicitly by the system as a result of the previous edit operation

bull Display Managerndash Makes provision for appropriate display of textndash Its function may be combined with viewing manager

bull Viewing Filterndash To update display viewing manager invokes the viewing filterndash It filters the document to generate a new buffer with content for

viewingbull Viewing Buffer

ndash Has the content for viewingndash This content is passed to the viewing manager which produces

the display by mapping the buffers content to a window

bull Editing filterndash Filtering is the process of selection of contiguous

characters beginning from the current positionndash When the user issues an edit command the editing

manager invokes the editing filter This filter filters the document to generate a new buffer with content for editing

ndash As editing is performed editing filter reflects the changes into the internal form amp updates the contents of the viewing buffer inorder to make the changes visible on the screen

ndash Support an undo function by storing a stack of previous views

bull Editing bufferndash Editing filter creates an editing buffer that contains the

portion of document selected by the user for editing

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 11: Debugger & Editor.ppt

Program understanding

bull A debugger helps understanding code one does know wellndash Choose simple program inputs firstndash Single-step through the programndash Step into methods of interest step over the restndash Inspect variables as requiredndash Use a breakpoint to finish loops you have understood

bull Advantage ndash No thinking errorsndash Computer keeps track of variable values for you

bull Limitationsndash Difficult to apply for non-sequential programs

Hypothesis testing bull A debugger helps gathering information about

specific aspects of a program without modifying the program

ndash 1048707No need to insert analysis code recompile redeploy

bull Kinds of informationndash 1048707Program state at a certain point during executionndash 1048707Validating specific expected events

bull their occurrencebull their orderbull their frequency

ndash 1048707Catching specific impossible (unexpected) events

Editors

bull A text editor is a type of program used for editing plain text files Often provided with operating systems

Features of text editorsbull DaggerString searching algorithmbull DaggerCut copy and pastebull DaggerText formattingbull DaggerUndo and redobull DaggerData transformationbull DaggerFilteringbull Syntax highlighting

Types of Editors

bull Line editorsbull Stream editorsbull Screen editorsbull Word processorsbull Structure editors

Line Editors

ndash Scope of line editors is limited to a line of textndash The line is designated positionally by

specifying the serial number in the textndash Edit characters like end of line is maintained

internallyndash Advantage

bull SimplicityEg-ed is a line editor for the Unix operating system

bull Line Editorbull bull Line editor is one of the simplest type of

editor which uses a buffer to store information

bull bull It operates in command mode User give the command to the editor for any operation Editor will respond this command

bull bull Buffer is in the main memory That is set aside to store the information which is entered from the keyboard

bull Meritsbull 1) Simple for read and writebull 2) Simple in design and implementationbull 3) Command and responses are

interleavedbull Demeritsbull 1) Not user friendlybull 2) Context of the text is not displayedbull 3) Only single line

Stream Editorsndash Views the entire text as a stream of characters amp

permits edit operation to cross line boundariesndash It support character line amp context oriented editing

commandsndash Current editing context is indicated by the position of

the text pointer called cursorndash Cursor can be used to move across amp within the linesndash Cursor can be moved by using positioning amp search

commands

Screen Editors

ndash It uses what-you-see- is what-you-get modendash It displays a screen full of text at a timendash User can move the cursor over the screen

position it on a point where the editing process is to be performed

ndash Effect of edit operation can be seen on the screen

ndash Useful while formatting the text to produce printed documents

Word processors

ndash Document editors with additional features to produce well formatted hard copy output

ndash Featuresbull Commands for moving section of text from one

place to anotherbull Merging of textbull Searching wordsbull Replacing wordsbull Spell checking

Structure Editors

ndash Incorporates an awareness of the structure of a document

ndash Useful in browsing through a document amp editing it

ndash Structure is specified while creating or modifying the document

ndash Editing requirement is specified using structure

Editing Processbull Document-editing process is an interactive

user-computer dialogue designed to accomplish 4 tasks

1 Select the part of the target document to be viewed and manipulated

2 Determine how to format this view on-line amp how to display it

3 Specify amp execute operations that modify the target document

4 Update the view appropriately

bull Travellingndash Moving through the editing document to a new

position in the textndash Done explicitly by the userndash It specifies where the area of interest is

bull Editingndash Adding new textndash Modifying the existing textndash Erasing the contentndash Formatting the existing data

bull Viewing amp displaying ndash Viewing amp formatting the text desired for the userndash Abstract viewndash Display component maps this abstract view into the

physical characteristics of the display device being used amp determines where a particular text may appear on user screen

Editor Structure

Commandlanguageprocessor

Editingcomponent

Travelingcomponent

Viewingcomponent

Displaycomponent

Editingbuffer

Viewingbuffer

EditingFilter

Viewingfilter

Mainmemory

Filesystem

input

Output devices

Paging

routines

bull Command language processorndash It accepts input from the usersrsquos input device amp analyses the

tokens and syntactic structure of the commandsndash It then produce an intermediate representation of the desired

editing operationsndash Interpreter then decodes this intermediate representation

bull Editing managerndash Start of the area to be edited is determined by the current editing

pointer maintained by the editing managerndash Current editing pointer can be set or reset explicitly by the user

with traveling commands such as next paragraph or implicitly as a side effect of the previous edit operation as delete paragraph

bull Traveling managerndash Setting of the current editing and viewing pointersndash Invoked explicitly by the user or implicitly by editing operations

bull Viewing Managerndash Start of the area to be viewed is determined by current viewing

pointerndash It is maintained by viewing manager which is collection of

modules responsible for determining the next viewndash Current viewing pointer can be set or reset explicitly by the user

or implicitly by the system as a result of the previous edit operation

bull Display Managerndash Makes provision for appropriate display of textndash Its function may be combined with viewing manager

bull Viewing Filterndash To update display viewing manager invokes the viewing filterndash It filters the document to generate a new buffer with content for

viewingbull Viewing Buffer

ndash Has the content for viewingndash This content is passed to the viewing manager which produces

the display by mapping the buffers content to a window

bull Editing filterndash Filtering is the process of selection of contiguous

characters beginning from the current positionndash When the user issues an edit command the editing

manager invokes the editing filter This filter filters the document to generate a new buffer with content for editing

ndash As editing is performed editing filter reflects the changes into the internal form amp updates the contents of the viewing buffer inorder to make the changes visible on the screen

ndash Support an undo function by storing a stack of previous views

bull Editing bufferndash Editing filter creates an editing buffer that contains the

portion of document selected by the user for editing

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 12: Debugger & Editor.ppt

Hypothesis testing bull A debugger helps gathering information about

specific aspects of a program without modifying the program

ndash 1048707No need to insert analysis code recompile redeploy

bull Kinds of informationndash 1048707Program state at a certain point during executionndash 1048707Validating specific expected events

bull their occurrencebull their orderbull their frequency

ndash 1048707Catching specific impossible (unexpected) events

Editors

bull A text editor is a type of program used for editing plain text files Often provided with operating systems

Features of text editorsbull DaggerString searching algorithmbull DaggerCut copy and pastebull DaggerText formattingbull DaggerUndo and redobull DaggerData transformationbull DaggerFilteringbull Syntax highlighting

Types of Editors

bull Line editorsbull Stream editorsbull Screen editorsbull Word processorsbull Structure editors

Line Editors

ndash Scope of line editors is limited to a line of textndash The line is designated positionally by

specifying the serial number in the textndash Edit characters like end of line is maintained

internallyndash Advantage

bull SimplicityEg-ed is a line editor for the Unix operating system

bull Line Editorbull bull Line editor is one of the simplest type of

editor which uses a buffer to store information

bull bull It operates in command mode User give the command to the editor for any operation Editor will respond this command

bull bull Buffer is in the main memory That is set aside to store the information which is entered from the keyboard

bull Meritsbull 1) Simple for read and writebull 2) Simple in design and implementationbull 3) Command and responses are

interleavedbull Demeritsbull 1) Not user friendlybull 2) Context of the text is not displayedbull 3) Only single line

Stream Editorsndash Views the entire text as a stream of characters amp

permits edit operation to cross line boundariesndash It support character line amp context oriented editing

commandsndash Current editing context is indicated by the position of

the text pointer called cursorndash Cursor can be used to move across amp within the linesndash Cursor can be moved by using positioning amp search

commands

Screen Editors

ndash It uses what-you-see- is what-you-get modendash It displays a screen full of text at a timendash User can move the cursor over the screen

position it on a point where the editing process is to be performed

ndash Effect of edit operation can be seen on the screen

ndash Useful while formatting the text to produce printed documents

Word processors

ndash Document editors with additional features to produce well formatted hard copy output

ndash Featuresbull Commands for moving section of text from one

place to anotherbull Merging of textbull Searching wordsbull Replacing wordsbull Spell checking

Structure Editors

ndash Incorporates an awareness of the structure of a document

ndash Useful in browsing through a document amp editing it

ndash Structure is specified while creating or modifying the document

ndash Editing requirement is specified using structure

Editing Processbull Document-editing process is an interactive

user-computer dialogue designed to accomplish 4 tasks

1 Select the part of the target document to be viewed and manipulated

2 Determine how to format this view on-line amp how to display it

3 Specify amp execute operations that modify the target document

4 Update the view appropriately

bull Travellingndash Moving through the editing document to a new

position in the textndash Done explicitly by the userndash It specifies where the area of interest is

bull Editingndash Adding new textndash Modifying the existing textndash Erasing the contentndash Formatting the existing data

bull Viewing amp displaying ndash Viewing amp formatting the text desired for the userndash Abstract viewndash Display component maps this abstract view into the

physical characteristics of the display device being used amp determines where a particular text may appear on user screen

Editor Structure

Commandlanguageprocessor

Editingcomponent

Travelingcomponent

Viewingcomponent

Displaycomponent

Editingbuffer

Viewingbuffer

EditingFilter

Viewingfilter

Mainmemory

Filesystem

input

Output devices

Paging

routines

bull Command language processorndash It accepts input from the usersrsquos input device amp analyses the

tokens and syntactic structure of the commandsndash It then produce an intermediate representation of the desired

editing operationsndash Interpreter then decodes this intermediate representation

bull Editing managerndash Start of the area to be edited is determined by the current editing

pointer maintained by the editing managerndash Current editing pointer can be set or reset explicitly by the user

with traveling commands such as next paragraph or implicitly as a side effect of the previous edit operation as delete paragraph

bull Traveling managerndash Setting of the current editing and viewing pointersndash Invoked explicitly by the user or implicitly by editing operations

bull Viewing Managerndash Start of the area to be viewed is determined by current viewing

pointerndash It is maintained by viewing manager which is collection of

modules responsible for determining the next viewndash Current viewing pointer can be set or reset explicitly by the user

or implicitly by the system as a result of the previous edit operation

bull Display Managerndash Makes provision for appropriate display of textndash Its function may be combined with viewing manager

bull Viewing Filterndash To update display viewing manager invokes the viewing filterndash It filters the document to generate a new buffer with content for

viewingbull Viewing Buffer

ndash Has the content for viewingndash This content is passed to the viewing manager which produces

the display by mapping the buffers content to a window

bull Editing filterndash Filtering is the process of selection of contiguous

characters beginning from the current positionndash When the user issues an edit command the editing

manager invokes the editing filter This filter filters the document to generate a new buffer with content for editing

ndash As editing is performed editing filter reflects the changes into the internal form amp updates the contents of the viewing buffer inorder to make the changes visible on the screen

ndash Support an undo function by storing a stack of previous views

bull Editing bufferndash Editing filter creates an editing buffer that contains the

portion of document selected by the user for editing

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 13: Debugger & Editor.ppt

Editors

bull A text editor is a type of program used for editing plain text files Often provided with operating systems

Features of text editorsbull DaggerString searching algorithmbull DaggerCut copy and pastebull DaggerText formattingbull DaggerUndo and redobull DaggerData transformationbull DaggerFilteringbull Syntax highlighting

Types of Editors

bull Line editorsbull Stream editorsbull Screen editorsbull Word processorsbull Structure editors

Line Editors

ndash Scope of line editors is limited to a line of textndash The line is designated positionally by

specifying the serial number in the textndash Edit characters like end of line is maintained

internallyndash Advantage

bull SimplicityEg-ed is a line editor for the Unix operating system

bull Line Editorbull bull Line editor is one of the simplest type of

editor which uses a buffer to store information

bull bull It operates in command mode User give the command to the editor for any operation Editor will respond this command

bull bull Buffer is in the main memory That is set aside to store the information which is entered from the keyboard

bull Meritsbull 1) Simple for read and writebull 2) Simple in design and implementationbull 3) Command and responses are

interleavedbull Demeritsbull 1) Not user friendlybull 2) Context of the text is not displayedbull 3) Only single line

Stream Editorsndash Views the entire text as a stream of characters amp

permits edit operation to cross line boundariesndash It support character line amp context oriented editing

commandsndash Current editing context is indicated by the position of

the text pointer called cursorndash Cursor can be used to move across amp within the linesndash Cursor can be moved by using positioning amp search

commands

Screen Editors

ndash It uses what-you-see- is what-you-get modendash It displays a screen full of text at a timendash User can move the cursor over the screen

position it on a point where the editing process is to be performed

ndash Effect of edit operation can be seen on the screen

ndash Useful while formatting the text to produce printed documents

Word processors

ndash Document editors with additional features to produce well formatted hard copy output

ndash Featuresbull Commands for moving section of text from one

place to anotherbull Merging of textbull Searching wordsbull Replacing wordsbull Spell checking

Structure Editors

ndash Incorporates an awareness of the structure of a document

ndash Useful in browsing through a document amp editing it

ndash Structure is specified while creating or modifying the document

ndash Editing requirement is specified using structure

Editing Processbull Document-editing process is an interactive

user-computer dialogue designed to accomplish 4 tasks

1 Select the part of the target document to be viewed and manipulated

2 Determine how to format this view on-line amp how to display it

3 Specify amp execute operations that modify the target document

4 Update the view appropriately

bull Travellingndash Moving through the editing document to a new

position in the textndash Done explicitly by the userndash It specifies where the area of interest is

bull Editingndash Adding new textndash Modifying the existing textndash Erasing the contentndash Formatting the existing data

bull Viewing amp displaying ndash Viewing amp formatting the text desired for the userndash Abstract viewndash Display component maps this abstract view into the

physical characteristics of the display device being used amp determines where a particular text may appear on user screen

Editor Structure

Commandlanguageprocessor

Editingcomponent

Travelingcomponent

Viewingcomponent

Displaycomponent

Editingbuffer

Viewingbuffer

EditingFilter

Viewingfilter

Mainmemory

Filesystem

input

Output devices

Paging

routines

bull Command language processorndash It accepts input from the usersrsquos input device amp analyses the

tokens and syntactic structure of the commandsndash It then produce an intermediate representation of the desired

editing operationsndash Interpreter then decodes this intermediate representation

bull Editing managerndash Start of the area to be edited is determined by the current editing

pointer maintained by the editing managerndash Current editing pointer can be set or reset explicitly by the user

with traveling commands such as next paragraph or implicitly as a side effect of the previous edit operation as delete paragraph

bull Traveling managerndash Setting of the current editing and viewing pointersndash Invoked explicitly by the user or implicitly by editing operations

bull Viewing Managerndash Start of the area to be viewed is determined by current viewing

pointerndash It is maintained by viewing manager which is collection of

modules responsible for determining the next viewndash Current viewing pointer can be set or reset explicitly by the user

or implicitly by the system as a result of the previous edit operation

bull Display Managerndash Makes provision for appropriate display of textndash Its function may be combined with viewing manager

bull Viewing Filterndash To update display viewing manager invokes the viewing filterndash It filters the document to generate a new buffer with content for

viewingbull Viewing Buffer

ndash Has the content for viewingndash This content is passed to the viewing manager which produces

the display by mapping the buffers content to a window

bull Editing filterndash Filtering is the process of selection of contiguous

characters beginning from the current positionndash When the user issues an edit command the editing

manager invokes the editing filter This filter filters the document to generate a new buffer with content for editing

ndash As editing is performed editing filter reflects the changes into the internal form amp updates the contents of the viewing buffer inorder to make the changes visible on the screen

ndash Support an undo function by storing a stack of previous views

bull Editing bufferndash Editing filter creates an editing buffer that contains the

portion of document selected by the user for editing

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 14: Debugger & Editor.ppt

bull A text editor is a type of program used for editing plain text files Often provided with operating systems

Features of text editorsbull DaggerString searching algorithmbull DaggerCut copy and pastebull DaggerText formattingbull DaggerUndo and redobull DaggerData transformationbull DaggerFilteringbull Syntax highlighting

Types of Editors

bull Line editorsbull Stream editorsbull Screen editorsbull Word processorsbull Structure editors

Line Editors

ndash Scope of line editors is limited to a line of textndash The line is designated positionally by

specifying the serial number in the textndash Edit characters like end of line is maintained

internallyndash Advantage

bull SimplicityEg-ed is a line editor for the Unix operating system

bull Line Editorbull bull Line editor is one of the simplest type of

editor which uses a buffer to store information

bull bull It operates in command mode User give the command to the editor for any operation Editor will respond this command

bull bull Buffer is in the main memory That is set aside to store the information which is entered from the keyboard

bull Meritsbull 1) Simple for read and writebull 2) Simple in design and implementationbull 3) Command and responses are

interleavedbull Demeritsbull 1) Not user friendlybull 2) Context of the text is not displayedbull 3) Only single line

Stream Editorsndash Views the entire text as a stream of characters amp

permits edit operation to cross line boundariesndash It support character line amp context oriented editing

commandsndash Current editing context is indicated by the position of

the text pointer called cursorndash Cursor can be used to move across amp within the linesndash Cursor can be moved by using positioning amp search

commands

Screen Editors

ndash It uses what-you-see- is what-you-get modendash It displays a screen full of text at a timendash User can move the cursor over the screen

position it on a point where the editing process is to be performed

ndash Effect of edit operation can be seen on the screen

ndash Useful while formatting the text to produce printed documents

Word processors

ndash Document editors with additional features to produce well formatted hard copy output

ndash Featuresbull Commands for moving section of text from one

place to anotherbull Merging of textbull Searching wordsbull Replacing wordsbull Spell checking

Structure Editors

ndash Incorporates an awareness of the structure of a document

ndash Useful in browsing through a document amp editing it

ndash Structure is specified while creating or modifying the document

ndash Editing requirement is specified using structure

Editing Processbull Document-editing process is an interactive

user-computer dialogue designed to accomplish 4 tasks

1 Select the part of the target document to be viewed and manipulated

2 Determine how to format this view on-line amp how to display it

3 Specify amp execute operations that modify the target document

4 Update the view appropriately

bull Travellingndash Moving through the editing document to a new

position in the textndash Done explicitly by the userndash It specifies where the area of interest is

bull Editingndash Adding new textndash Modifying the existing textndash Erasing the contentndash Formatting the existing data

bull Viewing amp displaying ndash Viewing amp formatting the text desired for the userndash Abstract viewndash Display component maps this abstract view into the

physical characteristics of the display device being used amp determines where a particular text may appear on user screen

Editor Structure

Commandlanguageprocessor

Editingcomponent

Travelingcomponent

Viewingcomponent

Displaycomponent

Editingbuffer

Viewingbuffer

EditingFilter

Viewingfilter

Mainmemory

Filesystem

input

Output devices

Paging

routines

bull Command language processorndash It accepts input from the usersrsquos input device amp analyses the

tokens and syntactic structure of the commandsndash It then produce an intermediate representation of the desired

editing operationsndash Interpreter then decodes this intermediate representation

bull Editing managerndash Start of the area to be edited is determined by the current editing

pointer maintained by the editing managerndash Current editing pointer can be set or reset explicitly by the user

with traveling commands such as next paragraph or implicitly as a side effect of the previous edit operation as delete paragraph

bull Traveling managerndash Setting of the current editing and viewing pointersndash Invoked explicitly by the user or implicitly by editing operations

bull Viewing Managerndash Start of the area to be viewed is determined by current viewing

pointerndash It is maintained by viewing manager which is collection of

modules responsible for determining the next viewndash Current viewing pointer can be set or reset explicitly by the user

or implicitly by the system as a result of the previous edit operation

bull Display Managerndash Makes provision for appropriate display of textndash Its function may be combined with viewing manager

bull Viewing Filterndash To update display viewing manager invokes the viewing filterndash It filters the document to generate a new buffer with content for

viewingbull Viewing Buffer

ndash Has the content for viewingndash This content is passed to the viewing manager which produces

the display by mapping the buffers content to a window

bull Editing filterndash Filtering is the process of selection of contiguous

characters beginning from the current positionndash When the user issues an edit command the editing

manager invokes the editing filter This filter filters the document to generate a new buffer with content for editing

ndash As editing is performed editing filter reflects the changes into the internal form amp updates the contents of the viewing buffer inorder to make the changes visible on the screen

ndash Support an undo function by storing a stack of previous views

bull Editing bufferndash Editing filter creates an editing buffer that contains the

portion of document selected by the user for editing

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 15: Debugger & Editor.ppt

Features of text editorsbull DaggerString searching algorithmbull DaggerCut copy and pastebull DaggerText formattingbull DaggerUndo and redobull DaggerData transformationbull DaggerFilteringbull Syntax highlighting

Types of Editors

bull Line editorsbull Stream editorsbull Screen editorsbull Word processorsbull Structure editors

Line Editors

ndash Scope of line editors is limited to a line of textndash The line is designated positionally by

specifying the serial number in the textndash Edit characters like end of line is maintained

internallyndash Advantage

bull SimplicityEg-ed is a line editor for the Unix operating system

bull Line Editorbull bull Line editor is one of the simplest type of

editor which uses a buffer to store information

bull bull It operates in command mode User give the command to the editor for any operation Editor will respond this command

bull bull Buffer is in the main memory That is set aside to store the information which is entered from the keyboard

bull Meritsbull 1) Simple for read and writebull 2) Simple in design and implementationbull 3) Command and responses are

interleavedbull Demeritsbull 1) Not user friendlybull 2) Context of the text is not displayedbull 3) Only single line

Stream Editorsndash Views the entire text as a stream of characters amp

permits edit operation to cross line boundariesndash It support character line amp context oriented editing

commandsndash Current editing context is indicated by the position of

the text pointer called cursorndash Cursor can be used to move across amp within the linesndash Cursor can be moved by using positioning amp search

commands

Screen Editors

ndash It uses what-you-see- is what-you-get modendash It displays a screen full of text at a timendash User can move the cursor over the screen

position it on a point where the editing process is to be performed

ndash Effect of edit operation can be seen on the screen

ndash Useful while formatting the text to produce printed documents

Word processors

ndash Document editors with additional features to produce well formatted hard copy output

ndash Featuresbull Commands for moving section of text from one

place to anotherbull Merging of textbull Searching wordsbull Replacing wordsbull Spell checking

Structure Editors

ndash Incorporates an awareness of the structure of a document

ndash Useful in browsing through a document amp editing it

ndash Structure is specified while creating or modifying the document

ndash Editing requirement is specified using structure

Editing Processbull Document-editing process is an interactive

user-computer dialogue designed to accomplish 4 tasks

1 Select the part of the target document to be viewed and manipulated

2 Determine how to format this view on-line amp how to display it

3 Specify amp execute operations that modify the target document

4 Update the view appropriately

bull Travellingndash Moving through the editing document to a new

position in the textndash Done explicitly by the userndash It specifies where the area of interest is

bull Editingndash Adding new textndash Modifying the existing textndash Erasing the contentndash Formatting the existing data

bull Viewing amp displaying ndash Viewing amp formatting the text desired for the userndash Abstract viewndash Display component maps this abstract view into the

physical characteristics of the display device being used amp determines where a particular text may appear on user screen

Editor Structure

Commandlanguageprocessor

Editingcomponent

Travelingcomponent

Viewingcomponent

Displaycomponent

Editingbuffer

Viewingbuffer

EditingFilter

Viewingfilter

Mainmemory

Filesystem

input

Output devices

Paging

routines

bull Command language processorndash It accepts input from the usersrsquos input device amp analyses the

tokens and syntactic structure of the commandsndash It then produce an intermediate representation of the desired

editing operationsndash Interpreter then decodes this intermediate representation

bull Editing managerndash Start of the area to be edited is determined by the current editing

pointer maintained by the editing managerndash Current editing pointer can be set or reset explicitly by the user

with traveling commands such as next paragraph or implicitly as a side effect of the previous edit operation as delete paragraph

bull Traveling managerndash Setting of the current editing and viewing pointersndash Invoked explicitly by the user or implicitly by editing operations

bull Viewing Managerndash Start of the area to be viewed is determined by current viewing

pointerndash It is maintained by viewing manager which is collection of

modules responsible for determining the next viewndash Current viewing pointer can be set or reset explicitly by the user

or implicitly by the system as a result of the previous edit operation

bull Display Managerndash Makes provision for appropriate display of textndash Its function may be combined with viewing manager

bull Viewing Filterndash To update display viewing manager invokes the viewing filterndash It filters the document to generate a new buffer with content for

viewingbull Viewing Buffer

ndash Has the content for viewingndash This content is passed to the viewing manager which produces

the display by mapping the buffers content to a window

bull Editing filterndash Filtering is the process of selection of contiguous

characters beginning from the current positionndash When the user issues an edit command the editing

manager invokes the editing filter This filter filters the document to generate a new buffer with content for editing

ndash As editing is performed editing filter reflects the changes into the internal form amp updates the contents of the viewing buffer inorder to make the changes visible on the screen

ndash Support an undo function by storing a stack of previous views

bull Editing bufferndash Editing filter creates an editing buffer that contains the

portion of document selected by the user for editing

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 16: Debugger & Editor.ppt

Types of Editors

bull Line editorsbull Stream editorsbull Screen editorsbull Word processorsbull Structure editors

Line Editors

ndash Scope of line editors is limited to a line of textndash The line is designated positionally by

specifying the serial number in the textndash Edit characters like end of line is maintained

internallyndash Advantage

bull SimplicityEg-ed is a line editor for the Unix operating system

bull Line Editorbull bull Line editor is one of the simplest type of

editor which uses a buffer to store information

bull bull It operates in command mode User give the command to the editor for any operation Editor will respond this command

bull bull Buffer is in the main memory That is set aside to store the information which is entered from the keyboard

bull Meritsbull 1) Simple for read and writebull 2) Simple in design and implementationbull 3) Command and responses are

interleavedbull Demeritsbull 1) Not user friendlybull 2) Context of the text is not displayedbull 3) Only single line

Stream Editorsndash Views the entire text as a stream of characters amp

permits edit operation to cross line boundariesndash It support character line amp context oriented editing

commandsndash Current editing context is indicated by the position of

the text pointer called cursorndash Cursor can be used to move across amp within the linesndash Cursor can be moved by using positioning amp search

commands

Screen Editors

ndash It uses what-you-see- is what-you-get modendash It displays a screen full of text at a timendash User can move the cursor over the screen

position it on a point where the editing process is to be performed

ndash Effect of edit operation can be seen on the screen

ndash Useful while formatting the text to produce printed documents

Word processors

ndash Document editors with additional features to produce well formatted hard copy output

ndash Featuresbull Commands for moving section of text from one

place to anotherbull Merging of textbull Searching wordsbull Replacing wordsbull Spell checking

Structure Editors

ndash Incorporates an awareness of the structure of a document

ndash Useful in browsing through a document amp editing it

ndash Structure is specified while creating or modifying the document

ndash Editing requirement is specified using structure

Editing Processbull Document-editing process is an interactive

user-computer dialogue designed to accomplish 4 tasks

1 Select the part of the target document to be viewed and manipulated

2 Determine how to format this view on-line amp how to display it

3 Specify amp execute operations that modify the target document

4 Update the view appropriately

bull Travellingndash Moving through the editing document to a new

position in the textndash Done explicitly by the userndash It specifies where the area of interest is

bull Editingndash Adding new textndash Modifying the existing textndash Erasing the contentndash Formatting the existing data

bull Viewing amp displaying ndash Viewing amp formatting the text desired for the userndash Abstract viewndash Display component maps this abstract view into the

physical characteristics of the display device being used amp determines where a particular text may appear on user screen

Editor Structure

Commandlanguageprocessor

Editingcomponent

Travelingcomponent

Viewingcomponent

Displaycomponent

Editingbuffer

Viewingbuffer

EditingFilter

Viewingfilter

Mainmemory

Filesystem

input

Output devices

Paging

routines

bull Command language processorndash It accepts input from the usersrsquos input device amp analyses the

tokens and syntactic structure of the commandsndash It then produce an intermediate representation of the desired

editing operationsndash Interpreter then decodes this intermediate representation

bull Editing managerndash Start of the area to be edited is determined by the current editing

pointer maintained by the editing managerndash Current editing pointer can be set or reset explicitly by the user

with traveling commands such as next paragraph or implicitly as a side effect of the previous edit operation as delete paragraph

bull Traveling managerndash Setting of the current editing and viewing pointersndash Invoked explicitly by the user or implicitly by editing operations

bull Viewing Managerndash Start of the area to be viewed is determined by current viewing

pointerndash It is maintained by viewing manager which is collection of

modules responsible for determining the next viewndash Current viewing pointer can be set or reset explicitly by the user

or implicitly by the system as a result of the previous edit operation

bull Display Managerndash Makes provision for appropriate display of textndash Its function may be combined with viewing manager

bull Viewing Filterndash To update display viewing manager invokes the viewing filterndash It filters the document to generate a new buffer with content for

viewingbull Viewing Buffer

ndash Has the content for viewingndash This content is passed to the viewing manager which produces

the display by mapping the buffers content to a window

bull Editing filterndash Filtering is the process of selection of contiguous

characters beginning from the current positionndash When the user issues an edit command the editing

manager invokes the editing filter This filter filters the document to generate a new buffer with content for editing

ndash As editing is performed editing filter reflects the changes into the internal form amp updates the contents of the viewing buffer inorder to make the changes visible on the screen

ndash Support an undo function by storing a stack of previous views

bull Editing bufferndash Editing filter creates an editing buffer that contains the

portion of document selected by the user for editing

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 17: Debugger & Editor.ppt

Line Editors

ndash Scope of line editors is limited to a line of textndash The line is designated positionally by

specifying the serial number in the textndash Edit characters like end of line is maintained

internallyndash Advantage

bull SimplicityEg-ed is a line editor for the Unix operating system

bull Line Editorbull bull Line editor is one of the simplest type of

editor which uses a buffer to store information

bull bull It operates in command mode User give the command to the editor for any operation Editor will respond this command

bull bull Buffer is in the main memory That is set aside to store the information which is entered from the keyboard

bull Meritsbull 1) Simple for read and writebull 2) Simple in design and implementationbull 3) Command and responses are

interleavedbull Demeritsbull 1) Not user friendlybull 2) Context of the text is not displayedbull 3) Only single line

Stream Editorsndash Views the entire text as a stream of characters amp

permits edit operation to cross line boundariesndash It support character line amp context oriented editing

commandsndash Current editing context is indicated by the position of

the text pointer called cursorndash Cursor can be used to move across amp within the linesndash Cursor can be moved by using positioning amp search

commands

Screen Editors

ndash It uses what-you-see- is what-you-get modendash It displays a screen full of text at a timendash User can move the cursor over the screen

position it on a point where the editing process is to be performed

ndash Effect of edit operation can be seen on the screen

ndash Useful while formatting the text to produce printed documents

Word processors

ndash Document editors with additional features to produce well formatted hard copy output

ndash Featuresbull Commands for moving section of text from one

place to anotherbull Merging of textbull Searching wordsbull Replacing wordsbull Spell checking

Structure Editors

ndash Incorporates an awareness of the structure of a document

ndash Useful in browsing through a document amp editing it

ndash Structure is specified while creating or modifying the document

ndash Editing requirement is specified using structure

Editing Processbull Document-editing process is an interactive

user-computer dialogue designed to accomplish 4 tasks

1 Select the part of the target document to be viewed and manipulated

2 Determine how to format this view on-line amp how to display it

3 Specify amp execute operations that modify the target document

4 Update the view appropriately

bull Travellingndash Moving through the editing document to a new

position in the textndash Done explicitly by the userndash It specifies where the area of interest is

bull Editingndash Adding new textndash Modifying the existing textndash Erasing the contentndash Formatting the existing data

bull Viewing amp displaying ndash Viewing amp formatting the text desired for the userndash Abstract viewndash Display component maps this abstract view into the

physical characteristics of the display device being used amp determines where a particular text may appear on user screen

Editor Structure

Commandlanguageprocessor

Editingcomponent

Travelingcomponent

Viewingcomponent

Displaycomponent

Editingbuffer

Viewingbuffer

EditingFilter

Viewingfilter

Mainmemory

Filesystem

input

Output devices

Paging

routines

bull Command language processorndash It accepts input from the usersrsquos input device amp analyses the

tokens and syntactic structure of the commandsndash It then produce an intermediate representation of the desired

editing operationsndash Interpreter then decodes this intermediate representation

bull Editing managerndash Start of the area to be edited is determined by the current editing

pointer maintained by the editing managerndash Current editing pointer can be set or reset explicitly by the user

with traveling commands such as next paragraph or implicitly as a side effect of the previous edit operation as delete paragraph

bull Traveling managerndash Setting of the current editing and viewing pointersndash Invoked explicitly by the user or implicitly by editing operations

bull Viewing Managerndash Start of the area to be viewed is determined by current viewing

pointerndash It is maintained by viewing manager which is collection of

modules responsible for determining the next viewndash Current viewing pointer can be set or reset explicitly by the user

or implicitly by the system as a result of the previous edit operation

bull Display Managerndash Makes provision for appropriate display of textndash Its function may be combined with viewing manager

bull Viewing Filterndash To update display viewing manager invokes the viewing filterndash It filters the document to generate a new buffer with content for

viewingbull Viewing Buffer

ndash Has the content for viewingndash This content is passed to the viewing manager which produces

the display by mapping the buffers content to a window

bull Editing filterndash Filtering is the process of selection of contiguous

characters beginning from the current positionndash When the user issues an edit command the editing

manager invokes the editing filter This filter filters the document to generate a new buffer with content for editing

ndash As editing is performed editing filter reflects the changes into the internal form amp updates the contents of the viewing buffer inorder to make the changes visible on the screen

ndash Support an undo function by storing a stack of previous views

bull Editing bufferndash Editing filter creates an editing buffer that contains the

portion of document selected by the user for editing

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 18: Debugger & Editor.ppt

bull Line Editorbull bull Line editor is one of the simplest type of

editor which uses a buffer to store information

bull bull It operates in command mode User give the command to the editor for any operation Editor will respond this command

bull bull Buffer is in the main memory That is set aside to store the information which is entered from the keyboard

bull Meritsbull 1) Simple for read and writebull 2) Simple in design and implementationbull 3) Command and responses are

interleavedbull Demeritsbull 1) Not user friendlybull 2) Context of the text is not displayedbull 3) Only single line

Stream Editorsndash Views the entire text as a stream of characters amp

permits edit operation to cross line boundariesndash It support character line amp context oriented editing

commandsndash Current editing context is indicated by the position of

the text pointer called cursorndash Cursor can be used to move across amp within the linesndash Cursor can be moved by using positioning amp search

commands

Screen Editors

ndash It uses what-you-see- is what-you-get modendash It displays a screen full of text at a timendash User can move the cursor over the screen

position it on a point where the editing process is to be performed

ndash Effect of edit operation can be seen on the screen

ndash Useful while formatting the text to produce printed documents

Word processors

ndash Document editors with additional features to produce well formatted hard copy output

ndash Featuresbull Commands for moving section of text from one

place to anotherbull Merging of textbull Searching wordsbull Replacing wordsbull Spell checking

Structure Editors

ndash Incorporates an awareness of the structure of a document

ndash Useful in browsing through a document amp editing it

ndash Structure is specified while creating or modifying the document

ndash Editing requirement is specified using structure

Editing Processbull Document-editing process is an interactive

user-computer dialogue designed to accomplish 4 tasks

1 Select the part of the target document to be viewed and manipulated

2 Determine how to format this view on-line amp how to display it

3 Specify amp execute operations that modify the target document

4 Update the view appropriately

bull Travellingndash Moving through the editing document to a new

position in the textndash Done explicitly by the userndash It specifies where the area of interest is

bull Editingndash Adding new textndash Modifying the existing textndash Erasing the contentndash Formatting the existing data

bull Viewing amp displaying ndash Viewing amp formatting the text desired for the userndash Abstract viewndash Display component maps this abstract view into the

physical characteristics of the display device being used amp determines where a particular text may appear on user screen

Editor Structure

Commandlanguageprocessor

Editingcomponent

Travelingcomponent

Viewingcomponent

Displaycomponent

Editingbuffer

Viewingbuffer

EditingFilter

Viewingfilter

Mainmemory

Filesystem

input

Output devices

Paging

routines

bull Command language processorndash It accepts input from the usersrsquos input device amp analyses the

tokens and syntactic structure of the commandsndash It then produce an intermediate representation of the desired

editing operationsndash Interpreter then decodes this intermediate representation

bull Editing managerndash Start of the area to be edited is determined by the current editing

pointer maintained by the editing managerndash Current editing pointer can be set or reset explicitly by the user

with traveling commands such as next paragraph or implicitly as a side effect of the previous edit operation as delete paragraph

bull Traveling managerndash Setting of the current editing and viewing pointersndash Invoked explicitly by the user or implicitly by editing operations

bull Viewing Managerndash Start of the area to be viewed is determined by current viewing

pointerndash It is maintained by viewing manager which is collection of

modules responsible for determining the next viewndash Current viewing pointer can be set or reset explicitly by the user

or implicitly by the system as a result of the previous edit operation

bull Display Managerndash Makes provision for appropriate display of textndash Its function may be combined with viewing manager

bull Viewing Filterndash To update display viewing manager invokes the viewing filterndash It filters the document to generate a new buffer with content for

viewingbull Viewing Buffer

ndash Has the content for viewingndash This content is passed to the viewing manager which produces

the display by mapping the buffers content to a window

bull Editing filterndash Filtering is the process of selection of contiguous

characters beginning from the current positionndash When the user issues an edit command the editing

manager invokes the editing filter This filter filters the document to generate a new buffer with content for editing

ndash As editing is performed editing filter reflects the changes into the internal form amp updates the contents of the viewing buffer inorder to make the changes visible on the screen

ndash Support an undo function by storing a stack of previous views

bull Editing bufferndash Editing filter creates an editing buffer that contains the

portion of document selected by the user for editing

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 19: Debugger & Editor.ppt

bull Meritsbull 1) Simple for read and writebull 2) Simple in design and implementationbull 3) Command and responses are

interleavedbull Demeritsbull 1) Not user friendlybull 2) Context of the text is not displayedbull 3) Only single line

Stream Editorsndash Views the entire text as a stream of characters amp

permits edit operation to cross line boundariesndash It support character line amp context oriented editing

commandsndash Current editing context is indicated by the position of

the text pointer called cursorndash Cursor can be used to move across amp within the linesndash Cursor can be moved by using positioning amp search

commands

Screen Editors

ndash It uses what-you-see- is what-you-get modendash It displays a screen full of text at a timendash User can move the cursor over the screen

position it on a point where the editing process is to be performed

ndash Effect of edit operation can be seen on the screen

ndash Useful while formatting the text to produce printed documents

Word processors

ndash Document editors with additional features to produce well formatted hard copy output

ndash Featuresbull Commands for moving section of text from one

place to anotherbull Merging of textbull Searching wordsbull Replacing wordsbull Spell checking

Structure Editors

ndash Incorporates an awareness of the structure of a document

ndash Useful in browsing through a document amp editing it

ndash Structure is specified while creating or modifying the document

ndash Editing requirement is specified using structure

Editing Processbull Document-editing process is an interactive

user-computer dialogue designed to accomplish 4 tasks

1 Select the part of the target document to be viewed and manipulated

2 Determine how to format this view on-line amp how to display it

3 Specify amp execute operations that modify the target document

4 Update the view appropriately

bull Travellingndash Moving through the editing document to a new

position in the textndash Done explicitly by the userndash It specifies where the area of interest is

bull Editingndash Adding new textndash Modifying the existing textndash Erasing the contentndash Formatting the existing data

bull Viewing amp displaying ndash Viewing amp formatting the text desired for the userndash Abstract viewndash Display component maps this abstract view into the

physical characteristics of the display device being used amp determines where a particular text may appear on user screen

Editor Structure

Commandlanguageprocessor

Editingcomponent

Travelingcomponent

Viewingcomponent

Displaycomponent

Editingbuffer

Viewingbuffer

EditingFilter

Viewingfilter

Mainmemory

Filesystem

input

Output devices

Paging

routines

bull Command language processorndash It accepts input from the usersrsquos input device amp analyses the

tokens and syntactic structure of the commandsndash It then produce an intermediate representation of the desired

editing operationsndash Interpreter then decodes this intermediate representation

bull Editing managerndash Start of the area to be edited is determined by the current editing

pointer maintained by the editing managerndash Current editing pointer can be set or reset explicitly by the user

with traveling commands such as next paragraph or implicitly as a side effect of the previous edit operation as delete paragraph

bull Traveling managerndash Setting of the current editing and viewing pointersndash Invoked explicitly by the user or implicitly by editing operations

bull Viewing Managerndash Start of the area to be viewed is determined by current viewing

pointerndash It is maintained by viewing manager which is collection of

modules responsible for determining the next viewndash Current viewing pointer can be set or reset explicitly by the user

or implicitly by the system as a result of the previous edit operation

bull Display Managerndash Makes provision for appropriate display of textndash Its function may be combined with viewing manager

bull Viewing Filterndash To update display viewing manager invokes the viewing filterndash It filters the document to generate a new buffer with content for

viewingbull Viewing Buffer

ndash Has the content for viewingndash This content is passed to the viewing manager which produces

the display by mapping the buffers content to a window

bull Editing filterndash Filtering is the process of selection of contiguous

characters beginning from the current positionndash When the user issues an edit command the editing

manager invokes the editing filter This filter filters the document to generate a new buffer with content for editing

ndash As editing is performed editing filter reflects the changes into the internal form amp updates the contents of the viewing buffer inorder to make the changes visible on the screen

ndash Support an undo function by storing a stack of previous views

bull Editing bufferndash Editing filter creates an editing buffer that contains the

portion of document selected by the user for editing

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 20: Debugger & Editor.ppt

Stream Editorsndash Views the entire text as a stream of characters amp

permits edit operation to cross line boundariesndash It support character line amp context oriented editing

commandsndash Current editing context is indicated by the position of

the text pointer called cursorndash Cursor can be used to move across amp within the linesndash Cursor can be moved by using positioning amp search

commands

Screen Editors

ndash It uses what-you-see- is what-you-get modendash It displays a screen full of text at a timendash User can move the cursor over the screen

position it on a point where the editing process is to be performed

ndash Effect of edit operation can be seen on the screen

ndash Useful while formatting the text to produce printed documents

Word processors

ndash Document editors with additional features to produce well formatted hard copy output

ndash Featuresbull Commands for moving section of text from one

place to anotherbull Merging of textbull Searching wordsbull Replacing wordsbull Spell checking

Structure Editors

ndash Incorporates an awareness of the structure of a document

ndash Useful in browsing through a document amp editing it

ndash Structure is specified while creating or modifying the document

ndash Editing requirement is specified using structure

Editing Processbull Document-editing process is an interactive

user-computer dialogue designed to accomplish 4 tasks

1 Select the part of the target document to be viewed and manipulated

2 Determine how to format this view on-line amp how to display it

3 Specify amp execute operations that modify the target document

4 Update the view appropriately

bull Travellingndash Moving through the editing document to a new

position in the textndash Done explicitly by the userndash It specifies where the area of interest is

bull Editingndash Adding new textndash Modifying the existing textndash Erasing the contentndash Formatting the existing data

bull Viewing amp displaying ndash Viewing amp formatting the text desired for the userndash Abstract viewndash Display component maps this abstract view into the

physical characteristics of the display device being used amp determines where a particular text may appear on user screen

Editor Structure

Commandlanguageprocessor

Editingcomponent

Travelingcomponent

Viewingcomponent

Displaycomponent

Editingbuffer

Viewingbuffer

EditingFilter

Viewingfilter

Mainmemory

Filesystem

input

Output devices

Paging

routines

bull Command language processorndash It accepts input from the usersrsquos input device amp analyses the

tokens and syntactic structure of the commandsndash It then produce an intermediate representation of the desired

editing operationsndash Interpreter then decodes this intermediate representation

bull Editing managerndash Start of the area to be edited is determined by the current editing

pointer maintained by the editing managerndash Current editing pointer can be set or reset explicitly by the user

with traveling commands such as next paragraph or implicitly as a side effect of the previous edit operation as delete paragraph

bull Traveling managerndash Setting of the current editing and viewing pointersndash Invoked explicitly by the user or implicitly by editing operations

bull Viewing Managerndash Start of the area to be viewed is determined by current viewing

pointerndash It is maintained by viewing manager which is collection of

modules responsible for determining the next viewndash Current viewing pointer can be set or reset explicitly by the user

or implicitly by the system as a result of the previous edit operation

bull Display Managerndash Makes provision for appropriate display of textndash Its function may be combined with viewing manager

bull Viewing Filterndash To update display viewing manager invokes the viewing filterndash It filters the document to generate a new buffer with content for

viewingbull Viewing Buffer

ndash Has the content for viewingndash This content is passed to the viewing manager which produces

the display by mapping the buffers content to a window

bull Editing filterndash Filtering is the process of selection of contiguous

characters beginning from the current positionndash When the user issues an edit command the editing

manager invokes the editing filter This filter filters the document to generate a new buffer with content for editing

ndash As editing is performed editing filter reflects the changes into the internal form amp updates the contents of the viewing buffer inorder to make the changes visible on the screen

ndash Support an undo function by storing a stack of previous views

bull Editing bufferndash Editing filter creates an editing buffer that contains the

portion of document selected by the user for editing

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 21: Debugger & Editor.ppt

Screen Editors

ndash It uses what-you-see- is what-you-get modendash It displays a screen full of text at a timendash User can move the cursor over the screen

position it on a point where the editing process is to be performed

ndash Effect of edit operation can be seen on the screen

ndash Useful while formatting the text to produce printed documents

Word processors

ndash Document editors with additional features to produce well formatted hard copy output

ndash Featuresbull Commands for moving section of text from one

place to anotherbull Merging of textbull Searching wordsbull Replacing wordsbull Spell checking

Structure Editors

ndash Incorporates an awareness of the structure of a document

ndash Useful in browsing through a document amp editing it

ndash Structure is specified while creating or modifying the document

ndash Editing requirement is specified using structure

Editing Processbull Document-editing process is an interactive

user-computer dialogue designed to accomplish 4 tasks

1 Select the part of the target document to be viewed and manipulated

2 Determine how to format this view on-line amp how to display it

3 Specify amp execute operations that modify the target document

4 Update the view appropriately

bull Travellingndash Moving through the editing document to a new

position in the textndash Done explicitly by the userndash It specifies where the area of interest is

bull Editingndash Adding new textndash Modifying the existing textndash Erasing the contentndash Formatting the existing data

bull Viewing amp displaying ndash Viewing amp formatting the text desired for the userndash Abstract viewndash Display component maps this abstract view into the

physical characteristics of the display device being used amp determines where a particular text may appear on user screen

Editor Structure

Commandlanguageprocessor

Editingcomponent

Travelingcomponent

Viewingcomponent

Displaycomponent

Editingbuffer

Viewingbuffer

EditingFilter

Viewingfilter

Mainmemory

Filesystem

input

Output devices

Paging

routines

bull Command language processorndash It accepts input from the usersrsquos input device amp analyses the

tokens and syntactic structure of the commandsndash It then produce an intermediate representation of the desired

editing operationsndash Interpreter then decodes this intermediate representation

bull Editing managerndash Start of the area to be edited is determined by the current editing

pointer maintained by the editing managerndash Current editing pointer can be set or reset explicitly by the user

with traveling commands such as next paragraph or implicitly as a side effect of the previous edit operation as delete paragraph

bull Traveling managerndash Setting of the current editing and viewing pointersndash Invoked explicitly by the user or implicitly by editing operations

bull Viewing Managerndash Start of the area to be viewed is determined by current viewing

pointerndash It is maintained by viewing manager which is collection of

modules responsible for determining the next viewndash Current viewing pointer can be set or reset explicitly by the user

or implicitly by the system as a result of the previous edit operation

bull Display Managerndash Makes provision for appropriate display of textndash Its function may be combined with viewing manager

bull Viewing Filterndash To update display viewing manager invokes the viewing filterndash It filters the document to generate a new buffer with content for

viewingbull Viewing Buffer

ndash Has the content for viewingndash This content is passed to the viewing manager which produces

the display by mapping the buffers content to a window

bull Editing filterndash Filtering is the process of selection of contiguous

characters beginning from the current positionndash When the user issues an edit command the editing

manager invokes the editing filter This filter filters the document to generate a new buffer with content for editing

ndash As editing is performed editing filter reflects the changes into the internal form amp updates the contents of the viewing buffer inorder to make the changes visible on the screen

ndash Support an undo function by storing a stack of previous views

bull Editing bufferndash Editing filter creates an editing buffer that contains the

portion of document selected by the user for editing

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 22: Debugger & Editor.ppt

Word processors

ndash Document editors with additional features to produce well formatted hard copy output

ndash Featuresbull Commands for moving section of text from one

place to anotherbull Merging of textbull Searching wordsbull Replacing wordsbull Spell checking

Structure Editors

ndash Incorporates an awareness of the structure of a document

ndash Useful in browsing through a document amp editing it

ndash Structure is specified while creating or modifying the document

ndash Editing requirement is specified using structure

Editing Processbull Document-editing process is an interactive

user-computer dialogue designed to accomplish 4 tasks

1 Select the part of the target document to be viewed and manipulated

2 Determine how to format this view on-line amp how to display it

3 Specify amp execute operations that modify the target document

4 Update the view appropriately

bull Travellingndash Moving through the editing document to a new

position in the textndash Done explicitly by the userndash It specifies where the area of interest is

bull Editingndash Adding new textndash Modifying the existing textndash Erasing the contentndash Formatting the existing data

bull Viewing amp displaying ndash Viewing amp formatting the text desired for the userndash Abstract viewndash Display component maps this abstract view into the

physical characteristics of the display device being used amp determines where a particular text may appear on user screen

Editor Structure

Commandlanguageprocessor

Editingcomponent

Travelingcomponent

Viewingcomponent

Displaycomponent

Editingbuffer

Viewingbuffer

EditingFilter

Viewingfilter

Mainmemory

Filesystem

input

Output devices

Paging

routines

bull Command language processorndash It accepts input from the usersrsquos input device amp analyses the

tokens and syntactic structure of the commandsndash It then produce an intermediate representation of the desired

editing operationsndash Interpreter then decodes this intermediate representation

bull Editing managerndash Start of the area to be edited is determined by the current editing

pointer maintained by the editing managerndash Current editing pointer can be set or reset explicitly by the user

with traveling commands such as next paragraph or implicitly as a side effect of the previous edit operation as delete paragraph

bull Traveling managerndash Setting of the current editing and viewing pointersndash Invoked explicitly by the user or implicitly by editing operations

bull Viewing Managerndash Start of the area to be viewed is determined by current viewing

pointerndash It is maintained by viewing manager which is collection of

modules responsible for determining the next viewndash Current viewing pointer can be set or reset explicitly by the user

or implicitly by the system as a result of the previous edit operation

bull Display Managerndash Makes provision for appropriate display of textndash Its function may be combined with viewing manager

bull Viewing Filterndash To update display viewing manager invokes the viewing filterndash It filters the document to generate a new buffer with content for

viewingbull Viewing Buffer

ndash Has the content for viewingndash This content is passed to the viewing manager which produces

the display by mapping the buffers content to a window

bull Editing filterndash Filtering is the process of selection of contiguous

characters beginning from the current positionndash When the user issues an edit command the editing

manager invokes the editing filter This filter filters the document to generate a new buffer with content for editing

ndash As editing is performed editing filter reflects the changes into the internal form amp updates the contents of the viewing buffer inorder to make the changes visible on the screen

ndash Support an undo function by storing a stack of previous views

bull Editing bufferndash Editing filter creates an editing buffer that contains the

portion of document selected by the user for editing

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 23: Debugger & Editor.ppt

Structure Editors

ndash Incorporates an awareness of the structure of a document

ndash Useful in browsing through a document amp editing it

ndash Structure is specified while creating or modifying the document

ndash Editing requirement is specified using structure

Editing Processbull Document-editing process is an interactive

user-computer dialogue designed to accomplish 4 tasks

1 Select the part of the target document to be viewed and manipulated

2 Determine how to format this view on-line amp how to display it

3 Specify amp execute operations that modify the target document

4 Update the view appropriately

bull Travellingndash Moving through the editing document to a new

position in the textndash Done explicitly by the userndash It specifies where the area of interest is

bull Editingndash Adding new textndash Modifying the existing textndash Erasing the contentndash Formatting the existing data

bull Viewing amp displaying ndash Viewing amp formatting the text desired for the userndash Abstract viewndash Display component maps this abstract view into the

physical characteristics of the display device being used amp determines where a particular text may appear on user screen

Editor Structure

Commandlanguageprocessor

Editingcomponent

Travelingcomponent

Viewingcomponent

Displaycomponent

Editingbuffer

Viewingbuffer

EditingFilter

Viewingfilter

Mainmemory

Filesystem

input

Output devices

Paging

routines

bull Command language processorndash It accepts input from the usersrsquos input device amp analyses the

tokens and syntactic structure of the commandsndash It then produce an intermediate representation of the desired

editing operationsndash Interpreter then decodes this intermediate representation

bull Editing managerndash Start of the area to be edited is determined by the current editing

pointer maintained by the editing managerndash Current editing pointer can be set or reset explicitly by the user

with traveling commands such as next paragraph or implicitly as a side effect of the previous edit operation as delete paragraph

bull Traveling managerndash Setting of the current editing and viewing pointersndash Invoked explicitly by the user or implicitly by editing operations

bull Viewing Managerndash Start of the area to be viewed is determined by current viewing

pointerndash It is maintained by viewing manager which is collection of

modules responsible for determining the next viewndash Current viewing pointer can be set or reset explicitly by the user

or implicitly by the system as a result of the previous edit operation

bull Display Managerndash Makes provision for appropriate display of textndash Its function may be combined with viewing manager

bull Viewing Filterndash To update display viewing manager invokes the viewing filterndash It filters the document to generate a new buffer with content for

viewingbull Viewing Buffer

ndash Has the content for viewingndash This content is passed to the viewing manager which produces

the display by mapping the buffers content to a window

bull Editing filterndash Filtering is the process of selection of contiguous

characters beginning from the current positionndash When the user issues an edit command the editing

manager invokes the editing filter This filter filters the document to generate a new buffer with content for editing

ndash As editing is performed editing filter reflects the changes into the internal form amp updates the contents of the viewing buffer inorder to make the changes visible on the screen

ndash Support an undo function by storing a stack of previous views

bull Editing bufferndash Editing filter creates an editing buffer that contains the

portion of document selected by the user for editing

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 24: Debugger & Editor.ppt

Editing Processbull Document-editing process is an interactive

user-computer dialogue designed to accomplish 4 tasks

1 Select the part of the target document to be viewed and manipulated

2 Determine how to format this view on-line amp how to display it

3 Specify amp execute operations that modify the target document

4 Update the view appropriately

bull Travellingndash Moving through the editing document to a new

position in the textndash Done explicitly by the userndash It specifies where the area of interest is

bull Editingndash Adding new textndash Modifying the existing textndash Erasing the contentndash Formatting the existing data

bull Viewing amp displaying ndash Viewing amp formatting the text desired for the userndash Abstract viewndash Display component maps this abstract view into the

physical characteristics of the display device being used amp determines where a particular text may appear on user screen

Editor Structure

Commandlanguageprocessor

Editingcomponent

Travelingcomponent

Viewingcomponent

Displaycomponent

Editingbuffer

Viewingbuffer

EditingFilter

Viewingfilter

Mainmemory

Filesystem

input

Output devices

Paging

routines

bull Command language processorndash It accepts input from the usersrsquos input device amp analyses the

tokens and syntactic structure of the commandsndash It then produce an intermediate representation of the desired

editing operationsndash Interpreter then decodes this intermediate representation

bull Editing managerndash Start of the area to be edited is determined by the current editing

pointer maintained by the editing managerndash Current editing pointer can be set or reset explicitly by the user

with traveling commands such as next paragraph or implicitly as a side effect of the previous edit operation as delete paragraph

bull Traveling managerndash Setting of the current editing and viewing pointersndash Invoked explicitly by the user or implicitly by editing operations

bull Viewing Managerndash Start of the area to be viewed is determined by current viewing

pointerndash It is maintained by viewing manager which is collection of

modules responsible for determining the next viewndash Current viewing pointer can be set or reset explicitly by the user

or implicitly by the system as a result of the previous edit operation

bull Display Managerndash Makes provision for appropriate display of textndash Its function may be combined with viewing manager

bull Viewing Filterndash To update display viewing manager invokes the viewing filterndash It filters the document to generate a new buffer with content for

viewingbull Viewing Buffer

ndash Has the content for viewingndash This content is passed to the viewing manager which produces

the display by mapping the buffers content to a window

bull Editing filterndash Filtering is the process of selection of contiguous

characters beginning from the current positionndash When the user issues an edit command the editing

manager invokes the editing filter This filter filters the document to generate a new buffer with content for editing

ndash As editing is performed editing filter reflects the changes into the internal form amp updates the contents of the viewing buffer inorder to make the changes visible on the screen

ndash Support an undo function by storing a stack of previous views

bull Editing bufferndash Editing filter creates an editing buffer that contains the

portion of document selected by the user for editing

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 25: Debugger & Editor.ppt

bull Travellingndash Moving through the editing document to a new

position in the textndash Done explicitly by the userndash It specifies where the area of interest is

bull Editingndash Adding new textndash Modifying the existing textndash Erasing the contentndash Formatting the existing data

bull Viewing amp displaying ndash Viewing amp formatting the text desired for the userndash Abstract viewndash Display component maps this abstract view into the

physical characteristics of the display device being used amp determines where a particular text may appear on user screen

Editor Structure

Commandlanguageprocessor

Editingcomponent

Travelingcomponent

Viewingcomponent

Displaycomponent

Editingbuffer

Viewingbuffer

EditingFilter

Viewingfilter

Mainmemory

Filesystem

input

Output devices

Paging

routines

bull Command language processorndash It accepts input from the usersrsquos input device amp analyses the

tokens and syntactic structure of the commandsndash It then produce an intermediate representation of the desired

editing operationsndash Interpreter then decodes this intermediate representation

bull Editing managerndash Start of the area to be edited is determined by the current editing

pointer maintained by the editing managerndash Current editing pointer can be set or reset explicitly by the user

with traveling commands such as next paragraph or implicitly as a side effect of the previous edit operation as delete paragraph

bull Traveling managerndash Setting of the current editing and viewing pointersndash Invoked explicitly by the user or implicitly by editing operations

bull Viewing Managerndash Start of the area to be viewed is determined by current viewing

pointerndash It is maintained by viewing manager which is collection of

modules responsible for determining the next viewndash Current viewing pointer can be set or reset explicitly by the user

or implicitly by the system as a result of the previous edit operation

bull Display Managerndash Makes provision for appropriate display of textndash Its function may be combined with viewing manager

bull Viewing Filterndash To update display viewing manager invokes the viewing filterndash It filters the document to generate a new buffer with content for

viewingbull Viewing Buffer

ndash Has the content for viewingndash This content is passed to the viewing manager which produces

the display by mapping the buffers content to a window

bull Editing filterndash Filtering is the process of selection of contiguous

characters beginning from the current positionndash When the user issues an edit command the editing

manager invokes the editing filter This filter filters the document to generate a new buffer with content for editing

ndash As editing is performed editing filter reflects the changes into the internal form amp updates the contents of the viewing buffer inorder to make the changes visible on the screen

ndash Support an undo function by storing a stack of previous views

bull Editing bufferndash Editing filter creates an editing buffer that contains the

portion of document selected by the user for editing

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 26: Debugger & Editor.ppt

Editor Structure

Commandlanguageprocessor

Editingcomponent

Travelingcomponent

Viewingcomponent

Displaycomponent

Editingbuffer

Viewingbuffer

EditingFilter

Viewingfilter

Mainmemory

Filesystem

input

Output devices

Paging

routines

bull Command language processorndash It accepts input from the usersrsquos input device amp analyses the

tokens and syntactic structure of the commandsndash It then produce an intermediate representation of the desired

editing operationsndash Interpreter then decodes this intermediate representation

bull Editing managerndash Start of the area to be edited is determined by the current editing

pointer maintained by the editing managerndash Current editing pointer can be set or reset explicitly by the user

with traveling commands such as next paragraph or implicitly as a side effect of the previous edit operation as delete paragraph

bull Traveling managerndash Setting of the current editing and viewing pointersndash Invoked explicitly by the user or implicitly by editing operations

bull Viewing Managerndash Start of the area to be viewed is determined by current viewing

pointerndash It is maintained by viewing manager which is collection of

modules responsible for determining the next viewndash Current viewing pointer can be set or reset explicitly by the user

or implicitly by the system as a result of the previous edit operation

bull Display Managerndash Makes provision for appropriate display of textndash Its function may be combined with viewing manager

bull Viewing Filterndash To update display viewing manager invokes the viewing filterndash It filters the document to generate a new buffer with content for

viewingbull Viewing Buffer

ndash Has the content for viewingndash This content is passed to the viewing manager which produces

the display by mapping the buffers content to a window

bull Editing filterndash Filtering is the process of selection of contiguous

characters beginning from the current positionndash When the user issues an edit command the editing

manager invokes the editing filter This filter filters the document to generate a new buffer with content for editing

ndash As editing is performed editing filter reflects the changes into the internal form amp updates the contents of the viewing buffer inorder to make the changes visible on the screen

ndash Support an undo function by storing a stack of previous views

bull Editing bufferndash Editing filter creates an editing buffer that contains the

portion of document selected by the user for editing

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 27: Debugger & Editor.ppt

bull Command language processorndash It accepts input from the usersrsquos input device amp analyses the

tokens and syntactic structure of the commandsndash It then produce an intermediate representation of the desired

editing operationsndash Interpreter then decodes this intermediate representation

bull Editing managerndash Start of the area to be edited is determined by the current editing

pointer maintained by the editing managerndash Current editing pointer can be set or reset explicitly by the user

with traveling commands such as next paragraph or implicitly as a side effect of the previous edit operation as delete paragraph

bull Traveling managerndash Setting of the current editing and viewing pointersndash Invoked explicitly by the user or implicitly by editing operations

bull Viewing Managerndash Start of the area to be viewed is determined by current viewing

pointerndash It is maintained by viewing manager which is collection of

modules responsible for determining the next viewndash Current viewing pointer can be set or reset explicitly by the user

or implicitly by the system as a result of the previous edit operation

bull Display Managerndash Makes provision for appropriate display of textndash Its function may be combined with viewing manager

bull Viewing Filterndash To update display viewing manager invokes the viewing filterndash It filters the document to generate a new buffer with content for

viewingbull Viewing Buffer

ndash Has the content for viewingndash This content is passed to the viewing manager which produces

the display by mapping the buffers content to a window

bull Editing filterndash Filtering is the process of selection of contiguous

characters beginning from the current positionndash When the user issues an edit command the editing

manager invokes the editing filter This filter filters the document to generate a new buffer with content for editing

ndash As editing is performed editing filter reflects the changes into the internal form amp updates the contents of the viewing buffer inorder to make the changes visible on the screen

ndash Support an undo function by storing a stack of previous views

bull Editing bufferndash Editing filter creates an editing buffer that contains the

portion of document selected by the user for editing

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 28: Debugger & Editor.ppt

bull Viewing Managerndash Start of the area to be viewed is determined by current viewing

pointerndash It is maintained by viewing manager which is collection of

modules responsible for determining the next viewndash Current viewing pointer can be set or reset explicitly by the user

or implicitly by the system as a result of the previous edit operation

bull Display Managerndash Makes provision for appropriate display of textndash Its function may be combined with viewing manager

bull Viewing Filterndash To update display viewing manager invokes the viewing filterndash It filters the document to generate a new buffer with content for

viewingbull Viewing Buffer

ndash Has the content for viewingndash This content is passed to the viewing manager which produces

the display by mapping the buffers content to a window

bull Editing filterndash Filtering is the process of selection of contiguous

characters beginning from the current positionndash When the user issues an edit command the editing

manager invokes the editing filter This filter filters the document to generate a new buffer with content for editing

ndash As editing is performed editing filter reflects the changes into the internal form amp updates the contents of the viewing buffer inorder to make the changes visible on the screen

ndash Support an undo function by storing a stack of previous views

bull Editing bufferndash Editing filter creates an editing buffer that contains the

portion of document selected by the user for editing

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 29: Debugger & Editor.ppt

bull Editing filterndash Filtering is the process of selection of contiguous

characters beginning from the current positionndash When the user issues an edit command the editing

manager invokes the editing filter This filter filters the document to generate a new buffer with content for editing

ndash As editing is performed editing filter reflects the changes into the internal form amp updates the contents of the viewing buffer inorder to make the changes visible on the screen

ndash Support an undo function by storing a stack of previous views

bull Editing bufferndash Editing filter creates an editing buffer that contains the

portion of document selected by the user for editing

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 30: Debugger & Editor.ppt

A text editor is a type of program used for editing plain text filesOften provided with operating systems

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 31: Debugger & Editor.ppt

Line EditorDagger Scope of edit operations is limited to a line of textDaggerbull The line is designated positionally Advantage-SimplicityDisadvantage- Does not display the text in the manner it would appear if

printed

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 32: Debugger & Editor.ppt

Stream Editorbull Views the entire text as a stream

of charactersbull This permits edit operations to cross line

boundariesbull Support character line and context

oriented commands based on the current editing context indicated by the position of a text pointer

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 33: Debugger & Editor.ppt

bull Screen Editor bull DaggerA screen editor uses the what you see is

what you get principle in editor designbull DaggerThe user can move the cursor over the

screen position it at the point where he desires to perform some editing and proceed with the editing directly

bull Advantage-Useful while formatting the text to produce printed documents

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 34: Debugger & Editor.ppt

bull Word ProcessorsBasically document editors with additional

features to produce well formatted hard copy output

bull Essential features of word processors are commands for moving sections of text from one place to another mergingof text and searching and replacement of words Many word processors support a spell check optioneg Wordstar

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 35: Debugger & Editor.ppt

Structure EditorsIncorporates an awareness of the structure

of a documentbull DaggerStructure is specified by the user while

creating or modifying the documentbull DaggerEditing requirements are specified using

thestructurebull DaggerA special class of structure editors

called syntax directed editors are used in programming environments

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 36: Debugger & Editor.ppt

Advantages and Disadvantages Text Editor

bull Simple and places less demands on system

bull Provides greater control over the application

bull Difficult to Visualise output(eg to preview a webpage you have to have a suitable browser)

bull Dependant on programming or text-based commands knowledge

  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37
Page 37: Debugger & Editor.ppt
  • Debugger
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Steps in Debugging
  • Slide 9
  • Postmortem analysis
  • Program understanding
  • Hypothesis testing
  • Editors
  • Slide 14
  • Slide 15
  • Types of Editors
  • Line Editors
  • Slide 18
  • Slide 19
  • Stream Editors
  • Screen Editors
  • Word processors
  • Structure Editors
  • Editing Process
  • Slide 25
  • Editor Structure
  • Slide 27
  • Slide 28
  • Slide 29
  • Slide 30
  • Slide 31
  • Slide 32
  • Slide 33
  • Slide 34
  • Slide 35
  • Slide 36
  • Slide 37