Branch: Tag:


2002-04-06 20:47:09 by Leif Stensson <>

The old ANNOUNCE file was getting obsolete in some ways, and tended
to digress into topics that really belonged in a readme or similar, so
here is a new and more to-the-point ANNOUNCE file. (The old feature
list is largely retained with some layout adjustments.)

Rev: ANNOUNCE:1.10

1: - Pike 7.3 developer version + PIKE 7.X ANNOUNCEMENT + $Id: ANNOUNCE,v 1.10 2002/04/06 20:47:09 leif Exp $    - While still young, Pike matured over the last few years, and - development is co-ordinated by a team at Roxen Internet Software AB. - Pike is released under the GNU General Public License (GPL). It is, and - will continue to be, freely distributed. Briefly, this means that you are - free to use and modify the source code in any way you please, see the - file COPYING for details. Roxen Internet Software maintains the right - to the brand name and the copyright, guaranteeing that Pike will be - continuously developed and enhanced, and remain free software. + Pike is an interpreted, object-oriented programming language with a + syntax reminiscent of C and Java, and freely available and distributable + under the GNU General Public License (GPL).    - Pike is easily learned, and just as easily used to develop powerful - applications. Pike is designed to be useful and powerful. As the - syntax of Pike is similar to that of C, most programmers will find it - easy to use. As Pike is a high-level, interpreted and modular - object-oriented language, powerful applications can be rapidly - developed. Pike has evolved rather than been designed. The changes to - Pike that have been made have been guided by its users' needs. In - general, the better you get to know Pike, the more you will appreciate - it, from a users perspective. -  +    Pike is just as suitable for intricate and large applications as for   creating use-once scripts. When needed, you can also write   Pike modules in C, to gain better performance or access C
26:   written in C and those written in Pike are accessed in exactly the   same way.    - A list of pros and cons with Pike follows: + Some Pike highlights:    -  + General Purpose Programming Language -  + Freely distributed under GPL -  + Interpreted - No compilation and linking needed to run code -  + Object Oriented - Straightforward and powerful object +  + Freely distributable under GPL +  + Interpreted - no compilation and linking needed to run code +  + Object Oriented - straightforward and powerful object    orientation, including multiple inheritance -  + Modular - Extendible with modules written in C or Pike -  + Powerful - High-level language, concise code -  + Incremental - Allows on-the-fly modifications and recompilations -  + Source Code Available - To promote sharing of useful code -  + Portable - Platform independent and available on most flavors of Unix -  At present the following platforms are supported: -  -  Solaris 2.5.1 & up (Sun SPARC & Intel x86) -  Tru64 -  AIX 4.3, 5L -  IRIX 6.5 -  FreeBSD 4.0 -  HP-UX 11.00 -  Linux Red Hat 4.2, 5.2, 6.1, 7.1 and others (Intel x86) -  +  + Modular - extendible with modules written in C or Pike +  + Powerful - high-level language, concise code +  + Incremental - allows on-the-fly modifications and recompilations +  + Source Code Available - promoting sharing of useful code +  + Portable - Platform independent and available on most common +  flavors of Unix, as well as Windows.    + Powerful, Flexible and Efficient Data Types    + Automatic Memory Management    + Scalable - as useful for small scripts as for powerful and
55:    + Text Processing - e.g. for filtering    + Exception Handling    + Multi-Threaded Application Development Possible +  + Easy-to-Learn C-like Syntax    - How Pike relates to other programming languages: + The standard Pike distribution comes with a number of modules for + various useful purposes. Among these are:    -  + Optimized - Faster run-times than Perl, Python, tcl and Java -  + Faster Development than using C or C++ -  + C-like Syntax - Easy to learn +  + Image processing with support for several graphic file +  formats (such as JPEG, PNM, PNG, TIFF and IFF), and +  numerous image manipulation functions +  + Cryptographic functions, including SSL support +  + Database interface to several common SQL databases, +  including MySQL and Oracle +  + Embedding interfaces for Java and Perl    - Below you will find a list of some desired but missing features, or - cons, of Pike. Pike is still under development and the goal is to - incorporate those in future versions. -  -  - No Pike native compiler or debugger available -  - Not optimal for heavy numeric processing jobs -  - Limited range of special effect image filters for image -  processing -  -  - Some successful applications using Pike include: -  -  + Network Applications - as Client/Server applications -  e.g. the Roxen Challenger Server and a range of server extensions -  Mail Gateways -  Client/server Protocol Implementations -  Multi-User-Dungeons -  + System Administration Tools & Utilities - Even as quick one-shots -  e.g. adduser or adddomain scripts that setup users/domains -  Real-time Client/Server Status Monitor -  + Assorted Text Processing Utilities -  + CGI Programs -  - Pike is distributed accompanied by a set of modules, some of which are - described below. -  -  - Image - Image Processing Module -  - The Image module lets you perform common image manipulation and - processing operations from Pike programs. The supported operations - include cutting and pasting, scaling, rotation, linear filtering of - most kinds, rendering text, etc. Anti-aliasing can be used when - performing any kind of drawing operation. Using the Image module, you - can automate jobs that would otherwise have required tedious work in - an interactive image processing program such as Adobe PhotoShop. -  -  - Sql - Interface to SQL Databases -  - The SQL interface makes it possible to use common SQL databases from - within your applications. It includes support for mSQL, MySQL, Postgres, - Oracle and ODBC. -  -  - MIME - Multimedia Internet Mail Extension Module -  - This module makes it easy to create and decode e-mail, including - attachments. -  -  - Gz - Data Compression Module -  - With this module you can compress data. Its name is slightly - misleading, as it uses ZLIB. ZLIB uses the same compression algorithm - as gzip, but the format for the compressed data is not compatible with - gzip. -  -  - Crypto - Cryptographic Toolkit -  - The crypto toolkit is a set of objects implementing various - cryptographic algorithms, as well as objects used to glue the other - objects together. The toolkit includes block ciphers AES, IDEA, DES - (including tripple DES) and CAST, the RC4 stream cipher, the hash - functions MD5 and SHA, and the public key cryptography algorithm - RSA. It also includes a some randomness sources. -  - The toolkit can be used for most kinds of cryptographic applications, - including encrypted network connections, as well as encryption of - files or other data. + Some other modules include support for MIME, Gz, Gmp, Gdbm, GTK, + XML, and regular expressions.