NSP Next Server Pages

NSP is a new, statically typed server pages technology. NSP supports arrays and user defined types within input forms. It is the result of designing server pages from scratch. It addresses the needs of server pages developers who want to build cleaner, better reusable, more stable systems. More information and download soon.



NSP is a typed server pages approach. The resulting notions of correctness ensure the type-safe interplay of dynamically generated web forms and targeted software components on the one hand side and the generation of documents that are valid with respect to a given user interface description language on the other hand. The approach contributes the notion of tag support for gathering complex user defined data, the notion of exchanging complex objects virtually across the web user agent, the notion of typed server-side calls to server pages, and the notion of higher order server pages. Web applications are ubiquitous. Ultra-thin client based tiered enterprise applications become more and more important. Due to this a considerable number of innovative web technologies has been provided recently. Currently web applications and web based system architecture are fields of intensive research activity. Server pages technology is a state-of-the-art in this field. The contributions of this work target stability, maintainability and reusability of server pages based systems. The findings are programming language independent, a concrete programming language can be amalgamated with the found concepts in a way that is conservative with respect to the language's semantics. In the NSP approach a server pages based presentation layer is characterized abstractly as a closed collection of typed dialogue methods. Based on this coding guidelines and rules are defined that together informally provide the desired notions of type correctness and description correctness. The static semantics of the new server pages approach is defined as a Per Martin-Löf style type system with respect to an amalgamation with a minimal imperative programming language and a sufficiently complex equi-recursive type system. The "model two architecture" of web based system applications is analyzed in order to provide a further justification of the proposed approach. NSP/Java, a concrete amalgamation of the concepts with the programming language Java, is proposed. An operational semantics of the resulting technology is described as a transformation of NSP/Java technology to Java Server Pages technology. The server pages approach is part of a proposed holistic approach to modeling and developing form based, submit/response style systems - form-oriented analysis.