Experiment 01: Questions: A) Explain Following Terms and Relation Between Them
Experiment 01: Questions: A) Explain Following Terms and Relation Between Them
Experiment 01: Questions: A) Explain Following Terms and Relation Between Them
PROCEDURE:-
With reference to questions given do the following:
step1 ) Search and study the needed material in depth.
step2 ) (Preferable) use some implementation code snippets to
understand in detail. step3 ) Make a “word” file of your
answer and submit .
Questions:
A) Explain following terms and relation between them.
1) Compilers: Compilers are computer software that translates high-level
language program into assembly language that can be understood by a digital
computer’s CPU. This is one language processor that reads the complete source
program in one go and translates it into an equivalent program in machine
language.
Java is Secure: The Java platform is designed with security features built into
the language and runtime system such as static type-checking at compile time
and runtime checking (security manager), which let you creating applications
that can’t be invaded from outside. You never hear about viruses attacking Java
applications.
Java is High Performance: Java code is compiled into bytecode which is
highly optimized by the Java compiler, so that the Java virtual machine (JVM)
can execute Java applications at full speed. In addition, compute-intensive code
can be re-written in native code and interfaced with Java platform via Java
Native Interface (JNI) thus improve the performance.
The Java compiler never converts the source code to machine code like that of
the C/C++ compiler.Instead, it converts the source code into an intermediate
code called the byte code and this byte code is further translated to machine-
dependent form by another layer of software called JVM (Java Virtual
Machine).
2) MinGW:
MinGW also support c, c++, fortran, ada, java and pascal. It can create
32-bit or 64-bit binaries, for any versions of Windows since windows 98.
It is more faster than VS code. This is very capable of producing good
64-bit code for windows. Unix shells and GNU make do a lot of forking,
so running these under MinGW results in “emulated” forks, which are
really slow.
● Expressive diagnostics
● GCC compatibility
Flex, an automatic lexical analyser, is often used with Bison, to tokenise input
data and provide Bison with tokens.
Reentrancy is a feature which has been added to Bison and does not exist in
Yacc. Normally, Bison generates a parser which is not re-entrant. In order to
achieve reentrancy the declaration %define api.pure must be used.
Bison can generate code for C, C++, D and Java. For using the Bison-generated
parser from other languages a language binding tool such as SWIG can be used.