Write some Software

Ukončen Zveřejněno před 6 lety K zaplacení v momentě doručení
Ukončen K zaplacení v momentě doručení

The user enter a code in Mini C language (described below). The analyser tokenizes the code into

tokens according to white spaces and symbols. Each token is assigned to a valid type and line

number. The description of types are below. You have to write a regular expression for each type.

For assigning a type for a token you can use the following algorithm:

Your program should have one GUI interface that have:

text box to type a code by the user. Textbox to show the errors if any. 2 buttons one for lexical

analyser and the other for syntax parsing. An option to upload a text file.

 The lexical analyser reads any code from a textbox or a file (note that multi-spaces

are accepted as one space for tokenization)

 You should use regular expressions to identify types of the tokens.

 Output: Identify the lexical errors with a clear message.

 Output: a list of (line number, token, type) should be generated in a text file with all

errors exist.

 The user can modify the code from the screen and rescan again.

Note: This phase concerns on the tokens regardless the syntax structure of the statements. For

example: the tokens in a statement (x int =5;) are accepted; but one token is not accepted in (3int

x=5;) as 3int is not accepted in all DFA we have. Thus you should report a lexical error with line

number.

Mini C language:

This language is a subset of C language just to practice compiler design process. It contains a

set of primitive types (that you have to write a regular expression for each) and other types

that will be used in the grammars in the syntax phase.

Primitive types: Digit, letter, INT_NUM, FLOAT_NUM, ID, Void

STR is a type of string which has numbers/spaces/letters/symbols

Token *\ Type: END COMMENT. Token: /* Type: BEGIN COMMENT.

Token: if Type: IF. Token: Token: * Type: MULT. Token else Type: ELSE. And so on..

The syntax is similar to C language that has:

Control statements (if, loops,…) and nested statements

Declarations will be in format (variables: type) all variables must be declared at the beginning of the

program or function.

Function will be in format (function_name: type(list of parameters){}), recursive call is also accepted

Blocks of code will be in format { code }

It is not case sensitive (small/capital letters are the same).

The project submission requirements:

 A report with a brief description of the compiler phases.

 Regular expression and types of the programming language

 Snapshots of the lexical analyser input and output.

 The context free grammars for the syntax using the description and the start symbol will be:

Program -> Proram_name srart: Declarations functions body

 The code.

 A video of how to run the program with correct and incorrect input.

Ex:

TestProgram start:

Var1, Locvar1,age Integer

var1:=5

func1: Void (var2 integer) {

print ( var2)

}

Locvar1:=var1+6-2

enter( age)

if (4+2 == var1*2) then {

print(“good”, age)

func1(var1)

}

PHP Softwarová architektura

Identifikační číslo projektu: #13815913

O projektu

7 nabídek Projekt na dálku Aktivní před 6 lety

7 Freelnceři na tento projekt zveřejňují nabídky v průměru $284

TopTower22

hello,how are you. i read your bid carefully. i am lexical, grammer & syntax parsing expert and have full experience for 10 years. c/c++ language is my top skill. i can provide most quality and high speed. if you w Další

$155 USD za 3 dní
(30 Recenzí)
5.8
wangbeizou

Hello. How are you today. I have read and understood the project. I have strong knowledge in Data structures and Algorithms. And I'm expert in Java ,C/C++,C#, Python ,PHP etc. I'm interested this project. So, fi Další

$155 USD za 3 dní
(60 Recenzí)
5.6
schoudhary1553

Greetings sir, i am an expert freelancer for this job and your 100% satisfaction is assured if you allow me to serve. Here is the reason. Why you should pick me? a) I am a very expert and have the same kind o Další

$250 USD za 3 dní
(18 Recenzí)
5.1
umarbsse

HI. I am Softwares engineer and programmer. I had completed more than 60+ projects. I also worked with UN Projects. I am ready to start that project. If you have any questions you may ask. Regards Umarbsse

$155 USD za 1 den
(45 Recenzí)
5.3
vw8331937vw

hello dear, i'm a c# .Net software developer with sql server experience in accounting applications

$888 USD za 35 dní
(0 Recenzí)
0.0