view tests/thog.ur @ 2126:ec1614fb97bb

Change MonoReduce to do fixed-pointing, since it sometimes enables more optimizations for itself (e.g., yanking lambdas out of [case]s)
author Adam Chlipala <adam@chlipala.net>
date Fri, 06 Mar 2015 09:46:21 -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>