473,326 Members | 2,815 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.

C++ wish list and beyond

For almost a decade now some desirable features have appeared in
circulations as C++ wish list. Consider the following features.

Invariants and Contracts.
Extending enumerations.
Namespaces with private and public sections.
Platform independent threading.
Platform independent serialization.

This is a small list of features that are supported by Z++, a platform
independent superset of C++ for distributed computing. Just visit
www.zhmicro.com and get a free compiler with many well-documented
examples.

Regards,
Zorro.

Jul 23 '05 #1
7 1329
Zorro wrote:
For almost a decade now some desirable features have appeared in
circulations as C++ wish list. Consider the following features.
Please bear in mind that C++ already is the most complicated
programming language around. Any "improvements" need more than good
arguments.
Invariants and Contracts. C++ as better Eiffel? No.
Extending enumerations. What for?
Namespaces with private and public sections. Better: "exported" and not-exported symbols (like in Win-DLL).
Platform independent threading. Maybe a threading library on top of platform primitives.
Platform independent serialization. Not nececcary, IMO
This is a small list of features that are supported by Z++, a platform
independent superset of C++ for distributed computing. Just visit
www.zhmicro.com and get a free compiler with many well-documented
examples.


Z++, D, Heron, ...? It's more promising to establish better C++ idioms
than to invent new languages. The latter is much easier.

Jul 23 '05 #2
> [...]
This is a small list of features that are supported by Z++, a platform
independent superset of C++ for distributed computing.


Bad choice of name. What if somebody comes up with a successor to Z++?

cheers,
K.
Jul 23 '05 #3
Btw. please retest your website with IE 6.0 on Windows with 120 dpi font
size.
Jul 23 '05 #4
Please read carefully the logical responses to your statements before
making another hasty judgement. It is my intent to be courteous. I
apologies if the choice of words imply otherwise. Thank you.
C++ is the most complicated language. Improvements need more than a good argument.
Is it the language, or the libraries for various platforms that is the
most complicated? C++ does have several issues that Z++ systematically
resolves, including static class members (I will generally point one or
two items. You need to read some of the many white papers at
www.zhmicro.com to get a better idea of the improvements).

Z++ reduces the complexity of third-party and other libraries by
several orders of magnitude. You can only judge after at least looking
at some of the example programs. You will be surprised with the degree
of reduction in complexity.

However, linguistic extensions of Z++, such as tasks for
object-oriented multi-threading, as well as the simplicity of creating
platform independent global threads, and indeed a lot more, is what
reduces the complexity. The lack of such linguistic constructs and
relying on system calls and libraries is the bulk of complexity, not
the size of the language. I am not familiar with any Eiffel library to
make a judgement.

C++ as better Eiffel? No.
Eiffel is a good language. However, the invariants and contracts of Z++
are not a copy of Eiffel. In particular the flavor of contracts is more
object-oriented and in Z++ they are called Constraints, not contracts.
By the way, Eiffel differs from C++ not because of Invariants. It is a
fully object-oriented language lacking the notion of global space with
many defending articles. You should also read my view on that in the
bloggers posted at the site.
Extending enumerations. What for?
Just because Eiffel does not support something it does not make it
unnecessary. The what for is answered in one of the white papers.
Namespaces with private and public sections.
Better: "exported" and not-exported symbols (like in Win-DLL).
Well. You must have been tired. Z++ is the language for platform free
component oriented software development, but that is not related to
namespaces at all. Any program in Z++ can execute as standalone, or
simply used as (universal DLL) without any of those export/import mess.

The export that you are mentioning, when taken in context of namespaces
of Z++, maps to the public section of a namespace. By the way, in Z++
namespaces can be derived from one another.

Maybe a threading library on top of platform primitives.
What are platform primitives? Why a set of primitives and then a set of
libraries? What is wrong with a simple linguistic universal solution
that conforms to the overall design of the base language, in this case
C++? It would be nice to know what you have in mind, indeed. The
statement is too vague.
Platform independent serialization. Not nececcary, IMO.
The point here is that, you can simply send and receive programming
objects in binary the same way you do input and output in C++. You
simply overload operators << and >> for your object, just as simply as
you do for stdin and stdout. So, what do you mean not necessary. How
did you judge that, if I may ask?


At the end you are listing several languages and making a correct
comment "It is easier to invent new languages". The whole point is that
Z++ is a superset of C++, and is not a new language. Relatively
speaking, Eiffel is a new language (although goes back to early
eighties).

I also started in early eighties, as a mathematician (PhD) and my first
attempt was a form of BASIC in 1984. It was successful for its time but
I contiued my research until 1989 when I decided to go with C++. I
presented Z++ in 1993 as my proposal for second PhD in Computer
Science, and completed the prototype in 1996. Z++ is not an invented
language. It has gone through years of research and refinement. The
main point is that, enforcing a new language (including Eiffel and ADA)
is like a conquerer forcing invaded countries to speak their language.
You should read my article on Evolution and the reasons for taking the
path C, C++ and Z++.

Jul 23 '05 #5
Thanks Marcin.

Indeed I meant to say I am only going to list a few. The features cover
all items on any wish list and go way beyond it. In fact, Z++
coherently blends in well-tested features of ADA, APL etc. and properly
extends them. The design of Z++ is based on abstractions in software
engineering over several decades. The presentation is based on C++
which goes back to Simula. Z++ is an evolution resting over a long span
of history of successful attempts.

Since Z++ executables run on a virtual processor of about 300K, the
only thing I can see in the future is more evolved Z++ without any
legacy programs. The possible increments in the instruction set of the
virtual processor will not violate existing code. The process is like
extending Intel processors than making a larger virtual machine. The
novelty in the design is that the work is done by the compiler, linker
etc, not the virtual machine.

The successors of Z++ will be future versions of Z++. As it is, the sum
of all languages does not match up with Z++, and yet it hardly takes a
week of self-study to move up from C++ to Z++.

Thanks again.
Regards,
Z.

Jul 23 '05 #6
I have informed the person doing the page.

Thank you.
Z.

Jul 23 '05 #7
Zorro wrote:
Please read carefully the logical responses to your statements before
making another hasty judgement. It is my intent to be courteous.
Ok, I carefully read your first message:
For almost a decade now some desirable features have appeared in
circulations as C++ wish list. Consider the following features.
Q: What is Zorro talking about?
A: He posts to comp.lang.c++. He's talking about C++.
Invariants and Contracts.
Extending enumerations.
Namespaces with private and public sections.
Platform independent threading.
Platform independent serialization.
Q: What is Zorro talking about?
A: He's still talking about C++ (nothing else mentioned yet).
This is a small list of features that are supported by Z++, a platform
independent superset of C++ for distributed computing. Just visit
www.zhmicro.com and get a free compiler with many well-documented
examples.


Q: What is Zorro talking about?
A: Oops, Z++! My fault, I haven't read the message bottom up as I
should! Sorry to have wasted your precious time. I'm not interested in
buying your product. BTW, you should consider to create a comp.lang.z++
group to avoid further misunderstanding. Z++ is obviously off topic in
group dedicated to C++.

Jul 23 '05 #8

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

Similar topics

5
by: tjland | last post by:
Okay so im working on a very simple encryption method using just loops. Kind of novel i think. Okay so first i set up a list of the alphabet with just every seperate letter, then user is prompted...
7
by: Jim Newton | last post by:
does anyone know where i can find the current wish-list or to-do list for futer python releases? Does anyone know if there is a play to allow non-evaluatable statements to return values? I'm...
3
by: David Ross | last post by:
I sometimes place a sidebar on a Web page, using the following: ..sideright { float: right; background-color: #fff; width: 40%; font-size: 90%; text-align: justify; margin-left: 1em;...
12
by: Christoff Pale | last post by:
Hi, suppose I have a list of strings; I have to iterate of the strings and delete certain entries. I and not sure how to do this? for example: #include<list> #include<string>...
65
by: Steven Watanabe | last post by:
I know that the standard idioms for clearing a list are: (1) mylist = (2) del mylist I guess I'm not in the "slicing frame of mind", as someone put it, but can someone explain what the...
43
by: michael.f.ellis | last post by:
The following script puzzles me. It creates two nested lists that compare identically. After identical element assignments, the lists are different. In one case, a single element is replaced. In...
5
by: David Longnecker | last post by:
I'm working to create a base framework for our organization for web and client-side applications. The framework interfaces with several of our systems and provides the business and data layer...
5
by: Roy Smith | last post by:
Be kind to me, I'm a CSS newbie... I've been playing with drupal, building a web site (hyc-test.org). I started with the "sky" theme, but didn't like the way it rendered list items in menus. ...
2
by: psykosolution | last post by:
I need some help... i'm new to this python thing, and I know i'm working on something beyond my level, it's not beyond my ability to learn... I'm trying to update an existing script that I...
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...
1
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: Vimpel783 | last post by:
Hello! Guys, I found this code on the Internet, but I need to modify it a little. It works well, the problem is this: Data is sent from only one cell, in this case B5, but it is necessary that data...
0
by: jfyes | last post by:
As a hardware engineer, after seeing that CEIWEI recently released a new tool for Modbus RTU Over TCP/UDP filtering and monitoring, I actively went to its official website to take a look. It turned...
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)...
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.