$20 Bonus + 25% OFF
Securing Higher Grades Costing Your Pocket? Book Your Assignment at The Lowest Price Now!

Language Design For Mobile Application

tag 0 Download10 Pages 2,443 Words tag Add in library Click this icon and make it bookmark in your library to refer it later. GOT IT


Write an Essay on Concept Language Design for Mobile Application.


Programming language is the basic building block of software development, be it for computer, laptop, tab or mobile phone. Many types of programming language have been created since the creation of Plankalkul in the 1940s. Each programming language has some good features as well as drawbacks. No programming language exists that is equipped with all the best features required to develop a program (Joorabchi, Mesbah & Kruchten, 2013). Some languages support single platform development like in Windows, Android, MACOS, iOS and such whereas there are others like Java, Python, Dot Net and such that can be used to develop applications in multiple platform environment. A programming language needs to maintain certain parameters that will help a program developer to successfully develop and implement a program for any platform (Amatya & Kurti, 2014). These parameters are as follows:

  • Simplicity
  • Orthogonality
  • Data Types
  • Syntax Design
  • Support for Abstraction
  • Expressivity
  • Type Checking
  • Exception Handling
  • Restricted Aliasing

The essay will provide detailed specifications for the features mentioned above that will be incorporated within a concept programming language design that can be used for the development of mobile application (McWherter & Gowell, 2012).


A programming language used for the development of mobile applications is expected to perform functionalities like –

  • Ability to work efficiently and in an event-driven manner
  • Efficient in reducing battery usage of mobile device
  • Supports graphical user interfaces comprehensively
  • Ability to construct actual problems using customised data types
  • Capable of using multimedia like watching videos, listening to music, playing games and such
  • Provide the ability to send or receive data from other devices or from a server (Danado & Paterno, 2012).

A good programming language should have the following attributes:

  • Unity, Clarity and Simplicity – framework is provided for the thinking as well as expressing of algorithms
  • Orthogonality – has meaning for every combination of features
  • Originality for the Application – the framework of the program projects the logical structure of the algorithm
  • Support for abstraction – the data of the program projects resolution of problem
  • Verification of program with ease – verification of proper functionality of a program is determined
  • Environment of Programming – language gets external support
  • Program portability – ease of moving the program from the device where it is developed to other devices
  • Cost of use – execution, translation, creation and maintenance of program (Vaupel et al., 2014).

The parameters of a programming language mentioned above are affected by the characteristics Readability, Writability and Reliability.

(Source: "Design Criteria for Programming Languages", 2017)

Writability – This characteristic provides expressivity in a language. The writability of the language should be clear, brief, quick and accurate. This characteristic measures the ease with which a language can be used to develop programs for a chosen problem domain (Marcotty & Ledgard, 2012).

Readability – The characteristic of readability ensures that the algorithm or nature of computation of the language is understood by its reader even if the reader is not a programmer (Teufel, 2012).

Reliability – This characteristic determines that the program is reliable that is, it does not show unexpected behaviour at any point of time (Fernandez, 2014).

The specifications of the parameters of the programming language are as discussed below:

Simplicity :-

The simplicity of the programming language is dependent on the following aspects –

Quantity of basic features – the simplicity of the program will depend on the number of basic features that is present in the program. The more basic features are there in the program the more hard the readability of the program will become. This is because the reader may have knowledge of a different subset of language than the programmer. Even very less amount of the features can hamper the readability of the program as an apparent single operation may require several instructions to encode ("Notes on Chapter 1 of Sebesta's "Programming Languages"", 2017).

Multiplicity of features – The program and its features will offer several options to perform the same operation (Hsu, Chater & Vitanyi, 2013). For example: looping constructs (while, do while, for)

Operator overloading – wise use can help in the readability of the program but can hamper readability if used without consideration. For example, by using plus (+) symbol as a comparison operator, the overloading of operator is possible (Hsu, Chater & Vitanyi, 2013).

The concept programming language need to have these aspects in order to attain simplicity.


Orthogonality :-

In the language of programming, orthogonality signifies a set of features or constructs that can be used independently in any combination with each other. Orthogonality of a program is less if –

Certain combinations are prohibited as exceptions or a particular combination is not meaningful in relation to the meanings of its component parts (Gabriel, 2012).

The concept programming language need to be orthogonal and for that to happen less amount of combinations should be present in the program features that are prohibited as exceptions. In addition, each combination should have relevance in relation to its component parts (Gabriel, 2012).

An illustration of non-orthogonality in C language is provided to clarify the importance of orthogonality in the proposed conceptual programming language:

  • A function can return a value of any type except an array type or a function type.
  • An array is able to store values of any type, excluding void or a function type.
  • Parameters to functions are passed by value excluding arrays, which are passed by reference.
  • In the expression a+b, the meaning of b is dependent on the possibility of a being a pointer type or not (Gabriel, 2012).

It is evident from the example provided above that non-orthogonality is not a good option for a programming language as it creates many issues. However, the presence of extreme orthogonality in a programming language creates issues for the readers. It is seen that if the quantity of special rules or exception to rules is reduced, the language becomes easier to learn, describe and implement (Gabriel, 2012). However, a programming language where the principle of orthogonality is applied strictly may have conceptual obscurity when a certain rule is applied to a context that has unusual combination. Therefore, this proves that the conceptual language should have flexible orthogonality principle to have efficient readability for the readers (Gabriel, 2012).

Data Types :-

Readability of a language improves with the adequate facilitation for defining data types and structures. For example, the FORTRAN language in its early stage lacked record construct. Therefore, the fields of an object failed to encapsulate within a single structure (Gries, 2012).

The language should have adequate intrinsic data types as well. For example, the initial versions of C programming language had no Boolean type that forced a programmer to use int to represent true/false where zero is considered false and everything else is taken as true (Gries, 2012). Therefore, flag = 1 is used to set flag to true.

Syntax Design :-

A syntax design is generally a format that a programmer maintains while coding on a programming language. Every programming language has a different set of syntax design that is required to be maintained strictly for the code to be executed properly in that particular language. To create a syntax design for the conceptual programming language, certain norms are required to be maintained (Stefik & Siebert 2013).

Identifier forms – the Identifier forms should be less restrictive on length unlike BASIC and FORTRAN 77. In COBOL, dashes were included to identifiers that were often mistaken with the subtraction operator.

Special Words – Some words carry special meaning within a program such as class, while, end, if and such. The syntax design of a language decides whether these special words are stored for serving special purpose within the language or can be used as names of variables and subprograms as well (Stefik & Siebert 2013). The order of signalling the beginning or end of a compound statement such as a loop affects the readability of the programming language.

Form and meaning – The form ideally defines the semantics of a syntactic construct. For this to happen it is necessary to choose the special words wisely. For example, it is better to use ‘if’ instead of ‘glorp’. It is beneficial if the meaning of a syntactic form coincides with all the contexts, rather than having different meanings in different contexts (Stefik & Siebert, 2013).


Support for Abstraction :-

The process allows a programmer to define and deploy complex operations in such a way so that the details of implementation can be ignored. It is a vital aspect in the process of modern language designing. Data Abstraction and Procedural Abstraction are the two examples of the parameter (Meyer & Weske, 2012).

Expressivity :-

The expressivity of a programming language is improved due to the presence of strong operators in the language that helps programmers to achieve the operation of the program developed by them while writing fewer codes. APL is a typical example of expressivity, which is inclusive of many strong operators that are dependent on a large character set (Nelson, Guha, Dougherty, Fisler & Krishnamurthi, 2013).

It is generally seen that assembly or machine languages do not possess expressivity where each operation does something relatively simple. This is the reason why a single instruction in a high-level language can be translated into many instructions in an assembly language. Those languages that are functional languages are considered to be extremely expressive as the functions are ‘first-class’ entities (Nelson et al., 2013).

Type Checking :-

A programming language should have type checking, which means that it should have the capability to test for typing errors during the time of compilation and execution. The type checking process is better to be implemented at the time of compilation rather than during execution of a program. This is because, the process of type checking at the time of a program execution requires high runtime and it is less complex and less expensive to detect and repair such errors at the earlier phase of the program (Kastner, Apel, Thum & Saake, 2012).

An example can be cited in evidence of the theory mentioned above. In Java, the rule of type checking during compilation is very strict due to which the only type errors that occur during running time is caused due to explicit type casting by the programmer or from a wrong input (Kastner et al., 2012).


Exception Handling:-

It is the process of response that is provided at the time of occurrence of unusual or exceptional conditions that requires special processing. The process of exception handling often results in changing of the normal procedure of program execution. It is a powerful mechanism of handling the runtime errors to maintain the normal execution of an application (Sawadpong, Allen & Williams, 2012).

For example, suppose a programmer attempts to execute a program developed on a certain programming language that has ten statements. An exception occurrs in statement 4. In normal situation the rest of the statements from statement 1 to statement 3 and from statement 5 to statement 10 will also fail to execute. However, using exception handling will ensure that the rest of the statements are executed barring statement 4 (Sawadpong, Allen & Williams, 2012). This enables normality in the flow of the application. Therefore, exception handling is an important parameter that is required to be implemented in the conceptual programming language that will ensure a steady flow in the execution of a mobile application even if any exception occurs during runtime (Sawadpong, Allen & Williams, 2012).

The following figure shows a flowchart on the exception handling in a programming language –

Figure 1: Method of Exception Handling

(Source: Sawadpong, Allen & Williams, 2012)

Restricted Aliasing :-

Aliasing is a process that refers to two or more distinctly different names that address the same memory cell at the same instance. This process creates many issues at the time of compilation. Restricted Aliasing is a rule that is formulated to resolve this issue. The role of a restricted aliasing is to confirm the compiler that a pointer to something is not aliased to the restrict qualifier keyword. In certain situations a compiler expects that an alias will occur in which instance the restricted aliasing protocol confirms the compiler about the above-mentioned situation ("Strict Aliasing", 2017).

For example, in the statement provided below confirmation is given to the compiler that i1 and i2 will never point at the same memory location ("Strict Aliasing", 2017).

void foo(int * restrict i1, int * restrict i2);

The essay concludes with the fact that to design a conceptual programming language that can be used in the problem domain of mobile application development, it is necessary to implement the characteristics mentioned above wisely in the right forma



Amatya, S. &. (2014). Cross-platform mobile development: challenges and opportunities. In ICT Innovations , 219-229.

Danado, J. &. (2012). Puzzle: a visual-based environment for end user development in touch-based mobile phones. Human-centered software engineering , 199-216.

Design Criteria for Programming Languages. (2017). Retrieved August 28, 2017, from

Fernández, M. (2014). Programming languages and operational semantics: a concise overview. Springer .

Gabriel, R. P. (2012, October). The structure of a programming language revolution. In Proceedings of the ACM international symposium on New ideas, new paradigms, and reflections on programming and software. ACM , 195-214.

Gries, D. (. (2012). Programming methodology: a collection of articles by members of IFIP WG2. 3. Springer Science & Business Media .

Hsu, A. S. (2013). Language Learning From Positive Evidence, Reconsidered: A Simplicity?Based Approach. Topics in cognitive science , 5 (1), 35-55.

Joorabchi, M. E. (2013, October). Real challenges in mobile app development. In Empirical Software Engineering and Measurement, 2013 ACM/IEEE International Symposium on. IEEE , 15-24.

Kästner, C. A. (2012). Type checking annotation-based product lines. ACM Transactions on Software Engineering and Methodology (TOSEM) , 21 (3), 14.

Marcotty, M. &. (2012). The world of programming languages. Springer Science & Business Media .

McWherter, J. &. (2012). Professional mobile application development. John Wiley & Sons .

Meyer, A. &. (2012). Data support in process model abstraction. Conceptual Modeling , 292-306.

Nelson, T. G. (2013, August). A balance of power: Expressive, analyzable controller programming. In Proceedings of the second ACM SIGCOMM workshop on Hot topics in software defined networking. ACM , 79-84.

Notes on Chapter 1 of Sebesta's "Programming Languages". (2017). Retrieved August 28, 2017, from

Sawadpong, P. A. (2012, October). Exception handling defects: An empirical study. In High-Assurance Systems Engineering (HASE), 2012 IEEE 14th International Symposium on. IEEE , 90-97.

Stefik, A. &. (2013). An empirical investigation into programming language syntax. ACM Transactions on Computing Education (TOCE) , 13 (4), 19.

Strict Aliasing. (2017). Retrieved August 28, 2017, from

Teufel, B. (2012). Organization of programming languages. Springer Science & Business Media .

Vaupel, S. T. (n.d.). Model-driven development of mobile applications allowing role-driven variants. In International Conference on Model Driven Engineering Languages and Systems , 1-17.


Cite This Work

To export a reference to this article please select a referencing stye below:

My Assignment Help. (2018). Language Design For Mobile Application. Retrieved from

"Language Design For Mobile Application." My Assignment Help, 2018,

My Assignment Help (2018) Language Design For Mobile Application [Online]. Available from:
[Accessed 21 January 2020].

My Assignment Help. 'Language Design For Mobile Application' (My Assignment Help, 2018) <> accessed 21 January 2020.

My Assignment Help. Language Design For Mobile Application [Internet]. My Assignment Help. 2018 [cited 21 January 2020]. Available from:

With time, has become one of the best college essay writing services. Our all rounded services give students the confidence to overcome assignment related issues. Our services are fast enough to meet most urgent deadlines. We are capable of delivering fast essay writing services with the help of our specially designed provisions and writers' teams. Our urgent essay help services guarantee most rapid delivery of assignment solutions. Some of our most popular essay services are application essay help, exploratory essay help, literary review essay help and argumentative essay help.

Latest It Write Up Samples

BN206-Review Administration Systems

Download : 0 | Pages : 4

Answer: Introduction  The nano server in the windows is a new and improved server by windows. It provides user the option through which it is possible to install the windows server with the windows footprint that is possibly the lowest. The footprint is even smaller if compared to the server core. This is made possible through a smart technique that is controlled very efficiently [1]. In order to achieve this, the operating system is ref...

Read More arrow

ITECH5404-Business Process Architecture

Download : 0 | Pages : 8

Answer: Introduction In recent times it can be stated that most of the organisation directly rely on the functionality which is related to the process which is related to the process architecture is directly related to the business operation. The main concept which can be applied to the concept is that most of the complex and large projects are manipulated by the concept of the process architecture. The main functionality in this context can ...

Read More arrow

HI5019-Strategic Information System- Westpac Bank

Download : 0 | Pages : 14

Answer: Introduction In this report, the discussion is going to be done on the strategic information system of Westpac bank. Westpac bank is among the four major banks of Australia, with the headquarters located in the Sydney.  The westpac bank has divided in two segments, bank associated with the institution and the bank associated with consumer. Not only in Australia, Westpac bank holds a good rank in New Zealand. The bank had formed a...

Read More arrow

CIS2005 Principles Of Information Security 3

Download : 0 | Pages : 11

Answers: 1: CIA of information security is commonly described as the triad of information security. Confidentiality, Integrity and Availability are denoted by the term CIA. It is a model of information security that helps in evaluating organisation’s information security. Confidentiality is defined as ensuring authorized person is accessing data. Unauthorised access should be blocked to ensure information security. Disclosure of importa...

Read More arrow

MN502-Impact Of Ransom Eare In The Society

Download : 0 | Pages : 8

Answer: Introduction Ransom ware is a subset of the malicious software also known as malware invented from the cryptovirology which is designed to threaten the general public on account of stealing of data saved on either, computer or tablets. This software blocks the data of the person and the same is handed over to the person back once the money is received in the form of ransom [1]. The consequences of not giving the ransom can be so bad t...

Read More arrow

Save Time & improve Grades

Just share your requirements and get customized solutions on time.

We will use e-mail only for:

arrow Communication regarding your orders

arrow To send you invoices, and other billing info

arrow To provide you with information of offers and other benefits




Overall Rating



Our Amazing Features


On Time Delivery

Our writers make sure that all orders are submitted, prior to the deadline.


Plagiarism Free Work

Using reliable plagiarism detection software, only provide customized 100 percent original papers.


24 X 7 Live Help

Feel free to contact our assignment writing services any time via phone, email or live chat.


Services For All Subjects

Our writers can provide you professional writing assistance on any subject at any level.


Best Price Guarantee

Our best price guarantee ensures that the features we offer cannot be matched by any of the competitors.

Our Experts

Assignment writing guide
student rating student rating student rating student rating student rating 4/5

2594 Order Completed

95% Response Time

Michael Johnson

Masters of MSc in Economics

Washington, United States

Hire Me
Assignment writing guide
student rating student rating student rating student rating student rating 5/5

234 Order Completed

100% Response Time

Samantha Ji

PhD in Chemistry with Specialization in Organic

Singapore, Singapore

Hire Me
Assignment writing guide
student rating student rating student rating student rating student rating 5/5

440 Order Completed

99% Response Time

Jack Arens


London, United Kingdom

Hire Me
Assignment writing guide
student rating student rating student rating student rating student rating 5/5

798 Order Completed

97% Response Time

Benjamin Blakeman

MSc in Medical Technology

London, United Kingdom

Hire Me

FREE Tools


Plagiarism Checker

Get all your documents checked for plagiarism or duplicacy with us.


Essay Typer

Get different kinds of essays typed in minutes with clicks.


GPA Calculator

Calculate your semester grades and cumulative GPa with our GPA Calculator.


Chemical Equation Balancer

Balance any chemical equation in minutes just by entering the formula.


Word Counter & Page Calculator

Calculate the number of words and number of pages of all your academic documents.

Refer Just 5 Friends to Earn More than $2000

Check your estimated earning as per your ability




Your Approx Earning

Live Review

Our Mission Client Satisfaction

One of the best service provider fully satisfied with you guys. On time delivery of task.


User Id: 253575 - 21 Jan 2020


student rating student rating student rating student rating student rating

That was a very impressive work. That was a very impressive work. That was a very impressive work. That was a very impressive work. That was a very impressive work.


User Id: 336418 - 21 Jan 2020


student rating student rating student rating student rating student rating

Nice work Nice work Nice work Nice work Nice work Nice work Nice work Nice work Nice work Nice work Nice work Nice work


User Id: 256084 - 21 Jan 2020


student rating student rating student rating student rating student rating

Great service Great service Great service Great service Great service Great service Great service Great service Great service Great service Great service Great service Great service Great service Great service Great service


User Id: 256084 - 21 Jan 2020


student rating student rating student rating student rating student rating
callback request mobile
Have any Query?