Tim

Results 171 comments of Tim

> @tim-smart a strange thing is happening. > > https://effect.website/play#a7005d4f9f10 > > The program is finished, but the process is hanging. I didn't get the reason yet, will investigate, but...

Also not sure what to do about time zones :)

The definition of `f` should be: ```ts type f_data_first = (a: number, b: number) => number type f_data_last = (b: number) => (a: number) => number type f = f_data_last...

Seems to trigger a bunch of false negatives: https://www.typescriptlang.org/play/?ts=5.5.1-rc#code/JYWwDg9gTgLgBAbzgEwK4EMA2d0Gc4CmAZkQQMYwD6aWcAvnEVBCHAETGkUD0AYqgDsKwCALYAoUJFiI4AYVFFgAcwA0cAKLAYACwJR6jZqw4lyMCeIIAPafDKjc8GpgBcicXC9wAPAElwbBsYAgFkfAAKADoY9ChlXHcoAnRkUUwATxwBDIBtAF0ASjgAXgA+bIz1AGUVAXQYVGTCaxCw-ACwbBK4TswyiM9vYbjtDPcABTj0EAIQqFx-QLLctkxQ5V02fNUh4a8AIwhkcd7AvbhC91rlesbki6WulrbwuGjY+MS4ZNT0rPQOQKxXKlRqdQaTQIL1Cbz6pTOXQGF2G3G4hFwmGAAhgAFpkMBcOgDutcQJgriseS4AABGAZMAEXBkKDAMB4plUmDcQTAJQEZC43AQ+5MlHeQkAEQa6F4wAWMHcETiCXcfgAgvFULMcbgQRUjhB1oDdvtvEcTmrzsMrnAbncoeIGD1OOZqBhMFZbNB4EgXDh8PwhDARAJ3bQ6OIvXY4A4BE44CB0GAES4fEMfOr1AAhAZEJXodzq-VwbMliK4AiYfPyRQqKIKARKZSZsolxvNht1lu502+LOlgaV6vuDv1sct9VldQ15VFktl0oVCddpsqHy58QDABM6grVaIM-b3aiSbAAHkoLx0MBMPvq3v0CWtLp9FFWcodDAIkRlYV-4UQA

> You're supposed to declare the implementation and the complete signature as the generics: [Playground Link](https://www.typescriptlang.org/play/?ts=5.5.1-rc#code/JYWwDg9gTgLgBAbzgEwK4EMA2d0Gc4CmAZkQQMYwD6aWcAvnEVBCHAETGkUD0AYqgDsKwCALYAoUJFiI4AYVFFgAcwA0cAKLAYACwJR6jZqw4lyMCeIIAPafDKjc8GpgBcicXC9wAPAElwbBsYAgFkfAAKADoY9ChlXHcoAnRkUUwATxwBDIBtAF0ASjgAXgA+bIz1AGUVAXQYVGTCaxCw-ACwbBK4TswyiM9vYbjtDPcABTj0EAIQqFx-QLLctkxQ5V02fNUh4a8AIwhkcd7AvbhC91rlesbki6WulrbwuGjY+MS4ZNT0rPQOQKxXKlRqdQaTQIL1Cbz6pTOXQGF2G3G4hFwmGAAhgAFpkMBcOgDutcQJgriseS4AABGAZMAEXBkKDAMB4plUmDcQTAJQEZC43AQ+5MlHeQkAEQa6F4wAWMHcETiCXcfgAgvFULMcbgQRUjhB1oDdvtvEcTmrzsMrnAbncoeIGD1OOZqBhMFZbNB4EgXDh8PwhDARAJ3bQ6OJxPTGXBpTBZfKnAifOr1AAhAa4AiYIjuBQCJTKKIFoupsrqPPvdDudX6uDp+ullQlxQqHyZ6MM6Hx9AAGTw8B6qYzAyrytr9cbpQqEWzufzbeLzeU5abS9bhfbnZj0PtkOaPV7coVcAAZHGZQOnFGbHY4A4BMmQOgwAiXD4hsekzBTXaRY6AwAEzqHOOZEJW65bsWL5gAA8lAvDoMAmBgbmoHoPWWi6PoUSssoOgwBERDKoUZGFEAA) > > That is: `dual(arity, implementation)` Ok gotcha. This would require a rewrite of...

> The majority of dual signatures are in this form I think: The majority of our signatures are re-exported from internal implementation, which use the two `dual` generics.

If you want to play around, you can update the dual signature in the Function module, run `pnpm check` and see how it will affect the codebase.

This would be a major change, the changeset will need adjusting. `dual` was also made quite "relaxed" on purpose, so I'm on fence about this change.

At some point we will likely change strategy for the inference helpers: https://github.com/Effect-TS/effect/issues/2982

On the last PR we mentioned that the replay buffer could be separated from the underlying strategy. I explored that option here: https://github.com/Effect-TS/effect/pull/3135 I think it might be a better...