Category:Polyglot:PL/I and PL/M: Difference between revisions

→‎Include Files: Additional definitions
(→‎PL/I and PL/M: Notes on arrays)
(→‎Include Files: Additional definitions)
Line 130:
return ( mod( a, b ) );
end modf;
 
/* returns not p */
not: procedure( p )returns( bit( 1 ) );
declare p bit( 1 );
return( ^ p );
end not;
 
toupper: procedure( c )returns( character( 1 ) );
Line 140 ⟶ 146:
 
For PL/M, the following definitions would be used, with the appropiate subset cut-and-pasted into the programL
<lang pli>
<lang pli> DECLARE BINARY LITERALLY 'ADDRESS', CHARACTER LITERALLY 'BYTE';
DECLARE SADDR BINARY LITERALLY '.ADDRESS', BIT CHARACTER LITERALLY 'BYTE';
DECLARE FIXED LITERALLY ' ', RETURNSBIT LITERALLY ' BYTE';
DECLARE STATIC LITERALLY ' ', RETURNS LITERALLY ' ';
DECLARE TRUE FALSE LITERALLY '10', FALSE TRUE LITERALLY '01';
<lang pli> DECLARE BINARYHBOUND LITERALLY 'ADDRESSLAST', CHARACTER SADDR LITERALLY 'BYTE.';
BDOSF: PROCEDURE( FN, ARG )BYTE;
DECLARE FN BYTE, ARG ADDRESS; GOTO 5; END;
3,028

edits