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 7:25 AM
Reply to this message Reply
Advertisement
What if the next big thing isn't exactly a language. It seems to me (and I could be wrong) that there's basically a core set of things that all common operating systems and hardware do. As someone mentioned above, one of the big problems with the JVM is that it has poor integration with the OS. .NET has (I believe) improved upon this but it seems to me that their intention is to increase their stranglehold on the OS market and not to make this a common platform. Likewise Sun, as an OS vendor has ulterior motives as well.

Is there any technical reason why a standard machine spec (VM or otherwise) couldn't be created to allow pretty much any language to compile code that could be run on any platform that supports it? Is there any hope that this could be defined in an OS-camp neutral way? It seems to me that this would be a bigger leap forward than a new high-level language.

Nuwan Goonasekera

Posts: 32
Nickname: nuwang
Registered: Apr, 2006

Re: Steve Yegge: What the Next Big Language Will Be Posted: Feb 14, 2007 7:40 AM
Reply to this message Reply
> Is there any technical reason why a standard machine spec
> (VM or otherwise) couldn't be created to allow pretty much
> any language to compile code that could be run on any
> platform that supports it? Is there any hope that this
> could be defined in an OS-camp neutral way? It seems to
> me that this would be a bigger leap forward than a new
> high-level language.

Afaik, the .NET CLI specification technically supports this, although Mono is the only implementation I know of to actually implement the specification for other platforms.

http://en.wikipedia.org/wiki/Common_Language_Infrastructure

Christopher Diggins

Posts: 1215
Nickname: cdiggins
Registered: Feb, 2004

Re: Steve Yegge: What the Next Big Language Will Be Posted: Feb 14, 2007 9:15 AM
Reply to this message Reply
> Is there any technical reason why a standard machine spec
> (VM or otherwise) couldn't be created to allow pretty much
> any language to compile code that could be run on any
> platform that supports it?

No.

> Is there any hope that this
> could be defined in an OS-camp neutral way?

Yes.

> It seems to
> me that this would be a bigger leap forward than a new
> high-level language.

I agree!

This is a big part of what I am trying to achieve with the Cat language ( <a href="http://www.cat-language.com">http://www.cat-language.com</a> ). That is a low-level OS agnostic langauge which can be targeted by virtually any other language.

Yeah I know it sounds like I am reinventing the JVML or CLI but there are several key differences:

- I am taking lessons from modern langauge research, and not just emulating a 8086 processor (IMNSHO both the JVML and CLI are not inspired designs, and are seriously outdated)
- My goal is interoperability with a wide variety of langauges which don't fall cleanly into the C-like family.
- I am keeping concurrency in mind from the beginning.
- The language is also designed to be easily used by people as well (like Forth, or Postscript)
- I don't have a corporate agenda!

Christopher Diggins

Posts: 1215
Nickname: cdiggins
Registered: Feb, 2004

Re: Steve Yegge: What the Next Big Language Will Be Posted: Feb 14, 2007 9:16 AM
Reply to this message Reply
Accidentally pressed submit instead of preview, sorry for the broken link:

http://www.cat-language.com

James Watson

Posts: 2024
Nickname: watson
Registered: Sep, 2005

Re: Steve Yegge: What the Next Big Language Will Be Posted: Feb 14, 2007 9:18 AM
Reply to this message Reply
> > Is there any technical reason why a standard machine
> spec
> > (VM or otherwise) couldn't be created to allow pretty
> much
> > any language to compile code that could be run on any
> > platform that supports it? Is there any hope that this
> > could be defined in an OS-camp neutral way? It seems
> to
> > me that this would be a bigger leap forward than a new
> > high-level language.
>
> Afaik, the .NET CLI specification technically supports
> this, although Mono is the only implementation I know of
> to actually implement the specification for other
> platforms.

From what I understand the implementation is only partial and there is some question whether a full implementation is even feasible. I'm not sure there's guarantee that CLI will remain free.

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

James Watson

Posts: 2024
Nickname: watson
Registered: Sep, 2005

Re: Steve Yegge: What the Next Big Language Will Be Posted: Feb 14, 2007 9:21 AM
Reply to this message Reply
> This is a big part of what I am trying to achieve with the
> Cat language

I was following it for a while. Interesting stuff.

> - I don't have a corporate agenda!

Who 'owns' Cat exactly?

Dave Webb

Posts: 55
Nickname: lazydaze
Registered: Feb, 2006

Re: Steve Yegge: What the Next Big Language Will Be Posted: Feb 14, 2007 9:33 AM
Reply to this message Reply
> This is a big part of what I am trying to achieve with the
> Cat language ( <a
> href="http://www.cat-language.com">http://www.cat-language.
> com</a> ). That is a low-level OS agnostic langauge which
> can be targeted by virtually any other language.
>

Wow! You kept that one quiet!

The idea of a VM that's inspired, developed and maintained by the Open Software community seems like an absolutely stunning idea to me.

Of course it's not just the VM itself, but the precompiled libraries that come with it, and no doubt 'other stuff'. But it's no more ambitious than Linux was, and could potentially have the same revolutionary impact.

Nuwan Goonasekera

Posts: 32
Nickname: nuwang
Registered: Apr, 2006

Re: Steve Yegge: What the Next Big Language Will Be Posted: Feb 14, 2007 10:04 AM
Reply to this message Reply
> From what I understand the implementation is only partial
> and there is some question whether a full implementation
> is even feasible. I'm not sure there's guarantee that CLI
> will remain free.

Since it's standardized by both ECMA and ISO, the standardized versions should remain free I believe, although whether newer versions will continue to do so is open to doubt.

I just took a look at Mono again after a long time and the implementation seems to have grown quite mature (Despite having no contribution from Microsoft).
http://www.mono-project.com/FAQ:_General

Nuwan Goonasekera

Posts: 32
Nickname: nuwang
Registered: Apr, 2006

Re: Steve Yegge: What the Next Big Language Will Be Posted: Feb 14, 2007 10:22 AM
Reply to this message Reply
I was just browsing through the Cat site. Looks like it's coming out great :)

> Yeah I know it sounds like I am reinventing the JVML or
> CLI but there are several key differences:
>
> - I am taking lessons from modern langauge research, and
> not just emulating a 8086 processor (IMNSHO both the JVML
> and CLI are not inspired designs, and are seriously
> outdated)

It would be interesting to know more about your design goals. Do you have a comparison between Cat, JVML and CIL available?

Also, I was browsing through the Cat language primitives. How is native interop supported via Cat? I take it there must be an instruction similar to pinvokeImpl in the CIL? Do you propose to allow stuff like pointer arithmetic for languages that require it?

James Watson

Posts: 2024
Nickname: watson
Registered: Sep, 2005

Re: Steve Yegge: What the Next Big Language Will Be Posted: Feb 14, 2007 10:54 AM
Reply to this message Reply
> Since it's standardized by both ECMA and ISO, the
> standardized versions should remain free I believe,
> although whether newer versions will continue to do so is
> open to doubt.

From what I can tell, ISO doesn't require it to be free. I don't know about ECMA.

> I just took a look at Mono again after a long time and the
> implementation seems to have grown quite mature (Despite
> having no contribution from Microsoft).
> http://www.mono-project.com/FAQ:_General

I don't want to discount what they have done but I'm not convinced that this project is taken seriously. That could change. 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. Right now, I can compile Java on a PC and run it on OS400. I can also take that code and run it on AIX. I can also run it on Linux and on Windows (these are all used by our organization.) I can't do that with CLI. That may change but it's not even visible on the horizon at this point.

Christopher Diggins

Posts: 1215
Nickname: cdiggins
Registered: Feb, 2004

Re: Steve Yegge: What the Next Big Language Will Be Posted: Feb 14, 2007 10:59 AM
Reply to this message Reply
> I was just browsing through the Cat site. Looks like it's
> coming out great :)

Thank you!

> > Yeah I know it sounds like I am reinventing the JVML or
> > CLI but there are several key differences:
> >
> > - I am taking lessons from modern langauge research,
> and
> > not just emulating a 8086 processor (IMNSHO both the
> JVML
> > and CLI are not inspired designs, and are seriously
> > outdated)
>
> It would be interesting to know more about your design
> goals. Do you have a comparison between Cat, JVML and CIL
> available?

No, but that is an excellent idea.

> Also, I was browsing through the Cat language primitives.
> How is native interop supported via Cat? I take it there
> must be an instruction similar to pinvokeImpl in the CIL?

There would definitely have to be. This would be a Cat extension though, "Cat + interop". The core Cat language is designed for maximal portability, so that anyone who uses it has a certain minimal guarantee of portability and safety. Unrestricted interoperability completely blows the lid off of any guarantee.

However, I am in the planning stages of a safer interoperability system between binary libraries written in different languages. This would involve passing type information (including DbC style contracts), across DLL borders.

> Do you propose to allow stuff like pointer arithmetic for
> languages that require it?

I wasn't planning on it. Cat is designed to be easily extended though, so I am sure that someone would introduce an unsafe variant which extends the core Cat langauge with pointer primitives. I would have no objection to that, but it won't be part of the core specification. Otherwis it would severely restrict portability, concurrency, safety, and efficiency.

I do however plan on extending a byte block data type, which will provide pointer like semantics inside of a memory sandbox. This will allow languages to offer pointer like semantics, but not unrestricted access to things like the call stack and evaluation stack.

Christopher Diggins

Posts: 1215
Nickname: cdiggins
Registered: Feb, 2004

Re: Steve Yegge: What the Next Big Language Will Be Posted: Feb 14, 2007 11:02 AM
Reply to this message Reply
> > This is a big part of what I am trying to achieve with
> the
> > Cat language
>
> I was following it for a while. Interesting stuff.

Thanks!

> > - I don't have a corporate agenda!
>
> Who 'owns' Cat exactly?

Everyone :-)

It is entirely public domain, so I have no ownership over it at all, and I have relinquished all copyrights. Kind of insane isn't it?

Christopher Diggins

Posts: 1215
Nickname: cdiggins
Registered: Feb, 2004

Re: Steve Yegge: What the Next Big Language Will Be Posted: Feb 14, 2007 11:12 AM
Reply to this message Reply
> Wow! You kept that one quiet!

:-)

I've been working a lot with the academic community on this one. There are various places where I have been discussing it:

http://lambda-the-ultimate.org/search/node/Cat
http://tech.groups.yahoo.com/group/concatenative/msearch?query=Cat&submit=Search&charset=windows-1252
http://article.gmane.org/gmane.comp.science.types/4506
http://www.cdiggins.com

It isn't quite ready to be dropped on the programming community at large (but the interpreter does work quite well, even with the type-checker temporarily disabled).

I am currently working on some benchmarks of the language (it is very fast!) so expect to hear more in the coming months.

> The idea of a VM that's inspired, developed and maintained
> by the Open Software community seems like an absolutely
> stunning idea to me.

Thanks! I hope other people will take the ideas and run with them. I might not be the best person to lead a community based effort, but I definitely would encourage and support it to thye best of my abilities.

> Of course it's not just the VM itself, but the precompiled
> libraries that come with it, and no doubt 'other stuff'.
> But it's no more ambitious than Linux was, and could
> potentially have the same revolutionary impact.

The precompiled libraries are a long-term goal of mine, but we'll see what kind of traction I can gain with the open-source community. It may happen sooner than I expect.

Daniel Berger

Posts: 1383
Nickname: djberg96
Registered: Sep, 2004

Re: Steve Yegge: What the Next Big Language Will Be Posted: Feb 14, 2007 11:13 AM
Reply to this message Reply
Oddly, he already said Ruby was going to be the NBL => http://steve.yegge.googlepages.com/next-big-thing

Maybe he's changed his mind since I know of no plan to implement optional static typing for Ruby 2.0 (though it was considered for Sydney, which has since become Rubinius).

But, except for that (and perhaps list comprehensions), Ruby 2.0 fits the bill, assuming the tools come along to support it. Oddly, he doesn't seem to put much emphasis on threading and multi-core support.

Dick Ford

Posts: 149
Nickname: roybatty
Registered: Sep, 2003

Re: Steve Yegge: What the Next Big Language Will Be Posted: Feb 14, 2007 11:59 AM
Reply to this message Reply
> > I just took a look at Mono again after a long time and
> the
> > implementation seems to have grown quite mature
> (Despite
> > having no contribution from Microsoft).
> > http://www.mono-project.com/FAQ:_General
>
> I don't want to discount what they have done but I'm not
> convinced that this project is taken seriously.

Well, a lot of people don't take Java seriously. But interestingly enough, Mono has more presence on the open source desktop than Java does.

> That
> could change. 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. Right now, I can compile Java on a PC and run it on
> OS400. I can also take that code and run it on AIX. I
> can also run it on Linux and on Windows (these are all
> used by our organization.) I can't do that with CLI.

Mono runs on Windows, Linux, OSX, BSD, and several other operating systems.

> 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.

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