Abdulaziz Ghuloum
b35f5a9e1d
- trace-lambda and debug-call now interact properly and do not lose
...
tail calls.
2009-05-21 11:47:24 +03:00
Abdulaziz Ghuloum
beb3845e9d
- modified the ikarus debugger to use the same continuation frame
...
structure as the one the tracer uses.
2009-05-19 19:46:23 +03:00
Abdulaziz Ghuloum
a489f169ee
- added trace-let
2009-05-18 11:14:17 +03:00
Abdulaziz Ghuloum
ff25a484fb
- Added -d (--debug) flag that enables debugging at the repl, r6rs
...
scripts, and compiling dependencies. This is the first stab at
the debugger. It's SLOW!
2009-05-18 02:08:02 +03:00
Abdulaziz Ghuloum
39c8e8e23f
removed source annotation from primitive procedures (which were not
...
supposed to be there in the first place)
2009-05-14 09:09:58 +03:00
Abdulaziz Ghuloum
7002046c8e
- added a way of making annotated procedures without invoking the
...
compiler. (useful for a future project)
- refershed all boot files (because of added primitives)
- regenerated some autoconf files (to use newer version)
2009-05-11 01:35:38 +03:00
Abdulaziz Ghuloum
7e965758cf
Added memcpy (courtesy of Andreas Rottmann).
...
The `memcpy' procedure allows to copy memory from bytevectors to
unmanaged (malloc'ed) memory and vice-versa.
2009-04-30 12:35:49 +03:00
Abdulaziz Ghuloum
d63a9c1f51
Added open-directory-steam, directory-stream?, read-directory-stream,
...
and close-directory-stream as per bug 315804.
2009-04-09 12:29:50 +03:00
Abdulaziz Ghuloum
5c941ea62c
Out-of-tree building and testing now seems to work
2009-04-06 18:47:40 +03:00
Abdulaziz Ghuloum
b97cbf1688
Fixed environ. The procedure environ takes no arguments and returns
...
an association list where both keys and values and strings found in
the posix environment.
2009-04-06 09:59:07 +03:00
Abdulaziz Ghuloum
2adc9cb85d
Applied patch for "make-hard-link". Thanks to Andreas Rottmann.
2009-01-03 20:36:53 -05:00
Abdulaziz Ghuloum
264156f305
added an apropos command
2008-12-27 13:13:45 -05:00
Abdulaziz Ghuloum
ce4dc64e0d
made public source-position conditions and load-r6rs-script.
2008-12-27 00:36:13 -05:00
Abdulaziz Ghuloum
2be7d93637
- Added (syntax-transpose syntax-object base-id new-id-object).
...
It returns syntax-object wrapped with the marks and substitutions
that have been added to new-id since its introduction as base-id.
The new-id and base-id should be free-identifier=? and new-id
should have the same (or more) marks as base-id.
2008-12-25 16:33:50 -05:00
Abdulaziz Ghuloum
4918b0e965
added setenv and unsetenv to (ikarus).
2008-12-23 20:58:46 -05:00
Abdulaziz Ghuloum
026fd6f446
added tests to ensure that symbols are gcable.
2008-12-10 03:18:33 -05:00
Abdulaziz Ghuloum
f7d1d6b6a3
unused (garbage) symbols can be reclaimed now
2008-12-06 12:40:18 -05:00
Abdulaziz Ghuloum
3049d3d22e
Added errno.
2008-11-25 22:52:26 -05:00
Abdulaziz Ghuloum
6922b0d9c2
added pointer-ref-{unsigned-,}long-long
2008-11-21 05:56:51 -05:00
Abdulaziz Ghuloum
ab6f0567a1
removed some bindings from some base libraries which should not have
...
exported them.
2008-11-15 11:31:10 -05:00
Abdulaziz Ghuloum
fc80aaae37
- added the ability to inject arbitrary compile time values using:
...
(define-syntax foo (make-compile-time-value <expr>))
The value can be retrieved using curried macro transformers.
E.g.,
(let-syntax ([idval
(lambda (x)
(syntax-case x ()
[(_ id)
(lambda (rho)
(with-syntax ([val (datum->syntax #'here (rho #'id))])
#''val))]))])
(let-syntax ([ctval (make-compile-time-value 'foo)])
(list (idval ctval) (idval others))))
;=> (foo #f)
2008-11-14 04:32:08 -05:00
Abdulaziz Ghuloum
dc8d4b33ad
- implemented $unintern-gensym
2008-11-12 18:03:14 -05:00
Abdulaziz Ghuloum
c7d68432e3
- implemented uninstall-library.
2008-11-11 14:47:35 -05:00
Abdulaziz Ghuloum
766eb7f539
- fixed equal? to terminate on all inputs as mandated by R6RS.
...
(thanks to Michael Adams and Kent Dybvig for making the code
available in its entirety in their ICFP 2008 paper)
2008-11-11 00:39:02 -05:00
Abdulaziz Ghuloum
25f40fefb0
Added the following file system primitives
...
- file-readable? path -> boolean
- file-writable? path -> boolean
- file-executable? path -> boolean
- file-size path -> integer
- rename-file source dest -> void
(thanks to Andreas Rottmann)
2008-11-10 23:36:11 -05:00
Abdulaziz Ghuloum
069bd683cd
- added file-mtime
...
- Ikarus fasl files and source files are not compared using
(< (file-mtime ikfasl) (file-mtime filename))
instead of
(<= (file-ctime ikfasl) (file-ctime filename))
2008-11-01 07:28:08 -04:00
Abdulaziz Ghuloum
359aa1d2c9
- fixed errors where multiple internal definitions were silently
...
allowed if typed in the repl.
- added some tests for the interaction environment.
2008-10-31 16:22:25 -04:00
Abdulaziz Ghuloum
9a3666d3ea
- completed all unicode primitives (thanks to Kent Dybvig)
2008-10-28 19:59:40 -04:00
Abdulaziz Ghuloum
1be0f2af6e
- changed foreign accessors and mutator names to have '-c-' in their
...
names as suggested by Ken Dickey.
2008-10-12 02:06:25 -04:00
Abdulaziz Ghuloum
811c94361b
- fixed bugs in pass-specify-rep where some (known) types were
...
unhandled causing compile time errors.
- fixed some bootstrapping issues with pointer? (which was moved out
of the (ikarus) library)
- freshened up the bootfiles for both 32- and 64-bit version of
ikarus.
2008-10-12 01:15:20 -04:00
Abdulaziz Ghuloum
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
Abdulaziz Ghuloum
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
Abdulaziz Ghuloum
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
Abdulaziz Ghuloum
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
Abdulaziz Ghuloum
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
Abdulaziz Ghuloum
e05e84d1c2
Added dlopen, dlclose, dlerror, dlsym, malloc, and free to
...
(ikarus system $foreign).
2008-09-12 14:22:57 -07:00
Abdulaziz Ghuloum
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
Abdulaziz Ghuloum
afc9bff07f
- added experimental pointer manipulation primitives.
2008-09-06 06:01:39 -07:00
Abdulaziz Ghuloum
b9085e15da
- more work on trig functions
...
- mkstx now checks that double wraps are not merged incorrectly
2008-08-12 01:17:04 -07:00
Abdulaziz Ghuloum
fdca9ed33f
command line arguments are now interpreted as utf8 strings.
2008-08-10 11:33:10 -07:00
Abdulaziz Ghuloum
c5930ac113
exported enum-set?.
2008-08-08 08:29:18 -07:00
Abdulaziz Ghuloum
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
Abdulaziz Ghuloum
39e84d1395
simplified parameterize macro.
2008-08-02 10:11:04 -07:00
Abdulaziz Ghuloum
959082d12d
assert now gives source information when available.
2008-07-29 11:04:52 -07:00
Abdulaziz Ghuloum
3b80d4f321
fixed a bug in quotient and div when given (least-fixnum) and -1.
2008-07-26 12:28:51 -07:00
Abdulaziz Ghuloum
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
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
c3b12a22e8
the repl now resets on receiving &interrupted conditions.
2008-07-12 20:05:45 -07:00
Abdulaziz Ghuloum
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
Abdulaziz Ghuloum
579b823f44
WIP on tag analysis, annotations, and utilization.
2008-07-06 23:48:16 -07:00