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  przyjemno\9csci¹ zawiadamia, ¿e od pewnego czasu dzia³a w sieci Internetu\r
9 \r
10 repozytorium   jêzyka pogramowania obiektowego Loglan'82</h3>                                                                                                                                      \r
11 \r
12 \r
13 Co? Loglan'82 jest jêzykiem programowania obiektowego, wspó³bie¿nego, rozproszonego o niepowtarzalnych walorach.\r
14 Udostêpniamy: \r
15 kompilatory+interpretatory Loglanu na róne platformy, w tym sieciowe,\r
16 dokumentacjê,\r
17 zbiór przyk³adów,\r
18 edytory: LOTEK i edytor strukturalny (tylko dla \9crodowiska DOS),\r
19 \8fRÓD£A!\r
20 \r
21 Gdzie?                                                  Jak?\r
22         http://aragorn.pb.bialystok.pl                          dla WWW: Mosaic, Netscape, Lynx, ...\r
23 lub\r
24         ftp://aragorn.pb.bialystok.pl/pub/loglan                dla anonymous FTP\r
25 i jego lustrzane odbicia  (znacznie szybciej osi¹galne w sieci)\r
26               http://sunsite.icm.edu.pl/loglan/                 DZIEKUJEMY prof. Markowi Niezgódce \r
27               ftp://sunsite/icm.edu.pl/pub/loglan/                      i Wojtkowi Sylwestrzakowi  z ICM\r
28 \r
29               http://infpc1.univ-pau.fr/                                        ten server dzia³a od 1993\r
30         ftp://infpc1.univ-pau.fr/pub/loglan82                   \r
31 Zachêcamy do (bezp³atnego!) korzystania z naszej bazy wiedzy.\r
32 \r
33 Dlaczego?\r
34 \r
35 Uczelnie, jednostki badawcze, pracownicy uczelni i studenci, firmy softwareowe, etc. mog¹ wykorzystywaæ Loglan jako jêzyk programowania obiektowego:\r
36 \r
37 W dydaktyce programowania pocz¹tkowego, algorytmów i struktur danych, programowania obiektowego, programowania wspó³bie¿nego i rozproszonego, itd.\r
38 W szybkim tworzeniu prototypów du¿ych, skomplikowanych aplikacji.\r
39 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
40 \r
41 Loglan nie jest gorszy od innych jêzyków programowania obiektowego (por. http://aragorn.pb.bialystok.pl/loglan/tablica3.html )\r
42 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
43 \r
44 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
45 UWAGA.\r
46 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
47 KONIEC UWAGI.\r
48 Programowanie w Loglanie jest znacznie ³atwiejsze ni¿ w innych jêzykach programowania obiektowego (por http://aragorn.pb.bialystok.pl/loglan/quick.htm). \r
49 \r
50 Programowanie w Loglanie jest o wiele bezpieczniejsze ni¿ w innych jêzykach programowania:\r
51 kompilator wykrywa wiele b³êdów (tak¿e tych nie dostrzeganych przez inne kompilatory), i opisuje nature i miejsce b³êdów,\r
52 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
53 zarz¹dzanie zasobami pamiêciowymi jest bezpieczne i mocne,\r
54 np. programista nie musi siê obawiaæ gro\9fby trudnego do wykrycia b³êdu "wisz¹cych referencji":\r
55 PRZYKLAD    (w Pascalu lub C++)\r
56 Niech x, y, z bêd¹ zmiennymi wskazuj¹cymi na rekord lub obiekt typu T.\r
57 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
58 Porównaj to z aksjomatem Loglanu\r
59                         {(x<>none&y=x&z=x) ( [kill(y)](x=y=z=none)}\r
60 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
61 ponadto programista mo¿e sam zaprojektowaæ reakcjê na b³êdy i na sygna³y podnoszone przez program w trakcie jego realizacji.\r
62 \r
63 NIE PRZEGAP!\r
64 Porównaj sam, Loglan i inne jêzyki programowania i wyrób sobie swój w³asny pogl¹d w tej sprawie,\r
65 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
66 Zauwa¿! w jednym jêzyku programowania oferujemy Ci komplet narzêdzi:\r
67 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
68 Uwierz nam! jêzyki o podobnych w³asno\9cciach zostan¹ odkryte w Ameryce dopiero za parê lat. Chcesz czekaæ?\r
69 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
70 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
71 \r
72 Przekonaj siê lub znajd\9f s³aby punkt w naszej argumentacji. Napisz nam o Twoich zastrze¿eniach mailto:salwicki@aragorn.pb.bialystok.pl\r
73 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
74 \r
75 Czy argument "to siê nie przyjmie" ma tu istotne znaczenie? \r
76 a) je\9cli prowadzisz zajêcia dydaktyczne lub jestes ich s³uchaczem: to zauwa¿, ¿e ¿aden inny\r
77 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
78 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
79 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
80 \r
81 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
82 \r
83 \r
84 \r
85 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
86
87 </body>
88 </html>p