Skip to content

Make `IsoValue` for extended lambdas saner

Konstantin Ivanov requested to merge martoon/zip-fix into master

Description

Problem: currently fromVal . toVal is not id, thus for code which uses extended lambdas (e.g. PermanentImpl) there might be produced extra instructions.

In particular, this is a problem for one of our projects, because now roundtrip test fails there due to use of PermanentImpl.

Solution: make ## optimize out such cases.

Previously this operator has been moved to Lorentz.Base, but I moved it back because it is a sort of hack (we have optimize function for public use) and optimizations which it applies depend on concrete situation.

Related issue(s)

Resolves #

Checklist for your Merge Request

Related changes (conditional)

  • Tests (see short guidelines)

    • If I added new functionality, I added tests covering it.
    • If I fixed a bug, I added a regression test to prevent the bug from silently reappearing again.
  • Documentation

    • I checked whether I should update the docs and did so if necessary:
    • I updated the changelog if my changes are externally visible.

Stylistic guide (mandatory)

Edited by Konstantin Ivanov

Merge request reports