--- /dev/null
+<PACKAGE "JCL">
+
+<ENTRY JCLARGS? READARGS>
+
+<DEFINE HNDLR (IGNORE)
+ <GUNASSIGN SAVED-JCL>>
+
+<COND (<AND <NOT <GASSIGNED? JCL-HANDLER>>
+ <GASSIGNED? HNDLR>
+ <LOOKUP "INTERRUPT" <ROOT>>
+ <GASSIGNED? <LOOKUP "INTERRUPT" <ROOT>>>
+ <==? <TYPEPRIM FIX> FIX>>
+ <ON <SETG JCL-HANDLER <HANDLER "SAVE" ,HNDLR>>>)>
+
+<DEFINE GETJCL ("AUX" JCL)
+ #DECL ((JCL) <OR FALSE VECTOR>)
+ <COND (<GASSIGNED? SAVED-JCL>
+ ,SAVED-JCL)
+ (<SET JCL <CALL GETS ARGV>>
+ <MAPR <>
+ <FUNCTION (V)
+ <1 .V <I$STD-STRING!-INTERNAL <1 .V> T>>>
+ .JCL>
+ <SETG SAVED-JCL .JCL>)>>
+
+<DEFINE JCLARGS? ("AUX" (JCL <GETJCL>))
+ <COND (<OR <NOT .JCL>
+ <L? <LENGTH .JCL> 2>>
+ <>)
+ (T)>>
+
+<DEFINE READARGS ("AUX" (JCL <GETJCL>))
+ #DECL ((JCL) <OR FALSE <VECTOR [REST STRING]>>)
+ <COND (<AND .JCL <G? <LENGTH .JCL> 1>>
+ <REST .JCL>)>>
+
+<ENDPACKAGE>