Article View: pl.comp.lang.funkcyjne
Article #186Re: leniwosc jezyka
From: Michal Przybylek
Date: Sat, 18 Jan 2003 12:44
Date: Sat, 18 Jan 2003 12:44
30 lines
2185 bytes
2185 bytes
"Lucifer" <przemek@nospam.pa55.bytom.sdi.tpnet.pl> wrote: > Na czym polega leniwosc jezyka (np: w Haskellu)? Leniwosc polega na tym, ze dana czynnosc jest wykonywana dopiero wtedy, kiedy jej wykonanie jest niezbedne. Leniwosc jezyka odnosi sie najczesciej do leniwego obliczania wyrazen. Przy czym wazna jej cecha jest to, ze wykonuje zawsze conajwyzej tyle samo obiczen co gorliwe podejscie (pomijajac stala). Najprosciej leniwosc wyrazen mozna sobie wyobrazic przez otagowana wartosc, bedaca, albo thunk'iem z kodem do wykonania, albo wynikiem, otrzymanym z wykonania tego kodu (porownaj np. leniwe przekazywanie [call-by-need], z przkazaywaniem przez nazwe [cal-by-name ; jak bylo np. w starym Algol'u]). Leniwe podejscicie umozliwia troche inne spojrzenie na konstrukcje programow. Jest jakgdyby rozciagniecieciem rekurencji na dane inne niz funkcje i uogulnieniem jej przy pracy z funkcjami, przez co doskonale wpasowuje sie do wiadomego stylu programowania [zreszta, nie do konca...]. Oczywiscie leniwosc ma sens tylko w jezykach czystych. > Wydaje mi sie, ze Haskell potrafi samodzielnie 'dochodzic' do tego o co > tak naprawde programiscie chodzi - czyli zbyt wiele mi sie nie wydaje ;) Ta forma jest niepoprawna. Wiesz dlaczego. Nie wiesz, ze my tez wiemy. mp
Technical Details
Message-ID:
<b0bifd$on$1@news.tpi.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!news.ipartners.pl!newsfeed.gazeta.pl!newsfeed.tpinternet.pl!news.tpi.pl!not-for-mailReferences:
<b0a9ea$aum$1@news.tpi.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!news.ipartners.pl!newsfeed.gazeta.pl!newsfeed.tpinternet.pl!news.tpi.pl!not-for-mail From: "Michal Przybylek" <pkmichal@poczta.onet.pl> Newsgroups: pl.comp.lang.funkcyjne Subject: Re: leniwosc jezyka Date: Sat, 18 Jan 2003 13:44:49 +0100 Organization: tp.internet - http://www.tpi.pl/ Lines: 32 Message-ID: <b0bifd$on$1@news.tpi.pl> References: <b0a9ea$aum$1@news.tpi.pl> NNTP-Posting-Host: 62.244.143.75 X-Trace: news.tpi.pl 1042894126 791 62.244.143.75 (18 Jan 2003 12:48:46 GMT) X-Complaints-To: usenet@tpi.pl NNTP-Posting-Date: Sat, 18 Jan 2003 12:48:46 +0000 (UTC) X-Newsreader: Microsoft Outlook Express 6.00.2600.0000 X-MSMail-Priority: Normal X-Priority: 3 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit