Abstract syntax for interpretation in haskell or prolog

Assignment Help Programming Languages
Reference no: EM1368722

Problem 1

Define an abstract syntax of the while language suitable for interpretation in either Haskell or Prolog. In Haskell, the definition should be the code of a few data types. In Prolog, no code may be necessary. In this is your case, move directly to Problem 2.

Problem 2

Code two simple while programs in the syntax of Problem 1. One program is the factorial shown above, the other is a program of your choice.

Problem 3

Code an interpreter of the while language in either Haskell or Prolog. Your interpreter should have a function (in Haskell) or a predicate (in Prolog) that takes the abstract syntax tree of a program of Problem 2 as one of its argument. The interpreter should execute the program statements and produce (return in Haskell or bind in Prolog or print, if you prefer) the value of the program variables at the end of the execution. The structure or format of these values is irrelevant as long as it is understandable, see below. You are free to implement only the portions of the interpreter that are needed for the execution of the two programs of Problem 2.

Reference no: EM1368722

Questions Cloud

Write pseudocode of thread with and without semaphores : Assume we have two threads A and B A and B are to repeatedly print out ping and pong. Write down pseudocode of thread A and B How can this be solved with and without semaphores.
Calculate the current eps and pe ratio : Aero Company currently has net income of $3 million and 1. million common shares outstanding which sell for $20 per share. Aero has decided to issue new stock to raise $4,000,000 to expand its operations.
Explaining ethical or unethical actions : Should Iris have placed CD back at coffee station and forgotten entire thing? Describe why that action would have been ethical or unethical.
Conduct observation used in business or organization : Conduct the observation to someone involved in procedure which is used in a business or organization. This person could be someone at university, in small business in your neighborhood.
Abstract syntax for interpretation in haskell or prolog : State an abstract syntax of the while language appropriate for interpretation in either Haskell or Prolog. In Haskell, the definition must be the code of a few data types.
Adapting messages to audiences : How will you need to adapt your communication style and message to communicate effectively with this audience?
Management - supermarket and grocery market : Why is the layout of the supermarket so important to the overall delivery of the products and services provided and what recommendations would you make to the layout of the supermarket to make the layout more effective or efficient.
Explain feasibility analysis for jobs of lrt algorithm : Study feasibility analysis for jobs of LRT algorithm when preemption is allowed. Which scheduling algorithm is best suited for high speed networks and why? Distinguish between static and dynamic systems.
Describe how the general characteristics of these two system : Describe how the general characteristics of these two systems development projects differ

Reviews

Write a Review

Programming Languages Questions & Answers

  Write a haskell program to calculates a balanced partition

Write a program in Haskell which calculates a balanced partition of N items where each item has a value between 0 and K such that the difference b/w the sum of the values of first partition,

  Create an application to run in the amazon ec2 service

In this project you will create an application to run in the Amazon EC2 service and you will also create a client that can run on local machine and access your application.

  Explain the process to develop a web page locally

Explain the process to develop a Web page locally

  Write functions

These 14 questions covers java class, Array, link list , generic class.

  Programming assignment

If the user wants to read the input from a file, then the output will also go into a different file . If the user wants to read the input interactively, then the output will go to the screen .

  Write a prolog program using swi proglog

Write a Prolog program using swi proglog

  Create a custom application using eclipse

Create a custom Application Using Eclipse Android Development

  Create a application using the mvc architecture

create a application using the MVC architecture. No scripting elements are allowed in JSP pages.

  Develops bespoke solutions for the rubber industry

Develops bespoke solutions for the rubber industry

  Design a program that models the worms behavior

Design a program that models the worm's behavior.

  Writing a class

Build a class for a type called Fraction

  Design a program that assigns seats on an airplane

Write a program that allows an instructor to keep a grade book and also design and implement a program that assigns seats on an airplane.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd