There are some differences, other than data representation, between the workstation and mainframe platforms that can also affect the portability of your programs. This section describes some of these differences.
d:\programs\data\myfile.datThis can affect portability if you use file names in your PL/I source as part of the TITLE option of the OPEN and FETCH statements.
For example, if the file in the code below has TYPE(CRLF), the WRITE statement raises the ERROR condition with oncode 1041 because 2573 has the hexadecimal value '0D0A'x. This would not occur if the file had TYPE of either FIXED, VARLS, or VARMS.
dcl
1 a native,
2 b char(10),
2 c fixed bin(15),
2 d char(10);
dcl f file output;
a.b = 'alpha';
a.c = 2573;
a.d = 'omega';
write file(f) from(a);
As with all other very platform-specific code, it is best to isolate such code as much as possible so that it can be replaced easily when you move the application to another platform.