FACTOID # 107: At least 9 out 10 Nigerians attend church regularly. Only 4 out of 10 Americans claim to do so.
 
 Home   Encyclopedia   Statistics   Countries A-Z   Flags   Maps   Education   Forum   FAQ   About 
 
WHAT'S NEW
RECENT ARTICLES
More Recent Articles »
 

FACTS & STATISTICS    Simple view

  1. Select countries to view: (hold down Control key and click to select several)

     

     

    Compare:

     

     

  1. Select fact or statistic: (* = graphable)

     

     

     

  2. (OPTIONAL) Compare to statistic: (both need to be graphable)

     

     

     

  3. View result as:

     

       
(OR) SEARCH ALL encyclopedia, stats & forums:   

Encyclopedia > Pike programming language

Pike is a general-purpose, high-level, dynamic programming language, with a syntax similar to that of C. Unlike many other dynamic languages, pike is statically typed, and requires explicit type definitions. It features a flexible type system that allows the rapid development and flexible code of dynamically typed languages, while still providing the benefits of a statically typed language. Pike features garbage collection, advanced data types, and first-class anonymous functions, and supports many programming paradigms, including object-oriented, functional, aspect-oriented and imperative programming. Pike is free software, released under the GPL, LGPL and MPL licenses. In computer science, a dynamic programming language is a kind of programming language in which programs can change their structure as they run: functions may be introduced or removed, new classes of objects may be created, new modules may appear. ... The C Programming Language, Brian Kernighan and Dennis Ritchie, the original edition that served for many years as an informal specification of the language The C programming language is a standardized programming language developed in the early 1970s by Ken Thompson and Dennis Ritchie for use on the UNIX operating... In computing, garbage collection (also known as GC) is a form of automatic memory management. ... In computer science, object-oriented programming, OOP for short, is a computer programming paradigm that emphasizes the following concepts: Objects - Packaging data and functionality together into units within a running computer program; objects are the basis of modularity and structure in an object-oriented computer program. ... Functional programming is a programming paradigm that treats computation as the evaluation of mathematical functions. ... In Software Engineering, the programming paradigm of aspect-oriented programming (AOP) (also called aspect-oriented software development (AOSD)) attempts to aid programmers in the Separation of concerns, or the breaking down of a program into distinct parts that overlap in functionality as little as possible. ... In computer science, imperative programming, as opposed to declarative programming, is a programming paradigm that describes computation in terms of a program state and statements that change the program state. ... Free software, as defined by Richard Stallman and his Free Software Foundation, can be used, copied, studied, modified and redistributed. ... The GNU logo For other uses of GPL, see GPL (disambiguation). ... GNU logo The GNU Lesser General Public License (formerly the GNU Library General Public License) is an FSF approved Free Software license designed as a compromise between the GNU General Public License and simple permissive licenses such as the BSD license and the MIT License. ... The Mozilla Public License is an open source and a free software license. ...


History

Pike has its roots in LPC, which was a language developed for MUDs . LPC's license did not allow use for commercial purposes, and so a new GPL implementation was written in 1994, called ųLPC. In 1996, ųLPC was renamed to pike to provide a more commercially viable name. Although the name of the company has changed over the years, the company now known as Roxen Internet Software employed many pike developers, and provided resources for its development. In 2002, the programming environment laboratory at Linköping University took over maintenance of pike from Roxen. The LPC programming language is an object-oriented programming language derived from C and developed by Lars Pensjö to facilitate MUD building on LPMuds. ... In computer gaming, a MUD (multi-user dungeon, dimension, or sometimes domain) is a multi-player computer game that combines elements of role-playing games, hack and slash style computer games, and social Internet Relay Chat channels. ... Linköping University Linköping University (LiU) or Linköpings universitet is a state university in Linköping, Sweden. ...


Data types

The following list shows all the standard data types that pike provides. Advanced data types such as sequences, queues, heaps, stacks, etc. are available in the ADT module which is included with pike.


Basic data types:

  • int
  • float
  • string

Container types:

  • array
  • mapping
  • multiset

Reference types:

  • program (the compiled representation of a class)
  • object (an instance of a class)
  • function

Pike requires explicit type definitions for all variables, and being a strongly typed language, uses this information to report type errors at compile time. The following code will produce a compiler error indicating that number must be an integer, and the code is attempting to assign floating point and string values to the integer variable.

 int number; number = 5.5; // 5.5 is a floating point value number = "5"; // "5" is a string, not the integer value 5 

This behaviour is traditionally considered restrictive and limiting by proponents of dynamically typed language. However unlike C, C++ and Java, pike uses a flexible type system, allowing programmers to declare variables that may be any of a number of types. The following demonstrates a variable that can be either an integer or a floating point number.

 int|float number; number = 5; number = 5.5; 

Additionally, there is a special "mixed" data type definition that allows a variable to be any kind of data type.

 mixed number; number = 5; // number is now the integer value 5 number = 5.5; // number is now the float value 5.5 number = "5"; // number is now the string value 5 

In order to convert a value from one type to another, it can be explicitly cast:

 mixed number; number = (int)5; // number is now the integer value 5 number = (string)number; // number is now the string value 5 

External links

  • Official homepage
  • Community Page

  Results from FactBites:
 
Pike programming language - an introduction - Citizendium (805 words)
Pike is an interpreted, general-purpose, high-level, cross-platform, dynamic programming language, with a syntax similar to that of C.
Programmers at Lysator in Linköping, Sweden, most notably Fredrik Hübinette and Per Hedbor, separated the language and virtual machine from the rest of the MUD driver, and used it as a rapid prototyping language for various applications.
Several Pike programmers have found their way to the Linköping office of Opera Software, where the language plays a central role in the server/gateway parts of the Opera Mini application.
Pike (fish) - Search Results - MSN Encarta (179 words)
Pike (fish), common name of several species of carnivorous, freshwater game fishes characterized by elongated bodies and bill-like snouts.
Esox (Linnaeus, 1758) is a genus of freshwater fish, the only member of the pike family (family Esocidae) of order Esociformes.
Pike may refer to: Pike (weapon), a long thrusting pole weapon used by infantry; Pike (fish) Pike (surname) Pike (programming language) Pike (Cheerleading), a cheerleading jump; Pike, a breakdance...
  More results at FactBites »


 

COMMENTARY     


Share your thoughts, questions and commentary here
Your name
Your comments
Please enter the 5-letter protection code

Want to know more?
Search encyclopedia, statistics and forums:

 


Lesson Plans | Student Area | Student FAQ | Reviews | Press Releases |  Feeds | Contact
The Wikipedia article included on this page is licensed under the GFDL.
Images may be subject to relevant owners' copyright.
All other elements are (c) copyright NationMaster.com 2003-5. All Rights Reserved.
Usage implies agreement with terms.