You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The aggregation syntax - apart from being quite undocumented - needs much explanation.
Erik Meijer suggested via LinkedIn:
| I would love to be able to write something like
count_projects_with_vulnerable_log4j(Num) :-
projects_with_vulnerable_log4j(P)
|> { AllVulnProjects =>
val groups = AllVulnProjects.groupBy { it.projectId }
val Num = groups.values.sumOf { it.size }
}
The reason for "do transformations" |> do fn:group_by(...) was to have something declarative so that it could be implemented and optimized differently. However, with a judiciously designed sublanguage, that may still be possible.
Activity
burakemir commentedon Oct 14, 2025
I will move this over to discussions. I am not yet convinced this is the way to go.