-
Data: 2012-07-26 11:14:21
Temat: Re: Wam wszytskim odbilo z tym Lispem :)
Od: Piotr Chamera <p...@p...onet.pl> szukaj wiadomości tego autora
[ pokaż wszystkie 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
Następne wpisy z tego wątku
- 26.07.12 11:18 Adam Przybyla
- 26.07.12 11:20 Andrzej Jarzabek
- 26.07.12 11:53 AK
- 26.07.12 11:56 AK
- 26.07.12 12:00 firr ;-)
- 26.07.12 12:06 AK
- 26.07.12 12:08 Roman W
- 26.07.12 12:06 Andrzej Jarzabek
- 26.07.12 12:12 Andrzej Jarzabek
- 26.07.12 12:14 AK
- 26.07.12 12:15 firr
- 26.07.12 12:19 AK
- 26.07.12 12:22 AK
- 26.07.12 12:23 Andrzej Jarzabek
- 26.07.12 12:25 AK
Najnowsze wątki z tej grupy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- 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??
Najnowsze wątki
- 2025-02-14 e-paper
- 2025-02-14 Gliwice => Business Development Manager - Network and Network Security
- 2025-02-14 Warszawa => System Architect (Java background) <=
- 2025-02-14 Katowice => Senior Field Sales (system ERP) <=
- 2025-02-14 Wrocław => Specjalista ds. Sprzedaży (transport drogowy) <=
- 2025-02-14 Re: Dlaczego nie było (pełzającego) zamachu stanu? Bo minister Bodnar już "zawiesił" prokuratora Ostrowskiego
- 2025-02-14 e-paper
- 2025-02-14 Warszawa => Architekt rozwiązań (doświadczenie w obszarze Java, AWS
- 2025-02-14 Warszawa => International Freight Forwarder <=
- 2025-02-14 Olsztyn => Sales Specialist <=
- 2025-02-14 Wrocław => Konsultant wdrożeniowy Comarch XL/Optima (Księgowość i
- 2025-02-14 Bieruń => Spedytor Międzynarodowy (handel ładunkami/prowadzenie flo
- 2025-02-14 Dęblin => JavaScript / Node / Fullstack Developer <=
- 2025-02-14 Żerniki => Dyspozytor Międzynarodowy <=
- 2025-02-14 Kraków => Technical Team Leader (Clojure, Java) <=