Listan som returneras ska innehålla samma tecken som den anropade listan, i samma ordning. (Den ordning som skulle ges av anteckningarnas utskriftsrutiner.)
I den returnerade listan ska alla element förekomma på toppnivå, alla element i den returnerade listan ska med andra ord vara tecken, ej listor.
Metoden ska skrivas rekursivt.
Ingen felhantering behövs. Efter exekveringen av platt() ska den anropade listan finnas kvar.
Du ska utnyttja de redan givna primitiverna på ett relevant sätt.
Du ska också på ett relevant sätt använda virtuella funktioner för att hantera listor som kan innehålla både tecken och listor som element.
Exempel
(a b a a) ska ge (a b a a) (a (b)) ska ge (a b) (a (b a (a)) b) ska ge (a b a a b)
För handledning på denna uppgift hänvisas till Datortekniks jourhavande handledare eller Fredriks handledningstider
Notera att uppgifter som lämnas in på annat sätt, eller vid senare tidpunkt, inte kommer att beaktas.
Försättsblad finns här.
Fredrik Larsson <fredrikl@DoCS.UU.SE> Anders Berglund <Anders.Berglund@DoCS.UU.SE> Last modified: Wed Feb 18 16:35:26 MET 1998