diff options
| author | Kazuhiko Sakaguchi | 2019-08-09 21:19:16 +0200 |
|---|---|---|
| committer | Kazuhiko Sakaguchi | 2019-08-10 20:33:48 +0200 |
| commit | 970404f2bfa7a26ad64692844441261cebd80082 (patch) | |
| tree | 68f76ecb0664017f2988b44ba006b73a8960835c /doc/plugin_tutorial | |
| parent | b8477fb38842016c226ba9d7be8f60486411a2ee (diff) | |
[extraction] Fix #7191: Avoid unsound eta-reduction
`Mlutil.simpl` and `Mlutil.atomic_eta_red` did some unsound eta-reductions as
follows:
(fun x0 ... xn => MLexn x0 ... xn) ->eta MLexn.
`MLexn` raises an exception thus is not a value in OCaml. So the above
simplification may change the behavior of extracted programs. This patch
restricts `atomic_eta_red` to eta-redexes whose core is both atomic and value.
Acknowledgement: This work is financially supported by Peano System Inc.
on-behalf-of: @peano-system <info@peano-system.jp>
Diffstat (limited to 'doc/plugin_tutorial')
0 files changed, 0 insertions, 0 deletions
