You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@harmony.apache.org by johann Sorel <so...@inbox.com> on 2010/12/19 01:11:10 UTC

roadmap suggestion

Good evening,

I have been reading the previous discussion on the harmony roadmap and the little message on the web site motivated me to make this proposal. 
"If you have an idea, come and join the community and talk about it."


So here it is, first to quickly introduce myself and what I'm working on. My domain is Geographic Information Systems, developer on several java projects like GeoAPI, GeotoolKit, Constellation, Puzzle-GIS ... In the last several years I have always been very enthousiastic when developing and worked both on my professional and personnal time for thoses projects. My work implied working with ISO, OGC specifications and also JSR, even being part of the elaboration of some of them at the OGC. Today my motivation is nearly gone after the death of several projects I liked and mostly the behavior of oracle against the community. 

I started exploring alternatives outside the java world a few months ago and found out the Parrot VM project, to resume quickly what it is, it's an agnostic vm not related to any language and provide a set of tools to 'parse' syntaxe and run different languages, also allowing high interoperability between them. It believe it has a bright futur because that's the way a VM should be.

Since it is now unlikely that harmony will be a 'validate' jvm, my proposal is to change harmony to match a similar goal as parrot, an agnostic VM with java as the reference language and start implementing other languages. Java is a great syntaxe but not always appropriate for all works like small parallal tasks and scientific operations / formulas. MatLab for example is much more used in research areas, python also has a growing community in this domain, java is just too complex and they don't want to bother with it and I perfectly understand there concern. Same thing for web applications, there are plenty of alternatives out there which are effective and have growing community.

There are 3 objectives for this new 'Harmony':
- make a neutral VM, not a JVM. 
- allow companies who want to move away from java to do so. this can only be possible when there is a high interoperability between languages, to enable us to use our old java libraries and tools (maven,ant...) with different languages while library are progressivly rewritten in some other language.
- write programs in different syntaxes when they are more appropriate.

Actually, alternative langages like Fantom or Scala run correctly only on a JVM. This gives them very little credit as replacement for java.
Having a neutral, free and open source VM would benefit the community and creation of alternatives.
As I imagine it, there would be a very slim crossplatform Harmony core project providing the low level mecanism : native interfacing system, exceptions, debugging/profiling, threads. And several sub projects for each language.


You don't even have to rename the project. 
the 'Harmony' name perfectly matches this objective. :)


I don't want to see harmony dye because of some legal/license problems, you did a great work to make this vm, all the core for a neutral VM is done, don't let it all go to waiste. If the JVM path can not continue, then so be it. See further, what needs the futur of programming ?
Now, if the worst scenario happen and the decision to stop harmony is taken, then for the sake of futur vm projects make a generous effort and release a last version in public domain. 


The apache foundation expressed it's opinion and quit the JCP. I don't think it's a surprise, it's a natural decision after what happened. I am not part of the apache foundation, and made only very little exchanges with it on some mailing list like jackrabbit. This is actually the longest mail I ever written on thoses lists, just to note that apache decision reflect not only the apache foundation but also developers outside.

What I see around me at work and as moderator of development forums are three kind of peoples :
- base programmers, for them what does oracle is not there concern, they code, they get payed and that's all.
- Commercial, as long as it sells, it's fine, but if you raise a small phrase like : 'hey, if we can make run our app on ZZZ vm, that's a good selling argument and since we only do LGPL libraries that's one more point for our tools don't you think.". they get interested, anything is good to use for promotion, making the jvm look like evil is pretty easy, clients get's attracted to the fact that they are not binded to some big company, that's specialy true when you work with research and public instituts who are surfing on the "open-source" belief.
- Inovating programmers, doing more then their job time, answering student questions on forums, lead there own projet aside from work, thoses are the real strength of open-source, their main motivation is not money but the sake of the project and leaving behind them something helping the community. They are concerned by what does oracle, most don't like what's going on but are chained to continue because it's too much work to start again in a different language, and they can't really express themselves since commercial are behind them to ensure no harm is done to the company, the general atmosphere is something like "damn I'm trapped" or "let's hope it calms down".

My concerns are not for the two first categories, but the last one, if there is a chance to move away without loosing the work done then they'll definitly try it and the two first categories will follow. If Harmony can offer this small door to exit the trap then Harmony will won. I believe apache Maven is the key project, if a project can run with dependencies of different languages and bytecodes, you won!


that was a long mail ... sorry :)
I hope my english wasn't too bad and that it gave ideas.


johann sorel

____________________________________________________________
TRY FREE IM TOOLPACK at http://www.imtoolpack.com/default.aspx?rc=if5
Capture screenshots, upload images, edit and send them to your friends
through IMs, post on Twitter®, Facebook®, MySpace™, LinkedIn® – FAST!

Re: roadmap suggestion

Posted by Paul Anderson <p_...@volny.cz>.
Hi,
Exactly.I suggested additionally that if it avoids patent problems,
alternative bytecode could be used instead (like Dalvik's, since
it's already widespread) as long as that doesn't block performant
support of non-Java languages on the VM - while reusing as much of
Harmony's existing guts as possible. Also, I think that if an open
strongly-typed Java-like language were available on a widely-ported
performant VM, it would be a great alternative to C#/Java and a step
beyond Vala for Linux desktop/embedded programming.

What do people think about desirability and feasibility?
- Would moving to Dalvik or other bytecode be useful?
- Any reason why there would be insurmountable problems or poor
performance running both a reference strongly-typed language and
dynamic languages on such a VM?
- Could an OSGi-like system be used to allow a slim set of runtime
classes to be deployed for specific purposes like running e.g. a
Python runtime on top?
- Java could be the reference strongly-typed language initially if
Apache can find a way of defining clearly what functionality is
supported, probably by comparison with jdk 5/6. Then it can either
shadow Oracle's JDK or take a community-led direction - maybe be
replaced by another language later.
- In the short term, could Harmony be released as it is, certified
only for its ability to run the runtimes of a set of VM languages
like Python and Ruby? Its class library implementation is surely
solid enough. The bytecode output of the compiler could be changed
later to match an updated VM if needed, perhaps with a temporary
intermediate step, after the corresponding work on the language
runtimes.
Paul



Re: roadmap suggestion

Posted by Xiao-Feng Li <xi...@gmail.com>.
It could be that Harmony compiles JavaScript programs for server side.
Node.js is an interesting server side JS environment. I personally
like this direction and think high of its potential demands from the
industry...

Thanks,
xiaofeng

On Wed, Dec 22, 2010 at 1:44 PM, Jimmy,Jing Lv <fi...@gmail.com> wrote:
> Hi,
>
>     Johann, the whole idea is great to me.
>     Technically, I believe the Java world is just working on this topic -
> moving JVM to be a common VM for all script languages, maybe for all
> languages (say, Java7 has a new Dynamic Invoke in vm),  In my point of view,
> the difficulty here is still that we need to find enough influence to the
> industry or people that they'd like to use/contribute to a Apache-licensed
> VM like Harmony, we'd better hear more voice from other Apache projects,
> other communities and developers if they do have such requirement (e.g,
> Maven etc). Changing syntaxes will be another topic as well as changing the
> standard, need more well-defined infrastructure, or we may find a hot area
> where everything is changing very fast and standards are not finalized.
>     However I believe Harmony has chance - here or there.
>
>     It's very kind of you, Johann, to bring us an amazing idea ( I googled
> and find your appearance on a netbeans interview of
> AlterSIG<http://netbeans.org/community/articles/interviews/johann-sorel-altersig.html>,
> that is cool ;) )
>
> 2010/12/19 johann Sorel <so...@inbox.com>
>
>> Good evening,
>>
>> I have been reading the previous discussion on the harmony roadmap and the
>> little message on the web site motivated me to make this proposal.
>> "If you have an idea, come and join the community and talk about it."
>>
>>
>> So here it is, first to quickly introduce myself and what I'm working on.
>> My domain is Geographic Information Systems, developer on several java
>> projects like GeoAPI, GeotoolKit, Constellation, Puzzle-GIS ... In the last
>> several years I have always been very enthousiastic when developing and
>> worked both on my professional and personnal time for thoses projects. My
>> work implied working with ISO, OGC specifications and also JSR, even being
>> part of the elaboration of some of them at the OGC. Today my motivation is
>> nearly gone after the death of several projects I liked and mostly the
>> behavior of oracle against the community.
>>
>> I started exploring alternatives outside the java world a few months ago
>> and found out the Parrot VM project, to resume quickly what it is, it's an
>> agnostic vm not related to any language and provide a set of tools to
>> 'parse' syntaxe and run different languages, also allowing high
>> interoperability between them. It believe it has a bright futur because
>> that's the way a VM should be.
>>
>> Since it is now unlikely that harmony will be a 'validate' jvm, my proposal
>> is to change harmony to match a similar goal as parrot, an agnostic VM with
>> java as the reference language and start implementing other languages. Java
>> is a great syntaxe but not always appropriate for all works like small
>> parallal tasks and scientific operations / formulas. MatLab for example is
>> much more used in research areas, python also has a growing community in
>> this domain, java is just too complex and they don't want to bother with it
>> and I perfectly understand there concern. Same thing for web applications,
>> there are plenty of alternatives out there which are effective and have
>> growing community.
>>
>> There are 3 objectives for this new 'Harmony':
>> - make a neutral VM, not a JVM.
>> - allow companies who want to move away from java to do so. this can only
>> be possible when there is a high interoperability between languages, to
>> enable us to use our old java libraries and tools (maven,ant...) with
>> different languages while library are progressivly rewritten in some other
>> language.
>> - write programs in different syntaxes when they are more appropriate.
>>
>> Actually, alternative langages like Fantom or Scala run correctly only on a
>> JVM. This gives them very little credit as replacement for java.
>> Having a neutral, free and open source VM would benefit the community and
>> creation of alternatives.
>> As I imagine it, there would be a very slim crossplatform Harmony core
>> project providing the low level mecanism : native interfacing system,
>> exceptions, debugging/profiling, threads. And several sub projects for each
>> language.
>>
>>
>> You don't even have to rename the project.
>> the 'Harmony' name perfectly matches this objective. :)
>>
>>
>> I don't want to see harmony dye because of some legal/license problems, you
>> did a great work to make this vm, all the core for a neutral VM is done,
>> don't let it all go to waiste. If the JVM path can not continue, then so be
>> it. See further, what needs the futur of programming ?
>> Now, if the worst scenario happen and the decision to stop harmony is
>> taken, then for the sake of futur vm projects make a generous effort and
>> release a last version in public domain.
>>
>>
>> The apache foundation expressed it's opinion and quit the JCP. I don't
>> think it's a surprise, it's a natural decision after what happened. I am not
>> part of the apache foundation, and made only very little exchanges with it
>> on some mailing list like jackrabbit. This is actually the longest mail I
>> ever written on thoses lists, just to note that apache decision reflect not
>> only the apache foundation but also developers outside.
>>
>> What I see around me at work and as moderator of development forums are
>> three kind of peoples :
>> - base programmers, for them what does oracle is not there concern, they
>> code, they get payed and that's all.
>> - Commercial, as long as it sells, it's fine, but if you raise a small
>> phrase like : 'hey, if we can make run our app on ZZZ vm, that's a good
>> selling argument and since we only do LGPL libraries that's one more point
>> for our tools don't you think.". they get interested, anything is good to
>> use for promotion, making the jvm look like evil is pretty easy, clients
>> get's attracted to the fact that they are not binded to some big company,
>> that's specialy true when you work with research and public instituts who
>> are surfing on the "open-source" belief.
>> - Inovating programmers, doing more then their job time, answering student
>> questions on forums, lead there own projet aside from work, thoses are the
>> real strength of open-source, their main motivation is not money but the
>> sake of the project and leaving behind them something helping the community.
>> They are concerned by what does oracle, most don't like what's going on but
>> are chained to continue because it's too much work to start again in a
>> different language, and they can't really express themselves since
>> commercial are behind them to ensure no harm is done to the company, the
>> general atmosphere is something like "damn I'm trapped" or "let's hope it
>> calms down".
>>
>> My concerns are not for the two first categories, but the last one, if
>> there is a chance to move away without loosing the work done then they'll
>> definitly try it and the two first categories will follow. If Harmony can
>> offer this small door to exit the trap then Harmony will won. I believe
>> apache Maven is the key project, if a project can run with dependencies of
>> different languages and bytecodes, you won!
>>
>>
>> that was a long mail ... sorry :)
>> I hope my english wasn't too bad and that it gave ideas.
>>
>>
>> johann sorel
>>
>> ____________________________________________________________
>> TRY FREE IM TOOLPACK at http://www.imtoolpack.com/default.aspx?rc=if5
>> Capture screenshots, upload images, edit and send them to your friends
>> through IMs, post on Twitter®, Facebook®, MySpace™, LinkedIn® – FAST!
>>
>
>
>
> --
>
> Best Regards!
>
> Jimmy, Jing Lv
>



-- 
http://people.apache.org/~xli

Re: roadmap suggestion

Posted by "Jimmy,Jing Lv" <fi...@gmail.com>.
Hi,

     Johann, the whole idea is great to me.
     Technically, I believe the Java world is just working on this topic -
moving JVM to be a common VM for all script languages, maybe for all
languages (say, Java7 has a new Dynamic Invoke in vm),  In my point of view,
the difficulty here is still that we need to find enough influence to the
industry or people that they'd like to use/contribute to a Apache-licensed
VM like Harmony, we'd better hear more voice from other Apache projects,
other communities and developers if they do have such requirement (e.g,
Maven etc). Changing syntaxes will be another topic as well as changing the
standard, need more well-defined infrastructure, or we may find a hot area
where everything is changing very fast and standards are not finalized.
     However I believe Harmony has chance - here or there.

     It's very kind of you, Johann, to bring us an amazing idea ( I googled
and find your appearance on a netbeans interview of
AlterSIG<http://netbeans.org/community/articles/interviews/johann-sorel-altersig.html>,
that is cool ;) )

2010/12/19 johann Sorel <so...@inbox.com>

> Good evening,
>
> I have been reading the previous discussion on the harmony roadmap and the
> little message on the web site motivated me to make this proposal.
> "If you have an idea, come and join the community and talk about it."
>
>
> So here it is, first to quickly introduce myself and what I'm working on.
> My domain is Geographic Information Systems, developer on several java
> projects like GeoAPI, GeotoolKit, Constellation, Puzzle-GIS ... In the last
> several years I have always been very enthousiastic when developing and
> worked both on my professional and personnal time for thoses projects. My
> work implied working with ISO, OGC specifications and also JSR, even being
> part of the elaboration of some of them at the OGC. Today my motivation is
> nearly gone after the death of several projects I liked and mostly the
> behavior of oracle against the community.
>
> I started exploring alternatives outside the java world a few months ago
> and found out the Parrot VM project, to resume quickly what it is, it's an
> agnostic vm not related to any language and provide a set of tools to
> 'parse' syntaxe and run different languages, also allowing high
> interoperability between them. It believe it has a bright futur because
> that's the way a VM should be.
>
> Since it is now unlikely that harmony will be a 'validate' jvm, my proposal
> is to change harmony to match a similar goal as parrot, an agnostic VM with
> java as the reference language and start implementing other languages. Java
> is a great syntaxe but not always appropriate for all works like small
> parallal tasks and scientific operations / formulas. MatLab for example is
> much more used in research areas, python also has a growing community in
> this domain, java is just too complex and they don't want to bother with it
> and I perfectly understand there concern. Same thing for web applications,
> there are plenty of alternatives out there which are effective and have
> growing community.
>
> There are 3 objectives for this new 'Harmony':
> - make a neutral VM, not a JVM.
> - allow companies who want to move away from java to do so. this can only
> be possible when there is a high interoperability between languages, to
> enable us to use our old java libraries and tools (maven,ant...) with
> different languages while library are progressivly rewritten in some other
> language.
> - write programs in different syntaxes when they are more appropriate.
>
> Actually, alternative langages like Fantom or Scala run correctly only on a
> JVM. This gives them very little credit as replacement for java.
> Having a neutral, free and open source VM would benefit the community and
> creation of alternatives.
> As I imagine it, there would be a very slim crossplatform Harmony core
> project providing the low level mecanism : native interfacing system,
> exceptions, debugging/profiling, threads. And several sub projects for each
> language.
>
>
> You don't even have to rename the project.
> the 'Harmony' name perfectly matches this objective. :)
>
>
> I don't want to see harmony dye because of some legal/license problems, you
> did a great work to make this vm, all the core for a neutral VM is done,
> don't let it all go to waiste. If the JVM path can not continue, then so be
> it. See further, what needs the futur of programming ?
> Now, if the worst scenario happen and the decision to stop harmony is
> taken, then for the sake of futur vm projects make a generous effort and
> release a last version in public domain.
>
>
> The apache foundation expressed it's opinion and quit the JCP. I don't
> think it's a surprise, it's a natural decision after what happened. I am not
> part of the apache foundation, and made only very little exchanges with it
> on some mailing list like jackrabbit. This is actually the longest mail I
> ever written on thoses lists, just to note that apache decision reflect not
> only the apache foundation but also developers outside.
>
> What I see around me at work and as moderator of development forums are
> three kind of peoples :
> - base programmers, for them what does oracle is not there concern, they
> code, they get payed and that's all.
> - Commercial, as long as it sells, it's fine, but if you raise a small
> phrase like : 'hey, if we can make run our app on ZZZ vm, that's a good
> selling argument and since we only do LGPL libraries that's one more point
> for our tools don't you think.". they get interested, anything is good to
> use for promotion, making the jvm look like evil is pretty easy, clients
> get's attracted to the fact that they are not binded to some big company,
> that's specialy true when you work with research and public instituts who
> are surfing on the "open-source" belief.
> - Inovating programmers, doing more then their job time, answering student
> questions on forums, lead there own projet aside from work, thoses are the
> real strength of open-source, their main motivation is not money but the
> sake of the project and leaving behind them something helping the community.
> They are concerned by what does oracle, most don't like what's going on but
> are chained to continue because it's too much work to start again in a
> different language, and they can't really express themselves since
> commercial are behind them to ensure no harm is done to the company, the
> general atmosphere is something like "damn I'm trapped" or "let's hope it
> calms down".
>
> My concerns are not for the two first categories, but the last one, if
> there is a chance to move away without loosing the work done then they'll
> definitly try it and the two first categories will follow. If Harmony can
> offer this small door to exit the trap then Harmony will won. I believe
> apache Maven is the key project, if a project can run with dependencies of
> different languages and bytecodes, you won!
>
>
> that was a long mail ... sorry :)
> I hope my english wasn't too bad and that it gave ideas.
>
>
> johann sorel
>
> ____________________________________________________________
> TRY FREE IM TOOLPACK at http://www.imtoolpack.com/default.aspx?rc=if5
> Capture screenshots, upload images, edit and send them to your friends
> through IMs, post on Twitter®, Facebook®, MySpace™, LinkedIn® – FAST!
>



-- 

Best Regards!

Jimmy, Jing Lv