• No results found

Chapter 2: Materials and methods

3.2 Exploring the cellular source of elevated IL-6 in PMR patients

3.2.1 Optimising the staining procedure

Computer Programming Language are as indicated in Table 14 below:

Generation Language/Type Content

1 Machine language Use binary coded instruction such as 010101000001001

2 Assembly Language Use symbolic coded instruction such as Sub a, b

3 Procedure language Use procedural statements or arithmetic notation such as C; Basic

4 Object Oriented Language Use natural language and nonprocedural statements and a combination of object and procedures such as C++; Objective-C;

Java, Visual Basic; Net

5 Artificial intelligence Combination of natural language(voices) and symbols

Table 14:Generation of computer language Self-assessment Exercise

a. What are computer programming languages?

b. Explain any five reasons for studying computer programming languages The following are some of the major popular programming languages:

Windows Applications: C#, Visual C++, Visual Basic.Net, DirectX API‘s, HTML 5, Java

Mac OS Applications: Objective C, X Code with Cocoa Framework, Java

iPhone Apps: Objective C with Cocoa Framework

Android Apps: Java and some C#

Web Pages: HTML, CSS, Flash, JavaScript, Java, PHP, Perl, ASP.net

TV’s & Electronics: Assembly and C#

3.6 Why are there many computer programming languages in the world?

Languages evolve with people. And people have their own tastes and their own latitudes and cultures. In a nutshell, there are so many languages for the same reasons we have different tongues: different cultures, communities, aesthetics and means. (Think of HTML, vs a Shell script language. In the past

ALGOL, was a quite popular language during the 70'. PL\SQL, Pascal, Delphi, Fox Pro and many others, uses a decantation of it syntax C as a graceful simple syntax, which has been replicated in C#,C++, Java, JavaScript, Groovy, PHP, etc. Perl syntax was implemented in Python, Ruby and Groovy. The following are other reasons for the development of so many programming languages in the world:

 That there are many different types of programs and computers. Some programming languages are designed to be used by many different computer configurations and operating systems

 Different tools for different jobs. Programming languages are tools, and we choose different tools for different jobs. For example, Ruby and JavaScript are great for building web sites; Java and C++ are often used for financial trading; Python and R are the tools of choice for analyzing statistics

 Developers have tastes. Beyond mere utility, developers choose tools based on personal tastes. As such, people have to use a programming language as a tool for humans to expression of ideas to computers which is a natural variety in the way our minds work.

 People first. Beyond utility, and beyond taste, businesses run on people. Often, you will choose a programming language based on what you, or the people around you, know.

 Variety is strength. As such we have a variety of programming languages because there is a variety of jobs to be done and a variety of people who do those jobs. This diversity makes interesting programs, and interesting companies, and interesting careers possible

 Some languages just control elements inside of a program, (these are usually referred to as scripting languages such as HTML) while others define and create the entire program themselves (these are referred to as system programming languages like C++).

 We have an abundance, perhaps an over abundance, of programming languages

 we are discovering/creating new sorts of programming

 Programming for a smart phone (App Inventor, Touch Develop) is different from programming for the web which is very different for creating old-fashioned batch programming on mainframes (anyone else remember COBOL

 And there are new paradigms (or at least increased importance of those paradigms) such as parallel processing (which used to be almost exclusively FORTRAN with extensions and is now often functional programming languages like F#).

 Also computer scientists are coming up with new programming ideas such as anonymous classes

 These new programs do not fit easily into existing languages because they require big changes to the language

 With new power comes new complexity though. The languages that professional developers use become harder and harder to use for training beginner programmers

 The gap between beginner languages and professional languages is growing over time.

 Today many people (teachers often more than students) find the professional development tools (IDEs like Visual Studio or Eclipse) so complex that even though they could probably learn small subsets of a language the IDE adds more to the learning curve. This in part drives the interest in easier to use tools (think BlueJ or Small Basic) or easier languages (block languages or increasingly Python) for teaching purposes

 Change is the big constant in computer science and computer science education

 To teach programming. every language designed since binary has existed to make it easier for humans to write reliable, human-readable instructions for a machine, without anyone clawing their eyes out from the boredom and redundancy of writing in binary

 making real-life gadgets is often the most palatable way into programming concepts for people who are turned off just staring at code

 The ego copy. Person would attempt to do things their own way, Best Way

 Abstraction. People are always trying to create reusable bits of code, because they seek to not repeat themselves.

 New Infrastructure. you need a new language because there are tectonic changes that need adapting to

 Many developers would already prefer to have their apps running as services, because a website has lots of advantages making web apps cheaper to run at scale has caused an explosion in popularity for Node.js, which is written in JavaScript.

 Culture. Programming languages are made by people for other people. As a result, they carry all the cultural artifacts of their makers, and some of those cultural artifacts are turnoffs to other groups of engineers, who turn around and make their own version

 Because there are choices to be made:

 Mode of specification: Imperative vs. functional

 Typing: Statically typed vs. dynamically typed

 Order of evaluation: call-by-value vs. call-by-name

 Modularity: class-based vs. abstract data type-based

 Execution model: sequential vs. concurrent 4.0 Conclusion

Computer programming languages are means by which programmers manipulate the computer. The programming languages emanates from the need to program the computer in languages that would be easy for non-experts to understand and to reduce the enormity of task involved in writing programs in machine code. Programming languages have evolved from the machine language to assembly language, high level language and very high level

programming language and artificial intelligence because many of culture, new infrastructure, ego copy, and many people want it translated into their own languages.

5.0 Summary

We summarize the study of computer programming language as follows:

a. Machine language is the binary language and is made up of only 0s and 1s which represent the ‗off‘ and ‗on‘ stages of a computer‘s electrical circuits.

b. Assembly language has a one-to-one relationship with machine language, but uses symbols and mnemonics for particular items. Assembly language, like machine language, is hardware specific, and is translated into machine language by an assembler.

c. High level languages are usable on different machines and are designed for similar applications rather than similar hardware. They are procedural in that they describe the logical procedures needed to achieve a particular result. High level languages are translated into machine language by a compiler or an interpreter.

d. In a high level language one specifies the logical procedures that have to be performed to achieve a result. In a fourth generation language, one needs to simply define the result one wants, and the requisite program instructions will be generated by the fourth generation software. Fourth generation languages are used in fourth generation systems in which a number of development tools are integrated in one environment.

e. In the fifth generation computer, a programmer needs to specify the logical procedures with voices and sound both audio and visual

6.0 Tutor-Marked Assignment

Explain any five reasons for having so many programming languages in the world today.

7.0 References and Further Reading

More recent editions of these books are recommended for further reading.

Appleby, D. and VandeKopple, J.J. (1997). Programming Languages Paradigm and Practice. New York: McGraw-Hill International

Bennett, R.E (1987). ―Identifying a purpose for Computer Education Programs‖. In Bennett, R.E (Ed). Planning and Evaluating Computer Education Programs. Columbus:

Merrill Publishing

Bradley, R. (1995). Understanding Computer Science for Advanced Level. 3rd Ed. London:

Stanley Thornes.

Capron, H.L. (1998). Computers: Tools for an Information Age. 5th Ed. Reading: Addison-Wesley.

Different Types of Keyboards - Buzzle (2013). Retrieved from:

www.buzzle.com/articles/different-types-of-keyboards.html Doyle, S.(2003). ICT for You. London: Edexcel.

French, C.S. (1998). Computer Science. 5th Ed. London. Letts Educational Aldine Place.

Gusen, J.N. Computer Made Easy. Jos. University Press.

Gusen, J.N. Ramson, E.N. and Ugwuanyi, F.O.(2009). Introduction to Computer Studies. In Gusen, J.N. et al (Eds.). Introduction to Computer Studies. Pankshin: Aureka Academic Foundation, FCE Pankshin

Gusen, J.N. (2014). 2523 questions and Answers on ICT. Jos: Deka Enterprises.

Heathcote, P.M. (2000). ―AS‖ Level ICT. Great Britain. W.M West Midland.

Mangal, S.K. and Mangal, U.(2009). Essentials of Educational Technology. New Delhi. PHI Learning. International.

Parker, C.S. (1992). Understanding Computers and Information Processing Today and Tomorrow 4th Ed. New York. The Dryden Press.

Pratt, T.W. and Zelkowitz, M.V. (2001). Programming Languages: Design and Implementation. New Delhi. Prentice-Hall of India

Radlow, J. (1986). Computers and the Information Society. New York. McGraw-Hill Book.

Ram, B. (2008). Computer Fundamentals: Architecture and Organization, 4th Ed. New Delhi.

New Age International Publishers.

Sharp, V. (1996). Computer Education for Teachers. Boston: McGraw Hill.

Turban, E., Rainer, R., Potter, R.E., (2007). Introduction to Information Technology, 2nd Ed.

New Delhi. Wiley Indian Edition.