Introduction
Punctuation/Syntax  
   
The following punctuation symbols have fixed meaning in a ProvideX application:
! Exclamation.
ProvideX accepts an exclamation mark as a substitute for the
REM Directive; e.g., ! this remark. An exclamation mark as the leading character of a string also denotes one of Best Software Canada Ltd.'s embedded bitmaps; e.g., !STOP.
" Quotes.
Standard quotation marks enclose string literals. A leading quotation mark can also be used at the start of a statement as a substitute for the
INVOKE Directive.

For example:

"NOTEPAD

is the same as

INVOKE "NOTEPAD

$ Dollar sign.
A dollar sign at the end of a variable name marks a string variable; e.g., CUST$. Dollar signs can also enclose hexadecimal values, for example $8A$.
' Apostrophe.
Single quotation marks (apostrophes) enclose system parameters and mnemonics, for instance 'TL' and 'CS'. The
Apostrophe Operator, is used to indicate a control object property.
; Semicolon.
Directives and entry points are separated by semicolons in program statements.
* Asterisk.
ProvideX includes a number of auxiliary applications. These utility names are preceded by an asterisk; e.g., *CMD, *UPB, and the *[ ] search utility described below. An asterisk may have specific meaning in the syntax of some directives or functions; e.g., as a wildcard character to denote a global occurrence.
% Percent Sign.
A percent sign before a variable name denotes a global variable or function; e.g., %DEPT. A percent sign following a variable name indicates that the variable is an integer; e.g., DEPT%. A variable name having both leading and trailing percent signs denotes a global variable for integer values; e.g., %DEPT%
*[ ] Asterisk + Square Brackets.
The search utility (for searching programs) is invoked by enclosing a search string within square brackets preceded by an asterisk.; e.g.,

->*[print]
0090 REM Printing
0100 PRINT DAY
0120 PRINT "Today's date is ",DAY
0610 IF LEN(X$)>100 THEN PRINT "TOO LONG"; GOTO 0210
->*[26]
0110 SETDAY "02/26/99"

The search is not case-sensitive.
*[ ]=[ ] Global search and replace can be used to make changes in programs; e.g.,


*[CST$]=[CUST$] changes all instances of CST$ to CUST$.

-:
->
-}
Prompts. When your ProvideX prompt is a dash with a colon, that indicates that your current program has not been saved. After you save your program, the prompt reverts to an arrow. Under WindX, the prompt is a dash and a right brace.
/ or \ Slashes. ProvideX accepts either slash (forward or back) as a substitute for the LIST Directive; e.g., / 30 is the same as LIST 30.
xxxx: String–trailing colon. Use a trailing colon to denote that your string is a line label (statement reference or entry point); e.g.,

0110 IF UPDATE$="Y" GOSUB CUSTOMER
...
2000 CUSTOMER:
2010 INPUT 'CS',@(5,5),"Enter customer number",CST
2020 ! REST OF ROUTINE ...
2200 RETURN

? Question Mark. ProvideX accepts a leading question mark as a substitute for the PRINT Directive; e.g., ? CUST$ is the same as PRINT CUST$. ProvideX also places a question mark between a line number and program statement to denote a syntax error.
` Back Apostrophe. ProvideX accepts the back apostrophe as a substitute for the EDIT Directive.