Find limit of recursion: Difference between revisions

Content added Content deleted
(→‎{{header|TXR}}: Drop @(do ...). Larger depth due to reduced stack usage (smaller unwind frames on Linux).)
Line 1,999:
=={{header|TXR}}==
 
<lang txrlisp>(set-sig-handler sig-segv
<lang txr>@(do
(lambda (signal async-p) (throw 'out)))
(set-sig-handler sig-segv
(lambda (signal async-p) (throw 'out)))
 
(defvar *count* 0)
 
(defun recurse ()
(inc *count*)
(recurse))
 
(catch (recurse)
(out () (put-line `caught segfault!\nreached depth: @{*count*}`))))</lang>
 
{{out}}
 
<pre>$ txr limit-of-recursion.txr tl
caught segfault!
reached depth: 294110909</pre>
 
=={{header|UNIX Shell}}==