theme-d (6.0.0) unstable; urgency=medium

  * Fixed runtime type variable allocation.
  * Fixed subexpression factorization.
  * Fixed generic procedure class hierarchy.
  * Implemented unit types.
  * Keyword-based make.
  * Renewed the implementation of equality predicates.
  * Changed the runtime environment to use GOOPS for Theme-D classes.
  * Renewed GOOPS foreign class interface.
  * Removed metaclasses :value-vector and :mutable-value-vector.
  * Renamed the hash table modules in the standard library.
  * Renamed match-type-strong to match-type and match-type to match-type-weak.
  * Updated libthemedsupport using the Guile 3.0.10 source code.
  * Added procedures d-fold1, d-fold-right1, delete-duplicates, even?,
    flush-all-ports, fold1, fold-right1, identity, keyword->symbol,
    list-set-diff, make-list, not-false?, odd?, symbol->keyword,
    union-of-alists, and union-of lists into the standard library.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Thu, 02 Jan 2025 10:39:37 +0200

theme-d (5.1.4) unstable; urgency=medium

  * Moved macros receive, fluid-let, iterate-2-lists, and iterate-2-lists-pure
    from the bootstrapped environment into the standard library.
  * Added macros iterate-2-lists-with-break and iterate-2-lists-with-break-pure
    into the standard-library.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Wed, 02 Oct 2024 07:39:24 +0300

theme-d (5.1.3) unstable; urgency=medium

  * Implemented argument procedure optimization.
  * Implemented letrec procedure variable optimization.
  * Use iteration macros and letrec to iterate lists in the bootstrapped
    environment.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Sun, 08 Sep 2024 13:53:10 +0300

theme-d (5.1.2) unstable; urgency=medium

  * Fixed a bug with the Scheme linker backend.
  * Fixed a bug in script link-test-programs.scm.
  * Updated the User Guide.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Wed, 13 Dec 2023 10:13:43 +0200

theme-d (5.1.1) unstable; urgency=medium

  * Fixed bug #1048287.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Sat, 07 Oct 2023 12:44:50 +0300

theme-d (5.1.0) unstable; urgency=medium

  * Fixed several bugs with generic procedures.
  * Fixed bugs with internal variable numbering.
  * Fixed a bug with calling procedures inside parameterized procedures.
  * Fixed a bug with reimporting variables.
  * Implemented methods construct-complex-matrix, matrix-conj, conj, transpose,
    herm, diag-of, generate-matrix, generate-diag-matrix, matrix-map,
    matrix-map-w-ind, and diag-matrix-map-w-ind in module matrix.
  * Added a matrix implementation based on the bytevector IEEE-754 interface
    into the standard library.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Wed, 23 Aug 2023 12:23:23 +0300

theme-d (5.0.0) unstable; urgency=medium

  * Bootstrapped version of Theme-D included.
  * Fixed a bug with inlined constructors.
  * Fixed a bug with stripping unused code.
  * Fixed using the module resolution operator @ with normal generic
    procedures.
  * Optimized typecast from (:union <a> <x>) or (:union <x> <a>) to <x>,
    where <a> is an atomic type.
  * Optimized type cast to a final simple class.
  * Implemented keywords.
  * Added procedures object-address, last0 and setenv into the standard library.
  * Fixed a bug with virtual method stripping.
  * Fixed a bug with normal method redeclaration.
  * Fixed a bug with statically casting nonreturning expressions.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Sat, 17 Sep 2022 11:53:54 +0300

theme-d (4.3.0) unstable; urgency=medium

  * Fixed lexical binding of variables.
  * Fixed a bug in quasiquote.
  * Fixed bugs with purity checking of set! expressions.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Thu, 23 Jun 2022 14:18:07 +0300

theme-d (4.2.1) unstable; urgency=medium

  * Fixed some bugs related to quasiquote, parametrized signatures,
    until, and cast expressions.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Thu, 07 Apr 2022 13:54:01 +0300

theme-d (4.2.0) unstable; urgency=medium

  * Improved type checking for uniform list types.
  * Improved type checking for quasiquote expressions.
  * Updated the language manual.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Sat, 12 Feb 2022 11:44:02 +0200

theme-d (4.1.1) unstable; urgency=medium

  * Implemented test suite.
  * Fixed condition type checking in if and until expressions.
  * A minor improvement to signature type checking.
  * Improved main procedure type checking.
  * Fixed a bug in the linker guile backend.
  * Added a command line parser into the standard library.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Thu, 20 Jan 2022 17:12:46 +0200

theme-d (4.1.0) unstable; urgency=medium

  * Fixed a bug with normal generic procedures.
  * Added procedure d-for-each2 into module dynamic-list.
  * A minor optimization to parametrized procedure calls.
  * Optimized the standard library by removing unnecessary primitive result
    type checks.
  * Added the following procedures into the standard library:
    simplify-rational2, simplify-complex, append-uniform, append-uniform0,
    append-uniform2.
  * Fixed a bug with reporting error return attribute type mismatch.
  * Improved the error message for generic static dispatch error.
  * Implemented linker option --check-all-primitives.
  * Implemented procedure real->integer in the C support library and
    improved its implementation in the alternative support library.
  * Added the following procedures into the standard library:
    d-map2, d-map-nonpure2, d-for-each2,
    d-for-all?, d-for-all-nonpure?, d-for-all0?, d-for-all-nonpure0?,
    d-for-all1?, d-for-all-nonpure1?, d-for-all2?, d-for-all-nonpure2?,
    d-exists?, d-exists-nonpure?, d-exists0?, d-exists-nonpure0?,
    d-exists1?, d-exists-nonpure1?, d-exists2?, and d-exists-nonpure2?.
  * Added form iterate-list-pure into module list-utilities.
  * Fixed bugs in the standard library makefile.
  * Fixed a bug with split linking.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Fri, 03 Dec 2021 16:07:24 +0200

theme-d (4.0.3) unstable; urgency=medium

  * Fixed a bug with pseudocode element gen-proc-class.
  * Fixed a bug in the type equivalence computation in the runtime environment.
  * Fixed param-proc-dispatch.
  * A minor optimization to procedure calls.
  * Implemented option --guile-opt-level in the linker.
  * Added procedure eq? into module core.
  * Added procedures caar, cadr, cdar, cddr, caddr, cdddr, cadddr, map2,
    map-nonpure2, for-each2, for-all2?, for-all-nonpure2?, exists2?, and
    exists-nonpure2? to module list-utilities.
  * Added procedures d-reverse, list?, d-caar, d-cadr, d-cdar, d-cddr, d-caddr,
    d-cdddr, and d-cadddr to module dynamic-list.
  * Added module mutable-pair into the standard library.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Mon, 30 Aug 2021 09:42:27 +0300

theme-d (4.0.2) unstable; urgency=medium

  * Fixed a bug related to parametrized logical types in the runtime
    environment.
  * Fixed a bug in stripping.
  * Fixed bugs with split linking.
  * A fix to the parametrized method dispatch.
  * Implemented option --version in commands theme-d-compile, theme-d-link,
    run-theme-d-program, and run-split-theme-d-program.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Fri, 13 Aug 2021 15:03:05 +0300

theme-d (4.0.1) unstable; urgency=medium

  * Corrected a bug in cycle detection.
  * Removed some time-consuming debug code from the runtime environment.
  * Implemented keyword static-gen-proc-dispatch.
  * Optimized the apply procedure.
  * Optimized module hash-table2 and added a slightly more optimized
    module hash-table2-opt.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Thu, 05 Aug 2021 08:22:01 +0300

theme-d (4.0.0) unstable; urgency=medium

  * Implemented lexically scoped and statically dispatched methods.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Thu, 29 Jul 2021 16:35:33 +0300

theme-d (3.1.3) unstable; urgency=medium

  * Fixed bugs with noninheritable classes in the type system.
  * Improved the dynamical list support.
  * Optimized equality predicates for vectors.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Wed, 03 Mar 2021 15:45:40 +0200

theme-d (3.1.2) unstable; urgency=medium

  * Allow specifying the default duplicate binding handler.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Tue, 15 Dec 2020 09:44:49 +0200

theme-d (3.1.1) unstable; urgency=medium

  * Fixed a bug with linking split programs.
  * Fixed a bug with unit expansion.
  * Improved the uninstalled environment.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Thu, 03 Dec 2020 08:38:28 +0200

theme-d (3.1.0) unstable; urgency=medium

  * Implemented friend modules.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Sun, 15 Nov 2020 18:28:10 +0200

theme-d (3.0.5) unstable; urgency=medium

  * Closed bug #934469.
  * Added dependency to files.tci for file console-io.tci in
    theme-d-code/standard-library/Makefile.am.
  * Fixed the Racket runtime environment.
  * Fixed some bugs in the macro system.
  * Optimized gen-car and gen-cdr.
  * Fixed the documentation of generic procedure equal?.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Wed, 23 Sep 2020 16:03:46 +0300

theme-d (3.0.4) unstable; urgency=medium

  * Fixed a bug with quasiquote.
  * Fixed procedure name introspection.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Sun, 21 Jun 2020 12:01:50 +0300

theme-d (3.0.3) unstable; urgency=medium

  * Fixed a bug in the type system: <none> no longer inherits from <object>.
  * Fixed a bug with @.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Tue, 02 Jun 2020 07:26:01 +0300

theme-d (3.0.2) unstable; urgency=medium

  * Added a missing = method.
  * Fixed some error messages.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Wed, 27 May 2020 06:24:58 +0300

theme-d (3.0.1) unstable; urgency=medium

  * Fixed a bug in type deduction.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Wed, 20 May 2020 07:22:00 +0300

theme-d (3.0.0) unstable; urgency=medium

  * Support for Guile 3.0.
  * Guile 2.0 support no longer maintained.
  * Allow splitting linker target.
  * Updated handling introspection data in the linker.
  * Redefined target platforms.
  * New macro iterate-list.
  * Compile th-scheme-utilities to Guile bytecode.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Thu, 14 May 2020 13:57:04 +0300

theme-d (2.1.1) unstable; urgency=medium

  * Fixed a bug with forward declared classes.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Thu, 26 Mar 2020 16:10:24 +0200

theme-d (2.1.0) unstable; urgency=medium

  * Fixed a bug with void generic procedures.
  * Inline constructors for classes whose superclass contains no fields.
  * Better support for using the software without installing it.
  * Implemented bytevectors and binary files in the standard library.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Sun, 22 Mar 2020 11:46:23 +0200

theme-d (2.0.0) unstable; urgency=medium

  * New syntax for classes.
  * Improved constructors.
  * Created class <source-expr> for the values returned by procedure read.
  * Moved example program creators.thp to test769.thp and param-creators.thp to test770.thp.
  * Added example programs objects1.thp and objects2.thp.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Sun, 08 Mar 2020 12:45:58 +0200

theme-d (1.4.1) unstable; urgency=medium

  * Fixed a bug in the Standard Library Reference.
  * Use the underlying Guile implementation for EOF objects.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Mon, 27 Jan 2020 08:12:16 +0200

theme-d (1.4.0) unstable; urgency=medium

  * Moved call/cc, exec/cc, and guard to the standard library.
  * Split the core module.
  * Allow a nonreturning expression to be casted statically to any type.
  * Optimized the internal representation of nonatomic constants.
  * Fixed a bug with intermediate language scheme-no-opt.
  * Done some cleaning with the source code.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Sun, 04 Aug 2019 15:44:57 +0300

theme-d (1.3.1) unstable; urgency=medium

  * Corrected bugs with generic procedures.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Tue, 25 Jun 2019 11:45:11 +0300

theme-d (1.3.0) unstable; urgency=medium

  * Support for Racket as the target platform.
  * Fixed a bug with procedure string-match.
  * Allow field names to overlap with variable names.
  * New implementation for hash tables.
  * Changed the runtime environment to use modules.
  * Programs written in Theme-D can be run without the Theme-D configuration file.
  * Renamed a-list to alist in the standard library.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Fri, 17 May 2019 12:54:55 +0300

theme-d (1.2.0) unstable; urgency=medium

  * Fixed and redesigned text file I/O
  * Fixed bugs with optimized equality predicates
  * Changed the implementation of static methods
  * Optimized predicate equal? for primitive types

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Mon, 15 Apr 2019 15:21:23 +0300

theme-d (1.1.17) unstable; urgency=medium

  * Fixed a bug with toplevel mutable variables
  * Fixed procedure class macro expansion
  * Fixed assertion error messages
  * Renamed <nil> to <null> in the runtime environment

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Mon, 18 Mar 2019 08:15:58 +0200

theme-d (1.1.16) unstable; urgency=medium

  * Fixed bugs with generic procedure dispatch.
  * Fixed module linkage order.
  * Fixed a bug with constructors.
  * Allowed list constants in interfaces.
  * Implemented procedure call stack output for intermediate language Scheme.
  * Removed vector constants from the core forms source code.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Sat, 09 Mar 2019 14:35:05 +0200

theme-d (1.1.15) unstable; urgency=medium

  * Corrected a bug with let expressions.
  * Corrected bugs with special procedure type dispatch.
  * Improved some error messages.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Thu, 24 Jan 2019 12:43:37 +0200

theme-d (1.1.14) unstable; urgency=medium

  * Changed Debian revision in the User Guide to a symbol.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Tue, 18 Dec 2018 06:29:44 +0200

theme-d (1.1.13) unstable; urgency=medium

  * Corrected a bug with match-type-strong.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Sat, 08 Dec 2018 15:10:20 +0200

theme-d (1.1.12) unstable; urgency=medium

  * Corrected bugs with Guile 2.2 Tree-IL.
  * Install custom1.scm and custom2.scm instead of the .go files.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Thu, 06 Dec 2018 10:32:45 +0200

theme-d (1.1.11) unstable; urgency=medium

  * Updated the documentation.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Sun, 04 Nov 2018 12:35:11 +0200

theme-d (1.1.10) unstable; urgency=medium

  * Corrected a bug with custom primitive classes.
  * Allowed logical types in mutable forward declarations.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Mon, 29 Oct 2018 19:49:11 +0200

theme-d (1.1.9) unstable; urgency=medium

  * Updated the documentation.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Fri, 26 Oct 2018 16:19:11 +0300

theme-d (1.1.8) unstable; urgency=medium

  * Updated the documentation.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Wed, 24 Oct 2018 15:31:13 +0300

theme-d (1.1.7) unstable; urgency=medium

  * Changed the installation directories.
  * Implemented script get-theme-d-config-var.
  * Moved doc/copyright to COPYING and doc/ChangeLog to ChangeLog.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Mon, 08 Oct 2018 08:09:59 +0300

theme-d (1.1.6) unstable; urgency=medium

  * Reorganized the code to be distributed in Debian.
  * Improved some error messages.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Fri, 05 Oct 2018 07:52:43 +0300

theme-d (1.1.5) unstable; urgency=medium

  * Added generic procedure = for testing numerical equality.
  * Removed equal? predicates between different numerical classes.
  * Changed exception handling in the standard library and the runtime environment.
  * Added procedure raw-exit into the standard library.
  * Prevent inheriting Theme-D classes from GOOPS classes.
  * The program name is now the first command line argument.
  * Corrected a bug in the difference between a diagonal matrix and a matrix.
  * Changed the syntax of the guard-general form.
  * Added correct output of the test programs.
  * Optimized runtime GOOPS class handling.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Tue, 25 Sep 2018 14:10:32 +0300

theme-d (1.1.4) unstable; urgency=medium

  * Corrected a bug with equality predicates and parametrized classes in the runtime environment.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Sun, 16 Sep 2018 15:01:31 +0300

theme-d (1.1.3) unstable; urgency=medium

  * Corrected bugs with equality predicate optimization.
  * Corrected a bug with reexporting macros.
  * Corrected a bug with type-loop.
  * Added procedures member-values? and assoc-values into the standard library.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Fri, 14 Sep 2018 15:51:22 +0300

theme-d (1.1.2) unstable; urgency=medium

  * Corrected a bug with line numbering in error messages.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Thu, 23 Aug 2018 12:15:37 +0300

theme-d (1.1.1) bionic; urgency=medium

  * Corrected a bug with letrec.
  * Updated doc/theme-d-translator-types.pdf.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Sun, 24 Jun 2018 11:54:39 +0300

theme-d (1.1.0) bionic; urgency=medium

  * Support for both guile-2.2 and guile-2.0.
  * Optimized procedures is-integer?, is-real? , r-floor, r-truncate, r-floor, and r-ceiling.
  * Added procedure factorial to the core module.
  * Compute exact values for log2, log10, tgamma, and lgamma.
  * Prevent stripping of class <scheme-condition> in the core module.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Sun, 27 May 2018 08:59:29 +0300

theme-d (1.0.12) trusty; urgency=medium

  * Implemented numeric tower and rational numbers in the standard library.
  * Rewrote the generic math procedures.
  * Optimized real math procedures.
  * Implemented interface for many standard C and POSIX C math functions.
  * Added dependency to library libthemedsupport.
  * Corrected a bug in procedure c-acos.
  * Implemented equal? as a generic procedure.
  * Corrected a bug with definition of declared methods.
  * Implemented bitwise arithmetic in the standard library.
  * Added procedures r-round, r-truncate, r-floor, r-ceiling, i-nonneg-expt,
    r-nonneg-int-expt, r-int-expt, gcd, i-sign, r-sign,
    make-numerical-overflow, raise-numerical-overflow, nan, inf, and neg-inf
    into the core module.
  * Optimized field references.
  * Load custom files from compiled files instead of source files.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Mon, 21 May 2018 12:39:39 +0300

theme-d (1.0.11) trusty; urgency=medium

  * Added a missing type check for definitions of declared variables.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Tue, 08 May 2018 13:37:20 +0300

theme-d (1.0.10) trusty; urgency=medium

  * Corrected a bug with cloning singletons.
  * Changed exception handling in i/o and math procedures.
  * Corrected expression output in compiler error messages.
  * Corrected line numbering in compiler error messages.
  * Changed macro syntax violation messages.
  * Check that prelink-body is not used in interfaces.
  * Delete the target .go file if linker fails.
  * Corrected a bug with force-pure-expr.
  * Optimized cast-x-vector procedures in case the original element type is
    a subtype of the new element-type.
  * Corrected a bug with opening output files in the translator.
  * Added procedures nan?, infinite?, and finite? into the standard library.
  * Added procedures hash-exists? and hash-remove! into the standard library.
  * Changed procedure hash-ref to take the default value as an argument.
  * Added procedure delete-file into the standard library.
  * Allow nonlist toplevel expressions.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Sat, 05 May 2018 14:58:33 +0300

theme-d (1.0.9) trusty; urgency=medium

  * Corrected bugs with signatures as procedure call argument types.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Fri, 23 Mar 2018 09:34:45 +0200

theme-d (1.0.8) trusty; urgency=medium

  * Implemented keyword static-cast.
  * Check the illegal use of keywords.
  * Corrected the error message with an unbound variable in set!.
  * Corrected a bug in library procedure or-map?.
  * Added library procedures and-map-nonpure?, and-map-nonpure1?,
    or-map-nonpure?, or-map-nonpure1?, a-list-delete, filter,
    distinct-elements?, and string-char-index-right.
  * Added declarations of procedures map-car and map-cdr into core.thi.
  * Added parametrized type :nonempty-a-list into core.thi.
  * Moved module singleton from examples into the standard library.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Thu, 08 Mar 2018 13:21:43 +0200

theme-d (1.0.7) trusty; urgency=medium

  * Corrected a bug in the type system. Test program test612.thp works now.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Thu, 01 Mar 2018 13:28:54 +0200

theme-d (1.0.6) trusty; urgency=medium

  * Allow toplevel statements and procedure calls in programs and module bodies.
  * New keyword prelink-body to allow calling procedures in toplevel statements.
  * Handle unspecified values with forward declarations and letrec expressions.
  * Use SRFI-72 based implementation for the macro system.
  * Form identifier-syntax and limited syntax-case support.
  * Allow a module reference as the first argument of set!.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Tue, 07 Nov 2017 15:27:00 +0200

theme-d (1.0.5) trusty; urgency=medium

  * Corrected equivalence predicate optimization.
  * Corrected bugs in vector typecasts.
  * Check illegal non-toplevel expressions.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Wed, 13 Sep 2017 12:17:08 +0300

theme-d (1.0.4) trusty; urgency=medium

  * Corrected a bug with parametrized procedure result type checking.
  * User defined Theme-D procedures are now visible in runtime backtrace.
  * Pretty printed runtime backtraces.
  * Print type information with runtime error messages.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Wed, 16 Aug 2017 15:29:45 +0300

theme-d (1.0.3) trusty; urgency=medium

  * Corrected the eq-by-value? flag of pair classes to #t.
  * Corrected a bug with <none> type.
  * Optimized procedure calls.
  * Optimized the equality predicates.
  * Optimized checking primitive classes in match-type and is-instance?.
  * Redesigned assoc and member? procedures in order to invoke the equality
    predicate optimization.
  * Improved linker error messages with procedure typing errors.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Sat, 05 Aug 2017 16:40:39 +0300

theme-d (1.0.2) trusty; urgency=medium

  * Better error messages.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Sun, 23 Jul 2017 17:50:53 +0300

theme-d (1.0.1) trusty; urgency=medium

  * Simple and parametrized procedures can be used in signatures.
  * Corrected a bug with type checking simple procedure calls
    inside parametrized procedures.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Mon, 17 Jul 2017 16:16:27 +0300

theme-d (1.0.0) trusty; urgency=medium

  * Support Tree-IL as intermediate language.
  * New keywords "use" and "@": Modules can be used without importing
    their contents into the global namespace.
  * Corrected a bug with variable argument lists.
  * Corrected a bug with param-proc-dispatch.
  * Corrected a bug with field-set! inside parametrized procedures.
  * Procedure apply works with parametrized procedures.
  * Corrected type deduction algorithm in case a deduced value of a type
    variable contains other type variables.
  * Keywords make and constructor can be used with pair classes.
  * Forms "and" and "or" are implemented as macros.
  * Compatible with th-scheme-utilities version 1.3.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Sun, 16 Jul 2017 09:16:20 +0300

theme-d (0.9.10) trusty; urgency=medium

  * Use guile objcode as the default target platform.
  * Shorter target variable names.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Tue, 04 Jul 2017 08:18:44 +0300

theme-d (0.9.9.1) trusty; urgency=medium

  * Implemented nonpure iterators.
  * Allowed <none> as a type parameter.
  * Changed the current value of a stream to be evaluated lazily.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Mon, 19 Sep 2016 12:49:25 +0300

theme-d (0.9.9) trusty; urgency=medium

  * Corrected several bugs related to parametrized procedures.
  * Corrected a bug in the runtime Theme-D environment.
  * Implemented purely functional iterators.
  * Added option --verbose-errors to the compiler and the linker.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Mon, 12 Sep 2016 16:03:07 +0300

theme-d (0.9.8) trusty; urgency=medium

  * Implemented streams in the standard library.
  * Improved error messages in parametrized procedure instantiation.
  * Install compiled files.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Sun, 04 Sep 2016 12:07:27 +0300

theme-d (0.9.7) trusty; urgency=medium

  * Corrected a bug with parametrized types (test434 did not compile).
  * Object factorization works again.
  * Optimized quoted list constants.
  * New keyword static-type-of.
  * New keywords lambda-automatic and param-lambda-automatic that deduce
    the result type from the body expression.
  * Implemented volatile variables that can be changed by pure procedures.
  * Implemented object conditionals that accept any nonfalse object as
    true value.
  * Implemented delayed evaluation (delay and force) into the
    standard library.
  * Implemented some new procedures in module text-file-io.
  * Reorganized the language manual and the standard library reference.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Thu, 01 Sep 2016 17:21:44 +0300

theme-d (0.9.6) unstable; urgency=medium

  * Optimized match-type.
  * Rewrote the core list handling procedures to invoke the match-type
    optimization.
  * Optimized parametrized primitive procedures as ordinary parametrized
    procedures are done.
  * Corrected bugs in psyntax-external.scm.
  * Made detect-cycles faster for lists.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Tue, 23 Aug 2016 11:00:00 +0200

theme-d (0.9.5) unstable; urgency=medium

  * Corrected a bug with set!.
  * Allowed <none> as type parameter.
  * Procedure apply-without-result is deprecated as it is no longer needed.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Sun, 31 Jul 2016 16:00:00 +0200

theme-d (0.9.4) unstable; urgency=medium

  * Implemented a hygienic and lexically scoped macro system.
  * Added keyword force-pure-expr.
  * Added procedure peek-character into module text-file-io.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Tue, 26 Jul 2016 17:30:00 +0200

theme-d (0.9.3) unstable; urgency=medium

  * Improved the explicit generic procedure dispatch.
  * Simplified the foreign class interface.
  * Corrected an error in the module system.
  * Correction to mutable variable declarations.
  * Corrected an error with method variable argument lists.
  * Corrected a bug with param-proc-instance.
  * Corrected the subtype checking algorithm for union types.
  * A declared value can be used as a value of a constant.
  * Type of a match-type expression may be <object> in some cases
    even though an else part is not present.
  * Implemented some list and string handling procedures into the
    standard library.
  * Better error messages for identical or noncovariant methods and
    erroneous parametrized procedure instantiations.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Fri, 1 Jul 2016 11:05:00 +0200

theme-d (0.9.2) unstable; urgency=medium

  * Initial debianized package.

 -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi>  Sat, 11 Jun 2016 13:50:00 +0200

