Beefy Boxes and Bandwidth Generously Provided by pair Networks
The stupid question is the question not asked
 
PerlMonks  

Re^2: Programming Concepts

by Laurent_R (Canon)
on Dec 31, 2017 at 13:25 UTC ( [id://1206480]=note: print w/replies, xml ) Need Help??


in reply to Re: Programming Concepts
in thread Programming Concepts

The link you provided is very interesting. Thanks for that.

There is a full book (900+ pages) written by the same author on more or less the same subject: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.102.7366&rep=rep1&type=pdf. It seems to be a very good answer to the OP. But, yes, rather hard stuff.

Replies are listed 'Best First'.
Re^3: Programming Concepts
by karlgoethebier (Abbot) on Jan 01, 2018 at 11:30 UTC

    Great expectatations. From ibidem:

    "One approach to study computer programming is to study programming languages. But there are a tremendously large number of languages, so large that it is impractical to study them all. How can we tackle this immensity? We could pick a small number of languages that are representative of different programming paradigms. But this gives little insight into programming as a unified discipline."
    "This book uses another approach. We focus on programming concepts and the techniques to use them, not on programming languages. The concepts are organized in terms of computation models. A computation model is a formal system that defines how computations are done. There are many ways to define computation models. Since this book is intended to be practical, it is important that the computation model should be directly useful to the programmer. We will therefore define it in terms of concepts that are important to programmers: data types, operations, and a programming language. The term computation model makes precise the imprecise notion of “programming paradigm”. The rest of the book talks about computation models and not programming paradigms. Sometimes we will use the phrase programming model. This refers to what the programmer needs: the programming techniques and design principles made possible by the computation model."

    See also: Seif Haridi

    Best regards, Karl

    «The Crux of the Biscuit is the Apostrophe»

    perl -MCrypt::CBC -E 'say Crypt::CBC->new(-key=>'kgb',-cipher=>"Blowfish")->decrypt_hex($ENV{KARL});'Help

      Thank you Karl for link to a very nice book with excerpt. It must be a very good reading. One question though. This book is written in 2003. Assume that you have explored this book, do you think that there is anything missing in the book after 15 years which can possibly explain the myriad flow of software that has been developed ?
        It's true that we had some new languages in the last 15 years, but programing concepts are very stable, and languages often only vary on syntax, vocabulary and implementation.

        It's like civil engineering and architecture.

        You might see new revolutionary architecture, but the materials and statics don't change that often.

        Cheers Rolf
        (addicted to the Perl Programming Language and ☆☆☆☆ :)
        Wikisyntax for the Monastery

        "...Assume that you have explored this book..."

        I didn't yet, unfortunately. I just browsed through it a little bit and then decided to order it.

        "...is anything missing in the book after 15 years..."

        I don't know and hope not.

        I think this kind of book is more about the essentials - things that don't change very much for decades (or longer). LanX already pointed this out very good.

        What fascinated me is that this book seems to be written in a very understandable, friendly language. This is an art. Very seldom.

        Some further hints: Did you notice the plethora of accompanying material? I also tried to install Oz/Mozart on my older Mac. Was pain in the ass to be honest. No success until now (segfaults on start up, bla, bla).

        And unfortunately Mozart for the Mac comes with Aquamacs. I hate it.

        Credits/merits for the book/links go for LanX and Laurent_R.

        Best regards, Karl

        «The Crux of the Biscuit is the Apostrophe»

        perl -MCrypt::CBC -E 'say Crypt::CBC->new(-key=>'kgb',-cipher=>"Blowfish")->decrypt_hex($ENV{KARL});'Help

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://1206480]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others goofing around in the Monastery: (4)
As of 2024-04-19 16:02 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found