electro-music.org   Dedicated to experimental electro-acoustic
and electronic music
 
 Front Page  |  Radio  |  Forum  |  Media  |  Playlists  |  Wiki
Forum with support of Syndicator RSS
 FAQFAQ   CalendarCalendar   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   LinksLinks
 RegisterRegister   ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in  Chat RoomChat Room 
 Forum index » Discussion » Schmooze
Microsoft says, "the future of the web is HTML5"
Post new topic   Reply to topic
Page 1 of 2 [35 Posts]
View unread posts
View new posts in the last week
Mark the topic unread :: View previous topic :: View next topic
Goto page: 1, 2 Next
Author Message
v-un-v
Janitor
Janitor


Joined: May 16, 2005
Posts: 8932
Location: Birmingham, England, UK
Audio files: 19
G2 patch files: 1

PostPosted: Fri Apr 30, 2010 4:09 am    Post subject: Microsoft says, "the future of the web is HTML5"
Subject description: R.I.P. Adobe Flash?
Reply with quote  Mark this post and the followings unread

Microsoft wrote:
Microsoft is deeply engaged in the HTML5 process with the W3C. HTML5 will be very important in advancing rich, interactive web applications and site design. The HTML5 specification describes video support without specifying a particular video format. We think H.264 is an excellent format. In its HTML5 support, IE9 will support playback of H.264 video only.


Well, well, well! Shame because I've just downloaded the new OSX 10.1 Flash beta from Adode, and my Mac now runs websites without toasting my private parts! Laughing

More toasties from Micro$oft here

_________________
ACHTUNG!
ALLES TURISTEN UND NONTEKNISCHEN LOOKENPEEPERS!
DAS KOMPUTERMASCHINE IST NICHT FÜR DER GEFINGERPOKEN UND MITTENGRABEN! ODERWISE IST EASY TO SCHNAPPEN DER SPRINGENWERK, BLOWENFUSEN UND POPPENCORKEN MIT SPITZENSPARKSEN.
IST NICHT FÜR GEWERKEN BEI DUMMKOPFEN. DER RUBBERNECKEN SIGHTSEEREN KEEPEN DAS COTTONPICKEN HÄNDER IN DAS POCKETS MUSS.
ZO RELAXEN UND WATSCHEN DER BLINKENLICHTEN.
Back to top
View user's profile Send private message Send e-mail
bachus



Joined: Feb 29, 2004
Posts: 2924
Location: Up in that tree over there.
Audio files: 5

PostPosted: Wed May 05, 2010 9:53 pm    Post subject: Reply with quote  Mark this post and the followings unread

A quote from your M$ link

"I've always held Microsoft's software visions in fairly high regard "

Me too. It's the reality of the implementations that suck.

What I don't understand about M$ is how they can produce such fine IDEs and compilers and so many abominable applications. The disconnect is hard to fathom.

_________________
The question is not whether they can talk or reason, but whether they can suffer. -- Jeremy Bentham
Back to top
View user's profile Send private message Visit poster's website
v-un-v
Janitor
Janitor


Joined: May 16, 2005
Posts: 8932
Location: Birmingham, England, UK
Audio files: 19
G2 patch files: 1

PostPosted: Thu May 06, 2010 12:05 am    Post subject: Reply with quote  Mark this post and the followings unread

Because they make it easy to make crud? Rolling Eyes
_________________
ACHTUNG!
ALLES TURISTEN UND NONTEKNISCHEN LOOKENPEEPERS!
DAS KOMPUTERMASCHINE IST NICHT FÜR DER GEFINGERPOKEN UND MITTENGRABEN! ODERWISE IST EASY TO SCHNAPPEN DER SPRINGENWERK, BLOWENFUSEN UND POPPENCORKEN MIT SPITZENSPARKSEN.
IST NICHT FÜR GEWERKEN BEI DUMMKOPFEN. DER RUBBERNECKEN SIGHTSEEREN KEEPEN DAS COTTONPICKEN HÄNDER IN DAS POCKETS MUSS.
ZO RELAXEN UND WATSCHEN DER BLINKENLICHTEN.
Back to top
View user's profile Send private message Send e-mail
Antimon



Joined: Jan 18, 2005
Posts: 4145
Location: Sweden
Audio files: 373
G2 patch files: 100

PostPosted: Thu May 06, 2010 4:11 am    Post subject: Reply with quote  Mark this post and the followings unread

bachus wrote:

What I don't understand about M$ is how they can produce such fine IDEs and compilers and so many abominable applications. The disconnect is hard to fathom.


Fine IDEs and compilers... IMO that's simply not true. I was in charge of a C++ cross-platform library in 1998-2000, developing for three unix dialects, as well as Mac and PC. Most #pragma exceptions in the code were due to weird stuff going on in Visual Studio and MSs libraries. Apart from perhaps AIX, Windows C and C++ had the worst and oldest support of the language standards.

Also Visual Studio was crap then. As is Microsoft's tradition it took the worst from two worlds - Metrowerks on the Mac was better at being a graphical programming environment, and an emacs/command-line working flow on a Unix workstation worked better than the weirdo stuff you had to put up with in VS.

I got to work with Visual Studio again 2007-2008, and it had barely changed at all, despite the arrival of stuff like Eclipse (free and light-years ahead of VS in most respects).

I hear approving comments about .Net and C#, so I'll give them the benefit of the doubt there. But in my view, Microsoft and it's visions has been all about crap from the bottom up, starting with the quick and dirty OS that got their lucky foot in the door and some crucial mistakes by IBM's licensing department (or whoever it was). After that their overall strategy was taking tried and tested technology, breaking it so that it only worked with MS software and thus maintaining their dominance over chosen software fields.

I've told myself I shouldn't rant here... but glorification of MS's history has to be countered - software tech could very well have been 10 years further along had MS not existed.

/Stefan

_________________
Antimon's Window
@soundcloud @Flattr home - you can't explain music
Back to top
View user's profile Send private message Visit poster's website
blue hell
Former site admin


Joined: Apr 03, 2004
Posts: 24864
Location: The Netherlands, Enschede
Audio files: 353
G2 patch files: 320

PostPosted: Thu May 06, 2010 4:54 am    Post subject: Reply with quote  Mark this post and the followings unread

Don't know .. not that I want a platform war .. but erm ... that microsoft compiler stuff is really very slow isn't it? Well last time I looked anyway.
Back to top
View user's profile Send private message Visit poster's website
bachus



Joined: Feb 29, 2004
Posts: 2924
Location: Up in that tree over there.
Audio files: 5

PostPosted: Thu May 06, 2010 6:31 am    Post subject: Reply with quote  Mark this post and the followings unread

Antimon wrote:
but glorification of MS's history has to be countered - /Stefan


I certainly did not intend my comments to be taken as a glorification of MS's history. It has simply been my experience that their IDEs and compilers have been stable and a pleasure to use.

I agree completely that they gained their position through accident, ruthlessness and marketing strategies, not because their products were of outstanding quality. But I'd say it seems a bit hyperbolic to assert they set software back by 10 years if that wasn't the pot calling the kettle black.

When Lucid (Common Lisp) went under I was running Solaris with a license that cost > $2000. There as no Linux and no decent C IDE for Unix that didn't cost over $1000.00 and NT and VS 1.00 had just come out for a total of $399.00. It was a real gift. I like to think that has not unduly influenced me since but perhaps it has. When I switched from C to C++ w/MFC I constantly had the feeling that they did not really get OOP. In any case the final factor that pushed me into M$ was that it had become clear Unix by its nature and Apple by business model were going to be the platforms of the elite and Windows, for all its problems, the platform of the masses; and improbable as it may seem, those are the people I want to work for.

_________________
The question is not whether they can talk or reason, but whether they can suffer. -- Jeremy Bentham
Back to top
View user's profile Send private message Visit poster's website
bachus



Joined: Feb 29, 2004
Posts: 2924
Location: Up in that tree over there.
Audio files: 5

PostPosted: Thu May 06, 2010 6:49 am    Post subject: Reply with quote  Mark this post and the followings unread

Blue Hell wrote:
Don't know .. not that I want a platform war .. but erm ... that microsoft compiler stuff is really very slow isn't it? Well last time I looked anyway.


I have no interest in a platform war either. I kinda like the .NET platform, but I aint willing to die for it Laughing

I'm never sure how much to believe benchmarks but...
http://www.tommti-systems.de/go.html?http://www.tommti-systems.de/main-Dateien/reviews/languages/benchmarks.html

_________________
The question is not whether they can talk or reason, but whether they can suffer. -- Jeremy Bentham
Back to top
View user's profile Send private message Visit poster's website
Antimon



Joined: Jan 18, 2005
Posts: 4145
Location: Sweden
Audio files: 373
G2 patch files: 100

PostPosted: Thu May 06, 2010 7:31 am    Post subject: Reply with quote  Mark this post and the followings unread

bachus wrote:
But I'd say it seems a bit hyperbolic to assert they set software back by 10 years if that wasn't the pot calling the kettle black.


Idioms are the most difficult parts of foreign language, but if I understand you (and goenglish.com) correctly you accuse me of setting software back 10 years! As far as hyperbolic - I'm in a foul mood lately, it's probably spring for some stupid backwards reason.

Anyway, good story - gives me some perspective actually. I'll still loathe Microsoft though. Wink

/Stefan

_________________
Antimon's Window
@soundcloud @Flattr home - you can't explain music
Back to top
View user's profile Send private message Visit poster's website
bachus



Joined: Feb 29, 2004
Posts: 2924
Location: Up in that tree over there.
Audio files: 5

PostPosted: Thu May 06, 2010 8:18 am    Post subject: Reply with quote  Mark this post and the followings unread

Antimon wrote:
but if I understand you (and goenglish.com) correctly you accuse me of setting software back 10 years!


Ahh no. It means

1) I think M$ set software back only 5 years.
2) I think you were exaggerating to say 10.
3) because I am prone to hyperbole I am in no position to criticize you for it. Wink

and thank you for both posts.

_________________
The question is not whether they can talk or reason, but whether they can suffer. -- Jeremy Bentham
Back to top
View user's profile Send private message Visit poster's website
BobTheDog



Joined: Feb 28, 2005
Posts: 4044
Location: England
Audio files: 32
G2 patch files: 15

PostPosted: Thu May 06, 2010 8:32 am    Post subject: Reply with quote  Mark this post and the followings unread

Antimon wrote:
bachus wrote:

What I don't understand about M$ is how they can produce such fine IDEs and compilers and so many abominable applications. The disconnect is hard to fathom.


Fine IDEs and compilers... IMO that's simply not true. I was in charge of a C++ cross-platform library in 1998-2000, developing for three unix dialects, as well as Mac and PC. Most #pragma exceptions in the code were due to weird stuff going on in Visual Studio and MSs libraries. Apart from perhaps AIX, Windows C and C++ had the worst and oldest support of the language standards.

Also Visual Studio was crap then. As is Microsoft's tradition it took the worst from two worlds - Metrowerks on the Mac was better at being a graphical programming environment, and an emacs/command-line working flow on a Unix workstation worked better than the weirdo stuff you had to put up with in VS.

I got to work with Visual Studio again 2007-2008, and it had barely changed at all, despite the arrival of stuff like Eclipse (free and light-years ahead of VS in most respects).

I hear approving comments about .Net and C#, so I'll give them the benefit of the doubt there. But in my view, Microsoft and it's visions has been all about crap from the bottom up, starting with the quick and dirty OS that got their lucky foot in the door and some crucial mistakes by IBM's licensing department (or whoever it was). After that their overall strategy was taking tried and tested technology, breaking it so that it only worked with MS software and thus maintaining their dominance over chosen software fields.

I've told myself I shouldn't rant here... but glorification of MS's history has to be countered - software tech could very well have been 10 years further along had MS not existed.

/Stefan


Interesting post as it is the total opposite of what I think!

I think the Visual Studio IDE is by far the best I have ever used and I have suffered with Eclipse before.

Why do you think Eclipse is light years ahead?
Back to top
View user's profile Send private message
BobTheDog



Joined: Feb 28, 2005
Posts: 4044
Location: England
Audio files: 32
G2 patch files: 15

PostPosted: Thu May 06, 2010 8:37 am    Post subject: Reply with quote  Mark this post and the followings unread

Blue Hell wrote:
Don't know .. not that I want a platform war .. but erm ... that microsoft compiler stuff is really very slow isn't it? Well last time I looked anyway.


It isn't slow at all really, on an 8 core windows machine I can build the system I am working on at the moment in 23 minutes.

On a 32 processor mips machine it takes 2 and a half hours, the mips processors are slower but it can guarantee 32 concurrent compiles.

The first build of a project in visual studio can be slow but as long as you have everything set up correctly it is pretty fast after that.

Also it is important to split a solution into multiple projects to enable concurrent compiles, this is something that MS do need to sort out.

Precompiled headers also need to be turned on otherwise you are in trouble for large systems.
Back to top
View user's profile Send private message
BobTheDog



Joined: Feb 28, 2005
Posts: 4044
Location: England
Audio files: 32
G2 patch files: 15

PostPosted: Thu May 06, 2010 8:46 am    Post subject: Reply with quote  Mark this post and the followings unread

bachus wrote:
When I switched from C to C++ w/MFC I constantly had the feeling that they did not really get OOP.


I also disagree with this one, bloody hell I must be in a mood today.

MFC was in a way too object oriented which is a common pitfall in OO systems. It was so mind blowingly convoluted it made it totally useless.

MFC is a pretty good example of how to totally bugger up the MVC approach.

Next did much the same and now Cocoa is even worse in my view with a level of crap on top of the Next crap.

Microsoft have carried this over-complication over to c#.net, c# is a wonderful little language, very small and quite powerful but the net framework has obviously been designed by hundreds of bloody people, I mean how complicated can this stuff get!
Back to top
View user's profile Send private message
blue hell
Former site admin


Joined: Apr 03, 2004
Posts: 24864
Location: The Netherlands, Enschede
Audio files: 353
G2 patch files: 320

PostPosted: Thu May 06, 2010 9:04 am    Post subject: Reply with quote  Mark this post and the followings unread

Dont know, I'm used to work in Delphi .. the moment I release the compile button the code is compiled ... then in C# I wait and wait and wait and wait ... each his own thing of course, but I set C# aside as being useless to me.
Back to top
View user's profile Send private message Visit poster's website
BobTheDog



Joined: Feb 28, 2005
Posts: 4044
Location: England
Audio files: 32
G2 patch files: 15

PostPosted: Thu May 06, 2010 9:14 am    Post subject: Reply with quote  Mark this post and the followings unread

C# should be fairly instant, there must be something wrong there.

I would put C# at around the same speed as years ago when I used Delphi.

I just did a test on a C# solution we have here made up of 10 projects, 5 of which create dlls, 2 are webservices and 3 gui front ends.

Probably around 100 different source files, maybe 20000 lines. A full build from clean took around 5 seconds, this includes copying files to the webserver.
Back to top
View user's profile Send private message
blue hell
Former site admin


Joined: Apr 03, 2004
Posts: 24864
Location: The Netherlands, Enschede
Audio files: 353
G2 patch files: 320

PostPosted: Thu May 06, 2010 10:11 am    Post subject: Reply with quote  Mark this post and the followings unread

BobTheDog wrote:
20000 lines.


200,000 I may hope Wink but I'm not sure what to compare that to, having my laptop here and not your computer.
Back to top
View user's profile Send private message Visit poster's website
Antimon



Joined: Jan 18, 2005
Posts: 4145
Location: Sweden
Audio files: 373
G2 patch files: 100

PostPosted: Thu May 06, 2010 11:25 am    Post subject: Reply with quote  Mark this post and the followings unread

Glad I'm not the only one in a mood. Wink

I started thinking about what I didn't like about VS back in 2000. I came from a Unix environment, using emacs along with compilers on the command line. Emacs had name completion, and I had gotten fairly good at navigating around files and directories, and reading compiler/linker errors on the command line. I think I even used emacs integration with the compiler with good result (though I wouldn't remember how it works today), being able to click error messages and jump to the appropriate place in the source code.

To continue my approach in Visual Studio meant navigating the logging window, which was much more limited (for starters, it was like a hundred screens wide with a minute scrollbar handle - which it still was a couple of years ago - loads of little annoying things like that in any Windows IDE at the time). I can't remember specifics now, but generally navigating around files in the project felt clumsy. Name completion started appearing in VS6, though I quit that company and started using other tools by the time we were thinking of upgrading. I didn't feel it worked as well as in emacs though, what I tried.

And I'm pretty sure it didn't work as well as in Metrowerks Codewarrior, which is what we used for the exact same code on the Mac. Codewarrior in comparison was slick, quick, and gave you a lot of information about what you were doing. It had profiling tools and stuff.

I'm pretty sure there were more things bugging me at the time, it was 10 years ago.

In 2007 I started a breif stint at Sony Ericsson, and got to work with their C platform in Visual Studio again. I couldn't really see any difference from the VS6 I had left 7 years earlier. Still the minute scroll handle on the logging window. Precompiled headers and the like - not something you'd switch on lest you spend a couple of days trying to get VS not to act like a confused senile - it just didn't work. I can't complain about the compile time though - it did take 30 minutes+ to link but that was due to a SonyEricsson-specific plugin that always needed to redo some tricky stuff when linking.

In 2007 I came from Eclipse-land. It's possible that I'm a bit unjust in comparing VS with Eclipse, since the stuff I had learned to love was due to Java's strict typing, which enables IDEs that want to take advantage of it to program for you. Changing the name of a type that is used in 100+ places would take a fair amount of type time and error checking at SonyEricsson, it's a few clicks of a button in Eclipse. Since C# builds on Java's legacy I imagine stuff like that can work better in more recent Microsoft developer environments. Also Eclipse tells you about stuff you're doing wrong.

Especially, Eclipse does these things right. In VS and the like, I could get error messages when compiling on things that weren't errors, or stuff that shouldn't compile did. Again, code assistance kind of stuff is easier to do with Java than with C or C++.

But I think most of all, twisting the words of Charles Stross, Visual Studio looks like something thrown together from scrap in comparison to Eclipse, or IntelliJ (that I'm using at the moment).

The cost thing is probably a valid comment. Paying for software at all is a bit of a recent notion in my environment. Emacs etc was free, but the Sun workstations I used it on at the University and later work weren't.

C++ is another thing I like to bash. It is basically a large macro extension of C, with triple the complexity of C, and you need to know which hoops to jump through to make it work like a proper object-oriented language. IMO, any language that doesn't report an error on this:

Code:
template <class>
class trash {
f3n9huvgew
gw
g34g
4g
fgf4f34f4fn248f24r23
g4g35y
35f34fgreg
ergerververfge
};


...shouldn't be used for anything. (Maybe it does report an error on this now - it didn't when I tried back in 1999).

I feel that these opinions I have are largely due to working in teams with great variation when it comes to competence. I can actually find C++ a bit fun to work with sometimes, in a kind of elite way, since it is such an incredibly difficult language. Helping someone solve a tricky linking error always felt nice. Smile

Oh well, maybe it's time to get this chip off my shoulder. A tool is just a tool after all. It's probably all just hidden grief for the Amiga, still.

I'm curious about HTML5 though, Internet Explorer seems to stand out as the one with worst support so far, though I guess they'll come around with the next version, considering the big words in the original post (see, I'm trying to coax this thread I've wrecked back on topic Very Happy ).

/Stefan

_________________
Antimon's Window
@soundcloud @Flattr home - you can't explain music
Back to top
View user's profile Send private message Visit poster's website
BobTheDog



Joined: Feb 28, 2005
Posts: 4044
Location: England
Audio files: 32
G2 patch files: 15

PostPosted: Thu May 06, 2010 11:36 am    Post subject: Reply with quote  Mark this post and the followings unread

Antimon wrote:

C++ is another thing I like to bash. It is basically a large macro extension of C, with triple the complexity of C, and you need to know which hoops to jump through to make it work like a proper object-oriented language. IMO, any language that doesn't report an error on this:

Code:
template <class>
class trash {
f3n9huvgew
gw
g34g
4g
fgf4f34f4fn248f24r23
g4g35y
35f34fgreg
ergerververfge
};


...shouldn't be used for anything. (Maybe it does report an error on this now - it didn't when I tried back in 1999).



Are you mad Smile

C++ a macro extension to C !!!!!

Your template example is basically a macro, the compiler would complain when you used that template, this doesn't make C++ a macro extension to C!

I have worked in C++ for nearly 15 years and have created templates only a few times, they are a pet hate of mine but they are only a tiny part of C++ but sometimes they can be useful. They can be overused by C++ programmers who don't want to create a proper object model, this can be a problem.

C++ is a good example of a language that can generate extremely efficient code in an OO manner. What exactly is missing from C++ to stop it being an object oriented language and what hoops do you have to jump through?
Back to top
View user's profile Send private message
bachus



Joined: Feb 29, 2004
Posts: 2924
Location: Up in that tree over there.
Audio files: 5

PostPosted: Thu May 06, 2010 11:52 am    Post subject: Reply with quote  Mark this post and the followings unread

BobTheDog wrote:
MFC was in a way too object oriented which is a common pitfall in OO systems. It was so mind blowingly convoluted it made it totally useless.


I thought is was just bad OOP. It would be very interesting and very likely helpful to hear thoughts on what makes for too OOP. I still find symbols essential--enumerations whose semantic value depends on context. That's very non-OOP and giving those up would be too OOP for me. But beyond that it's not clear to me what too OOP would look like.

_________________
The question is not whether they can talk or reason, but whether they can suffer. -- Jeremy Bentham
Back to top
View user's profile Send private message Visit poster's website
BobTheDog



Joined: Feb 28, 2005
Posts: 4044
Location: England
Audio files: 32
G2 patch files: 15

PostPosted: Thu May 06, 2010 11:53 am    Post subject: Reply with quote  Mark this post and the followings unread

Antimon:

Here is a pic of Visual Studio.

Compile errors appear at the bottom, click on them and it goes to the error in the source.

Class view on left.

Can't be simpler than that surely.

And before you start going on about the LOG Macro this has to be done like this for the rather nasty MipsPro compiler we use that doesn't support C90 correctly:)


Lovely.jpg
 Description:
 Filesize:  531.06 KB
 Viewed:  167 Time(s)
This image has been reduced to fit the page. Click on it to enlarge.

Lovely.jpg


Back to top
View user's profile Send private message
BobTheDog



Joined: Feb 28, 2005
Posts: 4044
Location: England
Audio files: 32
G2 patch files: 15

PostPosted: Thu May 06, 2010 12:13 pm    Post subject: Reply with quote  Mark this post and the followings unread

bachus wrote:
BobTheDog wrote:
MFC was in a way too object oriented which is a common pitfall in OO systems. It was so mind blowingly convoluted it made it totally useless.


I thought is was just bad OOP. It would be very interesting and very likely helpful to hear thoughts on what makes for too OOP. I still find symbols essential--enumerations whose semantic value depends on context. That's very non-OOP and giving those up would be too OOP for me. But beyond that it's not clear to me what too OOP would look like.


Actually you have a very good point. I have just got one of my dusty MFC books off of the shelf and had a quick refresher, the class model is actually fairly simple.

It actually isn't OO enough is it, I don't know whats happening to my memory but I seem to have got this one quite wrong.
Back to top
View user's profile Send private message
Antimon



Joined: Jan 18, 2005
Posts: 4145
Location: Sweden
Audio files: 373
G2 patch files: 100

PostPosted: Thu May 06, 2010 1:07 pm    Post subject: Reply with quote  Mark this post and the followings unread

BobTheDog wrote:

C++ is a good example of a language that can generate extremely efficient code in an OO manner. What exactly is missing from C++ to stop it being an object oriented language and what hoops do you have to jump through?


Here's one that I banged my head against a couple of times way back:

Code:
class A {
   public:
      int f() {
         return 1;
      }
   }
}

class B : public A {
   public:
      int f() {
         return 2;
      }
   }
}

B b;
A a = b;

printf("f=%d\n", a.f());


I've left a few codewords out, and this won't compile (it's been a while). What's important is the declarations and assignments of b and a. I think this will print "f=1", because a.f() is used. In order to get proper polymorphic behaviour you need to declare and add pointers or references and use those. This is the C struct shining through - assigning a subclass instance to a superclass instance means copying what a can handle and discarding the rest. All very obvious if you're thinking in terms of bytes in the memory of a computer like you do in C, but if you've spent some time in Java (or any OO language with a stronger runtime and garbage collection), you need some time getting back to the world of accumulators and little or big endians. And you still get bus error and segmentation violation, right?

It's not so much stuff that is missing (though garbage collection would be hard of live without for me these days), as the many pitfalls that can lure the not-so-careful newbie team member. You don't write templates? Fine, but they're there, and some will want to construct them, unless you spend a large amount of energy and time telling them not to (and the proper use of copy constructors, operator overloading etc). With a more modern, robust OO language you will need to spend some time enforcing code standards also, but not as much as with C++.

If you need efficiency or low-level control, my view is that you're better off with C than C++, because C is a simpler language with a lower risk of confusion inherent in the language itself, while C++ still needs all the care with memory management and dereferencing. And the linker errors (as I remember it) were easier to read in C than in C++.

/Stefan

Edit: typo

_________________
Antimon's Window
@soundcloud @Flattr home - you can't explain music
Back to top
View user's profile Send private message Visit poster's website
Antimon



Joined: Jan 18, 2005
Posts: 4145
Location: Sweden
Audio files: 373
G2 patch files: 100

PostPosted: Thu May 06, 2010 1:17 pm    Post subject: Reply with quote  Mark this post and the followings unread

Re. The Visual Studio pic - yeah that looks ok. When I worked with VS two years ago we had to turn off the contextual helpers because it made the IDE too slow, but that was a humongous system and we didn't have powerful enough workstations. I will always prefer something else, but as I said I may need to get this particular chip off my shoulder. It would be interesting to try out C# in a project sometime, just to know what I'm talking about!

/Stefan

_________________
Antimon's Window
@soundcloud @Flattr home - you can't explain music
Back to top
View user's profile Send private message Visit poster's website
BobTheDog



Joined: Feb 28, 2005
Posts: 4044
Location: England
Audio files: 32
G2 patch files: 15

PostPosted: Thu May 06, 2010 1:30 pm    Post subject: Reply with quote  Mark this post and the followings unread

Hi Stefan,

You are making two mistakes in the code.

The first is that you need to define the superclass function as a virtual to allow polymorphism.

Code:

#include <iostream>

class A
{
public:
  virtual int f()
  {
     return 1;
  }
};

class B : public A
{
public:
  int f()
  {
    return 2;
  }
};

 
void main(int argc, char* argv[])
{
   B b;
   A &a = b;

   std::cout << a.f();

   return;
}


The second mistake was the fact that the assignment a = b would call a copy constructor and create an a object.

C++ is fully polymorphic, honest Smile

Andy
Back to top
View user's profile Send private message
bachus



Joined: Feb 29, 2004
Posts: 2924
Location: Up in that tree over there.
Audio files: 5

PostPosted: Thu May 06, 2010 2:12 pm    Post subject: Reply with quote  Mark this post and the followings unread

BobTheDog wrote:
"...MFC...It actually isn't OO enough is it,...
That is certainly how it seemed to me.

Antimon wrote:

If you need efficiency or low-level control, my view is that you're better off with C than C++, because C is a simpler language with a lower risk of confusion inherent in the language itself


It would kinda depend on the scale of the project would it not? Personally I have trouble with C once a project gets over 3 or 4 thousand semicolons long. At that point even though I don't particularly like C++ it would definitely be my choice if C# couldn't handle it.

But C++.NET for anything other than console apps drives me crazy -- I just can't work in a mixed environment --managed/unmanaged. My brain just wont go there.

_________________
The question is not whether they can talk or reason, but whether they can suffer. -- Jeremy Bentham
Back to top
View user's profile Send private message Visit poster's website
Antimon



Joined: Jan 18, 2005
Posts: 4145
Location: Sweden
Audio files: 373
G2 patch files: 100

PostPosted: Thu May 06, 2010 2:32 pm    Post subject: Reply with quote  Mark this post and the followings unread

BobTheDog wrote:

The first is that you need to define the superclass function as a virtual to allow polymorphism.

The second mistake was the fact that the assignment a = b would call a copy constructor and create an a object.

C++ is fully polymorphic, honest Smile

Andy


Yeah the first mistake with "virtual" was because I had forgotten that part, the second was intentional, to illustrate my point. "a = b" actually compiles and runs. It can keep running and do reasonable things for a fair while before you sense that something's wrong.

Seeing that A and B have been declared as classes relating to each other can lead you to think that "a = b" would do something polymorphic, which it doesn't (unless A has a copy constructor that takes B as an argument, which would implicate that a superclass knows stuff about its subclass, which is not very OO). I know that "a = b" is not something you'd normally do in C++ (hence it being a "mistake" even though it's valid C++ code), but it's there in the syntax, adding to ==, && and other legacy C syntax mistakes (which unfortunately weren't completely taken away in Java either), causing weeks of head scratching trying to debug apparently correct code.

The '&' in C++ is another of those hoops I was thinking about. I think it took me a year or so (working with C++ as my dayjob, newly graduated) to understand what it did, and after that it still caught me off guard now and then. I'm pretty sure I'm not the only one this has happened to.

/Stefan

_________________
Antimon's Window
@soundcloud @Flattr home - you can't explain music
Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic
Page 1 of 2 [35 Posts]
View unread posts
View new posts in the last week
Goto page: 1, 2 Next
Mark the topic unread :: View previous topic :: View next topic
 Forum index » Discussion » Schmooze
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum
Log in
Username:     Password:      Log me on automatically each visit    


Forum with support of Syndicator RSS
Powered by phpBB © 2001, 2005 phpBB Group
Copyright © 2003 through 2026 by electro-music.org