eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programminglambda, clojures › Re: lambda i clojures
  • Data: 2011-10-16 14:27:35
    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 15:15, f...@g...SKASUJ-TO.pl pisze:
    > >>>
    > >>> nadal nie rozumiem tego cholerstwa, cos takirgo jak
    > >>> z tym licznikiem mozna zrobic na statycznych zmiennych
    > >>> wewnatrz funkcji, nie wiem jaka jest roznica miedzy tym
    > >>> co moznazrobic na tych zm statycznych a tym czego nie mozna
    > >>> zrobic i potrzebne sa te closures i wogole do czego
    > >>> moze sie to przydac - te przyklady jakie widza w wiki sa jakos
    > >>> totalnie dziwne
    > >>
    > >> Nie znam na tyle C, żeby powiedzieć jaka jest różnica – mogę
    > >> prosić o przykład realizacji tego w C?
    > >>
    > >>
    > > przyklad na statiki w c nie za bardzo pomoze w zrozumieniu po
    > > co sluzyc moga te closures (poki co mnie to tylko denerwuje)
    > > nie wiem czy jest w tym cos co naprawde moze sie przydac i
    > > czego nie ma da sie zrobic tymi statikami
    > >
    > > int nastepny()
    > > {
    > > static int licznik = 0;
    > >
    > > return ++licznik;
    > > }
    > >
    > > powyzej zmienna statyczna licznik jest podobna do zmiennej globalnej
    > > tylko ze jej widzialnosc jest ograniczona do wnetrza funkcji, jest tylko
    > > raz inicjalizowana przy starcie programu, a pozniej kazde wywolanie po
    > > prostu zwieksza ja o jeden i zwraca, tak ze gdyby wypisaywac logiem
    > >
    > > for(int i=0; i<10l i++)
    > > log( nastepny() );
    > >
    > > to bedzie wynik:
    > > 1
    > > 2
    > > 3
    >
    > Ok mamy jedną funkcję, która korzysta ze statycznego licznika.
    > Teraz potrzebujemy dwie funkcje, które korzystają z tego samego
    > licznika - jedna go zwiększa, druga zmniejsza. W C to będzie
    > wyglądało... ?
    >
    trzebaby zrobic 'wspoldzielone statiki' pisalem na ten temat
    z rok temu (albo zrobic modul itd) ale na pewno nie o to chodzi
    w tych cholernych closures

    w tym przykladzie z pytona

    mnozenie_przez_5 = mnozenie_przez(5)

    print mnoezenie_przez_5(12)

    niby mozna zrobic pewna nowa rzecz tj setupnac sobie niejako 'szablonową'
    funkcje by mnozyla przez 5, w c mozna to samo zrobic z tym
    ze ta 5ka musialaby byc globalna lub trzebeby miec mozliwosc
    odnoszenia sie do statkow w funkcji (tez kiedys proponowalem)
    itp, ale nie wiem o co im tam konkretnie chodzi
    czy np w ten sposob

    mnozenie_przez_5 = mnozenie_przez(5)
    mnozenie_przez_7 = mnozenie_przez(7)
    mnozenie_przez_9 = mnozenie_przez(9)

    chca tworzyc trzy rozne czy jedna 'przełaczaną' i czy
    wogole ta mozliwosc chwytania tych liczb 5,7,9 lub innych
    z kontekstow ma byc uzywana w jakis wyrafinowany sposob
    - np z roznych kontekstow - i czy to ma dawac jakies
    nietrywialne mozliwosci, poki co jest to jakies dziwne
    i zakrecone ( obecnie kandydat numer 1 w konkursie na rzeczy
    irytujace oraz denerwujące )





    }

    --
    Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: