STRONG TYPING
Strong Typing: A strongly-typed programming language is one in which variable type is defined. (such as integer, character, hexadecimal, packed decimal, and so forth).
If we specify a particular type to our data, the compiler will consider the data as the specified type and no other type.
An example of arithmetic operation in strongly typed language that will generate an error:
int addition = 10 + "10";
Here, a string type cannot be added with an integer type.
Strong typed language minimize errors while running the program because most of the errors will have been corrected before running the program.
Some examples of strongly typed languages are C and Java.
Viva Voce on Strong Typing
Q1. What is strong type language?
Ans - A strongly-typed programming language is one in which each type of data (such as integer, character, hexadecimal, packed decimal, and so forth) is predefined as part of the programming language and all constants or variables defined for a given program must be described with one of the data types.
Q2. Is strong type language predefined part of language?
Ans- Yes.
Q3. In Strongly typed language errors are maximize or minimize?
Ans – Minimize.
Q4. In this Strongly typed language are slower / faster ?
Ans- It is faster.
Q5. Write some examples of strong typed language?
Ans- SQL, C , Java.
Q6. A language is strongly typed if there are compile-time or run-time checks for what?
Ans- it check the type constraint violations. If no checking is done, it is weakly typed.
Q7. what is the rule of strong typed language?
Ans- Generally, a strongly typed language has stricter typing rules at compile time, which implies that errors and exceptions are more likely to happen during compilation.
Q8. A language is strongly typed if the type of its data objects is fixed or not?
Ans- Yes, A language is strongly typed if the type of its data objects is fixed.
Q9.A language is weakly typed if the type of its data objects is changeable or not?
Ans- If the type of a datum can change.
Principles of Programming Languages:
EasyExamNotes.com covered following topics in these notes.
- Language Evaluation Criteria
- Influences on Language Design
- Language Categories
- Programming Paradigms
- Compilation
- Virtual Machines
- Programming Environments
- Issues in Language Translation
- Parse Tree
- Pointer and Reference type
- Concept of Binding
- Type Checking
- Strong typing
- Sequence control with Expression
- Exception Handling
- Subprograms
- Fundamentals of sub-programs
- Scope and lifetime of variable
- static and dynamic scope
- Design issues of subprogram and operations
- Local referencing environments
- Parameter passing methods
- Overloaded sub-programs
- Generic sub-programs
- Design issues for functions
- co routines
- Abstract Data types
- Abstraction and encapsulation
- Static and Stack-Based Storage management
- Garbage Collection
- OOP in C++
- OOP in Java
- OOP in C#
- OOP in PHP
- Concurrency
- Semaphores
- Monitors
- Message passing
- Java threads
- C# threads
- Exception handling
- Exceptions
- Exception Propagation
- Exception handler in C++
- Exception handler in Java
- Introduction and overview of Logic programming
- Basic elements of Prolog
- Application of Logic programming
- Functional programming languages
- Introduction to 4GL
Practicals:
- Memory Implementation of 2D Array.
- Memory Implementation of 3D Array.
- Implementation of pointers in C++.
- Write a program in Java to implement exception handling.
- Write a program in C++ to implement call by value parameter passing Method.
- Write a program in C++ to implement call by reference parameter passing Method.
- Write a program in Java to implement concurrent execution of a job using threads.
- Implement Inheritance in C#.
- Implement Encapsulation in C#.
- Implement static/compiletime Polymorphism in C#.
- Implement dynamic/runtime Polymorphism in C#.
Previous years solved papers:
A list of Video lectures
References:
- Sebesta,”Concept of programming Language”, Pearson Edu
- Louden, “Programming Languages: Principles & Practices” , Cengage Learning
- Tucker, “Programming Languages: Principles and paradigms “, Tata McGraw –Hill.
- E Horowitz, "Programming Languages", 2nd Edition, Addison Wesley
- Memory Implementation of 2D Array.
- Memory Implementation of 3D Array.
- Implementation of pointers in C++.
- Write a program in Java to implement exception handling.
- Write a program in C++ to implement call by value parameter passing Method.
- Write a program in C++ to implement call by reference parameter passing Method.
- Write a program in Java to implement concurrent execution of a job using threads.
- Implement Inheritance in C#.
- Implement Encapsulation in C#.
- Implement static/compiletime Polymorphism in C#.
- Implement dynamic/runtime Polymorphism in C#.
Previous years solved papers:
A list of Video lectures
References:
References:
- Sebesta,”Concept of programming Language”, Pearson Edu
- Louden, “Programming Languages: Principles & Practices” , Cengage Learning
- Tucker, “Programming Languages: Principles and paradigms “, Tata McGraw –Hill.
- E Horowitz, "Programming Languages", 2nd Edition, Addison Wesley