• DocumentCode
    1605295
  • Title

    Automated Data Structure Generation: Refuting Common Wisdom

  • Author

    Dewey, Kyle ; Nichols, Lawton ; Hardekopf, Ben

  • Author_Institution
    Univ. of California, Santa Barbara, Santa Barbara, CA, USA
  • Volume
    1
  • fYear
    2015
  • Firstpage
    32
  • Lastpage
    43
  • Abstract
    Common wisdom in the automated data structure generation community states that declarative techniques have better usability than imperative techniques, while imperative techniques have better performance. We show that this reasoning is fundamentally flawed: if we go to the declarative limit and employ constraint logic programming (CLP), the CLP data structure generation has orders of magnitude better performance than comparable imperative techniques. Conversely, we observe and argue that when it comes to realistically complex data structures and properties, the CLP specifications become more obscure, indirect, and difficult to implement and understand than their imperative counterparts. We empirically evaluate three competing generation techniques, CLP, Korat, and UDITA, to validate these observations on more complex and interesting data structures than any prior work in this area. We explain why these observations are true, and discuss possible techniques for attaining the best of both worlds.
  • Keywords
    constraint handling; data structures; CLP; Korat; UDITA; automated data structure generation; common wisdom; constraint logic programming; Data structures; Engines; Generators; Java; Search problems; Semantics; Usability; Constraint Logic Programming; Data Structure Generation;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Engineering (ICSE), 2015 IEEE/ACM 37th IEEE International Conference on
  • Conference_Location
    Florence
  • Type

    conf

  • DOI
    10.1109/ICSE.2015.26
  • Filename
    7194559