XL ekstenzije

XL je proširiv na nekoliko načina, s nekoliko vrsta modula napisanih u Modula-3, direktno linkovanih u konkretnu verziju XLI. Neki moduli su pisani u Modula-3, a Modula-3 kod je često thin wrapper oko C biblioteke, koji postojeće C tipove i procedure oblikuje u smislene Modula-3 objekte na osnovu kojih se kasnije implementira potrebna funkcionalnost. Vrste ekstenzija su:

  • Extension module Modul poput ranije opisanih builtin modula, s tim što ne spada u osnovne XL module i opcionalno se uključuje u verzije interpretera.
  • Syntax extension Inicijalno, match iskaz je kreiran kao sintaksna ekstenzija i odličan je primjer zaokružene cjeline. XLStmtMatch.m3, uz minimalan .i3 fajl:
INTERFACE XLStmtMatch;

IMPORT
  XLStmt;

TYPE
  T <: Public;
  Public = XLStmt.T OBJECT
  END;

END XLStmtMatch.

je kompletna sintaksna ekstenzija koja implementira match iskaz.

  • SQL driver extension sql iskaz je "lice" podsistema za pristup bazama podataka. Sistem je modularan i dodavanjem SQL drivera - modula koji implementira objektni tip koji nasljeđuje XLSQL.T i