view tests/thog.ur @ 1888:5f478ecf65e4

Identify more local definitions as functions that should be lifted to the top level, which has synergistic effects on inlining later
author Adam Chlipala <adam@chlipala.net>
date Tue, 05 Nov 2013 11:58:52 -0500
parents 714e8b84221b
children
line wrap: on
line source
fun ack (m, n) =
    if m = 0 then
        n + 1
    else if n = 0 then
        ack (m - 1, 1)
    else
        ack (m - 1, ack (m, n - 1))

fun main n = return <xml>{[ack (n, 4)]}</xml>