Thread View: pl.comp.lang.tcl
11 messages
11 total messages
Started by ZB
Fri, 13 Jun 2008 18:50
Tutorial: Przestrzenie nazw
Author: ZB
Date: Fri, 13 Jun 2008 18:50
Date: Fri, 13 Jun 2008 18:50
15 lines
929 bytes
929 bytes
S±dzê, ¿e warta³oby ten rozdzia³ uzupe³niæ jasnym stwierdzeniem, ¿e te "przestrzenie nazw" to tak naprawdê jeden wielki pic, i ¿e (prawie) równie dobrze dzia³a³oby po prostu wyd³u¿anie nazw procedur/zmiennych odpowiednimi przedrostkami, np. zamiast ::moja_przestrzen::puts mo¿e byæ równie dobrze: __moja_przestrzen__puts - i mamy z grubsza to samo: nazwê procedury, która nie koliduje ze "standardowym" puts. Oczywi¶cie, trochê upraszczam - ale przecie¿ naprawdê tylko trochê... taki kawa³ miejsca jest temu po¶wiêcony w manualu - a to w sumie sprowadza siê jedynie do wyd³u¿enia nazw procedur/zmiennych, które przecie¿ w efekcie wszy¶ciutkie - co do jednej - i tak znajduj± siê w "przestrzeni globalnej". A zatem odró¿niane s± jedynie po przera¼liwie d³ugiej nazwie. Wszystkie te "namespace eval" to tylko "chwilowe zezwolenie" na pos³ugiwanie siê nazw± bez przedrostka, bo jaki¶ automat go doda "w imieniu u¿ytkownika". -- ZB
Re: Tutorial: Przestrzenie nazw
Author: Damian 'legion'
Date: Sat, 14 Jun 2008 00:15
Date: Sat, 14 Jun 2008 00:15
10 lines
523 bytes
523 bytes
On 2008-06-13, ZB wrote: > S±dzê, ¿e warta³oby ten rozdzia³ uzupe³niæ jasnym stwierdzeniem, ¿e te > "przestrzenie nazw" to tak naprawdê jeden wielki pic, i ¿e (prawie) równie > dobrze dzia³a³oby po prostu wyd³u¿anie nazw procedur/zmiennych odpowiednimi > przedrostkami, np. zamiast ::moja_przestrzen::puts mo¿e byæ równie dobrze: > __moja_przestrzen__puts - i mamy z grubsza to samo: nazwê procedury, która > nie koliduje ze "standardowym" puts. Taki jest te¿ cel przestrzeni nazw w dowolnym jêzyku... -- Damian Szuberski
Re: Tutorial: Przestrzenie nazw
Author: ZB
Date: Sat, 14 Jun 2008 00:24
Date: Sat, 14 Jun 2008 00:24
6 lines
229 bytes
229 bytes
Dnia 13.06.2008 Damian 'legion' Szuberski <legion@wmid.cutthisjunk.amu.edu.andthis.pl> napisa³/a: > Taki jest te¿ cel przestrzeni nazw w dowolnym jêzyku... E, tam: to po co takie "fachowe nazwy" na zwyczajne przedrostki. -- ZB
Re: Tutorial: Przestrzenie nazw
Author: "Stachu 'Dozzie'
Date: Sat, 14 Jun 2008 10:05
Date: Sat, 14 Jun 2008 10:05
12 lines
424 bytes
424 bytes
On 14.06.2008, ZB <zbREMOVE_THIS@AND_THISispid.com.pl> wrote: > Dnia 13.06.2008 Damian 'legion' Szuberski <legion@wmid.cutthisjunk.amu.edu.andthis.pl> napisa³/a: > >> Taki jest te¿ cel przestrzeni nazw w dowolnym jêzyku... > > E, tam: to po co takie "fachowe nazwy" na zwyczajne przedrostki. Bo do tego s³u¿±. Poka¿ mi dowolny inny jêzyk, w którym przestrzenie nazw dzia³aj± inaczej. -- Secunia non olet. Stanislaw Klekot
Re: Tutorial: Przestrzenie nazw
Author: ZB
Date: Sat, 14 Jun 2008 14:21
Date: Sat, 14 Jun 2008 14:21
22 lines
947 bytes
947 bytes
Dnia 14.06.2008 Stachu 'Dozzie' K. <dozzie@dynamit.im.pwr.wroc.pl.nospam> napisa³/a: >>> Taki jest te¿ cel przestrzeni nazw w dowolnym jêzyku... >> >> E, tam: to po co takie "fachowe nazwy" na zwyczajne przedrostki. > > Bo do tego s³u¿±. No jasne: po co mówiæ "spodnie" - skoro mo¿na mówiæ "ineksprymable". Oznacza dok³adnie to samo - za to jak brzmi! Od razu taki dyskutant, u¿ywaj±cy "fachowego s³ownictwa" zyskuje na autorytecie. :] > Poka¿ mi dowolny inny jêzyk, w którym przestrzenie nazw dzia³aj± inaczej. Mnie nie interesuje "dowolny inny jêzyk" - bo najwidoczniej nie jestem takim "omnibusem-jêzykoznawc±" jak co poniektórzy tutaj. Po prostu uzna³em, ¿e w tutorialu - przeznaczobym chyba z za³o¿enia dla poznaj±cych dopiero TCL - warto przedstawiæ sprawy takimi, jakimi siê w istocie maj±, choæby po to, ¿eby u³atwiæ zrozumienie im, jak to w³a¶ciwie dzia³a, zamiast budowaæ "mistyczn± aurê wtajemniczenia". Tyle w tym temacie. -- ZB
Re: Tutorial: Przestrzenie nazw
Author: ZB
Date: Sat, 14 Jun 2008 14:23
Date: Sat, 14 Jun 2008 14:23
13 lines
524 bytes
524 bytes
Dnia 14.06.2008 Damian 'legion' Szuberski <legion@wmid.cutthisjunk.amu.edu.andthis.pl> napisa³/a: >>> Taki jest te¿ cel przestrzeni nazw w dowolnym jêzyku... >> E, tam: to po co takie "fachowe nazwy" na zwyczajne przedrostki. > Dla wygody. Zmieniasz przestrzeñ nazw to edytujesz 1 linijkê a nie > poprawiasz nazw wszystkich klas. Nie pyta³em: "po co siê to robi", tylko: "po co to mêtniactwo w nazewnictwie" ("przestrzenie nazw" - faktycznie, "big deal", mo¿na by³oby mniemaæ). Aha, ju¿ wiem: "dla wygody". Dziêki. -- ZB
Re: Tutorial: Przestrzenie nazw
Author: Damian 'legion'
Date: Sat, 14 Jun 2008 15:30
Date: Sat, 14 Jun 2008 15:30
7 lines
272 bytes
272 bytes
On 2008-06-14, ZB wrote: >> Taki jest te¿ cel przestrzeni nazw w dowolnym jêzyku... > E, tam: to po co takie "fachowe nazwy" na zwyczajne przedrostki. Dla wygody. Zmieniasz przestrzeñ nazw to edytujesz 1 linijkê a nie poprawiasz nazw wszystkich klas. -- Damian Szuberski
Re: Tutorial: Przestrzenie nazw
Author: ZB
Date: Mon, 16 Jun 2008 11:05
Date: Mon, 16 Jun 2008 11:05
16 lines
661 bytes
661 bytes
Dnia 16.06.2008 Googie <no@spam.0rg> napisa³/a: > Nie do koñca. ...no nie do koñca - ale jednak nawet moi adwersarze byli ³askawi siê zgodziæ, ¿e do tego wreszcie, w efekcie, to siê sprowadza. Szukaj±c sobie przyk³adów "z innej beczki" - trafi³em na to, i tak jako¶ mi siê nasunê³o, ¿e w sumie warto by³oby to podkre¶liæ. Ja po prostu uwa¿am, ¿e takie otwarte "podanie kawy na ³awê" komu¶ czytaj±cemu tutorial u³atwi zrozumienie, "o co w tym w³a¶ciwie chodzi". Otó¿ jak siê to zrozumie, to okazuje siê, ¿e nic takiego znowu¿ niesamowitego. Wed³ug mnie, to powinno byæ wyra¼nie napisane na stronach oryginalnego podrêcznika - nie to, ¿e w tutorialach. -- ZB
Re: Tutorial: Przestrzenie nazw
Author: Googie
Date: Mon, 16 Jun 2008 11:47
Date: Mon, 16 Jun 2008 11:47
24 lines
1089 bytes
1089 bytes
ZB wrote: > Oczywi¶cie, trochê upraszczam - ale przecie¿ naprawdê tylko trochê... taki > kawa³ miejsca jest temu po¶wiêcony w manualu - a to w sumie sprowadza siê > jedynie do wyd³u¿enia nazw procedur/zmiennych, które przecie¿ w efekcie > wszy¶ciutkie - co do jednej - i tak znajduj± siê w "przestrzeni > globalnej". A zatem odró¿niane s± jedynie po przera¼liwie d³ugiej nazwie. > Wszystkie te "namespace eval" to tylko "chwilowe zezwolenie" na > pos³ugiwanie siê nazw± bez przedrostka, bo jaki¶ automat go doda "w > imieniu u¿ytkownika". Nie do koñca. Z reszt± tak jak napisa³e¶ - upraszczasz. W³a¶nie ta w³a¶ciwo¶æ NS'ów, ¿e mo¿na wykonywaæ kod w [namespace eval] czyni j± wygodniejsz± od prefixów (co z reszt± napisa³ ju¿ w tym w±tku Legion). Do tego masz importowanie ca³ego NS'a - czyli mo¿na siê szybko pozbyæ "prefixów". Chodzi o porz±dek. Dziêki NSom tworzony kod jest lepszej jako¶ci. Je¶li post dotyczy mojego tutoriala (tak wnioskujê po opisie), to przyznajê ¿e niepotrzebnie zaciemni³em opis NSów, dodam sobie do TODO, ¿eby upro¶ciæ jêzyk. -- Pozdrawiam! (Regards!) Googie
Re: Tutorial: Przestrzenie nazw
Author: Artur
Date: Mon, 23 Jun 2008 14:50
Date: Mon, 23 Jun 2008 14:50
17 lines
523 bytes
523 bytes
NS to jednak o wiele wiêcej ni¿ przedrostki. Na NS bazuje kilka systemów objektowych. Miêdzy innymi XOTcl i chyba ITcl. Funkcja "variable" potrzebuje NS. "::zmiena" tak¿e mo¿ne zast±piæ u¿ycie "global". W Tcl NS mo¿na u¿ywaæ w pe³ni dynamicznie. W jakim innym jêzyku jest to jeszcze mo¿liwe? Oczywi¶cie dla ma³ych programików NS s± niepotrzebne i Tcl d³ugo lat dawa³ sobie bez nich rady. S³u¿± najlepiej przy tworzeniu ogólnych bibliotek i "framework"ów.. Artur
Re: Tutorial: Przestrzenie nazw
Author: ZB
Date: Fri, 27 Jun 2008 00:22
Date: Fri, 27 Jun 2008 00:22
39 lines
1803 bytes
1803 bytes
Dnia 23.06.2008 Artur <mail@xdobry.de> napisa³/a: > NS to jednak o wiele wiêcej ni¿ przedrostki. > Na NS bazuje kilka systemów objektowych. Miêdzy innymi XOTcl i chyba > ITcl. > Funkcja "variable" potrzebuje NS. > "::zmiena" tak¿e mo¿ne zast±piæ u¿ycie "global". ...bo akurat tak to wszystko zrobiono - "z tego, co by³o pod rêk±". To nie jest wskazanie na to, ¿e bez NS w takim wydaniu, jakie widzimy, nie da³oby siê absolutnie tych rzeczy zrealizowaæ. > W Tcl NS mo¿na u¿ywaæ w pe³ni dynamicznie. W jakim innym jêzyku jest > to jeszcze mo¿liwe? Nie wiem. Trzeba by³oby zrobiæ przegl±d tych wszystkich jêzyków - tylko, tak w³a¶ciwie, po co? Dla wykazania siê w dyskusji? TCL ma wiele zalet - ale i ma swoje nieco niewygodne strony: np. terminologiê opracowan± chyba specjalnie "dla zmylenia przeciwnika" :] - zw³aszcza takiego, który dopiero siê do tego zabiera, a w miêdzyczasie ju¿ czego¶ innego zd±¿y³ "lizn±æ". Funkcje nazwano procedurami, arraye jednowymiarowe - listami, wska¼niki (chyba jedynie dla odmiany) - arrayami (przyporz±dkowuj±cymi), a skoro ta nazwa zosta³a ju¿ u¿yta, to prawdziwe arraye asocjacyjne trzeba by³o nazwaæ... s³ownikami (chocia¿ to nazwa myl±ca - bo s³ownik dzia³a przecie¿ W OBIE strony), sama zasada "kiedy termin jest skrócony, a kiedy u¿yty w ca³o¶ci" te¿ stosowana jest bez jakiej¶ wyra¼nej logiki: "channel" skrócono do "chan" (naprawdê by³oby za d³ugie?), ale ju¿ "continue" jest w ca³o¶ci, chocia¿ w paru jêzykach egzystuje sobie jako "cont"... tak trochê "zróbmy to koniecznie inaczej" wymy¶lono (a przynajmniej: inaczej to sobie nazwijmy). Przy czym z tego "inaczej" wcale nie ma widocznych korzy¶ci. Osobi¶cie przypuszczam, ¿e to jest raczej przeszkod± w szerszym upowszechnieniu. No dobra, poczepia³em siê trochê... w sumie niby mo¿na z tym ¿yæ. -- ZB
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads