Path: csiph.com!goblin2!goblin.stu.neva.ru!newsfeed2.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mail From: =?UTF-8?Q?Sebastian_Bia=c5=82y?= Newsgroups: pl.comp.programming Subject: =?UTF-8?Q?Re:_[OT]_Du=c5=bca_kasa_i_kiepski_wynik_-_dlaczego=3f?= Date: Sun, 13 Sep 2015 13:58:25 +0200 Organization: ATMAN - ATM S.A. Lines: 19 Message-ID: References: <55b2141b$0$2206$65785112@news.neostrada.pl> <991b8162-a09e-4ef3-b58f-6af678a319d4@googlegroups.com> <62f21ed0-8877-4e9a-8c64-63c9b737d16b@googlegroups.com> NNTP-Posting-Host: 176-115-85-233.via.zamek.net.pl Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-Trace: node2.news.atman.pl 1442145510 25215 176.115.85.233 (13 Sep 2015 11:58:30 GMT) X-Complaints-To: usenet@atman.pl NNTP-Posting-Date: Sun, 13 Sep 2015 11:58:30 +0000 (UTC) User-Agent: Mozilla/5.0 (Windows NT 6.0; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 In-Reply-To: Xref: csiph.com pl.comp.programming:27413 On 2015-09-13 13:30, AK wrote: > Wydaje mie sie ze zupelnie inaczej/nie rozumiesz "call by name". > Wytlumacz jak. Call by name z grubsza powinno za każdym razem zrobić ponowną ewaluację. Co oznacza że rezultat może być za kazdym razem inny. Call by need woła raz i ponieważ zakłada funkcyjność zawołania, wynik można cacheować. Przydaje się w jakiś dużych drzewach expressionów. W pierwszym przypadku mam poczucie większej liczby bugów kryjacych się w side effectach. W obu chodzi o to samo: nie licz jeśli nie trzeba. Dlatego nie widzę specjalnych różnic, ale widze niebezpieczenstwo. Trudno mi je wskazać palcem, to bardziej doświadczenie że kod posiadający niewidoczne zależnosci jest kłopotliwy w utrzymaniu. Może nie mam racji. Ale stosuje call by need. Dość często jak na przeciętnego klikacza.