The Hydra kernel previously had quite a few definitions which could not be directly translated into Python. For example, case statements within lambdas could not be translated unless the lambda could be turned into a def, as Python's match statements are statements, not expressions (i.e. they can only appear at the top level of a definition). While other problems were solved through rewriting, inline let and cases were solved by simply editing the Hydra sources -- it is usually easy to avoid these constructions by creating more let bindings.
However, that is not a good long-term solution. Users should be able to write any valid Hydra programs, and expect that they will map without failure into each target language, including Python. All of the previously unsupported definitions have been rewritten for Python compatibility; we just need to find a way to automate this rewriting.