eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingZapytanie › Re: Wam wszytskim odbilo z tym Lispem :)
  • Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!polsl.pl!not-for-mail
    From: Adam Przybyla <a...@r...pl>
    Newsgroups: pl.comp.programming
    Subject: Re: Wam wszytskim odbilo z tym Lispem :)
    Date: Thu, 26 Jul 2012 15:41:54 +0000 (UTC)
    Organization: Politechnika Slaska, Gliwice
    Lines: 47
    Sender: Adam Przybyla <a...@s...ertel.com.pl>
    Message-ID: <jurog2$smu$1@polsl.pl>
    References: <2...@g...com>
    <1mraty78mzzu4$.dlg@hell.heaven>
    <2...@g...com>
    <6...@g...com>
    <s...@l...localdomain>
    <juk169$3p9$1@mx1.internetia.pl>
    <0...@g...com>
    <8...@g...com>
    <3...@g...com>
    <6...@g...com>
    <a...@g...com>
    <jup7b3$4vm$1@inews.gazeta.pl> <jup7i7$ci4$1@inews.gazeta.pl>
    <jupflm$a9a$1@inews.gazeta.pl> <juqpus$l4g$1@inews.gazeta.pl>
    <juqsfp$hto$1@dont-email.me> <juqv5p$dta$1@inews.gazeta.pl>
    <jur1pd$dun$1@dont-email.me> <jur215$ncm$1@polsl.pl>
    <jurcem$71c$1@dont-email.me> <jurkbk$rsu$1@polsl.pl>
    <jurmp7$552$1@dont-email.me>
    NNTP-Posting-Host: smtp.ertel.com.pl
    Mime-Version: 1.0
    Content-Type: text/plain; charset=UTF-8
    Content-Transfer-Encoding: 8bit
    X-Trace: polsl.pl 1343317314 29406 62.182.231.178 (26 Jul 2012 15:41:54 GMT)
    X-Complaints-To: n...@p...pl
    NNTP-Posting-Date: Thu, 26 Jul 2012 15:41:54 +0000 (UTC)
    User-Agent: tin/1.8.3-20070201 ("Scotasay") (UNIX) (Linux/2.6.18-194.8.1.el5xen
    (i686))
    Xref: news-archive.icm.edu.pl pl.comp.programming:198901
    [ ukryj nagłówki ]

    Piotr Chamera <p...@p...onet.pl> wrote:
    > W dniu 2012-07-26 16:31, Adam Przybyla pisze:
    >> Piotr Chamera <p...@p...onet.pl> wrote:
    >>> W dniu 2012-07-26 11:18, Adam Przybyla pisze:
    >>>> Piotr Chamera <p...@p...onet.pl> wrote:
    >>>>> W dniu 2012-07-26 10:29, AK pisze:
    >>>>>> Użytkownik "Piotr Chamera" <p...@p...onet.pl> napisał:
    >>>>>>> (setq r
    >>>>>>> (let* ((a 8)
    >>>>>>> (b (+ a 7))
    >>>>>>> (c 12)
    >>>>>>> (d 2))
    >>>>>>> (* (+ a b) (- c d))))
    >>> ...
    >>>>>>> A teraz może podaj odpowiednik tego kodu w Pythonie,
    >>>>>>> bo to poniżej to nie jest to samo:
    >>> r = (lambda:
    >>> a = 8
    >>> b = a + 7
    >>> c = 12
    >>> d = 2
    >>> return (a + b) * (c - d))()
    >> ... nie do konca, to trzeba troche rozumiec jak to dziala w lispie w oparciu
    >> o rachunek lambda, poprawne rozwiazanie, dla konstrukcji let* wyglada tak:
    >> r=(lambda a: (lambda b: (lambda c: (lambda d: (a + b) * (c -
    d))(d=2))(c=12))(b=a+7))(a=8)
    >
    > Dzięki, to mi trochę rozjaśniło...
    > W moim zapisie potraktowałem ,,lambdę" jako po prostu anonimowy analog
    > do ,,def" (tak jakbym tworzył normalną pythonową funkcję, tylko bez
    > nazwy - a czegoś takiego w języku nie ma). Nie pomyślałem, żeby
    > naprawdę rozpisać to za pomocą tej ,,rzeczywiście dostępnej" w języku
    > lambdy. W tym wypadku, ponieważ b, c i d są niezależne, można to nawet
    > trochę skrócić:
    ... tz jak zmienisz zadanie, to rozwiazanie jest takie jak podales:

    >
    > r=(lambda a: (lambda b, c, d: (a + b) * (c - d))(b=a+7, c=12, d=2))(a=8)
    >
    > będzie to analogiczne do
    >
    > (setq r (let ((a 8))
    > (let ((b (+ a 7))
    > (c 12)
    > (d 2))
    > (* (+ a b) (- c d)))))
    Zgadza sie w 100%;-) Z powazaniem
    Adam Przybyla

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: