SPL Compiler Code
Student Programming Language (SPL) a subset of PL/I
Status: Beta
Brought to you by:
shoefoot
$PROCESS Format diagnostic DIAG: PROCEDURE OPTIONS (MAIN); /* $ S */ DECLARE HELLO CHARACTER(5); DECLARE A FLOAT, B FIXED, C CHARACTER(1); GENERIC_DIAG: PROCEDURE; HELLO = 'Hello'; PUT PAGE LIST(HELLO);/*comment*/ PUT SKIP(2) LIST(HELLO);/*comment*/ PUT FILE(SYSPRINT) LIST(HELLO);/*comment*/ PUT FILE(SYSPRINT) SKIP LIST(HELLO);/*comment*/ PUT FILE(1) SKIP(8) PAGE LIST(HELLO);/*comment*/ PUT DATA;/*comment*/ PUT PAGE;/*comment*/ PUT SKIP;/*comment*/ PUT SKIP(3);/*comment*/ PUT FILE(3) PAGE SKIP(3) EDIT(A, B, C)(a(8),LINE(4),X(2),F(10,3),3 E(20));/*comment*/ GET LIST(A, B, C);/*comment*/ GET FILE(77) LIST(A, B, C);/*comment*/; GET EDIT(A, B, C)(E,F(20,5),A(215,88));/*comment*/ GET FILE(55) LIST(A, B, C); PUT FILE(1) FILE(2) SKIP(8) PAGE LIST(HELLO); GET FILE(6) FILE(7) LIST(A, B, C); GET LIST(A, B, C); PUT EDIT(A, B, C)(SKIP(3),COL(2),LINE(3),PAGE,COLUMN(4),E,E,E); END GENERIC_DIAG; WRITE_THREE: PROCEDURE; PUT FILE(3) LIST('Hello World!'); PUT FILE(3) LIST('ABC', A, B, C); PUT FILE(3) LIST('This text is written to FILE(3)'); END WRITE_THREE; /* Read data test */ GET FILE(0) LIST(A, B, C); PUT LIST (A, B, C); END DIAG; $DATA 1 2 3