Konstantin Romanov

Results 12 comments of Konstantin Romanov

It is possible to maintain backward compatibility with ```haskell data Value = Object !Object | Array !Array | String !Text | Number !Scientific -- represents either integer, or floating point...

The issue ".0 is added to integers or not added to doubles" is much less important than backward compatibility. People rely on `aeson`, and if it breaks, they will definitely...

@phadej - of course, parsing takes the same time, but expanded version of `4.53986e+30` is apparently twice longer. But this is not the major problem - suppose, input data of...

@bergmark unfortunately, `Scientific` looses information about initial type on purpose. So, it is impossible to reliably decide, either to put `3` or `3.0` (for some people this makes it easier...

@leftaroundabout - unfortunately ```haskell *Data.Scientific> base10Exponent $ fromFloatDigits (1.98e2 :: Float) 0 ``` So, the heuristics should be a bit more complicated. There is `floatingOrInteger` heuristics in `Data.Scientific`, which fails...

Unfortunately, it is impossible to control inside `aeson` library, how the `Scientific` number is created. Somebody could get it after long series of calculations, for instance. :-( So, unfortunately, we...

What about ```ocaml type t = { foo : int } ``` i.e. surround with spaces?

I have checked `analyzer` just now (latest commit), it does not fail any test on M2 (Apple M2 Pro, MBP 16" 2023): ``` kromanov1@MM2M0W0HWL analyzer % make test No errors...

```console kromanov1@MM2M0W0HWL analyzer % dune runtest In file included from goblint.c:1: ../include/goblint.h:5:6: warning: a function declaration without a prototype is deprecated in all versions of C and is treated as...

Thanks for the suggestion. Yes, it makes sense.This is especially useful for C++ codegeneration like ```ocaml let emptyTemplateTClass name = [%string.padded {|template class $name { $name() {} ~$name() {} };...