[M3devel] Think we need a new release.

vintagecoder at aol.com vintagecoder at aol.com
Mon Feb 13 15:33:20 CET 2012


>> What is the purpose of a new release?
>
> from a technical perspective, probably not much but from a marketing
> perspective (language adoption, language value perception), there could
> be a few.

I realize my opinion is not the majority, but I'm less inclined to like
something that changes constantly or is popular. I try to find things that
are well designed and work. Constant releases are not on my list of
priorities.

>> Are you talking about a major new version or a mod level or what? The
>> last release on cm3 I see is from 2010.

> this probably disproves the argument of "6 years between releases",
> however, in the fast moving tech world, some people could consider 2010
> to be a long time ago.

Ok but anyone looking for Modula-3 should understand the history and
realize they are not interested in the latest language, if they were, they
wouldn't be in our group. I think that greatly lessens the impact of not
having frequent or regular releases. It's one of the reasons I joined the
development mailing list even though I probably have nothing to contribute
as a developer. I wanted to see if the project is alive. For me is seems it
is.

>> Are there bug fixes in the pipeline that haven't been verified? Are
>> there fixes ready to go that no builds have been done for? What is the
>> problem more frequent releases will solve?

> I think, it makes people perceive that the language has support, is being
> actively developed, is growing , and also that it is not dead.

For myself I was interested in those answers also, so I joined the mailing
list. I saw from the releases the project is going ahead. I see from the
fact they have so much platform support this is a serious and big project.
I have seen many other famous projects without nearly as much platform
support. I think anybody who is sincerely interested in Modula-3 can learn
you guys are serious and work is happening.

> I used to use tcl a lot, but I haven't got a new release in a while, and
> 8.6 took forever (5 years?) to get done. this made me move away from the
> technology, since I saw it at the time, as stagnating, stale, old and
> unsupported. 

That is very interesting because as someone looking for a new scripting
language, I found tcl very encouraging! I did the same thing as I did for
Modula-3. I followed the newsgroups and I saw people are using it. I saw
the releases and saw they are continuing to fix bugs. I don't need
something new, I need something good. Of course it's important the project
is alive and well so I don't find something good but dead. I saw tcl has
native support for sqlite and other interesting features. To me it looks
very much alive.

> had they put a "new" brand on it ever so often, I would have been more
> insterested. 

Ok but I think at some point people have to break the myth of constant
change as something favorable. 

> in general terms, once you know perl 5.10, would you be more exicet about
> learning perl 6.0 or 5.10.1 ? I mean, seriously, who gives a damn about a
> 0.0.1 release anyway?

It's not my view. I'm personally more happy with evolutionary growth. If
something isn't any good, I don't use it (unless I have to for work!) If
something is good, it doesn't need major changes, and changes are what
usually make things worse, not better. I realize my view might not be so
popular, but this is my view.

> the problem I see a new release would solve, is that you get to fix stuff
> (like the string broken stuff) that needs fixing, without having to
> maintain 100% backwards compatibility, this can lead to a cleaner
> language, like python3000 broke a lot of things, for instance.

I don't know Modula-3 (trying to learn it) enough to say what is broken.
But I do get nervous when I hear people say backwards compatibility isn't
important, and stands in the way of the future. For that I say if that is
really true, a group of people who really understand these things need to
carefully decide whether the language spec is broken or whether the
implementation is broken or both. And it has to be addressed based on the
outcome of that discussion, not by taking the situation too lightly. Just
to give you some idea of why I am saying this is because most of the
software I work on is 20 or more years old and I saw the value in having
experts who understand the purpose and the foundation involved in deciding
whether a new feature is good or not. Sometimes something looks very good
but it goes against the core direction. In this case a hard decision has to
be made to fork the product, or develop a new version. For a language it's
a very very serious process. If the spec is broken then perhaps it's time
to develop a new language as Daniel said. If the implementation is broken,
then sure it should be fixed to conform to the spec. But the main thing is
I believe especially for languages but for most software it is wrong and a
mistake to let the implentation drive the specification. You need to have
qualified good people managing the spec, and the implementation must come
after that.

>> Personally I see no benefit (indeed I see many disadvantges) to frequent
>> releases of stable software. 

> this is als true, there are disadvantages and I also suffer a little from
> this. but surely not something we cannot live through, especially if
> there is some kind of guide (3to4 ?)

I think I understand your point, but I feel this view is looking at the
language more like an OS. Languages and OS are very different creations. An
OS has to provide services to get work done. It doesn't necessarily have to
be pure because the end is more important than the means. But a language is
all about purity, otherwise all languages converge (indeed that is
happening!) and there becomes little value in any language since they all
do pretty much the same thing.

Language has to be about elegance and clarity in expression, and safety in
implementation so that the intent of the person using the language is
carried out as he expects, with no side effects or smoke and mirrors. For
this reason I am very opposed to growing languages without very careful
study by people who know the history and tradition of the language and give
it some degree of reverence.


>> But I often run backlevel intentionally. Firefox is being updated for
>> many reasons including security holes, bug fixes, new standards, and
>> more. If the Modula-3 standard hasn't been updated, what is driving the
>> need for new release(s)?

> if the language does not evolve, is it bound to die?

Not as far as I am concerned. But I still run programs in SNOBOL4 from
1969. YMMV ;-)

> if the standard does not evolve, should one consider it to be dead?

It might be dead, it might not. It all depends on whether the language is
still useful and people actually use it.

> see c++ for instance, recently, there have been changes to the language.
> this motivates a lot of tuff: conferences, new compilers, new books, new
> blogposts, and in general, a lot of "hype"

Right, but C++ has many problems and has popularity and issues Modula-3
happily doesn't have. If you are trying to compete with a mainstream
language you'll probably not be satisfied.

> if m3 was hyped a little, perhaps it could gain developers.

I think people who attracted by hype aren't the type of people who will
appreciate Modula-3.

> by gaining such developers, perhaps more bugs could be removed and
> features could be added as well (for instance, in the library space,
> where I see that other language have better, more tested, and easier to
> use LIbraries, but this is , of course, a subjective declaration, and I
> don't expect anyone to agree with me). 

I think it's important, just like in some other successful but maybe not so
elegant languages (C++, Java) to make a distinction between language and
libraries. Free Pascal seems to do this pretty well also. You (usually)
don't have to change the language spec or implementation to offer usable
libraries. If you do, it should be done carefully. But the language spec
should not be changed without much study and thought.

>> It looks like cm3 supports more platforms than I have. I would be
>> willing to help out (I am not a UNIX developer) any way I could. I have
>> Solaris Intel and SPARC boxes.
>
>that Is wonderful news, I appreciate the offer, I hope the language
>improves, and your boxes serve the purpose!

I see they already have SPARC Solaris support and I think x86 so I am not
able to offer anything new, but if I can help I will be glad to.

For me I am having a hard time finding learning materials. I think the
biggest boost to the language would come not from changing it or making new
releases, but to put together a really good book on Modula-3 and also
showing how cm3 implements it. The book should break these two things out
clearly so it could serve as a reference and guide to Modula-3 itself as
well as how to use cm3 to code in Modula-3. The main barrier to adoption
and new fans of Modula-3 is the lack of educational materials. You can
books on almost any topic on the net, but Modula-3 has almost nothing
available.




More information about the M3devel mailing list