about > oldfaq
Python is probably the language that is most like Pike. Pike is faster and has better object orientation. It also has a syntax similar to C++, which makes it more familiar for people who know C++. Python on the other hand, has a lot more libraries available. C++
Pike's syntax is almost the same as for C++. A huge difference is that Pike is interpreted. This makes the code slower, but reduces compile times to almost nothing. For those few applications which require the speed of C or C++, it is often easier to write a Pike extension than to write the whole thing in C or C++. Lisp and Scheme
Internally Pike has a lot in common with simple interpreted Lisp and Scheme implementations. They are all stack based, byte-compiled, interpreted languages. Pike is also a 'one-cell' language, just like Scheme. Pascal
Pike has nothing in common with Pascal. :) Tcl/Tk
Pike is similar to Tcl/Tk in intent and they both have good string handling. Pike has better data types and is much faster however. On the other hand Tcl/Tk has X windows system support. Where can I find out more about Pike? You can visit the official website of the Pike Programming Language: http://pike.lysator.liu.se. Also, check out http://www.gotpike.org, which contains links to the Pike Wiki and the Pike Module Repository.
You are compiling Pike from CVS or from a CVS snapshot. You need an "exported" version of Pike. We provide these for Pike 7.2.
Tell me more about UltraLog
UltraLog is a very fast log parser. The parser is written in C (as a Pike module) and the viewing is done through a Caudium module. The summarizing is done using an external application. Features include, but are not limited to, customizable log format, multiple log files per profile and wild card profiles (in a sense). Future plans include better integration (web based configuration for example).
Tell me more about PiXSL
XSLT is an XML transformation language. It can be used to generate various output formats from an XML input (you can think of it as templates). PiXSL is a glue to the Sablotron XSLT parser. The current state is "working, without intelligent caching". You can use the current implementation by adding the Caudium XSLT Tag module or by using the XSLT Template module, which more or less works like mod_xslt for Apache.
Why did you use Sablotron XSLT parser for PiXSL?
When we have started to make PiXSL there were not too much XSLT parser available in the world. Sablotron was the first stable
and usuable in the world. That's why we have choosen this one.
Maybe we will update PiXSL for another parsers than Sablotron, but we are looking for people to update this XSLT Tag module.
Tell me more about the Caudium.so/_Caudium.so module
This module contains all our custom C-code which is too small to be a self-contained module. Today it includes a query string parser and a HTTP header parser as well as a more complete HTTP request parser used by the http2 protocol.
Frequently Asked Questions (Historical)
Monday, 16 April 2012 by Bill WelliverThis FAQ contains outdated information and has been replaced by a new faq. This older document is retained for historical and reference purposes. |
Pike related Questions
What is Pike? Pike is an object oriented, interpreted programming language. It is fast, dynamic, high-level and easy to extend, and is similar in syntax to C++. Pike is also a fish. Pike's features include:- garbage collection,
- advanced string functions,
- 18 years of development behind it,
- advanced data types such as associative arrays,
- support for bignums,
- builtin socket support, and
- lots of modules such as a SQL client, HTTP, GTK, Threads, Images etc.
Python is probably the language that is most like Pike. Pike is faster and has better object orientation. It also has a syntax similar to C++, which makes it more familiar for people who know C++. Python on the other hand, has a lot more libraries available. C++
Pike's syntax is almost the same as for C++. A huge difference is that Pike is interpreted. This makes the code slower, but reduces compile times to almost nothing. For those few applications which require the speed of C or C++, it is often easier to write a Pike extension than to write the whole thing in C or C++. Lisp and Scheme
Internally Pike has a lot in common with simple interpreted Lisp and Scheme implementations. They are all stack based, byte-compiled, interpreted languages. Pike is also a 'one-cell' language, just like Scheme. Pascal
Pike has nothing in common with Pascal. :) Tcl/Tk
Pike is similar to Tcl/Tk in intent and they both have good string handling. Pike has better data types and is much faster however. On the other hand Tcl/Tk has X windows system support. Where can I find out more about Pike? You can visit the official website of the Pike Programming Language: http://pike.lysator.liu.se. Also, check out http://www.gotpike.org, which contains links to the Pike Wiki and the Pike Module Repository.
Questions about Caudium
What is RXML? RXML stands for Roxen eXtensible Markup Language and is a set of tags, containers and simple programming language constructs that can be placed in HTML source code. These tags and containers will be interpreted by Caudium each time the page is requested. This allows non-programmers such as web designers to develop complex web based applications without having to learn anything more difficult than HTML. Why should I use Caudium instead of my favorite web server? The best way to learn whether Caudium fits your needs is to install it and give it a go! Caudium is a flexible, robust platform that excels at dynamically generating almost any kind of content you can think of, from a variety of sources including SQL databases. When should I not use Caudium? If you need to run a web server on Windows® or on any other platform for which Caudium is not supported. Caudium is actively supported by its developer community on Linux, Solaris®, and most variants of BSD. Caudium should also work on any Unix® flavours for which Pike binaries are available. What does the name Caudium mean? Caudium was an ancient city in the Roman Empire (or somewhere nearby). We chose the name because we liked it and it is a rarely used word (also it is not a lake, an Indian tribe, an animal or anything like that). The fact that both caudium.net and caudium.org were free was of course another bonus. Caudium is pronounced "cow-dee-uhm". What operating systems do you support? Our goal is to have Caudium operational on any Unix platform that supports dynamic linking and for which Pike is available. Currently, Caudium is actively supported on the following operating systems:- GNU/Linux (kernel 2.2+. Debian packages have been available since Debian 3.0)
- FreeBSD 4.x (a port is in the official tree and a package is available on the FreeBSD 4.7 CDROMs)
- OpenBSD 2.9 and newer (a port is on the way)
- NetBSD 1.5.2 and newer
- AIX®
- Solaris (2.6 through 10)
- MacOS X® (using Pike 7.2 or later)
/precompile.sh precompile.pike >"/usr/local/pike-7.2.432/src/builtin.c" "/usr/local/pike-7.2.432/src/builtin.cmod" || { rm "/usr/local/pike-7.2.432/src/builtin.c"; exit 1; } precompile: /usr/local/pike-7.2.432/src/pike -DNOT_INSTALLED -m/usr/local/pike-7.2.432/src/master.pike ./precompile.pike /usr/local/pike-7.2.432/src/builtin.cmod (method=Q) ./precompile.sh: line 151: /usr/local/pike-7.2.432/src/pike: No such file or directory