Javascript's constants are not const
Ruby's constants are not const
Python needs no "setter function" to achieve something close to constants.
Lua needs tables + metatables to achieve it
Only PHP seems to get it right
Wondering if there is a reason that dynamic languages are struggling on having a mechanism for "real" constants.
Anyone knows if there are deeper reasons or it is just how these languages were designed?
Define "real" constants (and define how the ones you list are not constant). Without understanding your definition(s) it's harder to have a meaningful reply.
Anyone knows if there are deeper reasons or it is just how these languages were designed?