Radek Szymczyszyn

Results 186 comments of Radek Szymczyszyn

Hi Duncan, Since you were interested in this topic and I bounced off a problem related to it last weekend I'll drop some notes here. Maybe they'll be useful -...

Hi, @xxdavid! Interesting findings! I haven't read Pierce and Turner's _Local Type Inference_ completely, so I have only a superficial understanding of the paper - mostly what they achieved, not...

Hi @xxdavid! > I still think the Local Type Inference approach is doable in our case. If you agree, I will now dig deeper in the paper and try to...

Wow! These results are awesome 🎉 Keep up the great work, @xxdavid!

Thanks, @ilya-klyuchnikov! Can you share a (possibly minimised) snippet on which this happens? Generally, a denormalised type like `term()` should not reach `pick_value` because of these checks, specifically `all_refinable`: https://github.com/josefs/Gradualizer/blob/01a19313b3931f8d4e78e4cc80130a214f3b6041/src/typechecker.erl#L3954-L3957...

For more context, simple examples like these don't trigger this: ``` $ cat test.erl -module(test). -spec f(term()) -> ok. f(T) -> case T of 1 -> ok end. -spec g({a...

Please add ```erlang {gradualizer_opts, [ verbose ]}. ``` to `rebar.config` or, if using the escript, `--verbose` to the list of command line arguments. Verbose logging should result in a log...

Thanks for the example, @ilya-klyuchnikov! It's most likely the case that spurious types reach `gradualizer:pick_value/2` due to changes introduced in https://github.com/josefs/Gradualizer/pull/461, which introduces another call to `pick_value` than the one...

Thanks, @RobinMorisset, indeed it's a good point that Gradualizer should not crash in such cases. Thanks for all the raised issues 👍

Thanks for raising this, @mpope9! It's a bit hard to tell what's going on without reference to the code - I understand the code in question is private, isn't it?...