Article View: pl.comp.lang.funkcyjne
Article #182Re: leniwosc jezyka
From: Krzysztof Parzyszek
Date: Sat, 18 Jan 2003 03:54
Date: Sat, 18 Jan 2003 03:54
22 lines
1784 bytes
1784 bytes
On Sat, 18 Jan 2003 02:07:59 +0100, Lucifer wrote: > Na czym polega leniwosc jezyka (np: w Haskellu)? > > Wydaje mi sie, ze Haskell potrafi samodzielnie 'dochodzic' do tego o co > tak naprawde programiscie chodzi - czyli zbyt wiele mi sie nie wydaje ;) Z grubsza na kolejności wykonywania beta-redukcji (w rachunku lambda): języki gorliwe wykonują je od prawej do lewej, języki leniwe od lewej do prawej. Oczywiście jest to duże uproszczenie i nie do końca prawda, ale tak można to sobie wyobrazić. Ujmując to w inny sposób można powiedzieć, że w językach leniwych najpierw redukowana jest aplikacja funkcji (tzn. argumenty funkcji są wstawiane do jej definicji), a potem ewentualnie dokonywane są redukcje wewnątrz otrzymanego wyrażenia. W językach gorliwych najpierw redukowane są argumenty i otrzymane wartości są dopiero wstawiane do definicji funkcji. -- <>> kristof@swissmail.org <Krzysztof Parzyszek> 9/2/2002 <<> "If you can't convince them, confuse them" -- HS Truman
Technical Details
Message-ID:
<b0aj4r$lcv$1@rmf-fm.presscom.net>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.rmf.pl!waszyngton.rmf.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!agh.edu.pl!news.agh.edu.pl!news.rmf.pl!waszyngton.rmf.pl!not-for-mail From: Krzysztof Parzyszek <kristof@swissmail.org> Newsgroups: pl.comp.lang.funkcyjne Subject: Re: leniwosc jezyka Date: Sat, 18 Jan 2003 03:54:03 +0000 (UTC) Organization: RMF FM Waszyngton Lines: 22 Message-ID: <b0aj4r$lcv$1@rmf-fm.presscom.net> References: <b0a9ea$aum$1@news.tpi.pl> NNTP-Posting-Host: antares.student.iastate.edu Mime-Version: 1.0 X-Trace: rmf-fm.presscom.net 1042862043 21919 64.113.65.96 (18 Jan 2003 03:54:03 GMT) X-Complaints-To: abuse@rmf.pl NNTP-Posting-Date: Sat, 18 Jan 2003 03:54:03 +0000 (UTC) User-Agent: slrn/0.9.7.4 (FreeBSD) Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit