Is it not time to make a new language D drawing on the experiences from C
and C++?
Specifically, such a language should zip out the parts of C that are
problematic and caused ambiguities and problems in C++. For example, the
many implicit type conversions and problems in the C syntax which are
difficult handle in a C++ high level language style. (There is an example
in the Bison manual in the GLR parser section of a C++ language
ambiguity).
Then one would first get a cleaner C core, not having to worry about
upwards compatibility so much anymore. Further this core can be designed
with respect to more modern CPU structures in mind.
The experiences from C++ will tell mainly how to implement statically
computable user definable structures, including some generic programming
then.
To this, one needs a level above the C++ level, handling parallelism,
distributed programming and better handling of dynamic objects (so it
becomes easier to create Java style polymorphic classes), including ones
choice of GC if needed.
On the level below the C level, one can think of a "portable assembler
level" like C-- and/or a byte code level, which can be used as an
intermediate to an assembler level. This level should also provide hooks
to "universal binary standards" like CORBA and Unicode, which C and C++
carefully avoids due to their history.
See you in comp.std.d. :-)
Hans Aberg * Anti-spam: remove "remove." from email address.
* Email: Hans Aberg <re***********@ member.ams.org>
* Home Page: <http://www.math.su.se/~haberg/>
* AMS member listing: <http://www.ams.org/cml/> 68 5012
"Hans Aberg" <re***********@ matematik.su.se > wrote... Is it not time to make a new language D drawing on the experiences from C and C++?
There is 'D' already. Search for it on the Web.
Victor
"Hans Aberg" <re***********@ matematik.su.se > wrote in message
news:re******** *************** *****@du130-86.ppp.su-anst.tninet.se. .. Is it not time to make a new language D drawing on the experiences from C and C++?
There have been many language attempts named "D".
Specifically, such a language should zip out the parts of C that are problematic and caused ambiguities and problems in C++. For example, the many implicit type conversions and problems in the C syntax which are difficult handle in a C++ high level language style. (There is an example in the Bison manual in the GLR parser section of a C++ language ambiguity).
Then one would first get a cleaner C core, not having to worry about upwards compatibility so much anymore. Further this core can be designed with respect to more modern CPU structures in mind.
The experiences from C++ will tell mainly how to implement statically computable user definable structures, including some generic programming then.
To this, one needs a level above the C++ level, handling parallelism, distributed programming and better handling of dynamic objects (so it becomes easier to create Java style polymorphic classes), including ones choice of GC if needed.
On the level below the C level, one can think of a "portable assembler level" like C-- and/or a byte code level, which can be used as an intermediate to an assembler level. This level should also provide hooks to "universal binary standards" like CORBA and Unicode, which C and C++ carefully avoids due to their history.
There is no need to create a new language which has nothing more to offer
than the existing ones. Also C++ evolution iis based on providing superior
alternatives which you can use in place of the legacy ones.
Take for example exception handling in the place of return value checking.
In essence, what you are telling is to "recreate" a subset of the now
existing C++. Do something better, use the new and superior facilities that
C++ has to offer than the old stuff.
--
Ioannis
* Programming pages: http://www.noicys.freeurl.com
* Alternative URL 1: http://run.to/noicys
* Alternative URL 2: http://www.noicys.cjb.net
"Hans Aberg" <re***********@ matematik.su.se > wrote in message
news:re******** *************** *****@du130-86.ppp.su-anst.tninet.se. .. Is it not time to make a new language D drawing on the experiences from C and C++?
See for yourself: http://www.digitalmars.com/d re***********@m atematik.su.se (Hans Aberg) wrote: Is it not time to make a new language D drawing on the experiences from C and C++?
It has been that time several times now, if the people shouting from the
wings are to be believed. In fact, several such languages exist,
beginning with C++, but somehow none of them has replaced C. Tell you
what, though: you do the drudge work (a couple of years' hard work
should be enough), and we'll tell you whether we like it or not. Now all
you have to do is make sure that you don't create yet another
C-with-classes.
Richard
"Paul Hsieh" <qe*@pobox.co m> wrote in message
news:MP******** *************** *@news.sf.sbcgl obal.net... There is also no way to communicate to the C/C++ faithful here (or other similar newsgroups) that a more progressive stance on the evolution of the standard (based on lessons learned from *those* languages) could
significantly revitalize the C/C++ languages.
Check this: http://www.research.att.com/~bs/C++0x_keynote.pdf
If you have new ideas why don't you submit them in the committee or at least
at comp.std.c++ ? :-)
Just look at the C99 standard to see where the future of C is. They added complex numbers to lure away all those hordes of Fortran programmers ... *sigh*.
Yes i agree with you. C99 is a dead language. Instead of providing complex
and stuff as part of new header files only, they made them built in and with
ugly names! You'd probably be better off trying to work on Python, Ruby, LUA, or a
language of your own creation than trying to motivate anyone here to *improve* the
C standard. Nobody cares anymore.
I disagree with you regarding C++!
--
Ioannis
* Programming pages: http://www.noicys.freeurl.com
* Alternative URL 1: http://run.to/noicys
* Alternative URL 2: http://www.noicys.cjb.net
On Wed, 09 Jul 2003 06:41:51 GMT, qe*@pobox.com (Paul Hsieh) wrote: iv*@nothis.ema ils.ru says: There is no need to create a new language which has nothing more to offer than the existing ones. Also C++ evolution iis based on providing superior alternatives which you can use in place of the legacy ones. "Hans Aberg" <re***********@ matematik.su.se wrote: > > See you in comp.std.d. :-)
<snip>There is also no way to communicate to the C/C++ faithful here (or other similar newsgroups) that a more progressive stance on the evolution of the standard (based on lessons learned from *those* languages) could significantly revitalize the C/C++ languages.
I didn't know they needed "revitalizi ng." Just look at the C99 standard to see where the future of C is. They added complex numbers to lure away all those hordes of Fortran programmers ... *sigh*.
Gosh, I didn't even know there was a contest! Do the members of the
standards committee get bonuses if enough programmers use C? Like many
programmers, I use the tool which is best for the job, considering all
relevant factors, and often that's C.
You'd probably be better off trying to work on Python, Ruby, LUA, or a language of your own creation than trying to motivate anyone here to *improve* the C standard.
That's what jvr said - there's no need to radically change C if there
are other languages to do the job. And no need to invent another
language if what you need already exists.
It seems that you are advocating that C/C++ evolve into the perfect
programming language. There ain't no such animal.
--
Al Balmer
Balmer Consulting re************* ***********@att .net qe*@pobox.com (Paul Hsieh) writes: iv*@nothis.emai ls.ru says: There is no need to create a new language which has nothing more to offer than the existing ones. Also C++ evolution iis based on providing superior alternatives which you can use in place of the legacy ones. "Hans Aberg" <re***********@ matematik.su.se wrote: > > See you in comp.std.d. :-)
Unforunately, you'll find the above attitude extremely prevalent in this and the comp.std.c newsgroups. There's a lot of "C is a systems language" and "use the right tool for the right job" nonsense commonly spouted here.
It makes better sense to use the wrong tool for the job? If you mean
to say that C should be improved to handle new jobs, then say that. The people who were previously in the position of detesting C and C++ have long since left and created their own pet languages (Java, Perl, Python, etc.) And all those who remain here either don't care or don't realize realize that this has happened.
Or we are happy that new languages have filled needs C and C++ did not
meet well. If you look at the goals of those languages, and
compare them to the goals of C++ (as described in D&E by
Stroustrup) or the goals of C, you will find they aim at very
different areas.
In particular, D&E makes it clear that Stroustrup has always believed
there are places for languages other than C++; he says 'use the
right tool for the right job' many different times in many
different ways.
There is also no way to communicate to the C/C++ faithful here (or other similar newsgroups) that a more progressive stance on the evolution of the standard (based on lessons learned from *those* languages) could significantly revitalize the C/C++ languages.
[snip]
I do not know about the C community, but some of the C++ community is
still smarting from the too fast and too poorly communicated evolution
of the current standard - yes, I do mean the evolution that took
place in the early to mid 1990s, almost a decade ago. For whatever
reason, good information spreads slowly in the C++ community.
"dbtid" <db***@dev-null.us> wrote in message
news:36******** *************** *******@free.te ranews.com... Then why are you here?
Basically "i am" in c.l.c++.
I see it's true that leopards don't change their stripes, even after all these years.
Hrrrr (as cats purr).
--
Ioannis
* Programming pages: http://www.noicys.freeurl.com
* Alternative URL 1: http://run.to/noicys
* Alternative URL 2: http://www.noicys.cjb.net
Paul Hsieh wrote: What I am saying is that the C (89, 99 whatever) standard as it is is severely flawed. Why not at least bring it up to the level of not being so flawed?
Seems more like a topic for
news:comp.std.c
--
pete This thread has been closed and replies have been disabled. Please start a new discussion. Similar topics |
by: William C. White |
last post by:
Does anyone know of a way to use PHP /w Authorize.net AIM without using
cURL? Our website is hosted on a shared drive and the webhost company
doesn't installed additional software (such as cURL) on the server because
of that. Our site will have an SSL certificate next week, so I would like
to use AIM instead of SIM, however, I don't know how...
|
by: Albert Ahtenberg |
last post by:
Hello,
I don't know if it is only me but I was sure that header("Location:url")
redirects the browser instantly to URL, or at least stops the execution of
the code. But appearantely it continues to execute the code until the
browser send his reply to the header instruction. So an exit(); after each
redirection won't hurt at all
|
by: James |
last post by:
Hi,
I have a form with 2 fields.
'A'
'B'
The user completes one of the fields and the form is submitted.
On the results page I want to run a query, but this will change
subject to which field is completed.
|
by: Ollivier Robert |
last post by:
Hello,
I'm trying to link PHP with Oracle 9.2.0/OCI8 with gcc 3.2.3 on a Solaris9
system. The link succeeds but everytime I try to run php, I get a SEGV from
inside the libcnltsh.so library.
354 roberto@ausone:Build/php-4.3.2> ldd /opt/php4/bin/php
libsablot.so.0 => /usr/local/lib/libsablot.so.0
libstdc++.so.5 => ...
|
by: Richard Galli |
last post by:
I want viewers to compare state laws on a single subject.
Imagine a three-column table with a drop-down box on the top. A viewer
selects a state from the list, and that state's text fills the column below.
The viewer can select states from the drop down lists above the other two
columns as well. If the viewer selects only one, only one...
| |
by: Albert Ahtenberg |
last post by:
Hello,
I have two questions.
1. When the user presses the back button and returns to a form he filled
the form is reseted. How do I leave there the values he inserted?
2. When the user comes back to a page where he had a submitted POST data
the browser keeps telling that the data has expired and asks if repost. How
to avoid...
|
by: inderjit S Gabrie |
last post by:
Hi all
Here is the scenerio ...is it possibly to do this...
i am getting valid course dates output on to a web which i have designed
....all is okay so far , look at the following web url
http://www.mis.gla.ac.uk/biquery/training/
but each of the courses held have maximum of 8 people that could be
|
by: Jack |
last post by:
Hi All,
What is the PHP equivilent of Oracle bind variables in a SQL statement, e.g.
select x from y where z=:parameter
Which in asp/jsp would be followed by some statements to bind a value to :parameter
I dont like the idea of making the SQL statement on the fly without binding parameters as I
dont want a highly polluted SQL cache.
|
by: Sandwick |
last post by:
I am trying to change the size of a drawing so they are all 3x3.
the script below is what i was trying to use to cut it in half ... I
get errors.
I can display the normal picture but not the results of the picture
half the size. The PHP I have installed support 1.62 or higher. And
all I would like to do is take and image and make it fit a...
|
by: marktang |
last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main...
|
by: Oralloy |
last post by:
Hello folks,
I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>".
The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed.
This is as boiled down as I can make it. ...
| |
by: tracyyun |
last post by:
Dear forum friends,
With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the...
|
by: agi2029 |
last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then...
|
by: TSSRALBI |
last post by:
Hello
I'm a network technician in training and I need your help.
I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs.
The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols.
I succeeded, with both firewalls in...
|
by: adsilva |
last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
|
by: 6302768590 |
last post by:
Hai team
i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
|
by: muto222 |
last post by:
How can i add a mobile payment intergratation into php mysql website.
| |
by: bsmnconsultancy |
last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating...
| |