Programmering

Tail-recursive programs in F#

23. maj 2020 af SJ199

Hej, jeg har fået den her opgave i F# hvor jeg skal sige om g er tail-recursive og derudover lave g og h om til continuation based funktioner, men kan ikke regne ud hvordan jeg gør. Håber nogen kan hjælpe!
type A<’a> = | D of ’a * bool
                     | E of A<’a> * A<’a>

let rec g acc x = match x with
                     | E(y,z) -> g (g acc z) y
                     | D(a,true) -> a::acc
                     | _ -> acc;;

let h x = g [] x;;
 


Skriv et svar til: Tail-recursive programs in F#

Du skal være logget ind, for at skrive et svar til dette spørgsmål. Klik her for at logge ind.
Har du ikke en bruger på Studieportalen.dk? Klik her for at oprette en bruger.