3 ms·
"The lack of an IDE is a more valid complaint, (especially if you plan to have big teams of mediocre programmers)" Firstly, I take issue with your assertion th
by lemming 16y ago
"The lack of an IDE is a more valid complaint, (especially if you plan to have big teams of mediocre programmers)"
Firstly, I take issue with your assertion that IDEs only help mediocre programmers - a good IDE also makes good programmers even more productive. In fact, I'd go so far as to say that the difference might be greater for more sophisticated developers than more mediocre ones. They tend to take advantage of more features of the IDE than lesser mortals, who often use IDEs as "TextPad with a project view".
Also, the language subsetting concept that you're promoting helps the end user, but doesn't help the IDE developer develop the world-class tools that new languages really need to get popular. An IDE for Scala can't support just a subset of the language, it really has to support the whole thing to be useful. This language complexity massively raises the bar for a good IDE - I totally agree with the OP point that this really has to be a consideration in modern language design. Please, make it easy to parse with a top-down parser, and if at all possible design your toolchain to allow language tools to take advantage of it. The benefits you will reap are huge.
- zem 16y agoit seems to boil down to the "ide divide" [http://osteele.com/archives/2004/11/ides http://osteele.com/archives/2004/11/ides] - people who feel that the language is what gives them power are usually surfing the leading edge of languages that have matured enough to be used in production, but not enough to have proper ide support. by the time IDEs catch up to scala, they'll likely have moved on.
- lemming 16y agoMaybe so, but I think that the fact that the people designing languages don't think of tool support as a first class language feature makes that gap much larger than it needs to be. There's no reason a powerful language has to be difficult to parse or reason about, it's just that the people designing the language don't place it as highly on their list of priorities as (IMO) they should.