Skip to content

Commit b2b8e80

Browse files
committed
speedup: do not use grafting :before, currently inefficient
1 parent 9dd967e commit b2b8e80

File tree

3 files changed

+8
-5
lines changed

3 files changed

+8
-5
lines changed

HB/common/synthesis.elpi

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -191,10 +191,16 @@ mixin-for T M MICompressed :- mixin-src T M Tm, !, std.do! [
191191
compress-coercion-paths MI MICompressed,
192192
].
193193

194+
pred compress-copy o:term, o:term.
195+
compress-copy X Y :- compress X Y, !.
196+
compress-copy (app L) (app L1) :- !, std.map L compress-copy L1.
197+
compress-copy X X.
198+
199+
194200
pred compress-coercion-paths i:term, o:term.
195201
compress-coercion-paths MI MICompressed :-
196202
if (get-option "compress_coercions" tt)
197-
(compress MI MICompressed)
203+
(compress-copy MI MICompressed)
198204
(MI = MICompressed).
199205

200206
pred mixin-for_mixin-builder i:prop, o:term.

HB/structure.elpi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -398,7 +398,7 @@ declare-coercion SortProjection ClassProjection
398398
std.map AllTgtSuper class_structure AllTgtSuperStructures,
399399

400400
mk-compression-clauses StructureF StructureT AllTgtSuperStructures AllCompressionClauses,
401-
std.forall AllCompressionClauses (c\ log.coq.env.accumulate current "hb.db" (clause _ (before "compress:begin") c)),
401+
std.forall AllCompressionClauses (c\ log.coq.env.accumulate current "hb.db" (clause _ _ c)),
402402
].
403403

404404

structures.v

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -232,9 +232,6 @@ pred docstring o:loc, o:string.
232232
% terms, since this is what you get when you apply coercions)
233233
:index (4)
234234
pred compress o:term, o:term.
235-
:name "compress:begin"
236-
compress (app L) (app L1) :- !, std.map L compress L1.
237-
compress X X.
238235

239236
}}.
240237

0 commit comments

Comments
 (0)