Find Jobs
Hire Freelancers

MINIJAVA Implementation

$30-5000 USD

Cancelado
Publicado há aproximadamente 15 anos

$30-5000 USD

Pago na entrega
You will extend the MiniJava implementation, including the typechecker, with two new expressions and a new statement. Copy the MiniJava implementation directory (chap5 folder) to where you want to work. Your implementation should correctly typecheck the new expressions and statement. The process is similar for statements where, instead of modifying TypeCheckExpVisitor, you will have to modify TypeCheckVisitor. Please see attachment for further details. ## Deliverables Requirements: • A zipped version of your solution directory after removing all the .class files (just to save space). Alternatively, you can only include the files that were modified and added by your implementation. • A test file (MiniJava program) with all the new cases added to the language, including expressions and statements that should throw type errors. Point these expressions out (good and bad ones) by adding a comment. The typechecker will report the first type error and quit. You can test your program by only including one ill-typed expression/statement at a time and commenting out the rest (that’s what I will do with your file). Work to be done: You will extend the MiniJava implementation, including the typechecker, with two new ex- pressions and a new statement. Copy the MiniJava implementation directory (chap5 folder) to where you want to work. Files README in the various directories give a brief description of the structure of the implementation. Add the OR operator (OrExpression) to the MinJava implementation following the syntax below: 
 → || 2. Add the ?: (shortcut if-else) operator to MiniJava, where op1?op2:op3 returns op2 if op1 is true, and returns op3 if op1 is false. The syntax is: ’’?’’ ’’:’’ 3. Add a repeat-until statement to the MiniJava implemenation:

 → repeat until ( ) ; Your implementation should correctly typecheck the new expressions and statement. The process is similar for statements where, instead of modifying TypeCheckExpVisitor, you will have to modify TypeCheckVisitor. In a nutshell, you will have to: Modify the [login to view URL] file. • Add the classes representing the new expressions and statement to the syntaxtree directory. Note that this time you will also have to include an accept method to be used by the Type visitor. • Update the pretty-printer visitor by adding the new visit declarations to [login to view URL] and the new implementations of visit to the [login to view URL] file. • Update the default Type visitor by adding the new visit declarations to [login to view URL] and the new implementations of visit to the [login to view URL] file. • Implement the actual type checking of the new expressions and statement by adding the respective visit method to [login to view URL] (expressions) and [login to view URL] (statements). Please see attachment for all the relevant files. thanks. ## Platform Windows, Unix, Java,
ID do Projeto: 3785228

Sobre o projeto

5 propostas
Projeto remoto
Ativo há 15 anos

Quer ganhar algum dinheiro?

Benefícios de ofertar no Freelancer

Defina seu orçamento e seu prazo
Seja pago pelo seu trabalho
Descreva sua proposta
É grátis para se inscrever e fazer ofertas em trabalhos
5 freelancers estão ofertando em média $153 USD for esse trabalho
Avatar do Usuário
See private message.
$34 USD em 3 dias
5,0 (5 avaliações)
4,2
4,2
Avatar do Usuário
See private message.
$136 USD em 3 dias
4,7 (8 avaliações)
3,8
3,8
Avatar do Usuário
See private message.
$510 USD em 3 dias
0,0 (2 avaliações)
0,0
0,0
Avatar do Usuário
See private message.
$12,75 USD em 3 dias
0,0 (1 avaliação)
0,0
0,0
Avatar do Usuário
See private message.
$72,25 USD em 3 dias
0,0 (0 avaliações)
0,5
0,5

Sobre o cliente

Bandeira do(a) UNITED KINGDOM
United Kingdom
5,0
10
Membro desde nov. 18, 2008

Verificação do Cliente

Obrigado! Te enviamos um link por e-mail para que você possa reivindicar seu crédito gratuito.
Algo deu errado ao enviar seu e-mail. Por favor, tente novamente.
Usuários Registrados Total de Trabalhos Publicados
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Carregando pré-visualização
Permissão concedida para Geolocalização.
Sua sessão expirou e você foi desconectado. Por favor, faça login novamente.