Domain: ecma-international.org
Stories and comments across the archive that link to ecma-international.org.
Comments · 276
-
There's a page for this on the ECMA site...
-
Re:Microsoft shill revealed
C# and the CLI are part of ongoing work by the ECMA standards group. Part of that is working on CLI extensions to C++. I can't say whether or not this is the same as what you saw in the C/C++ journal, since I haven't seen it and there is no link, but it could be.
-
Re:Microsoft shill revealed
C# and the CLI are part of ongoing work by the ECMA standards group. Part of that is working on CLI extensions to C++. I can't say whether or not this is the same as what you saw in the C/C++ journal, since I haven't seen it and there is no link, but it could be.
-
Re:I don't think so
Just to bring you up to date:
Has reflection since they adopted the Eiffel Library Kernel Standard. This standard proposes the strictest and most comprehensive interface for reflection of any other OO language.
You're right, EiffelStudio is still far beyond SmartEiffel.
SmartEiffel did very well in the The Great Language Shootout back in 2001. I haven't seen any recent benchmarks but I do know that efficiency is a very high priority.
Eiffel is very much an open language. The ECMA committee is about to finish the written standard. Furthermore there has been NICE since about 1991. To say that it has been driven by Meyer's whims is to say that C++ has been driven by Stroustrup's whims. Sure they are instrumental in driving the standard, but they are not whims. Most people complain about Eiffel's lack of whims! The development of the Eiffel language has been the most structured of any I know.
I thought requirement for global type checking was a good thing.
Since when is covariance a serious problem! Covariance allows a lot of expressiveness and power. I think what you are referring to is CAT calls (Changed Availability and Type). Eiffel has an extremely tight type system, and this is a current hole in it. The hole is about half as wide as providing the ability to type cast.
Eiffel has method pointers and so much more. It has agents(chapter 25 from OOSC) which are functions treated as objects. Agents get all the benefits of objects including static typing, introspection, copying, comparison, etc. Furthermore agents support deferred parameters.
I do think C# is good, most likely because it has learned a lot from Eiffel. You won't see any direct mention of Eiffel in this article. However the style of generics and contracts are both Eiffel originals. Also Bertrand Meyer is part of the C# ECMA committee. -
It wouldn't kill you to learn to read.Specifically, the bit in the ECMA Code of Conduct where it says they allow you, unlike virtually any other standards agency, to obtain a "standard" designation for proprietary patented technology.
Why do you think they did that, I wonder?
-
Programming is essentially a creative endeavor
Programming is essentially a creative endeavor where beauty emerges from the harmonious implementation of function - i.e. a function (creation) in harmony with the object (material or imagined) which is the program's intention to model and with a given set of factors or rules (the API, language, instruction set.) This kind of creativity is in this sense more akin to that expressed in building architecture and industrial design than that expressed in the fine arts and philosophy.
Terming programming as a fine art is quite a stretch apart from the latter's primary concern - which is the creation of beautiful objects. Programming's primary concern is the creation of interactive models of objects in harmony with their material or imaginary counterparts and the boundaries that define the model space.
In this other sense, the aesthetic pleasure derived from programming or observing beautiful code is similar in nature to that derived from the construction or contemplation of philosophical concepts - both can recur to visual metaphors but are in essence invisible.
-
Re:The worst thing that could happen...
You can bet diamonds to dollars that Microsoft will never open source their version though.
Not so. Check out Shared Source CLI, as known as Rotor. Basically a free, open-source version of the .Net framework and C# compiler distributed by Microsoft. It is supported on Windows, FreeBSD, and Mac OS X.
Also check http://www.sscli.net for some SSCLI/Rotor Projects.
And did you know that C# and the .Net framework are each ECMA standards? ECMA-334 and ECMA-335 respectively.
(If you want a linux version of the .Net Framework, look at the Mono Project. It is not connected to Microsoft.) -
Re:The worst thing that could happen...
You can bet diamonds to dollars that Microsoft will never open source their version though.
Not so. Check out Shared Source CLI, as known as Rotor. Basically a free, open-source version of the .Net framework and C# compiler distributed by Microsoft. It is supported on Windows, FreeBSD, and Mac OS X.
Also check http://www.sscli.net for some SSCLI/Rotor Projects.
And did you know that C# and the .Net framework are each ECMA standards? ECMA-334 and ECMA-335 respectively.
(If you want a linux version of the .Net Framework, look at the Mono Project. It is not connected to Microsoft.) -
Re:grrr.
So you consider Win32 is a standard? it is ECMA standard 234 .
Then I wonder why is it so hard for WINE to fully support the Windows API, it is a standard, just like C#.
Posix, CORBA, C and C++ are not ECMA standards, but there are many implementations of them. -
Re:One replyECMA requires that patents covering specifications that it accepts be licensed under a RAND policy. They could still be used to pressure other implementations, and patents on parts of
.NET not covered by the spec are up for grabs, of course.Details here
As an aside, despite plenty of other nasty buisness behaviors, MS has not to my knowledge abused it's patent portfolio against pretty much anyone, not even OSS projects they have a real hard on for (like Linux).
-
Re:Random issues I have with Javascript
I, too, have done my share of JS programming, and have taken issue with many aspects of the language. However, if you take JavaScript for what it was originaly designed to do, it is a fair language. If you read the language definition for ECMA Script 3.0, you can see that JavaScript was defined as "providing a mechanism to enliven Web pages in browsers and to perform server computation as part of a Web-based client-server architecture." Based on this claim, it would be inappropiate to include such features in the core specification to allow for file system support (file/database, as you claim). As stated in a previous post, there are extentions to the language that are host specific, but not supported on a broad general definition of the language, since this was never a goal of the project
-
Re:Ha!
I use C# and the CLI , theyre ECMA specified. I wont use MS's fantasy web shit either, use SOAP, its standard. But I will use C# and the CLI.
Standard in this case doesn't mean free from IP protection such as patents. In fact, Microsoft chose the ECMA specifically because of the ECMA's policy on patent.
They will accept any standard, including patented IP.
Here's the General Declaration:The General Assembly of Ecma shall not approve recommendations of Standards which are covered by patents when such patents will not be licensed by their owners on a reasonable and non-discriminatory basis.
You may be subject to any license that Microsoft wishes, and licensing fees for use of the CLI, .net, etc. -
Re:so let me get this straight...
The CLR is not an open standard. It is run by Microsoft. Parts ofr the C# language are open but not everything.
The entire C# language and runtime are standardized as ECMA documents. The standardization process is run by ECMA, not Microsoft. The intellectual property rules for ECMA standards are defined by ECMA and are clear.
Until then a window's only runtime is definitely not an open standard.
ECMA C# is a standard; a standard is a document--it doesn't run on anything nor will it ever run on anything. Implementations of ECMA C# may run on many platforms; they already run on Linux, OS X, and Windows (perhaps others).
And if it is no more risk than the others, I'll stick with the one that does run on all those paltforms...
If by "the one" you mean "Java", you are going the wrong direction. Unlike C#, Java really does not have an open standard. The Java specifications are not freely redistributable or open and the Java standardization is run by a private consortium rather than a recognized standards body.
You may not like that ECMA C# came from Microsoft. But the legal and political situation surrounding Sun Java is worse in pretty much every respect. If you worry about C# you have to worry about Java even more. -
Re:Who gives a shit about the ECMA?
Who the hell is the ECMA?
"Ecma International is an industry association founded in 1961, dedicated to the standardization of information and communication systems."
Here is a list of their standards. It includes specs related to C, Ada, IDL, ECMAScript (JavaScript), C# and WSDL. Interestingly enough, Sun and Oracle are absent from their membership list.
Why not an IETF standard?
Hint: the "I" stands for Internet. What does C# have to do with the Internet?
-
Who gives a shit about the ECMA?
Who the hell is the ECMA?
Look at thier site.
Aparently people cannot be members, only companies and universities (non-profit companies)
Why not an IETF standard?
They've served very well so far.
Sun has repeatedly balked at standardizing Java due to the inherent loss of control.
I was pretty sure that Sun had published a Java standard. How is a standards org comprised of Micriosoft and it's vassals any better? I was under the impression that the only company that had problems with the Java standard was the one company that had attemped to hijack the standard by implementing undocumented extensions and breaking Suns published standard in order to make users dependant on thier own crappy browser. (Before any of you attempt to defend IE, please try using at least one other modern browser.)
Have things changed so much that we can trust Microsoft and its "standards body" largely consisting of companies dependent on Microsoft to keep all extensions to this "standard" in the open and available to all players? Can we trust them to not later replace the "standard" with propietary replacements requiring either licensing or a switch of platform to a Microsoft product?
Microsoft has attempted to hijack widely accepted standards in the past, is there any indication that this copmpany even knows what the word means?
-
Danger - MS is trying to set the standardsIn the past, the standards for the internet were decided through the community-based process of the Internet Engineering Task Force. This process is based on "rough consensus" and there is no way that a few influential companies could pervert this process in order to use it to establish standards that they can afterwards use to effectively kill their competitors.
Standards from Microsoft are dangerous, even when royalty-free licensing is offered so that they can be implemented in Free Software.
Consider for example the ECMA standards 334 and 335 for the core parts of
.NET - while Microsoft has promised royalty-free licensing for any and all patents that may be neccessary for implementing that standard, they are at the same time embracing and extending their own standard, and they have filed at least one patent application that seems to be designed to give them a monopoly on their extensions to the standard.In some situations it may work to simply refuse to go along with the standards attempts from MS. Unfortunately, MS has so much leverage that this won't always work. For example, with
.NET just ignoring it IMO won't work, that's why we're working on creating a competing "standard set of libraries" for the stuff which goes beyond the stuff that is safe from patent-based attacks (the safe parts are what is specified in the ECMA specs, for which MS has promised royalty-free licensing, plus everything which is thin wrappers around stuff that is simply too old to be affected by .NET patents, such as for example System.Windows.Forms). The strategy of the DotGNU project is to re-use a good number of existing Free Software libs (written in C) and compile them for .NET - again since those libs are old, they're safe from being affected by any .NET patents.Greetings,
Norbert. -
Danger - MS is trying to set the standardsIn the past, the standards for the internet were decided through the community-based process of the Internet Engineering Task Force. This process is based on "rough consensus" and there is no way that a few influential companies could pervert this process in order to use it to establish standards that they can afterwards use to effectively kill their competitors.
Standards from Microsoft are dangerous, even when royalty-free licensing is offered so that they can be implemented in Free Software.
Consider for example the ECMA standards 334 and 335 for the core parts of
.NET - while Microsoft has promised royalty-free licensing for any and all patents that may be neccessary for implementing that standard, they are at the same time embracing and extending their own standard, and they have filed at least one patent application that seems to be designed to give them a monopoly on their extensions to the standard.In some situations it may work to simply refuse to go along with the standards attempts from MS. Unfortunately, MS has so much leverage that this won't always work. For example, with
.NET just ignoring it IMO won't work, that's why we're working on creating a competing "standard set of libraries" for the stuff which goes beyond the stuff that is safe from patent-based attacks (the safe parts are what is specified in the ECMA specs, for which MS has promised royalty-free licensing, plus everything which is thin wrappers around stuff that is simply too old to be affected by .NET patents, such as for example System.Windows.Forms). The strategy of the DotGNU project is to re-use a good number of existing Free Software libs (written in C) and compile them for .NET - again since those libs are old, they're safe from being affected by any .NET patents.Greetings,
Norbert. -
Slow cumbersome process
Java versus
.NET is becoming a ubiquitous topic. It's been the subject of debate since .NET beta 1. Microsoft and Sun both have "independent" studies conducted to prove that their platform (J2EE/.NET) is better and both have convincing arguments. There is no perfect language or platform to solve every programming problem - sometimes it's C++, sometimes it's Python, sometimes it's something else - it really depends on the problem.
It's no secret that one reason Microsoft created C# is to compete directly with Java. It's pure ignorance to say that C# is proprietary and that you're locked-in to Windows. C# and the CLI (.NET) is an approved ECMA standard. This is something SUN was unwilling to do with Java. For this reason, in a sense, Java remains far more proprietary than C#. It's too early in C#'s life to say that it won't be ported to other platforms - look at Mono. There is a lot of FUD being disseminated about "Microsof is going to sue Ximian, et al. for Mono" blah,blah,blah. That's not going to happen. Microsoft has already released the source code to the CLI with one intention of "People developing their own CLI implementations will find the Shared Source CLI an indispensable guide and adjunct to the ECMA standards.". So, for the argument that C# and the CLI are proprietary and one is bound to Windows is just plain ridiculous.
Syntactically, C# and Java are extremely similar. They both derive from C++. Structurally, they are very similar as well. They are both OO languages, everything is a class, etc. Side-by-side they look very similar. There are numerous small details which make C# "friendlier" than Java, ie. C# has no requirement that the file be named after the class. However, C# has a lot of other advantages over Java. C# can make use of pointers. Java has no option on parameter passing - Objects are passed by reference, value types are passed by value. While C# has the same limit on objects, you are able to use pointers and it also supports boxing. C# supports operator overloading as well. On the merits of the languages alone, C# is stronger than Java. It should be expected since it was developed from scratch nearly 7 years after Java arrived.
As far as performance, Java leaves a lot to be desired. I won't belabor this issue. If you'd like a demonstration of the difference between the run-time execution of
.NET vs Java, pick your favorite VM and run Forte, then run Visual Studio .NET (it's written in C#) and decide for yourself. Java run-time performance alone is enough to dissuade some developers.Java does come as close to a RAD language as can be. Java applications can be developed quickly with far fewer bugs and errors as a comparable C/C++ application with the benefit of garbage collection as well. For this Java gets an "A". It greatly simplifies the process of rapidly developing database and other applications.
Is Java going away? Hardly. But like it or not, C# and the CLI are here to stay as well. It's only a matter of time before the CLI is ported to other platforms and environments just like the JVM.
-
Re:No VBScript?
JScript is an implementation of ECMAScript, which is also the standard with which Netscape's JavaScript is compliant.
In other words, JScript and JavaScript are two proprietary implementations of the ECMAScript standard. As far as the core language is concerned, they should work the same.
I identified a minor inconsistency in the implementation of certain kinds of closure a couple of years ago; it was difficult to tell from the standard (after poring over it for hours) which implementation was correct. I'll have to dig out that test case and see how it goes on MS and NS implementations of today.
When it comes to implementations of the various kinds of document object model (NN3/IE3/NN4/IE4/NN6/MS5/MS5.5/MS6 and of course DOM), both MS and NS/Moz have sufficient support for W3C DOM Level 1 to allow stuff to be got working seamlessly across platforms. Well, almost. Occasionally. Oh whatever, I didn't want to go home tonight anyway. Really, I love this job.
-
Re:Misconception
The W3C "standardized" it, and then both Netscape and Microsoft went about with their own proprietary versions.
The W3C has not much to do with JavaScript.
ECMA is the organization who made JavaScript into an independent standard (ECMAScript).
-
Re:Misconception
-
Re:Misconception
-
Re:Hey troll/Tool Of The Man (tm)
-
Re:surprise?
you're wrong Microsoft are increasingly committed to standards. Office 2003 will save to XML, the evolution of webservices and most importantly Microsoft proved with the CLI and the C# language that it was possible to create a powerful foundation for many languages to inter-operate. We will always have that. Even if changes happened in the platform which were undocumented, the existing platform would a value on its own.
-
Re:surprise?
you're wrong Microsoft are increasingly committed to standards. Office 2003 will save to XML, the evolution of webservices and most importantly Microsoft proved with the CLI and the C# language that it was possible to create a powerful foundation for many languages to inter-operate. We will always have that. Even if changes happened in the platform which were undocumented, the existing platform would a value on its own.
-
ECMAscript spec
Aren't we grateful for Standard ECMA-262 and isn't it wonderful that everyone follows it?
Particularly gratifying, considering that this standard has only been out since 1999... so most vendors have only had half-a-dozen or so revision opportunities...