473,326 Members | 2,173 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,326 software developers and data experts.

Why not develop new language

There are lot of dicussion on C# is much better than C++. Why there is
no language to compute C#. This way we are accepting monopoly of M$.
Why there is no group which seriously tring to develop new language
better than C#.
Jul 22 '05
66 3040
Ioannis Vranos wrote:
Andrea Griffini wrote:
"Johan Nilsson" <johan.nilsson@---.esrange.ssc.se> wrote in message
news:<lz*******************@hydra.nntpserver.com>. .. ...
I won't dispute whether C# is better or worse than C++ (it's probably a
bit of both), but the important part is that C#/.NET isn't Windows only:
http://www.mono-project.com/about/index.html .

Only until MS will crush them using their patent power...

C#/CLI is an ECMA and ISO standard, so MS can't sue anyone for
implementing it.


That's not MS style anyway. What they are more likely to do is introduce
ideosyncrasies into their own implementation sufficient to thwart efforts
to easily port code, etc. Playing nicely with others isn't one of their
historically strong suits.

I update the Mono rpms periodically, and take a look at things. There are a
few things in the C# Standard documentation which offer a somewhat comical
contrast to the C++ Standard. The C# standard was written with the obvious
intent of being comprehensible. Anybody interested in improving C++ and
how it is used would do well to examine some of these materials. There are
features of C++ which are not available in C# or Java. Some of these are
valuable and worth preserving. There are many features in C# (pronounced
D-flat) and Java which can be emulated in C++, or even introduced into the
core language without negatively impacting the existing C++ language.

Most significantly, in my opinion, are the superior mechanisms for importing
resources, and introspection. The former is probably a better candidate
for inclusion in the core language, the latter is probably better addressed
using some kind of open standard, or Boost library.

--
"[M]y dislike for the preprocessor is well known. Cpp is essential in C
programming, and still important in conventional C++ implementations, but
it is a hack, and so are most of the techniques that rely on it. ...I think
the time has come to be serious about macro-free C++ programming." - B. S.

Jul 22 '05 #51
Steven T. Hatton wrote:
That's not MS style anyway. What they are more likely to do is introduce
ideosyncrasies into their own implementation sufficient to thwart efforts
to easily port code, etc. Playing nicely with others isn't one of their
historically strong suits.

I update the Mono rpms periodically, and take a look at things. There are a
few things in the C# Standard documentation which offer a somewhat comical
contrast to the C++ Standard. The C# standard was written with the obvious
intent of being comprehensible. Anybody interested in improving C++ and
how it is used would do well to examine some of these materials. There are
features of C++ which are not available in C# or Java. Some of these are
valuable and worth preserving. There are many features in C# (pronounced
D-flat) and Java which can be emulated in C++, or even introduced into the
core language without negatively impacting the existing C++ language.

Most significantly, in my opinion, are the superior mechanisms for importing
resources, and introspection. The former is probably a better candidate
for inclusion in the core language, the latter is probably better addressed
using some kind of open standard, or Boost library.

Have you read about C++/CLI in the rest of the thread?


Regards,

Ioannis Vranos

http://www23.brinkster.com/noicys
Jul 22 '05 #52
Ioannis Vranos <iv*@guesswh.at.grad.com> wrote in message news:<ch***********@ulysses.noc.ntua.gr>...
C#/CLI is an ECMA and ISO standard, so MS can't sue anyone for
implementing it.


I'm not an expert on these issues... however I don't think that
patents are incompatible with a standard as far as "fair use" is
granted. However "fair use" doesn't mean that anything is granted
for free and for nothing in exchange.

I've stumbled for example in a few articles about how "fair use"
can still be acceptable for ISO but incompatible with the GPL.

What I didn't find was a crystal clear statement from microsoft
that this is not going to happen.

Are we going to assist to another ".GIF" tragedy ??

Andrea
Jul 22 '05 #53
On 6 Sep 2004 11:45:15 -0700, ag****@tin.it (Andrea Griffini) wrote:
Ioannis Vranos <iv*@guesswh.at.grad.com> wrote in message news:<ch***********@ulysses.noc.ntua.gr>...
C#/CLI is an ECMA and ISO standard, so MS can't sue anyone for
implementing it.


I'm not an expert on these issues... however I don't think that
patents are incompatible with a standard as far as "fair use" is
granted. However "fair use" doesn't mean that anything is granted
for free and for nothing in exchange.

I've stumbled for example in a few articles about how "fair use"
can still be acceptable for ISO but incompatible with the GPL.

What I didn't find was a crystal clear statement from microsoft
that this is not going to happen.


That statement was actually made long ago. Most recently, I mentioned this
in my more detailed article posted a week ago (August 27) in this
newsgroup.

Several years ago, back when the C# and CLI standards were just getting
started long before I joined Microsoft, Microsoft agreed to license any
necessary intellectual property (e.g., patents) under not only RAND
(reasonable and non-discriminatory) terms but also royal-free so that
people can create conforming implementations of these standards.

There have been and will probably continue to be many conspiracy theories
speculating the contrary, but this much is a matter of record and not of
theory. FWIW.

Herb

---
Herb Sutter (www.gotw.ca)

Convener, ISO WG21 (C++ standards committee) (www.gotw.ca/iso)
Contributing editor, C/C++ Users Journal (www.gotw.ca/cuj)
Architect, Developer Division, Microsoft (www.gotw.ca/microsoft)
Jul 22 '05 #54
Herb Sutter wrote:
On 6 Sep 2004 11:45:15 -0700, ag****@tin.it (Andrea Griffini) wrote:

Ioannis Vranos <iv*@guesswh.at.grad.com> wrote in message news:<ch***********@ulysses.noc.ntua.gr>...
C#/CLI is an ECMA and ISO standard, so MS can't sue anyone for
implementing it.


I'm not an expert on these issues... however I don't think that
patents are incompatible with a standard as far as "fair use" is
granted. However "fair use" doesn't mean that anything is granted
for free and for nothing in exchange.

I've stumbled for example in a few articles about how "fair use"
can still be acceptable for ISO but incompatible with the GPL.

What I didn't find was a crystal clear statement from microsoft
that this is not going to happen.

That statement was actually made long ago. Most recently, I mentioned this
in my more detailed article posted a week ago (August 27) in this
newsgroup.

Several years ago, back when the C# and CLI standards were just getting
started long before I joined Microsoft, Microsoft agreed to license any
necessary intellectual property (e.g., patents) under not only RAND
(reasonable and non-discriminatory) terms but also royal-free so that
people can create conforming implementations of these standards.

There have been and will probably continue to be many conspiracy theories
speculating the contrary, but this much is a matter of record and not of
theory. FWIW.

Herb

---
Herb Sutter (www.gotw.ca)

Convener, ISO WG21 (C++ standards committee) (www.gotw.ca/iso)
Contributing editor, C/C++ Users Journal (www.gotw.ca/cuj)
Architect, Developer Division, Microsoft (www.gotw.ca/microsoft)


I'm not an expert either, but from the outside, I don't think the
market dynamics support Microsoft's ability to use its patents.
Suppose Microsoft did start using the patents as a club to prevent
others from developing their software or systems. Those companies
would be smaller than Microsoft, and therefore in the public's eye, it
would appear that Microsoft is "stepping on the little guy". I don't
think Microsoft wants to incite yet another round of lawsuits.

There are companies out there who are registering contrived patents as
legal traps specifically for the purpose of extortion, in the case
that any company can make money from those ideas. As long as the
patent office is granting these stupid patents, I think it is the
lesser of two evils for Microsoft to hold them rather than those
scum-sucking pirates.

In either case, I don't think there is any social benefit to software
patents. A patent on one-click shopping in software is like a patent
on close-up shots in movies. Imagine if bright young people start
doing patent searches before they start developing their new ideas,
then they might just give up on developing them from fear alone. I
think strong copyright protection is necessary and sufficient to
promote software innovation. I was in India over the summer, and most
people there laugh at the idea of paying for legal copies of software,
which I think is a large part of why India's native software industry
is close to zero, despite its huge technical talent base.
Jul 22 '05 #55
Herb Sutter <hs*****@gotw.ca> wrote in message news:<ji********************************@4ax.com>. ..
....
That statement was actually made long ago. Most recently, I mentioned this
in my more detailed article posted a week ago (August 27) in this
newsgroup.

Several years ago, back when the C# and CLI standards were just getting
started long before I joined Microsoft, Microsoft agreed to license any
necessary intellectual property (e.g., patents) under not only RAND
(reasonable and non-discriminatory) terms but also royal-free so that
people can create conforming implementations of these standards.


Does royality free means that a someone using patented parts can ask
no permission for now and for the future ?

If there is a permission to be asked the this is already sort of a
trouble for the GPL licensing scheme.

Moreover it's absolutely irrelevant if NOW microsoft is going to
allow anyone without questioning. The point is if someone can
implement .NET *against* the will of microsoft.

If it can't then that path is doomed... an alternative implementation
will survive only up to the point MS will think it must die. And not
that MS is quite quick about changing (even radically) opinion.

Andrea
Jul 22 '05 #56
Andrea Griffini wrote:
Does royality free means that a someone using patented parts can ask
no permission for now and for the future ?

If there is a permission to be asked the this is already sort of a
trouble for the GPL licensing scheme.

Moreover it's absolutely irrelevant if NOW microsoft is going to
allow anyone without questioning. The point is if someone can
implement .NET *against* the will of microsoft.

If it can't then that path is doomed... an alternative implementation
will survive only up to the point MS will think it must die. And not
that MS is quite quick about changing (even radically) opinion.

I found this:
http://www.ecma-international.org/me...eofconduct.htm


--
Ioannis Vranos

http://www23.brinkster.com/noicys
Jul 22 '05 #57
Ioannis Vranos <iv*@guesswh.at.grad.com> wrote in message news:<ch***********@ulysses.noc.ntua.gr>...

....
I found this:
http://www.ecma-international.org/me...eofconduct.htm


The problem is what RAND really mens both immediately and in the
long term. I've read for example something considered 'reasonable
and non-discriminatory' includes that the rights to use patented
material are immidiately revoked if you're in a legal litigation
with the patent owner (in ANY litigation, no matter what
the subject is). Also RAND refers to company-company and is
not meant as working for company end-users... how does this
apply for example with a GPL licensing in which every single
user is allowed to create a separate copy of the work ?
Even just the need to obtain a license from microsoft (even if
for free and under a non-discriminating judgement) can be a
real problem for GPLed software.

Another problem is what it means to revoke the RAND policy on
the patented parts. From the the text I you linked I think
(but I'm no lawyer) that the biggest problem is that the standard
may be retired. Whoa... what a serious damage, especially for a
company that always had such an high consideration for standards...
(the latter is sarcasm... even leaving alone the hideous past
records, by reading internal documents leaked out of microsoft
- the halloween docs - one could think that using violence on
standards to break interoperability is even a deliberate
*business practice* at MS).

If the text you linked is what you think is a "crystal clear"
statement that an alternative .NET implementation is not seriously
risking law muds at the will of microsoft then I must think that
crystal is much better here than where you live.

Show me them *dropping on the floor* all the patents about .NET
and that will be interesting material for a discussion about
how safe is to bet on mono.

Andrea
Jul 22 '05 #58
Andrea Griffini wrote:
The problem is what RAND really mens both immediately and in the
long term. I've read for example something considered 'reasonable
and non-discriminatory' includes that the rights to use patented
material are immidiately revoked if you're in a legal litigation
with the patent owner (in ANY litigation, no matter what
the subject is). Also RAND refers to company-company and is
not meant as working for company end-users... how does this
apply for example with a GPL licensing in which every single
user is allowed to create a separate copy of the work ?
Even just the need to obtain a license from microsoft (even if
for free and under a non-discriminating judgement) can be a
real problem for GPLed software.

Another problem is what it means to revoke the RAND policy on
the patented parts. From the the text I you linked I think
(but I'm no lawyer) that the biggest problem is that the standard
may be retired. Whoa... what a serious damage, especially for a
company that always had such an high consideration for standards...
(the latter is sarcasm... even leaving alone the hideous past
records, by reading internal documents leaked out of microsoft
- the halloween docs - one could think that using violence on
standards to break interoperability is even a deliberate
*business practice* at MS).

If the text you linked is what you think is a "crystal clear"
statement that an alternative .NET implementation is not seriously
risking law muds at the will of microsoft then I must think that
crystal is much better here than where you live.

Show me them *dropping on the floor* all the patents about .NET
and that will be interesting material for a discussion about
how safe is to bet on mono.

At first, I am not an MS advocator. Personally I decided to learn
Windows programming, and since .NET is the current MS platform I picked
it (in fact I had been waiting for it and learned the past MFC etc
stuff, but that's another story).

One day I came across CLI standard, and most recently C++/CLI. If they
are going to be free, I like them. If not, I will consider it as the MS
platform - as originally planned.
That's my view of the things. However there is also DotGNU.

http://www.gnu.org/projects/dotgnu
Would these guys create it, with non-free stuff?
If CLI proves to be fake freedom, I will remove any relevant links from
my site. :-)
However CLI is very fundamental stuff, not all CLR and its API minimal,
not even Windows::Forms.
I hope Herb Sutter can answer our questions.


--
Ioannis Vranos

http://www23.brinkster.com/noicys
Jul 22 '05 #59
Ioannis Vranos wrote:
(in fact I had been waiting for it and
not
learned the past MFC etc > stuff, but that's another story).



--
Ioannis Vranos

http://www23.brinkster.com/noicys
Jul 22 '05 #60
Ioannis Vranos <iv*@guesswh.at.grad.com> wrote in message news:<ch***********@ulysses.noc.ntua.gr>...
C++ is a multi-paradigm language and supports 4 paradigms. The Object
Oriented programming paradigm, the generic programming paradigm
(templates), the procedural programming paradigm and the modular
programming paradigm (namespaces).

Each paradigm is supported *well* with optimal space and time efficiencies.
The links you gave to back this one up were only about what intentions
Stroustrup had. He didn't really prove any kind of optimality (as if
that would be possible). A more restricted environment like C# has
more potential for optimization and JIT compilers might even exceed
C++ in speed for "equivalent" code. In fact they already do in some
specially engineered test cases (which I have not done myself and am
relying on perhaps biased or wrong information).
C# currently supports only 1 paradigm, the OO one and this not
completely, but only single inheritance and multiple inheritance only
for interfaces.


C# has static functions for procedural programming, namespaces for
modular programming. Does C++ support OO "completely"? It has no
metaclasses, no multidispatch, classes aren't objects nor does it have
reflection [1]. I know of libraries that attemt at doing each of
these, but if they were accepted, I'm sure someone could write a C#
library for multiple inheritance among everything else. Only the
degree of cumbersomeness varies.

As for constructs not supported in C++ but supported in C#:
properties, reflection (& serialization), string switches, typeof,
language support for multithreading. Once again I'm sure many of these
can be achieved in C++ through rigorous programming practices. And in
asm for that matter.

[1] There just is no official definition for OO. If one can list
"multiple inheritance" as a required part, I'm sure these others will
do quite as well.
Jul 22 '05 #61
Hannu Kankaanp?? wrote:
Each paradigm is supported *well* with optimal space and time efficiencies.

The links you gave to back this one up were only about what intentions
Stroustrup had.

All C++ constructs and all C++ implementations are designed with
efficiency always in mind.
C# is OK I guess for .NET applications, but is not a systems programming
language.

He didn't really prove any kind of optimality (as if
that would be possible). A more restricted environment like C# has
more potential for optimization and JIT compilers might even exceed
C++ in speed for "equivalent" code. In fact they already do in some
specially engineered test cases (which I have not done myself and am
relying on perhaps biased or wrong information).
There is also a Symmetrical Multiprocessing Standard called OpenMP
(http://www.openmp.org) for C, C++ and Fortran compilers (the efficient
languages).
-Now being MS specific- it is already supported by many compilers, and
the upcoming VC++ will also support it, in addition to .NET multi-threading.

An example is, when you have a loop like
for(int i=0; i<something; ++i)
a[i]=b[i];
where each assignment is independent of the others, you can do:

#pragma omp for
for(int i=0; i<something; ++i)
a[i]=b[i];
And each assignment is executed in a separate thread, taking advantage
of all processors available.
Also in the after Whidbey release of Visual Studio, C++ will be able to:

Create managed objects in native heap.

Create native types in managed heap.

In few words everything.

C# on the other hand is OK I guess, for regular .NET/CLI applications,
but is not a systems programming language.
C# has static functions for procedural programming,

That is pseudo-procedural. :-)
namespaces for
modular programming. Does C++ support OO "completely"? It has no
metaclasses, no multidispatch, classes aren't objects nor does it have
reflection [1].

All these are features of CLI and of course there is C++ support for
these with system extensions keywords like __property,

and in C++/CLI more natively.
Talking C++/CLI can you do this kind of thing in C# at *compile time*,
producing 100% verifiable code?
//A generic function adding two objects
template <class T>
inline T Add(const T %a, const T %b)
{
return a+b;
}

value class someclass
{
int x;
};


int main()
{
int x = 7, y = 8;

int r = Add(x,y);
}
C:\c>cl /clr:safe temp.cpp
Microsoft (R) C/C++ Optimizing Compiler Version 14.00.40809
for Microsoft (R) .NET Framework version 2.00.40607.16
Copyright (C) Microsoft Corporation. All rights reserved.

temp.cpp
Microsoft (R) Incremental Linker Version 8.00.40809
Copyright (C) Microsoft Corporation. All rights reserved.

/out:temp.exe
temp.obj

C:\c>

I know of libraries that attemt at doing each of
these, but if they were accepted, I'm sure someone could write a C#
library for multiple inheritance among everything else. Only the
degree of cumbersomeness varies.

As for constructs not supported in C++ but supported in C#:
properties, reflection (& serialization), string switches, typeof,
language support for multithreading. Once again I'm sure many of these
can be achieved in C++ through rigorous programming practices. And in
asm for that matter.

C++/CLI and even current "managed extensions" supports all of them with
keywords. No additional libraries.


--
Ioannis Vranos

http://www23.brinkster.com/noicys
Jul 22 '05 #62
Ioannis Vranos wrote:
There is also a Symmetrical Multiprocessing Standard called OpenMP
(http://www.openmp.org) for C, C++ and Fortran compilers (the efficient
languages).
-Now being MS specific- it is already supported by many compilers, and
the upcoming VC++ will also support it, in addition to .NET
multi-threading.

An example is, when you have a loop like
for(int i=0; i<something; ++i)
a[i]=b[i];
where each assignment is independent of the others, you can do:

#pragma omp for
for(int i=0; i<something; ++i)
a[i]=b[i];
And each assignment is executed in a separate thread, taking advantage
of all processors available.


And as said above: In addition to .NET multithreading.

I know of libraries that attemt at doing each of
these, but if they were accepted, I'm sure someone could write a C#
library for multiple inheritance among everything else. Only the
degree of cumbersomeness varies.

As for constructs not supported in C++ but supported in C#:
properties, reflection (& serialization), string switches, typeof,
language support for multithreading. Once again I'm sure many of these
can be achieved in C++ through rigorous programming practices. And in
asm for that matter.


C++/CLI and even current "managed extensions" supports all of them with
keywords. No additional libraries.

*Every facility* available to C# is also available to C++ *in the same
way*, while the opposite is not true.

Especially about .NET multithreading, this is what I have been reading
these days, much pretty stuff. The Monitor class and the Thread class.

Running state, Stopped state, Suspended state, WaitSleepJoin state,
Background state etc. :-)


--
Ioannis Vranos

http://www23.brinkster.com/noicys
Jul 22 '05 #63
Ioannis Vranos <iv*@guesswh.at.grad.com> wrote in message news:<ch**********@ulysses.noc.ntua.gr>...
namespaces for
modular programming. Does C++ support OO "completely"? It has no
metaclasses, no multidispatch, classes aren't objects nor does it have
reflection [1].
All these are features of CLI


Though I wasn't talking about CLI, AFAIK that's not true. But show me
wrong. (I know reflection is a feature of CLI)
and of course there is C++ support for
these with system extensions keywords like __property,
Then I'm sure you can describe me which keywords enable each of those
features, because I'm quite sceptical of this one as well. I wouldn't
call it C++ support either if only one compiler happened to implement
some feature.
and in C++/CLI more natively.


The C++/CLI draft 1.5 has no mention of metaclasses or multidispatch.
I have not read it but I did a quick search. I doubt one can just pass
classes around like objects, either. Maybe through some wrappers.
Reflection is there though.

And last but not least, when I was talking about C++, I was talking
about *the* C++ (1998 standard), not C++/CLI, or any non-standard
extensions to C++. Much like when I say C, I don't mean C++.
Jul 22 '05 #64
Hannu Kankaanp?? wrote:
Ioannis Vranos <iv*@guesswh.at.grad.com> wrote in message news:<ch**********@ulysses.noc.ntua.gr>...
namespaces for
modular programming. Does C++ support OO "completely"? It has no
metaclasses, no multidispatch, classes aren't objects nor does it have
reflection [1].
All these are features of CLI

Though I wasn't talking about CLI, AFAIK that's not true. But show me
wrong. (I know reflection is a feature of CLI)


For consistency I will use the C++/CLI standard syntax that will be used
in the upcoming version of Visual Studio 2005 and afterwards.

About classes not being objects, yes in C++ types themselves are not
objects and do not occupy space, and I think this is very reasonable.
But they do have static methods though.

Now about metaclasses, I assume you talk about attributes.
using namespace System;
// I create a custom attribute

[AttributeUsageAttribute(AttributeTargets::Class)]
public ref class SomeAttribute: public Attribute
{
public:
SomeAttribute(String ^) {}
property int Something;
};
// A class using this attribute

[SomeAttribute("Text", Something=7)]
ref class TestClass
{
};

int main()
{
TestClass obj;
}

Reflection is library support. We get a Type object etc.


and of course there is C++ support for
these with system extensions keywords like __property,

Then I'm sure you can describe me which keywords enable each of those
features, because I'm quite sceptical of this one as well. I wouldn't
call it C++ support either if only one compiler happened to implement
some feature.



In the above code I created a trivial property, where the compiler
produces its definition.
In any case to avoid this tiring thing, have you checked this Microsoft
presentation?
http://microsoft.sitestream.com/Tech...V333_Sutte.ppt
C++ becomes the systems programming language of CLI and .NET, so C++ can
do all things C# can, while the opposite is not true.
Have you automatic Dispose definition in C#? Objects in the stack?
Compile time definition?

Can you do this in C#?
ref class ReferenceType
{
int i;

public:
ReferenceType():i(1) {}
ReferenceType(const ReferenceType %x) { i=x.i; }

void print() { System::Console::WriteLine(i); }

};
template <class T>
void display(T x)
{
x.print();
}

int main()
{
// Object with stack semantics - Deterministic destruction
// at the end of its scope
ReferenceType obj;

display(obj);
// Object in the managed heap
ReferenceType ^hobj= gcnew ReferenceType;

display(*hobj);
// Deterministic destruction
delete hobj;
ReferenceType ^hobj2= gcnew ReferenceType;

display(*hobj2);

// Not destroying hobj2, let it be finalised
}

C:\c>cl /clr:safe temp.cpp
Microsoft (R) C/C++ Optimizing Compiler Version 14.00.40809
for Microsoft (R) .NET Framework version 2.00.40607.16
Copyright (C) Microsoft Corporation. All rights reserved.

temp.cpp
Microsoft (R) Incremental Linker Version 8.00.40809
Copyright (C) Microsoft Corporation. All rights reserved.

/out:temp.exe
temp.obj

C:\c>temp
1
1
1

C:\c>
That is 100% verifiable code.


The C++/CLI draft 1.5 has no mention of metaclasses or multidispatch.
I have not read it but I did a quick search. I doubt one can just pass
classes around like objects, either. Maybe through some wrappers.
Reflection is there though.


You mean passing classes to other functions? Easy. Can you do this in C#?
ref class ReferenceType
{
public:

static void somefun() { System::Console::WriteLine("Hey\n"); }
};
ref class ReferenceType2
{
public:

static void somefun() { System::Console::WriteLine("Hey2\n"); }
};
template <class T>
void display()
{
T::somefun();
}

int main()
{
display<ReferenceType>();

display<ReferenceType2>();
}

C:\c>cl /clr:safe temp.cpp
Microsoft (R) C/C++ Optimizing Compiler Version 14.00.40809
for Microsoft (R) .NET Framework version 2.00.40607.16
Copyright (C) Microsoft Corporation. All rights reserved.

temp.cpp
Microsoft (R) Incremental Linker Version 8.00.40809
Copyright (C) Microsoft Corporation. All rights reserved.

/out:temp.exe
temp.obj

C:\c>temp
Hey

Hey2
C:\c>
And last but not least, when I was talking about C++, I was talking
about *the* C++ (1998 standard), not C++/CLI, or any non-standard
extensions to C++. Much like when I say C, I don't mean C++.



You don't get it. C++ standard itself is the core compile-time language
defining portability.
System specific stuff like CLI Virtual Machines, you will use those
facilities.

I use C++/CLI as you use C#/CLI (there is no a C# standard alone).
For example you can't use C# in a non-CLI environment, while ISO C++
code compiles everywhere, both in CLI and non CLI environments.

--
Ioannis Vranos

http://www23.brinkster.com/noicys
Jul 22 '05 #65
On Sat, 11 Sep 2004 02:09:17 +0300, Ioannis Vranos
<iv*@guesswh.at.grad.com> wrote:
C++ becomes the systems programming language of CLI and .NET, so C++ can
do all things C# can, while the opposite is not true.


Just a note to avoid well-intentioned language-bashing: The above is what
Visual C++ 2005 is doing with respect to .NET (CLI) features, such as that
C++ will expose a few more of .NET's generics feature details than C#
chooses to.

But it would be incorrect to say that C++ can do all things C# can in
other respects when it comes to comparing language features. Notably, C#
2005 has both partial classes (the ability to add new members to an
already-defined class, within some limits) and anonymous delegates (a
limited but useful form of lambda functions) that VC++ 2005 will not have.

I do hope that the ISO C++ committee does more work on lambda functions
because I think they're important especially to make the standard
algorithms much more usable, and I hope to help develop that or be
involved somehow, but it's a "time permitting" thing.

Herb

---
Herb Sutter (www.gotw.ca)

Convener, ISO WG21 (C++ standards committee) (www.gotw.ca/iso)
Contributing editor, C/C++ Users Journal (www.gotw.ca/cuj)
Architect, Developer Division, Microsoft (www.gotw.ca/microsoft)
Jul 22 '05 #66
Merrill & Michele wrote:
...snips...
testing


congratulations. You failed the test.

1. use alt.test
2. please don't post binary attachments. Put your code in your post in
raw text.
3. Visual Studio specific stuff (as your attachment appeared to be) is
not relevant to this group. Try one of the microsoft.public.vstudio groups.

Jul 22 '05 #67

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

10
by: John Underwood | last post by:
Can I use python23_d and python23 to develop an extension for a commercial application uses python22.dll? (Providing that I do not use any new features found only in 2.3.) I would bulld version...
1
by: Compucrat | last post by:
Hi community, This is a very basic question, but haunting me right now. We are planning to develop an integration tool for a CRM system. Our intention is to develop the tool in MicroSoft platform...
4
by: Àä×ÔȪ | last post by:
I heared that the vba is not the major develop language in office2003.The best way to develop office2003 is using vs.net and c#. where could i find document about devloping office2003 with c#...
11
by: Raghavendra Mudugal | last post by:
Hello Everybody, We are creating a new project on Virtual Private Networking (VPN), and it is decided to use VC++. I actually want to know that is can be achived by VC#.NET or not. You all know...
43
by: Rob R. Ainscough | last post by:
I realize I'm learning web development and there is a STEEP learning curve, but so far I've had to learn: HTML XML JavaScript ASP.NET using VB.NET ..NET Framework ADO.NET SSL
15
by: king kikapu | last post by:
Hit to all folks here, i recently got interested abiy php, i have a workable knowledge of Python and a little bit of Ruby. I just want to ask, if php is suitable for generic programming and not...
11
by: Michael | last post by:
I'm new to PHP, I already learned the basics of the language and built some little app's for practice. I have a critical dilemma, soon enough, I probably start to develop real-world...
1
by: beproject2007 | last post by:
i have to develop a web based mail client .i am very confused about the language to use.php is definetily an option but so is jsp,asp,asp.net.plz guide me in this tricky situation.
2
by: PrateekArora | last post by:
Hi Guys, I need to develop a MultiLingual Application (Arabic & English) in VB.NET, as far as Labels and captions are concerned in User Interface I am done with that using Resource Manager Class &...
0
by: DolphinDB | last post by:
Tired of spending countless mintues downsampling your data? Look no further! In this article, you’ll learn how to efficiently downsample 6.48 billion high-frequency records to 61 million...
0
by: ryjfgjl | last post by:
ExcelToDatabase: batch import excel into database automatically...
0
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
0
by: ArrayDB | last post by:
The error message I've encountered is; ERROR:root:Error generating model response: exception: access violation writing 0x0000000000005140, which seems to be indicative of an access violation...
1
by: PapaRatzi | last post by:
Hello, I am teaching myself MS Access forms design and Visual Basic. I've created a table to capture a list of Top 30 singles and forms to capture new entries. The final step is a form (unbound)...
1
by: Defcon1945 | last post by:
I'm trying to learn Python using Pycharm but import shutil doesn't work
1
by: Shællîpôpï 09 | last post by:
If u are using a keypad phone, how do u turn on JavaScript, to access features like WhatsApp, Facebook, Instagram....
0
by: af34tf | last post by:
Hi Guys, I have a domain whose name is BytesLimited.com, and I want to sell it. Does anyone know about platforms that allow me to list my domain in auction for free. Thank you
0
by: Faith0G | last post by:
I am starting a new it consulting business and it's been a while since I setup a new website. Is wordpress still the best web based software for hosting a 5 page website? The webpages will be...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.