Programming Language Concept
September 30th, 2017
in that day’s session we discuss about the sub-chapter of the programming language concept and what we gonna learn in programming language concept course.
as you can see in the picture there about 6 branches (sub-chapter) that links to the introduction of Programming Language concept, and each branch has their own branches that links to the detail of each sub-chapter, so lets get started.
first of all is Why, Why should we learn Programming Language Concept ? as we know in the last session we discuss last week, Programming language is important because it defines the relationship, semantics and grammar which allows the programmers to effectively communicate with the machines that they program. A programming language serves several purposes: You can instruct the computer what
to do in a human-readable form.
by knowing the basic concept of programming language, we could learn a new programming language to communicate and compute with computers, find a new way to express our ideas with an advance system in a advance programming language and then we could implement it in the world that we live in to create a better world.
the second branch is about Programming domain, A programming domain defines a specific kind of use for a programming language. as we look in the branches we could programming language for a specific kind of use, such as :
- Scientific Apps, where we could help scientist in the least way through technology
- Business Apps, Like Financial modeling , is the task of building an abstract representation (a model) of a real world financial situation. This is a mathematical model designed to represent (a simplified version of) the performance of a financial asset or portfolio of a business, project, or any other investment. Financial modeling is a general term that means different things to different users; the reference usually relates either to accounting and corporate finance applications,Like :1. Business valuation, especially discounted cash flow, but including other valuation problems;
2.Scenario planning and management decision making (“what is”; “what if”; “what has to be done”);
3.Capital budgeting;
4.Cost of capital (i.e. WACC) calculations;
5.Financial statement analysis (including of operating- and finance leases, and R&D) ;
6.Project finance - Artificial Intelligent, Automated reasoning is an area of computer science and mathematical logic dedicated to understanding different aspects of reasoning. The study of automated reasoning helps produce computer programs that allow computers to reason completely, or nearly completely, automatically.
- Software Programming, This type of programming is used in software engineering to tell computers what functions to perform. The programs must be written for a specific operating system or for cross-platform use.
- Web Programming, Web development is a broad term for the work involved in developing a web site for the Internet (World Wide Web) or an intranet (a private network). Web development can range from developing the simplest static single page of plain text to the most complex web-based internet applications (or just ‘web apps’) electronic businesses, and social network services
the third branch is about the evaluation of language criteria, about its writeability(is it easy to create), about its reliability (does it perfoms well), and finally, its cost (the expenses that the creator uses to build the project).
the forth branch is about influences on programming design, in here we will learn about computer architecture(computer architecture is a set of rules and methods that describe the functionality, organization, and implementation ofcomputer systems. Some definitions of architecture define it as describing the capabilities and programming model of a computer but not a particular implementation.), and Programming design and methodologist(the way of solving the problems with computer and how to design the good algorithms so that the computer can solve the problem accurately and efficiently).
the fifth branch we talk about Language Categories, and these are :
- imperative, imperative programming is a programming paradigm that uses statements that change a program’s state. In much the same way that the imperative mood in natural languages expresses commands, an imperative program consists of commands for the computer to perform.
- object-oriented programming, Object–oriented programming (OOP) is aprogramming language model organized aroundobjects rather than “actions” and data rather than logic. Historically, a program has been viewed as a logical procedure that takes input data, processes it, and produces output data.
- logic, Logic programming is a type of programming paradigm which is largely based on formal logic. Any program written in a logic programming language is a set of sentences in logical form, expressing facts and rules about some problem domain.
- scripting language, A scripting or script language is a programming language that supports scripts: programs written for a special run-time environment that automate the execution of tasks that could alternatively be executed one-by-one by a human operator.Scripting languages are often interpreted (rather than compiled).
and the last branch, the sixth branch we will talk about Implementation, A programming language implementation is a system for executing computer programs.There are two general approaches to programming language implementation:
- Compilation: A compiler takes as input a program in some language, and translates that program into some other language, which may serve as input to another interpreter or another compiler.
- Pure – Interpretation: An interpreter takes as input a program in some language, and performs the actions written in that language on some machine.
- Hybrid Implementation System: The implementation of a hierarchical, process-oriented programming language for simulation (HSL) is described. It features a hybrid approach, involving the front end of a compiler and the back end of an interpreter. An HSL program is dichotomous in structure.
thats it about the summary of session 2, i hope you guys enjoy reading it, Thank you.
Sources :
https://en.wikipedia.org/wiki/