What is a multi-paradigm language?

8

The title of the question already summarizes everything I want to know. Visual Basic .NET, C #, Boo, C ++ are multi-paradigm languages. What is a paradigm? And a multi-paradigm language?

    
asked by anonymous 20.05.2016 / 01:39

1 answer

11

I have already answered the paradigm on two occasions: What is a paradigm? and question where you had a specific context .

The term already answers everything: P They are language that support more than one paradigm with specific mechanisms.

I think all modern, popular, and general-purpose languages are multi-paradigms. This is critical for language to succeed. When language proposes to go beyond a specific niche it needs to have several ways to solve problems, because it will deal with a variety of problems.

Essentially every language is imperative . Object orientation is fashionable and almost every language adopts it. The languages do not dispense with at least some functional characteristics and every day more the languages will add mechanisms of this paradigm, this happens with C ++, Java, C #, Python, etc.

Paradigms

Some adopt a more procedural and modular style, or at least allows its use, but today OO is often preferred, although often the difference is small and questionable (in the sense that there is no consensus of what is OO ) when you are using one or the other.

Some opt for other ancillary paradigms to meet some more specific needs. This occurs with events , aspects , competition or reflexivity , for example. I could even put contracts as well. There are controversies as to whether they are paradigms (I say that in the first link up there).

Other paradigms are needed to meet your basic philosophy. Language actually typed does not exist without genericity , meta-programming or some similar way.

Some have adopted a more declarative style that opposes the imperative, at least for some type of task. / p>

A Wikipedia has a comparison . It is not 100% reliable (I am being legal), it has subjectivity and the table is not well cured, but it helps to get an idea.

Further information

Languages can at least simulate a paradigm with libraries and usage patterns. This alone can not classify language as multi paradigm.

Some languages use the term prominently and primarily as marketing. Some go in the opposite direction and choose to respond well to a type of problem.

If you search right here or follow the Wikipedia article (it's full of links at least for the introduction) you'll learn more about several other paradigms that I would call auxiliary.

    
20.05.2016 / 02:26