Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

"... You need to understand the core language: is it algorithmic, functional, object-oriented? ..." - Effective Java, Joshua Bloch, 2ndEd. 2008. Foreword, p xiii

Functional: Lisp, OO: Java, but what is ( would Bloch mean by ) an algorithmic programming language?

share|improve this question

3 Answers 3

up vote 5 down vote accepted

I assume the author want to speak about imperative programming language. A (quite complete) map of the different programming paradigms and their relationship that a language may support is available here. An important note is that a language may support (more or less well) several paradigms.

share|improve this answer
+1 I like imperative better than procedural even though they mean the same thing. It's a good point about a single language supporting more than one style. –  Caleb Aug 13 '11 at 6:47
Interesting map! Thanks. –  ndroock1 Aug 13 '11 at 7:30

Most programming languages are algorithmic, like OO, functional, imperative and all that. The only type of languages I can think of that could be said being non-algorithmic are the reactive languages. But even the reactive languages are compiled to the algorithmic machine languages that is simulated by the reactive processor hardware, so under the hood even reactive languages are in fact algorithmic. The only way to really get away from algorithmic programming is to use processors with reactive machine language. They should be very common in the future.

share|improve this answer

Perhaps "procedural" is what's intended. Languages like C and Pascal, in which procedures are the main tool for structuring a program, are often called "procedural programming languages." You can think of a procedure as an implementation of an algorithm, so "algorithmic" would seem like a reasonable synonym for "procedural".

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.