The Artima Developer Community
Sponsored Link

Java Community News
Steve Yegge: What the Next Big Language Will Be

63 replies on 5 pages. Most recent reply: Feb 20, 2007 11:39 PM by Andrew Inggs

Welcome Guest
  Sign In

Go back to the topic listing  Back to Topic List Click to reply to this topic  Reply to this Topic Click to search messages in this forum  Search Forum Click for a threaded view of the topic  Threaded View   
Previous Topic   Next Topic
Flat View: This topic has 63 replies on 5 pages [ « | 1 2 3 4 5 | » ]
James Watson

Posts: 2024
Nickname: watson
Registered: Sep, 2005

Re: Steve Yegge: What the Next Big Language Will Be Posted: Feb 14, 2007 12:17 PM
Reply to this message Reply
Advertisement
> Mono runs on Windows, Linux, OSX, BSD, and several other
> operating systems.

It's supportted on more platforms that I realized. If it were to supported on OS400 and AIX it might be an option.

> > That may change but it's not even visible on the
> horizon
> > n at this point.
>
> No, you don't make those decisions for others.

Huh? What decisions?

Dick Ford

Posts: 149
Nickname: roybatty
Registered: Sep, 2003

Re: Steve Yegge: What the Next Big Language Will Be Posted: Feb 14, 2007 3:46 PM
Reply to this message Reply
> > Mono runs on Windows, Linux, OSX, BSD, and several
> other
> > operating systems.
>
> It's supportted on more platforms that I realized. If it
> were to supported on OS400 and AIX it might be an option.
>

I wouldn't be surprised if it was supported on AIX. It does run on some IBM mainframe. Check the website for further details.

> > > That may change but it's not even visible on the
> > horizon
> > > n at this point.
> >
> > No, you don't make those decisions for others.
>
> Huh? What decisions?

It might not be visible on the horizon for *you*, but obviously it is visible on the horizon and being used by others.

On the server side, Java is obviously huge and is so is .NET. I know somebody in Germany (city of Munich?) did a big Mono rollout a while back. On the client, Mono will be able to leverage the huge amount of code that is and will be coming out for .NET in the coming years. Also, Mono can run Java bytecode via IKVM.

James Watson

Posts: 2024
Nickname: watson
Registered: Sep, 2005

Re: Steve Yegge: What the Next Big Language Will Be Posted: Feb 14, 2007 5:54 PM
Reply to this message Reply
> > > Mono runs on Windows, Linux, OSX, BSD, and several
> > other
> > > operating systems.
> >
> > It's supportted on more platforms that I realized. If
> it
> > were to supported on OS400 and AIX it might be an
> option.

I did check but I didn't see it. But I admit that it's much more well supported than I thought.

> I wouldn't be surprised if it was supported on AIX. It
> does run on some IBM mainframe. Check the website for
> further details.
>
> > > > That may change but it's not even visible on the
> > > horizon
> > > > n at this point.
> > >
> > > No, you don't make those decisions for others.
> >
> > Huh? What decisions?
>
> It might not be visible on the horizon for *you*, but
> obviously it is visible on the horizon and being used by
> others.

Sure. I never said it wasn't.

> On the server side, Java is obviously huge and is so is
> .NET. I know somebody in Germany (city of Munich?) did a
> big Mono rollout a while back. On the client, Mono will
> be able to leverage the huge amount of code that is and
> will be coming out for .NET in the coming years. Also,
> Mono can run Java bytecode via IKVM.

We have to support OS400 at my work. That's not going to change anytime soon. Until Mono is supported on that operating system, it doesn't make sense to choose it over something that does run on all of our platforms. That's all I was saying.

I think you are misunderstanding what me. I already said the JVM isn't going to cut it. CLI might become that but it's not universally (or nearly so) supported. But like I said that could change. My point is that these types of battles are getting tiresome. It seems like this is the next step for standardization.

Your comment about how I don't make "decisions for others" seemed very aggressive to me. It makes me think that you are assigning some sort of agenda to me that I don't have. My opinion is that the JVM could very well end up being a legacy platform. I'm pretty sure Java will be. I'm guessing that most next-generation languages will probably target both platforms for the near future as Scala does. I don't have any particular attachment to the JVM and I know Java well but that doesn't mean I'm in love with it.

Todd Blanchard

Posts: 316
Nickname: tblanchard
Registered: May, 2003

Re: Steve Yegge: What the Next Big Language Will Be Posted: Feb 14, 2007 8:44 PM
Reply to this message Reply
> Careful with terminology here. What do we mean by 'dynamic
> language'? Are we talking about dynamic typing, or some
> other indefinable sexiness? Just because a language is
> statically typed doesn't mean it has to be a calcified
> language.

I mean languages where I don't have to code for an hour just to see if it will run. I like to work on running systems while they run. Which is why I work in seaside. Live systems, not dead text in files.

Nuwan Goonasekera

Posts: 32
Nickname: nuwang
Registered: Apr, 2006

Re: Steve Yegge: What the Next Big Language Will Be Posted: Feb 14, 2007 10:05 PM
Reply to this message Reply
> On the server side, Java is obviously huge and is so is
> .NET. I know somebody in Germany (city of Munich?) did a
> big Mono rollout a while back. On the client, Mono will
> be able to leverage the huge amount of code that is and
> will be coming out for .NET in the coming years. Also,
> Mono can run Java bytecode via IKVM.

Dick, do you have any info on the legal status/copyright issues for Mono? I saw on the site that it's GPL and therefore free, but will this remain true for future versions of .NET? Does ISO/ECMA standardization ensure this?

Nuwan Goonasekera

Posts: 32
Nickname: nuwang
Registered: Apr, 2006

Re: Steve Yegge: What the Next Big Language Will Be Posted: Feb 14, 2007 10:32 PM
Reply to this message Reply
> > Mono runs on Windows, Linux, OSX, BSD, and several
> other
> > operating systems.
>
> It's supportted on more platforms that I realized. If it
> were to supported on OS400 and AIX it might be an option.

I was as surprised as you are. And it appears that it's quickly becoming a more viable platform than the JVM (provided it's completely free and remains so).

Truthfully, I've always been partial to Java for reasons not entirely understood by me. Let's just say its simplicity has a certain aesthetic appeal ;) Lately though, I'm starting to think that the JVM camp is making some seriously bone-headed mistakes. It's high time to give up on the ostrich algorithm and realize that the "Java only" mantra is no longer a viable position.

Microsoft/.NET CLI on the other hand, seems to have understood the core of the problem. Most of the time, it's not merely a technology issue of the JVM vs CLI, it's a political one: people just like to code in their own pet language, give them that and they'll follow you to hell.

Personally, I now want to leave all these VM wars behind. I'm sincerely hoping that the NBL will be the D language. I've been following it a bit and it looks like it has all the features I've wanted most: the raw power and speed of C++ (when needed) with the elegance/simplicity of Java. Hope that Walter Bright is in the process of making some sort of C++ to D conversion tool, that could provide a major boost to its adoption. If D can be compiled to CIL/JVML/Cat, that's an added bonus.

Dick Ford

Posts: 149
Nickname: roybatty
Registered: Sep, 2003

Re: Steve Yegge: What the Next Big Language Will Be Posted: Feb 15, 2007 1:34 AM
Reply to this message Reply
> We have to support OS400 at my work. That's not going to
> change anytime soon. Until Mono is supported on that
> operating system, it doesn't make sense to choose it over
> something that does run on all of our platforms. That's
> all I was saying.
>

Yes, obviously you have to work with what you have and what is supported. And it might even make sense to stay with what you have even if it was supported.

> I think you are misunderstanding what me. I already said
> the JVM isn't going to cut it. CLI might become that but
> it's not universally (or nearly so) supported. But like I
> said that could change. My point is that these types of
> battles are getting tiresome. It seems like this is the
> next step for standardization.
>

I'm not sure what you mean by "isn't going to cut it" except for a post of yours referring to the JVM having poor integration with the OS - which I still don't understand. Do you mean Java (the language) not having something like C#'s pinvoke?

Now there are limitations to what is reasonably implementable within the confines of the runtime you are targetting. For example, some Smalltalk implementations use self-modifying code to do their magic, would be hard (or impossible) to do within the confines of the CLR or JVM.

But I'm not sure what you mean by standardization. It would be nice if there was some hypothetical, uber-flexible VM out there that could accommodate any language under the sun, but obviously there are trade-offs that are made.


> Your comment about how I don't make "decisions for others"
> seemed very aggressive to me. It makes me think that you
> are assigning some sort of agenda to me that I don't have.
> My opinion is that the JVM could very well end up being a
> a legacy platform. I'm pretty sure Java will be. I'm
> guessing that most next-generation languages will probably
> target both platforms for the near future as Scala does.
> I don't have any particular attachment to the JVM and I
> I know Java well but that doesn't mean I'm in love with it.

Unfortunately, there seems to be a tendency in IT forums of making statements that are presented to be some broad-sweeping consensus, but in reality are only applicable to someone's limited environment.

In any event, CLI doesn't seem to be gaining a ton of traction. Maybe that will change.

I don't want to discount what they have done but I'm not convinced that this project is taken seriously.

The main thing is that until it becomes truly standard across the majority of operating systems it's not meeting the goal of a single standard to compile to.

That may change but it's not even visible on the horizon at this point.

So maybe I misread the context in which you were making those statements, and if so then I apologize, but I think it's good to be clear that one is referring to the domain that they operate in.

Dick Ford

Posts: 149
Nickname: roybatty
Registered: Sep, 2003

Re: Steve Yegge: What the Next Big Language Will Be Posted: Feb 15, 2007 1:40 AM
Reply to this message Reply
> > On the server side, Java is obviously huge and is so is
> > .NET. I know somebody in Germany (city of Munich?) did
> a
> > big Mono rollout a while back. On the client, Mono
> will
> > be able to leverage the huge amount of code that is and
> > will be coming out for .NET in the coming years. Also,
> > Mono can run Java bytecode via IKVM.
>
> Dick, do you have any info on the legal status/copyright
> issues for Mono? I saw on the site that it's GPL and
> therefore free, but will this remain true for future
> versions of .NET? Does ISO/ECMA standardization ensure
> this?

Nuwan, actually Mono is under several licenses. The compiler is plain GPL. The VM is LGPL. The class libraries are X11/MIT.

The whole FUD about what will happen to Mono has been played to death - mostly by ABMers that hate that Mono was even done. At this point, the general consensus is that since Microsoft hasn't done anything up to this point, it's unlikely they would do anything - especially now that they have made some deals with Novell. In any case, you as a end-developer or user of Mono wouldn't have anything to worry about.

Nat Friedman said it best. If you write a thousand lines of code, then you're likely infringing on some silly patent.

Nuwan Goonasekera

Posts: 32
Nickname: nuwang
Registered: Apr, 2006

Re: Steve Yegge: What the Next Big Language Will Be Posted: Feb 15, 2007 1:57 AM
Reply to this message Reply
> they have made some deals with Novell. In any case, you
> as a end-developer or user of Mono wouldn't have anything
> to worry about.

Thanks! This is very encouraging. Seeing that so many languages are available for the CLI (including Java), it's going to be very interesting to see what Sun plans to do next...

Dick Ford

Posts: 149
Nickname: roybatty
Registered: Sep, 2003

Re: Steve Yegge: What the Next Big Language Will Be Posted: Feb 15, 2007 2:43 AM
Reply to this message Reply
> > they have made some deals with Novell. In any case,
> you
> > as a end-developer or user of Mono wouldn't have
> anything
> > to worry about.
>
> Thanks! This is very encouraging. Seeing that so many
> languages are available for the CLI (including Java), it's
> going to be very interesting to see what Sun plans to do
> next...

I've been impressed with the languages that have come out and ride on top of the CLI. Nemerle, Boo, F#, among others. There's also a project that is implementing a Smalltalk and Lisp interpreter to be run on the client (in the browser via WPF/e), or standalone.

Java has Scala, Groovy, Nice (oh how I wish Nice would get more attention and love), CAL (interesting Haskell-like language), and JRuby. But I'm a bit surprised that there haven't been more languages that haven't come out for the JVM. There's a German site with hundreds of pre-processors, languages, and anything that can be construed as a language that runs on top of the JVM, but the vast majority are defunct.

Where Microsoft offered 4 or 5 languages out of the box for .NET, Sun has always seemed to not want to or at least been indifferent towards other languages besides Java. I'm not sure why - maybe it's political within Sun.

As far the future of the JVM - who knows. Maybe Google or IBM will fork it, but make it backward compatible. Sun has had engineering layoffs and the JVM is mature and robust technology, so I'm not sure how gung-ho they are with regards to pushing the envelope.

Mark Thornton

Posts: 275
Nickname: mthornton
Registered: Oct, 2005

Re: Steve Yegge: What the Next Big Language Will Be Posted: Feb 15, 2007 8:09 AM
Reply to this message Reply
> Mono can run Java bytecode via IKVM.

"AWT and Swing are not presently functional. This is a low priority item for the project developers."

James Watson

Posts: 2024
Nickname: watson
Registered: Sep, 2005

Re: Steve Yegge: What the Next Big Language Will Be Posted: Feb 15, 2007 10:00 AM
Reply to this message Reply
> I'm not sure what you mean by "isn't going to cut it"
> except for a post of yours referring to the JVM having
> poor integration with the OS - which I still don't
> understand. Do you mean Java (the language) not having
> something like C#'s pinvoke?

I don't want to go into depth but one of the biggest complaints about the JVM is that it only allows for a subset of what an OS allows. A good example is how difficult it is to write an interactive text based application (e.g. vi) with Java. You have to add native libraries which generally means compiling them. This means you either don't do these things or you lose some of the benefits of a generic VM.

What I was suggesting is that instead of a new language being the big thing, a new VM spec that was supported almost universally so that languages don't have to be targeted at the OS (or proprietary VMs) anymore. If this spec was really well done, it might not even have to be virtual. It could be natively supported in future systems.

> Now there are limitations to what is reasonably
> implementable within the confines of the runtime you are
> targetting. For example, some Smalltalk implementations
> use self-modifying code to do their magic, would be hard
> (or impossible) to do within the confines of the CLR or
> JVM.

But that's a limitation of those standards not of machine instruction sets in general.

> But I'm not sure what you mean by standardization. It
> would be nice if there was some hypothetical,
> uber-flexible VM out there that could accommodate any
> language under the sun, but obviously there are trade-offs
> that are made.

I guess where I am coming from is that every machine has an instruction set and every language compiles to an instruction set. A big thing now is virtualization. It seems more elegant and more effective to instead target compilation at a standard instruction set. Then similar to CLI and JVM, you can virtualize this instruction set once on each platform and probably in the future address it at a native level.

I'm not sure it would eliminate the need for non-standard instruction sets but it would definitely simplify language selection and application delivery.

> Unfortunately, there seems to be a tendency in IT forums
> of making statements that are presented to be some
> broad-sweeping consensus, but in reality are only
> applicable to someone's limited environment.

Are they presented that way or is it that you are choosing to interpret it that way.

> In any event, CLI doesn't seem to be gaining a ton of
> traction. Maybe that will change.


'Seem(s)' is a keyword I use to mark statements as opinions and/or working concepts that are not backed by facts or that I am not sure about. If I had said 'it isn't gaining traction' you could claim I was presenting something that is false. I didn't not use the word 'seem' by accident and I try very hard to be consistent about this.

> I don't want to discount what they have done but I'm
> not convinced that this project is taken seriously.


This is clearly about my opinion. Whether I am convinced about something doesn't say anything about it's veracity. It's also a weak statement that should not be confused with "I am convinced it's not taken seriously." The implication being that I could be convinced, I just am not at this point in time.

And ironically, after you pointed out certain facts that I was unaware of I am now in fact convinced that it is taken seriously.

> The main thing is that until it becomes truly standard
> across the majority of operating systems it's not meeting
> the goal of a single standard to compile to.


This is a tautology. I'm not sure what there is to say about it. If CLI isn't (virtually) universally supported, it doesn't meet the goal I have stated. It's actually the odd platforms that need this kind of thing the most.

> That may change but it's not even visible on the
> horizon at this point.


Are there plans to support Mono on platforms like OS390, OS400, zOS? If not then I stand by this statement.

> So maybe I misread the context in which you were making
> those statements, and if so then I apologize, but I think
> it's good to be clear that one is referring to the domain
> that they operate in.

I think it's good not to assume things about what others write or say. Blast first, ask questions later seems like a poor strategy for reasoned discussions.

James Watson

Posts: 2024
Nickname: watson
Registered: Sep, 2005

Re: Steve Yegge: What the Next Big Language Will Be Posted: Feb 15, 2007 10:05 AM
Reply to this message Reply
> Java has Scala, Groovy, Nice (oh how I wish Nice would get
> more attention and love), CAL (interesting Haskell-like
> language), and JRuby.

BTW, Scala is also targeted at CLR.

You may already know this but there are a lot more languages than that for the JVM:

http://www.robert-tolksdorf.de/vmlanguages.html

Dick Ford

Posts: 149
Nickname: roybatty
Registered: Sep, 2003

Re: Steve Yegge: What the Next Big Language Will Be Posted: Feb 15, 2007 12:30 PM
Reply to this message Reply
> > I'm not sure what you mean by "isn't going to cut it"
> > except for a post of yours referring to the JVM having
> > poor integration with the OS - which I still don't
> > understand. Do you mean Java (the language) not having
> > something like C#'s pinvoke?
>
> I don't want to go into depth but one of the biggest
> complaints about the JVM is that it only allows for a
> subset of what an OS allows. A good example is how
> difficult it is to write an interactive text based
> application (e.g. vi) with Java. You have to add native
> libraries which generally means compiling them. This
> means you either don't do these things or you lose some of
> the benefits of a generic VM.
>

Are you sure that you don't mean the class libraries and not the VM. One of my criticisms of Java is that it doesn't have something like pinvoke. I want to be able to leverage native libraries and don't expect the standard class libraries to have everything under the sun.

> What I was suggesting is that instead of a new language
> being the big thing, a new VM spec that was supported
> almost universally so that languages don't have to be
> targeted at the OS (or proprietary VMs) anymore. If this
> spec was really well done, it might not even have to be
> virtual. It could be natively supported in future
> systems.
>

I'm still not sure exactly what you're writing about. Are you talking about something that would be integrated into the OS itself? Or maybe something along the lines of http://lambda-the-ultimate.org/node/2021 is what you're referring to.

> > Now there are limitations to what is reasonably
> > implementable within the confines of the runtime you
> are
> > targetting. For example, some Smalltalk
> implementations
> > use self-modifying code to do their magic, would be
> hard
> > (or impossible) to do within the confines of the CLR or
> > JVM.
>
> But that's a limitation of those standards not of machine
> instruction sets in general.
>

A big part of that is limitations imposed by the security model and also dealing with Java/C# style OO syntax.

> > But I'm not sure what you mean by standardization. It
> > would be nice if there was some hypothetical,
> > uber-flexible VM out there that could accommodate any
> > language under the sun, but obviously there are
> trade-offs
> > that are made.
>
> I guess where I am coming from is that every machine has
> an instruction set and every language compiles to an
> instruction set. A big thing now is virtualization. It
> seems more elegant and more effective to instead target
> compilation at a standard instruction set. Then similar
> to CLI and JVM, you can virtualize this instruction set
> once on each platform and probably in the future address
> it at a native level.
>
> I'm not sure it would eliminate the need for non-standard
> instruction sets but it would definitely simplify language
> selection and application delivery.
>

Nobody is ever going to agree on some universal bytecode. Hell, a lot of people don't even see the point of compiling to bytecode.


> > Unfortunately, there seems to be a tendency in IT
> forums
> > of making statements that are presented to be some
> > broad-sweeping consensus, but in reality are only
> > applicable to someone's limited environment.
>
> Are they presented that way or is it that you are choosing
> to interpret it that way.
>

Fanboyism is rampant and they're are definitely presented in that way.

> > The main thing is that until it becomes truly
> standard
> > across the majority of operating systems it's not
> meeting
> > the goal of a single standard to compile to.

>
> This is a tautology. I'm not sure what there is to say
> about it. If CLI isn't (virtually) universally supported,
> it doesn't meet the goal I have stated. It's actually the
> odd platforms that need this kind of thing the most.
>
> > That may change but it's not even visible on the
> > horizon at this point.

>
> Are there plans to support Mono on platforms like OS390,
> OS400, zOS? If not then I stand by this statement.
>

Mono is "supported" on the OS390 or at least runs on OS390. But the problem is that you are never going to have a runtime supported on every platform. Now in theory, Mono could be supported on almost every modern platform and if you want to pay Novell, they'll do the port to OS400 and zOS, but universally supported on every platform isn't reasonable.

> > So maybe I misread the context in which you were making
> > those statements, and if so then I apologize, but I
> think
> > it's good to be clear that one is referring to the
> domain
> > that they operate in.
>
> I think it's good not to assume things about what others
> write or say. Blast first, ask questions later seems like
> a poor strategy for reasoned discussions.

I'll probably continue to blast first at what I consider blatant fanboyism, but in your case I probably should have read your comments more closely within the context of your requirements.

But I still think it's unreasonable to call for some universally-supported platform. You're never going to have everyone agree on something like that, and if you're willing to pony up, then you can have Mono or Java or anything else ported to what you consider critical platforms.

Dick Ford

Posts: 149
Nickname: roybatty
Registered: Sep, 2003

Re: Steve Yegge: What the Next Big Language Will Be Posted: Feb 15, 2007 12:32 PM
Reply to this message Reply
> > Java has Scala, Groovy, Nice (oh how I wish Nice would
> get
> > more attention and love), CAL (interesting Haskell-like
> > language), and JRuby.
>
> BTW, Scala is also targeted at CLR.
>
> You may already know this but there are a lot more
> languages than that for the JVM:
>
> http://www.robert-tolksdorf.de/vmlanguages.html

I mentioned that site. If you look closely, the vast majority of them are defunct, wouldn't be usable in a production environment, or were really preprocessors and other things like that.

Flat View: This topic has 63 replies on 5 pages [ « | 1  2  3  4  5 | » ]
Topic: Atlassian Releases Bamboo, a Continuous Integration Server Previous Topic   Next Topic Topic: Sun Creates Project Woodstock JSF Repository

Sponsored Links



Google
  Web Artima.com   

Copyright © 1996-2019 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use