In looking at the mouseovers for tags (like C++ and C#) I get a description of

C# is a multi-paradigm, managed, garbage-collected, object-oriented programming language created by Microsoft.

What the heck is "multi-paradigm" supposed to mean and is it at all useful for someone who does not know the language?

There is no context here.

What are the possible paradigms? I think that is likely the last thing one would want to know about the language. Not the FIRST thing that is listed in the description of the language.

It means absolutely nothing.

If it is supposed to mean "general purpose" then perhaps we should write "general purpose", but as a programmer of 20 years I cannot figure out what the heck "multi-paradigm" means as a description of a language.

(especially since "object oriented" is also listed in the description)


I edited the tags/wiki for C++ and C# - but do not have enough hit points and they have to be approved.

Perhaps they can stay if the wiki also defines what the heck is meant by "multi-paradigm" - but it does not and I would add it but in spite of my years as a developer cannot conceive of what the original intent of the author of the wiki meant when he/she uses "multi-paradigm"

At first I thought it meant that it can be used for OO as well as other types of programming, but int he same sentence it calls the language OO and multi-paradigm - so I thought that could not possibly be the use of the term...

I guess i was wrong given the answer below.

But in my opinion the term is useless as a way of describing a language - much less as the FIRST descriptor for it!

  • 8
    General purpose does not meet the metrics of buzzwordage and pushing the synergy between multi-liaison notions
    – random
    Jul 3, 2011 at 4:45
  • 5
    "do not have enough hit points" - here, take this sword of CON +3. It will help you on your quest.
    – Yi Jiang
    Jul 3, 2011 at 5:17
  • 5
    I too could live without it. Multi-paradigm means C# for example borrows ideas from both object-oriented programming and functional programming. To be both "multi-paradigm" and "object-oriented" means OOP is one of the major paradigms, but not the only one. Jul 3, 2011 at 5:37
  • 2
    A question, what multi-paradigm means, belongs more to programmers than here. Jul 3, 2011 at 23:46
  • 1
    @user unknown - Um, no. It is part of SO, therefore it belongs in SO's meta.
    – tim
    Jul 4, 2011 at 1:19
  • 4
    @tim: It is not part of SO. It is programming terminology. Do you also want to use meta to ask what "garbage-collected" means? Jul 4, 2011 at 13:34
  • 3
    @tim: It's staggering that you've been a programmer, supposedly, for 20 years yet have leapt to the conclusion that "multi-paradigm" has no meaning? There is plenty of information on the subject available on the internet, or in a decent programming book. Jul 4, 2011 at 13:35
  • @Tomalak - I do know what it means 0 however given that OO was also in the description I did not think it was meant for that and if it was then it certainly is useless to have in the description. Sure - I heard of it first as an undergraduate in 1990 or so. But if someone knows nothing about languages then how is "multi-paradigm" useful? It is in fact meaningless. It adds nothing at all to help understand the language. Nothing at all.
    – tim
    Jul 4, 2011 at 17:49
  • 3
    @tim: What a complete load of rubbish. If you "do know what it means" then why did you really post this question, claiming not to? The term does have meaning, and the meaning has been explained to you, and you now claim to "know" this meaning. Jul 4, 2011 at 18:05
  • 1
    @Tomalak: +1+1+1+1. I don't understand why the question has 6 upvotes. Jul 4, 2011 at 20:25
  • @tomalak - I don't care whether you think it is rubbish. The point was not whether I know/knew it or not - the point was that it is a waste of precious words. Even if I had not learned the term in 1990 at Columbia University taking the SICP course I could easily have discovered it all over the internets. The point is that it was not obvious given the original wiki tag desription. I care not what you think of me or my programming experience - the issue is the improvement of the site. Unless one is considering language theory, "multi-paradigm" is a useless description.
    – tim
    Jul 5, 2011 at 0:02
  • If it makes any difference - I was purposely being over-dramatic with the ignorance. If you can't see that the term is practically useless in the context it was written then we just disagree. Languages are tools to get things done. Unless one is an academic and spends his life just theorizing, then the notion of "multi-paradigm" is inconsequential. To professional developers it is much more useful to know other things about the languages.
    – tim
    Jul 5, 2011 at 0:07

3 Answers 3


These arguments are a para-dime a dozen. Go forth and edit the tag wikis when you see babble. No need to post questions here.


Um... It's on the wikipedia page. Sounds like MSbabble to me...

And here is the wikipedia-page explaining multi-paradigm programming. I still think it's MSbabble.

  • Yes, that is what I originally sort of thought, but the same wiki tag says it is object oriented. So is it multi-paradigm, or object oriented?
    – tim
    Jul 3, 2011 at 4:47
  • 5
    I believe the answer depends on the phases of the moon. As it is cloudy here, I am unable to answer at present.
    – M. Tibbits
    Jul 3, 2011 at 4:55
  • 3
    I particularly like the first sentence, which is guilty of using the words themselves in the definition: "A multi-paradigm programming language is a programming language that supports more than one programming paradigm."
    – Cody Gray
    Jul 3, 2011 at 9:16
  • 2
    Do have any small evidence that it is MSbabble? What exactly do you want to express with MSbabble? Empty marketing-language? Scala is a multi-paradigm programming language, without MS being involved. Jul 4, 2011 at 20:21

It can be multi-paradigm and OO - that it isn't just OO is the meaning of the word multi-paradigm.

OO is just a single paradigm. To be multi-paradigm, it has to use at least two paradigms.

But OO can be the most important one, and so it can be justified to mention both.

It means absolutely nothing.

No, that's wrong.

What are the possible paradigms? I think that is likely the last thing one would want to know about the language.

That you would want to know, maybe. Some people might differ. I don't know as much about C#, but Scala is a multi-paradigm-language too: It is OO and functional. And that is a very important thing to mention. To mention it first doesn't necessarily say, it is the most important thing, but it doesn't deny it either.

  • 4
    I don't think anyone is actually disagreeing about whether or not C# is "multi-paradigm". The issue is that a lot of people probably don't know what the phrase "multi-paradigm" mean. Heck, a lot of people don't even know what the word "paradigm" means. And they certainly won't know what it means in this specific context. The asker is suggesting that we use less technical/marketing jargon, and more common sense language in our tag wikis. It's difficult to argue with that position.
    – Cody Gray
    Jul 4, 2011 at 10:15
  • He wrote: It means absolutely nothing. - not: I don't know what it means. Multi-paradigm is the well established phrase for that meaning. It's the professional jargon, just like OO or imperative. If somebody doesn't know it, he should look it up in a dictionary. It could get a description as tag either. Jul 4, 2011 at 10:40
  • @user - but in the same sentence it also says it is OO. So at the very least it is confusing. Cody is right - my dramatic overstatements were meant to highlight what I thought was the wrong information to convey - especially as they were the very first words about the language. I still assert that they are fairly meaningless in the big picture. I can create OO constructs in any language. Multi paradigm has no meaning for if one were to know what the writer meant by it and the reader was interested in that information the very first thing they would want to know is WHICH paradigms?
    – tim
    Jul 4, 2011 at 17:53
  • 1
    Does multi-paradigm help me understand anything about C#? Not terribly. It's got OO, a lil functional bolted on, some other goodies...the usage in the tag is merely fluff.
    – user7116
    Jul 16, 2011 at 2:20
  • Well, it's not only to help you. So maybe it isn't helpful for you, but for other people? Is OO helpful for everybody? Surely not. Most people knew it before, some people will not know what OO is. As long as you don't introduce a better tag, what shall we do? Empty the tag description? Jul 16, 2011 at 2:40
  • I understand the need to be funny, and nothing against Rosinante above. But the correct answer should always be the accepted answer. Doing otherwise devalues Stack Exchange as a whole. I assumed best intentions in Tim's question, until he accepted an answer simply b/c it made him feel best. :( Jan 23, 2015 at 16:50

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .