Perl: Skillnad mellan sidversioner
EmausBot (Diskussion | Bidrag) |
Plumbot (Diskussion | Bidrag) m →Externa länkar: Lägger till * före mall-anrop |
||
(15 mellanliggande sidversioner av 12 användare visas inte) | |||
Rad 1: | Rad 1: | ||
{{för|det typografiska måttet ’perl’|Typografisk punkt}} |
{{för|det typografiska måttet ’perl’|Typografisk punkt|std}} |
||
{{källor|datum=2020-08}} |
|||
{{Faktaruta programspråk |
{{Faktaruta programspråk |
||
| namn |
| namn = Perl |
||
| logga |
| logga = |
||
| paradigm |
| paradigm = [[Procedurell programmering|procedurell]], [[Imperativ programmering|imperativ]], [[Strukturerad programmering|strukturerad]], [[Modular programmering|modular]], delvis [[Objektorienterad programmering|objektorienterad]] |
||
| år |
| år = 1987 |
||
| skapare |
| skapare = [[Larry Wall]] och Perl Porters |
||
| utvecklare |
| utvecklare = många |
||
| senaste_release_version = 5. |
| senaste_release_version = 5.38.0 |
||
| senaste_release_datum |
| senaste_release_datum = [[2 juli]] [[2023]] |
||
| senaste_test_version |
| senaste_test_version = 5.39.3 |
||
| senaste_test_datum |
| senaste_test_datum = [[2023]] |
||
| turingkomplett |
| turingkomplett = |
||
| typbestämning |
| typbestämning = weak, dynamic, implicit |
||
| implementationer |
| implementationer = |
||
| dialekter |
| dialekter = |
||
| influerad_av |
| influerad_av = [[Awk]], BASIC-PLUS, [[C (programspråk)]], [[C++]], [[LISP]], [[Pascal (programspråk)|Pascal]], [[Python (programspråk)|Python]], [[sed (stream editor)|sed]], [[Unixskal]] |
||
| influerat |
| influerat = [[PHP]], [[Ruby]], [[Python (programspråk)|Python]], [[JavaScript]] |
||
| operativsystem |
| operativsystem = [[Unix]], [[Linux]], [[Microsoft Windows]], m.m. |
||
| licens |
| licens = [[GNU General Public License|GPL]] och [[Artistic License]] |
||
| hemsida |
| hemsida = [http://www.perl.org perl.org] |
||
| filändelse = .pl |
|||
}} |
}} |
||
⚫ | '''Perl''' är ett [[skriptspråk]] skapat av [[Larry Wall]] 1987. Då Wall är utbildad [[lingvist]] har Perl, liksom naturliga språk, mindre inriktning på struktur och mer på flexibilitet. Perls motto är ''Det finns mer än ett sätt att göra det på'' (eng.: "There's more than one way to do it", eller TIMTOWTDI; uttalas 'Tim Toady'). Som exempel har Perl syntaxstöd för att implementera program [[Procedurell programmering|procedurellt]], [[objektorienterad programmering|objektorienterat]] och till och med visst stöd för [[funktionell programmering]]. Perl är ett generellt språk och kan användas till det mesta, men det har vunnit sin största popularitet för [[Common Gateway Interface|CGI]]-utveckling och [[systemadministration]]. En av Perls viktigaste egenskaper är den integration [[reguljära uttryck]] har i språket. Till skillnad från andra språk, där reguljära uttryck normalt implementeras med hjälp av funktioner och klasser man kan använda sig av, är "regex" direkt tillgängligt för programmeraren som en del av språkets syntax. |
||
⚫ | Perl är fri mjukvara och distribueras under antingen [[GNU General Public License]] eller [[Artistic License]]<ref>http://dev.perl.org/licenses/</ref>. Det finns tillgängligt för de flesta plattformar och operativsystem; bland annat [[GNU/Linux]], [[FreeBSD]], [[Mac OSX|Mac OS X]] och [[Microsoft Windows]]. Perl har ett stort arkiv med [[Programbibliotek|tilläggsbibliotek]] (moduler) kallat [[CPAN]], där utvecklare kan få tag på färdigskriven kod för många vanliga sysslor. |
||
⚫ | '''Perl''' är ett [[skriptspråk]] skapat av [[Larry Wall]] 1987. Då Wall är utbildad [[lingvist]] har Perl, liksom naturliga språk, mindre inriktning på struktur och mer på flexibilitet. Perls motto är ''Det finns mer än ett sätt att göra det på'' (eng.: "There's more than one way to do it", eller TIMTOWTDI; uttalas 'Tim Toady'). Som exempel har Perl syntaxstöd för att implementera program [[Procedurell programmering|procedurellt]], [[objektorienterad programmering|objektorienterat]] och till och med visst stöd för [[funktionell programmering]]. Perl är ett generellt språk och kan användas till det mesta, men det har vunnit sin största popularitet för [[Common Gateway Interface|CGI]]-utveckling och [[systemadministration]]. En av Perls viktigaste egenskaper är den integration [[reguljära uttryck]] har i språket. Till skillnad från andra språk, där reguljära uttryck normalt implementeras med hjälp av funktioner och klasser man kan använda sig av, är "regex" direkt tillgängligt för programmeraren som en del av språkets syntax. |
||
⚫ | Perl är fri mjukvara och distribueras under antingen [[GNU General Public License]] eller [[Artistic License]]<ref>http://dev.perl.org/licenses/</ref>. Det finns tillgängligt för de flesta plattformar och operativsystem; |
||
== Perl 6 == |
== Perl 6 == |
||
{{uppdateras|Källan för 'idag' är synbarligen från 2009.|månad=2020-12}} |
|||
Perl 6 är nästa generation av Perl. Specifikationen för Perl 6 utarbetas ännu, men redan idag finns det ett antal delimplementationer, varav [[Rakudo]] är den mest kompletta<ref>http://perl6advent.wordpress.com/2009/12/01/day-1-getting-rakudo/</ref>. I anslutning till Perl 6 utvecklas den [[virtuell maskin|virtuella maskinen]] [[Parrot]], specialiserad för att hantera dynamiska språk. |
Perl 6 är nästa generation av Perl. Specifikationen för Perl 6 utarbetas ännu, men redan idag finns det ett antal delimplementationer, varav [[Rakudo]] är den mest kompletta<ref>http://perl6advent.wordpress.com/2009/12/01/day-1-getting-rakudo/</ref>. I anslutning till Perl 6 utvecklas den [[virtuell maskin|virtuella maskinen]] [[Parrot]], specialiserad för att hantera dynamiska språk. |
||
== Programexempel == |
== Programexempel == |
||
Följande programexempel skriver textraden ''[[Hello world]]'' till terminalen. |
Följande programexempel skriver textraden ''[[Hello world]]'' till terminalen. |
||
< |
<syntaxhighlight lang="perl"> |
||
#!/usr/bin/perl |
#!/usr/bin/perl |
||
print "Hello world\n"; |
print "Hello world\n"; |
||
</syntaxhighlight> |
|||
</source> |
|||
I följande exempel demonstreras en enkel användning av ett reguljärt uttryck. |
I följande exempel demonstreras en enkel användning av ett reguljärt uttryck. |
||
< |
<syntaxhighlight lang="perl"> |
||
#!/usr/bin/perl |
#!/usr/bin/perl |
||
my $var = 'wikimedia'; |
my $var = 'wikimedia'; |
||
$var =~ s/^wikimedia$/wikipedia/; |
$var =~ s/^wikimedia$/wikipedia/; |
||
print "$var\n"; # "wikipedia\n"; |
print "$var\n"; # "wikipedia\n"; |
||
</syntaxhighlight> |
|||
</source> |
|||
⚫ | |||
⚫ | |||
== Se även == |
== Se även == |
||
* [[Larry Wall]] |
* [[Larry Wall]] |
||
* [[CPAN]] |
* [[CPAN]] |
||
⚫ | |||
⚫ | |||
== Externa länkar == |
== Externa länkar == |
||
* {{Commonscat|Perl (programming language)}} |
|||
* [http://www.perl.org Perl.org] |
* [http://www.perl.org Perl.org] |
||
* [http://www.perlfoundation.org Perl Foundation] |
* [http://www.perlfoundation.org/ Perl Foundation] |
||
* [http://www.pm.org Perl Mongers], Perls användargrupper |
* [http://www.pm.org Perl Mongers], Perls användargrupper |
||
* [http://www.perlmonks.org Perlmonks] |
* [http://www.perlmonks.org Perlmonks] |
||
* [http://dev.perl.org/perl6/ Perl Development: Perl 6] |
* [http://dev.perl.org/perl6/ Perl Development: Perl 6] |
||
* [http://www.oreilly.com/catalog/perl6es/ Perl 6 Essentials], bok från [[O'Reilly]] |
* [http://www.oreilly.com/catalog/perl6es/ Perl 6 Essentials], bok från förlaget [[O'Reilly]] |
||
⚫ | |||
* [http://www.programmersheaven.com/2/Perl6-FAQ Perl 6 FAQ] |
|||
⚫ | |||
* [http://www.rakudo.org/ Rakudo] |
* [http://www.rakudo.org/ Rakudo] |
||
* [http://www.parrot.org/ Parrot] |
* [http://www.parrot.org/ Parrot] |
Nuvarande version från 30 juni 2024 kl. 17.26
Den här artikeln behöver källhänvisningar för att kunna verifieras. (2020-08) Åtgärda genom att lägga till pålitliga källor (gärna som fotnoter). Uppgifter utan källhänvisning kan ifrågasättas och tas bort utan att det behöver diskuteras på diskussionssidan. |
Perl | |
Paradigm | procedurell, imperativ, strukturerad, modular, delvis objektorienterad |
---|---|
Gavs ut | 1987 |
Skapat av | Larry Wall och Perl Porters |
Utvecklare | många |
Senaste version | 5.38.0 (2 juli 2023) |
Senaste instabila version | 5.39.3(2023) |
Datatypsdisciplin | weak, dynamic, implicit |
Influerat av | Awk, BASIC-PLUS, C (programspråk), C++, LISP, Pascal, Python, sed, Unixskal |
Influerat | PHP, Ruby, Python, JavaScript |
Plattform | Unix, Linux, Microsoft Windows, m.m. |
Licens | GPL och Artistic License |
Webbplats | perl.org |
Standardfiländelse(r) | .pl |
Perl är ett skriptspråk skapat av Larry Wall 1987. Då Wall är utbildad lingvist har Perl, liksom naturliga språk, mindre inriktning på struktur och mer på flexibilitet. Perls motto är Det finns mer än ett sätt att göra det på (eng.: "There's more than one way to do it", eller TIMTOWTDI; uttalas 'Tim Toady'). Som exempel har Perl syntaxstöd för att implementera program procedurellt, objektorienterat och till och med visst stöd för funktionell programmering. Perl är ett generellt språk och kan användas till det mesta, men det har vunnit sin största popularitet för CGI-utveckling och systemadministration. En av Perls viktigaste egenskaper är den integration reguljära uttryck har i språket. Till skillnad från andra språk, där reguljära uttryck normalt implementeras med hjälp av funktioner och klasser man kan använda sig av, är "regex" direkt tillgängligt för programmeraren som en del av språkets syntax.
Perl är fri mjukvara och distribueras under antingen GNU General Public License eller Artistic License[1]. Det finns tillgängligt för de flesta plattformar och operativsystem; bland annat GNU/Linux, FreeBSD, Mac OS X och Microsoft Windows. Perl har ett stort arkiv med tilläggsbibliotek (moduler) kallat CPAN, där utvecklare kan få tag på färdigskriven kod för många vanliga sysslor.
Perl 6
[redigera | redigera wikitext]Den här artikeln eller det här avsnittet innehåller inaktuella uppgifter och behöver uppdateras. (2020-12) Motivering: Källan för 'idag' är synbarligen från 2009. Hjälp gärna Wikipedia att åtgärda problemet genom att redigera artikeln eller diskutera saken på diskussionssidan. |
Perl 6 är nästa generation av Perl. Specifikationen för Perl 6 utarbetas ännu, men redan idag finns det ett antal delimplementationer, varav Rakudo är den mest kompletta[2]. I anslutning till Perl 6 utvecklas den virtuella maskinen Parrot, specialiserad för att hantera dynamiska språk.
Programexempel
[redigera | redigera wikitext]Följande programexempel skriver textraden Hello world till terminalen.
#!/usr/bin/perl
print "Hello world\n";
I följande exempel demonstreras en enkel användning av ett reguljärt uttryck.
#!/usr/bin/perl
my $var = 'wikimedia';
$var =~ s/^wikimedia$/wikipedia/;
print "$var\n"; # "wikipedia\n";
Se även
[redigera | redigera wikitext]Referenser
[redigera | redigera wikitext]Externa länkar
[redigera | redigera wikitext]- Wikimedia Commons har media som rör Perl.
- Perl.org
- Perl Foundation
- Perl Mongers, Perls användargrupper
- Perlmonks
- Perl Development: Perl 6
- Perl 6 Essentials, bok från förlaget O'Reilly
- Perl6::Perl5::Differences
- Rakudo
- Parrot