Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > C Programming > Learning

Reply
Thread Tools

Learning

 
 
Niv
Guest
Posts: n/a
 
      11-16-2006
Hi, I will shortly need to learn C or C++ as a high level hardware
description language, modelling hardware at a more abstract level than
VHDL. (I'm competent at VHDL & semi-competent at Tcl).

I've done some minor dabbling in C before, but should I now, assuming
I'm starting out afresh,
start with C or go straight to C++. Will C give me a good grounding
for C++ or add to my (likely) confusion?

Regards, Kev P.

 
Reply With Quote
 
 
 
 
Chris Dollin
Guest
Posts: n/a
 
      11-16-2006
Niv wrote:

> Hi, I will shortly need to learn C or C++ as a high level hardware
> description language, modelling hardware at a more abstract level than
> VHDL. (I'm competent at VHDL & semi-competent at Tcl).


Would /either/ of C or C++ be appropriate for that? It's not obvious.

> I've done some minor dabbling in C before, but should I now, assuming
> I'm starting out afresh,
> start with C or go straight to C++. Will C give me a good grounding
> for C++ or add to my (likely) confusion?


My advice would be to pick whichever language you have the best
local support for (ie people who understand & have used the language).

My caricature:

C is simpler. C++ is more expressive.

C lets you shoot yourself in the foot. C++ prevents that,
but sometimes gives you the opportunity to shoot
yourself in the guts instead. With great power comes
great responsibility.

C lets the careful programmer write code that is both
elegant and maintainable. C++ lets the careful programmer
write code that is both elegant and maintainable.
Be a careful programmer.

C compilers and the code they generate need relatively
little resources. C++ compilers and the code they
generate (may) need more. Sometimes the difference
matters. Sometimes it doesn't.

--
Chris "hantwig efferko VOOM!" Dollin
The shortcuts are all full of people using them.

 
Reply With Quote
 
 
 
 
Niv
Guest
Posts: n/a
 
      11-16-2006

Chris Dollin wrote:
> Niv wrote:
>
> > Hi, I will shortly need to learn C or C++ as a high level hardware
> > description language, modelling hardware at a more abstract level than
> > VHDL. (I'm competent at VHDL & semi-competent at Tcl).

>
> Would /either/ of C or C++ be appropriate for that? It's not obvious.
>
> > I've done some minor dabbling in C before, but should I now, assuming
> > I'm starting out afresh,
> > start with C or go straight to C++. Will C give me a good grounding
> > for C++ or add to my (likely) confusion?

>
> My advice would be to pick whichever language you have the best
> local support for (ie people who understand & have used the language).
>
> My caricature:
>
> C is simpler. C++ is more expressive.
>
> C lets you shoot yourself in the foot. C++ prevents that,
> but sometimes gives you the opportunity to shoot
> yourself in the guts instead. With great power comes
> great responsibility.
>
> C lets the careful programmer write code that is both
> elegant and maintainable. C++ lets the careful programmer
> write code that is both elegant and maintainable.
> Be a careful programmer.
>
> C compilers and the code they generate need relatively
> little resources. C++ compilers and the code they
> generate (may) need more. Sometimes the difference
> matters. Sometimes it doesn't.
>
> --
> Chris "hantwig efferko VOOM!" Dollin
> The shortcuts are all full of people using them.


Thanks for that Chris.
In fact, the language I may need to learn is SystemC, a bit more
complex than I thought.
So I may have to go to something else altogether!

Kev P.

 
Reply With Quote
 
Jean-Marc Bourguet
Guest
Posts: n/a
 
      11-16-2006
"Niv" <(E-Mail Removed)> writes:

> Hi, I will shortly need to learn C or C++ as a high level hardware
> description language, modelling hardware at a more abstract level than
> VHDL. (I'm competent at VHDL & semi-competent at Tcl).


I wouldn't call C more abstract than VHDL -- I'm quite competant in C, C++
and VHDL, but I haven't used VHDL for years -- especially if you go out of
the subset used by synthesizers.

> I've done some minor dabbling in C before, but should I now, assuming I'm
> starting out afresh, start with C or go straight to C++. Will C give me
> a good grounding for C++ or add to my (likely) confusion?


If your goal is to learn C++ go straight for C++. Learning C before will
not help you at all to learn modern idiomatic C++.

If your goal is systemC (you don't speak about it but I'm still in the
field enough to think about it when I learn HDL and C++ in the same
sentence) -- well I don't know enough about it to recommand a learning
path. A priori skipping C should not be a problem.

Yours,

--
Jean-Marc
 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
[I'm learning C]: Learning to use ucontext Andrey Popp C Programming 5 01-31-2012 01:05 AM
Learning C and Learning Make/Configure/Building/Linking Hal Vaughan C Programming 7 03-21-2006 05:07 PM
e-learning, (collaborative learning environment) collinm Java 1 09-08-2005 09:52 PM
Learning about SMS technology... VM Wireless Networking 2 07-02-2004 02:36 PM
learning VHDL Vilvox VHDL 5 07-20-2003 08:59 AM



Advertisments