Pliant

From Wikipedia, the free encyclopedia

The Pliant programming language is based on a dynamic compiler, which makes it act like it is interpreted. The default syntax is almost trivial, and based on indentation, so it is an off-side rule language. It is reflective: Pliant programs can modify the parser, compiler, code generator, and code optimizer.

FullPliant is an operating system based on, and written in, Pliant, by Pliant's author. The language and OS form an elegant integrated and highly flexible whole.

Pliant's core advantage is its ability to allow several levels of programming, from low-level instruction lists, to high-level expression manipulation, in one unified environment, and syntax as needed. Thus, it stresses the "compiling rules" definitions using "meta" functions (functions run at compile time to compile an expression) and "active types" (types having their own compiling scheme).

Contents

Hubert Tonneau initiated the Pliant project in 1984. His long work as a programmer on many development projects led him to perceive certain deficiencies, limits, in extant programming frameworks:

  • Lack of coherence between applications, libraries, etc., needing large amounts of glue code between related parts of programs.
  • Implicit acceptance of the impossible conciliation of high level constructs allowing improved expressiveness and conciseness in certain contexts, with low level adaptability allowing efficiency and optimized handling of exceptional cases.

From these considerations, Tonneau thought it necessary to introduce a new efficient multilevel language having a pliant, flexible syntax and structure, which could be adapted to particular program contexts. The Pliant language is thus oriented toward efficiency, defined as computing resources, and programming adaptability. Key aspects of the language are: modularity, dynamic compiling, and full reflectivity allowing redefining the rules for syntax, compiling, and code optimizing.

New application services were then integrated at language level (examples: scheduling primitives, database management), thus bridging usual gaps between applications. From this viewpoint, a program is seen as a set of libraries, or even as a language extension, possibly introducing its own syntax changes.

Such applications can also be grouped into a coherent execution context, leading to an actual operating system, which is called FullPliant. This framework can be executed in two different ways: as a program executing various servers (on Linux or Windows platforms), or as an operating system running alone atop a Linux kernel.

Available servers include DNS, FTP, POP3, SMTP, LPD, remote execution, secured channel, and HTTP. The HTTP multisite web server provides the standard application interface. A powerful server-side dynamic page mechanism was introduced, on which rely existing applications (Forum, Photography correction and high fidelity printing, Webmail, etc.) and further HTTP-related servers (like WebDAV). The limits of the HTML/JavaScript system should soon lead to introducing an enhanced extended Pliant browser valuable as a state of the art user interface for possibly distributed applications.

FullPliant has been used in an industrial context since 2000. The transparent integration in the dynamic page extension of signature and right verification mechanisms clearly demonstrates that security can be achieved without unneeded additional programming complexity.

Advanced Search
Included Web Search Engines


Safe Search

close

Top Matching Results

Occasionally Search.com will highlight specialized results that are based on the context of your query. Examples of specialized results include specific links to news, images, or video.

Top Matching Results may highlight information from other Search.com pages, content from the CNET Network of sites, or third party content. The listings are based purely on relevance. Search.com does not receive payment for listings in this section but our partners that provide this data may get paid for listing these products.

Sponsored Links

This section contains paid listings which have been purchased by companies that want to have their sites appear for specific search terms and related content. These listings are administered, sorted and maintained by a third party and are not endorsed by Search.com.

Search Results

Search.com sends your search query to several search engines at one time and integrates the results into one list which has been sorted by relevance using Search.com's proprietary algorithm. You can customize the list of search engines included in your metasearch from the preferences.

The search engines that are used in your metasearch may allow companies to pay to have their Web sites included within the results. To view the Paid Inclusion policy for a specific search engine, please visit their Web site. Search.com does not accept payment or share revenue with any search engine partner for listings in this section.