Paradigms

def : Are a way to classify programming languages based on their features.

criticism : they arque that many programming language cannot be classified into one paradigm samaries

Multi-paradigm

Concurrent programming -these my involve multi-threading support for ` distributed computing ,message passing,shared or futruere Actor programming-concurrent computation with actors that make local decision in respose to the environment.

Constrain programming-relation between variables are expressed as constrains,directing allowable solution. Declarative programming-describe actions e.g html describes a page.

Fuction programming- evaluation of mathematical futions and avoids stat and mutable data. Distrubuted programming-have support for multiple dutonomous computers that communicate via computer networks. Genetic programmming-uses algorithms written in terms of to-bep-specified later types that are then instaintiated as needed for specific types provided as parameters.

Imperative programming-explicit statements that change a program state. Logic programming -uses explict mathematical logic for programming.

Metaprogramming-writting programming method that write or manipulate other programs as their data. Template metaprogramming-metaprogramming methods in which template are used by a conpiler to generate temporary source code which merged by complier with rest of the source code and then compier.

Reflective programming-metaprogramming methods program modifies or extends itself. Objective-orientated-use data structures consisting of datafield and methods together with their interaction to design programming. Classes-based-object programming-thhe inheritance is achieved by defining classes of objects result.

Prototype based-object proggramming-orientated programming that avoid classes and implements inheritance via cloning instences Pipeline programming-a simple syntax change to add nrest fuctionals language originally designed with none Rule-based programming-a network of rules of thumb that comprise a knowledge base and can be used for expert systerm Visual programming-manipulating program element graphically than by specifying them texttually.