<script type="text/javascript">

  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-31093120-1']);
  _gaq.push(['_setDomainName', 'linux-user.eu']);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();

</script>
<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://wiki.linux-user.eu/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pl">
		<id>http://wiki.linux-user.eu/index.php?action=history&amp;feed=atom&amp;title=Perl</id>
		<title>Perl - Historia wersji</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.linux-user.eu/index.php?action=history&amp;feed=atom&amp;title=Perl"/>
		<link rel="alternate" type="text/html" href="http://wiki.linux-user.eu/index.php?title=Perl&amp;action=history"/>
		<updated>2026-06-03T03:09:35Z</updated>
		<subtitle>Historia wersji tej strony wiki</subtitle>
		<generator>MediaWiki 1.19.1</generator>

	<entry>
		<id>http://wiki.linux-user.eu/index.php?title=Perl&amp;diff=957&amp;oldid=prev</id>
		<title>Slawek o 12:05, 6 wrz 2012</title>
		<link rel="alternate" type="text/html" href="http://wiki.linux-user.eu/index.php?title=Perl&amp;diff=957&amp;oldid=prev"/>
				<updated>2012-09-06T12:05:05Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr valign='top'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← poprzednia wersja&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Wersja z 12:05, 6 wrz 2012&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 469:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 469:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Jak można łatwo zauważyć w tym krótkim programiku występują dwie stałe o nazwie $what, które działają koło siebie bez żadnych błędów. Tak czy inaczej pisząc w ten sposób program stał się mało czytelny.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Jak można łatwo zauważyć w tym krótkim programiku występują dwie stałe o nazwie $what, które działają koło siebie bez żadnych błędów. Tak czy inaczej pisząc w ten sposób program stał się mało czytelny.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;=== Tablica asocjacyjna ===&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;Tablica asocjacyjna jest strukturą danych, która może przechowywać dowolne wartości i zwracać je na żądanie programisty.&amp;#160; Indeksowanie wartości odbywa się za pomocą nazw (kluczy) a nie jak to miało miejsce w zwykłych tablicach za pomocą indeksów. Mały przykład użycia&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt; #! /usr/bin/perl&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt; $nazwa1{&amp;quot;kowalski&amp;quot;} = &amp;quot;Jan&amp;quot;;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt; nazwa1{&amp;quot;nowak&amp;quot;} = &amp;quot;Adam&amp;quot;;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt; foreach $ludzie (qw&amp;lt; nowak kowalski &amp;gt;) {&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; print &amp;quot;Słyszałem o rodzinie $ludzie $nazwa1{$ludzie}. \n&amp;quot;;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt; }&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;'''HOWTO W TRAKCIE PISANIA''' &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;'''HOWTO W TRAKCIE PISANIA''' &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;br /&amp;gt;&amp;lt;google1 style=&amp;quot;4&amp;quot;&amp;gt;&amp;lt;/google1&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;br /&amp;gt;&amp;lt;google1 style=&amp;quot;4&amp;quot;&amp;gt;&amp;lt;/google1&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Slawek</name></author>	</entry>

	<entry>
		<id>http://wiki.linux-user.eu/index.php?title=Perl&amp;diff=956&amp;oldid=prev</id>
		<title>Slawek: /* Pobieranie danych ze standardowego wejścia */</title>
		<link rel="alternate" type="text/html" href="http://wiki.linux-user.eu/index.php?title=Perl&amp;diff=956&amp;oldid=prev"/>
				<updated>2012-09-04T14:14:59Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Pobieranie danych ze standardowego wejścia&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr valign='top'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← poprzednia wersja&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Wersja z 14:14, 4 wrz 2012&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 190:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 190:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;W celu testowym możemy zobaczyć co się stanie jeśli odpalimy ten sam program wymazując tylko linijkę chomp($user);&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;W celu testowym możemy zobaczyć co się stanie jeśli odpalimy ten sam program wymazując tylko linijkę chomp($user);&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;==== Operator &amp;quot;diamentowy&amp;quot; ====&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;Pobieranie danych z operatora &amp;quot;diamentowego&amp;quot; ''&amp;lt;&amp;gt;'' (znak mniejszości i większości) umożliwia stworzenie programu, który podczas uruchamiania pobierze dodatkowe argumenty ze standardowego wejścia znaczy klawiatury np&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt; ./program test1 test2&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;''test1'' oraz ''test2'' to istniejące pliki. Przykład poniżej powinien rozjaśnić całą zabawę z operatorem diamentowym w perlu.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt; #! /usr/bin/perl&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt; while (defined($line = &amp;lt;&amp;gt;)) {&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; chomp($line);&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; print &amp;quot;Wczytałem wiersz $line \n&amp;quot;;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt; }&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;należy pamiętać aby operator ''&amp;lt;&amp;gt;'' użyć w programie tylko jeden raz w innym przypadku pojawią się błędy.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;=== Pętla while ===&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;=== Pętla while ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Slawek</name></author>	</entry>

	<entry>
		<id>http://wiki.linux-user.eu/index.php?title=Perl&amp;diff=955&amp;oldid=prev</id>
		<title>Slawek: /* Pobieranie danych ze standardowego wejścia */</title>
		<link rel="alternate" type="text/html" href="http://wiki.linux-user.eu/index.php?title=Perl&amp;diff=955&amp;oldid=prev"/>
				<updated>2012-09-04T13:43:39Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Pobieranie danych ze standardowego wejścia&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr valign='top'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← poprzednia wersja&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Wersja z 13:43, 4 wrz 2012&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 155:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 155:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; #! /usr/bin/perl&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; #! /usr/bin/perl&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; print &amp;quot;Podaj liczbe od 1 do 9:&amp;quot;;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; print &amp;quot;Podaj liczbe od 1 do 9:&amp;quot;;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; $liczba_usera = ;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; $liczba_usera = &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;STDIN&amp;gt;;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; chomp($liczba_usera)&lt;/ins&gt;;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; $automat = '5';&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; $automat = '5';&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; print &amp;quot;Liczba uzytkownika = $liczba_usera&amp;quot;;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; print &amp;quot;Liczba uzytkownika = $liczba_usera &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;\n&lt;/ins&gt;&amp;quot;;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; print &amp;quot;Liczba automatu =&amp;#160;  $automat\n\n&amp;quot;;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; print &amp;quot;Liczba automatu =&amp;#160;  $automat\n\n&amp;quot;;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; if ($automat == $liczba_usera)&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; if ($automat == $liczba_usera)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; {&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;nie, przerwe mam:P&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; {&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; print &amp;quot;Zgadłeś liczbę automatu $automat \n&amp;quot;;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; print &amp;quot;Zgadłeś liczbę automatu $automat \n&amp;quot;;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; }&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; }&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 174:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 175:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; #! /usr/bin/perl&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; #! /usr/bin/perl&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; print &amp;quot;Podaj login:&amp;quot;;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; print &amp;quot;Podaj login:&amp;quot;;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; $user = &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; $user = &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;STDIN&amp;gt;&lt;/ins&gt;;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt; $u = 'root';&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt; print &amp;quot;Nazwa usera = $user&amp;quot;;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt; print &amp;quot;Nazwa programu =&amp;#160;  $u\n\n&amp;quot;&lt;/del&gt;;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; chomp($user);&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; chomp($user);&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt; $u = 'root';&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt; print &amp;quot;Nazwa usera = $user \n&amp;quot;;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt; print &amp;quot;Nazwa użytkownika root =&amp;#160;  $u\n\n&amp;quot;;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; if ($u eq $user)&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; if ($u eq $user)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; {&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; {&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Slawek</name></author>	</entry>

	<entry>
		<id>http://wiki.linux-user.eu/index.php?title=Perl&amp;diff=954&amp;oldid=prev</id>
		<title>Slawek: /* Zmienna leksykalna my */</title>
		<link rel="alternate" type="text/html" href="http://wiki.linux-user.eu/index.php?title=Perl&amp;diff=954&amp;oldid=prev"/>
				<updated>2012-09-04T13:37:13Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Zmienna leksykalna my&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr valign='top'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← poprzednia wersja&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Wersja z 13:37, 4 wrz 2012&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 456:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 456:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; }&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; }&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;Jak można łatwo zauważyć w tym krótkim programiku występują dwie stałe o nazwie $what, które działają koło siebie bez żadnych błędów. Tak czy inaczej pisząc w ten sposób program stał się mało czytelny.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;'''HOWTO W TRAKCIE PISANIA''' &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;'''HOWTO W TRAKCIE PISANIA''' &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;br /&amp;gt;&amp;lt;google1 style=&amp;quot;4&amp;quot;&amp;gt;&amp;lt;/google1&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;br /&amp;gt;&amp;lt;google1 style=&amp;quot;4&amp;quot;&amp;gt;&amp;lt;/google1&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Slawek</name></author>	</entry>

	<entry>
		<id>http://wiki.linux-user.eu/index.php?title=Perl&amp;diff=953&amp;oldid=prev</id>
		<title>Slawek: /* Zmienna leksykalna my */</title>
		<link rel="alternate" type="text/html" href="http://wiki.linux-user.eu/index.php?title=Perl&amp;diff=953&amp;oldid=prev"/>
				<updated>2012-09-04T13:34:50Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Zmienna leksykalna my&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr valign='top'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← poprzednia wersja&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Wersja z 13:34, 4 wrz 2012&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 437:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 437:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; #! /usr/bin/perl&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; #! /usr/bin/perl&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; print &amp;quot;Podaj jakieś imie:&amp;quot;;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; print &amp;quot;Podaj jakieś imie:&amp;quot;;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; $&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;imie &lt;/del&gt;= &amp;lt;STDIN&amp;gt;;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; $&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;what &lt;/ins&gt;= &amp;lt;STDIN&amp;gt;;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; chomp($&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;imie&lt;/del&gt;);&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; chomp($&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;what&lt;/ins&gt;);&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; my @names = qw/ kasia slawek ania piter natalia adam jacek kuba /;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; my @names = qw/ kasia slawek ania piter natalia adam jacek kuba /;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; my $result = &amp;amp;which_elements_is($&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;imie&lt;/del&gt;, @names);&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; my $result = &amp;amp;which_elements_is($&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;what&lt;/ins&gt;, @names);&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; sub which_elements_is {&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; sub which_elements_is {&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; &amp;#160; &amp;#160; my ($what, @array) = @_;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; &amp;#160; &amp;#160; my ($what, @array) = @_;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 451:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 451:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; }&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; }&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; if ($result == 1) {&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; if ($result == 1) {&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; &amp;#160; &amp;#160; print &amp;quot;Imię $&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;imie &lt;/del&gt;zostało odnalezione w bazie\n&amp;quot;;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; &amp;#160; &amp;#160; print &amp;quot;Imię $&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;what &lt;/ins&gt;zostało odnalezione w bazie\n&amp;quot;;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; } else {&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; } else {&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; &amp;#160; &amp;#160; print &amp;quot;Imię $&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;imie &lt;/del&gt;NIE zostało odnalezione w bazie \n&amp;quot;;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; &amp;#160; &amp;#160; print &amp;quot;Imię $&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;what &lt;/ins&gt;NIE zostało odnalezione w bazie \n&amp;quot;;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; }&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; }&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Slawek</name></author>	</entry>

	<entry>
		<id>http://wiki.linux-user.eu/index.php?title=Perl&amp;diff=952&amp;oldid=prev</id>
		<title>Slawek: /* Zmienna leksykalna my */</title>
		<link rel="alternate" type="text/html" href="http://wiki.linux-user.eu/index.php?title=Perl&amp;diff=952&amp;oldid=prev"/>
				<updated>2012-09-04T13:32:02Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Zmienna leksykalna my&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr valign='top'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← poprzednia wersja&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Wersja z 13:32, 4 wrz 2012&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 433:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 433:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;=== Zmienna leksykalna my ===&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;=== Zmienna leksykalna my ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;W tym miejscu chciałbym jedynie wyjaśnić co to jest zmienna leksykalna my, gdyż w przykładach poniżej będzie wiele razy użyta ta właśnie zmienna dlatego nie ma sensu pokazywania tutaj przykładów. Jeżeli nie zrozumiesz od razu o co chodzi to sie nie przejmuj poniżej będziesz miał jeszcze wiele razy na to szansę ;-) No to do pracy :-)&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Zmienne leksykalne &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;'''&lt;/ins&gt;my&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;''' &lt;/ins&gt;używamy wtedy gdy, chcemy powiedzieć kompilatorowi, że dana zmienna powinna być prywatna lub mieć ograniczony zasięg np jedynie do danego bloku. W tym momencie żadna inna zmienna o tej samej nazwie nie będzie mogła być zastąpiona inną wartością, która przechowywana jest w zmiennej o tej samej nazwie. Co lepsze taka zasada działa również na odwrót tzn, że żadna inna zmienna nie zmieni tak zadeklarowanej zmiennej w danym bloku. &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Przykładowy programik przedstawiam poniżej&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Zmienne leksykalne my używamy wtedy gdy, chcemy powiedzieć kompilatorowi, że dana zmienna powinna być prywatna lub mieć ograniczony zasięg np jedynie do danego bloku. W tym momencie żadna inna zmienna o tej samej nazwie nie będzie mogła być zastąpiona inną wartością, która przechowywana jest w zmiennej o tej samej nazwie. Co lepsze taka zasada działa również na odwrót tzn, że żadna inna zmienna nie zmieni tak zadeklarowanej zmiennej w danym bloku.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; #! /usr/bin/perl&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; print &amp;quot;Podaj jakieś imie:&amp;quot;;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; $imie = &amp;lt;STDIN&amp;gt;;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; chomp($imie);&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; my @names = qw/ kasia slawek ania piter natalia adam jacek kuba /;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; my $result = &amp;amp;which_elements_is($imie, @names);&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; sub which_elements_is {&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; my ($what, @array) = @_;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; foreach (0..$#array) {&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; if ($what eq $array[$_]) {&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; return $_;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160;  }&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; }&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; -1;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; }&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; if ($result == 1) {&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; print &amp;quot;Imię $imie zostało odnalezione w bazie\n&amp;quot;;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; } else {&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; print &amp;quot;Imię $imie NIE zostało odnalezione w bazie \n&amp;quot;;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; }&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;'''HOWTO W TRAKCIE PISANIA''' &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;'''HOWTO W TRAKCIE PISANIA''' &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;br /&amp;gt;&amp;lt;google1 style=&amp;quot;4&amp;quot;&amp;gt;&amp;lt;/google1&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;br /&amp;gt;&amp;lt;google1 style=&amp;quot;4&amp;quot;&amp;gt;&amp;lt;/google1&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Slawek</name></author>	</entry>

	<entry>
		<id>http://wiki.linux-user.eu/index.php?title=Perl&amp;diff=457&amp;oldid=prev</id>
		<title>Slawek o 09:31, 23 kwi 2012</title>
		<link rel="alternate" type="text/html" href="http://wiki.linux-user.eu/index.php?title=Perl&amp;diff=457&amp;oldid=prev"/>
				<updated>2012-04-23T09:31:41Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr valign='top'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← poprzednia wersja&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Wersja z 09:31, 23 kwi 2012&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 84:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 84:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; print &amp;quot;\n&amp;quot;;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; print &amp;quot;\n&amp;quot;;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; print &amp;quot;10 i 10 rowna sie $zmienna1&amp;quot;;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; print &amp;quot;10 i 10 rowna sie $zmienna1&amp;quot;;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt; &lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;=== Logiczne operatory porównania ===&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;=== Logiczne operatory porównania ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 134:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 134:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; }&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160; }&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Możliwe jest również zagnieżdżanie konstrukcji warunkowej if np&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Możliwe jest również zagnieżdżanie konstrukcji warunkowej &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;'''&lt;/ins&gt;if&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;''' &lt;/ins&gt;np&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; if (dane &amp;lt;= dane2)&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; if (dane &amp;lt;= dane2)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; {&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; {&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; if ( jakis wynik &amp;lt; inny wtynik )&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; if ( jakis wynik &amp;lt; inny wtynik )&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; {&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; {&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; jeszcze inny wynik&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; jeszcze inny wynik&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; }&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; }&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; ....&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; ....&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; }&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; }&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; else&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; else&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; ...&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; ...&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 445:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 436:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Zmienne leksykalne my używamy wtedy gdy, chcemy powiedzieć kompilatorowi, że dana zmienna powinna być prywatna lub mieć ograniczony zasięg np jedynie do danego bloku. W tym momencie żadna inna zmienna o tej samej nazwie nie będzie mogła być zastąpiona inną wartością, która przechowywana jest w zmiennej o tej samej nazwie. Co lepsze taka zasada działa również na odwrót tzn, że żadna inna zmienna nie zmieni tak zadeklarowanej zmiennej w danym bloku.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Zmienne leksykalne my używamy wtedy gdy, chcemy powiedzieć kompilatorowi, że dana zmienna powinna być prywatna lub mieć ograniczony zasięg np jedynie do danego bloku. W tym momencie żadna inna zmienna o tej samej nazwie nie będzie mogła być zastąpiona inną wartością, która przechowywana jest w zmiennej o tej samej nazwie. Co lepsze taka zasada działa również na odwrót tzn, że żadna inna zmienna nie zmieni tak zadeklarowanej zmiennej w danym bloku.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt; &lt;/del&gt;'''HOWTO W TRAKCIE PISANIA''' &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;'''HOWTO W TRAKCIE PISANIA''' &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;br /&amp;gt;&amp;lt;google1 style=&amp;quot;4&amp;quot;&amp;gt;&amp;lt;/google1&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;br /&amp;gt;&amp;lt;google1 style=&amp;quot;4&amp;quot;&amp;gt;&amp;lt;/google1&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Slawek</name></author>	</entry>

	<entry>
		<id>http://wiki.linux-user.eu/index.php?title=Perl&amp;diff=456&amp;oldid=prev</id>
		<title>Slawek: Utworzył nową stronę „Category:Programowanie == Perl == '''Perl''' (''Practical Extraction and Report Language''), twórcą języka jest Larry Wall. Perl jest bardzo często wykorzyst...”</title>
		<link rel="alternate" type="text/html" href="http://wiki.linux-user.eu/index.php?title=Perl&amp;diff=456&amp;oldid=prev"/>
				<updated>2012-04-23T09:30:40Z</updated>
		
		<summary type="html">&lt;p&gt;Utworzył nową stronę „&lt;a href=&quot;/index.php/Kategoria:Programowanie&quot; title=&quot;Kategoria:Programowanie&quot;&gt;Category:Programowanie&lt;/a&gt; == Perl == &amp;#039;&amp;#039;&amp;#039;Perl&amp;#039;&amp;#039;&amp;#039; (&amp;#039;&amp;#039;Practical Extraction and Report Language&amp;#039;&amp;#039;), twórcą języka jest Larry Wall. Perl jest bardzo często wykorzyst...”&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nowa strona&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Category:Programowanie]]&lt;br /&gt;
== Perl ==&lt;br /&gt;
'''Perl''' (''Practical Extraction and Report Language''), twórcą języka jest Larry Wall. Perl jest bardzo często wykorzystywany przy tworzeniu małych &amp;quot;szybkich&amp;quot; programów. Jeżeli ktoś z czytelników programował wcześniej w takim języku jak '''C/C++''' to nie powinien mieć wielkich problemów z nauką perla, gdyż składnie tych języków są bardzo podobne.&lt;br /&gt;
&lt;br /&gt;
Długich wstępów jak wiadomo i tak nie wielu czyta ;-) więc przejdźmy do bardziej praktyczniejszych spraw związanych z językiem perl.&lt;br /&gt;
=== Omówienie składni ===&lt;br /&gt;
&lt;br /&gt;
Aby jak najłatwiej opisać składnię tego języka, na początku omówimy pierwszy mały programik&lt;br /&gt;
&lt;br /&gt;
 #! /usr/bin/perl&lt;br /&gt;
 print &amp;quot;witaj swiecie\n&amp;quot;;&lt;br /&gt;
 print &amp;quot;witaj swiecie\n\n\n\n&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
Pierwsza linijka kodu jest wymagana do działania programu, gdyż wskazuje ścieżkę do zainstalowanego w systemie programu perl, inaczej mówiąc mówimy naszemu systemowi, że mamy zamiar napisać program w języku perl. Taka sama zasada panuje np wtedy, gdy chcemy napisać program w języku bash. Jeżeli z jakiś powodów w swoim systemi mamy inną ścieżkę do programu perl, możemy wyświetlić jej ścieżkę za pomocą polecenia&lt;br /&gt;
&lt;br /&gt;
 $ whereis perl&lt;br /&gt;
 perl: /usr/bin/perl /usr/share/man/man1/perl.1.gz&lt;br /&gt;
&lt;br /&gt;
Jeżeli chodzi o kolejną linijkę kodu to jak się nietrudno domyśleć, komenda print wyświetla znaki zawarte w cudzysłowiach &amp;quot;&amp;quot;, znak \n powoduje wstawienie nowej lini. Na końcach widzimy znak średnika, który jest konieczny do poprawnego skompilowania programu.&lt;br /&gt;
&lt;br /&gt;
Musimy również pamiętać o daniu odpowiednich praw dla stworzonego programu za pomocą polecenia chmod.&lt;br /&gt;
&lt;br /&gt;
Jak widać pierwszy program wyświetlający napisy witaj świecie nie jest zbyt skomplikowany, ale na początek wystarczy, aby oswoić się ze składnią.  Poniżej postaram się przedstawić więcej szczegółów języka perl.&lt;br /&gt;
&lt;br /&gt;
=== Operatory sterujące ===&lt;br /&gt;
&lt;br /&gt;
W pierwszym przykładzie użyliśmy operatora w postaci \n, który powodował wstawienie nowej lini. Poniżej przedstawiam całą kolekcję operatorów, które mogą nam ułatwić życie w czasie pisania programu, jednocześnie musimy pamietać jak używać operatorów łańcuchowych. Dla przypomnienia&lt;br /&gt;
&lt;br /&gt;
 print &amp;quot;jakiś łańcuch \a&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
lub&lt;br /&gt;
&lt;br /&gt;
 print 'jakies znaki' . &amp;quot;\t&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
Pierwsza jak i druga forma jest dozwolona i jak najbardziej prawidłowa.&lt;br /&gt;
&lt;br /&gt;
*\a dzwonek systemowy&lt;br /&gt;
*\b znak backspace&lt;br /&gt;
*\cD znak ctrl (w przykładzie + D)&lt;br /&gt;
*\e znak escape&lt;br /&gt;
*\E kończy działanie znaków  \L, \U, \Q&lt;br /&gt;
*\f znak wysunięcia strony&lt;br /&gt;
*\l następny jeden znak będzie małą literą&lt;br /&gt;
*\L cały ciąg będzie napisany z małych liter aż do \E&lt;br /&gt;
*\n znak nowego wiersza enter&lt;br /&gt;
*\r znak powrotu karetki&lt;br /&gt;
*\Q wstawia przed wszystkimi kolejnymi znakami znak lewego ukośnika aż do \E&lt;br /&gt;
*\t znak tabulacji&lt;br /&gt;
*\u kolejny znak napisany będzie z dużej litery&lt;br /&gt;
*\U wszystkie znaki aż do \E będzą wielkimi literami&lt;br /&gt;
*\x2f wartość ASCII zapisana w systemie szesnastkowym - tutaj 2f&lt;br /&gt;
*\007 wartość ASCII zapisana w systemie ósemkowym - tutaj 007&lt;br /&gt;
*\\ wstawia znak lewego ukośnika&lt;br /&gt;
*\&amp;quot; wstawia znak podwójnego cudzysłowu&lt;br /&gt;
 &lt;br /&gt;
=== Ostrzeżenia perla ===&lt;br /&gt;
&lt;br /&gt;
Perl posiada bardzo przydatną funkcję wyświetlania komunikatów ostrzeżeń. Jeżeli ktoś chciałby wyświetlić takie komunikaty musi jedynie wywołać program z parametrem -w np&lt;br /&gt;
&lt;br /&gt;
 localhost$ perl -w testowy_program &lt;br /&gt;
&lt;br /&gt;
można również dopisać do programu taką funkcję jak&lt;br /&gt;
&lt;br /&gt;
 #! /usr/bin/perl&lt;br /&gt;
 use warnings; &lt;br /&gt;
&lt;br /&gt;
jednak powyższy przykład może nie działać na starszych wersjach perla.&lt;br /&gt;
=== Zmienne ===&lt;br /&gt;
&lt;br /&gt;
Bardzo dobrą i przydatną funkcją języków programowania jest przypisywanie wartości do zmiennych.  Używanie zmiennych jest o tyle dobre, że zmienna zadeklarowana w jednym miejscu może być użyta w wielu fragmentach kodu, jeśli zajdzie potrzeba zmiany wartości, to będziemy musieli zmienić ją tylko w jednym miejscu.&lt;br /&gt;
&lt;br /&gt;
Poniżej przykład zadeklarowania zmiennych&lt;br /&gt;
&lt;br /&gt;
 $zmienna1 = 20;&lt;br /&gt;
 $zmienna2 = 'lancuch znakow'; &lt;br /&gt;
 $zmienna3 = $zmienna1 + 10;&lt;br /&gt;
&lt;br /&gt;
=== Wypisywanie danych na wyjściu ===&lt;br /&gt;
&lt;br /&gt;
Wypisywanie danych na wyjściu, najprawdopodobniej na ekranie monitora odbywa się za pomocą polecenia print(). Jeżeli ktoś czytał początek tego howto to taka funkcja perla była już używana w celu wypisania jakiegoś łańcucha danych na ekranie. Funkcja print() wykorzystywana jest również do  wywoływania operatorów sterujących takich jak np \n, \t. Przykład użycia przedstawiam poniżej&lt;br /&gt;
&lt;br /&gt;
 print &amp;quot;hello world \n&amp;quot;;&lt;br /&gt;
 print 10 + 10;&lt;br /&gt;
 print &amp;quot;\n&amp;quot;;&lt;br /&gt;
 print &amp;quot;10 i 10 rowna sie $zmienna1&amp;quot;;&lt;br /&gt;
 &lt;br /&gt;
=== Logiczne operatory porównania ===&lt;br /&gt;
&lt;br /&gt;
Tak jak w każdym języku programowania tak i perl posiada logiczne operatory porównania, które służą do niczego innego jak do porównania wartości pomiędzy sobą. Każdy z operatorów może zwrócić dwie wartości prawde (true) lub fałsz (fals).&lt;br /&gt;
&lt;br /&gt;
Mamy również możliwość porównywania łańcuchów znakowych, co możemy uczynić za pomocą operatorów: eq, ge, gt, le, lt ,ne.  Poniższa tabela prezentuje wszystkie możliwości.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Liczby !! Łańcuchy !! Opis&lt;br /&gt;
|-&lt;br /&gt;
| == || eq || równe&lt;br /&gt;
|-&lt;br /&gt;
| != || ne || różne&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt; || lt || mniejsze niż&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt; || gt || większe niż&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;= || ge || większe niż lub równe&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;= || le || mniejsze niż lub równe&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Podejmowanie decyzji za pomocą if else ===&lt;br /&gt;
&lt;br /&gt;
Teraz kiedy umiemy porównać dane, możemy się nauczyć w jaki sposób decydować co ma się stać kiedy coś będzie większe, mniejsze lub równe czemuś innemu. Do tego celu możemy użyć polecenia if. W celu użycia konstrukcji warunkowej if musimy użyć nawiasów klamrowych w celu odsepasrowania bloków kodu, który jest wykonany wtedy, gdy coś spełni lub nie spełni warunku if. Jeżeli chcemy dać alternatywę dla wykonywanego programu, to używamy dodatkowej składni else. Ogólny schemat działania jest następujący&lt;br /&gt;
&lt;br /&gt;
  if (dane &amp;lt;= dane2)&lt;br /&gt;
  {&lt;br /&gt;
      jakis wynik&lt;br /&gt;
    }&lt;br /&gt;
    else&lt;br /&gt;
    {&lt;br /&gt;
      jakis inny wynik&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
Przykład możemy zobaczyć poniżej&lt;br /&gt;
&lt;br /&gt;
 #! /usr/bin/perl&lt;br /&gt;
 $USER = 'testowy';&lt;br /&gt;
 if ($USER eq 'root')&lt;br /&gt;
 {&lt;br /&gt;
  print &amp;quot;Witaj super użytkowniku $USER \n&amp;quot;;&lt;br /&gt;
 }&lt;br /&gt;
 else&lt;br /&gt;
 {&lt;br /&gt;
  print &amp;quot;Nie jesteś super użytkownikiem, tylko $USER \n&amp;quot;;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Możliwe jest również zagnieżdżanie konstrukcji warunkowej if np&lt;br /&gt;
&lt;br /&gt;
    if (dane &amp;lt;= dane2)&lt;br /&gt;
&lt;br /&gt;
    {&lt;br /&gt;
&lt;br /&gt;
    if ( jakis wynik &amp;lt; inny wtynik )&lt;br /&gt;
&lt;br /&gt;
    {&lt;br /&gt;
&lt;br /&gt;
    jeszcze inny wynik&lt;br /&gt;
&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    ....&lt;br /&gt;
&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    else&lt;br /&gt;
&lt;br /&gt;
    ...&lt;br /&gt;
&lt;br /&gt;
Narazie przykłady mogą wydawać się mało praktyczne, ale z biegiem czasu będziemy na pewno potrafilii tworzyć bardziej praktyczne programy.&lt;br /&gt;
 &lt;br /&gt;
=== Pobieranie danych ze standardowego wejścia ===&lt;br /&gt;
&lt;br /&gt;
W celu pobrania danych od użytkownika musimy posłużyć się operatorem , perl w tym momencie zaczeka na wprowadzenie danych przez usera aż do momentu, gdy zostanie naciśnięty klawisz nowego wiersza np enter.  W tym momencie dane zostaną wysłane do programu. Prosty przykład widzimy poniżej&lt;br /&gt;
&lt;br /&gt;
 #! /usr/bin/perl&lt;br /&gt;
 print &amp;quot;Podaj liczbe od 1 do 9:&amp;quot;;&lt;br /&gt;
 $liczba_usera = ;&lt;br /&gt;
 $automat = '5';&lt;br /&gt;
 print &amp;quot;Liczba uzytkownika = $liczba_usera&amp;quot;;&lt;br /&gt;
 print &amp;quot;Liczba automatu =   $automat\n\n&amp;quot;;&lt;br /&gt;
 if ($automat == $liczba_usera)&lt;br /&gt;
 {nie, przerwe mam:P&lt;br /&gt;
  print &amp;quot;Zgadłeś liczbę automatu $automat \n&amp;quot;;&lt;br /&gt;
 }&lt;br /&gt;
  else&lt;br /&gt;
 {&lt;br /&gt;
  print &amp;quot;Podana przez ciebie liczba $liczba_usera jest nieprawidłowa! \n&amp;quot;;&lt;br /&gt;
 }&lt;br /&gt;
  &lt;br /&gt;
Pobieranie danych od użytkownika w powyższy sposób ma jeden feler, tzn pobierając znaki ze standardowego wejścia pobieramy również znak nowego wiersza co może wywołać w niektórych przypadkach nieoczekiwane wyniki. Aby naprawić ten błąd możemy posłużyć się operatorem chomp.&lt;br /&gt;
&lt;br /&gt;
Operator '''chomp''' usuwa znak nowego wiersza z pobranego łańcucha danych można to zaobserwować na poniższym przykładzie&lt;br /&gt;
&lt;br /&gt;
 #! /usr/bin/perl&lt;br /&gt;
 print &amp;quot;Podaj login:&amp;quot;;&lt;br /&gt;
 $user = ;&lt;br /&gt;
 $u = 'root';&lt;br /&gt;
 print &amp;quot;Nazwa usera = $user&amp;quot;;&lt;br /&gt;
 print &amp;quot;Nazwa programu =   $u\n\n&amp;quot;;&lt;br /&gt;
 chomp($user);&lt;br /&gt;
 if ($u eq $user)&lt;br /&gt;
 {&lt;br /&gt;
  print &amp;quot;Jesteś super userem $u \n&amp;quot;;&lt;br /&gt;
 }&lt;br /&gt;
  else&lt;br /&gt;
 {&lt;br /&gt;
  print &amp;quot;Jestes zwyklym uzytkownikiem $user \n&amp;quot;;&lt;br /&gt;
 } &lt;br /&gt;
 &lt;br /&gt;
W celu testowym możemy zobaczyć co się stanie jeśli odpalimy ten sam program wymazując tylko linijkę chomp($user);&lt;br /&gt;
&lt;br /&gt;
=== Pętla while ===&lt;br /&gt;
&lt;br /&gt;
Piękno programowania polega na tym, że najnudniejsze operacje wykonuje komputer, a nie my ;-) Do tego celu możemy użyć jednej z wielu pętli jaką jest while. W tym przypadku blok kodu będzie się wykonywać tak długo, aż nie zostanie spełniony jakiś warunek. Jako że najlepiej zobaczyć i zrozumieć działanie na przykładowym kodzie poniżej przedstawiam kolejny przykład z wykorzystaniem pętli while.&lt;br /&gt;
&lt;br /&gt;
 #! /usr/bin/perl&lt;br /&gt;
 $liczba = 0;&lt;br /&gt;
 while ($liczba &amp;lt; 10)&lt;br /&gt;
 {&lt;br /&gt;
  $liczba +=1;&lt;br /&gt;
  print &amp;quot;wartosc: $liczba \n&amp;quot;;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Na początku deklarujemy zmienną $liczba, aby później było można stworzyć warunek, który będzie mógł przerwać działanie pętli.&lt;br /&gt;
&lt;br /&gt;
W 5 wierszu mamy tzw argument przypisania czyli $liczba +=1; jest to to samo co zapis $liczba = $liczba + 1;. Wiersz ten dodaje do zmiennej $liczba wartość 1 co jeden skok pętli aż do momentu, gdy wartość zmiennej  $liczba osiągnie 10, wtedy warunek się spełni i pętla zakończy swoje działanie.&lt;br /&gt;
&lt;br /&gt;
=== Przypisywanie listy ===&lt;br /&gt;
&lt;br /&gt;
Przypisanie listy wartości do zmiennych odbywa się w prawie taki sam sposób jak zwykłe przypisanie wartości do zmiennej.&lt;br /&gt;
&lt;br /&gt;
 ($wart1, $wart2, $wart3) = (&amp;quot;zawartosc1&amp;quot;, &amp;quot;zawartosc2&amp;quot;, &amp;quot;zawartosc3&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
wszystkim zmiennym po lewej stronie została przypisana odpowiednia wartość. W tym momencie, aby odczytać dane z tak przygotowanej listy wykonujemy znany już nam bardzo dobrze odczyt danych za pomocą polecenia print&lt;br /&gt;
&lt;br /&gt;
 print $wart2. &amp;quot;\n&amp;quot;;&lt;br /&gt;
 print $wart3. &amp;quot;\n&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
=== Tablice ===&lt;br /&gt;
&lt;br /&gt;
Tablica podobnie jak w innych językach programowania np C/C++, jest swego rodzaju zmienną, która zawiera uporządkowaną listę wartości. Każdy element tak uporządkowanej listy jest oddzielną zmienną, która posiada przypisany indeks. Tablice indeksowana jest zawsze od 0! W ten sposób wiemy, że zawsze pierwszy element tablicy będzie miał indeks 0.&lt;br /&gt;
&lt;br /&gt;
Aby zapisać dane w tablicy, możemy do każdego indeksu przypisać dane z osobna lub posłużyć się pętlą. Poniżej użyję pierwszej metody aby czytelnik łatwiej mógł zrozumieć działanie tablic&lt;br /&gt;
&lt;br /&gt;
 $tab[0] = &amp;quot;pierwsza pozycja tablicy, indeks 0&amp;quot;;&lt;br /&gt;
 $tab[1] = &amp;quot;druga pozycja tablicy, indeks 1&amp;quot;; &lt;br /&gt;
 $tab[2] = &amp;quot;trzecia pozycja tablicy, indeks 2&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
Każda z pozycji tablicy może zawierać zarówno łańcuch znakowy jak i liczby&lt;br /&gt;
&lt;br /&gt;
Aby dostać się do wybranej wcześniej zadeklarowanej tablicy wystarczy podać nazwę tablicy oraz indeks&lt;br /&gt;
&lt;br /&gt;
 print $tab[0]; &lt;br /&gt;
&lt;br /&gt;
Jeżeli chcielibyśmy wyświetlić całą tablicę tzn wszystkie pozycje jej listy możemy użyć operatora @ i pominąć nawiasy kwadratowe [ ]. Prostym przykładem użycia tego operatora może być&lt;br /&gt;
&lt;br /&gt;
 $tab[0] = &amp;quot;pierwsza pozycja tablicy, indeks 0&amp;quot;;&lt;br /&gt;
 $tab[1] = &amp;quot;druga pozycja tablicy, indeks 1&amp;quot;; &lt;br /&gt;
 $tab[2] = &amp;quot;trzecia pozycja tablicy, indeks 2&amp;quot;; &lt;br /&gt;
 print @tab;&lt;br /&gt;
&lt;br /&gt;
jak możemy zaobserwować ostatnia linijka kodu print @tab; wyświetli nam całą listę tablicy tab.&lt;br /&gt;
&lt;br /&gt;
Kolejnym udogodnieniem w perlu jest edytowanie tablic bez potrzeby znajomości indeksów, tzn mowa o operatorach pop oraz push.&lt;br /&gt;
&lt;br /&gt;
==== Operator pop ====&lt;br /&gt;
&lt;br /&gt;
Operator pop usuwa i zwraca ostatni element tablicy. Możemy to zaobserwować na poniższym przykładzie&lt;br /&gt;
&lt;br /&gt;
 #! /usr/bin/perl&lt;br /&gt;
 $tab[0] = &amp;quot;pierwsza pozycja tablicy, indeks 0\n&amp;quot;;&lt;br /&gt;
 $tab[1] = &amp;quot;druga pozycja tablicy, indeks 1\n&amp;quot;;&lt;br /&gt;
 $tab[2] = &amp;quot;trzecia pozycja tablicy, indeks 2\n\n&amp;quot;;&lt;br /&gt;
 print @tab;&lt;br /&gt;
 pop @tab;&lt;br /&gt;
 print @tab;&lt;br /&gt;
&lt;br /&gt;
Jak widzimy ostatnia linika kodu po wykonaniu zwróciła już tylko dwie pierwsze pozycje tablicy, ostatnia została usunięta.&lt;br /&gt;
&lt;br /&gt;
==== Operator push ====&lt;br /&gt;
&lt;br /&gt;
Co innego jeśli  chodzi o operator push, który pozwala nam na dodanie wartości na samym końcu tablicy. Przykładowy programik pownien wszystko wyjaśnić ;-)&lt;br /&gt;
&lt;br /&gt;
 #! /usr/bin/perl&lt;br /&gt;
 $tab[0] = &amp;quot;pierwsza pozycja tablicy, indeks 0\n&amp;quot;;&lt;br /&gt;
 $tab[1] = &amp;quot;druga pozycja tablicy, indeks 1\n&amp;quot;;&lt;br /&gt;
 $tab[2] = &amp;quot;trzecia pozycja tablicy, indeks 2\n\n&amp;quot;;&lt;br /&gt;
 print @tab;&lt;br /&gt;
 push @tab, $tab[1];&lt;br /&gt;
 print @tabo;&lt;br /&gt;
 push @tab, 1000;&lt;br /&gt;
 print @tab;&lt;br /&gt;
&lt;br /&gt;
W powyższym przykładzie w lini push @tab, @tab[1]; dodaliśmy na koniec tablicy jedną z pozycji tablicy $tab o indeksie 1. Kolejnym przykładem jest dodanie do tablicy wartości w postaci 1000 w lini push @tab, 1000;.&lt;br /&gt;
&lt;br /&gt;
'''UWAGA''' analogicznie do operatorów pop i push działają operatory shift i unshift. Operatory różnią się tym, że pop i push działają na końcu tablicy a operatory shift i unshift działają na początku tablicy. W tym przypadku unshift jest operatorem, który może dodać dane na początku tablicy a operator shift jest tym, który może usunąć dane z początku tablicy.&lt;br /&gt;
&lt;br /&gt;
 #! /usr/bin/perl&lt;br /&gt;
 $tab[0] = &amp;quot;pierwsza pozycja tablicy, indeks 0\n&amp;quot;;&lt;br /&gt;
 $tab[1] = &amp;quot;druga pozycja tablicy, indeks 1\n&amp;quot;;&lt;br /&gt;
 $tab[2] = &amp;quot;trzecia pozycja tablicy, indeks 2\n\n&amp;quot;;&lt;br /&gt;
 print @tab;&lt;br /&gt;
 shift @tab;&lt;br /&gt;
 print @tab;&lt;br /&gt;
 unshift @tab, 1000;&lt;br /&gt;
 print @tab;&lt;br /&gt;
 unshift @tab, $tab[1];&lt;br /&gt;
 print @tab;&lt;br /&gt;
&lt;br /&gt;
Powyższy przykład działa analogicznie do omawianego przykładu z operatorów pop i push tyle tylko, że zmiany zachodzą na początku tablicy, a nie na jej końcu.&lt;br /&gt;
&lt;br /&gt;
=== Skrót qw ===&lt;br /&gt;
&lt;br /&gt;
Jak pięknie możemy sobie uprościć pracę z tablicami w perlu za pomocą skrótu qw. Skrót qw możemy użyć zawsze gdy chcemy utworzyć tablice z wieloma pozycjami,a nie chcemy tracić czasu na pisania i indeksowanie każdej pozycji tablicy. Wykorzystanie tego skrótu pokazuje poniższy przykład&lt;br /&gt;
&lt;br /&gt;
 #! /usr/bin/perl&lt;br /&gt;
 @tab = qw{pozycja1 pozycja2 pozycja3 pozycja4};&lt;br /&gt;
 print @tab[1];&lt;br /&gt;
 print &amp;quot;\n&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
Jak widać w drugiej linijce kodu została zadeklarowana tablica a następnie w trzeciej linijce odczytaliśmy 2 pozycję z zadeklarowanej tablicy (przypominam, że indeksy liczy się od 0 dlatego chociaż, że została wywołana pozycja z indeksem 1 to jest to druga pozycja z tablicy).&lt;br /&gt;
&lt;br /&gt;
=== Struktura foreach ===&lt;br /&gt;
&lt;br /&gt;
Umiemy już stworzyć własną tablicę na różne sposoby, umiemy również wyświetlić całą tablicę lub wskazane przez nas pozycję. Teraz nauczymy się jak przetworzyć całą listę tablicy. W tym celu perl udostępnia strukturę kontrolną foreach. Co taka pętla nam daje? foreach jest bardzo przydatną funkcją programowania w perlu, gdyż umożliwia nam automatyczne wykonanie napisanych przez nas instrukcji do każdej z pozycji listy.&lt;br /&gt;
&lt;br /&gt;
Poniższy przykład demonstruje program, który składa się z trzech pozycji, następnie lista wyświetlana jest za pomocą foreach a dodatkowo do każdej z pozycji dodawwany jest znak nowej lini oraz tabulacja.&lt;br /&gt;
&lt;br /&gt;
 #! /usr/bin/perl&lt;br /&gt;
 @tablica = qw/ pozycja1 pozycja2 pozycja3 /;&lt;br /&gt;
 foreach $zmienna (@tablica)&lt;br /&gt;
 {&lt;br /&gt;
        $zmienna = &amp;quot;\t$zmienna&amp;quot;;&lt;br /&gt;
        $zmienna .= &amp;quot;\n&amp;quot;;&lt;br /&gt;
 }&lt;br /&gt;
 print &amp;quot;Mamy następujące pozycje:\n&amp;quot;, @tablica;&lt;br /&gt;
&lt;br /&gt;
=== Sztuczka z $_ ===&lt;br /&gt;
&lt;br /&gt;
Programista nie zawsze musi wymyślać nowe zmienne do przeprowadzenia jakiejś operacji, gdyż może do tego celu użyć domyślnej zmiennej perla, jest nią oczywiście $_ . Najłatwiej pokazać o co chodzi na małym przykładzie&lt;br /&gt;
&lt;br /&gt;
 $_ = &amp;quot;domyślna zmienna perla\n&amp;quot;;&lt;br /&gt;
 print;&lt;br /&gt;
&lt;br /&gt;
Powyższa operacja jak nie trudno się domyśleć wypisze na ekranie domyślą zmienną, czyli akurat w tym przypadku będzie to tekst domyślna zmienna perla. Innym przykładem na wykorzystanie tego typu zmiennej może być następujący kod&lt;br /&gt;
&lt;br /&gt;
 #! /usr/bin/perl&lt;br /&gt;
 foreach (1..20)&lt;br /&gt;
 {&lt;br /&gt;
      print &amp;quot;Liczę do: $_ \n&amp;quot;;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
=== Operator reverse oraz sort ===&lt;br /&gt;
&lt;br /&gt;
==== Operator reverse ====&lt;br /&gt;
&lt;br /&gt;
Operator r'''everse''' jak sama nazwa wskazuje odwraca kolejność wyświetlanej listy. Przykład jest oczywisty ;-)&lt;br /&gt;
&lt;br /&gt;
 #! /usr/bin/perl&lt;br /&gt;
 @tab = qw/jeden dwa trzy cztery piec szesc siedem /;&lt;br /&gt;
 foreach $zmienna (@tab)&lt;br /&gt;
 {&lt;br /&gt;
      $zmienna = reverse($zmienna);&lt;br /&gt;
      $zmienna .= &amp;quot;\n&amp;quot;;&lt;br /&gt;
 }&lt;br /&gt;
 print &amp;quot;Wyświetlam w odwróconej formie:\n&amp;quot;, @tab;&lt;br /&gt;
 $tab2[0] = &amp;quot;1&amp;quot;;&lt;br /&gt;
 $tab2[1] = &amp;quot;2&amp;quot;;&lt;br /&gt;
 $tab2[2] = &amp;quot;3&amp;quot;;&lt;br /&gt;
 print @tab2;&lt;br /&gt;
 print &amp;quot;\n&amp;quot;;&lt;br /&gt;
 @tab2 = reverse(@tab2);&lt;br /&gt;
 print @tab2;&lt;br /&gt;
 print &amp;quot;\n&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
Przykład pokazuje dwa sposoby w jaki działa operator reverse, pierwszy odwraca kolejność znaków a drugi odwraca kolejność wyświetlania listy.&lt;br /&gt;
&lt;br /&gt;
==== Operator sort ====&lt;br /&gt;
&lt;br /&gt;
Operator sort sortuje wynik w porządku z kodu ASCII. Oznaczza to że, liczby zawsze będą przed innymi znakami, wszystkie wielkie litery znajdują się przed małymi literami, znaki z białej listy czyli spacje, tabulacje znajdują się w jednej grupie jak i drugiej.  Przykład&lt;br /&gt;
&lt;br /&gt;
 #! /usr/bin/perl&lt;br /&gt;
 @tab = qw/ jeden dwa trzy cztery piec szesc /;&lt;br /&gt;
 @tab = sort @tab;&lt;br /&gt;
 print @tab, &amp;quot;\n&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
=== Procedury ===&lt;br /&gt;
&lt;br /&gt;
Procedury są to kawałki kodu odpowiedzialne za wykonanie danego mu działania, które możemy użyć kilkakrotnie w każdym z miejsc naszego programu. Plusem tego typu działania jest to, że nie musimy pisać kilkakrotnie tych samych funkcji, które robią to samo, wystarczy użyć raz napisanej procedury. Aby zadeklarować procedure używamysłowa kluczowego sub oraz nazwy procedury.&lt;br /&gt;
&lt;br /&gt;
 #! /usr/bin/perl&lt;br /&gt;
 sub procedura&lt;br /&gt;
 {&lt;br /&gt;
         $a += 1;&lt;br /&gt;
         print &amp;quot;Wywołuje procedure $a\n&amp;quot;;&lt;br /&gt;
 }&lt;br /&gt;
 &amp;amp;procedura&lt;br /&gt;
 &amp;amp;procedura&lt;br /&gt;
 &amp;amp;procedura&lt;br /&gt;
 &amp;amp;procedura&lt;br /&gt;
&lt;br /&gt;
od lini 2 do 5 mamy zadeklarowaną procedurę za pomocą słowa kluczowego sub następnie występuje nazwa procedury procedura, należy zwrócić uwagę, że przy nazwie procedury nie występuje żaden inny znak typu @, $, &amp;amp;. W lini trzeciej otwieramy nawias klamrowy i poniżej widzimy właściwe działanie tzn to co wykonuje nasza procedura. Oczywiście kod procedury może być o wiele bardziej rozbudowany. Całą procedurę zamykamy nawiasem klamrowym.&lt;br /&gt;
&lt;br /&gt;
A co z wywołaniem procedury? Jest to dość prosta sprawa, gdyż wystarczy użyć polecenia&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;procedura&lt;br /&gt;
&lt;br /&gt;
No i dla ugruntowania informacji jako, że uważam, że najlepiej jest uczyć się na przykładach to jeszcze jedna porcja kodu ;-)&lt;br /&gt;
&lt;br /&gt;
 #! /usr/bin/perl&lt;br /&gt;
 sub procedura1&lt;br /&gt;
 {&lt;br /&gt;
           print &amp;quot;podaj pierwszą liczbe:&amp;quot;;&lt;br /&gt;
           $a = ;&lt;br /&gt;
 }&lt;br /&gt;
 sub procedura2&lt;br /&gt;
 {&lt;br /&gt;
           print &amp;quot;\nPodaj drugą liczbę:&amp;quot;;&lt;br /&gt;
           $b = ;&lt;br /&gt;
 }&lt;br /&gt;
 $pierwsza = &amp;amp;procedura1;&lt;br /&gt;
 $druga = &amp;amp;procedura2;&lt;br /&gt;
 print &amp;quot;procedura1: $pierwsza\n&amp;quot;;&lt;br /&gt;
 print &amp;quot;procedura2: $druga\n&amp;quot;;&lt;br /&gt;
 $wynik = $pierwsza + $druga;&lt;br /&gt;
 print  &amp;quot;Suma: $wynik\n&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
=== Argumenty inny sposób ===&lt;br /&gt;
&lt;br /&gt;
Jak inaczej można przekazać argumenty dla procedur lub innych funkcji naszego programu? Chciałbym w tym miejscu pokazać całkiem ciekawą ale niezbyt czystą funkcję programowania w perlu.&lt;br /&gt;
&lt;br /&gt;
 $a = &amp;amp;liczby(1, 2, 3, 4, 5);&lt;br /&gt;
&lt;br /&gt;
Taki zapis perl potraktuje jako specjalne wartości i przechowa je na czas trwania procedury w specjalnej zmiennej tablicowej @_ .Jak dobrze pamiętamy tablice składają się z danych, które są uporządkowane w listach do których mamy dostęp w indeksach i tak samo jest w tej sytuacji. Aby dostać się do tak zadeklarowanych wartości musimy użyć np $_[0] będzie to pierwsza wartość druga będzie $_[1] itd. Aby w pełni zrozumieć działanie tego mechanizmu przyglądnijmy się takiemu przykładowi&lt;br /&gt;
&lt;br /&gt;
 #! /usr/bin/perl&lt;br /&gt;
 $a = &amp;amp;max(10, 20, 30, 40);&lt;br /&gt;
 sub max&lt;br /&gt;
 {&lt;br /&gt;
 if ($_[0] &amp;gt; $_[1])&lt;br /&gt;
      {&lt;br /&gt;
           print $_[0];&lt;br /&gt;
      }&lt;br /&gt;
 else&lt;br /&gt;
      {&lt;br /&gt;
            print $_[1];&lt;br /&gt;
      }&lt;br /&gt;
 }&lt;br /&gt;
 &amp;amp;max&lt;br /&gt;
&lt;br /&gt;
Dlaczego wyżej napisałem, że ta metoda nie jest zbyt &amp;quot;czysta&amp;quot;. Jak pewnie zauważyliśmy w tablicy max mamy zadeklarowane liczby 10, 20, 30, 40 a korzystamy tylko z 10 i 20 więc cała reszta jest nie wykorzystana. Dopóki o tym pamiętamy i świadomie używamy takiego mechanizmu to powinno być wszystko dobrze jednak radziłbym w takich miejscach wstawiać odpowiednie komentarze ;-)&lt;br /&gt;
&lt;br /&gt;
=== Zmienna leksykalna my ===&lt;br /&gt;
&lt;br /&gt;
W tym miejscu chciałbym jedynie wyjaśnić co to jest zmienna leksykalna my, gdyż w przykładach poniżej będzie wiele razy użyta ta właśnie zmienna dlatego nie ma sensu pokazywania tutaj przykładów. Jeżeli nie zrozumiesz od razu o co chodzi to sie nie przejmuj poniżej będziesz miał jeszcze wiele razy na to szansę ;-) No to do pracy :-)&lt;br /&gt;
Zmienne leksykalne my używamy wtedy gdy, chcemy powiedzieć kompilatorowi, że dana zmienna powinna być prywatna lub mieć ograniczony zasięg np jedynie do danego bloku. W tym momencie żadna inna zmienna o tej samej nazwie nie będzie mogła być zastąpiona inną wartością, która przechowywana jest w zmiennej o tej samej nazwie. Co lepsze taka zasada działa również na odwrót tzn, że żadna inna zmienna nie zmieni tak zadeklarowanej zmiennej w danym bloku.&lt;br /&gt;
&lt;br /&gt;
 '''HOWTO W TRAKCIE PISANIA''' &lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;google1 style=&amp;quot;4&amp;quot;&amp;gt;&amp;lt;/google1&amp;gt;&lt;/div&gt;</summary>
		<author><name>Slawek</name></author>	</entry>

	</feed>