Essay Available:
You are here: Home → Research Paper → Technology
Pages:
6 pages/≈1650 words
Sources:
Level:
APA
Subject:
Technology
Type:
Research Paper
Language:
English (U.S.)
Document:
MS Word
Date:
Total cost:
$ 38.88
Topic:
Programming with Natural Language (Research Paper Sample)
Instructions:
The research paper was based on researching on programming with natural languages. source..
Content:
YourFirstName YourLastNameInstructor's NameCourse Title16 August 2014
Programming With Natural Language
AbstractThis paper is a focus on programming using natural languages. It will also note key challenges posed by the current programming languages. Natural language programming an ongoing field of study and the focus will be on the current characteristics that have been established by the researchers. The paper will also look at the possible merits the natural languages provide as well the drawbacks and challenges faced in pursuit of this advanced technology.IntroductionProgramming has been one of tools that have allowed huge strides in the computing field. Programming has transformed the computer hardware from being just an electronic device to being a multipurpose machine. Programming is often regarded as a process of transforming a mental plan that is in familiar terms into one that is compatible with a computer (Pane, Ratanamahatana & Myers 2). During the early years of the computer industry, computers were made for complicated calculations and simulations and pretty much nothing else. Today the computers purpose has evolved and the user expectations have changed. The end user want to play music, play video games, create word documents on their computers but this was not the initial intention of the first computer scientists. Fundamentally however the principles of computing devices have remained the same all through albeit the hardware is more complicated and a million times faster (Knoll & Mezini 542).Currently computers slavishly follow the instructions provided by the programmer. It is therefore crucial that if there is anything that will be accomplished using this computer, then the programmer will have to outline everything in excruciating detail (Cozzie & King 1). In the efficient development of computer programs, it will include three general phases. One is the conceptualization of a program idea. Secondly we have the translation of the idea in to a form that the computer can understand and finally the implementation of the idea. For an efficient process therefore, it would mean that the programmer should spend more time coming up with idea compared with the time taken to implement it. Unfortunately in our current situation, more time is spent debugging the programs and not coming up with new ideas. The other challenge facing current programming languages it the rate at which they evolve. Currently the best programming languages are object-oriented programming languages but the question is; how many are there? The answer is ‘numerous’ and all with different syntax. For a computer scientist this is not really a concern since adapting to new programming techniques is part of their ‘work hazard’ however there are other professionals such as mathematicians, physicists and engineers who develop computer programs for the purposes of their professions . They however end up using outdated programming techniques since they don’t have the time to learn about the newest programming techniques (Knoll & Mezini 543).Natural Language ProgrammingThere are many challenges that can be attributes to the current programming techniques. There has however been research to develop a new technique for developing computer programs. The ability to make program using a natural language i.e. using everyday speech was solve many problems for the computing world. For example, it would alienate the need to learn different programming languages for non-computer scientist. It would improve the productivity of software engineers and developers as well as reduce the number of bugs in programs.The idea of programming using a natural language has been entertained by computer scientist since the onset of computer programming. Programming using a natural language is also known as naturalistic programming, which means programming with the aid of a natural language (Knoll & Mezini 542). According to a feasibility study conducted on naturalistic programming, people want computers that are easier to use, computers which you ‘tell’ what you want and they figure it out (Lieberman & Liu 1). The ability to tell a computer what to want you want in plain speech would be considered as ‘AI complete’ and most computer scientists have termed it as impossible. Researchers have been undeterred by such conclusions and have soldiered on in their research. Naturalistic Programming is based on the model of human thinking. Human beings have perceptions which constitute a set of ideas. Naturalistic programming involves capturing this ideas and reflecting them in a natural language and then into a computer program (Knoll & Mezini 544 - 548).Characteristics of a Natural Language and Naturalistic ProgrammingWhen developing a naturalistic programming language there are certain characteristics about a natural language that must be kept in mind. Not all characteristics affect programming but in comparison with the contemporary programming languages there are three distinctive features that don’t compare well. These are implicit referencing, compression and context dependence.On implicit referencing, natural languages make the use of pronouns like ‘it’, ‘she’ or ‘he’ to represent objects. These words have inherent meaning when used alone and usually refer to other parts of a sentence used prior to their use. In contemporary programming languages explicit referencing is used where all entities in a program are named using concrete and unique names. It is important to note that the use of implicit referencing reduces the amount of information exchanged thus reducing redundancy.The second characteristic is compression. Compression refers to the expression of several ideas in one sentence using fewer words. Compression includes both syntactic and semantic compression. Syntactic compression refers to the expression of two ideas using structural words such as ‘and’ or ‘then’. Semantic compression refers to use of statements whose use alone have no meaning but when used in a sentence represent different ideas, for example: “First, go over the array from left to right, then the other way around.” The phrase ‘the other way around’ provides semantic compression.The final characteristic that this paper will point out is context independence. Traditional programming languages excel at being context free but natural languages on the other hand are not context free in the least bit. Natural languages can thus present a problem of ambiguity if not carefully examined before using their assistance in naturalistic programming (Knoll & Mezini 545-546).For a naturalistic programming language on the other hand would need to possess certain characteristics in order to cope well with the challenges of a natural language. The first would be the mixed-initiative dialogue. This refers to the ability of the system to interact with the user, this would mean that system would not slavishly execute the commands given but instead would interact with the user to fully interpret the user’s requirements. The second is that the language would have to be evolvable. This is in respect to the naturalistic programming domain. Due to the ever changing nature of the natural language semantics the system needs to be dynamic enough to evolve itself in real-time. The others include being flexible and adaptive. The uses are more like than not to have disfluencies when interacting with the system. In order to add a robust understanding mechanism the system needs be flexible. Adaptability comes in when the users are not the ...
Get the Whole Paper!
Not exactly what you need?
Do you need a custom essay? Order right now:
Other Topics:
- BIOS and MotherboardsDescription: BIOS and Motherboards Technology Research Paper...5 pages/≈1375 words| APA | Technology | Research Paper |
- Virtualization in Today's IT WorldDescription: Virtualization in Today's IT World Technology Research Paper...11 pages/≈3025 words| APA | Technology | Research Paper |
- Electrical Engineering Description: Electrical Engineering Technology Research Paper...10 pages/≈2750 words| APA | Technology | Research Paper |