What is the future of C++?, and what is the C++0x? and is it really
going to include a standard portable libraries for GUI, networking,
embedded systems and so on?
May 31 '06
29 2334
Earl Purple wrote: Those who have implemented GUI will not be out of work - as even standard GUI will still need implementations (just like Roguewave were not out of work when STL came along). And as I said earlier, the current libraries could probably be used to implement the standard interfaces anyway.
Just a small point, I can tell you first-hand that Rogue Wavers were in
fact put out of work as the STL came along and matured.
-York
Earl Purple wrote: [..in response to my questions..] What console functions? It seems you have a wrong impression about what the Standard Library contains at this point.
std::cout is part of the standard, isn't it? And even printf is still there inherited from C.
Yes, and what relationship to console do they have? Is that because
_your_ OS associates the console with the standard out? It has nothing
to do with the language or the library.
V
--
Please remove capital 'A's when replying by e-mail
I do not respond to top-posted replies, please don't ask
homsan toft wrote: kwikius wrote:
Which major parts of GUI technology are moving so fast?
Guis are new in the computing world, compared with eg filesystems. The basic features and uses have hardly stabilized yet.
Apparently GUI has been around in some shape or form since the 1950's. http://www.macos.utah.edu/Documentat...sxone/gui.html
What is striking is how little we have moved on. See Xerox Star in the
above link.
Also interesting Wiki: http://en.wikipedia.org/wiki/History_of_the_GUI
The common features of Mac, Windows, java and web forms are beginning to form a kind of useful core that isn't *just* minimal. But there are still parts that may be useful to everyone but have few widely-used implementations to look at or submit - no standard spreadsheet component and only a few tree displays.
Having recently installed Fedora Linux I was amused at the similarity
between OpenOffice Calc Spreadsheet App and Microsoft Excel.
The Web influence is a good point however. Browsers are a (relatively)
platformless GUI. Also intersting is XUL: http://xulplanet.com/tutorials/whyxul.html
though I havent gone that far into it yet.
Fonts are available for each system, but work quite differently ... etc
Though the interface for user to pick a font is often quite uniform
AFAICS and that is what this is about really, a common interface. There
are parallels to e.g picture/graphics formats. Many file formats
translated to one screen format.
Also, some infrastructure that shouldn't be provided just for the gui library is not in place - eg no signals in c++ yet.
Then, for a successful submission someone usually picks up from experience of widely used implementations , and provides something with a leap of usefulness and generalization (stepanov with STL, boost'ed libraries like regex...) This just hasn't happened yet for guis, but maybe it does sometime within the decade. (not in time for c++0x though, unless 0x is the hexadecimal prefix)
Sure. If it happens it wont happen soon and will not happen by magic,
but that is no reason to give up on it.
There's a big discussion on boost list once or twice a year, someone starts a proof of concept implementation, then it bogs down because there's absolutely no agreement on the problem to solve, scope of solution or even basics of 2D points...
The discussions on Boost may have died but again its no reason to give
up on the goal of having a standardised C++ GUI AFAICS.
regards
Andy Little
kwikius wrote: homsan toft wrote:
Guis are new in the computing world, compared with eg filesystems. The basic features and uses have hardly stabilized yet. Apparently GUI has been around in some shape or form since the 1950's.
Also interesting Wiki: http://en.wikipedia.org/wiki/History_of_the_GUI
So there. Filesystem may be bad comparison - but programming in recognizable form
goes back to 19th c - it still makes GUIs "relatively recent" in some sense. The common features of Mac, Windows, java and web forms are beginning to form a kind of useful core that isn't *just* minimal.
Having recently installed Fedora Linux I was amused at the similarity between OpenOffice Calc Spreadsheet App and Microsoft Excel.
That's because StarOffice (the base for O-O) was a direct clone that purposely
tried to match most of Microsoft Office feature by feature - and was good at it.
See http://wikipedia.org/OpenOffice
The Web influence is a good point however. Browsers are a (relatively) platformless GUI.
Also interesting is XUL: http://xulplanet.com/tutorials/whyxul.html
As is Qt, FLTK and the UI toolkit of OpenOffice.
I like the 6-line C++ API of a Flash gui - http://codeproject.com/useritems/FlashGui.asp
Event I/O takes another couple of dozen lines.
Then Flash programmers can do all the interaction and graphics,
and let C++ programmers work with algorithms.
Doesn't quite cut it for standardization of course, but a rad approach.
Then, for a successful submission someone usually picks up from experience of widely used implementations , and provides something with a leap of usefulness
Sure. If it happens it wont happen soon and will not happen by magic, but that is no reason to give up on it.
No notion of giving up, just telling the OP that it likely won't be in next standard version.
Regards,
homsan
Earl Purple wrote: Victor Bazarov wrote: But doesn't this simply mean that you need Product XYZ which *already* supports all those things (and probably more), and there is no need to have this in the Standard library? Just asking... But they won't all support it with the same API. Common API, different implementations .
Who they? I am saying "Product XYZ" (as in "a single product"), and
please don't ask me to name any examples, so common API is *already*
at your disposal.
Of course, for those things that the standard won't support, you'll still need other libraries. If the standard supports enough for 80% of apps that have a GUI content not to use library-specifics, it would be worthwhile having one.
Oh, yes... Of course. Meanwhile we'll complain about something else
that doesn't exist in the standard, like programming of tactile
interfaces or genome manipulation or ...
* kwikius: Phlip wrote: homsan toft wrote:
An updated standard that they hope to finish before 2010. ... for GUI, No, probably not. There's the slight problem of hitting a fast-moving target with a slow-moving projectile there...
;-)
Which major parts of GUI technology are moving so fast?
Depends what you mean by "fast".
The last ten years we have seen a major shift from procedural to
declarative GUI design, separating the visual aspects as XML (e.g.
Mozilla's XUL and Microsoft's XAML).
This means a C++ GUI framework for 2008 and a few years onward, should
better not be concerned with how to e.g. create buttons, but only with
how to react to button events (or perhaps at a higher level of
abstraction, user commands) and establish the connection from XML to C++
code.
--
A: Because it messes up the order in which people normally read text.
Q: Why is it such a bad thing?
A: Top-posting.
Q: What is the most annoying thing on usenet and in e-mail?
homsan toft wrote: So there. Filesystem may be bad comparison - but programming in recognizable form goes back to 19th c - it still makes GUIs "relatively recent" in some sense.
It ain't the depth of history, it's the breadth of application. The shiny
thing in your cell phone is a GUI, too.
A Standard C++ Implementation must promise to support the same purported
Standard GUI across the broadest range of platforms which have screens and
input devices. So, jack of all trades == master of none. Such a GUI wouldn't
be competitive even with a portable GUI, like wxWidgets, that supports fewer
platforms.
And by the time we have this Standard, the 3D GUI Desktop will have matured.
Now discuss how Standard C++ could support the kernel of a GUI - maybe a
message pump, windows, common widgets, a canvas, and an HTML portal - and
then support generic plug-ins. Similar to custom iterators in STL, such
platform-specific plug-ins could then host all the platform-specific
extensions, following local de-facto standards.
Doesn't quite cut it for standardization of course, but a rad approach.
Today's discovery: http://sourceforge.net/projects/stickwiki
"Wiki on a Stick"
It's a single self-modifying HTML file containing a passable Wiki. [Only
works on FireFox, but] imagine our Standard GUI with its HTML portal hosting
such a file. Instant power-usage, in a handy portable container. Our GUI,
HTML, and Ecmascript would all be (variously) Standard, too.
--
Phlip http://c2.com/cgi/wiki?ZeekLand <-- NOT a blog!!!
Sgt. York wrote: Just a small point, I can tell you first-hand that Rogue Wavers were in fact put out of work as the STL came along and matured.
And a lot of us who have been writing infrastructural type c++
libraries have been made redundant by boost.
Victor Bazarov wrote: Oh, yes... Of course. Meanwhile we'll complain about something else that doesn't exist in the standard, like programming of tactile interfaces or genome manipulation or ...
like concurrent programming (threads) or networking and database
interaction? i.e. common programming paradigms?
If there's a big demand for it, why not have a standard for it? Even if
the demand for it is limited and it's added to the standard, nobody is
forced to use that part of the library, just as I rarely use locale and
never use valarray now.
Earl Purple wrote: Library additions will go include the shared_ptr and scoped_ptr from boost. Not sure about any of their other libraries. (Others can fill me in). Would be nice to see bind in there, although some would propose some language changes to aid that.
There's no proposal for scoped_ptr. But all of TR1 except for the math
special functions is now in C++0x.
--
Pete Becker
Roundhouse Consulting, Ltd. This thread has been closed and replies have been disabled. Please start a new discussion. Similar topics |
by: Pavils Jurjans |
last post by:
Hallo,
I yesterday was browsing the book, JavaScript The Definitive Guide
(4th ed), which is, unquestionably, the best reference book for JS. To
my surprise, I didn't find any documentation about the static
properties of global RegExp object, ie, RegExp.lastMatch,
RegExp.leftContext, RegExp.rightContext, and all those RegExp.$x
properties. I lloked up the ECMA-262 PDF and to my surprise realized
that they are not included into the...
|
by: GTO |
last post by:
I do not believe that C# is the future of C++. I also do not believe that
adding two thousand new library functions to the standard library is the
future of C++. But what is the future of C++? Is it as good as a programming
language can get?
Like so many of you, I programmed speech recognizers, image recognition
systems, a portion of a chess program, lots of numeric code using STL, and
tons of other applications in C++, (even firmware...
|
by: typingcat |
last post by:
First of all, I'm an Asian and I need to input Japanese, Korean and so
on. I've tried many PHP IDEs today, but almost non of them supported
Unicode (UTF-8) file.
I've found that the only Unicode support IDEs are DreamWeaver 8 and
Zend PHP Studio.
DreamWeaver provides full support for Unicode. However, DreamWeaver is
a web editor rather than a PHP IDE. It only supports basic IntelliSense
(or code completion) and doesn't have anything...
|
by: Martin Høst Normark |
last post by:
Hi everyone
Has anyone got the least experience in integrating the Digital Signature
with an ASP.NET Web Application?
Here in Denmark, as I supose in many other countries, they're promoting the
digital signature. A lot of people already has one, to do their taxes, and
much more. I have to use for a business-to-business e-commerce solution,
where it's vital that the right user is being logged on, and not give his
username and password...
|
by: |
last post by:
Everything seems to be moving to .NET and VC++ seems to be adding a lot of
managed code support every new release.
The questions: is unmanaged code in VC++ beeing phased out in favour of
managed code?
And suppose I still program in VC++ 6.0, can I safely assume that the code I
use in VC++ 6.0 will still be available in future VC++ versions.
Finally will VC++ 6.0 generated executables be still be able to run on futur
Windows versions and...
| |
by: Midnight Java Junkie |
last post by:
Dear Colleagues:
I feel that the dumbest questions are those that are never asked. I have
been given the opportunity to get into .NET. Our organization has a
subscription with Microsoft that basically entitled to us to just about
every .Net development tool you can imagine. I cant even begin to mention
them.
To begin with, my background is not that of a programmer, but a systems
engineer and the closest I have come to "programming"...
|
by: yezi |
last post by:
Hi, all:
The 1st sendtence:
int main(){
char string={""};
string = {" connected "};
.....
}
|
by: Alan Silver |
last post by:
Hello,
Just wondered what range of browsers, versions and OSs people are using
to test pages. Also, since I don't have access to a Mac, will I have
problems not being able to test on any Mac browsers, or is there some
other way of checking?
TIA
--
|
by: windandwaves |
last post by:
Hi Folk
I have to store up to eight boolean bits of information about an item
in my database.
e.g.
with restaurant
drive-through facility
yellow windows
|
by: mak1084 |
last post by:
hi guys,
I'm totally confused for my future...Right now I just started working as jr. php programmer. But I'm Confused about my future Coz here where I'm working is giving me very very less as compared to what a Jr. programmer should get.
I dont mind this coz i'm getting experience and this is my first job. but still I htink that a PHP programmer Does not have as good future as any other pro programmers have like java or .NET. So my...
|
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 effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it.
First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
| |
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.
Here is my compilation command:
g++-12 -std=c++20 -Wnarrowing bit_field.cpp
Here is the code in...
|
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 tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth.
The Art of Business Website Design
Your website is...
|
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 choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
|
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 launch it, all on its own....
Now, this would greatly impact the work of software developers. The idea...
|
by: isladogs |
last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM).
In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules.
He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms.
Adolph will...
|
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 then checking html paragraph one by one.
At the time of converting from word file to html my equations which are in the word document file was convert into image.
Globals.ThisAddIn.Application.ActiveDocument.Select();...
| |
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 the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
|
by: muto222 |
last post by:
How can i add a mobile payment intergratation into php mysql website.
| |