Ola Bini, one of JRuby tam member brings us his vision of Future programming. He follows the idea of polyglot programming, that's not so far advocated by Martin Fowler. Good resume about it on InfoQ.
I agree with all of this, but there are some doubts about it on the blogosphere:
What difference with C? When you use pretty old Python or Ruby or Perl you can use C libraries.
I thought that this connection directed - no use Perl code by C programmers. And you know, Python, Ruby, Perl are very good languages with a lot of applications... but it have never been widely adopted by "enterprise".
Programmatically, Jython, JRuby, (and Hecl?:-) may even find it easier to interact on the same platform, but the humans writing the code will still push for consistency and the minimum set of common tools in order to aid the sharing and review of code. (David Welton)
Yes, it's true - it's why I think a bit different from Ola. I think his approach not real from today life with all of that old baggage we have (both in systems and in humans minds).
I think that in multilanguage environment the role of good design will grow - from today's point of view, when I think about some new functionality which not heavily connected with current environment I can done it in various language (if I write for JVM or CLR) - and then use from the Core system (or stable layer in Ola's terms). And otherwise when system are modular you can just implement plugin that use core functionality in any language.
And I think it's not new - for CLR we already have some of functionality in VB (with C# as "Core language"). In our case firstly because some members be new for C# (or Java), but knew VB and can quickly catch tasks with .Net and it. And next time we prefer to use late-binding over reflection for some integration with outside environment. This way and thinking of future systems (as blocks that can be implemented in various languages) more real.
No comments:
Post a Comment