Re: C interpreter

  • From: Kerneels Roos <kerneels@xxxxxxxxx>
  • To: programmingblind@xxxxxxxxxxxxx
  • Date: Fri, 23 Jul 2010 11:14:33 +0200

Oo... Bring in the fire hose, we've got some flames over here. Ha ha.

No, it's fine, I know you're not trying to give me a hard time, you are just
passionate about C and it's weird depths, which is cool!

But, the point of my email was not about if C is esoteric or notI was trying
to point out that the basics of C is simpler than the basics of Python. With
Python you absolutely need an interpreter while learning it while with C you
can get by without one, at least at first, and that the most important
*general* things C teaches you is better learned with code files and a
compiler. But it's not that important and if a interpreter makes you happy
go for it.

I have a lot of respect for C as it played an important part in the
development of programming languages and is still the low level language of
choice, as you pointed out the hole Linux kernel is written in C is it not?
As is all those modules is it not?

If one is just starting to learn C it's going to be a while before you get
to the weird and wonderful **esoteric** parts is it not?

C originated in 1973. It was the brain child of Dennis Richy who wanted to
develop a language to program in so that there would be a low level
alternative to assembler, that also had more features than assembler. I bet
there were improvements and additions to the language over the years. What
is really amazing is how the basic syntax have stuck around for so long and
has influenced Java, Perl, C#, C++, JavaScript, PHP and on and on.

Today one should only invest in learning C if you intend to do very low
level programming, like hardware drivers, or very optimised code that needs
to run extremely fast. For anything else you'll do much better learning
something modern. Oh, it's also good to look into C should you desire to
learn what it contributed to modern languages or if you want to do
programming for devices where resources are limited.

But all of this is just my opinion. I'm passionate about programming and
would not want someone to waste their time on this or that while it does not
help them to further their actual goal.

Thanks

On Fri, Jul 23, 2010 at 9:33 AM, Sina Bahram <sbahram@xxxxxxxxx> wrote:

> Oh, I think it's useful.
>
> I must say, I loved this line:
>
> With C however the playing field is far less esoteric (to my knowledge).
> The important concepts that an imperative language like C
> contributed to the world
>
>
> C is by far one of the more esoteric languages ever to come into existence,
> *grin*. The idioms used in that language are enough to
> boggle the mind of anyone who has studied the basics of human psychology,
> how people learn, how humans communicate (both to devices
> and other humans), etc, etc.
>
> Const pointers to non-const fields which are structs that have inlined
> arrays so as to avoid a pointer reference, which by the way
> double inside of a union as a c-style string which is actually a pointer to
> itself as a form of optimizing the memory packing of,
> blah, blah, blah, blah.
>
> And I didn't make that above thing up ... Haha, it's inside of most Linux
> kernel structures.
>
>
> But I'm not giving you a hard time or anything. The esoteric comment just
> caught my fancy.
>
> Oh, and I do agree, eventually, if you're going to be a hard core leet c
> haxor, then sure, process is important, but interpreters
> are useful for exploration.
>
> Take care,
> Sina
>
>
>
> ________________________________
>
> From: programmingblind-bounce@xxxxxxxxxxxxx [mailto:
> programmingblind-bounce@xxxxxxxxxxxxx] On Behalf Of Kerneels Roos
> Sent: Friday, July 23, 2010 3:27 AM
> To: programmingblind@xxxxxxxxxxxxx
> Subject: Re: C interpreter
>
>
> Hi. I can not imagine learning something like C by using an interpreter
> similar to the Python interpretor for example. With Python
> it makes some sense since Python has list comprehensions like:
> [x for x in range(10) if x % 2 == 0]
>
> which will produce a list of even numbers, and things like array / list
> slices and even regular expressions.
>
> To test these things  on the fly an interpreter makes sense, or even small
> functions which you can just copy and paste into the
> interpreter and then test them out there.
>
> With C however the playing field is far less esoteric (to my knowledge).
> The important concepts that an imperative language like C
> contributed to the world of programming languages are, and hence what you
> want to learn from studying C are things like:
> variables and constatns
> arrays
> structs
> the concept of functions
> conditional statements
> loop constructs
> pointers
> bit wise operations
> input and output
>
> To me it makes much more sense to make use of code files and a compile,
> run, debug cycle to learn how al those work. Especially if
> one is learning to program for the first time.
>
> Some of those concepts require a bit of setup code first, so would one have
> to type that into the interpreter then first every time?
>
> I would advise you to stick to files and compiling and running your code --
> that's how C works. Also, with an interpreter you can
> get way different errors than with a compiler. At the end of the day your
> goal is to use a compiler, why not start with that from
> square one?
>
> Hope this helps.
>
>
>
> On Thu, Jul 22, 2010 at 7:27 PM, Øyvind Lode <oyvind.lode@xxxxxxxxx>
> wrote:
>
>
>        Ch is both a C and C++ interpreter apparently.
>        I'll download it and have a look.
>
>
>        -----Original Message-----
>        From: programmingblind-bounce@xxxxxxxxxxxxx
>
>        [mailto:programmingblind-bounce@xxxxxxxxxxxxx] On Behalf Of Arthur
> Pirika
>        Sent: 22. juli 2010 18:29
>        To: programmingblind@xxxxxxxxxxxxx
>
>        Subject: Re: C interpreter
>
>        I've been meaning to try that, also. I've heard it's good though,
> and
>        wouldn't mind a c++ interpreter, if such a thing even exists? lol.
>
>        Arthur
>        ----- Original Message -----
>        From: "Øyvind Lode" <oyvind.lode@xxxxxxxxx>
>        To: <programmingblind@xxxxxxxxxxxxx>
>        Sent: Friday, July 23, 2010 3:56 AM
>        Subject: C interpreter
>
>
>        > Hi all:
>        >
>        > Does someone know a good C interpreter?
>        > I'm trying to learn C and I would like a C interpreter to assist
> me.
>        > It would be much faster to type some C statements in the
> interpreter and
>        > get
>        > the output instantly...
>        >
>        > I know it is very important to also learn to know your compiler,
> but for
>        > fast testing of code I think an interpreter is useful.
>        > I found one called Ch interpreter.
>        > Have someone here used Ch?
>        >
>        > __________
>        > View the list's information and change your settings at
>        > //www.freelists.org/list/programmingblind
>        >
>        >
>
>        __________
>        View the list's information and change your settings at
>        //www.freelists.org/list/programmingblind
>
>
>        __________
>        View the list's information and change your settings at
>        //www.freelists.org/list/programmingblind
>
>
>
>
>
>
> --
> Kerneels Roos
> Cell/SMS: +27 (0)82 309 1998
> Skype: cornelis.roos
>
>
>
>
>
>
> __________
> View the list's information and change your settings at
> //www.freelists.org/list/programmingblind
>
>


-- 
Kerneels Roos
Cell/SMS: +27 (0)82 309 1998
Skype: cornelis.roos

The early bird may get the worm, but the second mouse gets the cheese!

Other related posts: