Programming Pardigm
Programming Pardigm
A classification of programming languages based on their features (but most popular languages
support multiple paradigms).
Imperative Declarative
Perform step by step task and manage Define what the problem is and what data
changes in state transformation are needed to achieve the
solution.
Other paradigms are event driven programming, Automata based programming, reactive
programming
Type checking is the process of checking and verifying the type of a construct (constant, variable,
array, list, object) and its usage context. It helps in minimizing the possibility of type errors in the
program.
Type checking may occur either at compile-time (static checking) or at run-time(dynamic checking).
Statically Typed: A programming language is statically typed if the type of a variable is known at
compile time. So, every detail about the variables and all the data types must be known before we do
the compiling process.
Strongly Typed: A strongly typed language is one where every statement that is executed must
follow the proper rules of the type system (That means the type of variable and expression is specified
before the use). In strongly typed languages, once a variable is told to be int type then it will remain
int type throughout. In general, a strongly typed language has stricter typing rules at compile time,
which implies that errors and exceptions are more likely to happen during compilation. They usually
do not permit implicit type conversions.
Weakly Typed: A weakly typed language has looser typing rules and may produce unpredictable or
even erroneous results or may perform implicit type conversion at runtime. In contrast to strongly
typed languages the type of variable may be changed.