scottyp's latest activity
- 5mo ·
-
Public·
-
theblower.au
@noelrap
especially nowadays where strings are frozen by default, the distinction doesn't seem to matter much anymore.
Having a good type system means we can start using union literal types without having to define concrete enum classes, and so symbols might start to have a meaning again. We can elevate a parameter from something that might take a symbol to something that takes a value from a narrowly defined meaningful set.
I'm thinking about one of the talks that got me excited about typing, by Scott Wlaschin, "Domain Modelling Made Functional" (I think this one: https://www.youtube.com/watch?v=2JB1_e5wZmU). He comes from a DDD perspective and starts modelling all the business concepts as types before even writing any logic. That really appeals to me and comes back to my point about having union types start to represent meaningful domain concepts rather than a parameter being "some sort of symbol or string idk good luck"
Anyway I'm rambling now.
…See more
@noelrap
especially nowadays where strings are frozen by default, the distinction doesn't seem to matter much anymore.
Having a good type system means we can start using union literal types without having to define concrete enum classes, and so symbols might start to have a meaning again. We can elevate a parameter from something that might take a symbol to something that takes a value from a narrowly defined meaningful set.
I'm thinking about one of the talks that got me excited about typing, by Scott Wlaschin, "Domain Modelling Made Functional" (I think this one: https://www.youtube.com/watch?v=2JB1_e5wZmU). He comes from a DDD perspective and starts modelling all the business concepts as types before even writing any logic. That really appeals to me and comes back to my point about having union types start to represent meaningful domain concepts rather than a parameter being "some sort of symbol or string idk good luck"
Anyway I'm rambling now.
See less
@noelrap
especially nowadays where strings are frozen by default, the distinction doesn't seem to matter much anymore.
Having a good type system means we can start using union literal types without having to define concrete enum classes, and so symbols might start to have a meaning again. We can elevate a parameter from something that might take a symbol to something that takes a value from a narrowly defined meaningful set.
I'm thinking about one of the talks that got me excited about typing, by Scott Wlaschin, "Domain Modelling Made Functional" (I think this one: https://www.youtube.com/watch?v=2JB1_e5wZmU). He comes from a DDD perspective and starts modelling all the business concepts as types before even writing any logic. That really appeals to me and comes back to my point about having union types start to represent meaningful domain concepts rather than a parameter being "some sort of symbol or string idk good luck"
Anyway I'm rambling now.
@noelrap
especially nowadays where strings are frozen by default, the distinction doesn't seem to matter much anymore.
Having a good type system means we can start using union literal types without having to define concrete enum classes, and so symbols might start to have a meaning again. We can elevate a parameter from something that might take a symbol to something that takes a value from a narrowly defined meaningful set.
I'm thinking about one of the talks that got me excited about typing, by Scott Wlaschin, "Domain Modelling Made Functional" (I think this one: https://www.youtube.com/watch?v=2JB1_e5wZmU). He comes from a DDD perspective and starts modelling all the business concepts as types before even writing any logic. That really appeals to me and comes back to my point about having union types start to represent meaningful domain concepts rather than a parameter being "some sort of symbol or string idk good luck"
Anyway I'm rambling now.
…See more
See less
- 5mo ·
-
Public·
-
theblower.au
@noelrap For me it's about tightening up the feedback loop.
I want the type checker to tell me that assumptions I've made are wrong and that, for example, the method I've been testing with a symbol parameter is going to be passed a string from the API layer. It sucks to only find that one out in production when the alerts start going off.
Stupid mistakes like that should be surfaced as soon as I've finished typing the method call/signature.
…See more
@noelrap For me it's about tightening up the feedback loop.
I want the type checker to tell me that assumptions I've made are wrong and that, for example, the method I've been testing with a symbol parameter is going to be passed a string from the API layer. It sucks to only find that one out in production when the alerts start going off.
Stupid mistakes like that should be surfaced as soon as I've finished typing the method call/signature.
See less
@noelrap For me it's about tightening up the feedback loop.
I want the type checker to tell me that assumptions I've made are wrong and that, for example, the method I've been testing with a symbol parameter is going to be passed a string from the API layer. It sucks to only find that one out in production when the alerts start going off.
Stupid mistakes like that should be surfaced as soon as I've finished typing the method call/signature.
@noelrap For me it's about tightening up the feedback loop.
I want the type checker to tell me that assumptions I've made are wrong and that, for example, the method I've been testing with a symbol parameter is going to be passed a string from the API layer. It sucks to only find that one out in production when the alerts start going off.
Stupid mistakes like that should be surfaced as soon as I've finished typing the method call/signature.