473,804 Members | 2,455 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Learning

Niv
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.

Nov 16 '06 #1
3 1460
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.

Nov 16 '06 #2
Niv

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.

Nov 16 '06 #3
"Niv" <ke*********@mb da.co.ukwrites:
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
Nov 16 '06 #4

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

Similar topics

5
2152
by: Ron Stephens | last post by:
The newly rechristened Python Learning Foundation is a web site dedicated to the assistance of people learning the Python programming language. Features include: 1. Daily lists of new and recent Python-related web articles, Sourceforge projects, and Vaults of Parnassus listings. These are generated using Hans Nowak's Python web spider, mygale.py, and are automatically updated each day. (You can visit Han's interesting blog at <a href =...
29
3509
by: Jhon smith | last post by:
Hi,all,I was just wondering if I am likly to have any problems trying to learn C from older books,I have some from the late 80`s,mid/late 90`s. I am using Dev-C++ on the pc windows platform,But I have noticed small differnces in the books such as,int main(),main(void),fprintf,and others,just wondering if these older books are still worth trying to learn from as Im on a very tight budget and can`t really afford any thing else,or are they...
4
2062
by: Christian Blackburn | last post by:
Hi Gang, I saw this for sale online: Microsoft Visual Basic.NET Deluxe Learning Edition Version 2003. I'm wondering is the CD that's bundled with the learning edition just a digitized version of the book or is it an interactive tutorial? Thanks, Christian Blackburn
1
9662
by: David Van D | last post by:
Hi there, A few weeks until I begin my journey towards a degree in Computer Science at Canterbury University in New Zealand, Anyway the course tutors are going to be teaching us JAVA wth bluej and I was wondering if anyone here would be able to give me some tips for young players such as myself, for learning the language. Is this the best Newsgroup for support with JAVA?
7
1589
by: Max | last post by:
On monday I start a semester course in Python (the alternative was Java). I was looking through the course outline and noticed the following: 1) UserDict is used. This is deprecated, right? 2) There is no mention of list comprehensions, but map and filter are taught early and then revisited later. I don't think this is good: list comprehensions are, IMO, one of Python's great features, Psyco prefers them, they're more pythonic, and map...
36
2549
by: utab | last post by:
Dear, I have experince in C( numerical projects, like engineering problems, scientific applications) I have the basic notion of C++ also, I have read Accelerated C++ until Chapter 7, however it seems that it discusses the std and the other part of the language with your own abstractions. Is that better to read a book first on the basic concepts of C++ language (but not the C part) that gives the basics as if the reader is a beginner...
2
1255
by: bokiteam | last post by:
Hi All, Here is my idea to save learning time - Personal learning book. What we really need is somebody really familiar our learning experience, and then takes the example to teach us. Save the learning time. For example, a person David who understands JAVA, VB, C programming, he doesn't want to pay too much time to study a C# programming book. If
78
4218
by: arnuld | last post by:
hai all, i am standing on a "crossroad to C++". I am here in front of you as i have a problem. i will be brief. Please do not think: "arnuld is sick", i am really struggling & doing hard-work to become a Modern C++ Programmer & i am feeling as if i am standing on a crossroad. i am asking because every time i made a decision on my own, in my past, i always ran into huge wastage of time, money & effort. that is why i am posting it here:
0
1557
by: LK~ICT | last post by:
Sri Lanka rural e-learning project seeks corporate support Dec 04, 2007 (LBO) - A Sri Lankan e-learning initiative for rural students is seeking corporate sector support to expand and cover 400 computer centers around the island, its designers said. The Shilpa Sayura project initiated by eFusion, a local software company, is a learning tool for rural students who do not have the necessary number of teachers and lack resources to...
16
1768
by: John Salerno | last post by:
Just something that crosses my mind every time I delve into "Learning Python" each night. Does anyone see any value in learning Python when you don't need to for school, work, or any other reason? I mean, sure, there's value in learning anything at any time, but for something like a programming language, I can't help but feel that I will be mostly unable to use what I learn simply because I have no reason to use it. The *process* of...
0
9704
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
10561
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, 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...
0
10318
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 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...
1
10302
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 Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
9132
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, 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...
0
6845
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();...
0
5639
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
4277
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 we have to send another system
3
2976
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

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.