22 ms·
> We have good reason to believe that some languages which excel at productivity when working on small projects, are actually detrimental to large ones. Yes, b
by ScottBurson 11y ago
> We have good reason to believe that some languages which excel at productivity when working on small projects, are actually detrimental to large ones.
Yes, but it's more than that: languages that are easy for novices to learn are bad for large projects; and furthermore, the very features that make them approachable are the ones that don't scale:
() weak typing/"helpful" implicit conversions, that do things like gloss over the number/string distinction, or provide conversions from various types to boolean
() simple scoping rules rather than full block scoping
() poor or nonexistent abstraction mechanisms (the original BASIC had no procedures with parameters and no user-definable datatypes); fortunately, in recent years, there seems to be more recognition that abstraction is important even for novices
Anyway, the obvious consequence is that because people like to keep using what they've learned once they've learned it, languages designed for approachability get used for large projects, whether that's a good idea or not.