pegasus – first steps toward a naturalistic programming
DESCRIPTION
Software EngineeringTRANSCRIPT
Pegasus – First Steps Toward a Naturalistic Programming Language
Roman Knöll dan Mira Mezini
OOPSLA '06: October 22–26, 2006, Portland, Oregon, USA.Companion to the 21st ACM SIGPLAN symposium on Object-oriented programming systems,languages, and applicationsACM 1-59593-491-X/06/0010.
AHMAD PUJIANTO - P31.2014.01708
Click to edit Master text styles
LATAR BELAKANG
• There is a gap to close between current programming techniques on the one hand and what we really want computers to behave like on the other hand
Click to edit Master text styles
IDENTIFIKASI MASALAH- The Mental Problem :
We are forced to adjust our program idea to the conditions of a very specific programming language
- The Programming Language Problem :
Actually implementing the Quicksort algorithm means writing a computer program in a specific programming language
- The Natural Language Problem :
This is inefficient, since all non-native speakers of this language have to understand and write code, commenting and documenting in another language than the one they would be most productive with their mother tongue
- The Technical Problem :
Developers spend most of their time implementing and debugging the program
Click to edit Master text styles
HIPOTESIS
-If we were able to write computer programs in everyday speech, this could be a key solution to solve both the mental problem and the programming language problem.-Programming would become easier especially for those, who are not into computer science very much, since there wouldn't be the necessity to learn a programming language, at all.-If developers were able to describe their program ideas in natural language, there would be neither a transformation of the program ideas to programming language structures necessary nor would a constraining plausibility check take place.
Click to edit Master text styles
METODOLOGI- Modeling Natural Language
IdeasIdea NotationIdeas and LanguageConsequences of the Model
- Characteristics of Natural Language CompressionImplicit referencing mechanismsContext Dependence
Click to edit Master text styles
PENGUKURANPegasus reads ideas described in a natural language, the input program, and to creates from it a fully executable program file, the output program, realizing the described ideas. For instance, Pegasus could read this natural language description:
Write three times: "I can understand you!".and generate the following Java program, realizing the idea of the natural language description:
class Main { public static void main(String[] args) { for (int i = 0; i <= 2; i++) System.out.println("I can " + "understand you!"); }}
Click to edit Master text styles
HASIL
Program ideas can be described in natural language, using characteristic mechanisms like implicit referencing and context dependence. Although, the amount of sentences and words Pegasus can comprehend is very limited at the moment, it is shown that multilingual naturalistic programming is feasible.Further research and development will be much broader in order to realize Pegasus as a fully functional naturalistic programming language in theory and practice.