Hacker News new | past | comments | ask | show | jobs | submit login

Most of these "high-level" languages are more of "extensions" (CLOS certainly feels like an extension) or alternative lispish languages than bona fide DSLs with DS constraints (that can be used for DS optimizations). The S-expression syntax feels foreign/messy in many domains.



Languages on top of Lisp can be all from extensions, to languages with their own syntax, parser, compiler, ...

Examples for "high-level" languages on top of Lisp:

Macsyma, Axiom, Refine, AP5, RacerPro, CycL, NESL, Reduce, PVS, the original ML, ...

For a Lisp-like example see PDDL (Planning Domain Definition Language):

    (define (domain hanoi-domain)
            (:requirements :equality)
            (:predicates (disk ?x) (smaller ?x ?y) (on ?x ?y) (clear ?x))
            (:action move-disk
             :parameters (?disk ?below-disk ?new-below-disk)
             :precondition (and (disk ?disk)
                                (smaller ?disk ?new-below-disk)
                                (not (= ?new-below-disk ?below-disk))
                                (not (= ?new-below-disk ?disk))
                                (not (= ?below-disk ?disk))
                                (on ?disk ?below-disk)
                                (clear ?disk)
                                (clear ?new-below-disk))
             :effect (and (clear ?below-disk)
                          (on ?disk ?new-below-disk)
                          (not (on ?disk ?below-disk))
                          (not (clear ?new-below-disk)))))
Tools like these are widely used in logistics domains, one of the domains where Lisp has been widely used. There is a competition between planning systems and PDDL is being used to describe the problems.

For a non-s-expression domain specific language on top of Lisp see for example PWGL. It uses a graphical language. Also Macsyma/Maxima, and many many many others.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: