Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

file 2330 lines (1868 sloc) 128.335 kb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330
2004-11-29 flw <flw@gurke>

* README, build.scm, chicken-setup.1, chicken-setup.scm, chicken.texi, configure.in, eval.scm, parameters.scm, wwchicken:
some bugfixes

- eval: ##sys#do-the-right-thing tested feature at compile time, which didn"t of course apply to the run-time
of compiled programs
- chicken-setup: added `-no-install" option

2004-11-29 iamphet <iamphet@gurke>

* csc.scm.in: mingw32: output .dll rather than .so

2004-11-24 flw <flw@gurke>

* README: *** empty log message ***

2004-11-24 iamphet <iamphet@gurke>

* eval.scm, parameters.scm: - mingw32: fixed dll names to search

2004-11-22 flw <flw@gurke>

* csc.scm.in, eval.scm, hen.el, library.scm, makefile.vc, posixwin.scm, runtime.c, TODO, chicken.h, chicken.texi:
Bugfixes, Sergey"s dlll-runtime changes

- eval: warning for declarations in interpreted code passed wrong argument to `error"
- hen.el: added changes contributed by Micky Latowicki
- library: `c-runtime" returns information about linked C runtime library; MSVC build supports linking with
dynamic runtime libs [Thanks to Sergey Khorev]
***DARCS***

Write the long patch description into this file.
The first line of this file will be the patch name.
Everything in this file from the above ***DARCS*** line on will be ignored.

This patch contains the following changes:

M ./chicken.h +1
M ./chicken.texi -2 +12
M ./csc.scm.in -1 +1
M ./eval.scm -1 +1
M ./hen.el -551 +410
M ./library.scm +4
M ./makefile.vc +3
M ./posixwin.scm -2
M ./runtime.c -2 +60

2004-11-17 flw <flw@gurke>

* TODO, build.scm, chicken.texi, configure.in, srfi-13.scm, wwchicken, Makefile.am, README:
- Fixed bug in handling of `pretty-print-width" [Thanks to Lars Rustemeier]
- Makefile.am: added `csc.scm" to CLEAN_FILES [Thanks to Sven Hartrumpf]
- srfi-13: fixed handling of string-parse-start+end return values [Thanks to Alex Shinn]

2004-11-12 flw <flw@gurke>

* HACKING, README, build.scm, chicken.texi, compiler.scm, configure.in, csi.scm, easyffi.scm, eval.scm, examples/eval-client.c, examples/eval-server.scm, examples/makefile.vc, extras.scm, library.scm, parameters.scm, srfi-18.scm, syntax-case.scm, vcbuild.bat, wwchicken:
- srfi-18: added Chris Double"s repl-hack to allow running threads while waiting for user input
- fixed several bugs in examples/makefile.vc [Thanks to Psy-Kosh]
- easyffi: handles typedef"s for function types
- fixed bug in `set-extension-specifier!"
- SRFI-55 support
- `declare" in interpreted code generates a warning
- `use"/`require-extension" also checks `##sys#features" when resolving requirements

2004-11-03 flw <flw@gurke>

* chicken-setup.scm, chicken.h, chicken.texi, configure.in, runtime.c, wwchicken:
- Added externally visible procedures `C_do_[un]register_finalizer()" [as suggested by John Lenz]
- fixed typo in chicken-setup [Thanks to Brian Mastenbrook]

* README, build.scm:
- Added externally visible procedure `C_do_register_finalizer()" [as suggested by John Lenz]

2004-11-01 flw <flw@gurke>

* HACKING, README, build.scm, chicken-setup.scm, chicken.texi, configure.in, csc.1, easyffi.scm, makefile.vc, wwchicken:
- easyffi: structure-maker accepts init-arguments
- `chicken-setup" is now built on Windows systems with the MSVC compiler (preliminary)

2004-10-18 flw <flw@gurke>

* benchmarks/shootout/bench, chicken.texi, csc.scm.in, easyffi.l, easyffi.scm, extras.scm, support.scm, wwchicken, HACKING, README, batch-driver.scm, c-platform.scm, chicken-setup.1, chicken-setup.scm, chicken.1, chicken.css, chicken.h:
- recovered some lost changes in csc.scm.in
- compiler: `-raw" option
- utils: `shift!" and `unshift!"
- fixed unneeded entries in chicken.css [Thanks to Johannes Groedem]
- easyffi: added support for C structures and unions
- compiler: if the last top-level form of a file compiled into a shared object returned #f, dynamic loading
would fail.
- extras: the second argument to `string-intersperse" defaults to " ".

2004-10-11 flw <flw@gurke>

* Makefile.am, README, TODO, banner.scm, build.scm, chicken.h, chicken.texi, configure.in, csc.scm.in, csi.scm, easyffi.l, easyffi.scm, library.scm, tinyclos.scm:
- tinyclos: there was no default initialize method for subclasses of <primitive> [Thanks to Johannes Groedem]
- csc: ".h" and ".hpp" files are processed as Scheme compiled with -ffi; Lars Nilsson pointed out a bug in the
handling of "-l..." on Windows
- easyffi: ___in/___out/___inout qualifiers
- library: `#\xXX" and `#\uXXXX" syntax
- Makefile.am: README.CVS and chicken.pdf are not installed

2004-09-29 flw <flw@gurke>

* Makefile.am, README, TODO, build.scm, chicken-setup.1, chicken-setup.scm, chicken.h, chicken.texi, compiler.scm, configure.in, easyffi.scm, eval.scm, match-support.scm, runtime.c, tweaks.scm:
- added `C_post_gc_hook"
- manual: clarified blocking behaviour of I/O from ports returned by `process" [Thanks to Tim Reid]
- extended range of character codes from 16 to 21 bit
- declarations are also registered in files loaded at compile-time
- chicken-setup: added `-dont-ask" option

2004-09-23 flw <flw@gurke>

* Makefile.am, README, TODO, chicken-setup.scm, chicken.h, chicken.texi, configure.in, extras.scm, psyntax.scm, syntax-case.scm, tinyclos.scm, wwchicken:
- configure.in: -DHAVE_ALLOCA_H will be added to CFLAGS on non-gcc platforms, if needed [Thanks to Mark Baily]
- chicken-setup: simple installs (with only a .scm file and no .setup file) keep the .so in the current directory
- added internal support for annotations in psyntax
- added some examples for `string-split-fields" [Thanks to Christian Pohlmann]
- The Makefile handles now the situation when the system is build in a different directory than the current one
[Thanks to Daniel Goertzen]
- tinyclos: added default initializer for <c++-object> [Thanks to Sergey Khorev]
- extras: `pretty-print" handles pointer objects

2004-09-20 flw <flw@gurke>

* README, TODO, batch-driver.scm, benchmarks/shootout/bench, benchmarks/shootout/heapsort.chicken, benchmarks/shootout/matrix.chicken, benchmarks/shootout/meroon.scm, benchmarks/shootout/meroon/Basics.scm, benchmarks/shootout/meroon/Coercers.scm, benchmarks/shootout/meroon/access.scm, benchmarks/shootout/meroon/alloc.scm, benchmarks/shootout/meroon/anomaly.scm, benchmarks/shootout/meroon/careless.scm, benchmarks/shootout/meroon/clone.scm, benchmarks/shootout/meroon/clostest.scm, benchmarks/shootout/meroon/coinst.scm, benchmarks/shootout/meroon/definers.scm, benchmarks/shootout/meroon/dispatch.scm, benchmarks/shootout/meroon/egal.scm, benchmarks/shootout/meroon/fill.scm, benchmarks/shootout/meroon/genes1.scm, benchmarks/shootout/meroon/genes2.scm, benchmarks/shootout/meroon/handy.scm, benchmarks/shootout/meroon/instance.chicken, benchmarks/shootout/meroon/libgen.scm, benchmarks/shootout/meroon/macinst.chicken, benchmarks/shootout/meroon/macros.scm, benchmarks/shootout/meroon/makefile, benchmarks/shootout/meroon/maker.scm, benchmarks/shootout/meroon/meroon-syntax.scm, benchmarks/shootout/meroon/meroon.chicken, benchmarks/shootout/meroon/modify.scm, benchmarks/shootout/meroon/multi.scm, benchmarks/shootout/meroon/option.scm, benchmarks/shootout/meroon/revision.scm, benchmarks/shootout/meroon/runtime.scm, benchmarks/shootout/meroon/show.scm, benchmarks/shootout/meroon/size.scm, benchmarks/shootout/meroon/trace.scm, benchmarks/shootout/meroon/unveil.scm, benchmarks/shootout/meroon/utils.scm, benchmarks/shootout/meroon/walker.scm, benchmarks/shootout/methcall.chicken, benchmarks/shootout/nestedloop.chicken, benchmarks/shootout/objinst.chicken, benchmarks/shootout/prodcons.chicken, benchmarks/shootout/ringmsg.chicken, benchmarks/shootout/sumcol.chicken, build.scm, chicken.h, chicken.texi, configure.in, posix.scm, posixwin.scm, wwchicken:
- dynamic-and-unsafe marker was incorrectly generated for non-dynamic files
- added Sergey Khorev"s additions to posixwin.scm (system-information, get-host-name, sleep, process, process-wait)
- posix: added `set-root-directory!"
- shootout: fixed heapsort, objinst and methcall use meroon, now

2004-09-15 flw <flw@gurke>

* benchmarks/shootout/bench, benchmarks/shootout/hash.chicken, benchmarks/shootout/wordfreq.chicken, mingw/INSTALL, mingw/Makefile.in, mingw/autogen.sh, mingw/configure.sh, mingw/installdllv.sh, mingw/mingw-cc.sh, mingw/mingw-cxx.sh, wwchicken:
removed ming directory and posixstub.scm

2004-09-13 flw <flw@gurke>

* benchmarks/shootout/README, benchmarks/shootout/ackermann.chicken, benchmarks/shootout/ary.chicken, benchmarks/shootout/bench, benchmarks/shootout/echo.chicken, benchmarks/shootout/except.chicken, benchmarks/shootout/fibo.chicken, benchmarks/shootout/hash.chicken, benchmarks/shootout/hash2.chicken, benchmarks/shootout/heapsort.chicken, benchmarks/shootout/hello.chicken, benchmarks/shootout/lists.chicken, benchmarks/shootout/lists1.chicken, benchmarks/shootout/matrix.chicken, benchmarks/shootout/methcall.chicken, benchmarks/shootout/moments.chicken, benchmarks/shootout/nestedloop.chicken, benchmarks/shootout/objinst.chicken, benchmarks/shootout/prodcons.chicken, benchmarks/shootout/random.chicken, benchmarks/shootout/regexmatch.chicken, benchmarks/shootout/reversefile.chicken, benchmarks/shootout/sieve.chicken, benchmarks/shootout/spellcheck.chicken, benchmarks/shootout/strcat.chicken, benchmarks/shootout/sumcol.chicken, benchmarks/shootout/wc.chicken, benchmarks/shootout/wordfreq.chicken, compiler.scm, configure.in, csi.scm, eval.scm, makefile.vc, posix.scm, posixwin.scm, runtime.c, srfi-18.scm, syntax-case.scm, wwchicken, Makefile.am, README, TODO, banner.scm, build.scm, c-backend.scm, chicken-config.in, chicken-setup.scm, chicken.h, chicken.texi:
- eval.scm: `load" sets `##sys#current-load-file" to loaded filename for duration of load (needed for line-info in debug egg)
- chicken.h, runtime.c: Eric Raible did some much needed cleaning up [Thanks!]
- chicken-setup: added `-csc-option"; errors in scripts were not reported
- chicken-config: resurrected `-extra-libs", because the current version of SWIG needs it
- wwchicken: removed coloring of egg-entries (didn"t work properly anyway)
- runtime.c: FAKE_APPLY (inline-asm hack to simulate `apply") has been disabled - apparently gcc 3.3.3 generates funnny code
with -Os
- compiler, csc: added `post-process" declaration
- posix: added `memory-mapped-file?"
- added posixwin.scm [Thanks to Sergey Khorev!]
- csi: ,ln pprints currently evaluated expression
- eval.scm: `load-noisily" takes couple of keyword arguments
- chicken-setup: allows aborting a sequence of installs
- srfi-18: `thread-start!" accepts a thunk as argument
- syntax-case: `debug-expand" accepts "p" which means: pprint and expand continuously

2004-09-10 njbeckford <njbeckford@gurke>

* README, configure.in:
Support shared libraries on MinGW by dropping -lm linker flag.
Got rid of creation of mingw/Makefile from mingw/Makefile.in

2004-09-09 njbeckford <njbeckford@gurke>

* Makefile.am, configure.in:
Use posixstub.scm instead of posix.scm for Mingw
Got rid of support for mingw/ directory
Do nothing in posixstub.scm

2004-08-30 flw <flw@gurke>

* FAQ.html, README, TODO, batch-driver.scm, build.scm, c-platform.scm, chicken-match-macros.scm, chicken.h, chicken.spec.in, chicken.texi, compiler.scm, configure.in, csi.scm, easyffi.scm, extras.scm, hen.el, library.scm, lolevel.scm, match-support.scm, psyntax-bootstrap.scm, psyntax.scm, runtime.c, scheduler.scm, support.scm, syntax-case.scm, wwchicken:
- configure checks for `-export-dynamic" (that was added in the previous CVS release, actually).
- syntax-case.scm: added `debug-expand".
- csi: prints newline on eof.
- easyffi: the prefix pseudo-declaration does not apply to class names; switching the prefix off didn"t work;
brackets following an identifier are allowed when types are parsed.
- library/optimizer/c-platform: `fp+", and further flonum operations.
- c-platform: `eqv?" should work with flonums in fixnum mode.
- this is release version 1.66 -------------------------------------------------------------------
- runtime.c: flonum-specific numops (`fp+", ...) check their argument type in safe mode.
- Default compiler options for icc and gcc use -Os instead of -O3.
- syntax-case.scm: uses internal syntax-error procedure.
- library.scm: got internal versions of `block-(ref|set!)"
- match: handles native and SRFI-9 records, `define-structure" and friends are gone.
- csi/match-support: "match-support" feature is properly registered and will not be loaded twice when `match"
is required in hygienic mode.
- New declaration-specifiers `c-options" and `link-options".
- `atom?" is now an optimized extended binding.
- batch-driver.scm: fixed bug in invocation of `user-pass-2".
- rewriting rule for `##sys#setslot" didn"t check argument count.
- runtime.c: `string->number" and `number->string" reported wrong required number of arguments [Thanks to
Alejandro Forero Cuervo]
- weak symbol hash-table should be slightly better distributed
- csc: accepts `-L<dir>" and handles invalid options more gracefully
- Runtime-option `-:x" signals uncaught thread-exceptions in primordial thread (is this the right way to
handle it?)

2004-08-18 flw <flw@gurke>

* syntax-case.scm, wwchicken, README, TODO, batch-driver.scm, build.scm, c-platform.scm, chicken-ffi-macros.scm, chicken.1, chicken.texi, compiler.scm, configure.in, easyffi.l, easyffi.scm, hen.el, posix.scm, psyntax.scm, support.scm:
- Added new macros `foreign-parse[/spec]" and read syntaxes `#>$ ... <#" and `#>% ... <#" which allow
access to the FFI parser [Suggested by Daniel B. Faken]
- The tinyclos unit is not anymore used automatically in parsed C++ code
- added `-ffi-custom" option.
- easyffi: handles prerprocessor macros nort starting at the first position of a line.
- posix.scm: added `file-[access|change]-time" and `file-stat" [Suggested by Peter Bex].
- utils.scm: `make-pathname" didn"t remove the leading "/" from the file component, if not needed.
- Fixed bug in the generation of an error-messages if non-matching argument-lists of inlined/customized calls
had a rest parameter.

2004-08-12 flw <flw@gurke>

* README, TODO, batch-driver.scm, build.scm, c-backend.scm, c-platform.scm, chicken-entry-points.scm, chicken-highlevel-macros.scm, chicken-more-macros.scm, chicken-setup.scm, chicken.h, chicken.texi, configure.in, csi.scm, easyffi.l, easyffi.scm, eval.scm, extras.scm, library.scm, lolevel.scm, makefile.dj, makefile.vc, pcre.scm, posix.scm, pregexp.scm, psyntax.scm, regex.scm, runtime.c, support.scm, tcp.scm, wwchicken:
- tcp.scm: added missing #define EINPROGRESS for Windows
- makefile.vc: still had some occurrences of "graph", where "partition" was needed
- csc.scm: fixed bug in handling of "-l..." on Windows
- wwchicken: `stream-cgi" is now in web category, `rgraph" needs `srfi-40"
- extras.scm: `noop", `atom?"
- eval.scm: error messages with a single void argument in addition to the message where
printed without the argument; `repl-prompt" holds now a procedure instead of a string
- chicken-setup.scm: errors during loading of a setup-script did not output anything
- library.scm: added `test-feature?"
- easyffi: parser accepts `#" everywhere now; illegal characters are shown in error message;
user-defined types are heeded when computing classes with full specialization
- "curried" `define" syntax ("(define ((foo x) y) ...)") is supported
- `include" preserves line-number counter of reader
- regex: `grep" uses `string-search" instead of `string-match" [Thanks to Alejandro Cuervo]
- posix: `set-group-id!", `create-session", `process-group-id" and `set-process-group-id!" [suggested by Peter Bex]
- lolevel: `pointer=?"
- new foreign types `symbol" and `number" [The latter was inspired by Daniel B. Faken]
- csi: changed prompt and added `#INDEX"/`#" read syntax for easier handling of the REPL history
- eval.scm: reading in a repl swallows any #\newline directly following the input [suggested by Taylor Campbell]
- chicken-more-macros.scm: `case-lambda" depends on srfi-1 at expansion time (so it"s loaded)
[thanks to Michele Simionato]
- changed the prefix for certain "easy" FFI macros from "__" to "___" to avoid collisions with identifiers
in C standard headers

2004-08-05 njbeckford <njbeckford@gurke>

* chicken-setup.scm:
Fixed bug for "chicken-setup xxx.egg". Previously it would unpack the
egg and then go into a recursive loop. Now it unpacks the egg and
runs the embedded setup script.

2004-08-02 flw <flw@gurke>

* TODO, c-backend.scm, chicken-entry-points.scm, chicken.texi, compiler.scm, easyffi.scm, eval.scm, extras.scm, support.scm, wwchicken:
- fixed instance-ref"s in FFI [Thanks to Petter Egesund]
- extras: `rassoc"; fixed buf in `alist-ref"
- wwchicken: added some links; categorized eggs
- eval: `set-extension-specifier!"

2004-08-01 sven1999 <sven1999@gurke>

* chicken-setup.scm: fixed typo: cmod should be chmod

2004-07-29 sven1999 <sven1999@gurke>

* library.scm: added unsafe variants for list->string and list->vector

2004-07-28 flw <flw@gurke>

* compiler.scm, configure.in, csi.1, extras.scm, hen.el, lolevel.scm, optimizer.scm, parameters.scm, posix.scm, support.scm, wwchicken, README, TODO, batch-driver.scm, build.scm, c-platform.scm, chicken-highlevel-macros.scm, chicken-more-macros.scm, chicken-setup.scm, chicken.texi:
- extras: `alist-ref"
- compiler: `define-optimizer" (but keep it undocumented)
- batch-driver.scm: fixed a bug related to using `user-pass-2"
- lolevel: added `record->vector"
- posix.scm: added `get-groups", `set-groups!" and `initialize-groups" [Suggested by Peter Bex]

2004-07-20 sven1999 <sven1999@gurke>

* chicken.texi:
removed @code from 1 @node line (causes crash on second run of tex), increased build number from 43 to 62

2004-07-19 flw <flw@gurke>

* examples/makefile, srfi-4.scm, support.scm, syntax-case.scm, tcp.scm, tweaks.scm, wwchicken, format.scm, library.scm, lolevel.scm, optimizer.scm, parameters.scm, partition.scm, pcre.scm, posix.scm, profiler.scm, psyntax-bootstrap.scm, regex.scm, runtime.c, scheduler.scm, srfi-13.scm, srfi-18.scm, srfi-25.scm, compiler.scm, configure.in, csi.scm, easyffi.l, easyffi.scm, eval.scm, extras.scm, README, TODO, banner.scm, batch-driver.scm, build.scm, c-backend.scm, c-platform.scm, chicken-default-entry-points.scm, chicken-entry-points.scm, chicken-ffi-macros.scm, chicken-highlevel-macros.scm, chicken-more-macros.scm, chicken-profile.scm, chicken-setup.1, chicken-setup.scm, chicken.h, chicken.scm, chicken.texi:
- easyffi: fixed error in parse-error message for unbalanced parens
- eval: `set-read-syntax!"
- extras: `read-token"
- some output routines use faster version of `write-char"
- compiler: `export" declaration is able to export toplevel variables from psyntax modules
- chicken-setup: some diagnostic output is suppressed in non-verbose mode
- wwchicken: fixed a bug related to creating proper timestamps for eggs
- c-backend.scm: unsafe marker wasn"t generated when no partitioning was selected
- eval.scm: `load" and include-path resolving ignores directory names
- visiting files (either explicitly or via `import") does load syntax-extensions, if needed
- when special core include files (like `chicken-more-macros.scm") are accessed via `use" or
`require-extension", then care is taken to load them only once
- easyffi.l: end of input resets pp-mode
- `print-error-message" didn"t show location (if provided)
- Chicken should now work on amd64 platforms [Thanks to Thomas Weidner and Tollef Fog Heen]
- `machine-type": returns "x86-64 on amd64 platforms
- chicken-setup: unpacks eggs into a temporary directory; host without port didn"t work; addded
`-keep" option
- changed snail-mail address in source file headers
- easyffi.l: uses `reverse-list->string"
- srfi-13: `string-contains-ci" wasn"t implemented; `string-contains[-ci]" had off-by-one error
[Thanks to Peter Wang]
- tcp.scm: error messages give location (mostly)
- tcp.scm: `tcp-connect" doesn"t block other threads [Thanks to Peter Wang]

2004-07-15 njbeckford <njbeckford@gurke>

* partition.scm: Changed copyright over to Felix.

2004-07-07 flw <flw@gurke>

* csi.scm, partition.scm, posix.scm, support.scm, wwchicken, build.scm, c-platform.scm, chicken.1, chicken.h, chicken.scm, chicken.texi, compiler.scm, configure.in, csc.scm.in, README, TODO, batch-driver.scm:
- chicken.h: added missing macro definition for `__discard"
- posix: stat routines did not expand tilde
- wwchicken: updates egg dates and colors table entries
- csi.scm: report was wrong [Thanks to Benedikt Rosenau]
- added `-split-level" compiler option [As suggested by Jonah Beckford]
- slightly better error checking for compiler options
- when processing foreign-declarations in SWIG mode, C syntax checks are disabled

2004-07-06 njbeckford <njbeckford@gurke>

* partition.scm: Imported some lambdas to make work in compiled mode.

* partition.scm: Got rid of most unused methods.

* partition.scm: Changed unit name to 'partition instead of 'graph.

* partition.scm, compiler.scm, chicken.texi, chicken.scm, Makefile.am:
Changed graph.scm to partition.scm.
Fixed bug in partition.scm related to not recalculating all relevant
neighbours.
Added -debug P, -debug Q and -debug R for the partitioning stuff.

2004-07-06 flw <flw@gurke>

* examples/makefile, testsuites/makefile.in, benchmarks/cscbench, optimizer.scm, parameters.scm, posix.scm, runtime.c, support.scm, wwchicken, hen.el, library.scm, makefile.dj, makefile.vc, compiler.scm, configure.in, csc.scm.in, csi.scm, easyffi.l, easyffi.scm, eval.scm, extras.scm, README, TODO, batch-driver.scm, build.scm, c-backend.scm, c-platform.scm, chicken-ffi-macros.scm, chicken-highlevel-macros.scm, chicken-more-macros.scm, chicken-setup.1, chicken-setup.scm, chicken.1, chicken.scm, chicken.texi, FAQ.html, Makefile.am:
- `define-record-type" expanded into code that didn"t allow subsequent exported definitions
in psyntax module forms [Thanks to Grzegorz Chrupala]
- removed some leftover occurrences of `-extra-libs" [Thanks to Sven Hartrumpf]
- `define-method" expands into a non-definition, which works better with the psyntax module system
[Thanks to Grzegorz Chrupala again]
- ",r" command in csi was broken
- library: added `memory-statistics"
- call/cc called with a known lambda is optimized away in case the continuation-variable is never used
- csi: uses `memory-statistics"
- fixed some errors in the manual [Thanks to Peter Barabas and Benedikt Rosenau]
- Jonah Beckford contributed a partitioning algorithm to the compiler that allows splitting a Scheme
file into multiple C files - very cool but still experimental
- extras: `conc"
- renamed unit `script-utils" to `utils"
- csc: handles `-split" properly
- compiler prefixes identifiers when generating split files
- easyffi: Added `__discard" marker

2004-06-19 flw <flw@gurke>

* examples/README, examples/makefile, optimizer.scm, psyntax.scm, wwchicken, eval.scm, library.scm, batch-driver.scm, c-platform.scm, chicken-ffi-macros.scm, chicken-highlevel-macros.scm, chicken-more-macros.scm, chicken-setup.1, chicken-setup.scm, chicken.css, chicken.h, chicken.texi, FAQ.html, Makefile.am, README, TODO:
- some library files were still not up-to-date with respect to the changed declaration syntax for internal
procedures (like FFI stubs or trampolines). This caused gcc 3.4 to choke on tcp (and possibly other files
that hadn"t been re-translated for longer) [Thanks to Pierre]
- eval.scm: `syntax-error"
- the SRFI-22 driver programs (trampolines) have been removed
- Makefile.am: added dependency for library.c (build.scm)
- chicken-setup: options `-fetch" and `-install-as-root"
- `open-output-file": append-mode was completely broken
- added css stylesheet for HTML version of manual [Thanks to Johannes Groedem]
- added case for amd64 to chicken.h (doesn"t yet run, though) [Thanks to thomas001]
- `define-foreign-[type|variable]" didn"t check first argument for being a symbol [thanks to Eric Meritt]
- added `use" as an alias for `require-extension"
- `command-line-arguments" filters out runtime options (anything starting with "-:")
- added another optimizer rule; `thread-specific[-set!]" is inlined in unsafe mode
- `print[*]" returns 1st argument

2004-06-13 njbeckford <njbeckford@gurke>

* hen.el:
Fixed: char table range must be t, charset, char or vector ... using solution at http://list-archive.xemacs.org/xemacs-beta/200310/msg00407.html

2004-06-09 flw <flw@gurke>

* wwchicken, support.scm, srfi-13.scm, parameters.scm, library.scm, hen.el, eval.scm, csi.scm, chicken.texi, chicken-more-macros.scm, chicken-config.in, chicken-highlevel-macros.scm, c-platform.scm, batch-driver.scm, README, Makefile.am:
- removed all support for SRFI-7
- the implementation of SRFI-9 is now much faster (equivalent to `define-record")
- fixed srfi-13"s `string-contains[-ci]"
- wwchicken generates egg-list and index-page automatically

2004-06-07 flw <flw@gurke>

* examples/mmcp.scm, examples/makefile, benchmarks/cscbench, wwchicken, syntax-case.scm, posix.scm, makefile.vc, makefile.dj, hen.el, csi.scm, csc.scm.in, compiler.scm, configure.in, chicken.texi, chicken-setup.scm, chicken-profile.scm, chicken-config.in, c-platform.scm, build.scm, batch-driver.scm, README, TODO, Makefile.am, FAQ.html:
- posix.scm: patched `file-mkstemp" [Thanks to Johannes Groedem]
- rcsi has been dumped
- csi now only uses the library, eval and extras units
- `extras" has been added to the list of units used by default in compiled code (this means csi
and compiled code have basically access to the same set of definitions)
- csc always links safe libs, providing `-unsafe-libraries" always links with unsafe ones (independent
of any other setting) [Thanks to Sven Hartrumpf]
- chicken-config: removed `-extra-libs" option (`-libs" adds all libraries now)
- chicken-setup: attempts to handle the "dll" extension transparently in `make" forms [Thanks to T. Kurt Bond]
- `undefine-macro!" and `macro?" work now with highlevel macros

2004-05-30 flw <flw@gurke>

* srfi-13.scm, support.scm, runtime.c, posix.scm, library.scm, format.scm, extras.scm, csc.scm.in, chicken.1, chicken.texi, compiler.scm, c-backend.scm, c-platform.scm, chicken-highlevel-macros.scm, chicken-more-macros.scm, TODO, batch-driver.scm:
- The emitting of the symbol for detecting safe/unsafe library mismatches didn"t work properly [Thanks to Peter Barabas]
- posix.scm: `user-information" returns now either a list or #f
- `include" accepts any number of arguments [Suggested by Taylor Campbell]
- library: added `reverse-list->string" (and removed it from srfi-13) and added some minor optimizations
to `[##sys#]substring" [Thanks to Sven Hartrumpf]
- posix: added `file-mkstemp" [Contributed by Johannes Groedem]
- format, library: uses `reverse-list->string"
- library: `read" is now faster [Thanks to Alain Mellon and Clifford Stein]
- chicken.texi: fixed some problems with "<" / ">" in HTML output [Thanks to Peter Barabas]

2004-05-27 catfive <catfive@gurke>

* wwchicken:
- fixed wwchicken manual links for compiler and interpreter command-line format

2004-05-26 flw <flw@gurke>

* support.scm, wwchicken, runtime.c, posix.scm, lolevel.scm, makefile.vc, optimizer.scm, hen.el, library.scm, easyffi.scm, eval.scm, csc.scm.in, configure.in, c-platform.scm, chicken-setup.scm, chicken.h, chicken.texi, compiler.scm, README, TODO, build.scm:
- makefile.vc: csc.scm.in is copied into csc.scm (or csc.scm wouldn"t be found)
- eval.scm: `set!" allows assignments to keywords [Thanks to Mikael]
- support.scm, optimizer.scm: inlined lambdas with empty rest list generated invalid code [Thanks Daniel B. Faken]
- chicken-setup: doesn"t assume ".so" anymore for compiled extensions, `install-extension" silently
handles ".so" extension on Windows [Thanks to T. Kurt Bond]
- library.scm: the third argument to `substring" is now optional
- csc.scm.in: `-l..." is passed to linker
- csc: .i files are passed to swig and passed on to chicken or the C compiler; -swig passes options to SWIG directly
- hen.el: added a few kewords for highlighting
- runtime.c: removed C_alloc_in_heap, since the continuation can not be saved and will be invalid if GC should occur
- compiler: rewriting rules for `string-append" and `substring" in unsafe mode; removed some unneeded variable
initialisations from compiler.scm
- added `custom-declare" declaration and processing of `.csc" files to compiler/csc for doing weird post-compilation
stuff...
- easyffi: `typedef ... *ID" is allowed
- posix: `user-information" returns 7 * #f, if the user can"t be found [Thanks to Peter Wang]

2004-05-20 flw <flw@gurke>

* eval.scm, configure.in, build.scm, chicken-config.in, chicken.texi, README, TODO, Makefile.am:
- eval.scm: usage of the CHICKEN_REPOSITORY variable for setting the repository-directory was broken
[Thanks to Peter Wang]
- removed csc.scm from distro-tarball [Thanks to Daniel B. Faken]
- chicken-config used `-Wl,-R" on Mac OS X, which is wrong [Thanks to Houman Zolfaghari]
- eval.scm: `require" didn"t check current directory [Thanks to Alain Mellan]

2004-05-19 flw <flw@gurke>

* wwchicken, README, chicken-default-entry-points.scm, chicken-setup.scm, chicken.h, chicken.texi, compiler.scm, csi.scm, extras.scm, hen.el, runtime.c:
- chicken-setup: `-program-path" does not influence path to chicken tools
- runtime.c: added `CHICKEN_is_running()"
- extras.scm: fixed bug in `write-string" [Thanks to Alejandro Forero Cuervo]
- csi.scm: fixed wrong implementation of `##csi#symbols-matching" [Thanks to Linh Dang]
- chicken-default-entry-points.scm: entry-point counter was not adjusted [Thanks to Daniel B. Faken]

2004-05-15 flw <flw@gurke>

* tinyclos.scm, wwchicken, pregexp.scm, runtime.c, makefile.vc, parameters.scm, extras.scm, hen.el, library.scm, csc.scm.in, easyffi.scm, eval.scm, compiler.scm, configure.in, chicken.h, chicken.texi, Makefile.am, README, build.scm, chicken-setup.scm:
- removed `extension-path", exposed `extension-info"
- chicken-setup stores full pathname in info file
- renamed `chicken-format-profile" to `chicken-profile"
- `import" also searches repository-path
- chicken-setup: file-extraction from downloaded files was broken (and several other things)
- warnings flush output
- added CHICKEN_global_... API
- compiler: `require-extension" warns if extension is not currently installed
- chicken-setup: automatically adds full path when `run"ning installed chicken programs;
verbose mode adds `-v" to csc invocations
- fixed two bugs in pregexp.scm [Thanks to Shmul]
- easyffi.scm: added `destructor_name" and `exception_handler" pseudo declarations
- tinyclos.scm: result-handling of type `(instance ...)" was broken for returned NULL pointers
- fixed a few bugs in the Windows build

2004-05-10 flw <flw@gurke>

* wwchicken, syntax-case.scm, makefile.vc, eval.scm, configure.in, chicken-setup.1, chicken-setup.scm, chicken.texi, chicken-profile.scm, chicken-profile.1, batch-driver.scm, build.scm, README, Makefile.am, FAQ.html:
- removed `extension-path`, exposed `extension-info

2004-05-09 flw <flw@gurke>

* parameters.scm, wwchicken, lolevel.scm, makefile.vc, hen.el, eval.scm, csc.scm.in, configure.in, csc.1, chicken.texi, chicken-setup.scm, chicken-setup.1, build.scm, README, Makefile.am:
- csc and chicken-format-profile are now executables
- added manpage for chicken-format-profile
- completely overhauled extension loading mechanism
- chicken-setup has been completely rewritten
- lolevel.scm: fixed bug in `pointer-f32/64-set!` [Thanks to jemhoff at student dot umass dot edu]

2004-05-05 flw <flw@gurke>

* configure.in, csi.scm, eval.scm, extras.scm, hen.el, parameters.scm, support.scm, build.scm, c-backend.scm, chicken-highlevel-macros.scm, chicken-more-macros.scm, chicken.texi, compiler.scm, Makefile.am, README, TODO, banner.scm, batch-driver.scm:
- #!eof is handled properly by the evaluator and compiler as a literal
- `read-line' optimization is disabled on Windows [Thanks to lars Rustemeier]
- added `require-extension'
- info files are not split, which seems to work better [Thanks to Linh Dang]

2004-05-03 flw <flw@gurke>

* FAQ.html, LICENSE, README, README.CVS, chicken.texi, format.txt, tinyclos-examples.scm:
moved files from doc directory into base dir

* library.scm, psyntax.scm, runtime.c, scheduler.scm, wwchicken, Makefile.am, TODO, c-backend.scm, compiler.scm, eval.scm, extras.scm:
- `#!eof' reads as end-of-file object, `#!eof' is also the printed reprsentation
- removed `package'
- scheduler.scm: uses usleep() on Cygwin [Thanks to Feanor]
- now uses texinfo format for documentation [Many thanks to Linh Dang for translating the manual]
- moved documentation files into base directory
- extras.scm: fixed bug in `disjoin' [Thanks to Peter Wang]
- library.scm: reader doesn't read `:' as a keyword

2004-04-30 flw <flw@gurke>

* wwchicken, syntax-case.scm, runtime.c, library.scm, makefile.vc, match-support.scm, psyntax.scm, eval.scm, extras.scm, TODO, compiler.scm, csi.scm:
- match-errors raise (exn match)
- syntax errors raise (mostly) (exn syntax)
- csi: added hooks for emacs interface [as suggested by Linh Dang]
- library: hid namespace/import stuff again
- fixed a bug in the manual (foreign-value example was wrong) [Thanks to Taylor Campbell]

2004-04-29 flw <flw@gurke>

* parameters.scm, pcre.scm, psyntax-bootstrap.scm, psyntax.scm, runtime.c, srfi-18.scm, syntax-case.scm, build.scm, c-backend.scm, compiler.scm, configure.in, csc.bat, easyffi.l, eval.scm, extras.scm, format.scm, library.scm:
- (declare (foreign-parse ...)) didn't properly macroexpand parsed code [Thanks to Matthias Heiler]
- fixed another bug in the C syntax checker, related to handling `#include <...>'
- runtime.c: added missing C_regparm declarations to please gcc 3.4 [Thanks to Sven Hartrumpf]
- library.scm: added a low-level 2-argument string-append (`##sys#string-append') for internal use
- eval.scm: added `##sys#do-the-right-thing' in preparation for a generic extension requirement form
- bumped version to 1.46
- syntax-case: changed generation of unique (module) identifiers slightly
- script-utils: added `read-all'
- extras: `read-file' accepts a filename, now

2004-04-21 flw <flw@gurke>

* support.scm, configure.in, csi.1, csi.scm, easyffi.l, easyffi.scm, eval.scm, format.scm, library.scm, batch-driver.scm, build.scm, c-backend.scm, chicken.1, compiler.scm:
- added missing documentation for `export' declaration [Thanks to Terence Brannon]
- fixed easyffi parser bug that caused preprocessor-state not to be cleared [Thanks to Feanor]
- removed line-number output in ffi-parser errors (which was incorrect anyway)
- keyword processing uses internal version of `get-keyword', and keyword-lookup is a bit faster
- changed default keyword-style to suffix
- chicken-format-profile.bat was built incorrectly
- rcsi still has access to all non-standard syntax
- C syntax checker didn't handle preprocessor commands properly in certain situations
- csc: only links with unsafe libs in benchmark-mode or with `-unsafe-libraries'
- Fixed some typos in the documentation [Thanks to z0d and Kim Liu]
- C syntax-checks for `foreign-declare' declarations checked each string separatly (which was wrong)
- csc: -shared + -embedded doesn't pass `-dynamic' to chicken (otherwise implicit exit handler isn't called)
- `format' prints keywords more consistently [Thanks to Alain Mellan]

2004-04-15 flw <flw@gurke>

* examples/calendar.scm, c-backend.scm, chicken-setup.1, chicken.h, configure.in, csc.bat, csi.scm, easyffi.l, extras.scm, library.scm, lolevel.scm, makefile.vc, psyntax.scm, runtime.c, scheduler.scm, srfi-18.scm, wwchicken, Makefile.am, TODO, batch-driver.scm, build.scm:
- scheduler: added `##sys#thread-unblock!' (and renamed old version to `##sys#thread-basic-unblock!')
- extras.scm: added fast path to `read-line' that uses fgets() for FILE* ports
- configure.in: -fno-strict-aliasing is now the default for gcc
- chicken.h: added missing prototype for C_i_foreign_tagged_pointer_argumentp
- Makefile.am: added target for chicken-format-profile
- c-backend.scm, runtime.c: loading code dynamically checks now whether the executing runtime and the one linked to the
loaded shared object are identical (i.e. have the same safety settings) [Thanks to Category 5 for suggesting a clever solution]
- Windows batch files are properly generated (without "#!..." line)
- chicken-setup: added `-registry' option
- `(define (...) ...)' didn't handle DSSSL keywords correctly with the syntax-case macro system
- updated makefile.vc
- fixed handling of she-bang line in srfi-7 scripts
- fixed bug in FFI C parser [Thanks to Daniel B. Faken]

2004-04-11 flw <flw@gurke>

* csi.scm, easyffi.scm, eval.scm, library.scm, lolevel.scm, psyntax.scm, runtime.c, support.scm, wwchicken, TODO, batch-driver.scm, build.scm, c-platform.scm, chicken-ffi-macros.scm, chicken.1, chicken.h, compiler.scm, configure.in, csc.1, csc.bat:
- easyffi: checks C syntax of foreign-declare, foreign-[callback-]lambda* and foreign-value/foreign-code
- option `-disable-c-syntax-checks'
- load-verbose is set to #t when `-:d' is given
- csi: features #:csi, #:rcsi
- some minor internal helper stuff for tagged pointers
- chicken-setup: `+[...]options' didn't work correctly
- lolevel: `tag-pointer', `tagged-pointer?' and `pointer-tag'
- the reader accepts symbols starting with `#%' and `#!', `#! ...' is only treated as commment
when used in the interpreter and it appears on the first line
- batch-driver: erroneously added `use' declaration for lolevel unit, when compiling she-bang scripts
- syntax `(define VAR)' is allowed now
- extended lambda lists (DSSSL style)
- `get-keyword' is slightly more relaxed

2004-03-31 flw <flw@gurke>

* wwchicken, chicken-match-macros.scm, syntax-case.scm, chicken-ffi-macros.scm, batch-driver.scm, TODO:
- syntax-case macro system loads ffi-macros before compilation
- fixed bug in expansion of `define-foreign-type'
- removed some dependencies of `match' from chicken-ffi-macro.scm
- added missing chicken-match-macros.scm and chicken-ffi-macros.scm to CVS [Thanks to Sven Hartrumpf]

2004-03-29 flw <flw@gurke>

* TODO, build.scm, chicken-default-entry-points.scm, chicken-entry-points.scm, chicken-highlevel-macros.scm, chicken-more-macros.scm, chicken.scm, configure.in, csc.bat, csi.scm, easyffi.scm, examples/calendar.scm, examples/ctclsh.scm, extras.scm, lolevel.scm, syntax-case.scm, tinyclos.scm, wwchicken, Makefile.am:
- easyffi: `const' variables are now always accessed by name and are always exported as a normal variable
- csc: didn't pass `-static' to the linker, when compiling a static executable
- tinyclos.scm: ##tinyclos#compute-std-cpl is now exported to allow fiddling with the MRO
- removed URL stuff again
- moved FFI macros into separate include file (`chicken-ffi-macros.scm')
- renamed all macro definition files by adding `chicken-' prefix (match.scm, entry-points.scm, default-entry-points.scm,
highlevel-macros.scm and moremacros.scm)
- added `define-foreign-record'
- bumped version to 1.42
- extras: string-chop
- renamed formatprofile to chicken-format-profile

2004-03-26 catfive <catfive@gurke>

* wwchicken:
small changes to feature list order and manual unit display

2004-03-22 flw <flw@gurke>

* configure.in, csc.bat, csi.scm, easyffi.l, easyffi.scm, eval.scm, formatprofile.bat, library.scm, lolevel.scm, makefile.vc, posix.scm, psyntax.scm, runtime.c, support.scm, tcp.scm, wwchicken, Makefile.am, TODO, batch-driver.scm, build.scm, c-backend.scm, chicken-config.in, chicken.h:
- csc: added `-W' as an alias for `-windows'
- added foreign type specifiers `byte' and `unsigned-byte'
- fixed bug in `string>=?' and `string<=?' [Thanks to Sven Hartrumpf]
- `require' of a used library unit printed load message even when already loaded
- formatprofile.bat will be properly built now
- argument-count error-messages print somewhat nicer (slightly)
- `tcp-listen' accepts optional argument to restrict receiving IP address
- added "tag" specifications to `#> ... <#' syntax
- added `#>: ... <#'
- script-utils: added URL parsing
- the additional paths given via `-ffi-include-path' replaced the default ("."), but should have been be added
- rcsi has to use syntax-case unit for SRFI-22 scripts
- fixed a few bugs in makefile.vc
- added `(exn runtime limit)' and `(exn arity)' conditions
- listed some exceptions in the manual (not complete, yet)
- added internal hack to allow self-evaluating symbols
- bumped version to 1.41
- `-Wl,-R...' isn't added to csc anymore and is not used on OS X [Thanks to Category 5]

2004-03-13 flw <flw@gurke>

* mingw/Makefile.in, Makefile.am, batch-driver.scm, build.scm, c-backend.scm, chicken.1, chicken.h, compiler.scm, configure.in, csc.1, csi.scm, easyffi.scm, eval.scm, library.scm, makefile.dj, makefile.vc, rcsibatch.bat, runtime.c:
- added `rcsi' (a restricted, paired down version of csi), this is also the interpreter invoked by the SRFI-22 trampolines)
[suggested by Michele Simionato]
- `(define-macro SYMBOL1 SYMBOL2)' is now allowed
- added several missing exports to easyffi.scm
- added `require-imports', the `-require-imports' option and the `CHICKEN_require_imports()' API
- `condition-property-accessor' accepts optional third argument; `print-error-message' handles incomplete comndition
objects better

2004-03-08 flw <flw@gurke>

* batch-driver.scm, build.scm, c-backend.scm, c-platform.scm, chicken-setup.1, chicken.1, chicken.h, compiler.scm, configure.in, csc.bat, csi.scm, easyffi.l, easyffi.scm, eval.scm, library.scm, lolevel.scm, runtime.c, support.scm, test-infrastructure-hygienic.scm, TODO:
- lolevel: added `global-make-unbound!' [suggested by Michele Simionato]
- runtime-option `-:o' and compiler-option '-disable-stack-overflow-checks'
- names of external definitions are checked for being valid C identifiers
- `abort' signals condition with 'arguments and 'location properties
- support for multiple symbol tables
- fixed bug in compiler-handling of `location'
- removed all stuff related to `visit'
- library: `import'
- lolevel: `locative-ref' didn't check argument count
- csc: `-cxx' selects alternative C++ compiler; arguments containing "%" are unquoted [suggested by Todd Kueny]
- chicken-setup: added a bunch of options to change/add options to the compiler stages; fixed several bugs related to
downloading eggs
- test-infrastructure: some aliases for output-generation APIs were missing [Thanks to Michele Simionato]
- bumped version to 1.38

2004-03-01 flw <flw@gurke>

* eval.scm, extras.scm, posix.scm, Makefile.am, TODO, batch-driver.scm, build.scm, c-platform.scm, configure.in, csc.bat, csi.1, csi.scm:
- extras: `shuffle' uses `sort!' instead of `sort' [thanks to Sven Hartrumpf]
- csc: added `-unsafe-libraries', compiling dynamically loadable file in unsafe mode links now by default with safe libraries
- csc, chicken-config: automatically adds `-Wl,R%libdir%' to linker invocation, if using gcc
- require accepts lists as pathnames for loading unregistered extensions, so "(require '(a b c))" will be equivalent
to `(load "a/b/c")', if no extension is registered under this name
- chicken, csc, csi: added `-syntax[-at-run-time]' as alias for `-hygienic[-at-run-time]' [Suggested by Category 5]
- chicken-setup: fixed bug in downloading routine
- posix: `process' forked one process too many
- extras: added `alist-update!'
- fixed several LaTeX bugs in the manual

2004-02-24 flw <flw@gurke>

* build.scm, chicken-setup.1, chicken.h, compiler.scm, configure.in, extras.scm, library.scm, lolevel.scm, runtime.c, srfi-25.scm:
- chicken-setup.in: allowed additional property-list in repository entries, added `-host' option
- added `make-weak-locative', `make-locative' returns now a non-weak one
- `location' always returns locatives for movable data
- added `#$' as an abbreviation for `location'
- chicken-setup: `-host' option accepts optional port specification
- print-error-message didn't handle condition objects without any message or arguments
- added `CHICKEN_[new|delete]_gc_root' and `CHICKEN_gc_root_[ref|set]' for more conveniently handling
GC-roots from C code
- extras.scm: added `shuffle' [suggested on c.l.s by Michele Simionato]
- csc.in: `-c++' implies `-ffi-define __cplusplus'

2004-02-19 flw <flw@gurke>

* benchmarks/cscbench, benchmarks/plists, library.scm, runtime.c, support.scm, TODO, batch-driver.scm, chicken.h, easyffi.l, easyffi.scm:
- easyffi.scm: `protected' member functions are ignored
- added missing `plists' file to benchmarks [Thanks to Sven Hartrumpf]
- fixed some references to the old `>>>' prompt in the manual [Thanks to Benedikt Rosenau]
- cscbench: added `-I..' to C compiler options [Thanks to Sven Hartrumpf]
- chicken-setup.in: supports downloading of eggs
- support.scm, batch-driver.scm: `-debug e' lists exported globals
- easyffi: added `__specialize' and `__abstract' keywords
- chicken.h, runtime.c: added new pointer type for exclusive use by SWIG

2004-02-09 flw <flw@gurke>

* benchmarks/boyer.scm, benchmarks/browse.scm, benchmarks/conform.scm, benchmarks/cpstak.scm, benchmarks/cscbench, benchmarks/ctak.scm, benchmarks/dderiv.scm, benchmarks/deriv.scm, benchmarks/destructive.scm, benchmarks/div-iter.scm, benchmarks/div-rec.scm, benchmarks/dynamic.scm, benchmarks/earley.scm, benchmarks/fft.scm, benchmarks/fib.scm, benchmarks/fibc.scm, benchmarks/fprint.scm, benchmarks/fread.scm, benchmarks/hanoi.scm, benchmarks/lattice.scm, benchmarks/maze.scm, benchmarks/nqueens.scm, benchmarks/puzzle.scm, benchmarks/scheme.scm, benchmarks/tak.scm, benchmarks/takl.scm, benchmarks/takr.scm, benchmarks/traverse.scm, benchmarks/travinit.scm, benchmarks/triangl.scm, configure.in, csc.bat, csi.scm, eval.scm, makefile.vc, runtime.c, scheduler.scm, support.scm, syntax-case.scm, Makefile.am, TODO, batch-driver.scm, build.scm, c-platform.scm, chicken.1, chicken.h, chicken.scm, compiler.scm:
- removed compiler option `-compile-time-macros-only' and declaration `compile-time-macros-only'
- added compiler option '-run-time-macros' and declaration 'run-time-macros'
- makefile.vc: removed targets for DLL-libraries (these are not needed)
- added benchmarks
- `define-embedded' handles string results in a more convenient manner
- `define-entry-point' generates more efficient code for single result values
- chicken-setup.in: doesn't depend on gnutar anymore [Thanks to TiM]
- csc.in: added `-dll' option for generating Windows DLLs

2004-02-05 flw <flw@gurke>

* examples/eval-server.scm, Makefile.am, TODO, banner.scm, build.scm, compiler.scm, configure.in, eval.scm, examples/ctclsh.scm, library.scm, syntax-case.scm, tinyclos.scm:
- syntax-case.scm: fixed circularity issue in the definition of `quasiquote' [Thanks to Clifford Stein]
- eval.scm: local definitions where in certain situations not processed [Thanks to Michele Simionato]
- library.scm: `list->vector' didn't handle dotted lists
- configure.in: uses -fno-strict-aliasing with gcc 3.3
- compiler.scm: detection of argument-count mismatch for customizable procedures didn't check for dotted lambda-lists
- tinyclos.scm: calls to methods with a wrong number of arguments crashed
- the definition of `define-entry-point' has now been moved to the include file `entry-points.scm'
- entry-points.scm: added a new macro for defining named entry-points (`define-embedded')
- changed version to 1.34

2004-02-02 flw <flw@gurke>

* csi.1, csi.scm, optimizer.scm, runtime.c, compiler.scm, csc.bat:
- removed `-slib' option
- calls to known procedures generate better error messages if the length of the argument lists don't match

2004-01-29 flw <flw@gurke>

* build.scm, configure.in, csi.scm, easyffi.scm, eval.scm, runtime.c, TODO:
- runtime.c: printf format strings should generate any warnings [Thanks to Sven Hartrumpf]
- easyffi.scm: added `transform' pseudo declaration [Suggested by Daniel Faken]
- eval.scm, csi.scm: renamed `read-eval-print-loop' to `repl'
- eval.scm: added parameter `repl-prompt' (defaults now to "#;> ", unless it turns out to be a bad idea)
- bumped version to 1.33

2004-01-28 flw <flw@gurke>

* TODO, build.scm, chicken-setup.1, chicken-setup.scm, chicken.h, configure.in, csi.scm, easyffi.scm, eval.scm, parameters.scm, runtime.c, Makefile.am:
- configure.in: checks for stdint.h, if not available: uses sys/types.h [Thanks to Category 5]
- easyffi.scm: in fixnum mode, the `int' type is treated as `__fixnum'
- runtime.c: dload tries to resolve toplevel function with and without prefix [Thanks to Oskar Schirmer for suggesting this]
- runtime.c: `software-type' returns 'unix on Mac OS X
- parameters.scm, eval.scm, chicken-setup.scm: different library and shared object extensions to facilitate Mac OS X quirks
- easyffi.scm: enum-names are recognized as types and passed as objects of type `(enum NAME)'
- csc.in: fixed discrepancy in -help output [Thanks to Sven Hartrumpf]
- moved all setup stuff into separate script (`chicken-setup')
- easyffi.scm: member definitions outside of class-declarations are ignored

2004-01-19 flw <flw@gurke>

* Makefile.am, build.scm, c-platform.scm, chicken.1, chicken.h, chicken.scm, compiler.scm, configure.in, easyffi.scm, eval.scm, library.scm, makefile.vc, runtime.c:
- chicken.h: added include for time.h
- makefile.vc: upregexp.c wasn't built from pregexp.scm
- chicken.scm: lambda-lifting doesn't always work completely reliable, and is now disabled by default
(only enabled in benchmark-mode)
- runtime.c: GC forwarding-pointers did not work with very large heaps [Thanks to Sven Hartrumpf]
- eval.scm, compiler.scm: low-level macros that expand into defining forms in non-toplevel contexts are
handled
correctly [Thanks to Michele Simionato for pointing out this problem]
- easyffi.scm: abstract classes don't get a destructor defined; if in case-insensitive mode, names are
downcased
- chicken.h: __mips64 compiles in 64-bit mode [Thanks to TiM]
- library.scm, c-platform.scm: added `##sys#poke-double' [Thanks to Todd R. Kueny, Sr]

2004-01-14 flw <flw@gurke>

* TODO, configure.in, runtime.c, srfi-18.scm:
- configure.in: changed test for darwin* to *darwin*
- runtime.c: `machine-type' returns 'ia64 on IA64
- runtime.c: alignment-hole marking in the garbage collector could run over end of heap-space

2004-01-12 flw <flw@gurke>

* srfi-18.scm, TODO, build.scm, chicken.h, configure.in, library.scm, posix.scm, runtime.c:
- configure.in: renamed `--enable-mutation-hook' to `--enable-gc-hooks'
- runtime.c, chicken.h: added C_gc_trace_hook
- library.scm: `current-seconds' returns a flonum, now [Thanks to Alejandro Forero Cuervo]
- posix.scm: `file-modification-time' returns a float, other time routines accept floats as seconds
- runtime.c, chicken.h, srfi-18.scm: uses floating-point values for time_t seconds

2004-01-07 flw <flw@gurke>

* Makefile.am, chicken.h, configure.in, runtime.c:
- added C_mutation_hook to runtime.c and `--enable-mutation-hook' configuration option

* TODO, batch-driver.scm, build.scm, c-backend.scm, c-platform.scm, chicken-setup.scm, chicken.h, chicken.scm, compiler.scm, configure.in, csi.scm, easyffi.scm, eval.scm, extras.scm, library.scm, lolevel.scm, optimizer.scm, parameters.scm, pcre.scm, posix.scm, profiler.scm, regex.scm, runtime.c, scheduler.scm, srfi-18.scm, srfi-25.scm, srfi-4.scm, support.scm, tcp.scm, tinyclos.scm, tweaks.scm:
- extras.scm: `pretty-print' respects record-printers defined with `define-record-printer'
- easyffi.scm: regexp-substitution declarations are done in the proper order, and apply to all occurrences
- easyffi.scm: method-names were not fixed (name-substituted, etc.)
- bumped version to 1.29
- updated copyrights to 2004
- runtime.c: changed some size-argument related to heap-resizing to unsigned [Thanks to Sven Hartrumpf]
- tinyclos.scm: added `<integer>' class
- easyffi.scm: added `full_specialization' pseudo declaration
- manual.tex: fixed bug in description of `require-at-runtime' [Thanks to Category 5]

2003-12-27 uid67214 <uid67214@gurke>

* Makefile.am, TODO, batch-driver.scm, build.scm, c-backend.scm, c-platform.scm, chicken-setup.scm, chicken.h, compiler.scm, configure.in, csc.bat, csi.scm, easyffi.scm, eval.scm, extras.scm, library.scm, lolevel.scm, makefile.dj, makefile.vc, pcre.scm, posix.scm, pregexp.scm, runtime.c, scheduler.scm, srfi-25.scm, srfi-4.scm, support.scm, tinyclos.scm:
- Makefile.am: runs `csi -setup' at installation time
- added new foreign type specifier `(instance CNAME SCHEMENAME)'
- easyffi.scm: C++ object pointers can now be passed/returned transparently as TinyCLOS instances
- csc, chicken, csi: accept `--help'
- easyffi.scm: `abstract' pseudo declaration; support for function-pointer types
- runtime.c: fixed buffer-overflow in low-level file-opening routine [Thanks to Michele Simionato]
- srfi-4.scm: #F wasn't properly read in case-sensitive mode
- eval.scm: `(begin)' is allowed in bodies
- scheduler.scm: uncaught exceptions in child threads trigger warning (if enabled)
- library.scm: `(enable-warnings [BOOL])'
- srfi-25.scm: some primitives didn't check argument types
- library.scm: `print-error-message' accepts optional third argument
- library.scm, runtime.c: added `print-backtrace'
- chicken-setup.scm: `csi -setup' lists extensions alphabetically
- bumped version to 1.28
- renamed regex2.scm to pregexp.scm
- added pcre.scm, PCRE is used now be default, when available
- pregexp.scm, pcre.scm: register extra feature identifiers
- configure.in: on Mac OS X, `-L/sw/include' is added to LIBS
- runtime.c: "_" prefix is added for OpenBSD + a.out [Thanks to "Category 5"]
- compiler: `-explicit-use' prevents tinyclos unit from being used automatically (in easyffi.scm)
- csi.scm: report displays regex flavor
- extras.scm: added `hash-table-size'
- easyffi.scm: `__scheme_value' was converted into wrong type specifier
- posix.scm: should now compile under IRIX [Thanks to "Fizzie"]
- easyffi.scm: function prototypes with const return types were not correctly parsed
- pcre.scm: non-matched capturing subpatterns were not included in the final match-list (as #f)
- lolevel.scm: added `object-' prefix to some procedure names

2003-11-26 flw <flw@gurke>

* Makefile.am, TODO, build.scm, c-backend.scm, chicken-setup.scm, compiler.scm, configure.in, psyntax.scm, support.scm:
- chicken-setup.scm: added `do-chicken-setup'
- documented `test-compile'
- Makefile.am: removed last remnants of "CPUCONFIGFLAGS" [Thanks to Joerg Wittenberger]
- manual.tex: split up all those "Miscellaneous" sections a little
- configure.in: added `--with-pregexp' option
- highlevel-macros.scm: `foreign-value' wasn't defined properly
- support.scm: size-estimation for flonums was wrong
- chicken-setup.scm: `csi -setup' lists extension version (if defined); fixed another bug in `chicken-setup' macro
- c-backend.scm: fixnum-conversion of FFI calls used hardcoded, 32-bit assuming bitmask [Thanks to "Category 5"]

2003-11-22 flw <flw@gurke>

* Makefile.am, TODO, banner.scm, batch-driver.scm, build.scm, chicken-config.in, chicken-setup.scm, compiler.scm, configure.in, csc.bat, easyffi.l, eval.scm, library.scm, optimizer.scm, srfi-4.scm, support.scm:
- changed silly banner to something slightly less silly
- removed obsolete `##core#qualified'
- easyffi.l: didn't parse `!=' and `!`
- configure.in: removed -mflat for Sparc options
- chicken-setup.scm: improved `test-compile'
- optimizer.scm: lambda-lifting was broken for indirectly recursive calls of liftable procedures sometimes
- compiler.scm: fixed very very strange error in canonicalization of `##core#foreign-callback-wrapper'
- batch-driver.scm: #\# is allowed at file start in non-scripts
- chicken-config.in: removed -cppflags
- configure.in: add "-no-cpp-precomp -I/sw/include" to CFLAGS on Mac OS X [Thanks to Taylor Campbell]
- moremacros.scm/highlevel-macros.scm: added `foreign-value'
- eval.scm: error in REPL resets ports to the state before the previous read
- srfi-4: added `subXXXvector'
- support.scm: `##core#primitive' generated invalid C code with syntax-case macros [Thanks to Joerg Wittenberger]

2003-11-15 flw <flw@gurke>

* chicken.scm, compiler.scm, csi.scm, easyffi.scm, eval.scm, extras.scm, optimizer.scm, support.scm, TODO, batch-driver.scm, c-backend.scm, c-platform.scm, chicken-setup.scm:
- support.scm: chicken -help doesn't print silly banner
- chicken-setup.scm: `test-compile' has been improved
- moremacros.scm, highlevel-macros.scm: added `foreign-code' macro
- extras.scm: added `pp' as an alias for `pretty-print'
- easyffi.scm: `##compiler#foreign-declarations' wasn't exported
- csi.scm, support.scm: changed version/silly banner display slightly
- added doc/tinyclos-examples.scm
- eval.scm: `##core#global-ref' wasn't implemented in the interpreter [Thanks to Michele Simionato]

2003-11-14 flw <flw@gurke>

* banner.scm: *** empty log message ***

* Makefile.am, TODO, chicken.h, compiler.scm, csi.scm, easyffi.l, easyffi.scm, eval.scm, support.scm:
- Makefile.am: default-entry-points.scm wasn't put into the list of installed files
- chicken.h: all uses of C_toplevel are casted to void *
- easyffi.scm: creating TinyCLOS instances from `this' pointers should be a little bit more efficient now
- easyffi.scm: added pseudo type `__scheme_value'
- eval.scm: added `##sys#void' to scheme-report-environment
- compiler.scm: renamed generated C functions from `fNNN' to `f_NNN'
- easyffi.scm: parsing class-defs automatically adds `(uses tinyclos)' declaration
- added silly banner

2003-11-05 flw <flw@gurke>

* easyffi.scm, library.scm, runtime.c, syntax-case.scm, Makefile.am, build.scm, c-backend.scm, chicken-config.in, chicken.h, configure.in:
- runtime.c: `parse_argv' is not included, unless really needed [Thanks to Sven Hartrumpf]
- csc.in, chicken-config.in, Makefile.am, configure.in: On OS X, '-c++' adds `-no-cpp-precomp'
to the g++ compiler flags [Thanks to Taylor Campbell]
- chicken.h: includes <alloca.h> on SunOS (always) [Thanks to Sven Hartrumpf]
- c-backend.scm: moved generation of callback-prototypes at start of output file
- easyffi.scm: fixed unbound variable error in `parse-declaration'
- syntax-case.scm: `install-highlevel-macro-system'
- chicken.h, runtime.c, default-entry-points.scm: added support for simplified embedding of code
- library.scm: fixed off-by-one error in `##sys#register-entry-point'
- easyffi.scm: wrapped C++ classes accept optional 'this initializer keyword [Thanks to "Dave"]
- script-utils.scm: added `for-each-argv-line' [Thanks to William Annis]
- bumped version to 1.23

2003-10-30 sven1999 <sven1999@gurke>

* testsuites/test-example.scm: removed some typos

2003-10-29 flw <flw@gurke>

* makefile.vc, psyntax.scm, runtime.c, support.scm, tinyclos.scm, eval.scm, library.scm, compiler.scm, configure.in, easyffi.scm, c-backend.scm, chicken.h, build.scm:
- psyntax.scm, eval.scm: allow `set!' forms with the first arg being an expression
- manual.tex: fixed some typos [Thanks to Sven Hartrumpf]
- psyntax.scm, eval.scm: added internal support for SRFI-17
- easyffi.scm: declaration values are separated via semicolons, added "type" pseudo declaration
- makefile.vc: rule for easyffi.l.silex was wrong
- runtime.c, chicken.h: added runtime option for heap-size maximum [Thanks to Sven Hartrumpf]
- compiler.scm, support.scm: added compiler special form `##core#global-ref'
- tinyclos.scm, highlevel-macros.scm, moremacros.scm: TinyCLOS method definitions now are properly handled with hidden/block globals
- c-backend.scm: assignment to foreign variables is properly casted to please C++ compilers
- easyffi.scm: fixed two bugs related to using __callback in member defs
- library.scm: `argc+argv'

2003-10-21 sven1999 <sven1999@gurke>

* examples/makefile:
new example cube needs more C flags to find chicken.h

2003-10-20 flw <flw@gurke>

* chicken.h, easyffi.l, easyffi.scm:
- easyffi.scm: added pseudo declarations and `struct ID' definition, negative numbers were not recognized
- easyffi.scm: bugfix in call to `process-macro-def', pure virtual methods will generate in class without constructor method
- easyffi.l: character constants

2003-10-15 flw <flw@gurke>

* examples/README, examples/cube.scm, examples/makefile, examples/mandelbrot.scm, examples/schelog-support.scm, csi.1, csi.scm, easyffi.l, easyffi.scm, eval.scm, library.scm, optimizer.scm, runtime.c, support.scm, c-platform.scm, chicken.1, chicken.h, chicken.scm, compiler.scm, configure.in, csc.bat, batch-driver.scm, build.scm, c-backend.scm:
- removed `no-winding-callcc' declaration specifier and option
- added cube.scm to examples
- library.scm: `call/cc', `print-error-message'
- eval.scm: `require' didn't handle circular requirements
- batch-driver.scm: bails out if input- and output-filename are identical
- easyffi.scm: handling of if/else outside of preprocessor contexts, inline, explicit, using, const and pure virtual methods
- csc.in, c-platform.scm, batch-driver.scm: -ffi option allows compiling C/C++ for extraction of foreign bindings
- c-backend.scm, support.scm: reference, const, enum and template type specifiers
- easyffi.scm: template types, better support for fixnum and bool, __callback qualifier, struct/union/enum/reference
- csc.in: accepts files with ".h" extension
- The reader is now by default case sensitive
- `-case-sensitive' -> '-case-insensitive'
- bumped version to 1.21
- local definitions inside bodies always expand into `letrec' forms, enclosing all subsequent forms
- `-strict' didn't always imply `-strict-letrec' (now it does)
- added compiler/interpreter option `-r5rs' (is `-hygienic -strict')
- regex2.scm: `*pregexp-space-sensitive?*' should have been a variable, not a constant
- strict letrec mode was erroneously enabled in non-hygienic mode by the compiler
- runtime.c: changed FLONUM_PRINT_PRECISION to 15 [Thanks to "Category 5"]
- csc.in: accepts .C, .cc, .cxx and .c++ as C++ source extensions

2003-10-03 flw <flw@gurke>

* easyffi.scm, makefile.vc: - easyffi.scm: removed a diagnostic message
- makefile.vc: builds extra libraries in gui mode (so that they don't refer to chicken.dll)
- csc.in: `-windows' option is back (and works properly)

2003-10-01 flw <flw@gurke>

* chicken.h, easyffi.scm:
- chicken.h: when compiled with g++, chicken-generated code doesn't use statement expressions [Thanks to Bruce Hoult]
- easyffi.scm: added support for static member functions and C++ constants

2003-09-30 flw <flw@gurke>

* build.scm, chicken.h, configure.in, easyffi.l, easyffi.scm:
- easyffi.scm: prototype bodies may contain code, now
- easyffi.scm: `#if' fails always
- chicken.h: includes `alloca.h', when compiled as C++, under Solaris, with GCC [Thanks to Bruce Hoult]
- changed version to 1.20
- easyffi.scm: `volatile', `virtual' and destructor parsing
- easyffi.scm: enums and numeric `#define's are converted to constant-definitions

2003-09-29 flw <flw@gurke>

* c-platform.scm, chicken-config.in, compiler.scm, configure.in, easyffi.l, easyffi.scm, tinyclos.scm, Makefile.am, batch-driver.scm, c-backend.scm:
- csc.in, chicken-config.in, configure.in, Makefile.am: automatically use proper compiler and linker in C++ mode
- easyffi.scm: `#include' is now handled
- `export' and `hide' declarations are more robust
- c-backend.scm: assignments to foreign procedure argument temporaries are casted to please C++ compiler
- easyffi.scm: (very) basic C++ support
- tinyclos.scm: added builtin class `<c++-object>'

2003-09-27 flw <flw@gurke>

* batch-driver.scm, c-backend.scm, c-platform.scm, chicken.1, chicken.h, compiler.scm, easyffi.scm, lolevel.scm, makefile.vc, support.scm:
- easyffi.scm: fixed numerous bugs
- makefile.vc: can build easyffi.l.silex from source
- easyffi.scm: `static' is allowed for prototypes and variables
- lolevel.scm: MOVE-MEMORY! handles locatives, now
- csc.in: added `-c++' option
- c-backend.scm, chicken.h: fixes to allow compiling generated C code in C++ mode

2003-09-22 flw <flw@gurke>

* examples/makefile, Makefile.am, build.scm, chicken.scm, compiler.scm, configure.in, easyffi.l, easyffi.scm, library.scm, makefile.dj, makefile.vc, silex.scm, support.scm:
- library.scm: LIST->STRING could overflow the stack (on Windows) and was rather inefficient in general
- added easyffi
- bumped version to 1.19

2003-09-10 flw <flw@gurke>

* configure.in:
- csc.in: removed `-windows' option (didn't really work), added `-D SYMBOL' as synonym for `-feature'
and added special linker option for NetBSD [Thanks to Jun-iochiro itojun Hagino]
- configure.in: gcc-check accepts optional suffix [Thanks to Sven Hartrumpf]
- moremacros.scm, highlevel-macros.scm: `define-generic' accepts optional class

2003-09-08 flw <flw@gurke>

* configure.in, eval.scm, posix.scm, support.scm, build.scm:
- csc.in: `-dynamic' is equivalent to `-shared'
- support.scm: `-dynamic' wasn't mentioned in `-help' output
- when using gcc 3.3, add `-Wno-strict-aliasing' option to CFLAGS [Thanks to Johannes Groedem]
- bumped version to 1.18
- posix.scm: `file-lock' mixed up input- and output-ports [Thanks to Johannes Groedem]
- posix.scm: error-handling for file-locking was wrong
- eval.scm: `load' didn't always return void

2003-09-05 flw <flw@gurke>

* c-platform.scm, chicken.1, configure.in, extras.scm, library.scm, runtime.c, batch-driver.scm:
- configure.in: fixed version-number
- library.scm: `.' in vector literals caused crash
- manual.tex: fixed a few typos
- library.scm: `(error SYMBOL)' resulted in crash (oh my!)
- csc.in: typo in library-file selection
- csc.in, c-platform.scm, batch-driver.scm: added `-dynamic' option
- runtime.c: there was no check for the heap-size maximum [Thanks to Sven Hartrumpf]
- extras.scm: Sven Hartrumpf suggested a more efficient version of `string-compare3[-ci]'

2003-08-30 flw <flw@gurke>

* batch-driver.scm, build.scm, chicken-setup.scm, csc.bat, support.scm:
- added `-quiet' option to chicken-setup
- added `-no-init' option to tex2page invocation line
- `#> ... <#' is now an abbreviation for `(declare (foreign-declare " .,, "))'
- version is now 1.17

2003-08-25 flw <flw@gurke>

* library.scm, runtime.c: - csc.in: `-embedded' wasn't recognized
- library.scm: `get-keyword' accepts any object as keys
- runtime.c: `C_callback' doesn't do a minor GC at entry [Thanks to Bruce Hoult]
- `(. ...)' segfaulted instead of giving an error message [Thanks to Category 5]
- `(receive X)' is allowed and returns the list of the result-values

2003-08-17 flw <flw@gurke>

* eval.scm, runtime.c:
- fixed big performance leak in minor GC handling: GC-timing stuff for `time'
macro caused way too many kernel calls [Thanks to Bruce Hoult]
- `dump_trace()' didn't initialize output buffer properly

2003-08-07 flw <flw@gurke>

* chicken.h, compiler.scm, csc.bat, csi.scm, eval.scm, lolevel.scm, posix.scm, runtime.c, build.scm, chicken-setup.scm:
- eval.scm: `extension-path'
- lolevel.scm: `global-ref', `global-set!' and `global-bound?'
- csc: static libs are reordered to link libchicken last [thanks to Sven Hartrumpf]
- posix.scm: `group-information'
- added index to the manual [thanks to Peter Wang]
- 'loevel was declared as provided by csi (which was wrong)
- removed `define-id-macro' and `let-id-macro'
- setup-specification attributes `test', `test-command' and `test-chicken-version'
- `C_alloc_in_heap()' is called with number of words (not bytes)

2003-07-30 flw <flw@gurke>

* extras.scm, optimizer.scm, posix.scm, runtime.c, c-backend.scm, chicken.h, configure.in:
- `csc' added `-s' option to linker, when linking with optimization (won't
work when building shared object)
- fixed countless typos in manual.tex [Thanks to Bruce Mitchener]
- `csc' uses `-bundle' instead of `-shared' under Mac OS X
- runtime.c: dload_2 prefixes dlsym'd name with "_"
- posix.scm: under Mac OS X, `environ' is not used (and `current-environment'
always returns '())
- removed `C_collectibles' and added `C_gc_protect()' and `C_gc_unprotect()'
- fixed compiler bug that caused repeated explicit rest-argument list consing
[Thanks to Sven Hartrumpf]
- added `string-compare3[-ci]'
- reduced C_STACK_RESERVE to 4096; the previous setting could overflow the
stack-check on machines with a stack in very high memory

2003-07-25 flw <flw@gurke>

* build.scm, chicken-setup.scm, chicken.h, compiler.scm, csc.bat, csi.scm, eval.scm, posix.scm, runtime.c:
- added `C_end_of_main' macro to chicken.h
- `location' now accepts callback-names
- bumped version to 1.15
- `csc' accepts '-windows' under Cygwin
- chicken-setup.scm/eval.scm: ##sys#load-library-extension is exported (and used)
- the STACKTRACE is printed directly (and not saved in a file)
- `,d' in csi stops after 40 elements when printing sequences
- chicken-setup.scm: fixed hardcoded ".so"
- posix.scm: fixed some routines that weren't updated to the new I/O system

2003-07-17 flw <flw@gurke>

* scheduler.scm: - scheduler.scm: fixed bug in `##sys#all-threads'
- scheduler.scm: fixed invalid timeout computation in `##sys#fdset-select-timeout'
[thanks to Peter Wang]

2003-07-15 flw <flw@gurke>

* csc.bat, csi.1, eval.scm, library.scm, posix.scm:
- library.scm: vector-resize
- script-utils: for-each-line
- uses newest autotools (libtool 1.5, autoconf 2.57, automake 1.7.6)
- posix.scm: fixed bug in `process-execute' [Thanks to Peter Wang]

2003-07-07 flw <flw@gurke>

* chicken.1, csi.scm, support.scm, batch-driver.scm, build.scm, c-platform.scm:
- support.scm: generation of C literals from strings escapes '?' to avoid trigraphs
- added `-slib' option to csc.in and csi.scm
- cleaned up the manual a little
- added `-require-for-syntax' option to `csc'/`chicken'
- added `-windows' option to `csc'
- bumped version to 1.14

2003-07-03 flw <flw@gurke>

* Makefile.am, chicken.h, configure.in, runtime.c:
- removed chicken.init from Makefile.am (thanks to Sven Hartrumpf)
- (build-platform) returns 'sun when compiled with the Sun compiler under Solaris
- added Matthias Koeppe's fixes for proper handling of HAVE_CONFIG_H

2003-07-01 flw <flw@gurke>

* batch-driver.scm, build.scm, c-platform.scm, chicken.scm, compiler.scm, csi.scm, eval.scm, extras.scm, library.scm, optimizer.scm, regex.scm, runtime.c, srfi-18.scm:
- runtime-system uses internal versions of `require', `provide' and `provided?'
- extras.scm: substring=?, subtring-ci=?, string-translate*
- regex.scm/regex2.scm: string-substitute*
- c-platform.scm: added optimization-rule for `identity'
- during exection of compiler-extensions, the feature-identifier #:compiler-extension is registered
- Chicken now officially supports SRFI-39
- '\xXX' character constants in strings
- srfi-18.scm: `thread-deliver-signal!' [On special request by Joerg Wittenberger]
- `(##sys#fudge 3)' returns #t if running on a 64-bit platform
- removed chicken.init - we will handle this better...

2003-06-25 flw <flw@gurke>

* Makefile.am, batch-driver.scm, c-backend.scm, c-platform.scm, chicken-setup.scm, configure.in, extras.scm, optimizer.scm:
- `csi -setup' with an invalid name gives an error [Thanks to Peter Keller]
- `-extend' option was broken [Thanks to Joerg Wittenberger]
- csc.in: on Windows, filenames with drive-designators where interpreted as runtime-options
- csc.in: pathnames passed to cl and link are transformed (#\/ -> #\\)
- on windows, #\\ in pathnames could generate invalid C output in `C_trace()'
- extras.scm: identity, project, conjoin, disjoin
- configure.in: applied patch to link `nanosleep()' under Solaris 7/8 [Thanks to Matthias Koeppe]
- c-platform.scm: added peek-char and char-ready? to side-effecting-standard-bindings
- optimizer.scm: fixed bug in rewriting of certain builtin procedures
- configure.in: check for ldl had a type [Thanks to Matthias Koeppe]
- regex2.scm: wrong feature name for shared compile was used
- removed doc/README.txt and added doc/manual.hdir

2003-06-19 flw <flw@gurke>

* build.scm: - Bumped version number to 1.12

2003-06-14 flw <flw@gurke>

* Makefile.am, batch-driver.scm, build.scm, c-platform.scm, chicken.h, csi.scm, extras.scm, library.scm, lolevel.scm, posix.scm, runtime.c:
- extras.scm: the first argument to `read-string' is now optional
- runtime.c: interning of empty string referenced uninitialized memory
- posix.scm: I/O on ports returned by `process' is now fully nonblocking
- posix.scm: `errno/wouldblock'
- files loaded via the `-extend' compiler option are also searched in the
current include-path
- `##sys#call-with-direct-continuation' and `##sys#direct-return' (they
might turn out useful)
- lolevel.scm: `unbound-variable-value'
- posix.scm: `file-read' didn't check the buffer argument early enough
- extras.scm: `write-string'
- csi doesn't use the lolevel unit anymore
- `chicken-setup.c' was not up to date
- added BOOTSTRAP_PATH to Makefile.am, this simplifies the invocation
of make when bootstrapping the system from CVS sources
[Thanks to Peter Keller]

2003-06-06 flw <flw@gurke>

* library.scm, posix.scm, runtime.c, tcp.scm:
- tcp.scm: tcp-listener-port
- fixed bug in runtime.c that resulted in fopen() being called with invalid file-mode
- tcp.scm: EWOULDBLOCK wasn't defined under Win32 with MSVC
- the printer mixed up "input" and "output" when printing port objects
- fixed bug in read-char handler of pipe-ports
- fixed two unbound variable bugs in library.scm and posix.scm
- commit updates ChangeLog at website and send message to mailing list.
In other words: SMTP and FTP extensions are imminent ;-)

2003-06-02 flw <flw@gurke>

* compiler.scm, csi.scm, eval.scm, extras.scm, format.scm, library.scm, lolevel.scm, posix.scm, runtime.c, scheduler.scm, support.scm, tcp.scm, batch-driver.scm, build.scm, chicken.h:
- fixed problem with scheduler.scm (C_msleep) under Windows
- overhauled I/O subsystem
- lolevel.scm: invalid-procedure-call-handler
- declaration `safe-globals'
- internal compiler for `##core#app'
- eval/visit uses `##core#app'
- debug-option `D'
- (hopefully) settled all thread-safety issues in `format.scm'
- nonblocking I/O for tcp-ports
- made `##sys#errno' an int, instead of an integer (library.scm)
- fixed bug in tcp.scm: partial writes to tcp-port didn't remove sent part
- `##sys#thread-block-for-i/o!' for output (or mixed?) mode doesn't work properly (deactived,
does simple polling)

2003-05-21 flw <flw@gurke>

* chicken-setup.scm, library.scm, scheduler.scm:
- scheduler.scm: timeout-values in nanoseconds where calculated incorrectly
- chicken-setup.scm: -wrap doesn't create registry, if not existing
- ##sys#special-read-syntax-table
- updated FAQ a little

2003-05-19 flw <flw@gurke>

* chicken.h, compiler.scm, eval.scm, posix.scm, runtime.c, scheduler.scm:
- `define-foreign-variable' isn't seen by `visit' anymore
- `C_flonum()' advanced allocation pointer wrongly on 64-bit platforms
- `parameterize' accepts arbitrary expressions in the parameter position of the binding-list
- applied patches by Sven Hartrumpf that remove unneeded special casing for ICC
- constants defined via `define-constant' are visible inside constant-expressions for
that form
- the scheduler doesn't waste CPU cycles when waiting for thread- or I/O-timeout, unless
other threads are ready [Thanks to Chris Double]

2003-05-08 flw <flw@gurke>

* support.scm, build.scm, chicken.h, compiler.scm, eval.scm, parameters.scm, posix.scm, runtime.c:
- fixed bug in `process-execute', pointers to potentially gc-moved strings where retained
[thanks to Joerg Wittenberger]
- `define-constant' evaluates 2nd argument at compile time
- fixed bug with mutable constants in `define-constant' forms
- visiting handles `define-foreign-type' and `define-foreign-variable'
- fixed compiler bug in support.scm: `estimate-foreign-result-size' allocated one word too little if flonum result
has to be aligned
- `##core#inline[_allocate]' expanded incorrectly with the hygienic macro system
[Thanks to Panagiotis Vossos]
- fixed 32-bit dependencies: C_FLONUM_TAG was wrong on 64-bit platforms; C_equalp() used `int' where a `C_word'
was needed
- 8-byte alignment was incorrectly handled for 64-bit platforms

2003-05-04 flw <flw@gurke>

* library.scm:
- `output-port?' returned 0 on closed port [Thanks to Burton Samograd]

* chicken-setup.scm, chicken.h, compiler.scm, csi.scm, eval.scm, extras.scm, format.scm, library.scm, parameters.scm, posix.scm, runtime.c, srfi-13.scm, support.scm, batch-driver.scm, build.scm:
- `substring' signals (exn bounds)
- replaced several occurences of `substring' with `##sys#substring'
- moved the description of `process' into the proper manual section
- `process' should read non-blocking, now
- buffer grows by doubling it's size in `read-line'
- chicken-setup: defaults options are "-O2 -d0"
- format is thread-safe
- the transcript port wasn't properly recognized as a tty-port
- vector-copy! signals (exn bounds)
- several small optimizations in library.scm
- non-exported globals where still exported, if ref'd before definition
- non-blocking `process' seems to work
- `csi -setup-help' and -uninstall
- `string-null?' is expanded inline
- visit handling constant- and inline-definitions
- `define-constant' wasn't consistently handled in hygienic and non-hygienic mode
- removed procedure-definition syntax for `define-constant'

2003-04-23 flw <flw@gurke>

* build.scm, c-backend.scm, chicken-setup.scm, chicken.h, compiler.scm, configure.in, eval.scm, extras.scm, library.scm, lolevel.scm, posix.scm, regex.scm, runtime.c, support.scm:
- hidden globals where not properly checked for boundedness
- the foreign return types `c-pointer' and `pointer' did not return `#f' on NULL results
[thanks to Peter Wang]
- `##sys#void' is handled better by `canonicalize-begin-body' (support.scm)
- fixed space leaks in `regex.scm'
- `read-line' accepts optional limit
- `-setup' gives useful error-message on non-UNIX platforms
- there where two conflicting versions of `provided?'
- chicken-setup handles single-file case
- some warning-options are passed to CFLAGS
- fixed typo in posix.scm [Thanks to Joerg Wittenberger]

2003-04-19 flw <flw@gurke>

* runtime.c:
- fixed a couple of 32-bit dependencies [Thanks to Panagiotis Vossos]
- fixed bug in syntax-case version of condition-case

* examples/ctclsh.scm, support.scm, tcp.scm, runtime.c, srfi-25.scm, csi.scm, library.scm, optimizer.scm, psyntax.scm, Makefile.am, batch-driver.scm, build.scm, c-backend.scm, c-platform.scm, chicken.1, chicken.scm, compiler.scm:
- fixed bug in c-backend.scm: heap-limit settings [Thanks to Sven Hartrumpf]
- fixed bug in runtime.c: handling of -:t... was bogus [Thanks to Sven]
- the default output-file for `chicken' is now the original-filename (+ ".c") [Thanks to Panagiotis Vossos]
- syntax-case uses `##sys#void' in expansions
- removed `error-handler'
- diversified exceptions a little
- srfi-25: signals more sensible exn types
- added `condition-case'

2003-04-08 flw <flw@gurke>

* compiler.scm, eval.scm, examples/prolog.scm, examples/schelog-support.scm, library.scm, match-support.scm, posix.scm, regex.scm, runtime.c, scheduler.scm, srfi-1.scm, srfi-13.scm, srfi-14.scm, srfi-18.scm, srfi-37.scm, srfi-4.scm, syntax-case.scm, tcp.scm:
- eval.scm: `##sys#environment-is-mutable' isn't hidden anymore.
- scheduler.scm: ##sys#fetch-and-clear.
- simplified some code in tcp.scm.
- `(build-platform)' returns 'intel for ICC.
- removed `interrupts-disabled' declaration.

2003-04-03 flw <flw@gurke>

* configure.in, runtime.c:
- Changed calls to AC_INIT and AM_INIT_AUTOMAKE in configure.in to new syntax.
- Recreated autotool files using newest versions.

2003-03-31 flw <flw@gurke>

* batch-driver.scm, build.scm, c-platform.scm, chicken-setup.scm, chicken.1, compiler.scm, csc.bat, csi.scm, eval.scm, library.scm, posix.scm, support.scm:
- Removed syntax checks from internal `##core#...' forms.
- `require-at-runtime' setup-specification.
- `csi -setup -init' did not install core extensions.
- `seconds->string' (posix.scm) couldn't handle large (but valid) non-fixnum integers
[Thanks to Anthony Carrico]
- `visit' and `-visit' options to csi and chicken.
- `(gc #t)' didn't return number of free bytes.
- `pathname-directory-separator' was #\\ under Cygwin (is now #\/).
- Removed fixnum->flonum coercion warning in reader.

2003-03-23 njbeckford <njbeckford@gurke>

* runtime.c: Got rid of buffer overflow in C_get_environment_variable.

2003-03-22 njbeckford <njbeckford@gurke>

* Makefile.am:
Undid change that made both MORE_LIBS and MORE_STATIC_LIBS be the same thing.

* Makefile.am:
Made both MORE_LIBS and MORE_STATIC_LIBS be the same thing.

* Makefile.am:
-all-static replaced by -static. On Solaris, need libdl.so and
libnsl.so since no libdl.a nor libnsl.a.

* Makefile.am:
"make doc" and "make testsuites" now use CHICKEN=../chicken

* Makefile.am: Uses MORE_STATIC_LIBS instead of MORE_LIBS for
lib[xxx_]chicken_la_LDFLAGS so that libtool does not add "-ldl"
whenever something links with lib[xxx-]chicken.la.

* Makefile.am, chicken-config.in, configure.in, runtime.c:
configure.in: Made new variable SHLIBS which has -ldl or -ldld, which will only be used in non -all-static code.
Makefile.am: Use SHLIBS to differentiate MORE_LIBS from MORE_STATIC_LIBS.
runtime.c: Do not even try to use dl.h/dlfcn.h/dlopen/shlopen when in all-static mode.
chicken-config.in, csc.in: Use MORE_STATIC_LIBS (%morestaticlibs%) in static mode.

2003-03-20 flw <flw@gurke>

* build.scm, csc.bat:
- `csc' deletes .lib and .exp files if compiling non-shared, non-static on MSVC.
- bumped version number to 1.0.

2003-03-16 flw <flw@gurke>

* build.scm, configure.in, csc.bat, eval.scm, parameters.scm:
- "so" was assumed as dynamically loadable file extension (should be "dll" under windows).
- csc passed "/DPIC" to msvc, if compiling without `-static'.

2003-03-14 flw <flw@gurke>

* chicken-config.in, csc.bat, library.scm:
- Added `-static' option to csc and chicken-config. Both scripts misused `-shared'
as an indicator for linking with shared libs, but this option should be used
to generate dynamically loadable modules. Default is now to generate dynamically
linked executables. Use `-static' for generating statically linked binaries.
- `[...]' is now allowed in strict-reader mode.

2003-03-12 flw <flw@gurke>

* testsuites/test-lolevel.scm, testsuites/makefile.in, Makefile.am, batch-driver.scm, build.scm, chicken-config.in, configure.in, csc.bat, eval.scm, makefile.vc, parameters.scm, runtime.c:
- scheme-chicken-hygienic script interpreter.
- Fixed two bugs in csc.in.
- removed testsuites/test-lolevel.scm.

2003-03-12 njbeckford <njbeckford@gurke>

* Makefile.am: Changed "-static" libtool link option to "-all-static".

-all-static: Always choose static libraries where possible, and try to
create a completely statically linked executable.

-static: This switch is similar to `-all-static', except that it
applies to only the uninstalled Libtool libraries in the build
tree. Where possible the static archive from these libraries is used,
but the default linking mode is used for libraries which are already
installed.

-static was causing problems on some people's systems (well, Felix's)
because the default linking mode is shared libraries.

2003-03-11 njbeckford <njbeckford@gurke>

* Makefile.am, chicken-config.in, csc.bat, testsuites/makefile.in:
For static linking, always use an absolute form like
/usr/local/lib/libchicken.a instead of -lchicken.

* chicken-config.in:
Condensed multiple lines of output into one. Was screwing up
SWIG configure script.

2003-03-10 njbeckford <njbeckford@gurke>

* compiler.scm: Fixed typo error (fix was by Felix).

* Makefile.am, mingw/Makefile.in, testsuites/makefile.in:
Some fixes to allow MinGW to work as intended.
Especially, changing testsuites to rely on chicken-config for the
compiling and linking options.

* mingw/Makefile.in: Just install csc.bat, not csc

* mingw/configure.sh:
Needed to shift the installation location of the list of command line
arguments to ../configure.

* testsuites/makefile: Deprecated; use makefile.in

* runtime.c:
Changed the order of dload_2 functions so that dlopen/dlsym comes
before LoadLibrary/GetProcAddress. This means that for Cygwin,
dlopen/dlsym will be used, and Cygwin's checking of LD_LIBRARY_PATH in
addition to PATH will be used.

* chicken-config.in:
The -shared option needs to add -DPIC to compiler flags.

2003-03-09 njbeckford <njbeckford@gurke>

* c-backend.scm, chicken.h, csc.bat, makefile.vc, runtime.c:
Changes to allow Microsoft Visual C++ to compile. All functions in
chicken.h had to have a dllimport/dllexport. Got rid of C_dllexport
as it was messing up the MSVC compile, but needs to be looked at
further. Makefile.vc updated to build both static and shared
libraries. The c-backend was updated so that C_xxx_toplevel was
imported and exported properly on a MSVC build.

2003-03-08 flw <flw@gurke>

* Makefile.am, csc.bat, tcp.scm:
- `-strict-reader' doesn't disable `[...]' list syntax.
- Added `tcp-abandon-port' to tcp.scm.
- Makefile.am: the effect USE_POSIX was sometimes reversed.
- csc handles different shared-library file extensions.

2003-03-04 njbeckford <njbeckford@gurke>

* Makefile.am, configure.in:
Fixed configure.in and Makefile.am to work with minimum autoconf 2.50, automake 1.4-p3 and libtool 1.3

* runtime.c:
Bug fix for handling of .dll or .so extension for cygwin/mingw.

* Makefile.am: Bug fix for multiple compilation of chicken-setup.

* Makefile.am, chicken-config.in, chicken.h, configure.in, mingw/INSTALL, mingw/Makefile.in, mingw/autogen.sh, mingw/configure.sh, mingw/installdllv.sh, mingw/mingw-cc.sh, mingw/mingw-cxx.sh, runtime.c, testsuites/makefile.in:
Support for MinGW/Cygwin dynamic loading. MinGW now uses the GNU
autoconf et al. tools.

2003-03-03 flw <flw@gurke>

* batch-driver.scm, build.scm, c-platform.scm, chicken.1, configure.in, csc.bat, csi.scm, eval.scm, scheduler.scm, support.scm, syntax-case.scm:
1099:
- Added `-strict-letrec' option to chicken and csi.
- Added `##sys#all-threads' to scheduler.scm [Suggested by Joerg Wittenberger].

2003-03-02 flw <flw@gurke>

* csi.scm, examples/README, examples/makefile, examples/tcp-client.scm, examples/tcp-server.scm, extras.scm, library.scm, makefile.vc, scheduler.scm, tcp.scm, testsuites/test-example.scm, tinyclos.scm, Makefile.am, batch-driver.scm, build.scm, chicken-setup.scm, compiler.scm, configure.in, csc.bat:
- The scheduler does a `select()' with infinite timeout, when no other threads are ready or waiting for timeout.
- The predicate returned by `condition-predicate' always returns #t or #f.
- Added tcp to base system.
- Windows batch files were not compiled with uses-declarations for all csi units.
- Removed toplevel command `,x1' in csi.
- Updated FAQ.html.
- Added `-e[mbedded]' to chicken-config and csc.
- `with-(input-from|output-to)-(port|string)' are continuation-safe [Thanks to Joerg Wittenberger and Tony Garnock-Jones].
- Removed `-no-warnings' option from Makefile.am.
- The compiler could not be loaded into csi (missing variable `posix-is-available') [Thanks to Jonah Beckford].
- Fixed some problems in the scheduler [Thanks to Joerg Wittenberger].
- Fixed a bug in examples/makefile which made linking ctclsh fail [Thanks to Sven Hartrumpf].
- Added a fast path in the `dynamic-wind' enabled version of `call-with-current-continuation' that
makes it a little bit faster in case no winding thunks are used [Thanks to Joerg Wittenberger].

2003-02-25 flw <flw@gurke>

* chicken.h, configure.in, csc.bat, csi.scm, eval.scm, examples/makefile, examples/tclAppInit.c, library.scm, makefile.dj, makefile.guilibs, makefile.vc, parameters.scm, runtime.c, scheduler.scm, Makefile.am, batch-driver.scm, build.scm, c-backend.scm, c-platform.scm, chicken-config.in, chicken-setup.scm:
- libchicken is now linked to csi as the last library.
- Fixed problem(s) in makefile.vc.
- Updated manual.
- Compiler emits `main()' entry-point as needed.
- libembedded-chicken isn't needed anymore.
- Renamed `WINDOWS_GUI/_DLL' to `C_WINDOWS_...'.
- `CHICKEN_...' procedures have an additional argument: the toplevel entry point procedure pointer.
- `tex2page' is now distributed with all the other stuff.
- Added `-setup -init' option to csi.
- Alternative registry locations.
- `##sys#thread-block-for-i/o!' doesn't block if other threads are ready or blocked.

2003-02-18 flw <flw@gurke>

* parameters.scm, runtime.c, scheduler.scm, srfi-37.scm, support.scm, tinyclos.scm, makefile.dj, makefile.guilibs, makefile.vc, Makefile.am, batch-driver.scm, chicken-setup.scm, configure.in, csc.bat, csi.scm, eval.scm, lolevel.scm:
- Moved scheduler into libchicken (instead of libsrfi-chicken)
- Scheduler fix that is needed for Winsock
- Compiling csi doesn't need ##csi#run prelude anymore
- Added TinyCLOS support for tagged pointers [Thanks to Jonah Beckford]
- runtime.c: fixed bug in values_continuation() (stack-shift shifted one
too many); fixed uninit'd variable bug in C_gc().
Valgrind is incredible!
- File-extension of dynamically loadable files is system dependent.
- Removed serialization stuff. Has to be done better.
- The srfi-37 unit doesn't need regex anymore.
- Renamed Win32 libraries to match UNIX names.
- chicken-setup stuff doesn't print system commands.

2003-02-11 flw <flw@gurke>

* examples/prolog.scm, Makefile.am, batch-driver.scm, build.scm, c-platform.scm, chicken-setup.scm, chicken.h, chicken.scm, compiler.scm, configure.in, csi.scm, eval.scm, makefile.dj, makefile.guilibs, makefile.vc, match-support.scm, runtime.c, srfi-37.scm, support.scm:
- removed old module system
- type-checks for fixed-size objects are more efficient
- moved srfi-37 into it's own file
- separated macro-definitions from support code in match.scm
- pattern matcher is now available with highlevel macros
- #!-scripts (csi -script or scheme-chicken) use all units available to the interpreter by default
- type-error message in `locative->object' reported wrong location
- tex2page is now interpreted (simplifies installation)
- manual points now to match.ps at call/cc.org (the old site doesn't seem to be available)

2003-02-06 flw <flw@gurke>

* Makefile.am, build.scm, chicken.h, configure.in, library.scm, runtime.c:
- HTML manual wasn't properly generated from CVS version.
- added tagged pointer type.

2003-01-31 flw <flw@gurke>

* Makefile.am, compiler.scm, csc.bat, support.scm:
- compressed literals were not written readably into string constant [Thanks to Sven Hartrumpf]

2003-01-29 flw <flw@gurke>

* library.scm, scheduler.scm, srfi-18.scm, testsuites/test-example.scm, Makefile.am, build.scm, chicken-config.in, configure.in, csc.bat, csi.scm, extras.scm:
- chicken-config and csc don't mention -I/usr/local/include anymore
- added basic `select()' based scheduling to the threading stuff
- moved port-handler cases for #:write-XXX at start of case [Suggested by Joerg Wittenberger]
- removed call to ##sys#all-threads from csi.scm
- make install generates HTML docs
- csc.1 wasn't installed
- bumped version to 1090

2003-01-20 flw <flw@gurke>

* scheduler.scm: - forgot some files (again)

* Makefile.am, batch-driver.scm, csi.scm, library.scm, makefile.dj, makefile.vc, posix.scm, runtime.c, srfi-18.scm, testsuites/makefile, testsuites/test-example.scm, testsuites/test-lolevel.scm, testsuites/test-r5rs.scm, testsuites/test-test-infrastructure.scm:
- definitions in highlevel-macros.scm used `implicit-identifier'
(but it's called now `datum->syntax-object')
- added `scheme-chicken' scriopt interpreter
- compiler knows how to compile scheme-chicken scripts
- put scheduler into own library unit
- removed optional argument from `set-signal-handler!'
- heavily overhauled scheduler
- posix: Ctrl-C now only resets primordial thread
- applied fix to `system' which could cause a buffer overflow [Thanks to Joerg Wittenberger]

2003-01-15 flw <flw@gurke>

* Makefile.am, extras.scm, formatprofile.bat, library.scm:
- fixed a bug that caused non-ASCII latin-1 characters to be treated as signed, when retrieved
from a string [Thanks to Sven Hartrumpf]
- `csi -setup' lists installed extensions
- removed the `(number-type flonum)' declaration
- ##sys#pathname-resolution
- added `scheme-chicken' script interpreter
- formatprofile uses `scheme-chicken'; added fix by Joerg
- `make-output-port' accepts optional flush parameter [thanks to Joerg Wittenberger]

2003-01-11 flw <flw@gurke>

* testsuites/makefile, testsuites/test-example.scm, build.scm, chicken-setup.scm, chicken.h, compiler.scm, configure.in:
- fixed a bug that caused non-ASCII latin-1 characters to be treated as signed, when retrieved
from a string [Thanks to Sven Hartrumpf]
- `csi -setup' lists installed extensions
- removed the `(number-type flonum)' declaration. It's stupid.

2003-01-07 flw <flw@gurke>

* examples/makefile, psyntax.scm, regex.scm, runtime.c, srfi-18.scm, srfi-25.scm, srfi-4.scm, support.scm, syntax-case.scm, tweaks.scm, Makefile.am, batch-driver.scm, build.scm, c-backend.scm, c-platform.scm, chicken-config.in, chicken-setup.scm, chicken.h, chicken.scm, compiler.scm, configure.in, csc.bat, csi.scm, eval.scm, extras.scm, formatprofile.bat, library.scm, lolevel.scm, optimizer.scm, parameters.scm, posix.scm, profiler.scm:
- chicken-config: `--cc' option [suggested by Sven Hartrumpf]
- some minor changes to `chicken.h' and `runtime.c' related to the
Intel C compiler
- fixed some things in examples/makefile
- added nursery-size check at toplevel entry
- added optional second argument to `compress-literals' declaration
(this is used to move the startup-delay for `syntax-case.scm'
to macro-system installation time)
- `define-inline' and `define-constant' were not correctly handled
under the syntax-case macro system, when interpreted
- fixed bugs in read-line and read-string [Thanks to Joerg Wittenberger]
- changed copyright to 2003
- added pathname-resolution hook
- removed call to string-copy in `make-output-port' [Joerg, again]
- `formatprofile' shows average time per procedure [Joerg, who else]

2002-12-19 psilord <psilord@gurke>

* test-infrastructure-hygienic.scm: + Whoo boy. I added lots o' stuff!
+ Changed all of the test macros to insert a unique serial number into
each result that can be made. There is a problem with this though,
I need a top level define so this means you can only include this
file ONCE in any given project. This means that you have to end up
compiling your test program with a single compile. No separate
compilation for each file. :( I'm thinking on how to solve this.
+ Added the function output-html-simple. It outputs an evaluated result
tree into html. This isn't done quite yet, but it is a large amount of
work and I want it to be safe in the repository. It generates pretty
decent looking html for the output, but I still have stuff to add.
+ There is now a statistics function which you can call on a result tree
to calculate all sorts of things about the evluated results, like
how many things passed/failed, and damn near anything else you'd care to
wonder about. This added around 70 calls to the API, but they are simple.
Hmm... I might need to add "how many expectations are in this test case"
kind of information though.... We'll see. Right now, there is plenty
of computed statistics in there that are useful.

2002-12-17 flw <flw@gurke>

* Makefile.am, batch-driver.scm, compiler.scm, extras.scm:
- `read-line' should now handle CRLF transparently [Thanks to Joerg Wittenberger]
- removed `extend-csi' and `extend-chicken' scripts
- `let-optionals' and `define-entry-point' are now available under the hygienic macro system
- removed `define-integrable', `define-datatype', `record-case' and `cases'
- `user-post-analyis-pass'

2002-12-15 psilord <psilord@gurke>

* test-infrastructure-hygienic.scm:
+ Changed the undocumented name of the statistics creator function.
+ Added a global unique identifier creation function and subsequent
invocation of it so I can have unique serial numbers for all results.
+ I have not yet modified the result object construction code to use the
serial numbers yet, since I need some questions resolved about how
chicken interacts with seperate compilation and (include ...) with
toplevel definitions.

* testsuites/test-lolevel.scm, testsuites/test-r5rs.scm, testsuites/test-test-infrastructure.scm, testsuites/test-example.scm:
+ Changed the use of output-style-human to output-style-human-simple.

* test-infrastructure-hygienic.scm:
+ Changed the name of the output-style-human API call to
output-style-human-simple.
+ Added *-warning? Which checks to see if a warning is active on any kind of
a valid result object.
+ Added a statistics system(and subsequent API to be detailed in the manual)
which counts up all sorts of relavant information in a result tree and
plances it into a statistics object which a large API has been built
to manipulate. I'm not fully done with this yet, but it is such a large
amount of detailed work, that I want to check it in to keep it safe. :)

2002-12-14 flw <flw@gurke>

* psyntax-bootstrap.scm, psyntax.pp, psyntax.scm:
forgot some files, naturally

2002-12-13 flw <flw@gurke>

* Makefile.am, batch-driver.scm, build.scm, c-platform.scm, chicken.1, compiler.scm, configure.in, csc.bat, eval.scm, library.scm, makefile.dj, makefile.guilibs, makefile.vc, parameters.scm, support.scm, syntax-case.scm:
- we now use a more up-to-date version of Chez' portable
syntax-case implementation.
- special compile-handling of `error' accepts now an optional
location as first argument.
- Steve Elkins confirmed successfull build on OpenBSD.
- library units syntax-case and modules are not compiled unsafe
(for libuchicken.*).
- Compiler-option `-compress-literals' and equivalent declaration.
- `(chicken-version)'.

2002-12-11 psilord <psilord@gurke>

* test-infrastructure-hygienic.scm:
+ Added the macro (side-effect ...) which evaluates a set of arguments in
a (begin ...) form and then returns the ignore-result result. This
allows you to set up complicated situations for expectations where
you might just want to secretly do a lot of work and then perform several
expectations.

2002-12-09 psilord <psilord@gurke>

* test-infrastructure-hygienic.scm:
+ Changed the name of a few functions that were undocumented, but I wanted to
document them. The names they originally had were not really meaningful.

2002-12-08 flw <flw@gurke>

* build.scm, c-backend.scm, c-platform.scm, chicken-setup.scm, chicken.h, configure.in, csi.scm, eval.scm, examples/mandelbrot.scm, lolevel.scm, posix.scm, runtime.c, srfi-1.scm:
- fixed bug in `chicken-setup.scm': the access-check for the
REGISTRY file is now done on the directory.
- srfi-1.scm: `proper-list?' is now an alias for `list?'
- fixed mean bug in a literal-frame allocation handling: pointer
to nursery-allocated symbols, when re-interned and written into
a literal-frame circumvented the write-barrier.
[Thanks to Joerg Wittenberger for providing sample code]
- all places where BSD-specific stuff were used, now check
for Open BSD, too. Additionally, RTLD_GLOBAL is defined as 0.
[Thanks to Steve Elkins]
- removed unused definitions from `examples/mandelbrot.scm'.
[Thanks to Sven Hartrumpf]
- the way `let' was handled in the evaluator limited the number
of bindings to 128 on non-x86 hardware.
[Thanks to Dorai Sitaram]

2002-12-08 psilord <psilord@gurke>

* test-infrastructure-hygienic.scm:
+ Hid all of the functions I don't want people to use with the prefix
'test:'.
+ Need to document some API functions I left for people to use.

2002-12-07 psilord <psilord@gurke>

* Makefile.am:
+ Added the new test-infrastructure*.scm files to be installed with the
loader file in the place where they get installed. :)

* test-infrastructure-hygienic-local.scm: + Initial revision
+ This file will contain any implementation specific testing infrastructure
code you'd like (for example signal handling expectations) written in the
hygienic R5RS macro style. Since it is local to the implementation,
you may use implementation specific code in here.

* test-infrastructure-hygienic.scm:
+ The code in this file used to be in test-infrastructure.scm. Please
look there from 1.16 to 1.1 to see the previous history. That file
is now a simple implementation specific loader of the testing
infrastructure code.
+ The code was moved into this file to be as portable as possible and it
shall stay as close to R5RS as possible. Any implementation specific
mumbo jumbo you'd like to add to the testing infrastructure (example,
signal handling expectations), you should add into the corresponding
*-local.scm files. Also, the common/base R5RS hygienic macro definition
in this file is considered cannon, and the lowlevel macro implementation
should always follow what is in this file.
+ Fixed a bug where printnl was using a non-R5RS function causing a
non-portability problem.
+ Fixed a bug where I typoed a function reference for
(terminate-result-result-ref ...)

* test-infrastructure-lowlevel-local.scm: + Initial revision
+ This file contains implementation specific test infrastructure code
written using low level macros.

* test-infrastructure.scm:
+ moved all code in here into test-infrastructure-hygienic.scm
+ this file is now a simple implementation specific loader that loads either
the hygienic or the low level macro version of the test common/base
test-infrastructure code plus the test infrastructure code specific
to this implementation.

* test-infrastructure-lowlevel.scm: + Initial revision
+ This file will contain the low level translation of the common/base
hygienic test infrastructure macros.

2002-12-04 psilord <psilord@gurke>

* test-infrastructure.scm:
+ Updated my copyright to be a bit more clear on something.

2002-12-02 flw <flw@gurke>

* Makefile.am, build.scm, chicken-setup.scm, configure.in, csc.bat, csi.scm, extras.scm, formatprofile.bat, lolevel.scm, posix.scm, test-infrastructure.scm:
- `flatten' didn't handle empty lists properly
- location-stuff has own subsection in manual
- Arguments to csc's -C and -L options are split at whitespace
- more pointer operations
- the index argument to `make-locative' is optional
- formatprofile defaults to PROFILE, if no filename is given
- `csi -setup' without further arguments initializes the registry
- chicken-setup: build didn't restore state on failure
- removed non-R5RS stuff from test-infrastructure.scm
- posix.scm: `file-XXXX-access?' was broken
- `csi -setup' tests write-permission for registry directory

2002-11-25 flw <flw@gurke>

* chicken-setup.scm, csc.bat, csi.scm, eval.scm, examples/ctclsh.scm, extras.scm, format.scm, library.scm, regex.scm, srfi-18.scm, srfi-25.scm, c-backend.scm:
- removed most of the string-utilities from `extras.scm'
- fixed bug in `make-mutex'
- removed `mutex-owner'
- fixed some unbound-variable errors in several library files
- precompiled regexp's

2002-11-25 psilord <psilord@gurke>

* test-infrastructure.scm:
+ Wrote a destructor object API to wrap the message passing interface to the
destructor object. I did this to keep it more consistant with the
rest of the test-infrastructure APIs, and also, it now allow sme more
freedom is manipulating the destructor object API and keeping it backwards
compatible. Eventually, I was to be able to specify nicely the
queued function calls so debugging information is much cleaner, and maybe
I want to play with the result type of the destructor object instead
if having it be the ignore type all of the time.
+ Recasted the activation of the destructor object to use the new interface.

2002-11-12 flw <flw@gurke>

* library.scm, lolevel.scm: - `copy' maintains uniqueness of symbols
- `define-record-printer' works with SRFI-9 records
- fixed bug in `define-record-printer' macro

* batch-driver.scm, build.scm, c-platform.scm, configure.in, csc.bat, csi.scm, library.scm, runtime.c, srfi-18.scm, support.scm:
- fixed bug in `seconds->time' [Thanks to Joerg Wittenberger]
- Added alternative keyword styles

2002-11-11 psilord <psilord@gurke>

* Makefile.am:
+ c_defaults.h wasn't being generated correctly. It didn't have newlines
where newlines were expected. I fixed it.

2002-11-09 flw <flw@gurke>

* Makefile.am, chicken-setup.scm, configure.in, csi.scm, extras.scm, runtime.c, srfi-18.scm, test-infrastructure.scm, testsuites/makefile, testsuites/test-example.scm, testsuites/test-r5rs.scm, testsuites/test-test-infrastructure.scm:
- chicken-setup.scm: `uninstall-extension!' accepts single symbol as argument
- Fixed arity-bug in `string-map' (extras.scm)
- `hash-table->list'
- `make-mutex' wasn't adapted to final SRFI spec [Thanks to Joerg Wittenberger]
- Adapted uses of AC_DEFINE in `configure.in' to new autoconf version

2002-11-06 psilord <psilord@gurke>

* test-infrastructure.scm:
+ Changed the warning API to reference warnings in the result objects
as it is presented to the user cause the old way was stupid. Now
it is much more consistant.
+ Fixed up some comments to be more correct.
+ Once I changed the warning API, I had to fix output-style-human to reflect
the new API design. Much better in my opinion....

2002-10-31 psilord <psilord@gurke>

* test-infrastructure.scm:
+ Added the (skip ...) macro which allows you to skip an expectation, test
package or test case at your leisure.
+ fixed up some comments.

2002-10-30 psilord <psilord@gurke>

* testsuites/test-r5rs.scm:
+ Added the beginnings of chapter 6 from the R5RS handbook. Eventually,
I'll add everything out of it. Mu goal is to implement as much of the
R5RS spec as possible using my test infrastructure.

* test-infrastructure.scm: + Added todo-result and gloss-result.
+ todo-result is a message that says something needs to be done.
+ gloss-result is strictly information to be processed by the user in
any way desired. Usually it is a string that is printed out explaining
some comments about something that is different than a warning.
+ Changed the output-style-human function to output things in a better fashion.
+ TODO Need to add the skip macro to be able to skip tests.

2002-10-29 psilord <psilord@gurke>

* test-infrastructure.scm: + Added some stuff to my copyright.
+ Fixed the debugging output of the output-style-human function so when it
encounters something it doesn't know how to parse, it emits the object
itself in the debug message.

* testsuites/test-r5rs.scm, testsuites/test-test-infrastructure.scm, testsuites/makefile, testsuites/test-example.scm, testsuites/test-lolevel.scm:
+ fixed the test suite to use the new world order.

* test-infrastructure.scm:
+ Fixed the comments about test-cases and test-packages.
+ Removed some defunct code.
+ Moved some code around for better organization.

2002-10-28 flw <flw@gurke>

* Makefile.am, batch-driver.scm, build.scm, chicken-setup.scm, chicken.h, compiler.scm, configure.in, csc.bat, csi.scm, lolevel.scm, makefile.dj, makefile.vc, runtime.c, srfi-18.scm:
- `current-time' (srfi-18.scm) returns something more useful
- fixed bug in `make-executable-byte-vector' and `make-static-byte-vector':
the allocated block was of insufficient size [Thanks to Peter Keller]
- simplified the use of preprocessor-symbols with respect to `c_defaults.h'
- `-strict[-srfi-0]' didn't work correctly
- `csc.bat' is generated from `csc.in'

2002-10-28 psilord <psilord@gurke>

* testsuites/test-example.scm: + Added some comments.

* testsuites/makefile: + Added test-example.scm
+ Commented out all tests except for the example test. I need to convert the
other tests into the new world order of the testing infrastructure.

* testsuites/test-example.scm: + initial revision
+ A small example of the test-infrastructure code so people can have a
starting point with which to write their own test using the system.

* test-infrastructure.scm:
+ Added a simple output-style for human readable output of the result tree.
The modus opreandi for handling a result tree is to write a recursive
analysis procedure to manipulate it in any way you desire. It can
print out output, or calculate percentage failure, or do any other
computation you desire.
+ Some Experimetnal API calls exist for the output-style-human function.
I don't know what I'm going to do with those quite yet.
+ Added the warning syntax to all of the expectations(except the exception
handling test-cases, I haven't even touched those yet).
XXX I think you need another type to specially handle the exception
results.
+ Renamed the escape-result and associated APIs to a terminate result since
that is closer to what it actually means.
+ Fixed a lot of busted API calls to deal with the various result types.
+ Added a user invoked terminate function which you pass a continuation
escpe fucntion and a message that all gets transformed into a terminate
result type in the test package or test case you are in. You may pass
_any_ escape function in your lexical scope.
+ Added an "ignore-result" type which is extremely transient, and not
creatable by a user directly. It is meant to capture the return values
of the destructor object during its use. These are stripped out of the
result trees and are unobservable by the user. Some of the internal
evaluation functions for the cases/packages and expectations
silently process the ignored values and well, ignore them. :)
+ Added the warning syntax to the test case and test package macros.
+ Fixed it test case/package macros to always activate the destructor object,
strip ignored results, and build termination events when they happen
automatically.
+ Got rid of the true/false macros. I didn't like them.
+ Whenever you use the destructor, it creates a temporary ignore-result
type which immediatly gets eaten when it comes time to process that
particular result tree. I decided it wasn't in my best interest to
use the #<unspecifed> system here.
+ Added my copyright for this code, and a small paragraph explaining that
you can use it for whatever you desire, but my name stays attached to
it.

2002-10-26 psilord <psilord@gurke>

* test-infrastructure.scm:
+ Totally revamped the escape procedure handling. Now, when an escape
procedure is called, you get an "escape-result" in the
returned tree. I'm toying with being able to specify
a format you return so that you can give back diagnostic
messages. Already it automatically remembers the context you were
in package/test-case wise, but not expectation-wise(it can't,
in fact--well, it could... and maybe it will some day). I removed
the destructor-result object I had before cause it was dumb and
didn't model the real concept I wanted.
+ Added a warning syntax so when you make a test case or a test package
you can(optionally) have it embed a warning object into the
returned result list to be parsed later by the tree analysis
code the user writes. I need to add this functionality to the
test-package macro(though the underlying support code for that
macro understands it already) and for all of the expectations. The
use of this is to mention things like chicken expects this answer
when the r5rs handbook says to give that answer. Stuff like that.
+ Cleaned up some code I fat fingered because I usually write this stuff
at 2am.
+ This is still not ready for prime time, but it is comming very close.

2002-10-25 psilord <psilord@gurke>

* test-infrastructure.scm:
+ fixed a bug in evaled-package-results-true where if it was passed the empty
list it would return true.

* test-infrastructure.scm:
+ I've made serious changes to the internals of this code and until I update
the test suites that use this code, they will all break. What I have
currently appears to work and so I'm checking it in so I don't lose it
through mistake or anything like that. The lowlevel macros definitely
need to be redone, and I haven't attempted that yet. To felix, who
is prolly reading this, don't do the conversion yet until I say cause
a few things still need fixing.
+ I've made it so that a test package can have multiple test cases or
test-packages inside it ad infinitum.
+ Now all tests return a huge tree that represents all of the results
of the tests(along with the unevaluated expectations) and user
supplied information for the tests. This causes a separation of
output generation/analysis with the evaluation of the expectations.
Now you can retarget output generation to be human readable or html
or whatever you want.
+ TODO: add new macro definitions for the "warning" style expectations,
packages, and test cases.
+ I added a ton of API calls to deal with the generated result tree and the
various result types encapsulated in the tree. All of this, plus how
to use everything needs documentation.

2002-10-21 flw <flw@gurke>

* testsuites/test-lolevel.scm, testsuites/test-test-infrastructure.scm:
- added some testing code

* test-infrastructure.scm, testsuites/makefile, Makefile.am, csc.bat, csi.scm, extras.scm, lolevel.scm, runtime.c:
- fixed some escaped characters in verbatim sections of the manual
- ",d <locative>" didn't show anything useful in csi
- `make-locative' didn't accept byte-vectors
- `pretty-print' didn't handle eof-object (and crashed!)
- `(##sys#fudge 16)' returned heavily overflowed values
[Thanks to Joerg Wittenberger]
- made some minor modifications to `test-infrastructure.scm'
- cleaned up the manual
- removed #include of `varargs.h' (pseudo-Solaris fix)

2002-10-12 flw <flw@gurke>

* Makefile.am, autocvs, chicken-setup.scm, chicken.spec.in, test-infrastructure.scm, testsuites/makefile, testsuites/test-r5rs.scm:
- added example for `define-external' to manual
- added `-build' stage to chicken-setup
- updated version of autoconf/automake/libtool-generated files
- added test-infrastructure.scm to distribution tarball
- removed acinclude.m4 and stamp.h-in from distribution
- makefile in testsuites compiles and runs all tests

2002-10-09 flw <flw@gurke>

* Makefile.am, build.scm, c-backend.scm, c-platform.scm, chicken-setup.1, chicken-setup.scm, chicken.h, compiler.scm, configure.in, eval.scm, library.scm, lolevel.scm, optimizer.scm, posix.scm, runtime.c, support.scm, tinyclos.scm:
- Invocation of `csc' in `chicken-setup' uses full path.
- Foreign procedure accept pointer-like objects were pointers
were previously required (allows locatives as pointer arguments).
- Type-check routines for foreign arguments generate better code.
- Some locative-related routines are inlined.
- An invalid foreign type could crash the compiler.
- Result-size compuation for access to foreign data had some 32-bit
dependencies.
- `define-location' and `let-location', renamed `external-pointer' to `location'.
- Allocation for foreign-results is done in-line.
- Renamed module `ffi' to `chicken-ffi'.

2002-10-06 psilord <psilord@gurke>

* testsuites/test-r5rs.scm:
+ the test package macros return a vector of results, so I fixed up
the use of the test package that had been implemented.
+ Changed the include of the infrastructure to a require of it since it is now
in the distribution proper.

2002-10-05 psilord <psilord@gurke>

* Makefile.am:
+ Added test-infrastructure.scm into the install procedure so this file
is placed into the correct install place like moremacros.scm is.
+ You may now (require 'test-infrastructure) to gain the ability to use this
feature, but you MUST be using hygienic macros.
+ As soon as I figure out where to document it, I'll do it.
+ I still need to have a lowlevel macro translation of this file so people
can use it without r5rs macros. However, I've barely used lowlevel
macros, so it is going to take a while to perform the port while I
figure everything out.

2002-10-02 flw <flw@gurke>

* LICENSE: moved LICENSE into doc directory

* Makefile.am, README, README.CVS, autocvs, runtime.c:
- Fixed bug in heap-resizing routine [Thanks to Benedikt Rosenau]
- Fixed several bugs in the manual [Thanks to Sven Hartrumpf and Benedikt Rosenau]
- Moved some documentation files into doc directory

2002-09-29 flw <flw@gurke>

* Makefile.am, README, batch-driver.scm, c-platform.scm, chicken-setup.scm, chicken.h, compiler.scm, configure.in, csc.bat, csi.scm, extras.scm, library.scm, lolevel.scm, runtime.c, srfi-25.scm:
- fixed bug in `csc.bat' (wrong spelling of `library-extension')
- fixed bug in `compiler.scm': `compile-time-macros-only' declaration set
wrong variable
- `chicken-setup --wrap <file>.scm' works without .setup file
- `arithmetic-shift' generates better code with a known second argument
- locatives
- `->string'
- SRFI-26
- `chicken-setup' macro and `-setup' option for csi
- the extension-registry is created automatically

2002-09-19 surazal <surazal@gurke>

* chicken-setup.scm:
Ensure that .setup files are canonicalized before output, even where
there was no existing file.

2002-09-17 flw <flw@gurke>

* Makefile.am, README, c-platform.scm, chicken-setup.scm, chicken.h, csi.scm, posix.scm, runtime.c, tinyclos.scm:
- `-:r' runtime option
- `##sys#immediate?' and `arithmetic-shift' are rewritten to non-CPS calls
- did some minor tweaks in `tinyclos.scm'
- `C_fix()' used cast to unsigned word
- fixed bug in `quit' procedure in `chicken-setup'
- `posix' wasn't provided by csi
- added `sleep' to `posix.scm'
- added Debian-specific `Makefile.am' [Thanks to Joerg Wittenberger]
- `manual.tex' has updated build-number [Thanks to Sven Hartrumpf]
- fixed bug in `script-utils.scm': a local version of `regex-case' was required
[Thanks to Tony Garnock-Jones]

2002-09-17 psilord <psilord@gurke>

* testsuites/test-r5rs.scm:
+ Changed include to get infrastructure from toplevel directory

* testsuites/test-r5rs.scm:
initial revision of an R5RS test suite tailored to Chicken

* test-infrastructure.scm:
Initial Revision of part of the test suite code for chicken.

2002-09-13 flw <flw@gurke>

* Makefile.am, README, build.scm, c-backend.scm, chicken.h, configure.in, csc.bat, csi.scm, library.scm, makefile.vc, srfi-1.scm, srfi-25.scm, support.scm:
- fixed bug in `srfi-1.scm' [Thanks to Vladimir Tsichevski]
- fixed bug in `support.scm': "nonnull-..." byte-vector types weren't properly handled
- code generated for foreign-callback lambdas uses prefixed names for some
arguments to avoid collisions with user variables
- `csc.bat' treats .lib files like .obj files
- `makefile.vc' is able to bootstrap the system from sources
- fixed minor bug in `Makefile.am': some docs had wrong paths
- fixed bug in `gc': no-argument case invoked wrong GC method
- fixed bug in `csi.scm': `,du' interpreter command crashed on immediate objects [Thanks to Benedikt Rosenau]
- error-location printed wasn't properly qualified

2002-09-09 flw <flw@gurke>

* chicken-setup.scm, chicken.1, extras.scm:
- chicken-setup: minor fixes, removed `test-run', added some properties
- added chicken-setup example to manual
- `constantly' accepts multiple arguments
- removed manual.html

2002-09-05 flw <flw@gurke>

* chicken-setup.scm, eval.scm: - `require' handles 'file property, now

2002-09-04 surazal <surazal@gurke>

* chicken-setup.scm:
Base the .so name in chicken-setup on the (file) attribute, rather than
the name of the package

2002-09-04 flw <flw@gurke>

* chicken-setup.scm, tinyclos.scm: - more chicken-setup fixes

2002-09-04 surazal <surazal@gurke>

* chicken-setup.scm: Change test-compile:
- support #:cflags <list> (default ())
- support #:ldflags <list> (default ())
- support #:compile-only <boolean> (default #f)

* chicken-setup.scm: Remove offending tilde.

2002-09-03 flw <flw@gurke>

* Makefile.am, README, chicken-setup.scm, csc.bat, csi.scm, library.scm:
- #:srfi-30 wasn't properly registered
- several fixes in `chicken-setup.in'
- added setup-property `when'; `make' now allows an arbitrary expression
- `chicken-setup' is now compiled to a binary

2002-09-02 flw <flw@gurke>

* Makefile.am, eval.scm, library.scm, support.scm:
- stacktrace/runtime error message shows offending source file
- removed `regex-case' (will be put into extension library)
- fixed problem in `Makefile.am': manual pages weren't found (moved them back into toplevel dir)
- added feature-id for SRFI-30
- fixed bug in handling of `--define' option in `chicken-setup.in'
- fixed another problem in `chicken-setup.in' related to core-extensions
- 'open-[input|output]-file' didn't show location in error-message

2002-08-31 flw <flw@gurke>

* compiler.scm, eval.scm, extras.scm, optimizer.scm, runtime.c:
- fixed bug in runtime.c (`C_set_host_data')
- unexported, unused globals in files with an `export' declaration weren't removed
- `csc' passed `-feature chicken-compile-shared' instead of `-feature csc-compile-shared'
- `(random 0)' resulted in div-by-zero
- added `compile-time-macros-only' declaration
- error in macro-expansion shows macro
- chicken-setup: several changes - should now work better with macros at extension build-time

2002-08-30 surazal <surazal@gurke>

* Makefile.am: Unstomp quoting fixes :-)

2002-08-27 flw <flw@gurke>

* README, build.scm, c-platform.scm, chicken.h, configure.in, csi.scm, eval.scm, extras.scm, library.scm, lolevel.scm, posix.scm, regex.scm, runtime.c, srfi-1.scm, srfi-13.scm, srfi-14.scm, srfi-18.scm, srfi-4.scm, support.scm, syntax-case.scm:
- fixed bug in statistics-code (`-debug s') [Thanks to Benedikt Rosenau]
- improved error-messages (location is shown more often)
- fixed bug in `define-entry-point'
- chicken-setup: repeated compile checks file-modification time

2002-08-25 flw <flw@gurke>

* FAQ.html, Makefile.am, chicken-config.in, format.txt:
- added separate `doc' directory

2002-08-24 flw <flw@gurke>

* Makefile.am, chicken.h, compiler.scm, csi.scm, eval.scm, examples/mandelbrot.scm, extras.scm, library.scm, lolevel.scm, posix.scm, regex.scm, runtime.c, srfi-1.scm, srfi-13.scm, srfi-14.scm, srfi-18.scm, srfi-25.scm, srfi-4.scm, tinyclos.scm:
- fixes some errors in `moremacros.scm' and `chicken-setup.in'.
- removed `define-foreign-parameter'
- added `manual.tex'
- better error-messages

2002-08-24 surazal <surazal@gurke>

* Makefile.am, chicken-config.in:
Add an extra layer of quoting so that our CFLAGS get passed through
the various programs properly.

2002-08-17 flw <flw@gurke>

* csc.bat: - fixed minor bug in `csc.in'/`csc.bat'

2002-08-16 flw <flw@gurke>

* Makefile.am, autocvs, chicken.scm, csc.bat, eval.scm:
- csc: options `-X' and `-H2'
- autocvs: no generation of README.txt and ChangeLog
- fixed some REGISTRY-related bugs

2002-08-16 surazal <surazal@gurke>

* autocvs:
Copy, rather than symlink, mkinstalldirs/install-sh/missing etc

2002-08-15 surazal <surazal@gurke>

* configure.in: Added check for -ldld for HPUX shl_load.

* autocvs: Autogenerate README.txt from README when you run autocvs.
It's either that, or have an empty README.txt (touch README.txt) or remove
README.txt from DOCFILES in Makefile.am. Or something else :-)

2002-08-14 flw <flw@gurke>

* Makefile.am, README, build.scm, configure.in, csi.scm, eval.scm, lolevel.scm:
- Makefile.am should be pmake-ready, now
- Added `--init' to `chicken-setup'
- `require' should now worl properly

2002-08-14 surazal <surazal@gurke>

* configure.in, runtime.c:
Use shl_load/shl_findsym on HP-UX instead of dlopen/dlsym.

2002-08-13 flw <flw@gurke>

* chicken-setup.1: - added `REGISTRY' and `chicken-setup.1'

* FAQ.html, Makefile.am, README, c-platform.scm, chicken-config.in, csi.scm, eval.scm, library.scm, makefile.dj, makefile.vc, parameters.scm:
- `require' and friends have been revamped
- Fixed bug in `csi.scm': `untrace' referenced hidden variable `##sys#delq'
[Thanks to Panagiotis Vossos]
- Fixed bug in `c-platforms.scm': rewriting rule for `gc' has been removed

2002-08-12 surazal <surazal@gurke>

* Makefile.am, autocvs:
Remove README.txt from DOCFILES in Makefile.am; touch ChangeLog in autocvs

2002-08-09 flw <flw@gurke>

* csi.scm, library.scm, srfi-18.scm: - `(gc #t) forces finalizers.
- Documented `hash-table-remove!'
- Time-related stuff in `srfi-18.scm' uses wall-clock time instead of
CPU time

2002-08-09 surazal <surazal@gurke>

* extras.scm: Added hash-table-remove!.

2002-08-06 surazal <surazal@gurke>

* README.CVS: Restore README.CVS from v1.2

2002-08-05 flw <flw@gurke>

* README, README.CVS, batch-driver.scm, build.scm, chicken-config.in, compiler.scm, configure.in, csc.bat, csi.scm, extras.scm, optimizer.scm, posix.scm, srfi-1.scm, support.scm:
some bugfixes, some enhancments, `export' declaration

2002-08-04 surazal <surazal@gurke>

* autocvs:
Mention libtoolize explicitly when running autoconf/automake/etc to
avoid warnings. (Panagiotis Vossos)

* Makefile.am, chicken-config.in:
chicken-config now supports "-prefix" argument.

2002-08-01 surazal <surazal@gurke>

* README.CVS: Spell out multi-stage bootstrap procedure.

* README.CVS: Initial commit of CVS Chicken bootstrapping instructions.

* batch-driver.scm, c-platform.scm, chicken.1, compiler.scm, support.scm:
(felix) Real-name-table and Line-number-database added

* README, build.scm, configure.in:
(felix) Version number bumped to 1072.

* examples/tclAppInit.c: RCS Id keyword removed.

* FAQ.html, INSTALL, LICENSE, Makefile.am, README, autocvs, batch-driver.scm, build.scm, c-backend.scm, c-platform.scm, chicken-config.1, chicken-config.in, chicken.1, chicken.h, chicken.ico, chicken.rc, chicken.scm, chicken.spec.in, compiler.scm, configure.in, csc.1, csc.bat, csi.1, csi.scm, csibatch.bat, eval.scm, examples/README, examples/calendar.scm, examples/ctclsh.scm, examples/eval-client.c, examples/eval-server.scm, examples/hellowin.scm, examples/makefile, examples/makefile.vc, examples/mandelbrot.scm, examples/mmcp.scm, examples/nqueens.prolog, examples/prolog.scm, examples/schelog-macros.scm, examples/schelog-support.scm, examples/tclAppInit.c, examples/x11cplot.c, examples/x11cplot.h, extras.scm, format.scm, format.txt, formatprofile.bat, library.scm, lolevel.scm, makefile.dj, makefile.guilibs, makefile.vc, nsample.scm, optimizer.scm, parameters.scm, posix.scm, profiler.scm, regex.scm, runtime.c, srfi-1.scm, srfi-13-syntax.scm, srfi-13.scm, srfi-14.scm, srfi-18.scm, srfi-25.scm, srfi-4.scm, support.scm, syntax-case.scm, tinyclos.scm, tweaks.scm:
Initial commit: 1071 + partway toward 1072 + cleanup + removed .c files
Something went wrong with that request. Please try again.