Client-server software is becoming more common as the Internet grows. To ease the burden of repeatedly writing low-level communication and protocol code, we seek to design a protocol language, My Simple Protocol Language (MSPL), that produces the corresponding communication functions. The programmer then supplies the rest of the application-specific code but never modifies the generated code. Besides saving development time, this approach also reduces programming errors. The potential to develop more efficient code also exists once the technique of generating code is mastered. The main contribution, however, is that unlike RPC, Corba or RMI, we provide the user with not only functions that take care of lower level communication data structures, but also the ordering and format of messages (protocol) which are specified in MSPL programs. The MSPL programs are then passed to the MSPL Compiler, which produces the low-level communication and protocol modules. These protocol modules are then linked to other user-written modules to produce the final software application.
Douglas, M.A.L., Chan, P.K., (2000), A protocol language approach to generating client-server software (CS-2000-2). Melbourne, FL. Florida Institute of Technology.