-
Data: 2011-10-16 09:01:00
Temat: Re: lambda i clojures
Od: " " <f...@g...SKASUJ-TO.pl> szukaj wiadomości tego autora
[ pokaż wszystkie 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
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
Najnowsze wątki
- 2025-07-03 Trybik
- 2025-07-04 Renault Symbioz
- 2025-07-04 Architektura IIIRP: Wyjątkowa, a prymitywniejsza niż stodoła pod zaborami
- 2025-07-04 Warszawa => International Freight Forwarder <=
- 2025-07-04 Wrocław => SAP ABAP Developer <=
- 2025-07-04 Warszawa => Mid/Senior IT Recruiter <=
- 2025-07-04 Białystok => Kotlin Developer <=
- 2025-07-04 Bieruń => Spedytor Międzynarodowy (handel ładunkami/prowadzenie flo
- 2025-07-04 Warszawa => Specjalista wsparcia IT - analiza techniczna sprzętu IT <
- 2025-07-04 Zakrzewo => Konsultant SAP HCM <=
- 2025-07-04 Łódź => Programista Mainframe (z/OS, Assembler) <=
- 2025-07-04 Szczecin => Key Account Manager IT <=
- 2025-07-04 Warszawa => Technik IT - Konfiguracja i Wsparcie Sprzętowe <=
- 2025-07-04 Warszawa => Technique IT - Hardware Configuration and Support <=
- 2025-07-04 Warszawa => Specjalista ds. Sprzętu IT i Wsparcia Technicznego <=