Browse Prior Art Database

Error Handling for Applications Built using Smalltalk/V

IP.com Disclosure Number: IPCOM000107940D
Original Publication Date: 1992-Apr-01
Included in the Prior Art Database: 2005-Mar-22
Document File: 2 page(s) / 86K

Publishing Venue

IBM

Related People

Griffin, DL: AUTHOR [+2]

Abstract

This article defines a technique for providing collection of errors which contains various levels of information and allowing for the information to be displayed to a user. It also includes a technique to ensure that the error detection code does not itself introduce additional errors or errors of omission.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Error Handling for Applications Built using Smalltalk/V

       This article defines a technique for providing collection
of errors which contains various levels of information and allowing
for the information to be displayed to a user.  It also includes a
technique to ensure that the error detection code does not itself
introduce additional errors or errors of omission.

      Current art for building applications using Smalltalk/V*
includes no general-purpose error-handling strategy.  The system does
provide for errors by a single level error dialog which is of limited
functionality within the runtime environment.  Error handling in the
Smalltalk/V development environment is quite powerful in contrast.

      For all of the following, Smalltalk terminology is used.  Terms
such as 'class', 'object', 'nil', etc., should be taken in their
Smalltalk sense.

      In order to provide a general-purpose error strategy, all
classes which detect user input (from the screen, files, etc.) or
system (I/O failure, memory check, etc.) errors will always answer
with a PackagedReply object.  This object as the answer of the
message will be described as a part of the message protocol.  If an
error is not detected, PackagedReply will answer true to the message
isOK. PackagedReply can then be asked for data and this can be
reliably used by the sender.  If PackagedReply answers false to isOK,
an error was detected by the object answering.

      An example will help to show how this is accomplished. Assume
that an application, called Application, contains at least one entry
field, called DateEntryField.  Application expects a user to enter a
set of characters into DateEntryField and then press the enter key.
The characters are taken to represent a Date in character form.
Following is the flow of messages:
      1)   Application will extract the characters from
DateEntryField with the contents message into aString.
      2)   Date is then sent the message fromString: aString.
      3)  ...