Disclaimer: This is an example of a student written essay.
Click here for sample essays written by our professional writers.

Any opinions, findings, conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of UKEssays.com.

Evolution of Server-side Technologies

Paper Type: Free Essay Subject: Computer Science
Wordcount: 3476 words Published: 4th Apr 2018

Reference this

  • Chris Avgerinos

Introduction

A fundamental change has been occurring for the last fifteen years in the way people write computer programs. Scripting languages such as Perl and Tcl replaced the system programming languages such as C and C++.

There are tremendous differences between the languages due to the fact that scripting languages were designed for completely different tasks than system programming languages. The main operations of system programming languages are for building data structures and algorithms from the beginning using elements such as words of memory. Scripting languages assume the sets of powerful components and connect them together. Management of complexity is the main use of system programming languages. On the other hand, scripting languages simplify connections between components and provide rapid application development. (J.Ousterhout, 1998)

The main focus of this paper is the evolution of scripting languages and the improvements on web-applications.

The history of Scripting Language

Scripting is as old as computers due to the fact that in order to use a computer you would need scripting. It begun in the 1950s and ‘60s were programmers subjected punch cards into mainframe operators and the machines used to ran in batch mode. The first scripting language was Job Control Language (JCL) and while they were very functional, their response time was very slow. (Delony, 2012)

Get Help With Your Essay

If you need assistance with writing your essay, our professional essay writing service is here to help!

Essay Writing Service

The idea of scriptable shells came into practice in the 1960s when programmers started developing interactive time-sharing systems. One of the earliest projects was MULTICS and late when some of the Bell Labs programmers left the project, they created another project called UNIX using their own system that they used in the MULTICS project. UNIX shells made it possible to do various complex tasks in one line of shell code using the ability to send the output of one program into the input of another. (Delony, 2012)

In 1987, Larry Wall created Perl which was popular in the 90s for creating web-applications. Languages such as Python and ruby were invented and Python was the main rival of Perl. (Delony, 2012)

Application areas

In this section of the paper, we are going to categorize these languages in order to analyze them correctly. The four main categories are Command, Application, Markup and Universal scripting languages.

Command scripting languages

These are the oldest class of scripting languages appearing in 1960 when there was a great need for programs and task control managers. As we said before, the most famous of the earliest languages was JCL which was created for IBM OS/360 operating systems. We have also Sed and Awk which were text-processing languages. These languages were the first to include regular expression matching and later implemented into Perl. (A.Kanavin, 2002)

Application scripting languages

These languages were created in 1980s. Such a language was Microsoft-created Visual Basic and later crated its subset Visual basic for application programming. It emphasizes on user interface programming and component embedding. Later on, earlier languages such as Word Basic and Excel Macro Language were replaced by VBA as the main language for programming Microsoft office suite. Its influence spread and soon VBScript and LotusScript adapted these changes.

Name

Year of creation

Developers

Organization

Pilot

1962

IBM

JCL

1964

IBM

RPG

1965

IBM

MUMPS

1969

Okto Barnett+

Massachusetts General Hospital

Sh

1971

Stave Bourne

AT&T Bell Labs

Awk

1977

Alfred Aho+

AT&T Bell Labs

csh

1978

UC Berkeley

Rexx

1979

Michael Qualishow

IBM UK Laboratories

AppleScript

1993

Apple Computer

Table 1: Command Scripting Languages

In this class we have also JavaScript which is client parts of web-programming projects. This language has a few dialects such as Jscript and it was first introduced in the Netscape Navigator 2.0 browser. (A.Kanavin, 2002)

Name

Year of creation

Developers

Organization

Hyper Talk

1986

Apple Computer

Visual Basic

1990

Microsoft

JavaScript

1994

Netscape Communications

CorelScript

1995

Corel

LotusScript

1995

Lotus Development

VBScript

1995

Microsoft

Pnuts

2001

Toyokasu Tomatsu

Sun Microsystems

Table 2: Command Scripting Languages

Markup Languages

Markup languages differ from the other languages due to the fact that they are not programming languages rather than special command words called ‘tags’ that markup parts of text documents which later used by programs called ’processors’ and had the ability to transform a text so it could be displayed in the browser or converting it to some other data format. The main use of Markup languages is the separation of contents and structures. In addition, they include formatting commands and interactive objects into documents. (A.Kanavin, 2002)

In 1969, GML (Generic markup Language) was the first Markup language that was created by IBM. Based on the idea of GML, ISO created a standard called SGML in 1986. Among the Markup languages, TeX, HTML and XHTML became the most known languages. In 1979, Donald Knuth, created Tex which was basically designed precise description of how the documents look overlooking the complexity of the structure. This language aim at people who do not necessarily need to know how to program in contrast with Postscript, which was created by Adobe. In the scientific community, TeX achieved enormous popularity because it can fulfil the need for high-quality rendering of complex formulas.

HTML is the basic language of the World Wide Web. It is basically an SGML application.

XML is a simpler and streamlined version of SGML which emphasizes on transporting, storing data and exchange data between all kinds of systems. It is used for transforming complex data and hierarchical storing data. HTML was redefined in the terms of XML in 2001 and it was called XHTML. (A.Kanavin, 2002)

Name

Year of Creation

Developers

Organization

GML

1969

Charles Goldfarb+

IBM

TeX

1979

Donald Knuth

Stanford University

SGML

1986

ISO

HTML

1991

Tim Berners-Lee

CERN

CFML (Cold Fusion)

1995

Allaire

DHTML

1996

Microsoft

XML

1997

W3C

W3C

XHTML

2001

W3C

Table 3: Markup Languages

Universal scripting languages

In this class, we have the languages that are well-known and were originally created for the UNIX environment. However, the goals were very different. The Perl programming language was made for report generation but it became known for its enormous popularity is the ability to write simple and efficient CGI scripts for forming dynamic web pages.

First, Python was a tool for accessing system services of the experimental operating system Amoeba but later on, it became an object-oriented scripting language. Applications languages exist that are used by Microsoft.NET platform.

Tcl was mainly used as an application extension but it was first created as string processing and close integration with Tk library. It differs from Perl and Python because it relies on C and C++ extensions. Other languages appeared with web services. PHP is the most popular language and is a combination of HTML and traditional programming procedures. (A.Kanavin, 2002)

Name

Year of Creation

Developers

Organization

Perl

1986

Larry Wall

Tcl

1990

John Ousterhaut

UC Berkeley

Python

1991

Guido Van Rossum

Stichting Mathematisch Centrum

Ruby

1993

Yukihiro Matsumoto

Euphoria

1993

R. Craig

Rapid Deployment Software

Luea

1994

U. Tseles+

PUC-Rio

PHP

1995

Rasmus Lerdordf

Mawl

1995

D. Ladd+

Pike

1996

Frederik Hubinett

Informations Vavarna

Curl

2000

Steve Ward+

MIT Lab for Computer Science

Table 4: Universal Scripting Languages

Languages overview

Python

Python is an object-oriented language which provides high-level data structures. For example, associative arrays, dynamic typing and binding, etc. Python is a powerful programming language that has a flexible and simple syntax. In 1990, Guido van Rossum created Python and since then it is free and can be run on any computer.

Python is modular by nature meaning that the core of Python can be extended by importing new extensions. Various standard extensions for operations such as script manipulations and Perl-like extensions are included in the Python distribution. Moreover, it has Graphical User Interface (GUI) generators, web-related utilities, operating system services, etc. Furthermore, we can create new extensions with new or old code. There has been a remarkable amount of extensions that have been created such as GADFLY, which is an SQL database manager written in Python, PIL the Python imaging library, FNORB, OmniBorker, Numeric Python, etc.(Sanner, 1999)

Figure 1: “The molecule viewer application showing the protein Carmbin (1crn) with its secondary structure shown as a ribbon. The molecular surfaces corresponding to helix1 and sheet2 are displayed and colored using, respectively the “RASMOL residue” coloring scheme and the “by atom type” coloring scheme. Some pull down menus have been torn off to show the commands they provide. This set of commands can be extended dynamically by loading modules and commands from libraries.”(Sanner, 1999)

Perl

Perl was created in 1986 by Larry Wall and is basically a combination of C and various UNIX utilities and the convenience of shell scripting. Some of the languages strength is: easily accessing regular expressions, lists, associative arrays, the ability to treat any value as a string, resource management has become automatic. And if you want to create something, you can do it with many ways. This is called TIMTOWTDI (There Is More Than One Way To Do It).

In order to handle complexity, you can use object-orientation. However, some languages force the use of it and usually add unnecessary complexity to almost every project. To tackle this problem, Perl added support for objects; it did so in a way that complex modeling can be achieved if needed.(Chip, n.d.)

#!/usr/local/bin/perl

$count = 0;

while () {

@w = split;

$count++;

for ($i=0; $i<=$#w; $i++) {

$s[$i] += $w[$i];

}

}

for ($i=0; $i<=$#w; $i++) {

print $s[$i]/$count, “t”;

}

print “n”;

“This is a simple script that computes the average of each column in a table of data. It shows one common usage: read in the data and split each line directly to “words” and store these words in an array.”

LISP

The LISP language is designed for symbolic data processing using differential and integral calculus, electrical circuit theory, mathematical logic, game playing and other various fields of artificial intelligence. Since LISP is mathematical language, it is possible to give a complete description of it. It is different from other languages in three ways. First of all, it differs in the nature of the data. S-expressions are data arc in the form of symbolic expressions. Significant sub-expressions can be readily isolated due to the fact that S-expressions have indefinite length and a branching tree type of structure. The source of the language itself is the second difference from the other languages because it specifies in what way the S-expressions are to be processed. The third and final difference of LISP is that it can interpret and execute programs written in the form of S-expressions.(McCarthy, 1965)

(defparameter *small* 1)

(defparameter *big* 100)

(defun guess-my-number ()

(ash (+ *small* *big*) -1))

(defun smaller ()

(setf *big* (1- (guess-my-number)))

(guess-my-number))

(defun bigger ()

(setf *small* (1+ (guess-my-number)))

(guess-my-number))

(defun start-over ()

(defparameter *small* 1)

(defparameter *big* 100)

(guess-my-number))

“This is a super simple number guessing game. It’s also designed to illustrate what it’s like to work within a REPL.”

Improving Web Application performance

The need for Client-Side Scripting

Nowadays, people expect that web applications function just like a windows application due to the fact that web applications have become more powerful and sophisticated. Basically, web applications reside the source code and assemblies and are processed on a web server. What a web server does is that it accepts an incoming HTTP request and then it returns the requested resource in an HTTP response. (Fote, 2013)

Find Out How UKEssays.com Can Help You!

Our academic experts are ready and waiting to assist with any writing project you may have. From simple essay plans, through to full dissertations, you can guarantee we have a service perfectly matched to your needs.

View our services

The process of submitting an ASP.NET page to the server for processing is called PostBack. The HTML page is sent to the web server every time a PostBack happens. What happens is this: the server loads the page, it processes events and renders the new HTML back to the client but on a PostBack the entire page is refreshed. Due to the fact that large web applications consume large amount of view state, it can be very consuming for the client and as a result it will become a major problem for the web server. (Fote, 2013)

Inside a client’s HTML page, there are embedded scripts which are called Client-Side scripting. What it does is that the code will be processed on the client machine rather than perform a PostBack to the web-server. Moreover, it is basically used for navigating on pages, date validation and formatting and the language that is used is JavaScript which is compatible to any browser. Client-Side scripting has two benefits. The first is that it is very fast and the second is that it requires fewer resources an the web-server. (Fote, 2013)

Ajax

Part of Ajax is an object called XMLHttpRequest. What Ajax does is that it makes possible the transfer of data between the browser and the server, using XMLHttpRequest API, without having to reload the web page. This object quickly become popular and web applications such as Google maps and Gmail were created using XMLHttpRequest to get new map titles without reloading the page.

The requests that Ajax uses, are triggered by JavaScript code. This is what happens: your code sends a request to a URL, and then it receives a response, that triggers a callback function to handle the response. The rest of the code continues to execute while the request is being process due to the fact that the request is asynchronous.(“Ajax | jQuery Learning Center,” n.d.)

Conclusion

To conclude, server-side technologies have been greatly evolved over the years. Languages such as Python, HTML and Perl have raised the standards of scripting languages. Web applications have been improved with the help of Client-Side technologies such as Ajax which played a significant role in the improvement of web applications. I believe that in the future we will see new languages that will surpass the current languages by far.

References

A.Kanavin, An overview of scripting languages (2002) Lappeenranta University of Technology [online] Available at: http://www.sensi.org/~ak/impit/studies/report.pdf Date of Access: 25/3/2014

Ajax | jQuery Learning Center, n.d.

Chip, n.d. The ascent of scripting languages. Geeks Are Sexy Technol. News.

Delony, D., 2012. Scripting Languages 101 [WWW Document]. Techopedia.com. URL http://www.techopedia.com/2/28762/development/programming-languages/scripting-languages-101 (accessed 3.12.14).

Fote, B., 2013. How Does Client-Side Scripting Improve Web Application Performance? [WWW Document]. Segue Technol. URL http://www.seguetech.com/blog/2013/02/07/what-are-the-pros-and-cons-of-client-side-scripting (accessed 3.13.14).

J.Ousterhout, Scripting: Higher Level Programming for the 21st Century (1998) Tcl Developer Xchange [online] Available at: http://www.tcl.tk/doc/scripting.html Date of Access: 25/3/2014

McCarthy, J., 1965. LISP 1.5 Programmer’s Manual. MIT Press.

Sanner, M.F., 1999. Python: a programming language for software integration and development. J Mol Graph Model 17, 57–61.

 

Cite This Work

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

Reference Copied to Clipboard.
Reference Copied to Clipboard.
Reference Copied to Clipboard.
Reference Copied to Clipboard.
Reference Copied to Clipboard.
Reference Copied to Clipboard.
Reference Copied to Clipboard.

Related Services

View all

DMCA / Removal Request

If you are the original writer of this essay and no longer wish to have your work published on UKEssays.com then please: