我试图加入Rascal中的两个关系,就像SQL连接一样,使用以下代码:
rel[loc,loc,loc] methodInvocationsWithClass = {arround 40000 tuples};
rel[loc,loc] declaredClassHierarchy = {around 20000 tuples};
{ <from,to,class,super> | <from,to,class> <- methodInvocationsWithClass, <sub,super> <- declaredClassHierarchy, class == sub };
虽然这正是我所需要的,但它似乎只对小关系有效并且不能很好地扩展。
是否有更有效的替代方法来实现这一目标?
答案 0 :(得分:1)
事实上,我们有join keyword。还有很多其他useful relational operations are supported。通过Relation模块中的关键字或函数。