Perl 6 Podstawy per6po.pdf

(498 KB) Pobierz
C:\Andrzej\PDF\ABC nagrywania p³yt CD\1 strona.cdr
IDZ DO
PRZYK£ADOW Y ROZDZIA£
Perl 6. Podstawy
SPIS TRECI
KATALOG KSI¥¯EK
Autorzy: Allison Randal,
Dan Sugalski, Leopold Totsch
T³umaczenie: Rafa³ Szpoton
ISBN: 83-7361-299-8
Tytu³ orygina³ u: Perl 6 Essentials
Format: B5, stron: 216
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
DODAJ DO KOSZYKA
Ksi¹¿ka „Perl 6. Podstawy” jest krótkim przegl¹dem projektu Perl 6, bêd¹cego
powszechnie oczekiwan¹, zupe³nie now¹ wersj¹ jêzyka programowania Perl. Projekt
ten znajduje siê wci¹¿ w fazie rozwoju i jest efektem wysi³ku ca³ej spo³ecznoci Perla,
maj¹cym na celu utrzymanie go poród jêzyków programowania XXI wieku.
Wiele osób wci¹¿ zaanga¿owanych jest w rozwój Perla 5; w tym samym czasie g³ówna
grupa programistów Perla rozpoczê³a pracê nad jêzykiem Perl 6, now¹, napisan¹
zupe³nie od podstaw wersj¹ jêzyka. Chocia¿ w wersji tej wci¹¿ utrzymana zostanie
filozofia Perla oraz jego powszechnie znana sk³adnia, to jednak wszystkie inne
elementy jêzyka s¹ ponownie analizowane i tworzone od podstaw.
Ksi¹¿ka „Perl 6. Podstawy” to przegl¹d bie¿¹cego stanu rozwoju jêzyka Perl dla
wszystkich dotychczasowych jego u¿ytkowników, jak równie¿ dla pocz¹tkuj¹cych
programistów, którzy swoje pierwsze programistyczne dowiadczenia wi¹¿¹ z Perlem.
Napisana przez cz³onków g³ównego zespo³u programistów jêzyka ksi¹¿ka prezentuje
wyjanienie ró¿nych etapów projektu, stanowi¹c jednoczenie materia³ referencyjny
dla programistów, którzy s¹ zainteresowani planowanymi zmianami, jak równie¿ dla
tych, którzy chcieliby przy³¹czyæ siê do projektu. Ksi¹¿ka ta z pewnoci¹ zaspokoi ich
ciekawoæ i uka¿e, w jaki sposób zmiany wprowadzone do jêzyka uczyni¹ z Perla
jeszcze potê¿niejsze i ³atwiejsze do stosowania narzêdzie. „Perl 6. Podstawy” stanowi
pierwsz¹ ksi¹¿kê oferuj¹c¹ mo¿liwoæ wejrzenia w kolejn¹ g³ówn¹ wersjê jêzyka Perl.
Stanowi ona niezbêdn¹ lekturê dla wszystkich osób zainteresowanych przysz³oci¹
tego doskona³ego narzêdzia.
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
O NOWOCIACH
ZAMÓW CENNIK
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
454022081.002.png 454022081.003.png 454022081.004.png
Przedmowa........................................................................................................................ 5
Rozdział 1. Przegld projektu.......................................................................................9
Narodziny jzyka Perl 6 .........................................................................................................................9
Pocztek…...............................................................................................................................................10
Trwajca misja........................................................................................................................................12
Rozdział 2. Rozwój projektu.......................................................................................17
Rozwój jzyka.........................................................................................................................................17
Rozwój maszyny Parrot........................................................................................................................19
Rozdział 3. Filozofia projektu.....................................................................................25
Czynniki lingwistyczne oraz poznawcze ..........................................................................................25
Problemy architektury..........................................................................................................................32
Rozdział 4. Składnia .....................................................................................................35
Zmienne...................................................................................................................................................36
Operatory................................................................................................................................................43
Struktury okre.lajce przepływ kontroli ...........................................................................................59
Procedury................................................................................................................................................66
Klasy oraz obiekty.................................................................................................................................71
Gramatyki oraz reguły..........................................................................................................................74
 
4
Spis treci
Rozdział 5. Struktury wewn$trzne.............................................................................83
Reguły projektu struktur wewntrznych...........................................................................................83
Architektura maszyny wirtualnej Parrot...........................................................................................84
Interpreter...............................................................................................................................................89
Operacje wej.cia-wyj.cia, zdarzenia, sygnały oraz wtki...............................................................95
Obiekty..................................................................................................................................................101
Funkcje zaawansowane ......................................................................................................................104
Konkluzja..............................................................................................................................................108
Rozdział 6. J$zyk symboliczny maszyny Parrot ...................................................109
Przygotowanie do pracy.....................................................................................................................109
Podstawy...............................................................................................................................................111
Praca z obiektami PMC.......................................................................................................................127
Przepływ sterowania...........................................................................................................................131
Stosy oraz ramki rejestrów.................................................................................................................134
Zmienne leksykalne oraz globalne ...................................................................................................137
Procedury..............................................................................................................................................141
Tworzenie testów.................................................................................................................................149
Krótki podrcznik PASM ...................................................................................................................151
Rozdział 7. Po,redni kompilator kodu....................................................................175
Przygotowanie do pracy.....................................................................................................................175
Przygotowanie do pracy.....................................................................................................................176
Przepływ sterowania...........................................................................................................................186
Procedury..............................................................................................................................................189
Parametry wiersza polece9 kompilatora IMCC .............................................................................194
Krótki podrcznik IMCC....................................................................................................................197
Skorowidz...................................................................................................................... 205
Filozofia projektu
Dzisiejsza praktyka jest czsto niczym wicej
ni tylko zaakceptowan postaci wczorajszej teorii
— Kenneth Pike
„Wprowadzenie do Tagemiki”
U podstaw kadego jzyka ley zestaw podstawowych idei nadajcych mu kierunek
rozwoju oraz okrelajcych jego przeznaczenie. Osoby pragnce zrozumie" wybory do-
konywane przez projektantów jzyka (dlaczego wybieraj t właciwo", a nie inn lub
okrelony sposób jej wyraenia), powinny najlepiej rozpocz" od przeledzenia rozu-
mowania lecego u podstaw tych wyborów.
Na jzyk Perl 6 oddziałuje unikatowy zestaw czynników. Sam jzyk jest głboko zako-
rzeniony w systemie Unix, oraz jego systemach pochodnych, co wywiera szczególny
wpływ na jego przydatno" oraz praktyczne zastosowania. Stanowi on efekt akademic-
kiej rywalizacji na polu nauk informatycznych oraz inynierii programowania, co budzi
ch" rozwizywania problemów we właciwy sposób, a nie za pomoc rodków dora.-
nych. Sam jzyk jest głboko przesiknity tradycjami lingwistyki oraz antropologii,
w zwizku z tym jako cel stawia si wygodn adaptacj do postaci uywanej przez
człowieka. Włanie te czynniki oraz jeszcze wiele innych definiuj kształt jzyka Perl
oraz kierunek jego rozwoju.
Czynniki lingwistyczne oraz poznawcze
Perl jest jzykiem ludzkim. Istnieje jednak wiele znaczcych rónic pomidzy Perlem
a jzykami naturalnymi w rodzaju jzyka angielskiego, francuskiego, niemieckiego itd.
Po pierwsze, został on skonstruowany w sposób sztuczny, a nie naturalny. Jego podsta-
wowe zastosowanie, czyli okrelenie zestawu instrukcji, którymi kierowa" si bdzie ma-
szyna, odzwierciedla jedynie ograniczony zakres czynnoci wystpujcych w yciu ludz-
kim. Niemniej jednak Perl jest jzykiem, którego ludzie uywaj do porozumiewania si.
454022081.001.png
26
Rozdział 3. Filozofia projektu
Wiele tych samych procesów umysłowych, które prowadz do formułowania myli w sło-
wie oraz pimie jest powielanych w postaci prowadzcej do utworzenia kodu. Proces
nauki uywania Perla jest bardzo podobny do nauki uywania drugiego jzyka. Istotne
s równie procesy umysłowe zwizane z czytaniem. Chocia podstawowym adresatem
kodu napisanego w jzyku Perl jest maszyna, bardzo czsto to ludzie musz odczyta"
kod podczas jego tworzenia, przegldania oraz utrzymywania.
Na wiele decyzji podejmowanych podczas projektowania Perla duy wpływ miały zało-
enia jzyków naturalnych. Poniej zostanie przedstawionych kilka najwaniejszych, to
znaczy tych, które powracaj wci podczas projektowania oraz tych, które wywarły
najwikszy wpływ podczas całego procesu.
Teoria złoonoci (teoria łóka wodnego)
Naturaln tendencj wystpujc w jzykach ludzkich jest utrzymywanie stałej ogólnej
złoonoci, gdy we.miemy pod uwag zarówno dwa róne jzyki, jak i zmiany danego
jzyka wraz z upływem czasu. Podobnie jak w przypadku łóka wodnego, jeeli zmniej-
szona zostanie złoono" w jednej czci jzyka, automatycznie zwikszy si ona w in-
nym miejscu. Jzyk z obszernym systemem d.wików (fonologi) mógłby mie" prostsz
składni. Jzyk majcy ograniczony zestaw d.wików mógłby mie" bardziej złoony
sposób tworzenia słów z mniejszych elementów (morfologi). 3aden jzyk nie jest skom-
plikowany w równym stopniu pod kadym z wymienionych wzgldów, poniewa był-
by zupełnie nieprzydatny. Podobnie — aden jzyk nie jest całkowicie prosty, poniewa
zbyt mała liczba rozrónie4 i moliwych do utworzenia kombinacji uczyniłaby go nie-
przydatnym w praktyce.
Ta sama zasada funkcjonuje w przypadku jzyków komputerowych. Wymagaj one za-
chowania stałej równowagi pomidzy złoonoci a prostot. Ograniczenie moliwych
operatorów do małego ich zestawu prowadzi do zwikszenia liczby metod oraz podpro-
cedur definiowanych przez uytkownika. Nie jest to a tak złe, lecz zachca do tworze-
nia kodu, który bdzie rozwlekły oraz trudny do odczytania. Z drugiej strony, jzyk,
który definiuje zbyt wiele operatorów, zachca do tworzenia kodu zawierajcego skom-
plikowane wiersze i jest tym samym równie trudny do odczytania. Doskonała równo-
waga ley gdzie porodku.
Reguła prostoty
Ogólnie mówic, preferowane s proste rozwizania. Prosta składnia jest łatwiejsza do
nauki, zapamitania, wykorzystania w praktyce oraz odczytania. Niemniej jednak reguła
ta znajduje si w cisłym zwizku z teori łóka wodnego. Jednym z niebezpiecze4stw,
któremu naley zapobiec jest uproszczenie w złym obszarze. Kolejnym jest błdne
uproszczenie oraz nadmierne uproszczenie. Niektóre problemy s złoone i wymagaj
złoonego rozwizania. Gramatyki jzyka Perl6 nie s proste. S one złoone na pozio-
mie jzyka, w sposób pozwalajcy na stosowanie prostszych rozwiza4 na poziomie
uytkownika.
Zgłoś jeśli naruszono regulamin