ACUCOBOL-GT contains many extensions to the ANSI standard. These are summarized below:
- Terminal-oriented source format
- Compile-time modification of source by Identification Area flags
- The Identification Division is optional
- IS RESIDENT PROGRAM clause
- An index item may subscript a table other than the one it is associated with. Index data items may be used any place a numeric
data item is allowed
- Apostrophes may be used to delimit nonnumeric literals. Hexadecimal literals are allowed
- A procedure name may be the same as a data item name
- Initial paragraph name not required
- Paragraph names allowed in Area B
- Multiple-word SOURCE-COMPUTER and OBJECT-COMPUTER names
- Data Division FILE SECTION header is optional
- The word ALPHABET is optional when you are declaring an alphabet-name in the SPECIAL-NAMES paragraph
- The ASSIGN TO clause may have a data item specified for the external file name. Also, the external file name is optional in
the clause
- An optional device type may be specified in an ASSIGN clause
- WITH COMPRESSION, WITH ENCRYPTION added to ASSIGN clause
- LINE and BINARY options in ORGANIZATION clause
- COLLATING SEQUENCE clause
- COMPRESSION CONTROL clause
- LOCK MODE clause
- LENGTH OF clause for data literals
- RECORD-POSITION clause for data items
- RESERVE clause with the NO or ALTERNATE options
- Split key specification for indexed files
- FILE STATUS clause for sort files
- REDEFINES can reference an item that is itself a redefinition of an area
- Additional SPECIAL-NAMES clauses: CONSOLE IS CRT, CRT STATUS, CURSOR IS, EVENT STATUS, and NUMERIC SIGN SEPARATE
- SEGMENT-LIMIT clause (level 2 segmentation feature)
- VALUE OF FILE-ID clause
- USAGE COMP-1, COMP-2, COMP-3, COMP-4, COMP-5, COMP-6, COMP-N, COMP-X, FLOAT, DOUBLE, and HANDLE
- USAGE types:
SIGNED-SHORT |
UNSIGNED-SHORT |
SIGNED-INT |
UNSIGNED-INT |
SIGNED-LONG |
UNSIGNED-LONG |
- ADDRESS OF phrase in arithmetic expressions
- Tables may contain up to 15 dimensions
- A PICTURE string may contain up to 100 characters
- Level 78 constant names
- WHEN SET TO FALSE phrase for level 88 condition-names. A FALSE phrase added to the SET statement
- SCREEN SECTION
- SCREEN SECTION BEFORE, AFTER, and EXCEPTION embedded procedures
- SCREEN SECTION EVENT procedures
- IS SPECIAL-NAMES phrase in record description entry
- CHAINING phrase added to Procedure Division header
- Non-display data items may be specified in a NUMERIC class condition
- USE statements may reference sort files
- RETURN-CODE special register
- ACCEPT with screen control
- ACCEPT FROM SYSTEM-INFO, TERMINAL-INFO, INPUT STATUS, LINE NUMBER, COMMAND-LINE, ESCAPE KEY, CENTURY-DATE, CENTURY-DAY, STANDARD
OBJECT, and WINDOW HANDLE
- ACCEPT FROM SCREEN
- ACCEPT CONTROL statement
- ACCEPT ALLOWING messages phrase
- ACCEPT external-form-item statement
- ADD TABLE statement
- CALL RUN statement
- CALL PROGRAM statement
- CALL THREAD statement
- Literals allowed in the USING portion of a CALL statement. Also, non-level 01 group items may be listed in the USING phrase
- BULK-ADDITION phrase for OPEN statement
- BY VALUE phrase for CALL statement
- OMITTED/NULL phrase for CALL statement
- NOT ON OVERFLOW accepted for CALL statement
- ALL option for CANCEL statement
- CHART option for CANCEL statement
- CHAIN statement
- CLOSE WINDOW statement
- COMMIT statement
- COPY RESOURCE statement
- CREATE statement
- DELETE FILE statement
- DESTROY statement
- DISPLAY with screen control
- DISPLAY SUBWINDOW/WINDOW statement
- DISPLAY FLOATING WINDOW statement
- DISPLAY SCREEN statement
- DISPLAY LINE statement
- DISPLAY BOX statement
- DISPLAY UPON WINDOW TITLE statement
- DISPLAY UPON COMMAND-LINE statement
- DISPLAY INITIAL WINDOW statement
- DISPLAY INDEPENDENT WINDOW statement
- DISPLAY TOOL-BAR statement
- DISPLAY control-type statement
- DISPLAY MESSAGE BOX statement
- DISPLAY external-form-item statement
- DRAW CHART statement
- ENTER CHART DATA statement
- ENTRY statement
- GOBACK statement
- INQUIRE CONTROL statement
- INQUIRE WINDOW statement
- LOCK THREAD statement
- TRAILING option on INSPECT statement
- MODIFY statement
- NEXT SENTENCE statement
- WITH LOCK and ALLOWING phrases added to OPEN statement
- MASS-UPDATE option on OPEN statement
- WITH NO LOCK and ALLOWING phrases on READ statement
- PERFORM THREAD statement
- PREVIOUS option on READ statement
- Literal allowed in FROM phrase of REWRITE and WRITE statements
- SEND message statement
- RECEIVE message statement
- SET CHART ATTRIBUTE statement
- SET FILE-PREFIX statement
- SET ENVIRONMENT statement
- SET EXCEPTION statement
- SET TO ADDRESS OF statement
- SET TO SIZE OF statement
- SET HANDLE statement
- SET THREAD statement
- SET WINDOW statement
- STOP THREAD statement
- SUBTRACT TABLE statement
- LESS THAN and LESS THAN OR EQUAL options on START statement
- UNLOCK statement
- DECLARATIVE procedures may reference procedures outside of DECLARATIVES
- Recursive CALLs
- Dynamically determined SORT keys
- EXIT PERFORM, EXIT PARAGRAPH and EXIT SECTION
- ROLLBACK clause for LOCK MODE phrase, on SELECT statement in FILE-CONTROL paragraph
- COMMIT statement may indicate end of transaction and cause changes to be written to transaction log file
- ROLLBACK statement
- SET statement with ADDRESS OF clause sets address of linkage data item to specified value
- START TRANSACTION statement
- SUPPRESS clause for the COPY statement
- USE active_x_control_item and USE ole_object_item statements
- USE FOR REPORTING statement
- UNLOCK THREAD statement
- WAIT statement