to run an application across different heterogeneous sets of servers and clients Forté makes use two alternatives available, use the platform specific C/C++ compiler and use a virtual machine.
virtual machineForté relies on a “layer” to level off the differences among platforms: ftexec (+ libraries) this is the Forté virtual machine that runs anything (compiled or interpreted) developed with the Forté IDE.
compiled vs. interpretedinterpreted: ftexec tak
Publish Postes a .btd file as input
compiled: the produced executable is linked with ftexec.o
the way Forté manages to mix interpreted & compiled code is utterly clever, in the IDE most of the plans are 3GL objects made available to 4GL code, but some of the plans (AppModel, HTTPSupp, IIOP, LDAP, OLE, XMLSvr & XSLT) are 4GL TOOL interpreted projects.
the IDE itself is an interpreted bit of code (that has some interesting implications ... later) that can be ran with the following command :
ftexec -fi bt:$FORTE_ROOT/userapp/forte/cl0/forte -fr myRep -fw myWKS -fns myEnvNode:port