Front Page All Articles Recent Changes Random Article

Contents

Concatenative language

  • ACL
  • Ait
  • Aocla
  • Breeze
  • Callisto
  • Cat
  • Cognate
  • colorForth
  • Concata
  • CoSy
  • Deque
  • DSSP
  • dt
  • Elymas
  • Enchilada
  • ETAC
  • F
  • Factor
  • Fiveth
  • Forth
  • Fourth
  • Freelang
  • Gershwin
  • hex
  • iNet
  • Joy
  • Joy of Postfix App
  • kcats
  • Kitten
  • lang5
  • Listack
  • LSE64
  • Lviv
  • Meow5
  • min
  • Mirth
  • mjoy
  • Mlatu
  • Ode
  • OForth
  • Om
  • Onyx
  • Plorth
  • Popr
  • Porth
  • PostScript
  • Prowl
  • Quest32
  • Quackery
  • r3
  • Raven
  • Retro
  • RPL
  • SPL
  • Staapl
  • Stabel
  • Tal
  • Titan
  • Trith
  • Uiua
  • Worst
  • xs
  • XY
  • 5th
  • 8th

Concatenative topics

  • Compilers
  • Interpreters
  • Type systems
  • Object systems
  • Quotations
  • Variables
  • Garbage collection
  • Example programs

Concatenative meta

  • People
  • Communities

Other languages

  • APL
  • C++
  • Erlang
  • FP trivia
  • Haskell
  • Io
  • Java
  • JavaScript
  • Lisp
  • ML
  • Oberon
  • RPL
  • Self
  • Slate
  • Smalltalk

Meta

  • Search
  • Farkup wiki format
  • Etiquette
  • Sandbox

Factor/GSoC/2010/CSP

idea: a constraint solving library with a nice declarative syntax similar to the Oz language.

could be a binding to gecode with swig, or freshly started with engines added later on.

A backtracking engine is already available, but no declarative api exists for it.

Create an api and use the backtracking engine to implement its features.

Later on, you can add other engines in order to provide a better matching or better efficiency for other use cases.

see this document (citeseer's cached pdf) for ideas and background much beyond the "simple" proposal: http://www.wuala.com/stuff3/Documents/10.1.1.9.6733.pdf

see also csplib.org for example use cases.

future:

Such a constraint library is useful for tasks that require a large search of options using a declarative language since no simple solution is known.

especially for prioritizing, time efficiency, resource handling and valid ranges to check for a certain mechanism/machinary/etc that you may be building.

It can also be used to verify correctness of code by following all branches and issuing warnings for unchecked situations.

This revision created on Fri, 12 Mar 2010 17:45:06 by kobi

Latest Revisions Edit

All content is © 2008-2024 by its respective authors. By adding content to this wiki, you agree to release it under the BSD license.