The Artima Developer Community
Sponsored Link

Weblogs Forum
Heron Needs a Killer App

53 replies on 4 pages. Most recent reply: Sep 13, 2005 2:48 AM by Kondwani Mkandawire

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 53 replies on 4 pages [ 1 2 3 4 | » ]
Christopher Diggins

Posts: 1215
Nickname: cdiggins
Registered: Feb, 2004

Heron Needs a Killer App (View in Weblogs)
Posted: Aug 19, 2005 4:25 PM
Reply to this message Reply
Summary
Heron is going to need a killer-app if it has any hope of surviving. I may have found one ... teaching programming.
Advertisement
Many of the most popular languages today had a specific problem domain where they shone very brightly at the beginning of their adoption. Java had web applets, PHP had dynamic web content, Delphi had GUI database applications, Perl had text processing, etc. Since Basic and Logo there haven't been any mainstream languages which were especially appropriate for beginners (except for arugably Python).

Regular readers may be surprised to learn, that despite being a statically compiled language, Heron provides extended support for dynamic programming (as of the next release). All of the types and functions in a Heron program are made available at run-time, and can be created or invoked using strings.

As part of the next release (which of course is behind schedule) I am planning on releasing a Heron interpreter and following it up with a programming tutorial. Hopefully there will be some demand for such a thing?

Any thoughts or comments, including ideas for other killer apps would be appreciated!


Noam Tamim

Posts: 26
Nickname: noamtm
Registered: Jun, 2005

Re: Heron Needs a Killer App Posted: Aug 19, 2005 6:58 PM
Reply to this message Reply
1. You don't want your killer app to be teaching programming. This is Pascal's killer app!

2. Is there a working compiler/interpretter of this language? Is there a specification/faq/documentation of it?


Noam.

Christopher Diggins

Posts: 1215
Nickname: cdiggins
Registered: Feb, 2004

Re: Heron Needs a Killer App Posted: Aug 19, 2005 7:11 PM
Reply to this message Reply
> 1. You don't want your killer app to be teaching
> programming. This is Pascal's killer app!

I think it is time to retire Pascal, it is getting a little worn around the edges.

> 2. Is there a working compiler/interpretter of this
> language? Is there a specification/faq/documentation of
> it?

There was, but it is all quite outdated (from about a year ago). Bigger and better stuff on the horizon.

Noam Tamim

Posts: 26
Nickname: noamtm
Registered: Jun, 2005

Re: Heron Needs a Killer App Posted: Aug 19, 2005 7:28 PM
Reply to this message Reply
> I think it is time to retire Pascal, it is getting a
> little worn around the edges.

It was time to retire Pascal a long time ago; yet when I was in high-school, 8 years ago, they taught us just that, instead of the more practical C.
Anyway, my point was that if that will be your killer app, you might end up with a Pascal-style B&D language.

> > 2. Is there a working compiler/interpretter of this
> > language? Is there a specification/faq/documentation of
> > it?
> There was, but it is all quite outdated (from about a year
> ago). Bigger and better stuff on the horizon.

Thing is, it's pretty hard to think of the killer app for the language without knowing enough about it. All I know about Heron is from code examples you posted here. The language's website (BTW, you should get a .org domain) tells nothing about it.
When I first heard about Heron, I got the impression that this will be something like C++ but without having to be backward compatible with C. This could be great. But then I saw you have some new concepts in the language (like... "concepts", as well as contract programming) that do not exist in C++.

So what is Heron? What's in the standard library? Perl's killer app was text processing because it has good text processing built-ins. What does Heron offer? Why would I, a C/C++/Java programmer, want to use it? Why is it special?

By the way: I do like something I saw in your Stack example - a standard way of checking for pre/post conditions. I think the language might benefit from Aspect Programming concepts.

One more thing: do you work on this language alone? Do you consult with language-design experts (are you a language-design expert yourself?)?

Noam.

Toby Donaldson

Posts: 8
Nickname: tjd
Registered: Jun, 2003

Re: Heron Needs a Killer App Posted: Aug 19, 2005 7:34 PM
Reply to this message Reply
For what it's worth, if you want to promote Heron as a language for teaching programming to beginners, then you should list the benefits of learning Heron as compared to learning with, say, PHP, VB, Python, Java, or C/C++. Most critiques of those languages vastly over-state the complexity and problems of using those languages with beginners.

One of the major problems I forsee is that there is as yet no community of Heron users. Community is more important for a language than many programmers realize, and part of becoming a programmer is being introduced to a programming community. Popular languages thus have an advantage over "better" languages like Scheme, Haskell, ABC, Module-3, etc.

Indeed, understanding why those languages have failed as teaching languages is worthwhile. Most people want to be taught programming as if it were an engineering topic, not a pure math topic. Thus, practicality and popularity trump elegance and correctness.

Christopher Diggins

Posts: 1215
Nickname: cdiggins
Registered: Feb, 2004

Re: Heron Needs a Killer App Posted: Aug 19, 2005 7:40 PM
Reply to this message Reply
> It was time to retire Pascal a long time ago; yet when I
> was in high-school, 8 years ago, they taught us just that,
> instead of the more practical C.
> Anyway, my point was that if that will be your killer app,
> you might end up with a Pascal-style B&D language.

I don't know what B&D is, but I don't forsee Heron ending up being like Pascal. Pascal is really just a dressed up Algol 68!

> When I first heard about Heron, I got the impression that
> this will be something like C++ but without having to be
> backward compatible with C. This could be great.

Heron is very inspired by the C++.

> But then
> I saw you have some new concepts in the language (like...
> "concepts", as well as contract programming) that do not
> exist in C++.

Yep, and I removed a lot of stuff too.

> So what is Heron?

A statically compiled multi-paradigm general purpose language.

> What's in the standard library?

Much of the same stuff as in the C++ library but simpler, less focus on genericity, less focus on efficient, more focus on ease of use, more useful things.

> Perl's
> killer app was text processing because it has good text
> processing built-ins. What does Heron offer? Why would I,
> a C/C++/Java programmer, want to use it? Why is it
> special?

More efficient and flexible and java. Easier to use than C++. At least that is the goal.

> By the way: I do like something I saw in your Stack
> example - a standard way of checking for pre/post
> conditions. I think the language might benefit from Aspect
> Programming concepts.

This is definitely in the works.

> One more thing: do you work on this language alone?

Yes. :-(

> Do you
> consult with language-design experts

I discourse with all sorts of people. Some consider themselves as experts, others know better.

> (are you a
> language-design expert yourself?)?

Microsoft-certified! ;-)

Actually I am just someone who has been programming computers for a very long time.

Noam Tamim

Posts: 26
Nickname: noamtm
Registered: Jun, 2005

Re: Heron Needs a Killer App Posted: Aug 19, 2005 7:53 PM
Reply to this message Reply
> > you might end up with a Pascal-style B&D language.
> I don't know what B&D is, but I don't forsee Heron ending

B&D = Bondage & Discipline. See http://catb.org/~esr/jargon/html/B/bondage-and-discipline-language.html.

[... Heron features ...]

The point is, without knowing more about the language, we (or at least I) can't offer "Killer Apps".


Noam.

Robert Parnell

Posts: 22
Nickname: robparnl
Registered: Jul, 2005

Re: Heron Needs a Killer App Posted: Aug 19, 2005 8:36 PM
Reply to this message Reply
Paradoxically, if you don't know what Heron is good at? Then, whom does.

Lang X is either started targetted at a certain specialty. Or it just gets started and becomes what it is.

Perl started as a scripting lang. with quick & dirty uses. Then it evolved. Perhaps, you should just make the kernel and let it define, what paradigm it serves?

Otherwise, you were discussing a lot about Agile, patterns, and such. Perhaps, this is your direction?

I agree with the others. You should just make it & give us, what it is. Then, they'll shoot it down, and you'll either extend and improve it, or re-write. What does it matter?

> For what it's worth, if you want to promote Heron as a
> language for teaching programming to beginners, then you
> should list the benefits of learning Heron as compared to
> learning with, say, PHP, VB, Python, Java, or C/C++. Most
> critiques of those languages vastly over-state the
> complexity and problems of using those languages with
> beginners.
>

PS. Pascal is a fine language. The grammer is very regular and any high school student, can teach themselves - to code. The days of Logo are over. Yet, everyone acts like Java is the in thing.

Java is just a different form of C++, to me. (Or as they say, it is C++ with objects.)

Toby Donaldson

Posts: 8
Nickname: tjd
Registered: Jun, 2003

Re: Heron Needs a Killer App Posted: Aug 19, 2005 10:03 PM
Reply to this message Reply
Pascal is dead, too. At least as a teaching language. The fact that it's a good language isn't enough of a reason to convince many people to use it. Sort of like Esperanto.

Matt Gerrans

Posts: 1153
Nickname: matt
Registered: Feb, 2002

Re: Heron Needs a Killer App Posted: Aug 20, 2005 2:32 AM
Reply to this message Reply
Is there any app in Heron? Asking for a killer app first is a bit much. After all, killer apps in any language are not a dime a dozen.

If the killer (and only) app is teaching a programming language, then it will certainly have that effect. The language will be DOA.

If I were starting out learning a language, I would not just want to learn "a programming language." I would want to learn one that lets me do cool things. That means having a really nice and full API (like .NET, Java, Python, etc.), is available on the platform I use and can be used to create programs that many people can use. Having no knowledge of programming, I would not be wowwed by terms like "multi-paradigm" or "functional" or even "object oriented" -- those are all equally meaningless to the beginner. If I were a beginner, I would not know how to determine what language I should learn, other than asking programmers or other computer-savvy people. I would guess 0% of these would suggest learning a language they don't aready know or think is useful (for purposes other than just learning programming).

mark duran

Posts: 1
Nickname: markduran
Registered: Aug, 2005

Re: Heron Needs a Killer App Posted: Aug 20, 2005 6:33 AM
Reply to this message Reply
Hey there Christopher, very impressive project and I say a very ambitious one :D
It's people like you that inspires me ;)
I'm a .net developer working with vb.net and c# although I've used java before.
Anyway, just a suggestion.
The .Net platform is very much open for extensions on other programming languages, do you have any plans to target the .net platform? If you do, It would be very much exciting :D

^_^ ^_^ ^_^ ^_^

my 2 cents

Swaroop C H

Posts: 10
Nickname: g2swaroop
Registered: Jan, 2004

Re: Heron Needs a Killer App Posted: Aug 20, 2005 6:41 AM
Reply to this message Reply
I think I'm missing something here... but why did you set out to create Heron in the first place !?

Whatever it is, isn't _that_ the killer reason for Heron?

Christopher Diggins

Posts: 1215
Nickname: cdiggins
Registered: Feb, 2004

Re: Heron Needs a Killer App Posted: Aug 20, 2005 9:29 AM
Reply to this message Reply
> I think I'm missing something here... but why did you set
> out to create Heron in the first place !?
>
> Whatever it is, isn't _that_ the killer reason for Heron?

I wanted a single language which I could use for virtually any software I need to write from GUI apps, to compilers, to data analysis.

Christopher Diggins

Posts: 1215
Nickname: cdiggins
Registered: Feb, 2004

Re: Heron Needs a Killer App Posted: Aug 20, 2005 9:31 AM
Reply to this message Reply
> Hey there Christopher, very impressive project and I say a
> very ambitious one :D
> It's people like you that inspires me ;)

Thank you very much :-)

> do you have any plans to
> target the .net platform?

Not by myself. I hope that as Heron catches on, someone else may do that, but I do think it is a very good idea.

Christopher Diggins

Posts: 1215
Nickname: cdiggins
Registered: Feb, 2004

Re: Heron Needs a Killer App Posted: Aug 20, 2005 9:35 AM
Reply to this message Reply
> Pascal is dead, too.

It still lives, but in the form of Delphi.

Flat View: This topic has 53 replies on 4 pages [ 1  2  3  4 | » ]
Topic: Myths of Memory Management Previous Topic   Next Topic Topic: if u cn rd ths ...


Sponsored Links



Google
  Web Artima.com   

Copyright © 1996-2014 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use - Advertise with Us