Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Representation of Compositional Relational Programs
Uppsala University, Disciplinary Domain of Humanities and Social Sciences, Faculty of Social Sciences, Department of Informatics and Media, Information Systems.ORCID iD: 0000-0001-5213-8253
2017 (English)Doctoral thesis, monograph (Other academic)
Description
Abstract [en]

Usability aspects of programming languages are often overlooked, yet have a substantial effect on programmer productivity. These issues are even more acute in the field of Inductive Synthesis, where programs are automatically generated from sample expected input and output data, and the programmer needs to be able to comprehend, and confirm or reject the suggested programs.

A promising method of Inductive Synthesis, CombInduce, which is particularly suitable for synthesizing recursive programs, is a candidate for improvements in usability as the target language Combilog is not user-friendly. The method requires the target language to be strictly compositional, hence devoid of variables, yet have the expressiveness of definite clause programs. This sets up a challenging problem for establishing a user-friendly but equally expressive target language.

Alternatives to Combilog, such as Quine's Predicate-functor Logic and Schönfinkel and Curry's Combinatory Logic also do not offer a practical notation: finding a more usable representation is imperative. This thesis presents two distinct approaches towards more convenient representations which still maintain compositionality.

The first is Visual Combilog (VC), a system for visualizing Combilog programs. In this approach Combilog remains as the target language for synthesis, but programs can be read and modified by interacting with the equivalent diagrams instead. VC is implemented as a split-view editor that maintains the equivalent Combilog and VC representations on-the-fly, automatically transforming them as necessary.

The second approach is Combilog with Name Projection (CNP), a textual iteration of Combilog that replaces numeric argument positions with argument names. The result is a language where argument names make the notation more readable, yet compositionality is preserved by avoiding variables. Compositionality is demonstrated by implementing CombInduce with CNP as the target language, revealing that programs with the same level of recursive complexity can be synthesized in CNP equally well, and establishing the underlying method of synthesis can also work with CNP.

Our evaluations of the user-friendliness of both representations are supported by a range of methods from Information Visualization, Cognitive Modelling, and Human-Computer Interaction. The increased usability of both representations are confirmed by empirical user studies: an often neglected aspect of language design.

Place, publisher, year, edition, pages
Uppsala: Department of Informatics and Media, Uppsala University , 2017. , p. 216
Keywords [en]
Programming, Syntax, Logic Programming, Combilog, CombInduce, Prolog, Variable-free, Point-free, Tacit, Compositional Relational Programming, Combinatory Logic, Predicate-Functor Logic, Program Synthesis, Meta-interpreters, Meta-interpretative Synthesis, Decompositional Synthesis, Inductive Synthesis, Inductive Logic Programming, Usability, Cognitive Dimensions of Notations, Visual Variables, Usability testing, Programming Language usability, Empirical evidence
National Category
Information Systems Computer and Information Sciences
Research subject
Information Systems
Identifiers
URN: urn:nbn:se:uu:diva-317084ISBN: 978-91-506-2621-6 (print)OAI: oai:DiVA.org:uu-317084DiVA, id: diva2:1080366
Public defence
2017-04-28, Lecture hall 2, Ekonomikum, Uppsala, 13:00 (English)
Opponent
Supervisors
Available from: 2017-04-06 Created: 2017-03-10 Last updated: 2018-01-13

Open Access in DiVA

fulltext(1470 kB)259 downloads
File information
File name FULLTEXT01.pdfFile size 1470 kBChecksum SHA-512
b88b177153466dbb757ed7e955f7465286e27fc3521759590dac1b8f19e05be9b1c9264e584aa214f90f067cc7fdd4e9f2b35e4f948aa2fe201c306de5eb1397
Type fulltextMimetype application/pdf

Search in DiVA

By author/editor
Paçacı, Görkem
By organisation
Information Systems
Information SystemsComputer and Information Sciences

Search outside of DiVA

GoogleGoogle Scholar
Total: 259 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

isbn
urn-nbn

Altmetric score

isbn
urn-nbn
Total: 1360 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf