Commit Graph

32 Commits

Author SHA1 Message Date
Abdulaziz Ghuloum 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
Abdulaziz Ghuloum 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
Abdulaziz Ghuloum 81db526510 Fixed all warnings while compiling with -Wall 2008-06-04 00:54:53 -07:00
Abdulaziz Ghuloum 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
Abdulaziz Ghuloum 5f92e4b96d Added current-directory parameter that gets/sets cwd. 2008-05-03 02:39:49 -04:00
Abdulaziz Ghuloum 25344fa1d0 Added nanosleep as per bug 210678. 2008-04-11 05:36:54 -04:00
Abdulaziz Ghuloum 50888bef94 Fixes issues/warnings in bug 193327. 2008-03-15 21:06:47 -04:00
Abdulaziz Ghuloum f3c92c9473 Fixes bug 188159: delete-file not recognizing "file doesn't exist"
error, and it's not using &i/o-filename
2008-02-03 17:11:53 -05:00
Abdulaziz Ghuloum f6e5e4d5b4 Added -m32 to CFLAGS/LDFLAGS, updated copyright dates and version no. 2008-01-29 00:34:34 -05:00
Abdulaziz Ghuloum 2dc4542148 Reimplemented the guardians collector which was yellowing out since
the last update to the GC.  All tests now run without a glitch.
2008-01-12 17:32:43 -05:00
Abdulaziz Ghuloum fbebc96bfa Fixed the ``bytes allocated off by n problem''. 2008-01-07 21:37:41 -05:00
Abdulaziz Ghuloum 755beeb7d7 uuid and gensym were not generating pretty unique strings. fixed. 2008-01-04 05:47:18 -05:00
Abdulaziz Ghuloum 341e53a36d 64-bit fasl files can now be produced and read. 2008-01-03 02:07:17 -05:00
Abdulaziz Ghuloum 66e9cd6415 ikarus now compiles cleanly (but still unrunnable) in 64-bit mode. 2008-01-01 21:42:52 -05:00
Abdulaziz Ghuloum e0909d76fe changed type of ikptr to unsigned int now and removed ikint. 2008-01-01 21:08:07 -05:00
Abdulaziz Ghuloum 15ea12f915 cleanup of the C files to make all ikptr->int casts ikptr->long int 2008-01-01 04:24:36 -05:00
Abdulaziz Ghuloum 5d33921c9e changed type of ikp from unsigned char* to char* 2007-12-23 13:37:48 -05:00
Abdulaziz Ghuloum d162c1cc25 moved definition of HEAPSIZE to ikarus-data.h 2007-12-20 03:51:43 -05:00
Abdulaziz Ghuloum 6eb6bf750d Added a (process "cmd" "args" ...) procedure that execs cmd, passing
args to it, and returns 4 values: 
* the process's pid
* the process's standard-input-port  (for writing)
* the process's standard-output-port (for reading)
* the process's standard-error-port  (for reading)
See lab/process-example.ss for a sample usage.
2007-12-19 22:46:07 -05:00
Abdulaziz Ghuloum 356a809970 the exit status due to calling (exit n) is
: n            if n is a fixnum
  : EXIT_FAILURE otherwise
2007-12-18 05:41:39 -05:00
Abdulaziz Ghuloum af020f909b slight change to implementation of time-gmt-offset so that the
gmt_off field of the tm struct is not used (not available in
cygwin).
2007-12-11 19:32:34 -05:00
Abdulaziz Ghuloum 0d79bcd42c removed some unused procedures from ikarus-runtime.c 2007-12-10 12:03:25 -05:00
Abdulaziz Ghuloum 0e38534d2e New IO layer is installed. Still buggy in some area but can be used
for bootstrapping at least.
2007-12-10 07:28:03 -05:00
Abdulaziz Ghuloum 1d5c069273 Fixes bug 175057: Added time-gmt-offset procedure that takes a time
object and returns the offset from gmt in seconds.
2007-12-09 07:20:49 -05:00
Abdulaziz Ghuloum 553c986253 Added current-time, time?, and time-seconds. 2007-12-05 02:35:14 -05:00
Abdulaziz Ghuloum 3056d26a9d Moved implementation of safe make-vector to foreign-call. 2007-12-01 05:38:09 -05:00
Abdulaziz Ghuloum 25555d7ff6 Added getenv, which takes a string and returns a string from the "unix"
environment.  
Example:
  (getenv "HOME") => "/Users/aghuloum"
  (getenv "FOO")  => ""
2007-11-19 12:57:50 -05:00
Abdulaziz Ghuloum 3b4d3097a1 Fixes bug 163540: allocation in bignum arithmetic does not garbage collect. 2007-11-18 10:37:13 -05:00
Abdulaziz Ghuloum 1afade6d43 * renamed ik_alloc to ik_unsafe_alloc since it was unsafe to call it
in general (it did not collect on heap overflow).
2007-11-18 09:12:00 -05:00
Abdulaziz Ghuloum 6f576dc224 * Added license stubs to all *.ss and *.[ch] files. 2007-10-25 16:27:34 -04:00
Abdulaziz Ghuloum 30a0a9458b * fixed a problem with building ikarus.boot on cygwin.
* fixed a couple of typos in ikarus-runtime.c and ikarus-winmmap.c
2007-10-18 11:48:11 -04:00
Abdulaziz Ghuloum d59c2b304b major restructuring to support autotools
added:
  Makefile
  Makefile.am
  Makefile.in
  aclocal.m4
  config.guess
  config.sub
  configure
  configure.ac
  depcomp
  install-sh
  missing
  mkinstalldirs
  src/Makefile.am
  src/Makefile.in
  src/scheme/
renamed:
  bin/ikarus-collect.c => src/ikarus-collect.c
  bin/ikarus-data.h => src/ikarus-data.h
  bin/ikarus-enter.s => src/ikarus-enter.s
  bin/ikarus-exec.c => src/ikarus-exec.c
  bin/ikarus-fasl.c => src/ikarus-fasl.c
  bin/ikarus-flonums.c => src/ikarus-flonums.c
  bin/ikarus-main.c => src/ikarus-main.c
  bin/ikarus-numerics.c => src/ikarus-numerics.c
  bin/ikarus-print.c => src/ikarus-print.c
  bin/ikarus-runtime.c => src/ikarus-runtime.c
  bin/ikarus-symbol-table.c => src/ikarus-symbol-table.c
  bin/ikarus-verify-integrity.c => src/ikarus-verify-integrity.c
  bin/ikarus-weak-pairs.c => src/ikarus-weak-pairs.c
  bin/ikarus-winmmap.c => src/ikarus-winmmap.c
  bin/ikarus-winmmap.h => src/ikarus-winmmap.h
  src/asm-tests.ss => src/scheme/asm-tests.ss
  src/dotests.ss => src/scheme/dotests.ss
  src/ikarus => src/scheme/ikarus
  src/ikarus.apply.ss => src/scheme/ikarus.apply.ss
  src/ikarus.bytevectors.ss => src/scheme/ikarus.bytevectors.ss
  src/ikarus.cafe.ss => src/scheme/ikarus.cafe.ss
  src/ikarus.chars.ss => src/scheme/ikarus.chars.ss
  src/ikarus.code-objects.ss => src/scheme/ikarus.code-objects.ss
  src/ikarus.codecs.ss => src/scheme/ikarus.codecs.ss
  src/ikarus.collect.ss => src/scheme/ikarus.collect.ss
  src/ikarus.command-line.ss => src/scheme/ikarus.command-line.ss
  src/ikarus.compiler.altcogen.ss => src/scheme/ikarus.compiler.altcogen.ss
  src/ikarus.compiler.ss => src/scheme/ikarus.compiler.ss
  src/ikarus.control.ss => src/scheme/ikarus.control.ss
  src/ikarus.date-string.ss => src/scheme/ikarus.date-string.ss
  src/ikarus.fasl.ss => src/scheme/ikarus.fasl.ss
  src/ikarus.fasl.write.ss => src/scheme/ikarus.fasl.write.ss
  src/ikarus.fixnums.ss => src/scheme/ikarus.fixnums.ss
  src/ikarus.guardians.ss => src/scheme/ikarus.guardians.ss
  src/ikarus.handlers.ss => src/scheme/ikarus.handlers.ss
  src/ikarus.hash-tables.ss => src/scheme/ikarus.hash-tables.ss
  src/ikarus.intel-assembler.ss => src/scheme/ikarus.intel-assembler.ss
  src/ikarus.io-ports.ss => src/scheme/ikarus.io-ports.ss
  src/ikarus.io-primitives.ss => src/scheme/ikarus.io-primitives.ss
  src/ikarus.io-primitives.unsafe.ss => src/scheme/ikarus.io-primitives.unsafe.ss
  src/ikarus.io.input-files.ss => src/scheme/ikarus.io.input-files.ss
  src/ikarus.io.input-strings.ss => src/scheme/ikarus.io.input-strings.ss
  src/ikarus.io.output-files.ss => src/scheme/ikarus.io.output-files.ss
  src/ikarus.io.output-strings.ss => src/scheme/ikarus.io.output-strings.ss
  src/ikarus.lists.ss => src/scheme/ikarus.lists.ss
  src/ikarus.load.ss => src/scheme/ikarus.load.ss
  src/ikarus.main.ss => src/scheme/ikarus.main.ss
  src/ikarus.multiple-values.ss => src/scheme/ikarus.multiple-values.ss
  src/ikarus.numerics.ss => src/scheme/ikarus.numerics.ss
  src/ikarus.pairs.ss => src/scheme/ikarus.pairs.ss
  src/ikarus.posix.ss => src/scheme/ikarus.posix.ss
  src/ikarus.predicates.ss => src/scheme/ikarus.predicates.ss
  src/ikarus.pretty-print.ss => src/scheme/ikarus.pretty-print.ss
  src/ikarus.promises.ss => src/scheme/ikarus.promises.ss
  src/ikarus.reader.ss => src/scheme/ikarus.reader.ss
  src/ikarus.records.procedural.ss => src/scheme/ikarus.records.procedural.ss
  src/ikarus.singular-objects.ss => src/scheme/ikarus.singular-objects.ss
  src/ikarus.sort.ss => src/scheme/ikarus.sort.ss
  src/ikarus.strings.ss => src/scheme/ikarus.strings.ss
  src/ikarus.structs.ss => src/scheme/ikarus.structs.ss
  src/ikarus.symbols.ss => src/scheme/ikarus.symbols.ss
  src/ikarus.timer.ss => src/scheme/ikarus.timer.ss
  src/ikarus.trace.ss => src/scheme/ikarus.trace.ss
  src/ikarus.transcoders.ss => src/scheme/ikarus.transcoders.ss
  src/ikarus.unicode-data.ss => src/scheme/ikarus.unicode-data.ss
  src/ikarus.vectors.ss => src/scheme/ikarus.vectors.ss
  src/ikarus.writer.ss => src/scheme/ikarus.writer.ss
  src/makefile.ss => src/scheme/makefile.ss
  src/pass-specify-rep-primops.ss => src/scheme/pass-specify-rep-primops.ss
  src/pass-specify-rep.ss => src/scheme/pass-specify-rep.ss
  src/psyntax.builders.ss => src/scheme/psyntax.builders.ss
  src/psyntax.compat.ss => src/scheme/psyntax.compat.ss
  src/psyntax.config.ss => src/scheme/psyntax.config.ss
  src/psyntax.expander.ss => src/scheme/psyntax.expander.ss
  src/psyntax.internal.ss => src/scheme/psyntax.internal.ss
  src/psyntax.library-manager.ss => src/scheme/psyntax.library-manager.ss
  src/r6rs-records.ss => src/scheme/r6rs-records.ss
  src/rationalize.ss => src/scheme/rationalize.ss
  src/run-tests.ss => src/scheme/run-tests.ss
  src/set-operations.ss => src/scheme/set-operations.ss
  src/tests => src/scheme/tests
  src/tests.libraries.ss => src/scheme/tests.libraries.ss
  src/todo-r6rs.ss => src/scheme/todo-r6rs.ss
  src/unicode => src/scheme/unicode
modified:
  src/ikarus.boot
2007-10-17 19:59:37 -04:00