Für das IFS gibt es ganz normale C-Funktionen wie open(), read(), write() und close() mit ein paar Zusatzfunktionen für CCSID-Behandlung.
Für die Socket-Programmierung verwende den obigen Link, das hat mit IFS nichts zu tun.

COBOL ist nicht ganz so elegant wie ILERPG, da durch die ANSI-Norm die Syntax für Funktionen eben (s.o.) eingschrängt ist. In ILERPG sähe obiger "call procedure" so aus:

/free
ReturnWert = Funktion(Par1:Par2:.....);
/end-free

Wobei eben Funktionen auch in komplexeren Formeln verwendet werden können. By Value/Reference wird durch eine Prozedur-Deklaration (Prototype) bestimmt, die es in COBOL leider nicht gibt.

ILERPG ist in der Hinsicht der Integration von Funktionen/Prozeduren um ein vielfaches einfacher als COBOL.

CLP kannst du da vergessen !

Sockets zu verwenden ist nicht das eigentliche Problem, sondern die Kommunikationsvereinbarung zwischen Sender und Empfänger (Autorisierung, Formate, Fehlerbehandlung, Recovery usw.). Da ist es doch häufiger schon besser, die XML-Dateien im IFS zu erstellen und dann Standards wie FTP zu verwenden.