https://np.reddit.com/r/haskell/comments/msz3hr/megaparsec_asking_for_advice_on_a_parsing_problem/guygauv/
I came up with this:
partitionTopLevelStatements :: [TopLevelStatement] -> ([ImportStatement], [PackageDefinition])
partitionTopLevelStatements = foldr acc init
where
init = ([], [])
acc (ImportStmt e) (imports, packages) = (e : imports, packages)
acc (PackageDef e) (imports, packages) = (imports, e : packages)
Posted Apr 18, 2021, 10:47 AM UTC
10