Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Difference between Systems programming language and Application programming languages

What are the differences between a systems programming language and Application programming language?

like image 978
Srinivas Reddy Thatiparthy Avatar asked Dec 03 '10 06:12

Srinivas Reddy Thatiparthy


People also ask

What is the difference between system programing and application programming?

The system programs are used to program the operating system software. While application programs provide software that is used directly by the user, system programs provide software that are used by other systems such as SaaS applications, computational science applications etc.

What is system programming language and application programming language?

A system programming language is a programming language used for system programming; such languages are designed for writing system software, which usually requires different development approaches when compared with application software.

Is programming language a system software or application software?

Hi, Yes definitely. Any other software other than system software such as assembler, debugger or any programming specific to a processor falls under application software.

What is the difference between ISP and IAP?

An IAP (Internet access provider) is a company that provides individuals and other ISP companies access to the Internet. An IAP is a type of Internet service provider (ISP). (The other main service that an ISP provides is Web site building and virtual hosting.)

What is the difference between system programming and application programming?

System programming is used to write low level instructions. Application Programming! It is the set of programs that view computer as a tool for solving a particular problem. Application programming is used to build application software which includes software. Application software is a software that are been used by the end user.

What is a system programming language?

A system programming language is a programming language used for system programming; such languages are designed for writing system software, which usually requires different development approaches when compared with application software. Edsger Dijkstra refers to these language as Machine Oriented High Order Languages, or mohol.

What's the difference between scripting and programming languages?

What's the difference between Scripting and Programming Languages? - GeeksforGeeks What’s the difference between Scripting and Programming Languages? Basically, all scripting languages are programming languages. The theoretical difference between the two is that scripting languages do not require the compilation step and are rather interpreted.

What are the different types of programming languages?

This is all about the differences between programming languages and few major programming languages are discussed. And, the remaining languages like Tcl, Python, Smalltalk, COBOL, C# and Prolog are similar to the above languages which are discussed. But selecting the suitable language for developing a program or application is very important


1 Answers

A few factors should in my opinon come into consideration

  1. In a system programming language you must be able to reach low-level stuff, getting close to the real hardware world. In an application language instead there is a sort of "virtual world" (hopefully nicer and easier to interact with) that has been designed with the language and you only need to be able to cope with that.

  2. In a system programming language there should be no concession in terms of performance. One must be able to write code that squeezes out all the juice from the hardware. This is not the biggest concern in an application programming language, where the time needed to actually write the program plays instead a greater role.

  3. Because of 2 a system programming language is free to assume that the programmer makes no mistake and so there will be no "runtime error" guards. For example indexing out of an array is going to mean the end of the world unless the hardware gives those checks for free (but in that case you could probably choose less expensive or faster hardware instead). The idea is that if you assume that the code is correct there is no point in paying even a small price for checking the impossible. Also a system programming language shouldn't get into the way trying to forbid the programmer doing something s/he wants to do intentionally... the assumption is that s/he knows that is the right thing to do. In an application programming language instead it's considered good helping the programmer with checking code and also trying to force the code to use certain philosophical schemas. In application programming languages things like execution speed, typing time and code size can be sacrificed trying to help programmers avoiding shooting themselves.

  4. Because of 3 a system programming language will be much harder to learn by experimentation. In a sense they're sort of powerful but dangerous tools that one should use carefully thinking to every single statement and for the same reason they're languages where debugging is much harder. In application programming languages instead the try-and-see approach may be reasonable (if the virtual world abstraction is not leaking too much) and letting errors in to remove them later is considered a viable option.

like image 114
6502 Avatar answered Sep 30 '22 15:09

6502