473,466 Members | 1,530 Online
Bytes | Software Development & Data Engineering Community
Create Post

Home Posts Topics Members FAQ

C++ Formalism: any progress since n1885-6?

These were circulated on the Mathematica mailing list when they were
originally released. I have not yet found time to examine them. Does
anybody know if subsequent work has been done in this area?

http://www.open-std.org/JTC1/SC22/WG...2005/n1885.pdf
http://www.open-std.org/JTC1/SC22/WG...2005/n1886.pdf
--
NOUN:1. Money or property bequeathed to another by will. 2. Something handed
down from an ancestor or a predecessor or from the past: a legacy of
religious freedom. ETYMOLOGY: MidE legacie, office of a deputy, from OF,
from ML legatia, from L legare, to depute, bequeath. www.bartleby.com/61/
Dec 14 '06 #1
5 1115

Steven T. Hatton wrote:
These were circulated on the Mathematica mailing list when they were
originally released. I have not yet found time to examine them. Does
anybody know if subsequent work has been done in this area?

http://www.open-std.org/JTC1/SC22/WG...2005/n1885.pdf
http://www.open-std.org/JTC1/SC22/WG...2005/n1886.pdf
Yes. There are recent proposals:

http://www.generic-programming.org/l...es/conceptcpp/

and also a version of gcc which is being used to experiment with(and
which you can download):

http://www.generic-programming.org/software/ConceptGCC/

It seems that the commitee is quite keen. I have used the compiler and
it is interesting but you can't do anything advanced with it and there
are some bugs, but it provides some insight into what Concepts will
look like:

regards
Andy Little

Dec 14 '06 #2
kwikius wrote:
>
Steven T. Hatton wrote:
>These were circulated on the Mathematica mailing list when they were
originally released. I have not yet found time to examine them. Does
anybody know if subsequent work has been done in this area?

http://www.open-std.org/JTC1/SC22/WG...2005/n1885.pdf
http://www.open-std.org/JTC1/SC22/WG...2005/n1886.pdf

Yes. There are recent proposals:

http://www.generic-programming.org/l...es/conceptcpp/

and also a version of gcc which is being used to experiment with(and
which you can download):

http://www.generic-programming.org/software/ConceptGCC/

It seems that the commitee is quite keen. I have used the compiler and
it is interesting but you can't do anything advanced with it and there
are some bugs, but it provides some insight into what Concepts will
look like:
I was really looking for a follow-up on the formalism itself, not so much
the application. I'm currently more interested in non-template end of
things. I don't know if anybody will follow up on my suggestion of
devising an abstract state machine to use as a heuristic to help explain
and understand some of the trickier aspects of the standard such as the
interplay of friend declarations and ADL.

For myself, I'm currently trying to develop the GUI skills to rapidly create
tools to help visualize such things.
--
NOUN:1. Money or property bequeathed to another by will. 2. Something handed
down from an ancestor or a predecessor or from the past: a legacy of
religious freedom. ETYMOLOGY: MidE legacie, office of a deputy, from OF,
from ML legatia, from L legare, to depute, bequeath. www.bartleby.com/61/
Dec 19 '06 #3

Steven T. Hatton wrote:
kwikius wrote:

Steven T. Hatton wrote:
These were circulated on the Mathematica mailing list when they were
originally released. I have not yet found time to examine them. Does
anybody know if subsequent work has been done in this area?

http://www.open-std.org/JTC1/SC22/WG...2005/n1885.pdf
http://www.open-std.org/JTC1/SC22/WG...2005/n1886.pdf
Yes. There are recent proposals:

http://www.generic-programming.org/l...es/conceptcpp/

and also a version of gcc which is being used to experiment with(and
which you can download):

http://www.generic-programming.org/software/ConceptGCC/

It seems that the commitee is quite keen. I have used the compiler and
it is interesting but you can't do anything advanced with it and there
are some bugs, but it provides some insight into what Concepts will
look like:

I was really looking for a follow-up on the formalism itself, not so much
the application. I'm currently more interested in non-template end of
things. I don't know if anybody will follow up on my suggestion of
devising an abstract state machine to use as a heuristic to help explain
and understand some of the trickier aspects of the standard such as the
interplay of friend declarations and ADL.
I don't quite know what the above means, but AFAIK trying to express
C++ language just by grammar rules and such like doesnt work. That is
why it is near impossible to write automated tools for C++. What things
mean depends on the context. I guess the best model for a state machine
would be a C++ compiler maybe.

OTOH I reckon quite how C++ came to be is something of an enigma, which
its better just to accept. Maybe that is what makes it great. Like
other great things, it is not possible to know it completely.

regards
Andy Little

Dec 20 '06 #4
kwikius wrote:
>
Steven T. Hatton wrote:
>kwikius wrote:
>
Steven T. Hatton wrote:
>I was really looking for a follow-up on the formalism itself, not so much
the application. I'm currently more interested in non-template end of
things. I don't know if anybody will follow up on my suggestion of
devising an abstract state machine to use as a heuristic to help explain
and understand some of the trickier aspects of the standard such as the
interplay of friend declarations and ADL.

I don't quite know what the above means, but AFAIK trying to express
C++ language just by grammar rules and such like doesnt work. That is
why it is near impossible to write automated tools for C++. What things
mean depends on the context. I guess the best model for a state machine
would be a C++ compiler maybe.
I'm not talking about a comprehensive state machine. That would be a
compiler. What I mean is some way of representing a name, for example, in
such a way that its state is clearly defined at a given point in the token
stream. What attributes should be assigned to it in order to fully
represent it? Is it in scope, visible, valid, defined, accessible etc.
Can an orthogonal set of attributes which fully characterizes the state of
a program component be identified?
OTOH I reckon quite how C++ came to be is something of an enigma, which
its better just to accept. Maybe that is what makes it great. Like
other great things, it is not possible to know it completely.
What can be created with C++ may be boundless, but the language definition
is finite. It should be comprehensible.

--
NOUN:1. Money or property bequeathed to another by will. 2. Something handed
down from an ancestor or a predecessor or from the past: a legacy of
religious freedom. ETYMOLOGY: MidE legacie, office of a deputy, from OF,
from ML legatia, from L legare, to depute, bequeath. www.bartleby.com/61/
Dec 20 '06 #5

Steven T. Hatton wrote:
kwikius wrote:

Steven T. Hatton wrote:
kwikius wrote:


Steven T. Hatton wrote:
I was really looking for a follow-up on the formalism itself, not so much
the application. I'm currently more interested in non-template end of
things. I don't know if anybody will follow up on my suggestion of
devising an abstract state machine to use as a heuristic to help explain
and understand some of the trickier aspects of the standard such as the
interplay of friend declarations and ADL.
I don't quite know what the above means, but AFAIK trying to express
C++ language just by grammar rules and such like doesnt work. That is
why it is near impossible to write automated tools for C++. What things
mean depends on the context. I guess the best model for a state machine
would be a C++ compiler maybe.

I'm not talking about a comprehensive state machine. That would be a
compiler. What I mean is some way of representing a name, for example, in
such a way that its state is clearly defined at a given point in the token
stream. What attributes should be assigned to it in order to fully
represent it? Is it in scope, visible, valid, defined, accessible etc.
Can an orthogonal set of attributes which fully characterizes the state of
a program component be identified?
The best way to proceed IMO is to start with the various scopes. They
are listed somewhere in the standard. That gives some handle on the
'context' idea. Then the other layer that needs to be applied is
templates. Once you can say I am in context X then you are on safer
ground as to what such and such a construct means, but in another
context it could mean something else.

OTOH my mind works quite well with the context scheme, so things
usually work as I expect them to sort of instinctively. There is some
sort of a picture is worth a thousand words idea here that I cant
explain, but seems to be how the language was designed. I guess C++
work well with the way I think! But I don't try to analyse it too much
:-)

regards
Andy Little

Dec 20 '06 #6

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

Similar topics

1
by: Elliott B. | last post by:
We have been asigned a project required by our parent company to have our sales people fill out a form before billing any order to our customers. Our main system runs a Progress db, that's where...
13
by: Martin Mrazek | last post by:
Hi, I check data validity in html form by JS. Something like for (i=0; i<document.form.elements.length; i++) { chechkValidity(i); } Unfortunately, the form has about two thousands elements...
3
by: SpamProof | last post by:
I got an animated gif that is a barber pole spinning that I want to use as a progress bar. The problem is that is stops spinning (shows 1 frame) when my browser is processing a submited request...
7
by: Pepi Tonas | last post by:
I have a form that takes some time to load because it has to populate some Data. I was trying to display a form on top of it with an activity bar so that user can see that something's going on. ...
8
by: WhiteWizard | last post by:
I guess it's my turn to ASK a question ;) Briefly my problem: I am developing a Windows app that has several User Controls. On one of these controls, I am copying/processing some rather large...
1
by: daniel_xi | last post by:
Hi all, I am running a VS 2003 .NET project on my client machine (Win 2000 SP4, ..NET framework 1.1), running an ASP.NET application on a remote web server (Win 2000 Server, IIS 6.0, .NET...
15
by: eladla | last post by:
Hi! I am creating a composite control the does some of it`s own data access. I want to display a progress bar between the time the page is loaded and the control place holder is displayed and...
5
by: Aggelos | last post by:
Hello I am doing sevreral scripts like sending a newsletter that might take a while to finish first to prevent the browser from timing out and to keep the user informed of the process progress I...
0
by: jags_32 | last post by:
Hello We use MFG-PRO as our ERP system which in turn uses Progress databases. In the old version of SQL 2000, using DTS packages, we used to set the code page via command prompts and execute DTS...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
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,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
1
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
agi2029
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,...
0
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and...
0
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
0
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 ...

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.