Repository logo

Infoscience

  • English
  • French
Log In
Logo EPFL, École polytechnique fédérale de Lausanne

Infoscience

  • English
  • French
Log In
  1. Home
  2. Academic and Research Output
  3. Conferences, Workshops, Symposiums, and Seminars
  4. Constraints as Control
 
conference paper

Constraints as Control

Koeksal, Ali Sinan
•
Kuncak, Viktor  
•
Suter, Philippe  
2012
POPL 12: Proceedings Of The 39Th Annual Acm Sigplan-Sigact Symposium On Principles Of Programming Languages
39th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages

We present an extension of Scala that supports constraint programming over bounded and unbounded domains. The resulting language, Kaplan, provides the benefits of constraint programming while preserving the existing features of Scala. Kaplan integrates constraint and imperative programming by using constraints as an advanced control structure; the developers use the monadic 'for' construct to iterate over the solutions of constraints or branch on the existence of a solution. The constructs we introduce have simple semantics that can be understood as explicit enumeration of values, but are implemented more efficiently using symbolic reasoning.

  • Details
  • Metrics
Type
conference paper
DOI
10.1145/2103656.2103675
Web of Science ID

WOS:000304130100014

Author(s)
Koeksal, Ali Sinan
Kuncak, Viktor  
Suter, Philippe  
Date Issued

2012

Publisher

ACM Order Department, P O Box 64145, Baltimore, MD 21264 Usa

Published in
POPL 12: Proceedings Of The 39Th Annual Acm Sigplan-Sigact Symposium On Principles Of Programming Languages
Start page

151

End page

164

Subjects

Constraint Programming

•

Satisfiability Modulo Theories

•

Executable Specifications

•

Scala

•

Embedded Domain-Specific Languages

•

Non-determinism

•

Alloy

Editorial or Peer reviewed

NON-REVIEWED

Written at

EPFL

EPFL units
LARA  
Event nameEvent placeEvent date
39th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages

Philadelphia, PA

Jan 25-27, 2012

Available on Infoscience
June 15, 2012
Use this identifier to reference this record
https://infoscience.epfl.ch/handle/20.500.14299/81911
Logo EPFL, École polytechnique fédérale de Lausanne
  • Contact
  • infoscience@epfl.ch

  • Follow us on Facebook
  • Follow us on Instagram
  • Follow us on LinkedIn
  • Follow us on X
  • Follow us on Youtube
AccessibilityLegal noticePrivacy policyCookie settingsEnd User AgreementGet helpFeedback

Infoscience is a service managed and provided by the Library and IT Services of EPFL. © EPFL, tous droits réservés