Provide closures to allow functions to be passed

Assignment Help Computer Engineering
Reference no: EM131959081

Assignment- Language Design Essay

Topic Overview

Since the development of Plankalkül back in the 1940s, a large number of programming languages have been designed and implemented - each for its own specific problem domains and made with its own set of design decisions and compromises. For example, there are languages which:

• Are strongly typed and loosely typed,
• Provide support for object orientation / abstraction of data types,
• Use static or dynamic scoping rules,
• Provide memory management (i.e. garbage collection) or allow the developer fine-grained control over heap-allocation and recycling,
• Provide closures to allow functions to be passed around like variables,
• Allow easy access to array slices and those which do not,
• Perform internal correctness checking of data and/or try/catch exception handling and those which do not,
• Provide diverse and comprehensive suites of built-in functionality and those with a more limited set of features,
• Use pre-processors and macros to selectively expand or substitute source code, etc.

Each of these decisions can have a profound effect on the usefulness of a programming language in terms of factors such as its speed, robustness and general suitability to create programs of a certain type, such as for operating systems, or in the areas of business, scientific computation, artificial intelligence or video games.

The topic of your essay is to design a programming language for the problem domain of:

Education Sector

The education sectors require many applications to handle a wide variety of different tasks. So a programming language suitable for this domain must be able to do things like:

• Have comprehensive support for user interfaces (i.e. GUIs),
• Be able to model real-world problems using custom data types (i.e. support abstraction),
• Provide the ability to send and receive data to/from servers or other devices,
• Be able to handle course-registration related tasks, for example: students enrollment, registration and grading systems
• Be able to handle online learning management related tasks,
• Can handle transactions in payments, for example, paying tuition fee etc.
• Allow for the use of rich multimedia capabilities to enable sound/video playback that allow, for example: creating educational videos, support online lectures, and online conference meetings etc.

Education sector encompasses a number of areas including aspects of academic enrollment and result processing, management of learning and teaching materials, and management of finance. It is worth thinking about the aspects of an education system in terms of a number of features, including:

• Performance;
• Data types and structures;
• Flexibility of design and implementation; and
• Maintenance / Reliability of code;

Even though security aspects are worth considering, the features of the language are the primary concern in this essay. With this in mind your task is to theoretically design a language suitable for the use within the Education domain.

The actual implementation of the language and tool set is obviously outside the scope of this course, but you must express and justify the design decisions behind your programming language in terms of:

• The features and functionality that will allow your language to be suitable and useful within the problem domain (including what differentiates it from existing languages),

• The programming paradigms, such as procedural, object oriented, logic and functional programming.

You are free to design your language to be either interpreted, compiled or to work in a hybrid manner, but you must thoroughly justify your decision. All language design choices must be legitimate, rational decisions which are backed up by robust discussion of the subject area.

Reference no: EM131959081

Questions Cloud

How would you structure testing of the fix prior to delivery : Would you make any changes to your configuration management strategy to accommodate the fix? How would you structure testing of the fix prior to delivery?
How is a program evaluation conducted by a sociologist : How is a program evaluation conducted by a sociologist different than ones conducted by evaluators who are not sociologists?
What should the shares be trading for today : A company issued preferred shares two years ago, paying a $3.57 dividend, which offered investors an original yield of 7%.
How much economic profit will the investment create : Your company is looking at an investment that today costs $3,863 and returns after-tax cash flow exactly one year, two years, and three years from today.
Provide closures to allow functions to be passed : Provide closures to allow functions to be passed around like variables. Allow easy access to array slices and those which do not.
Computing the npv of the project : A company can purchase 2 warehouses Now, and 3 more 1 year from Now. The company expects to sell 1 warehouse per year for the next 5 years.
Explain why being a part of the roman empire is negative : Many of the rulers we have examined in this course follow set patterns of behavior, which we have discussed as "paradigms."
What is the general formula for the securities market line : Company Q has earnings of $3.00 per share, a market price of $25, and a beta of 1.25. The risk-free rate is 3% and the risk premium for the market.
Write an essay within the topic of deviance thorugh sex : Find one episode from two different tv shows of our choice and write an essay within the topic of deviance thorugh sex, gender sexuality.

Reviews

Write a Review

Computer Engineering Questions & Answers

  Mathematics in computing

Binary search tree, and postorder and preorder traversal Determine the shortest path in Graph

  Ict governance

ICT is defined as the term of Information and communication technologies, it is diverse set of technical tools and resources used by the government agencies to communicate and produce, circulate, store, and manage all information.

  Implementation of memory management

Assignment covers the following eight topics and explore the implementation of memory management, processes and threads.

  Realize business and organizational data storage

Realize business and organizational data storage and fast access times are much more important than they have ever been. Compare and contrast magnetic tapes, magnetic disks, optical discs

  What is the protocol overhead

What are the advantages of using a compiled language over an interpreted one? Under what circumstances would you select to use an interpreted language?

  Implementation of memory management

Paper describes about memory management. How memory is used in executing programs and its critical support for applications.

  Define open and closed loop control systems

Define open and closed loop cotrol systems.Explain difference between time varying and time invariant control system wth suitable example.

  Prepare a proposal to deploy windows server

Prepare a proposal to deploy Windows Server onto an existing network based on the provided scenario.

  Security policy document project

Analyze security requirements and develop a security policy

  Write a procedure that produces independent stack objects

Write a procedure (make-stack) that produces independent stack objects, using a message-passing style, e.g.

  Define a suitable functional unit

Define a suitable functional unit for a comparative study between two different types of paint.

  Calculate yield to maturity and bond prices

Calculate yield to maturity (YTM) and bond prices

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