69c62649cc 
								
							 
						 
						
							
							
								
								- defined RTLD_LOCAL for cygwin (possibly incorrect)  
							
							... 
							
							
							
							- added a missing save to a callee-save register (%edi) 
  when entering/reentering to Scheme which caused Ikarus
  not to run properly depending on whether or not gcc places
  the pcb in %edi or not during Scheme execution.
- updated lab/test-ffi.ss to use the new names for foreign
  types, etc. 
							
						 
						
							2008-10-07 02:46:56 -04:00  
				
					
						
							
							
								 
						
							
								1e5e516b08 
								
							 
						 
						
							
							
								
								- added (ikarus foreign) library that should be used instead of  
							
							... 
							
							
							
							(ikarus system $foreign).
- changed the names of some of the pointer primitives
- changed the name of the procedure make-ffi to make-callout
- updated examples and libraries to conform with new names
- updated the users guide to provide a complete description of 
  the (ikarus foreign) library
- updated list of missing R6RS features in the users guide 
							
						 
						
							2008-10-06 01:19:27 -04:00  
				
					
						
							
							
								 
						
							
								0a7a3a8266 
								
							 
						 
						
							
							
								
								made load feel like a top-level by consuming the contents of the  
							
							... 
							
							
							
							given file one expression at a time.  Most notable difference is 
observed when the loaded file captures a conitnuation in one
expression.  Re-invoking this continuation should evaluate the 
next expression that has not been evaluated yet, and not the
expression following the call/cc. 
							
						 
						
							2008-09-28 00:08:34 -04:00  
				
					
						
							
							
								 
						
							
								90175f528f 
								
							 
						 
						
							
							
								
								speech synthesizer demo  
							
							
							
						 
						
							2008-09-27 03:20:24 -04:00  
				
					
						
							
							
								 
						
							
								8c30f0715b 
								
							 
						 
						
							
							
								
								Managed to a simple Ikarus -> Objective-C interface to work.  Ikarus  
							
							... 
							
							
							
							can now open a Cocoa window under Mac OS X.   Happy Happy Joy Joy!! 
							
						 
						
							2008-09-26 02:46:07 -04:00  
				
					
						
							
							
								 
						
							
								89d9a472a5 
								
							 
						 
						
							
							
								
								"darwin" is no longer hardcoded in lib/ypsilon-compat.ikarus.ss,  
							
							... 
							
							
							
							instead, it is obtained from the target info that autoconf
generates. 
							
						 
						
							2008-09-24 23:18:35 -04:00  
				
					
						
							
							
								 
						
							
								55c3fbcc4d 
								
							 
						 
						
							
							
								
								moved the opengl libraries from lab/ to lib/ so that they get  
							
							... 
							
							
							
							installed as user libraries. 
							
						 
						
							2008-09-24 07:22:25 -04:00  
				
					
						
							
							
								 
						
							
								9f53841fb9 
								
							 
						 
						
							
							
								
								fixed endianness error in bytevector-native-[us]32-native-set!.  
							
							
							
						 
						
							2008-09-23 08:02:47 -04:00  
				
					
						
							
							
								 
						
							
								61ecbe0dd1 
								
							 
						 
						
							
							
								
								- opengl demos from ypsilon (gears and glut-demo) now work under  
							
							... 
							
							
							
							ikarus's ffi using a compatibility layer. 
							
						 
						
							2008-09-23 07:48:16 -04:00  
				
					
						
							
							
								 
						
							
								abe97b4053 
								
							 
						 
						
							
							
								
								- argument conversion for callbacks now work.  
							
							... 
							
							
							
							- added more tests in lab/test-ffi.ss 
							
						 
						
							2008-09-23 03:21:41 -04:00  
				
					
						
							
							
								 
						
							
								876ab09eee 
								
							 
						 
						
							
							
								
								- gc during callbacks now works.  
							
							... 
							
							
							
							- system continuations are now maintained as part of the list in
  pcb->next_k. 
							
						 
						
							2008-09-23 01:49:06 -04:00  
				
					
						
							
							
								 
						
							
								df4cb7a6ce 
								
							 
						 
						
							
							
								
								fixed an off-by-one bug in ffi callbacks.  
							
							
							
						 
						
							2008-09-23 00:24:41 -04:00  
				
					
						
							
							
								 
						
							
								09657334c0 
								
							 
						 
						
							
							
								
								fixed autoconf so that ffi.h and libffi are checked iff ffi is  
							
							... 
							
							
							
							enabled.  Also made prep-callback return #f if libffi does not
support closures. 
							
						 
						
							2008-09-22 21:55:05 -04:00  
				
					
						
							
							
								 
						
							
								e07d8f9760 
								
							 
						 
						
							
							
								
								ffi callbacks sorta kinda work now.  
							
							
							
						 
						
							2008-09-21 04:08:54 -04:00  
				
					
						
							
							
								 
						
							
								06fd988a17 
								
							 
						 
						
							
							
								
								C callbacks now reach the C point where they should make the call  
							
							... 
							
							
							
							back into Scheme land. 
							
						 
						
							2008-09-20 01:58:57 -04:00  
				
					
						
							
							
								 
						
							
								31f5f88889 
								
							 
						 
						
							
							
								
								first test of ffi works:  
							
							... 
							
							
							
							> (import (ikarus system $foreign))
> (((ffi-prep-cif 'void '(uint32))
    (dlsym (dlopen #f) "hello_world"))
   10)
Hello World
Hello World
Hello World
Hello World
Hello World
Hello World
Hello World
Hello World
Hello World
Hello World
> 
							
						 
						
							2008-09-14 04:17:24 -07:00  
				
					
						
							
							
								 
						
							
								9f2d7484ab 
								
							 
						 
						
							
							
								
								fixed uint/ulong pointer ref bug (and added appropriate tests).  
							
							
							
						 
						
							2008-09-14 00:38:59 -07:00  
				
					
						
							
							
								 
						
							
								58d937c520 
								
							 
						 
						
							
							
								
								upgraded to using latest versions of autoconf, aclocal, and m4.  
							
							
							
						 
						
							2008-09-13 15:16:14 -07:00  
				
					
						
							
							
								 
						
							
								8e750562d6 
								
							 
						 
						
							
							
								
								- Added memory operations on pointer types for setting and accessing  
							
							... 
							
							
							
							char, short, int, and long values from pointer arrays. 
							
						 
						
							2008-09-13 07:49:17 -07:00  
				
					
						
							
							
								 
						
							
								e05e84d1c2 
								
							 
						 
						
							
							
								
								Added dlopen, dlclose, dlerror, dlsym, malloc, and free to  
							
							... 
							
							
							
							(ikarus system $foreign). 
							
						 
						
							2008-09-12 14:22:57 -07:00  
				
					
						
							
							
								 
						
							
								30cd6a2de8 
								
							 
						 
						
							
							
								
								made environment-symbols work on the interaction-environment.  
							
							
							
						 
						
							2008-09-10 11:02:42 -07:00  
				
					
						
							
							
								 
						
							
								0b017898a8 
								
							 
						 
						
							
							
								
								- minor change to how export (with renaming) is parsed.  When you  
							
							... 
							
							
							
							rename from-name to to-name, the from-name is now treated as an
  identifier while the to-name is treated as a symbol. 
							
						 
						
							2008-09-10 08:17:18 -07:00  
				
					
						
							
							
								 
						
							
								fcef21c693 
								
							 
						 
						
							
							
								
								- Added (environment-symbols <env>) which returns a list of symbols  
							
							... 
							
							
							
							exported by the environment.  Try 
  > (environment-symbols (environment '(rnrs)))
- Added an internal export mechanism so that identifiers can be
  exported from within a library.  The syntax is the same:
    (export export-spec* ...) 
  when appears in a library's top level, adds the export specs to
  the set of exported identifiers.  So, one can do:
    (library (A) 
      (export)
      (import (ikarus))
      (export a)
      (define a 17))
  When appearing in non-library definition context, the export form
  is ignored. 
							
						 
						
							2008-09-10 06:35:18 -07:00  
				
					
						
							
							
								 
						
							
								c597e7a4b3 
								
							 
						 
						
							
							
								
								Added option for searching for socket and nanosleep in libraries  
							
							... 
							
							
							
							-lsocket and -lrt (makes it work on SunOS). 
							
						 
						
							2008-09-08 14:43:47 -07:00  
				
					
						
							
							
								 
						
							
								afc9bff07f 
								
							 
						 
						
							
							
								
								- added experimental pointer manipulation primitives.  
							
							
							
						 
						
							2008-09-06 06:01:39 -07:00  
				
					
						
							
							
								 
						
							
								814c797633 
								
							 
						 
						
							
							
								
								- removed bset/h instruction from the compiler (it was rarely used  
							
							... 
							
							
							
							and not implemented 100% correctly)
- fixed parameterize to allow (parameterize () def ... exp exp ...) 
							
						 
						
							2008-09-06 04:17:20 -07:00  
				
					
						
							
							
								 
						
							
								b9085e15da 
								
							 
						 
						
							
							
								
								- more work on trig functions  
							
							... 
							
							
							
							- mkstx now checks that double wraps are not merged incorrectly 
							
						 
						
							2008-08-12 01:17:04 -07:00  
				
					
						
							
							
								 
						
							
								476a0cb6d8 
								
							 
						 
						
							
							
								
								fixed small bug in rationalize  
							
							
							
						 
						
							2008-08-11 13:38:28 -07:00  
				
					
						
							
							
								 
						
							
								c64fda7619 
								
							 
						 
						
							
							
								
								fixed a few problems in geometric functions when they are passed  
							
							... 
							
							
							
							complex numbers or when they're passed real numbers but the results
are complex. 
							
						 
						
							2008-08-11 10:37:05 -07:00  
				
					
						
							
							
								 
						
							
								e58c53cca5 
								
							 
						 
						
							
							
								
								symbols containing unicode characters now print properly and respect  
							
							... 
							
							
							
							the print-unicode parameter. 
							
						 
						
							2008-08-10 11:50:39 -07:00  
				
					
						
							
							
								 
						
							
								fdca9ed33f 
								
							 
						 
						
							
							
								
								command line arguments are now interpreted as utf8 strings.  
							
							
							
						 
						
							2008-08-10 11:33:10 -07:00  
				
					
						
							
							
								 
						
							
								2ad6d9bddf 
								
							 
						 
						
							
							
								
								strings containing non-ascii characters are written using either  
							
							... 
							
							
							
							hex escaping or as-is depending on the value of the print-unicode
parameter. 
							
						 
						
							2008-08-10 11:03:09 -07:00  
				
					
						
							
							
								 
						
							
								22d216f9ed 
								
							 
						 
						
							
							
								
								- fixed a problem with loading an empty file.  
							
							... 
							
							
							
							- added ikarus.reader.annotated.ss to Makefile.am. 
							
						 
						
							2008-08-10 10:46:24 -07:00  
				
					
						
							
							
								 
						
							
								7bacb4a0a5 
								
							 
						 
						
							
							
								
								Added string-downcase and string-upcase.  String-downcase does not  
							
							... 
							
							
							
							handle greek-final-sigma properly. 
							
						 
						
							2008-08-09 07:12:22 -07:00  
				
					
						
							
							
								 
						
							
								e24356eb4a 
								
							 
						 
						
							
							
								
								scheme-script is now its own program; it does not fork and exec  
							
							... 
							
							
							
							ikarus, and therefore does not interfere with ikarus's command line
parsing. 
							
						 
						
							2008-08-09 05:47:44 -07:00  
				
					
						
							
							
								 
						
							
								c5930ac113 
								
							 
						 
						
							
							
								
								exported enum-set?.  
							
							
							
						 
						
							2008-08-08 08:29:18 -07:00  
				
					
						
							
							
								 
						
							
								b7d9c0cf1f 
								
							 
						 
						
							
							
								
								- added two argument version of log  
							
							... 
							
							
							
							- handled (/ flonum complexnum) 
							
						 
						
							2008-08-08 08:21:23 -07:00  
				
					
						
							
							
								 
						
							
								53cc48d23c 
								
							 
						 
						
							
							
								
								fxsll was missing an interrupt call.  
							
							
							
						 
						
							2008-08-07 15:02:53 -07:00  
				
					
						
							
							
								 
						
							
								9eead5327a 
								
							 
						 
						
							
							
								
								Added bitwise-if and bitwise-copy-bit-field (inefficiently)  
							
							
							
						 
						
							2008-08-04 23:43:11 -07:00  
				
					
						
							
							
								 
						
							
								e1215998e0 
								
							 
						 
						
							
							
								
								quick fix for incorrect reading of subsequent* characters in a  
							
							... 
							
							
							
							symbol. 
							
						 
						
							2008-08-04 23:19:55 -07:00  
				
					
						
							
							
								 
						
							
								2b4e89bcf0 
								
							 
						 
						
							
							
								
								- fixed a minor import subversion bug.  
							
							... 
							
							
							
							- added 2-argument version of fllog. 
							
						 
						
							2008-08-04 16:44:24 -07:00  
				
					
						
							
							
								 
						
							
								a9fb7b0fef 
								
							 
						 
						
							
							
								
								fixed small bug in enum-universe.  
							
							
							
						 
						
							2008-08-03 14:18:11 -07:00  
				
					
						
							
							
								 
						
							
								c5381d4cb3 
								
							 
						 
						
							
							
								
								Applied a patch fixing error when the standard input/output ports  
							
							... 
							
							
							
							are closed before the interactive session terminates. 
							
						 
						
							2008-08-03 13:50:20 -07:00  
				
					
						
							
							
								 
						
							
								6d52912aef 
								
							 
						 
						
							
							
								
								reimplemented enums to use bitmaps instead of lists.  
							
							
							
						 
						
							2008-08-03 12:52:33 -07:00  
				
					
						
							
							
								 
						
							
								0da4e99a12 
								
							 
						 
						
							
							
								
								simplified when, unless, and case macros and added better handler  
							
							... 
							
							
							
							for (if (not e) e e). 
							
						 
						
							2008-08-02 11:09:22 -07:00  
				
					
						
							
							
								 
						
							
								39e84d1395 
								
							 
						 
						
							
							
								
								simplified parameterize macro.  
							
							
							
						 
						
							2008-08-02 10:11:04 -07:00  
				
					
						
							
							
								 
						
							
								9b74020647 
								
							 
						 
						
							
							
								
								fixed a bug in fasl reader for shared/cyclic data structures.  
							
							
							
						 
						
							2008-07-30 17:28:33 -07:00  
				
					
						
							
							
								 
						
							
								f2d6f433bb 
								
							 
						 
						
							
							
								
								fixed shift-left bug on bignums in 64-bit mode only  
							
							
							
						 
						
							2008-07-30 08:17:20 -07:00  
				
					
						
							
							
								 
						
							
								f144722b36 
								
							 
						 
						
							
							
								
								bumped the number of registers available on AMD64 by 4.  
							
							
							
						 
						
							2008-07-30 07:47:22 -07:00  
				
					
						
							
							
								 
						
							
								959082d12d 
								
							 
						 
						
							
							
								
								assert now gives source information when available.  
							
							
							
						 
						
							2008-07-29 11:04:52 -07:00  
				
					
						
							
							
								 
						
							
								5aa6e1b05e 
								
							 
						 
						
							
							
								
								some work on parsing polar notation.  
							
							
							
						 
						
							2008-07-29 08:35:36 -07:00  
				
					
						
							
							
								 
						
							
								c0a1abace1 
								
							 
						 
						
							
							
								
								Added &undefined condition to unbound error conditions.  
							
							
							
						 
						
							2008-07-29 07:54:06 -07:00  
				
					
						
							
							
								 
						
							
								d84dd99061 
								
							 
						 
						
							
							
								
								added fxrotate-bit-field  
							
							
							
						 
						
							2008-07-27 10:53:31 -07:00  
				
					
						
							
							
								 
						
							
								282fa962a8 
								
							 
						 
						
							
							
								
								fixed div0-and-mod0 bug  
							
							
							
						 
						
							2008-07-26 15:08:13 -07:00  
				
					
						
							
							
								 
						
							
								4ee88498a9 
								
							 
						 
						
							
							
								
								fixes quasisyntax bugs, making them more conforming to the r6rs test  
							
							... 
							
							
							
							suite. 
							
						 
						
							2008-07-26 14:11:22 -07:00  
				
					
						
							
							
								 
						
							
								b3d8a8f9fd 
								
							 
						 
						
							
							
								
								sqrt now supports negative arguments properly.  
							
							
							
						 
						
							2008-07-26 12:39:11 -07:00  
				
					
						
							
							
								 
						
							
								3b80d4f321 
								
							 
						 
						
							
							
								
								fixed a bug in quotient and div when given (least-fixnum) and -1.  
							
							
							
						 
						
							2008-07-26 12:28:51 -07:00  
				
					
						
							
							
								 
						
							
								4909a9ef08 
								
							 
						 
						
							
							
								
								fixed make-rectangular so that (make-rectangular 1.0 0.0) returns  
							
							... 
							
							
							
							a cflonum 1.0+0.0i while (make-rectangular 1.0 0) returns 1.0. 
							
						 
						
							2008-07-25 17:46:34 -07:00  
				
					
						
							
							
								 
						
							
								f332927d23 
								
							 
						 
						
							
							
								
								kinda fixes a port-position computation bug for custom binary ports.  
							
							
							
						 
						
							2008-07-24 22:30:21 -07:00  
				
					
						
							
							
								 
						
							
								7db56cf76e 
								
							 
						 
						
							
							
								
								- bytevector-ieee-[single|double]-[ref|set!] now accept unaligned  
							
							... 
							
							
							
							indices (r6rs requirement).
- file-options are now represented as enum-sets (r6rs requirement)
- odd?, even?, lcm, remainder, etc., now accept inexact integers. 
							
						 
						
							2008-07-24 18:58:53 -07:00  
				
					
						
							
							
								 
						
							
								9085b79b64 
								
							 
						 
						
							
							
								
								fixed some r6rs bitwise bugs.  
							
							
							
						 
						
							2008-07-24 00:06:12 -07:00  
				
					
						
							
							
								 
						
							
								0305537374 
								
							 
						 
						
							
							
								
								get-u8 and lookahead-u8 did not update the port position properly.  
							
							... 
							
							
							
							Fixed. 
							
						 
						
							2008-07-23 11:15:44 -07:00  
				
					
						
							
							
								 
						
							
								9f623124d5 
								
							 
						 
						
							
							
								
								symbol=? and boolean=? now accept 2+ args.  
							
							
							
						 
						
							2008-07-23 07:55:32 -07:00  
				
					
						
							
							
								 
						
							
								acc9940379 
								
							 
						 
						
							
							
								
								fixed gc bug in 64-bit mode along with another 64-bit bug in the  
							
							... 
							
							
							
							assembler when addressing using special %eax/%rax instructions. 
							
						 
						
							2008-07-21 22:07:31 -07:00  
				
					
						
							
							
								 
						
							
								358eee03ee 
								
							 
						 
						
							
							
								
								Added a 64-bit bootfile and modified the configure script to not add  
							
							... 
							
							
							
							its own -m32 or -m64 flags.  To built ikarus in 32-bit mode, one can
do:  
  ./configure CFLAGS=-m32
and in 64-bit mode:
  ./configure CFLAGS=-m64 
							
						 
						
							2008-07-20 14:09:04 -07:00  
				
					
						
							
							
								 
						
							
								59b9d28001 
								
							 
						 
						
							
							
								
								guard expressions now re-raise unhandled conditions using  
							
							... 
							
							
							
							raise-continuable (as per the R6RS errata page, part 7.1) 
							
						 
						
							2008-07-20 02:51:14 -07:00  
				
					
						
							
							
								 
						
							
								78d9fa1f42 
								
							 
						 
						
							
							
								
								In 64-bit, ikarus now passes all tests, can recompile itself,  
							
							... 
							
							
							
							and runs all benchmarks (inefficiently but correctly). 
							
						 
						
							2008-07-20 00:14:09 -07:00  
				
					
						
							
							
								 
						
							
								4f48c55bfc 
								
							 
						 
						
							
							
								
								all existing tests pass under 64-bit  
							
							
							
						 
						
							2008-07-19 14:41:06 -07:00  
				
					
						
							
							
								 
						
							
								81a1a640df 
								
							 
						 
						
							
							
								
								more progress on the AMD64 front, fixing more numeric and more cogen  
							
							... 
							
							
							
							64-bit bugs. 
							
						 
						
							2008-07-18 22:21:57 -07:00  
				
					
						
							
							
								 
						
							
								01c4afa320 
								
							 
						 
						
							
							
								
								Major work towards the AMD64 port.  Most important of which is that  
							
							... 
							
							
							
							continuations work, more assembly instructions are testing in 64-bit
mode, and some arithmetic operations (shift-right, etc.) have been
fixed by removing some 32-bit dependencies. 
							
						 
						
							2008-07-18 01:35:13 -07:00  
				
					
						
							
							
								 
						
							
								0ef81aa13e 
								
							 
						 
						
							
							
								
								Added make-polar.  
							
							
							
						 
						
							2008-07-15 23:13:59 -07:00  
				
					
						
							
							
								 
						
							
								195dc0ea45 
								
							 
						 
						
							
							
								
								Fixed some problems parsing complex numbers.  
							
							
							
						 
						
							2008-07-15 22:44:55 -07:00  
				
					
						
							
							
								 
						
							
								2a49d5c538 
								
							 
						 
						
							
							
								
								Added "angle".  
							
							
							
						 
						
							2008-07-14 22:43:19 -07:00  
				
					
						
							
							
								 
						
							
								a9657c4642 
								
							 
						 
						
							
							
								
								define-record-type now understands parent-rtd (used to ignore it).  
							
							
							
						 
						
							2008-07-13 11:25:46 -07:00  
				
					
						
							
							
								 
						
							
								c3b12a22e8 
								
							 
						 
						
							
							
								
								the repl now resets on receiving &interrupted conditions.  
							
							
							
						 
						
							2008-07-12 20:05:45 -07:00  
				
					
						
							
							
								 
						
							
								70f5375d6b 
								
							 
						 
						
							
							
								
								refixing trace-define-syntax.  
							
							
							
						 
						
							2008-07-12 10:40:22 -07:00  
				
					
						
							
							
								 
						
							
								eccca7f4ea 
								
							 
						 
						
							
							
								
								- Added trace-let-syntax, trace-letrec-syntax, as well as fixed  
							
							... 
							
							
							
							trace-define-syntax to handle variable transformers.
- added primops for fx comparison functions. 
							
						 
						
							2008-07-11 22:31:40 -07:00  
				
					
						
							
							
								 
						
							
								00970f12d2 
								
							 
						 
						
							
							
								
								- compound conditions are made non-opaque.  
							
							... 
							
							
							
							- more tag analysis for bytevectors and friends. 
							
						 
						
							2008-07-08 08:15:14 -07:00  
				
					
						
							
							
								 
						
							
								749080724c 
								
							 
						 
						
							
							
								
								get-char now raises an error if the string port is closed (bug 245959)  
							
							
							
						 
						
							2008-07-07 01:22:12 -07:00  
				
					
						
							
							
								 
						
							
								f6957b91c2 
								
							 
						 
						
							
							
								
								Added string->bytevector and bytevector->string as per bug 245983.  
							
							
							
						 
						
							2008-07-07 01:11:36 -07:00  
				
					
						
							
							
								 
						
							
								8423610f45 
								
							 
						 
						
							
							
								
								call-with-port does not use dynamic-wind to close the port.  
							
							
							
						 
						
							2008-07-07 00:56:52 -07:00  
				
					
						
							
							
								 
						
							
								b15c7063f9 
								
							 
						 
						
							
							
								
								repl exception handler now returns for non-serious conditions  
							
							... 
							
							
							
							(as per bug 242900) 
							
						 
						
							2008-07-07 00:50:19 -07:00  
				
					
						
							
							
								 
						
							
								badf83557f 
								
							 
						 
						
							
							
								
								fixed rounding for rationals.  
							
							
							
						 
						
							2008-07-07 00:22:14 -07:00  
				
					
						
							
							
								 
						
							
								579b823f44 
								
							 
						 
						
							
							
								
								WIP on tag analysis, annotations, and utilization.  
							
							
							
						 
						
							2008-07-06 23:48:16 -07:00  
				
					
						
							
							
								 
						
							
								d73dfd1287 
								
							 
						 
						
							
							
								
								- More work on the new optimizer  
							
							... 
							
							
							
							- Deleted old optimizer and changed the meaning of optimize level to
  be:
    0: bypass the optimizer
    1: copy propagation, constant folding, no inlining
    1: copy propagation, constant folding, with inlining
  The default is set to 1. 
							
						 
						
							2008-06-29 12:35:34 -07:00  
				
					
						
							
							
								 
						
							
								2c8cb7dda2 
								
							 
						 
						
							
							
								
								fixed a bug in matching library subversion in psyntax.  
							
							
							
						 
						
							2008-06-28 03:16:21 -07:00  
				
					
						
							
							
								 
						
							
								1cd581de70 
								
							 
						 
						
							
							
								
								fixed char encoding error message and condition as per bug 243662.  
							
							
							
						 
						
							2008-06-28 02:49:50 -07:00  
				
					
						
							
							
								 
						
							
								45346ef865 
								
							 
						 
						
							
							
								
								- Added cp0! including:  
							
							... 
							
							
							
							- (optimize-level [0,1,2])  and  ikarus -O[0,1,2]
       where -O0 = no optimizations
             -O1 = using old optimizer
             -O2 = using the new cp0 optimizer
       defaults to -O1 for now.
   - (cp0-size-limit n) which is the limit of the residual size for
     each inlining attempt
   - (cp0-effort-limit n) which is the limit on the effort expended 
     for each inlining attempt
   
- Rewrote the syntax-match macro to make use of the same technology
  used in syntax-case itself resulting in reduced code size.
- Added (system-value <symbol>) which returns the system value.
  E.g., (system-value 'car) => #<procedure car>
  This is pretty much the same as 
    (eval <symbol> (environment '(ikarus)))
  except that it does not involve compiling the expression or 
  consulting the library/expander systems.
- Fixed the fasl loader to make it understand complex numbers. 
							
						 
						
							2008-06-28 02:25:44 -07:00  
				
					
						
							
							
								 
						
							
								7d9ed176ac 
								
							 
						 
						
							
							
								
								More work on cp0 which can now swallow the compiler but cannot yet  
							
							... 
							
							
							
							fold any primitives. 
							
						 
						
							2008-06-22 22:10:05 -07:00  
				
					
						
							
							
								 
						
							
								5a2501d4bb 
								
							 
						 
						
							
							
								
								Added port-position and port-has-port-position?  
							
							
							
						 
						
							2008-06-19 21:49:24 -07:00  
				
					
						
							
							
								 
						
							
								e65b39d95d 
								
							 
						 
						
							
							
								
								All parameters that are bound to variables now have proper names.  
							
							... 
							
							
							
							E.g., pretty-width now prints as #<procedure pretty-width>. 
							
						 
						
							2008-06-19 01:58:59 -07:00  
				
					
						
							
							
								 
						
							
								4bb7e170b5 
								
							 
						 
						
							
							
								
								Some procedures (like console-output-port) did not get names when  
							
							... 
							
							
							
							printed (instead, they were just #<procedure>).  Names for
procedures that are defined like
  (define foo
    (let ([something ---]) 
      (lamdba () ---)))
now works. 
							
						 
						
							2008-06-18 22:47:56 -07:00  
				
					
						
							
							
								 
						
							
								1bd699349a 
								
							 
						 
						
							
							
								
								Fixed a problem with port position accounting which was using fixnum  
							
							... 
							
							
							
							arithmetic instead of generic arithmetic. 
							
						 
						
							2008-06-17 21:05:01 -07:00  
				
					
						
							
							
								 
						
							
								333dc03f8f 
								
							 
						 
						
							
							
								
								(waitpid -1 #f) now returns #f if no child has died yet.  
							
							
							
						 
						
							2008-06-13 22:11:51 -07:00  
				
					
						
							
							
								 
						
							
								8f0f0abbca 
								
							 
						 
						
							
							
								
								Applied a patch supplied by Derick Eddington that provides enhanced  
							
							... 
							
							
							
							functionality for waitpid (nonblocking waitpid and more status info)
as well as the ability to send a signal to a process, e.g., 
  (kill pid 'HUP). 
							
						 
						
							2008-06-13 05:43:17 -07:00  
				
					
						
							
							
								 
						
							
								041f9fdafa 
								
							 
						 
						
							
							
								
								Fixed a problem in code generator that was producing invalid memory  
							
							... 
							
							
							
							addressing for predicate operations. 
							
						 
						
							2008-06-13 04:15:25 -07:00  
				
					
						
							
							
								 
						
							
								3bddca30c4 
								
							 
						 
						
							
							
								
								allocation overflow check sequence is a little tighter now.  
							
							
							
						 
						
							2008-06-10 23:01:22 -07:00  
				
					
						
							
							
								 
						
							
								3ee75bece0 
								
							 
						 
						
							
							
								
								fixed incorrect handling of ".ddd" when reading from a port.  
							
							
							
						 
						
							2008-06-10 18:38:06 -07:00  
				
					
						
							
							
								 
						
							
								0939370a07 
								
							 
						 
						
							
							
								
								suppressing printing of file names during bootstrap.  
							
							
							
						 
						
							2008-06-10 13:21:00 -07:00  
				
					
						
							
							
								 
						
							
								fe1f7077ff 
								
							 
						 
						
							
							
								
								fixed minor bug in syntax-case where the wraps and marks of  
							
							... 
							
							
							
							top-marked wrapped syntax objects were incorrectly combined.
E.g., it used to be that:
  (syntax-case (datum->syntax #'foo #'(x y)) ()
    [(x y) 'shouldntmatch] [_ 'ok])
yields shouldntmatch; it's now ok. 
							
						 
						
							2008-06-10 12:35:56 -07:00  
				
					
						
							
							
								 
						
							
								ef50e9f515 
								
							 
						 
						
							
							
								
								dropping input-port-byte-position from (ikarus)'s exports.  
							
							
							
						 
						
							2008-06-09 01:36:27 -07:00  
				
					
						
							
							
								 
						
							
								c53ffd5314 
								
							 
						 
						
							
							
								
								fixed lookahead-char bug that I just made.  
							
							
							
						 
						
							2008-06-08 15:53:42 -07:00  
				
					
						
							
							
								 
						
							
								665ca784d1 
								
							 
						 
						
							
							
								
								Fixed a couple of typos in ikarus.io.ss.  
							
							
							
						 
						
							2008-06-08 15:48:52 -07:00  
				
					
						
							
							
								 
						
							
								432e1d9b87 
								
							 
						 
						
							
							
								
								replaced &i/o-write with &i/o-read for IO read errors.  Duuh.  
							
							
							
						 
						
							2008-06-08 06:25:22 -07:00  
				
					
						
							
							
								 
						
							
								1a5ab01e26 
								
							 
						 
						
							
							
								
								The bottom-most exception handler now only exits.  
							
							
							
						 
						
							2008-06-07 08:32:00 -07:00  
				
					
						
							
							
								 
						
							
								9438328f55 
								
							 
						 
						
							
							
								
								bytevector size for doing select has been fixed.  It used to be 8  
							
							... 
							
							
							
							times larger than needed. 
							
						 
						
							2008-06-06 08:22:45 -07:00  
				
					
						
							
							
								 
						
							
								df4b31af1f 
								
							 
						 
						
							
							
								
								io-error and raise/strerr now include an &error condition.  
							
							
							
						 
						
							2008-06-06 08:10:17 -07:00  
				
					
						
							
							
								 
						
							
								af5472bfb2 
								
							 
						 
						
							
							
								
								exporting fork  
							
							
							
						 
						
							2008-06-06 07:52:40 -07:00  
				
					
						
							
							
								 
						
							
								6741ac2817 
								
							 
						 
						
							
							
								
								better error message when a library file "foo.ss" does not contain  
							
							... 
							
							
							
							the expected library name (foo). 
							
						 
						
							2008-06-05 00:58:04 -07:00  
				
					
						
							
							
								 
						
							
								9f7196d11a 
								
							 
						 
						
							
							
								
								better contextual error messages for invalid numeric sequences.  
							
							
							
						 
						
							2008-06-03 22:27:33 -07:00  
				
					
						
							
							
								 
						
							
								be37f629c5 
								
							 
						 
						
							
							
								
								the reader now understands some complex numbers.  
							
							
							
						 
						
							2008-06-02 00:01:59 -07:00  
				
					
						
							
							
								 
						
							
								a492d318e1 
								
							 
						 
						
							
							
								
								- fixed minor bug in current-directory  
							
							... 
							
							
							
							- changed implementation of string->number. 
							
						 
						
							2008-05-31 20:10:17 -07:00  
				
					
						
							
							
								 
						
							
								53905b9eea 
								
							 
						 
						
							
							
								
								Changes from Derick Eddington supporting file system info:  
							
							... 
							
							
							
							- Added file-regular?, file-directory?, file-symbolic-link?,
  directory-list, make-directory, delete-directory, change-mode, 
  and make-symbolic-link.
- Bug fix in ikrt_open_input_fd and ikrt_open_output_fd which
  considered a 0 FD as an error.
- Bug fix in ikrt_getcwd about len+1.
- Bug fix of &i/o-file-protection which didn't have &i/o-filename as
  its parent.
- There is a new src/ikarus-errno.c file.  
- Made tcp-connect and friends tell when they "failed to resolve
  host name or connect".
- To support the uses of &i/o-filename subtypes, I modified
  print-condition so it will cleanly print the parents' fields of a
  condition; 
							
						 
						
							2008-05-31 10:43:55 -07:00  
				
					
						
							
							
								 
						
							
								6437aa98e0 
								
							 
						 
						
							
							
								
								- exp now understands complex numbers.  
							
							... 
							
							
							
							- expt of complex exponent is implemented in terms of exp. 
							
						 
						
							2008-05-28 23:50:36 -07:00  
				
					
						
							
							
								 
						
							
								fec5dcd419 
								
							 
						 
						
							
							
								
								sqrt, log, and expt now understand complex numbers.  
							
							
							
						 
						
							2008-05-28 22:21:08 -07:00  
				
					
						
							
							
								 
						
							
								b74e3976df 
								
							 
						 
						
							
							
								
								allocation check was still incorrect when the ap+size overflows and  
							
							... 
							
							
							
							shows up to be less than the end of allocation pointer. 
							
						 
						
							2008-05-25 15:32:22 -07:00  
				
					
						
							
							
								 
						
							
								7f0f127081 
								
							 
						 
						
							
							
								
								Allocation overflow check was incorrectly using signed comparison  
							
							... 
							
							
							
							instead of an unsigned one. 
							
						 
						
							2008-05-25 14:39:03 -07:00  
				
					
						
							
							
								 
						
							
								467095677e 
								
							 
						 
						
							
							
								
								+, -, *, and / now handle inexact complex numbers.  
							
							
							
						 
						
							2008-05-25 10:37:41 -07:00  
				
					
						
							
							
								 
						
							
								ab2e05e8b0 
								
							 
						 
						
							
							
								
								Added inexact complex numbers.  
							
							
							
						 
						
							2008-05-24 10:13:01 -07:00  
				
					
						
							
							
								 
						
							
								8827b98972 
								
							 
						 
						
							
							
								
								fasl reader/writer now understands complex numbers.  
							
							
							
						 
						
							2008-05-21 00:40:42 -07:00  
				
					
						
							
							
								 
						
							
								0a6df79e3b 
								
							 
						 
						
							
							
								
								ikarus.reader is now loadable separately.  
							
							
							
						 
						
							2008-05-20 23:21:37 -07:00  
				
					
						
							
							
								 
						
							
								ebcc042ea1 
								
							 
						 
						
							
							
								
								= now handles complex numbers.  
							
							
							
						 
						
							2008-05-18 22:33:49 -07:00  
				
					
						
							
							
								 
						
							
								4cb8165181 
								
							 
						 
						
							
							
								
								+, -, *, / now handle complex numbers.  
							
							
							
						 
						
							2008-05-18 21:41:53 -07:00  
				
					
						
							
							
								 
						
							
								82140f87ba 
								
							 
						 
						
							
							
								
								- Added complex numbers representation (exact complex only).  
							
							... 
							
							
							
							- Added make-rectangular.
- Added the ability to display complex numbers. 
							
						 
						
							2008-05-18 20:39:41 -07:00  
				
					
						
							
							
								 
						
							
								da7cedfe64 
								
							 
						 
						
							
							
								
								Added bitwise-xor.  
							
							
							
						 
						
							2008-05-18 03:21:05 -07:00  
				
					
						
							
							
								 
						
							
								de4276124b 
								
							 
						 
						
							
							
								
								added bitwise-ior.  
							
							
							
						 
						
							2008-05-18 02:27:55 -07:00  
				
					
						
							
							
								 
						
							
								0cd61369b2 
								
							 
						 
						
							
							
								
								added some preliminary work for known-types.  
							
							
							
						 
						
							2008-05-16 23:27:08 -07:00  
				
					
						
							
							
								 
						
							
								6511dd1002 
								
							 
						 
						
							
							
								
								Fixed a paren mismatch in "macro?" helper in printer.  
							
							
							
						 
						
							2008-05-13 06:09:58 -07:00  
				
					
						
							
							
								 
						
							
								5d3ab96c2c 
								
							 
						 
						
							
							
								
								fixed "inaccurate error message" bug in map when applied a non-list  
							
							... 
							
							
							
							argument. 
							
						 
						
							2008-05-12 02:39:28 -07:00  
				
					
						
							
							
								 
						
							
								4acf71d6d2 
								
							 
						 
						
							
							
								
								moved pretty-printing formats to their own library.  
							
							
							
						 
						
							2008-05-12 00:35:19 -07:00  
				
					
						
							
							
								 
						
							
								f05f171f28 
								
							 
						 
						
							
							
								
								exported pretty-format, a parameter maker for setting the pretty  
							
							... 
							
							
							
							format for various forms.  The pretty format structure is not
documented yet and there is no error-checking mechanism for
verifying proper input. 
							
						 
						
							2008-05-12 01:00:01 -04:00  
				
					
						
							
							
								 
						
							
								f8b0e949d9 
								
							 
						 
						
							
							
								
								- syntax-case now raises a syntax violation when _ appears in the  
							
							... 
							
							
							
							literals
- syntax-rules points to the invalid literal when raising an
  exception. 
							
						 
						
							2008-05-10 19:05:40 -04:00  
				
					
						
							
							
								 
						
							
								5c21f9995e 
								
							 
						 
						
							
							
								
								source annotations for r6rs-script and r6rs-libraries are now in  
							
							... 
							
							
							
							chars instead of bytes. 
							
						 
						
							2008-05-06 15:38:05 -04:00  
				
					
						
							
							
								 
						
							
								b5fc5624ec 
								
							 
						 
						
							
							
								
								Fixed a bug in enum-set-universe not returning an enum type.  
							
							
							
						 
						
							2008-05-05 23:53:48 -04:00  
				
					
						
							
							
								 
						
							
								3bcc3249e5 
								
							 
						 
						
							
							
								
								Fixed another source of "annotations being revealed".  This time,  
							
							... 
							
							
							
							it's a reader bug of not inserting enough annotations for reader
macro forms. 
							
						 
						
							2008-05-05 03:52:08 -04:00  
				
					
						
							
							
								 
						
							
								c3b8e50b23 
								
							 
						 
						
							
							
								
								Fixed a minor exposure of annotation records.  
							
							
							
						 
						
							2008-05-03 06:49:36 -04:00  
				
					
						
							
							
								 
						
							
								3f9b567a5b 
								
							 
						 
						
							
							
								
								with-syntax now gives more informative error messages:  
							
							... 
							
							
							
							> (with-syntax ([(x y) #'(a 1)] [(q) #'(a b c)]) 12)
Unhandled exception
 Condition components:
   1. &assertion
   2. &who: with-syntax
   3. &message: "pattern does not match value"
   4. &irritants: ((q) #<syntax (a b c)>)
instead of the previous behavior:
> (with-syntax ([(x y) #'(a 1)] [(q) #'(a b c)]) 12)
Unhandled exception
 Condition components:
    1. &message: "invalid syntax"
    2. &syntax:
        form: ((a 1) (a b c))
        subform: #f 
							
						 
						
							2008-05-03 06:23:35 -04:00  
				
					
						
							
							
								 
						
							
								373edfc969 
								
							 
						 
						
							
							
								
								Fixes typos in (rnrs enumeration) error messages.  
							
							
							
						 
						
							2008-05-03 04:25:58 -04:00  
				
					
						
							
							
								 
						
							
								5f92e4b96d 
								
							 
						 
						
							
							
								
								Added current-directory parameter that gets/sets cwd.  
							
							
							
						 
						
							2008-05-03 02:39:49 -04:00  
				
					
						
							
							
								 
						
							
								d87ced74d1 
								
							 
						 
						
							
							
								
								cleaned up some stale primitive names.  
							
							
							
						 
						
							2008-05-01 18:13:11 -04:00  
				
					
						
							
							
								 
						
							
								db70f9751f 
								
							 
						 
						
							
							
								
								Made all unimplemented procedures raise errors when called.  
							
							
							
						 
						
							2008-05-01 17:52:52 -04:00  
				
					
						
							
							
								 
						
							
								b56b0fbd85 
								
							 
						 
						
							
							
								
								fixed a problem causing free-id=? to intern unbound identifiers  
							
							... 
							
							
							
							into the interaction environment. 
							
						 
						
							2008-05-01 15:04:43 -04:00  
				
					
						
							
							
								 
						
							
								d49aed209a 
								
							 
						 
						
							
							
								
								Added (interaction-environment).  
							
							
							
						 
						
							2008-05-01 06:02:36 -04:00  
				
					
						
							
							
								 
						
							
								e7386cd7d7 
								
							 
						 
						
							
							
								
								Major changes to the interactive repl:  
							
							... 
							
							
							
							- We can now redefine imported identifiers.
- We can now use let-syntax, letrec-syntax, and modules at
  top-level.
Hand-wavey Repl Semantics:
- Imported identifiers mean what they meant previously.  In
  particular, you cannot set! imported identifiers.
- An imported identifier may be redefined using define.  Once
  something is defined at the top-level, a specific location for it
  is created, and all definitions, references, and set!s to that
  variable go through the top-level location.
- Re-importing an identifier shadows the top-level location.
- Redefining re-exposes the top-level location.
- and do on.
- A reference to an unbound variable also fabricates a top-level
  location for that variable.
Let's see how this goes. 
							
						 
						
							2008-05-01 04:21:07 -04:00  
				
					
						
							
							
								 
						
							
								1389f239fe 
								
							 
						 
						
							
							
								
								Added process-nonblocking which is like process but returns  
							
							... 
							
							
							
							nonblocking ports. 
							
						 
						
							2008-04-30 22:55:59 -04:00  
				
					
						
							
							
								 
						
							
								f69e82e6c5 
								
							 
						 
						
							
							
								
								Added with-output-to-port:  
							
							... 
							
							
							
							> (let-values ([(p e) (open-string-output-port)])
    (with-output-to-port p (lambda () (printf "Hello\n")))
    (e))
"Hello\n" 
							
						 
						
							2008-04-29 00:20:29 -04:00  
				
					
						
							
							
								 
						
							
								d8cd4f0acf 
								
							 
						 
						
							
							
								
								Added engine-handler parameter and a ($swap-engine-counter! <neg-fx>)  
							
							... 
							
							
							
							to (ikarus system $interrupts). 
							
						 
						
							2008-04-29 00:10:49 -04:00  
				
					
						
							
							
								 
						
							
								b97b568e36 
								
							 
						 
						
							
							
								
								Reader now explicitly checks for valid unicode range when reading  
							
							... 
							
							
							
							#\xHHHH  "\xHHHH;" and foo\xHHHH;bar sequences. 
							
						 
						
							2008-04-28 15:01:45 -04:00  
				
					
						
							
							
								 
						
							
								89def78c3c 
								
							 
						 
						
							
							
								
								Fixed the definition of identifier? and id? in expander so that only  
							
							... 
							
							
							
							top-make-wrapped (possibly annotated) symbols are identifiers.  It
used to be that symbols were considered identifiers by the previous
definition. 
							
						 
						
							2008-04-28 14:01:49 -04:00  
				
					
						
							
							
								 
						
							
								3ce6d037e4 
								
							 
						 
						
							
							
								
								Fixed a bug in module imports where some marks were missing in action.  
							
							... 
							
							
							
							(Note from Kent, extracted from chez scheme release notes, follows)
This always worked:
(let ()
  (define-syntax from
    (syntax-rules ()
      [(_ m v) (let () (import m) v)]))
  (module a (x) (define x 'x-of-a))
  (from a x))
Didn't work before this change:
(let ()
  (define-syntax x-from-a
    (syntax-rules ()
      [(_) (let () (import a) x)]))
  (module a (x) (define x 'x-of-a))
  (x-from-a)) 
							
						 
						
							2008-04-19 17:55:30 -04:00