Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Pike (programming language)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Multiple issues| {{more citations needed|date=March 2022}} {{how-to|date=March 2017}} }} {{Infobox programming language | name = Pike | logo = Pike Programming Language Logo.svg | logo size = 230px | logo alt = Logo for the Pike programming language | paradigm = [[multi-paradigm programming language|Multi-paradigm]]: [[Object-oriented programming|object-oriented]], [[functional programming|functional]], [[procedural programming|procedural]] | year = {{Start date and age|1994}} | designer = Fredrik Hübinette | developer = Pike development team supported by the Software and Systems division of the Department of Computer and Information Science (IDA) at Linköping University | latest_release_version = 8.0.1738 | latest_release_date = {{Start date and age|2022|01|30}} | typing = [[static typing|Static]], [[dynamic typing|dynamic]], [[manifest typing|manifest]] | implementations = Pike | dialects = | influenced_by = [[LPC (programming language)|LPC]], [[C (programming language)|C]], [[C++]] | influenced = | license = [[GNU General Public License|GPL]]/[[GNU Lesser General Public License|LGPL]]/[[Mozilla Public License|MPL]] | website = {{url|https://pike.lysator.liu.se/}} | operating system = Any [[Unix-like]], [[Microsoft Windows|Windows]] | status = Active }} '''Pike''' is an [[interpreter (computing)|interpreted]], [[general-purpose programming language|general-purpose]], [[high level programming language|high-level]], [[cross-platform]], [[dynamic programming language]], with a syntax similar to that of [[C (programming language)|C]]. Unlike many other dynamic languages, Pike is both statically and dynamically 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 some of the benefits of a statically-typed language. Pike features [[garbage collection (computer science)|garbage collection]], advanced data types, and [[First-class function|first-class]] [[anonymous function]]s, with support for many [[programming paradigm]]s, including [[object-oriented programming|object-oriented]], [[functional programming|functional]] and [[imperative programming]]. Pike is [[free software]], released under the [[GNU General Public License|GPL]], [[LGPL]] and [[Mozilla Public License|MPL]] licenses. == History == Pike has its roots in [[LPC (programming language)|LPC]], which was a language developed for [[Multi-user dungeon|MUD]]s. Programmers at [[Lysator]] in [[Linköping]], Sweden, most notably Fredrik Hübinette and Per Hedbor,<ref>{{cite web | url = http://pike.lysator.liu.se/about/pike/history.xml | title = The history of pike }}</ref> separated the language and virtual machine from the rest of the MUD driver, and used it as a rapid prototyping language for various applications, calling it LPC4. LPC's license did not allow use for commercial purposes, and so a new GPL implementation was written in 1994, called μLPC (micro LPC). In 1996, μLPC was renamed to Pike in order 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 Pike's development. [[Roxen (web server)|Roxen]] is also the name of a web server developed by the company in Pike. In 2002, the programming environment laboratory at [[Linköping University]] took over maintenance of Pike from Roxen. 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.<ref>{{cite web | url = http://www.lextrait.com/Vincent/implementations.html | title = The Programming Languages Beacon, v10.0 | first = Vincent | last = Lextrait | date = January 2010 | accessdate = 14 March 2010 | archive-url = https://archive.today/20120530/http://www.lextrait.com/Vincent/implementations.html | archive-date = 30 May 2012 | url-status = dead }}</ref><ref>{{cite web |title=Hacker News - Pike Programming Language - Discussion - We built the Opera Mini server infrastructure based on Pike, starting back in 20... |url=https://news.ycombinator.com/item?id=31453477 |website=news.ycombinator.com |access-date=1 August 2023}}</ref> ==Example== <syntaxhighlight lang="pike"> int main() { write("Hi there! What's your name?\n"); string name = Stdio.stdin->gets(); write("Nice to meet you, " + name + "!\n"); return 0; } </syntaxhighlight> ==See also== {{Portal|Free and open-source software}} * [[LPMud family tree]] ==References== {{Reflist}} ==External links== * {{Official website}} * [http://www.gotpike.org/ Community Page] * {{cite web |last1=Karlberg |first1=Lars Anders |title=Doldis från Linköping byggde första webben |url=https://www.nyteknik.se/nyheter/doldis-fran-linkoping-byggde-forsta-webben/399953 |website=NyTeknik |access-date=1 August 2023 |language=sv |date=14 August 2006}} {{Programming languages}} {{DEFAULTSORT:Pike (Programming Language)}} [[Category:Class-based programming languages]] [[Category:Scripting languages]] [[Category:Free and open source interpreters]] [[Category:Cross-platform software]] [[Category:Object-oriented programming languages]] [[Category:Software using the Mozilla Public License]] [[Category:Software using the GNU General Public License]] [[Category:Software using the GNU Lesser General Public License]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Cite web
(
edit
)
Template:Infobox programming language
(
edit
)
Template:Multiple issues
(
edit
)
Template:Official website
(
edit
)
Template:Portal
(
edit
)
Template:Programming languages
(
edit
)
Template:Reflist
(
edit
)