Spelling suggestions: "subject:"logic programming language"" "subject:"yogic programming language""
1 |
Universalus pertvarkų įrankis / Universal refactoring toolPeldžius, Stasys 25 November 2010 (has links)
Vykstant nuolatiniam programų sistemų atnaujinimui, nuolatos reikia prižiūrėti, kad jos būtų kokybiškai projektuojamos ir programuojamos. Tačiau neišvengiamai atsiranda nekokybiško išeities teksto, arba atsiranda projektavimo trūkumų. Todėl yra svarbu mokėti ieškoti tokias problemas, ir jas ištaisyti. Šio darbo tikslas yra sukurti automatinio – universalaus įrankio modelį, kuris savarankiškai aptiktų pertvarkas, bei būtų nepriklausomas nuo konkrečios programavimo kalbos. Šiam tikslui pasiekti yra nagrinėjami mokslininkų siūlomi automatiškai aptinkantys pertvarkas metodai. Taip pat yra nagrinėjamos tokio įrankio realizavimo galimybės, pateikti realizaciniai sprendimai ir pavyzdžiai. Taip pat tikslas yra sukurti praktiškai naudingas automatines pertvarkas, kurios būtų realizuotos pasiūlytu įrankiu, ir pademonstruotas jų veikimas. Šis įrankis naudoja loginį programavimą, kurio faktais yra aprašomos pertvarkomos programos, o taisyklėmis – pačios pertvarkų programos. Sėkmingai sukurti automatiniai pertvarkų radimo pavyzdžiai, leidžia daryti išvadą, kad šiame darbe rastas būdas automatiškai aptikti nekokybišką išeities tekstą, bei realizuoti tokias pertvarkas nepriklausomai nuo programavimo kalbos. / In the continual evolution of software systems, should be continuous to ensure that they are high quality designed and programmed. But inevitably the defective code, that call “bad small” or the design deficiencies. It is therefore important to be able to find such problems, and to correct them. The aim of this thesis is to create automatic - universal refactoring tool, which is detected in self-refactoring, and is independent of specific programming languages. To achieve this objective are scientists considered the proposed automatic detection of refactoring methods. It is also considered the possibility of the realization of such a tool, to provide examples and realizable solutions. It also aims to create a practical benefit of the automatic adjustments to the proposed tool is to be realized, and a demonstration of their operation. This tool uses a logic programming, which is a factual description of the conversion, and the rules - the refactoring of the program. The successful creation of automatic detection for refactoring, it can be concluded that this work is found way to automatically detect poor quality of source code, and the realization of the restructuring, regardless of programming language.
|
2 |
Decidable Verification of Golog Programs over Non-Local Effect Actions: Extended VersionZarrieß, Benjamin, Claßen, Jens 20 June 2022 (has links)
The Golog action programming language is a powerful means to express high-level behaviours in terms of programs over actions defined in a Situation Calculus theory. In particular for physical systems, verifying that the program satisfies certain desired temporal properties is often crucial, but undecidable in general, the latter being due to the language’s high expressiveness in terms of first-order quantification and program constructs. So far, approaches to achieve decidability involved restrictions where action effects either had to be contextfree (i.e. not depend on the current state), local (i.e. only affect objects mentioned in the action’s parameters), or at least bounded (i.e. only affect a finite number of objects). In this paper, we present a new, more general class of action theories (called acyclic) that allows for context-sensitive, non-local, unbounded effects, i.e. actions that may affect an unbounded number of possibly unnamed objects in a state-dependent fashion. We contribute to the further exploration of the boundary between decidability and undecidability for Golog, showing that for acyclic theories in the two-variable fragment of first-order logic, verification of CTL properties of programs over ground actions is decidable.
|
Page generated in 0.1144 seconds