Added upstream from http://ftp.icm.edu.pl/pub/loglan/
[loglan.git] / HTML / biul2.txt
1 <html>
2 <head>
3 <TITLE>Loglan'82  Biuletyn nr 2</TITLE>
4
5
6 </head>
7 <body>
8 <h3>Instytut Informatyki Politechniki Bia³ostockiej z  
9 przyjemno\9csci¹ zawiadamia, ¿e od p
10 pewnego czasu dzia³a w sieci Internetu\r
11 \r
12 repozytorium  jêzyka pogramowania obiektowego Loglan'82</h3>                                                                                                                                       \r
13 \r
14 \r
15  <H1>  <STRONG> Co? </STRONG>  </h1> 
16  <H2> Loglan'82 jest jêzykiem programowania obiektowego, 
17 wspó³bie¿nego, rozproszonego o niepowtarzalnych walorach. </H2> 
18 \r
19  <P> 
20 Udostêpniamy: \r
21
22 <UL>
23 <LI>kompilatory+interpretatory Loglanu na róne platformy, w tym sieciowe,\r
24 dokumentacjê,\r
25 <li>zbiór przyk³adów,\r
26 <li>edytory:
27
28  LOTEK i edytor strukturalny (tylko dla \9crodowiska DOS),\r
29 \8f<li>RZRÓD£A!\r
30 \r</ul>
31 Gdzie?                                                  Jak?\r
32         http://aragorn.pb.bialystok.pl                          dla WWW: Mosaic, Netscape, Lynx, ...\r
33 lub\r
34         ftp://aragorn.pb.bialystok.pl/pub/loglan                dla anonymous FTP\r
35 i jego lustrzane odbicia  (znacznie szybciej osi¹galne w sieci)\r
36               http://sunsite.icm.edu.pl/loglan/                 DZIEKUJEMY prof. Markowi Niezgódce \r
37               ftp://sunsite/icm.edu.pl/pub/loglan/                      i Wojtkowi Sylwestrzakowi  z ICM\r
38 \r
39               http://infpc1.univ-pau.fr/                                        ten server dzia³a od 1993\r
40         ftp://infpc1.univ-pau.fr/pub/loglan82                   \r
41 Zachêcamy do (bezp³atnego!) korzystania z naszej bazy wiedzy.\r
42 \r
43 Dlaczego?\r
44 \r
45 Uczelnie, jednostki badawcze, pracownicy uczelni i studenci, firmy softwareowe, etc. mog¹ wykorzystywaæ Loglan jako jêzyk programowania obiektowego:\r
46 \r
47 W dydaktyce programowania pocz¹tkowego, algorytmów i struktur danych, programowania obiektowego, programowania wspó³bie¿nego i rozproszonego, itd.\r
48 W szybkim tworzeniu prototypów du¿ych, skomplikowanych aplikacji.\r
49 W badaniach: jako narzêdzie badawcze, a tak¿e jako bogate \9fród³o ciekawych i wa¿nych problemów badawczych (http://aragorn.pb.bialystok.pl/loglan/openpbms.html).\r
50 \r
51 Loglan nie jest gorszy od innych jêzyków programowania obiektowego (por. http://aragorn.pb.bialystok.pl/loglan/tablica3.html )\r
52 Stosowanie Loglanu pozwola wyposa¿yæ uczelnie, pracowników, studentów itd. w licencjonowane  oprogramowanie, bez ¿adnych kosztów! Co wiêcej, stwarza do\9cæ rzadk¹ okazjê rozdawania studentom legalnie i za darmo oprogramowania wspieraj¹cego proces dydaktyczny. Nauczyciele i s³uchacze bêd¹ mogli wymieniaæ siê \9fród³ami programów loglanowskich i uzyskaj¹ te same wyniki bowiem Loglan jest  niezale¿ny od platformy i dzia³a tak samo w DOSie, Unixie, Atari ST (my\9climy te¿ o platformach MacIntosh i Amiga), w sieciach rozleg³ych Internet i lokalnych Novell.\r
53 \r
54 Jezyk oferuje niezwykle bogaty zestaw narzêdzi programowania obiektowego, ³¹cznie z obiektami-procesami rozproszonymi w sieci komputerowej. . Procesy komunikuj¹ siê w sposób ca³kowicie obiektowy: dwa procesy wspólnie realizuj¹ jak¹\9c metodê jednego z dwu procesów wg pewnego protoko³u, jest to obce wywo³anie  inaczej alien call zaproponowany i zrealizowany przez B. Ciesielskiego w r.1988. Wszystkie znane mechanizmy synchronizacji i komunikacji procesów sprowadzaj¹ siê do mechanizmu alien call w prosty i tani sposób.\r
55 UWAGA.\r
56 Ostatnio reklamuja siê jêzyki przyblizaj¹ce siê do wysokiego standardu rozwi¹zañ opracowanych dla Loglanu. Mo¿emy jednak przewidywac, ¿e w bie¿¹cym stuleciu nie pojawi siê nowy istotnie lepszy od Loglanu jêzyk programowania obiektowego. Zalety naszych rozwiazañ zostan¹ nale¿ycie docenione w odleg³ej jeszcze przysz³o\9cci, gdy jaka\9c bogata firma zechce promowaæ "swoje" odkrycie.  Rozwi¹zania Loglanu wspieraj¹ siê  wynikami badañ przeprowadzonych przez zespó³ profesorów A. Kreczmara, A. Salwickiego. (por. credits.html) Czy mo¿na oczekiwaæ ¿e jaka\9c, nawet bogata, firma zainwestuje w potrzebne badania?\r
57 KONIEC UWAGI.\r
58 Programowanie w Loglanie jest znacznie ³atwiejsze ni¿ w innych jêzykach programowania obiektowego (por http://aragorn.pb.bialystok.pl/loglan/quick.htm). \r
59 \r
60 Programowanie w Loglanie jest o wiele bezpieczniejsze ni¿ w innych jêzykach programowania:\r
61 kompilator wykrywa wiele b³êdów (tak¿e tych nie dostrzeganych przez inne kompilatory), i opisuje nature i miejsce b³êdów,\r
62 wiele b³êdów jest wykrywanych i sygnalizowanych w trakcie wykonywania programu (b³êdy takie s¹ lokalizowane w tekscie programu \9fród³owego i czytelnie opisane),\r
63 zarz¹dzanie zasobami pamiêciowymi jest bezpieczne i mocne,\r
64 np. programista nie musi siê obawiaæ gro\9fby trudnego do wykrycia b³êdu "wisz¹cych referencji":\r
65 PRZYKLAD    (w Pascalu lub C++)\r
66 Niech x, y, z bêd¹ zmiennymi wskazuj¹cymi na rekord lub obiekt typu T.\r
67 Po wykonaniu instrukcji dispose(y) lub odp. free(y) warto\9cci¹ zmiennej y jest wska\9fnik nil do pustego obiektu. Wska\9fniki x i z nadal pokazuj¹ na pole pamiêci zajmowane przez nieistniej¹cy ju¿ obiekt. Po wykonaniu instukcji new lub malloc to samo pole mo¿e byæ wskazywane przez zmienn¹ u jako obiekt typu T'. \r
68 Porównaj to z aksjomatem Loglanu\r
69                         {(x<>none&y=x&z=x) ( [kill(y)](x=y=z=none)}\r
70 Jego sens jest oczywisty. Warto nadmieniæ, ¿e 1° koszt tej dealokacji obiektu x nie zale¿y od liczby wska\9fników do obiektu, nie musisz o tym mysleæ 2° system sygnalizuje wszelkie próby dostêpu do informacji w obiekcie, który (ju¿/jeszcze) nie istnieje.\r
71 ponadto programista mo¿e sam zaprojektowaæ reakcjê na b³êdy i na sygna³y podnoszone przez program w trakcie jego realizacji.\r
72 \r
73 NIE PRZEGAP!\r
74 Porównaj sam, Loglan i inne jêzyki programowania i wyrób sobie swój w³asny pogl¹d w tej sprawie,\r
75 Policz: jedna licencja na kompilator jêzyka pretenduj¹cego do miana obiektowo\9cci to XXX z³ razy ilo\9cæ stanowisk pracy w twej uczelni i u studentów. Ile to by kosztowa³o?\r
76 Zauwa¿! w jednym jêzyku programowania oferujemy Ci komplet narzêdzi:\r
77 klasy i obiekty, wspó³programy, procesy, dziedziczenie i zagnie¿dzanie modu³ów,  ochronê atrybutów prywatnych obiektów wg ¿yczenia twórcy klasy, deklaracje sygna³ów i obs³ugê przerwañ i sygna³ów,  wiele sposobów na tworzenie modu³ów generycznych - sparametryzowanych typem danych, dziedziczenie ne tylko w klasach ale w ka¿dym rodzaju modu³u: funkcji, procedurze, bloku, zspó³programie, procesie .\r
78 Uwierz nam! jêzyki o podobnych w³asno\9cciach zostan¹ odkryte w Ameryce dopiero za parê lat. Chcesz czekaæ?\r
79 Zrób sobie wieloprocesorow¹, sieciow¹, virtualn¹ maszynê Loglanowsk¹! (Tanio! oto jedna z recept: we\9f tyle PC ile zdo³asz, po³¹cz je w sieæ lokaln¹, zainstaluj Loglan. )\r
80 Zarób na Loglanie! Mo¿esz go sprzedawaæ, nie mamy nic przeciw temu i nie ¿¹damy niczego od Ciebie. Musisz tylko zachowaæ informacjê o prawach autorskich w sprzedawanych przez Ciebie kopiach. Tak jak to siê dzieje (lub jak powinno siê dziaæ) w przypadku TEXa, Linuxa, produktów GNU, etc. \r
81 \r
82 Przekonaj siê lub znajd\9f s³aby punkt w naszej argumentacji. Napisz nam o Twoich zastrze¿eniach mailto:salwicki@aragorn.pb.bialystok.pl\r
83 Nie przejd\9f obojêtnie wobec naszej oferty bo byæ mo¿e przegapisz co\9c co ma dla Ciebie znaczenie. Je\9cli masz j¹ odrzuciæ to zrób to \9cwiadomie, na podstawie rzeczowych przes³anek. (Napisz nam o Twych zastrze¿eniach.)\r
84 \r
85 Czy argument "to siê nie przyjmie" ma tu istotne znaczenie? \r
86 a) je\9cli prowadzisz zajêcia dydaktyczne lub jestes ich s³uchaczem: to zauwa¿, ¿e ¿aden inny\r
87 jêzyk programowania nie dostarczy Ci tak w³a\9cciwej podstawy do studiowania zjawisk zwi¹zanych z obiektami. Np. temat "modu³y generyczne" w jêzyku C++ sprowadza siê do szablonów (ang. template). W Loglanie znamy kilkana\9ccie ró¿nych rowi¹zañ tego problemu. A same szablony maj¹ wiêcej wad ni¿ tego mo¿na by oczekiwaæ. \r
88 Po Loglanie mo¿na nauczaæ jakiegokolwiek jêzyka programowania znacznie szybciej i wydajniej. Wystarcz¹ 2 popo³udnia by nauczyæ C++, Smalltalka lub innego jêzyka z obiektami. (A w³a\9cciwie dlaczego naucza siê Pascala a nie Loglanu?) \r
89 b) je\9cli tworzysz swoje w³asne oprogramowanie i ma ono byæ w³¹czone w wiêkszy system ju¿ istniej¹cych modu³ów to pozostañ przy wybranym jêzyku progamowania. Rozwa¿ jednak mo¿liwo\9cæ napisania najpierw prototypu Twego oprogramowania w Loglanie i sprawdzenia jego zgodno\9cci ze specyfikacj¹ (poprzez walidacjê lub weryfikacjê) a potem przekodowania do C czy C++1. Prototyp powinien powstaæ trzy razy szybciej. \r\r\rWspomnieæ o nowo\9cci: sieæ maszyn DOSowych mo¿e realizowaæ maszynê wieloprocesorow¹\r
90 \r
91 Wspomnieæ o tym, ¿e chocia¿ Loglan jest "samoróbk¹" uczelnian¹ to i tak mo¿e byæ u¿ywany przez wielu, w odró¿nieniu od samochodu.\r
92 \r
93 \r
94 \r
95 1 Wspomnijmy tu o eksperymentalnym programie L2C t³umacz¹cym z Loglanu na C jaki powsta³ parê lat temu na Uniwersytecie \8cl¹skim.\r\r
96
97 </body>
98 </html>p