core+scm: Implement exception handling.
authorJan Nieuwenhuizen <janneke@gnu.org>
Wed, 28 Dec 2016 21:26:07 +0000 (22:26 +0100)
committerJan Nieuwenhuizen <janneke@gnu.org>
Wed, 28 Dec 2016 21:26:07 +0000 (22:26 +0100)
commit2675f711a3387d2b9a9a6ebd893c64a8d8c4d9a1
treea2b68b08229001cdbbe242cf909edd4536857086
parent04bb0cb79d7d9a93665658e37b43736b0b7d75b8
core+scm: Implement exception handling.

* mes.c (scm_symbol_throw): New symbol.
* module/mes/catch.scm (catch, throw): Implement [WAS: syntactic sugar].
  (make-exception, exception?, exception-key, exception-args): Remove.
* tests/catch.test ("catch", "catch 22"): Add tests.
* module/mes/base-0.scm: Include it.
mes.c
module/mes/base-0.mes
module/mes/base.mes
module/mes/catch.mes
tests/catch.test
tests/scm.test