From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: David Reitter Newsgroups: gmane.emacs.help Subject: Re: to big nest level of recursion Date: Tue, 21 Mar 2006 21:31:29 +0000 Message-ID: <0E851319-E5C4-4617-872F-29459A5970BB@gmail.com> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 (Apple Message framework v746.3) Content-Type: multipart/mixed; boundary="===============1661878603==" X-Trace: sea.gmane.org 1142976713 28010 80.91.229.2 (21 Mar 2006 21:31:53 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Tue, 21 Mar 2006 21:31:53 +0000 (UTC) Cc: anton.belyaev@gmail.com Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Tue Mar 21 22:31:52 2006 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1FLoSC-0000C6-1U for geh-help-gnu-emacs@m.gmane.org; Tue, 21 Mar 2006 22:31:48 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1FLoSL-0004tI-PP for geh-help-gnu-emacs@m.gmane.org; Tue, 21 Mar 2006 16:31:57 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1FLoS5-0004pY-98 for help-gnu-emacs@gnu.org; Tue, 21 Mar 2006 16:31:41 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1FLoS3-0004lz-0l for Help-gnu-emacs@gnu.org; Tue, 21 Mar 2006 16:31:40 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1FLoS2-0004lp-RN for Help-gnu-emacs@gnu.org; Tue, 21 Mar 2006 16:31:38 -0500 Original-Received: from [64.233.184.192] (helo=wproxy.gmail.com) by monty-python.gnu.org with esmtp (Exim 4.52) id 1FLoS6-0004vq-A1 for Help-gnu-emacs@gnu.org; Tue, 21 Mar 2006 16:31:42 -0500 Original-Received: by wproxy.gmail.com with SMTP id 57so1393750wri for ; Tue, 21 Mar 2006 13:31:27 -0800 (PST) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:mime-version:to:message-id:content-type:cc:subject:from:date:x-mailer; b=X/JZ8vAqob+eoOIeIfmrEvx+TD8ReW8obYDnxQrCfbdBop4MHyM1tavpsNCmW4McImb8wJQAlfdZAwqSqNUiSDF5B7T/3/UuwdxxrXto1/xMM6DtuWvthF9c9syre5Q26qNAPoTjfny/8ueZ9uz5SALkCgcGw1ciyVSbh8YZeYA= Original-Received: by 10.65.152.2 with SMTP id e2mr123149qbo; Tue, 21 Mar 2006 13:31:26 -0800 (PST) Original-Received: from ?10.0.0.100? ( [82.41.74.89]) by mx.gmail.com with ESMTP id p4sm310363qba.2006.03.21.13.31.26; Tue, 21 Mar 2006 13:31:26 -0800 (PST) Original-To: Emacs help X-Mailer: Apple Mail (2.746.3) X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:33922 Archived-At: --===============1661878603== Content-Type: multipart/signed; micalg=sha1; boundary=Apple-Mail-57--686751106; protocol="application/pkcs7-signature" --Apple-Mail-57--686751106 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed > 2) Pascal Bourguignon mentioned TCO. Is it relatively right recursion > handling? Why does it works only with boolean expressions? I thought > that it is enougth to make recursive call the last in the expression > (as it is in Haskell). Where can I read about it? TCO = tail call optimization, just what you were referring to. In Prolog, I'd formulate the algorithm just like you did. In elisp, you can't, because stack size is small and there is obviously no TCO. http://en.wikipedia.org/wiki/Tail_recursion Maybe it's a consolation for you that for every recursive algorithm, you can formulate an iterative version. And you don't bloat a call stack when you do so. --Apple-Mail-57--686751106 Content-Transfer-Encoding: base64 Content-Type: application/pkcs7-signature; name=smime.p7s Content-Disposition: attachment; filename=smime.p7s MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIIGSDCCAwEw ggJqoAMCAQICECpBOEPOHM4BejmOP5CCsMQwDQYJKoZIhvcNAQEEBQAwYjELMAkGA1UEBhMCWkEx JTAjBgNVBAoTHFRoYXd0ZSBDb25zdWx0aW5nIChQdHkpIEx0ZC4xLDAqBgNVBAMTI1RoYXd0ZSBQ ZXJzb25hbCBGcmVlbWFpbCBJc3N1aW5nIENBMB4XDTA1MTIxMjE2MDk1M1oXDTA2MTIxMjE2MDk1 M1owYjEQMA4GA1UEBBMHUmVpdHRlcjEOMAwGA1UEKhMFRGF2aWQxFjAUBgNVBAMTDURhdmlkIFJl aXR0ZXIxJjAkBgkqhkiG9w0BCQEWF2RhdmlkLnJlaXR0ZXJAZ21haWwuY29tMIIBIjANBgkqhkiG 9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4bqHoSvkjP7motQjFcJ9zYEU08Kj6RASiq69ESk8MZ/gfShR 1CtN98eHFdcxeDbB8bfDhu7pNuWUZwXX9sRguA5s9i4hiioabPhJBs8RbigN0PFm17+7LRLEtQC5 f5mqXGjl07pMyhnLvcGBaZkovjzHP+tU4ewPU92wTUHAtqyriC3GgdxjOGo3pKBChRD8f7E7TIRj iy8G+SXK1ocQ9AAyAEtcKGNT0twSeGE8zz5GTLpeOrO64legj3doI50p9mhr4Fx0zh8+7Tlpg+KY VWf0x0O5xi5yD8u4Ih31yrydyJTNjXB64ABjDR2g8ElpHTXTYRXtq7KBk7y0Rf311QIDAQABozQw MjAiBgNVHREEGzAZgRdkYXZpZC5yZWl0dGVyQGdtYWlsLmNvbTAMBgNVHRMBAf8EAjAAMA0GCSqG SIb3DQEBBAUAA4GBAKqaMz6cpRGl4OTIGkioqaNfWFpx24fTYNSN0QvvuTqhm/UMIZhojJoA6iUG wp8tVMjVivF4mvrJQrsPNIWgmVyb+iyCo/fEpV2+mcTWZvnF+se3dY/Cb6K14Iz8HHKgNh1p5wZF 4s8GVduxB18HrUPmKh97q/WTLVcWtknevqhoMIIDPzCCAqigAwIBAgIBDTANBgkqhkiG9w0BAQUF ADCB0TELMAkGA1UEBhMCWkExFTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBU b3duMRowGAYDVQQKExFUaGF3dGUgQ29uc3VsdGluZzEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBT ZXJ2aWNlcyBEaXZpc2lvbjEkMCIGA1UEAxMbVGhhd3RlIFBlcnNvbmFsIEZyZWVtYWlsIENBMSsw KQYJKoZIhvcNAQkBFhxwZXJzb25hbC1mcmVlbWFpbEB0aGF3dGUuY29tMB4XDTAzMDcxNzAwMDAw MFoXDTEzMDcxNjIzNTk1OVowYjELMAkGA1UEBhMCWkExJTAjBgNVBAoTHFRoYXd0ZSBDb25zdWx0 aW5nIChQdHkpIEx0ZC4xLDAqBgNVBAMTI1RoYXd0ZSBQZXJzb25hbCBGcmVlbWFpbCBJc3N1aW5n IENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDEpjxVc1X7TrnKmVoeaMB1BHCd3+n/ox7s vc31W/Iadr1/DDph8r9RzgHU5VAKMNcCY1osiRVwjt3J8CuFWqo/cVbLrzwLB+fxH5E2JCoTzyvV 84J3PQO+K/67GD4Hv0CAAmTXp6a7n2XRxSpUhQ9IBH+nttE8YQRAHmQZcmC3+wIDAQABo4GUMIGR MBIGA1UdEwEB/wQIMAYBAf8CAQAwQwYDVR0fBDwwOjA4oDagNIYyaHR0cDovL2NybC50aGF3dGUu Y29tL1RoYXd0ZVBlcnNvbmFsRnJlZW1haWxDQS5jcmwwCwYDVR0PBAQDAgEGMCkGA1UdEQQiMCCk HjAcMRowGAYDVQQDExFQcml2YXRlTGFiZWwyLTEzODANBgkqhkiG9w0BAQUFAAOBgQBIjNFQg+oL LswNo2asZw9/r6y+whehQ5aUnX9MIbj4Nh+qLZ82L8D0HFAgk3A8/a3hYWLD2ToZfoSxmRsAxRoL gnSeJVCUYsfbJ3FXJY3dqZw5jowgT2Vfldr394fWxghOrvbqNOUQGls1TXfjViF4gtwhGTXeJLHT HUb/XV9lTzGCAxAwggMMAgEBMHYwYjELMAkGA1UEBhMCWkExJTAjBgNVBAoTHFRoYXd0ZSBDb25z dWx0aW5nIChQdHkpIEx0ZC4xLDAqBgNVBAMTI1RoYXd0ZSBQZXJzb25hbCBGcmVlbWFpbCBJc3N1 aW5nIENBAhAqQThDzhzOAXo5jj+QgrDEMAkGBSsOAwIaBQCgggFvMBgGCSqGSIb3DQEJAzELBgkq hkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTA2MDMyMTIxMzEzMFowIwYJKoZIhvcNAQkEMRYEFDUN efsMRBtUgUbO4xo0xeaEZh8kMIGFBgkrBgEEAYI3EAQxeDB2MGIxCzAJBgNVBAYTAlpBMSUwIwYD VQQKExxUaGF3dGUgQ29uc3VsdGluZyAoUHR5KSBMdGQuMSwwKgYDVQQDEyNUaGF3dGUgUGVyc29u YWwgRnJlZW1haWwgSXNzdWluZyBDQQIQKkE4Q84czgF6OY4/kIKwxDCBhwYLKoZIhvcNAQkQAgsx eKB2MGIxCzAJBgNVBAYTAlpBMSUwIwYDVQQKExxUaGF3dGUgQ29uc3VsdGluZyAoUHR5KSBMdGQu MSwwKgYDVQQDEyNUaGF3dGUgUGVyc29uYWwgRnJlZW1haWwgSXNzdWluZyBDQQIQKkE4Q84czgF6 OY4/kIKwxDANBgkqhkiG9w0BAQEFAASCAQAvjVrWgQg0taxtJuz/nT7TM4bwnYUiL6XrMnLvD9e4 YVVXaOiD5SVHaMOPLKKXNbb9ik+59EqITEF2d6Utl5q8SdGhH6XyME7u/ZrhJ1Kttd6DgQuj+TCU aN/Xa7mNWotCTc/IJBdKV0SPqnsueNCkdxhY896qP7VPapMjLiemW6YNm5/aUxT8mVg/cm3MO+HS GBBfRPZQY9AdMPk+YeIbRCKHc9YQSHewl5vI/faC8rP81A/5/fGlcaT8SJ9n+6Yvovvt8HDE73p/ x0LlCoQiarsxkeNM11o/tGt4WwDuKcxqJQ3eZXWV8dPtzKGKe9K4FtXIFUS5KUI5X6XaAxD/AAAA AAAA --Apple-Mail-57--686751106-- --===============1661878603== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ help-gnu-emacs mailing list help-gnu-emacs@gnu.org http://lists.gnu.org/mailman/listinfo/help-gnu-emacs --===============1661878603==--