-
141. Data: 2012-07-26 13:54:01
Temat: Re: Wam wszytskim odbilo z tym Lispem :)
Od: Andrzej Jarzabek <a...@g...com>
On Thursday, 26 July 2012 12:17:38 UTC+1, AK wrote:
> Użytkownik "Andrzej Jarzabek" <a...@g...com> napisał:
>
> > Za to najwyraźniej chorowałeś na świnkę
>
> Mnie świnka minęła, a Tobie Lisp nie :)
> Fakt, że cieżko dobrać lekarstwo na fanatyzm (dys)funkcyjny.
Przykro mi, ale żebyś cokolwiek mógł na mój temat wiedzieć, włączając w
to mój stosunek do Lispa i ewentualny fanatyzm funkcyjny lub
dysfunkcyjny, najpierw musiałbyś najpierw umieć czytać ze zrozumieniem.
Przy okazji, jak piszesz polskie literki, to widzę jakieś straszne
krzaki. Nie da się czegoś z tym zrobić?
-
142. Data: 2012-07-26 14:15:57
Temat: Re: Wam wszytskim odbilo z tym Lispem :)
Od: Piotr Chamera <p...@p...onet.pl>
W dniu 2012-07-26 11:53, AK pisze:
> Użytkownik "Piotr Chamera" <p...@p...onet.pl> napisał:
>
>> 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.
>
> Dokladnie tak jak wyzej. Wtedy widoczne sa tylko w aktualnym zasiegu.
> Aby byly traktowane jako globalne trzeba by je wczesniej zadeklarowac
> instrukcja: global
no właśnie nie dokładnie :) i o tę różnicę mi chodziło
CL-USER> (setq r
(let* ((a 8)
(b (+ a 7))
(c 12)
(d 2))
(* (+ a b) (- c d))))
230
CL-USER> r
230
CL-USER> a
Unbound variable: A
[Condition of type UNBOUND-VARIABLE]
w pythonie
>>> a = 8
b = a + 7
c = 12
d = 2
r = (a + b) * (c - d)
>>> r
230
>>> a
8
chodzi o to, że let ogranicza zasięg zmiennych do swojego ciała...
poza let a, b, c, d są nadal niezdefiniowane...
-
143. Data: 2012-07-26 14:16:21
Temat: Re: Wam wszytskim odbilo z tym Lispem :)
Od: Piotr Chamera <p...@p...onet.pl>
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))()
-
144. Data: 2012-07-26 14:30:23
Temat: Re: Wam wszytskim odbilo z tym Lispem :)
Od: "AK" <n...@n...com>
Użytkownik "Piotr Chamera" <p...@p...onet.pl> napisał:
> chodzi o to, że let ogranicza zasięg zmiennych do swojego ciała...
> poza let a, b, c, d są nadal niezdefiniowane...
Tak wiem (wiem czym w Lisp rozni sie let od setq).
W Pythonie istnieja w zasadzie tylko 4 "scopes"
1. globalne
2. lokalne dla modulu
3. lokalne dla funkcji/metody)
4. atrybuty obiektu (dostepne przez prefix self. )
Powiem szczerze ze wychowanemu na Algolu
(gdzie kazdy blok to scope) i piszacemu w C++
(podobnie) nie od razu mi to ograniczenie Pythonowe
przypadlo do gustu.
Z czasem okazalo sie, ze (jak w Pascalu w ktorym tez
troche pisalem) jest w pelni wystarczajace.
PS: Poza tym w Pythonie 'zmienna' nalezy traktowac
wylacznie jako 'metke'/alias, a nie 'cialo' obiektu
jak np w C++
AK.
-
145. Data: 2012-07-26 14:34:41
Temat: Re: Wam wszytskim odbilo z tym Lispem :)
Od: "AK" <n...@n...com>
Użytkownik "Piotr Chamera" <p...@p...onet.pl> napisał:
> można tak
> >>> def wzor():
> a = 8
> b = a + 7
> c = 12
> d = 2
> return (a + b) * (c - d)
>
> >>> r = wzor()
>>> del wzor
pomoze
AK
-
146. Data: 2012-07-26 14:44:57
Temat: Re: Wam wszytskim odbilo z tym Lispem :) [OT]
Od: " fir" <f...@W...gazeta.pl>
AK <n...@n...com> napisał(a):
> UĹźytkownik "Tomek KaĹka" <t...@t...eu.org> napisaĹ:
>
> > Ale nie wyobraĹźam sobie.
>
> CoĹ tam umiem ale..., nie pogadam... :( W szkoĹach miaĹem tylko ruski..
>
> > Ja juz jestem stary 40+ i pamiÄÄ mam juĹź sĹabÄ , nawet nie prĂłbujÄ czyt
> ac
> > dokumentacji
>
> Ha ! Poczekaj na 55++ to zobaczysz jak wyglÄ da "siadanie" pamiÄci ;)
>
> PS: Wk..iĹ mnie TwĂłj wiek nie na Ĺźarty :(...
> Powiedz jeszcze, ĹźeĹ WaszeÄ szczupĹy to juĹź caĹkiem mnie pogrÄ Ĺźys
> z ;)
>
nie pekaj ;-) jestes raczej w dobrej formie na tle poziomu tej grupy ;-)
ja dobrze czulem sie równo do 30stki - wtedy dziabnal mnie kleszcz,
i teraz czuje sie masakrycznie beznadziejnie i tak naprawde nie umiem
odroznic czy to wiek czy chorowanie, ale obserwacje zdaje sie mi mowic
ze to raczej chorowanie (uszkodzony uklad nerwowy co sprowadza sie
do nieco mniejszej sprawnosci i stalego nieustannego praktycznie bólu,
najwyrazniejszego w rekach) a nie wiek, mam kumpla z rocznika 49 i
obserwujac go w znacznej czesci jest w lepszej formie fizycznej niz ja
(_ja_to_mam_dopiero_przerabane_z_tym_kleszczem_), fakt ze pewnego rodzaju
aktywnosci umyslowe spadaja (nie znam sie na tym ale zauwazam u siebie),
ale innego rodzaju aktywnosci umyslowe jakby rosna (zdaje sie ze wielu
filozofom niezle szlo w starszym wieku), pozatym wiele dziewuch zaskakujaco
ze tak powiem nie dyskryminuje starszych facetow o ile ci maja cos
w glowie ;-)
--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
-
147. Data: 2012-07-26 14:49:00
Temat: Re: Wam wszytskim odbilo z tym Lispem :)
Od: Przemek O <p...@o...eu>
W dniu 2012-07-26 12:12, Andrzej Jarzabek pisze:
> On Thursday, 26 July 2012 09:20:58 UTC+1, Edek Pienkowski wrote:
>> nie potrzeba znać jakiejkolwiek matematyki, żeby uczyć się programowania.
>
> Nie piszę o tym, co trzeba żeby się uczyć programowania, tylko co trzeba,
> żeby się uczyć programowania z wykładów do kursu np. na MIT. Nawet przy
> wstępnym kursie MIT 6.00 (wprowadzenie do informatyki i programowania, przy
> użyciu Pythona) jest napisane, że wymagana jest dobra znajomość matematyki
> na poziomie szkoły średniej.
amerykańskiej średniej? To tak nie za mocna znajomość :)
pozdrawiam,
Przemek O.
-
148. Data: 2012-07-26 14:50:11
Temat: Re: Zapytanie
Od: g...@n...invalid (Adam Wysocki)
fir <f...@g...pl> wrote:
> to nie jest krytyka tylko ichnie zwyczajne głąbienie :O
> 2/3 tutejszych grupowiczow to mentalne miernoty ktorych
> jedynym osiagnieciem intelektualnym jest ichnia pensja
> wokół której tańcują jak swiete krowy
Wracaj na czata trollu.
--
Gof
http://www.chmurka.net/
-
149. Data: 2012-07-26 14:59:40
Temat: Re: Wam wszytskim odbilo z tym Lispem :)
Od: Edek Pienkowski <e...@g...com>
Dnia Thu, 26 Jul 2012 14:49:00 +0200, Przemek O napisal:
> W dniu 2012-07-26 12:12, Andrzej Jarzabek pisze:
>> On Thursday, 26 July 2012 09:20:58 UTC+1, Edek Pienkowski wrote:
>>> nie potrzeba znać jakiejkolwiek matematyki, żeby uczyć się programowania.
>>
>> Nie piszę o tym, co trzeba żeby się uczyć programowania, tylko co trzeba,
>> żeby się uczyć programowania z wykładów do kursu np. na MIT. Nawet przy
>> wstępnym kursie MIT 6.00 (wprowadzenie do informatyki i programowania, przy
>> użyciu Pythona) jest napisane, że wymagana jest dobra znajomość matematyki
>> na poziomie szkoły średniej.
>
> amerykańskiej średniej? To tak nie za mocna znajomość :)
Miało dotrzeć do przybłędów z Harvardu, tak przypuszczam ;)
Edek
-
150. Data: 2012-07-26 15:10:17
Temat: Re: Wam wszytskim odbilo z tym Lispem :) [OT]
Od: "AK" <n...@n...com>
Użytkownik " fir" <f...@W...gazeta.pl> napisał:
> wtedy dziabnal mnie kleszcz,
Tylko mi nie mow, ze raptem max. trzy lata chorowania na borelioze
z az takimi objawami sie wiaza.
AK