Implementation

The reference implementation is created in Perl. Like any other protocol (CPAN6 and Pause6 are mainly protocols), it is programming language independent. However, it is much faster to produce a reference implementation in Perl than most other languages.

The first CPAN6/Pause6 implementation need to demonstrate its abilities to serve large archives. For this, both a client and server implementation must be ready. Clients are simple, but the demands for serving large archives are considerable.

Large software components are under way. These were developed especially for this project, but often generally applicable. Unlinked modules are not yet released.

General purpose modules

The following general modules were produced to lay the basis for the CPAN6 project needs. They are all available from Perl's software archive CPAN. Most see wide application already, majoring them.

Certainly, more modules will follow.

CPAN6 specific modules

Implementation of these modules is in a pre-alpha state. These are the most tricky, because they must provide compatibility for future extensions: there should never be a need for a "global upgrade" of server nodes.

Fundamental for CPAN6 is negotiation: two parties will together decide which protocol version, message format, compression, signatures, packaging, etc they will use.

  • CPAN6
  • CPAN6-2008
  • CPAN6-Algorithm
  • CPAN6-Core
  • CPAN6-Daemon
  • CPAN6-Daemon-Default
  • CPAN6-Net-HTTP
  • CPAN6-Net-Multiplex
  • CPAN6-XML-2008

Pause6 specific modules

  • Pause6-2008
  • Pause6-Core
  • Pause6-Edit
  • Pause6-XML-2008
CPAN6.org | Mark Overmeer | 2010-01-21