Wednesday, June 10, 2020

Programming with Natural Language - 1650 Words

Programming with Natural Language (Research Paper Sample) Content: YourFirstName YourLastName Instructor's Name Course Title 16 August 2014 Programming With Natural Language Abstract This 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. Introduction Programming 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 how many are there? T he 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 Programming There 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 impro ve 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 co nstitute 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 Programming When 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 oth er 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 tha n 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 ...

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.