eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingZapytanieRe: Wam wszytskim odbilo z tym Lispem :)
  • Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
    atman.pl!goblin1!goblin.stu.neva.ru!eternal-september.org!feeder.eternal-septem
    ber.org!mx04.eternal-september.org!.POSTED!not-for-mail
    From: Piotr Chamera <p...@p...onet.pl>
    Newsgroups: pl.comp.programming
    Subject: Re: Wam wszytskim odbilo z tym Lispem :)
    Date: Thu, 26 Jul 2012 11:14:21 +0200
    Organization: A noiseless patient Spider
    Lines: 62
    Message-ID: <jur1pd$dun$1@dont-email.me>
    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>
    Mime-Version: 1.0
    Content-Type: text/plain; charset=UTF-8; format=flowed
    Content-Transfer-Encoding: 8bit
    Injection-Date: Thu, 26 Jul 2012 09:14:22 +0000 (UTC)
    Injection-Info: mx04.eternal-september.org;
    posting-host="7e63defaef7e286b09cea558388ede3a";
    logging-data="14295";
    mail-complaints-to="a...@e...org";
    posting-account="U2FsdGVkX1+jtkA2Bg8Yklt9lcc92SKn"
    User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:14.0) Gecko/20120713 Thunderbird/14.0
    In-Reply-To: <juqv5p$dta$1@inews.gazeta.pl>
    Cancel-Lock: sha1:e9OXG/1Zvkn7oTsQJHUTCW4Yfo8=
    Xref: news-archive.icm.edu.pl pl.comp.programming:198854
    [ ukryj nagłówki ]

    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))))
    >
    > Ano wlasnie. Klucz to let* (wymusza sekwencyjnosc)
    > Tylko:
    > 1. wytlumacz to poczatkujacemu
    > 2. Czy nie moglby sobie sam Szanowny Kompilator sprawdzic
    > zaleznosci i wylaczyc te ktore sa od siebie zalezne ze
    > swej "rownoleglosci" ?
    >
    >> A teraz może podaj odpowiednik tego kodu w Pythonie,
    >> bo to poniżej to nie jest to samo:
    >>
    >> a = 8
    >> b = a + 7
    >> c = 12
    >> d = 2
    >> r = a + b * c + d
    >
    > A dlaczegoz to Kolega zgubil nawiasy i (pomylil znak, rozumiem ze typo) ?
    > Przeciez to wbrew matematyce
    > Winno byc: r = (a + b) * (c - d)

    oczywiście...
    wklepałem to na szybko, żeby pokazać przykład, w którym
    a,b,c,d są ,,globalne" - nie wiem, jak to zapisać w Pythonie tak, aby
    nie były widoczne poza zasięgiem, w którym są potrzebne i żeby nadal
    było czytelnie.

    > Troche bardziej skomplikowane wyrazenia w Lispie wygladaja _koszmarnie_
    > (wiem co mowie bo conieco - bardzo malo - "robilem" w Lispie do AutoCada

    mogę się zgodzić, chociaż bardziej skomplikowane wyrażenia matematyczne
    wyglądają źle w prawie każdym języku programowania...

    > PS: W samych poczatkach mego programowania spotkalem sie z programowalnymi
    > kalkulatoramio HP (nie te "reczne" ale takie wielkosci dzisiejszego PCta
    > z tzw.
    > cartridges jako medium). Tam wszytsko bylo w odwrotnej notacji polskiej
    > (wiadomo z jakiego powodu) a i programy byly naprawde nietrywialne
    > (glownie numeryka oczywiscie). Jednak _w zyciu_ nie polecil bym tego
    > poczatkujacym ktorzy znaja normalna arytmetyke/matematyke.
    >
    > PS1: To wbrew pozorom tez tyczy "modelowania rzeczywistosci".
    > Arytmetyka w Pythonie czy Javie czy inny C++ nawet "modeluje"
    > dobrze rzeczywistosc (czyli normalna matematyke), a Lisp wprowadza
    > abstrakt (owszem wtedy jest "spojnosc skladniowo/paradygmatowa"
    > tylko ze ana tylko sama sobie sie chyba podoba :)

    utożsamianie matematyki i arytmetyki komputerów to jest takie budowanie
    na złudzeniach, potem ludzie dziwią się, że:
    >>> 10.0 - 9.0 == 1.0
    True
    >>> 10.0 * (1.0 - 0.9) == 1.0
    False

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: