5)
The Tiny C Compiler (a.k.a. TCC, tCc, or TinyCC) is an x86, X86-64 and ARM processor C compiler created by Fabrice Bellard. It is designed to work for slow computers with little disk space (e.g. on rescue disks). Windows operating system support was added in version 0.9.23 (17 Jun 2005). TCC is distributed under the GNU Lesser General Public License (LGPL).
TCC has a number of features that differentiate it from other current C compilers:
6)
The set containing one empty string has one element. The empty set has zero elements. The one with one element is "bigger" (its cardinality is larger).
Here is a program that accepts the language that contains only the empty string:
s = get_input();
if (s == "") then ACCEPT;
else REJECT;
Here is a program that accepts the empty set:
s = get_input();
REJECT;
They are not the same program! The first one accepts the empty string; the second does not.
8)
Regular Languages : A language is regular if it
can be expressed in terms of regular expression.
Closure Properties of Regular Languages
Union : If L1 and If L2 are two regular languages,
their union L1 ∪ L2 will also be regular. For example, L1 =
{an | n ≥ 0} and L2 = {bn | n ≥ 0}
L3 = L1 ∪ L2 = {an ∪ bn | n ≥ 0} is also
regular.
Intersection : If L1 and If L2 are two regular
languages, their intersection L1 ∩ L2 will also be regular. For
example,
L1= {am bn | n ≥ 0 and m ≥ 0} and L2=
{am bn ∪ bn am | n ≥ 0
and m ≥ 0}
L3 = L1 ∩ L2 = {am bn | n ≥ 0 and m ≥ 0} is
also regular.
Concatenation : If L1 and If L2 are two regular
languages, their concatenation L1.L2 will also be regular. For
example,
L1 = {an | n ≥ 0} and L2 = {bn | n ≥ 0}
L3 = L1.L2 = {am . bn | m ≥ 0 and n ≥ 0} is
also regular.
9)
A context-free grammar (CFG) consisting of a finite set of grammar rules is a quadruple (N, T, P, S) where
Example
5. Write a short technical note about Tiny C compiler. 6. What is the difference between...