-
Data: 2011-10-16 17:56:45
Temat: Re: lambda i clojures
Od: Piotr Chamera <p...@p...onet.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu 2011-10-16 19:11, f...@g...SKASUJ-TO.pl pisze:
> teraz dla odmiany bez problemu wydaje sie zrozumialem o co ci chodzi
> ale o ile tak to jest to dziwne (przynajmniej na gruncie c)
>
> chodzi ci o cos takiego:
>
>
> wskaznikDoFunkcji funkcjaOut()
> {
> int x;
> int y;
>
> return funkcjaIn() {
>
> //uzywa tu x i y
>
> }
>
> }
> to ze funkcjaIn chce dzialac na zmiennych z funkcji out
> to mozna uznac jeszcze za dosyc naturalne (i nie ma
> z tym semantycznie problemu, mozna np przeciagnac przez argumenty
> dziwniejsze jest to ze ktos chce uzywac funkcjiIn po zniszczeniu
Jeśli spojrzeć na to tak, że funkcjaIn jest rezultatem zwracanym
przez funkcjaOut, to jest całkiem naturalne, że tego rezultatu
używamy nadal po zakończeniu działania funkcjiOut.
> funkcjiOut - jesli tylko o to w tym chodzi to x i y mozna zrobic
> statycznymi i osiagnie sie efekt ze wszystko ok chyba ze
> chodzi o cos innego/wiecej
to nie zadziała. Co się stanie w tym przypadku
jeśli a i b będą static?
(jakieś pseudo C, mam nadzieję, że zrozumiałe):
funkcja funkcjaOut(int a, int b)
{
return funkcjaIn(int x) {
return a * x + b;
}
}
funkcja1 = funkcjaOut(1 2);
funkcja2 = funkcjaOut(-2 5);
i rysujemy sobie wykres dwu funkcji:
for i = -10; i <= 10; i++ {
plot(funkcja1(i));
plot(funkcja2(i));
}
> dalej nie rozumiem w jakich wypadkach to moze sie jakos specjalnie
> przydac (moze sa jakies wypadki ale dla mnie to osobliwie nietypowe,
Korzystanie z tego jest naturalne, kiedy język udostępnia odpowiednie
mechanizmy...
> (musialbym sie zastanowic) chyab ze ta funkcja jest wstawiona jedna
> w druga dla picu i mozna je traktowac jak rownolegle ktore chca
> po prostu operowac na tych wspoldzielonych statikach
Następne wpisy z tego wątku
- 16.10.11 20:19 Bronek Kozicki
- 17.10.11 04:38 Maciej Pilichowski
- 17.10.11 05:17 p...@p...onet.pl
- 17.10.11 05:25 p...@p...onet.pl
- 17.10.11 06:32 Piotr Chamera
- 17.10.11 07:18 Stachu 'Dozzie' K.
- 17.10.11 07:20 Stachu 'Dozzie' K.
Najnowsze wątki z tej grupy
- 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?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
- Ada 2022 Language Reference Manual to be Published by Springer
- Press Release - AEiC 2023, Ada-Europe Reliable Softw. Technol.
- Ada-Europe - AEiC 2023 early registration deadline approaching
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2023
- Ile cykli zajmuje mnożenie liczb 64-bitowych?
Najnowsze wątki
- 2024-06-27 Re: Prywatny parking? Pierwsze 10 minut bezplatnie
- 2024-06-27 A co mnie to koooorwa obchodzi?
- 2024-06-28 nawigacja satelitarna
- 2024-06-28 SmartLife/Tuya i osuszanie -- mordowanie z zimną krwią...
- 2024-06-27 położyłem kafelki
- 2024-06-28 Łódź => International Freight Forwarder <=
- 2024-06-28 Łódź => Spedytor Międzynarodowy <=
- 2024-06-28 Gdańsk => Head of International Freight Forwarding Department <=
- 2024-06-28 Sopot => Team Leader E-Commerce for Foreign Markets <=
- 2024-06-28 Warszawa => Senior React Native Developer <=
- 2024-06-28 Warszawa => Frontend Developer (React) <=
- 2024-06-28 Warszawa => Software .Net Developer <=
- 2024-06-28 Warszawa => Frontend Developer (React) <=
- 2024-06-28 Warszawa => Programista Full Stack .Net <=
- 2024-06-28 Warszawa => Frontend Developer (React) <=