-
Path: news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
From: " " <f...@g...SKASUJ-TO.pl>
Newsgroups: pl.comp.programming
Subject: Re: lambda i clojures
Date: Sun, 16 Oct 2011 09:01:00 +0000 (UTC)
Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
Lines: 62
Message-ID: <j7e6gc$fm2$1@inews.gazeta.pl>
References: <j7bnrd$4le$1@inews.gazeta.pl>
<a...@q...googlegroups.com>
<j7cpnj$8b3$1@inews.gazeta.pl> <j7d4br$7d6$1@news.onet.pl>
<j7dpt1$f7u$1@inews.gazeta.pl> <j7e37f$fqr$1@news.onet.pl>
NNTP-Posting-Host: localhost
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: 8bit
X-Trace: inews.gazeta.pl 1318755660 16066 172.20.26.242 (16 Oct 2011 09:01:00 GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Sun, 16 Oct 2011 09:01:00 +0000 (UTC)
X-User: fir
X-Forwarded-For: 31.61.128.240
X-Remote-IP: localhost
Xref: news-archive.icm.edu.pl pl.comp.programming:192876
[ ukryj nagłówki ]Piotr Chamera <p...@p...onet.pl> napisał(a):
> W dniu 2011-10-16 07:25, f...@g...SKASUJ-TO.pl pisze:
> > Piotr Chamera<p...@p...onet.pl> napisaĹ(a):
> >> Closure to taka funkcja powiÄ zana ze Ĺrodowiskiem, w ktĂłrym zostaĹa
> >> zdefiniowana. N.p.:
> >>
> >> (let ((licznik 0))
> >> (defun nastÄpny () (setf licznik (1+ licznik))))
> >>
> >> CL-USER> (nastÄpny)
> >> 1
> >>
> >> CL-USER> licznik
> >> Unbound variable: LICZNIK
> >> [Condition of type UNBOUND-VARIABLE]
> >>
> >> CL-USER> (nastÄpny)
> >> 2
> >>
> >> W Wikipedii jest to caĹkiem dobrze opisane:
> >> http://en.wikipedia.org/wiki/Closure_%28computer_sci
ence%29
> >
> > a czym sie rozni od zwyklej normalnej 'niepowiazanej' funkcji?
> > w tym prztkladzie wyzej nie rozumiem co to jest i co
> > to ma ilustrowac:
> >
> >> CL-USER> licznik
> >> Unbound variable: LICZNIK
> >> [Condition of type UNBOUND-VARIABLE]
>
> Ĺťe âlicznikâ nie jest dostÄpny globalnie - po wyjĹciu z zasiÄgu
> konstrukcji âletâ przestaĹ byÄ widoczny, ale po wywoĹaniu funkcji
> nadal jest dostÄpny - to fragment Ĺrodowiska, w ktĂłrym funkcja byĹa
> definiowana, ktĂłry zostaĹ przez niÄ przechwycony. Nie moĹźe byÄ
> odĹoĹźony na stosie, jest zewnÄtrzny w stosunku do ciaĹa funkcji i moĹźe
> przenosiÄ informacjÄ pomiÄdzy jej wywoĹaniami. Ĺťeby to zrobiÄ w C
> trzeba by pewnie zaalokowaÄ jakiĹ obiekt na stercie i przekazaÄ
> do funkcji wskaĹşnik do niego.
>
> Po rozszerzeniu pierwszego przykĹadu o drugÄ operacjÄ na
> liczniku mamy najprostszy obiekt z dwiema operacjami na nim
> i enkapsulacjÄ jego wewnÄtrznego stanu.
>
> (let ((licznik 0))
> (defun nastÄpny () (setf licznik (1+ licznik)))
> (defun poprzedni () (setf licznik (1- licznik))))
>
denerwuje mnie to niepowiernie bo nic z tego nie rozumiem,
np w c funkcja jest definiowana tylko raz i dotego w globalnym
kontekscie wiec powiedzmy ze to c nie dotyczy
ale czy tam gdzie tego sie uzywa taka funkcje definiuje sie kilka
razy w roznych kontekstach? czy kazda z nich przechwytuje ten kontekst
raczej przez referencje czy przez wartosc? czy np jesli jest 5 definicji
to te wspolne przechwycine dane sa wspolne dla tych definicji?
--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
Następne wpisy z tego wątku
- 16.10.11 10:09 Piotr Chamera
- 16.10.11 11:19 Piotr Chamera
- 16.10.11 12:24
- 16.10.11 12:52 Piotr Chamera
- 16.10.11 13:15
- 16.10.11 13:37 Edek
- 16.10.11 13:46 Piotr Chamera
- 16.10.11 14:17 Stachu 'Dozzie' K.
- 16.10.11 14:27
- 16.10.11 14:49 Piotr Chamera
- 16.10.11 15:26 bartekltg
- 16.10.11 16:22 Piotr Chamera
- 16.10.11 16:43 Bronek Kozicki
- 16.10.11 16:44 Bronek Kozicki
- 16.10.11 17:11
Najnowsze wątki z tej grupy
- "Wuj dobra rada" z KDAB rozważa: Choosing the Right Programming Language for Your Embedded Linux Device
- Nowa ustawa o ochronie praw autorskich - opis problemu i szkic ustawy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
Najnowsze wątki
- 2025-04-05 Dziwny wymiar wyroku
- 2025-04-05 Prunt z dachu
- 2025-04-05 Taśma LED
- 2025-04-05 Kraków => MS Dynamics 365BC/NAV Developer <=
- 2025-04-05 Warszawa => Strategic Account Manager <=
- 2025-04-05 co w Anglii dziś w Polsce za 30 lat
- 2025-04-05 Wrocław => SOC Tech Lead <=
- 2025-04-05 Gdynia => Przedstawiciel handlowy / KAM (branża TSL) <=
- 2025-04-05 Wyrok dożywocia dla Polki
- 2025-04-04 Prezydium Sejmu Tuskiego orzekło: Poseł KO mecenas Roman Giertych NIE jest mordercą (w żadnym sensie tego słowa?)
- 2025-04-04 Reset komóry
- 2025-04-04 Lublin => JavaScript / Node / Fullstack Developer <=
- 2025-04-04 Zielonka => Key Account Manager IT <=
- 2025-04-04 Warszawa => Ekspert IT (obszar systemów sieciowych) <=
- 2025-04-04 Warszawa => Mid/Senior IT Recruiter <=