Find Jobs
Hire Freelancers

MINIJAVA Implementation

$30-5000 USD

Cancelado
Publicado hace alrededor de 15 años

$30-5000 USD

Pagado a la 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 del proyecto: 3785228

Información sobre el proyecto

5 propuestas
Proyecto remoto
Activo hace 15 años

¿Buscas ganar dinero?

Beneficios de presentar ofertas en Freelancer

Fija tu plazo y presupuesto
Cobra por tu trabajo
Describe tu propuesta
Es gratis registrarse y presentar ofertas en los trabajos
5 freelancers están ofertando un promedio de $153 USD por este trabajo
Avatar del usuario
See private message.
$34 USD en 3 días
5,0 (5 comentarios)
4,2
4,2
Avatar del usuario
See private message.
$136 USD en 3 días
4,7 (8 comentarios)
3,8
3,8
Avatar del usuario
See private message.
$510 USD en 3 días
0,0 (2 comentarios)
0,0
0,0
Avatar del usuario
See private message.
$12,75 USD en 3 días
0,0 (1 comentario)
0,0
0,0
Avatar del usuario
See private message.
$72,25 USD en 3 días
0,0 (0 comentarios)
0,5
0,5

Sobre este cliente

Bandera de UNITED KINGDOM
United Kingdom
5,0
10
Miembro desde nov 18, 2008

Verificación del cliente

¡Gracias! Te hemos enviado un enlace para reclamar tu crédito gratuito.
Algo salió mal al enviar tu correo electrónico. Por favor, intenta de nuevo.
Usuarios registrados Total de empleos 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)
Cargando visualización previa
Permiso concedido para Geolocalización.
Tu sesión de acceso ha expirado y has sido desconectado. Por favor, inica sesión nuevamente.