-
Data: 2012-07-26 14:16: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 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:
>>>>
>>>> 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.
> ... wpakowac to do procedury;-) Z powazaniem
> Adam Przybyla
Rozumiem, że to są różne języki i pisze się w nich całkiem inaczej...
Pytam po prostu z ciekawości, bo AK podał jako przykład czegoś
trudnego (czy nieintuicyjnego) dla początkujących konstrukcję,
która nie ma chyba dokładnego odpowiednika w żadnym z popularniejszych
języków programowania a zinterpretowałem to tak, że AK uważa że w innym
języku (np. Pythonie, który został wymieniony wcześniej) będzie
to bardziej czytelne / intuicyjne.
Sam coś tam kiedyś liznąłem Pythona ale nie potrafię znaleźć
satysfakcjonującego odpowiednika, przy założeniu, że
po obliczeniu r z wykorzystaniem a,b,c,d chcemy pozostawić
tylko widoczność r.
można tak
>>> def wzor():
a = 8
b = a + 7
c = 12
d = 2
return (a + b) * (c - d)
>>> r = wzor()
co jednak zostawia nam w przestrzeni globalnej ,,wzor"
tak jak poniżej (co byłoby chyba najbliższym odpowiednikiem) się nie da
(chyba, że można jakoś zapisać ,,wielowyrażeniową" lambdę):
r = (lambda:
a = 8
b = a + 7
c = 12
d = 2
return (a + b) * (c - d))()
Następne wpisy z tego wątku
- 26.07.12 14:30 AK
- 26.07.12 14:34 AK
- 26.07.12 14:44 fir
- 26.07.12 14:49 Przemek O
- 26.07.12 14:50 Adam Wysocki
- 26.07.12 14:59 Edek Pienkowski
- 26.07.12 15:10 AK
- 26.07.12 15:24 fir
- 26.07.12 15:39 Adam Wysocki
- 26.07.12 15:43 Piotr M Kuć
- 26.07.12 15:47 fir
- 26.07.12 15:51 Piotr M Kuć
- 26.07.12 16:06 AK
- 26.07.12 16:11 AK
- 26.07.12 16:31 Adam Przybyla
Najnowsze wątki z tej grupy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
- "Wuj dobra rada" z KDAB rozważa: Choosing the Right Programming Language for Your Embedded Linux Device
- Nowa ustawa o ochronie praw autorskich - opis problemu i szkic ustawy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
Najnowsze wątki
- 2025-05-13 zagadałem dziś babę
- 2025-05-13 W tym urządzeniu ugotujesz wodę wszędzie. Bez podłączania do prądu
- 2025-05-13 W tym urządzeniu ugotujesz wodę wszędzie. Bez podłączania do prądu
- 2025-05-13 W tym urządzeniu ugotujesz wodę wszędzie. Bez podłączania do prądu
- 2025-05-12 wyobrazcie sobie
- 2025-05-12 pojezdziłem passatem
- 2025-05-12 Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- 2025-05-12 Warszawa => Junior Rekruter <=
- 2025-05-12 Dostała karę za "brak biletu" parkowania. Wygrała w sądzie z miastem Kierująca zaparkowała na miejskim parkingu w Rybniku. Nie zdążyła przedłużyć parkowania i dostała 200 zł kary za "brak biletu".
- 2025-05-12 Białystok => Senior Node.js Developer (doświadczenie z framework Nes
- 2025-05-12 Warszawa => MENA New Business Manager <=
- 2025-05-12 Rzeszów => WEBCON Developer <=
- 2025-05-12 kamerka kultowy novatek G1WH
- 2025-05-12 Warszawa => Fullstack PHP Developer <=
- 2025-05-12 Warszawa => Senior Frontend Developer (React + React Native) <=