.LM 5;.RM 70 .SP 1 .ENABLE BAR .NF .FIGURE 10 .CENTER 70;DOCUMENT MP-1-3415 .S 1 .BB .CENTER 70;File: CLUSTER::[MP1Q.MANUALS]FLECSUIM.RNO .S 1 .CENTER 70;Under RSX-11M and VMS .EB .S 6 .CENTER 70;FLECS and ALECS User's Manual .s 3 .center 70;This manual corresponds to version 22 of FLECS .center 70;As Modified at LAMPF .s 3 .BB .center 70;August 27, 1984 .EB .s 5 .center 70;GROUP MP-1 .s 5 .center 70;Clinton P. Anderson Meson Physics Facility (LAMPF) .center 70;Los Alamos National Laboratory .center 70;Los Alamos, New Mexico 87545 .page .center 70;TABLE OF CONTENTS .s 1 .IF TOC .REQUIRE "FLECSUIM.RNT" .LM 5;.RM 70;.FILL;.JUSTIFY .ELSE TOC .PAGE DUMMY PAGE TO HOLD SPACE FOR 2ND PAGE OF TABLE OF CONTENTS .LM 5;.RM 70;.FILL;.JUSTIFY .ENDIF TOC .LM 5;.RM 70;.FILL;.JUSTIFY .PAGE .LM+10;.RM-10 .FIGURE 10 .fill .justify .CENTER 60;ABSTRACT .s 1 This document describes the FLECS and ALECS programming languages which allow use of standard structured programming techniques in FORTRAN and MACRO-11 programs, respectively. .s 5 .center 60;REVISION LIST .LM 5;.RM 72 .LM +10 .s 1 .I -10 05-Jan-75 (Terry Beyer) written. .BR .I -10 17-Jan-79 (Civil Aeromedical Institute) put into RUNOFF format. .BR .I -10 01-Oct-82 (MAO) revised to currently used FLECS/ALECS at LAMPF; DSR format. .BR .I -10 19-Sep-83 (MAO) Document new listing format, new command files, .br response to long lines, and generation of either PDP or VAX MACRO. .br .i -10 27-Aug-84 (MAO) Document ".IMPLICIT NONE"; revise Sec.#10. .page .LM 5 .FLAGS CAPITALIZE .LOWER CASE .HL 1 ^^INTRODUCTION\\ .send toc.skip1 .P ^TRANSLATOR---------> TRUE IF X BIT SET :X. TRUE IF X BIT IS CLEAR .S 1 .FILL ^FOR EXAMPLE, .S 1 ^^IF(:C.SET:) HALT\\ .LE;^L IS A BITWISE COMPARISON OF TWO EXPRESSIONS IN THE FORMAT .S 1 .NOFILL ^^A:SET.IN:B\\ --> TRUE IF " TRUE IF <"BIT A,A=A/CO\\:N1:...:NM .SKIP 1 .TP 5 WHERE THE NI'S ARE 1-6 CHARACTER CALC,CALC=CALC/CO:VMS:NOBOX:ACQUISITION\\ .SKIP 1 HEL SYSTEM/\\password^^ .BB MCR>INS DP1:[201,7]FLE/TASK=...FLE MCR>INS DP1:[201,7]ALE/TASK=...ALE\\ .EB .S 1 .FILL .P ^UNDER FLE OUT/[-]FU,LIST/[-]SP=IN/CO:N1:...:NM\\ .LS .LM +5 .LE;ALE#OUT/[-]FU,LIST/[-]SP=IN/CO:N1:...:NM\\ .S 1 ^ALL COMMENTS FOR THE MAY BE CHECKED IN THE COMMAND PROCEDURE TO DETERMINE IF ----->$ _<[L]>----->$ _<[L]>---->$1 _\._/ ! _\._/ ! _\._/ ! ! ! ! ! ! ! F! ! T! ! F! ! ! ! ! ! $2 ! !--------' !--------' !--------' ! ! ! .S 2 .TEST PAGE 12 REPEAT UNTIL ( [L] ) $ REPEAT WHILE ( [L] ) $ ------------------------ ------------------------ ! ! !_<-----. !_<-----. ! ! ! ! $ ! $ ! ! ! ! ! _/ _\ ^F ! _/ _\ T ! _<[L]_>----' _<[L]_>----' _\._/ _\._/ ! ! T! F! .S 2 .TEST PAGE 14 UNTIL ( [L] ) $ WHILE ( [L] ) $ ----------------- ----------------- ! ! !_<-----. !_<-----. ! ! ! ! T _/ _\ ! F _/ _\ ! .--_<[L]> ! .--_<[L]> ! ! _\._/ ! ! _\._/ ! ! ! ! ! ! ! ! ^F! ! ! ^T! ! ! '---$--' ! '---$--' ! ! ----. ----. ! ! .S 1 .TP 30 ^^CONDITIONAL SELECT ( [EL] ) . ( [L1] ) $1 . ( [EL1] ) $1 . ( [L2] ) $2 . ( [EL2] ) $2 . . . . . . . ( [L\N] ) $\N . ( [EL\N] ) $\N ...FIN ...FIN --------------------- ------------------- ! ! _/ _\ _/ _\ _/ _\ T _/[EL]_\ T _<[L1] >----->$1-. _<=[EL1]>----->$1-. _\ _/ ! _\ _/ ! _\._/ ! _\._/ ! F! ! F! ! ! ! ! ! _/ _\ ! _/ _\ ! _/ _\ T ! _/[EL]_\ T ! _<[L2] >----->$2-! _<=[EL2]>----->$2-! _\ _/ ! _\ _/ ! _\._/ ! _\._/ ! F! ! F! ! ! ! ! ! ! ! ! ! _/ _\ ! _/ _\ ! _/ _\ T ! _/[EL]_\ T ! _<[L\N] >-----$\N--! _<=[EL\N]>-----$\N--! _\ _/ ! _\ _/ ! _\._/ ! _\._/ ! F! ! F! ! !------------' !-------------' ! ! .S 1 .FILL N\\OTE: ^^OTHERWISE \\CAN BE USED AS A CATCHALL CONDITION IN ^^CONDITIONAL\\ AND ^^SELECT\\ STATEMENTS.^^ .NF .TP 10 .S 2 -------------------------- --------------------- .S 1 CARRY-OUT-ACTION DO (I@) $ .S 1 TO CARRY-OUT-ACTION $ --------------------- .S 1 -------------------------- .S 1 .FILL N\\OTE: ^PLACE A ^^RETURN, STOP\\, OR ^^CALL EXIT\\ STATEMENT AHEAD OF THE FIRST