Pike Scripting Language 56
ulrikp writes "The vikings have done it again! The Swedes at Linköping University (home of the cool Lysator archives) have released a new version of their Pike scripting language. It is similar to C++ and C#, but is apparently more type-safe than either. It is interpreted, and runs on many OS's, including Linux, Solaris, and Windows. Check it out!"
LP-MUD strikes back (Score:5, Informative)
The MUD systems built with the language are very interesting as well; they generally have a central "game driver" object that handles the game objects and their heart beats with an internal call queue approach. This was guaranteed to keep the world and objects "live" at all time even if some of them failed. It was very common to have new areas being built on MUDs while the game was running, new objects being coded and recompiled on the fly.
Most of the MMORPG games built today have nowhere near this level of sophistication that MUDs reached back in the 80's. Maybe some of them would do well to look at Pike. :-)
Welcome back, LPC! We missed you!
Jouni
Re:Check the license! (Score:3, Insightful)
Re:Check the license! (Score:1, Troll)
great looking website (Score:1)
Why can't Python.Org [python.org] look as clean and well-designed, instead of something circa-1995?
Maybe that's why we can't get a damn Slashdot icon.
Re:great looking website (Score:2)
Re:great looking website (Score:1)
I launched MSIE and the text looks significantly bigger (at least two points, probably more).
I've noticed that, much to my frustration, IE and Mozilla have different interpretations of the very specific "font-size: 10pt
Am I missing something in the title of this. (Score:1, Offtopic)
Mod -1 offtopic, but the Vikings are from Norway not Sweden right? Someone please correct me.
Re:Am I missing something in the title of this. (Score:2, Informative)
Re:Am I missing something in the title of this. (Score:2)
Sweet, thanks for the clarification.
Re:Am I missing something in the title of this. (Score:1)
Even if a mormon fundamentalist used a shoulder launched missile to bring down an airliner, which crashed on a motorway and caused tailbacks of cars several kilometers long?
Faster than ever! (Score:4, Interesting)
Hopefully the last few bits of code in Roxen [roxen.com] 3.3 [roxen.com]that keep it on Pike 7.2 should be cleaned up soon. The last time I tried running the CVS version of Roxen on Pike 7.4, I only had problems with logging.
Re:Faster than ever! (Score:2)
There's also Caudium [caudium.net] which is a fork of the Roxen 1.3 code base. Version 1.3 runs with Pike 7.4.
Anyone who likes AOLserver but not Tcl should look at Roxen (and/or Caudium) as they are both single process multi-threaded web servers with built-in scripting.
Excellent Mwhaha ;x (Score:1)
Now i can use something as easy as c# and be more and more m$ free.
I love the mono project (http://www.go-mono.com [go-mono.com]) but we all know sooner or later m$ is going to blow them out of the water in court
This is so similar to c#! I love it. C++ and C are too time consuming, Java blows ass, c# is a happy medium. C# is the perfect mix of RAD and Power IMHO.
Re:Excellent Mwhaha ;x (Score:2, Funny)
Way to be insensitive. Some of us have no choice but to use C. I've heard conditions at other shops are so bad that the developers are forced to use Java.
Re:Excellent Mwhaha ;x (Score:2)
Never ceases to amaze me... (Score:2)
Re:Never ceases to amaze me... (Score:2, Interesting)
I think the problem is that everybody has their own preferences which no one language can match (it is a combinatorial problem). Thus, they make their own. I once set out to document [geocities.com] most of the key decisions in building a scripting language. Of course I have my own pet draft language also
I wonder if it would be possible to set a bunch of option switches/selectors based on the possible features like those in the above link, and one can then make themselves a language close to their heart just by setting parameters. IOW, a fully configurable interpreter. Now *that* would be an impressive programming feat.
Re:Never ceases to amaze me... (Score:1)
PHP is interesting because it has the syntax of javascript and the $variable syntax of perl/shell scripts. When you live inside quotes as often as you do in PHP the $variable style is often preferable and results in less typing. I had not considered a hybrid approach as you offered in your article: use the dollar variable prefix inside of quotes and drop the dollar variable prefix outside of quotes. Great idea.
Gartuitous, annoying differences (Score:2)
Re:Gartuitous, annoying differences (Score:2)
Re:Gartuitous, annoying differences (Score:2)
Re:Gartuitous, annoying differences (Score:1)
Re:Gartuitous, annoying differences (Score:2)
Lighten up. The grandparent was at least half a joke, and I - like anyone who has grumbled in the past about C/C++/Java's overloading of one reserved word to mean many different things - found it pretty amusing.
Really? Consider the following:
Note how the two occurrences of "protected" don't have anything like the same meaning. As I just said, this overloading of reserved words is annoying, and deserves to be made fun of.
Re:Gartuitous, annoying differences (Score:2)
Re:Gartuitous, annoying differences (Score:2)
Piss off. I've read 'em, they say exactly the opposite of what you're saying. You're just one of those people who can never admit you're wrong.
Re:Gartuitous, annoying differences (Score:2)
protected means that only derived classes have access. Protected inheritance means that only derived classes can do the conversion from derived to base class, i.e., they have knowledge of the inheritance and, to them, it's treaded just like public cinheritance.
Protected data members or members functions means that only derived classes can use them.
Hence, protected means exactly what I said: only derived classes have access, i.e., one meaning of protected.
Sorry if you don't understand the answer, but that is the answer. Your understanding is not required for it to be correct.
Re:Gartuitous, annoying differences (Score:1, Interesting)
Re:Gartuitous, annoying differences (Score:2, Informative)
The reason is historical. The static keyword was inherited from C at a time when there was a one class/file limitation in the compiler. The interpretation was then similar to the interpretation of static for global symbols in object files.
NB: It wasn't until late 1996 there was a syntax in Pike for having multiple classes/file.
Ruined yet? (Score:1)
So, when does MS Pike come out?
Haven't seen this question (Score:2)
It's fast(for scripting language)
It's OOP's.
It's multi-platform.
Anything else?
Does it excel at any one area or is it just better(why?) than the other scripting language out there.
Or was this just a college project and they wanted to share?
Not trying to troll here, just curious
Re:Haven't seen this question (Score:1)
Re:Haven't seen this question (Score:3, Interesting)
i don't think any other scripting language offers type checking.
greetings, eMBee.
Re:Haven't seen this question (Score:1)
Though some might argue that in a well-behaved program, typing a variable as any one of a selection of types should either be accomplished using a single "parent" or "base" class, or should not be done at all.
Pike on Cygwin? (Score:2, Informative)
Any ideas?
Is Pike supported on Cygwin?
Re:Pike on Cygwin? (Score:1)
Building Pike on Cygwin is not (yet) supported as can be seen in Pikefarm [ida.liu.se].
Currently the only supported way of building Pike on WIN32/WIN64 systems is through rntcl.
Hmm... It does however seem like nobody has released such a binary yet.
Re:Pike on Cygwin? (Score:2)
Re:Pike on Cygwin? (Score:1)
True.
The current status is:
Successful builds on:
Failures were noted for the following reasons:
So I wouldn't say that it only works on Linux/IA32...
Re:Pike on Cygwin? (Score:1)
Is there a simple way to build a stripped down minimalistic Pike without modules/threads/shmem/java etc?
Also may I ask what compiler is this "rntcl"? (from "Windows_NT 4.0 x86 CC=rntcl)
I can't find anything about this compiler on Google except for Pike references.
Is "rntcl" a commercial compiler?
Re:Pike on Cygwin? (Score:1)
Most modules can be disabled by specifying --without-xxxx to configure. configure --help will list many of the supported flags. Some module specific options may however not be listed.
rntcl is an abbreviation of Remote NT CL (cl is M$'s compiler). rntcl works by controlling an NT machine through sprsh (Simple Pike Remote SHell) from a Unix machine.
Example: /home/grubba/.init_ntrc ( combine_path(getcwd(),argv[0]))+".exe");
$ src/Pike/nt-tools/init_nt
Using rc-file
We are not Hubbe.
NT kali $ uname -a
Windows_NT kali 4.0 x86
NT kali $ cd src/Pike/7.5/build/NT/
NT kali $ ls -lF pike pike.exe
-rwxr-xr-x 1 grubba grubba 315 Dec 27 12:01 pike*
-rwxr--r-- 1 grubba grubba 6239657 Dec 27 12:01 pike.exe*
NT kali $ cat pike
#!/usr/local/bin/pike
inherit "/home/grubba/src/Pike/nt-tools/tools/lib.pike";
int main(int argc, array(string) argv) {
if (lower_case(getenv("CROSSCOMPILING")||"no") != "no")
exit(1);
argv[0]=getenv("NTDRIVE")+fixpath(follow_symlinks
exit(silent_do_cmd(argv));
}
The sprsh system makes it possible to compile, link and run binaries on the remote NT system, but still have access to the full set of UNIX commands.
Pike and Mac OS X (Score:1)
Re:Pike and Mac OS X (Score:1)
It also almost passes the testsuite, except for a 2 second sleep that slept 2.12 seconds (which may be due to load on the test machine).
I don't know of any reason why it wouldn't work fine on Darwin 1.4.
Re:Pike and Mac OS X (Score:1)
custom php programming and web development scripts (Score:1)
and pike cannot be php