Broker

- transforme toute application SML en un service distribué sans code supplémentaire sur le serveur ou le client,
- les connexions, les appels de fonctions distantes, le passage de paramètres et les retours d’erreurs sont transparents,
- interprète un dialogue en SML, en XML-RPC et en PHP sérialisé,
- toute erreur du côté serveur est capturée et remontée au client comme si elle s’était produite localement,
- le broker étend radicalement les possibilités d’implémentation en offrant un vrai partage des rôles sans contraintes.
;; dans un processus SML, définir une fonction comme d’habitude ? (defun calc:add (x y) (+ x y)) ;; l’exporter et s’enregister sur le bus ? (load "smlb") ;charger le broker ? (smlb:export 'calc:add) ;la fonction est maintenant publique ? (smlb:start "Calculator") ;enregistrement sur le bus ;; dans un autre processus SML ? (load "smlb") ;charger le broker ;; importer la fonction et l’exécuter tout simplement ? (smlb:import "Calculator" 'calc:add) ? (calc:add 1 2) ;appel distant avec connexion automatique = 3 ? (calc:add 1) ;une erreur est déclenchée localement Error: Bad number of arguments: 1




