Ask Question, Ask an Expert

+61-413 786 465

info@mywordsolution.com

Ask Computer Engineering Expert

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.

Computer Engineering, Engineering

  • Category:- Computer Engineering
  • Reference No.:- M92796738

Have any Question?


Related Questions in Computer Engineering

Reflective journal entryreflective journal entry on writing

Reflective Journal Entry Reflective Journal Entry on writing a Bibliography Assignment Topic; Research Question: One of the most common questions that new students learning programming students ask is what programming la ...

Question 1 select a specific activity or responsibility of

Question: 1. Select a specific activity or responsibility of the systems analyst. Define the purpose of the systems analyst and why it is important in the overall systems analysis process. Write this post to an audience ...

Question a topic related to database securityyou must pick

Question: A topic related to Database Security. You must pick one topic after reading at least 5 articles. You must provide a list of those articles you read and you must annotate each one. That is, you must write at lea ...

Please discuss the design principles that guide the authors

Please discuss the design principles that guide the authors of instruction sets in making the right balance. Provide examples of application of each of the three design principles while designing instruction sets.

How much work energy must you do to lift 1 tonne 1000 kg of

How much work energy must you do to lift 1 tonne (1000 kg) of coal from a depth of 500 m to the surface? What fraction of the heat energy in that coal was this? This is a simple calculation of one part of the emergy to t ...

What are the minimum numbers of keys and pointers in btree

What are the minimum numbers of keys and pointers in Btree (i) interior nodes and (ii) leaves, when: a) n = 10; i.e., a block holds 10 keys and 11 pointeis. b) n = 11; i.e., a block holds 11 keys and 12 pointers.

The contracts manager at a company needs to make a large

The contracts manager at a company needs to make a large legal document available to an overseas customer. However, she has some challenges: The document contains sensitive information; it is too large to send via e-mail ...

Task you want to calculate a students gpa for a number of

Task: You want to calculate a student's GPA for a number of classes taken by the student during a single semester. (In C# (C sharp)) Inputs: 1. the student's name 2. Class names for the classes taken by the student 3. Cl ...

Question david doe is a network administrator for the abc

Question: David Doe is a network administrator for the ABC Company. David is passed over for promotion three times. He is quite vocal in his dissatisfaction with this situation. In fact, he begins to express negative opi ...

Say you want to match ip addresses however its likely that

Say you want to match IP addresses. However, it's likely that an invalid IP address such as 192.168.1.256 will match with your regex as well. What would you would need to do to validate that an IP address is valid, and w ...

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

Why might a bank avoid the use of interest rate swaps even

Why might a bank avoid the use of interest rate swaps, even when the institution is exposed to significant interest rate

Describe the difference between zero coupon bonds and

Describe the difference between zero coupon bonds and coupon bonds. Under what conditions will a coupon bond sell at a p

Compute the present value of an annuity of 880 per year

Compute the present value of an annuity of $ 880 per year for 16 years, given a discount rate of 6 percent per annum. As

Compute the present value of an 1150 payment made in ten

Compute the present value of an $1,150 payment made in ten years when the discount rate is 12 percent. (Do not round int

Compute the present value of an annuity of 699 per year

Compute the present value of an annuity of $ 699 per year for 19 years, given a discount rate of 6 percent per annum. As