Doug Coleman
671f19d70f
Remove all non-core uses of (scan-token)
...
Add scan-datum
Add scan-number
Document more words
Fixes #225 .
2011-10-02 12:00:08 -07:00
Doug Coleman
76580da5d5
Refactor the lexer/parser to expose friendlier words for scanning tokens. The preferred top-level words now throw an exception on EOF.
...
CREATE -> scan-new
CREATE-CLASS -> scan-new-class
CREATE-WORD -> scan-new-word
CREATE-GENERIC -> scan-new-generic
scan -> (scan-token)
scan-token now throws on eof
(scan-word) returns word/number/f
scan-word now throws on eof
scan-word-name expects a non-number
Fixes #183 .
Fixes #209 .
2011-09-29 11:28:28 -07:00
John Benediktsson
f9986bb446
alien.data: need to mark ">c-array" inline.
2011-09-26 13:34:42 -07:00
John Benediktsson
4f42c72012
specialized-arrays: performed some cleanup.
...
Specifically,
• Created >c-array to be replacement for >T-array.
• Created cast-array to be generic replacement for all T-array-cast words.
• Created c-array@ to be generic replacement for T-array@ words.
• Replaced usages of <T-array> with T <c-array>
• Replaced usages of <direct-T-array> with T <c-direct-array>
• Replaced usages of >T-array with T >c-array
• Replaced usages of T-array-cast with T cast-array
• Replaced usages of malloc-T-array with T malloc-array.
• Removed malloc-T-array.
• Removed T-array-cast.
• Removed T-array@.
• Removed >T-array.
I also added (but didn't change any code to use):
• T c-array-type, returns T-array
• T c-array?, returns T-array?
• c-array{ T ... }, returns T-array{ ... }
Bootstraps just find on Mac OS X. Also `load-all test-all` works for me.
2011-09-26 11:37:51 -07:00
Joe Groff
81b12adcad
math.blas, alien.fortran: move to unmaintained cuz I'm getting too old for this shit. closes #171
2011-09-24 20:59:21 -07:00
John Benediktsson
f6b6e17b00
alien.data: removing unused (and broken?) "require-c-array".
2011-09-23 13:15:09 -07:00
Doug Coleman
fa52349f9c
Add STRUCT: syntax to alien.endian. Test and document the changes.
2011-09-22 11:27:53 -05:00
John Benediktsson
216f2332be
alien: fix docs (add space between sentences).
2011-09-21 19:33:23 -07:00
Doug Coleman
4220f9dc0c
Add c-types in alien.endian for making endian-aware STRUCTs.
2011-09-21 16:04:17 -05:00
Slava Pestov
acde29b7c7
alien.libraries: add platforms.txt
2011-09-13 20:18:02 -07:00
Joe Groff
218cdcbe0b
alien.libraries.unix: break circular dependency on alien.syntax
2011-09-13 09:49:53 -07:00
Joe Groff
5703e8d7a1
alien.libraries, compiler.cfg.builder.alien: if `dlopen` fails during `<library>`, call `dlerror` and store the error message in the library object; put the dlerror message in the linkage-error when a word from the library is compiled
2011-09-12 23:25:59 -07:00
Joe Groff
b6e0f0180b
alien.libraries, compiler.cfg.builder.alien: include the result of dlerror/GetLastError in the linkage-error for missing symbols
2011-09-12 23:25:59 -07:00
Joe Groff
d510723d8e
alien.c-types: fill out the higher-order stack effect of if-void
2011-09-03 11:10:08 -07:00
Joe Groff
a820c1091d
alien: merge enum improvements from Blei/gtk-image-loader
2011-08-27 13:48:30 -07:00
Erik Charlebois
e28e48beea
Create a setter for C-GLOBAL words
2011-05-23 23:36:14 -04:00
Erik Charlebois
64252dbdbc
32 and 64 bit Linux PPC support
2011-05-23 23:36:14 -04:00
Slava Pestov
59a708638c
alien.c-types: add summary and docs for no-c-type error
2011-04-03 22:33:51 -07:00
Slava Pestov
b0732bcb22
Fix unit test failures caused by alien.data change
2010-12-25 22:34:12 -08:00
Slava Pestov
75560699ea
Move <ref>, deref and little-endian? from alien.c-types to alien.data, remove <c-object>
2010-12-25 16:55:36 -08:00
Slava Pestov
dd0d9fbc10
alien.fortran: cleanup
2010-12-01 03:00:00 -08:00
Joe Groff
2dbfc7df33
alien.fortran: fix stack effect of SUBROUTINE: and FUNCTION: words to include out parameters
2010-12-01 07:05:32 +05:30
Slava Pestov
8be8c7f213
Merge branch 'master' of git://factorcode.org/git/factor
2010-10-31 20:26:29 -05:00
Slava Pestov
b03a16ef4d
alien.libraries: add-library won't close and re-open the library if nothing changed. This fixes a crash on Windows when reloading the windows vocab
2010-10-25 23:39:15 -05:00
Slava Pestov
e139a7a02d
Clean up alien.c-types changes a little
2010-10-25 21:09:08 -07:00
Doug Coleman
67c37591ca
Remove <uint> *uint and friends. Hopefully remove the last usages of these words
2010-10-25 15:54:42 -05:00
Doug Coleman
4ca9bd0bba
Remove usages of <void*> and *void*
2010-10-25 13:22:50 -05:00
Doug Coleman
1f57dc326e
Remove many uses of <int> and *int etc
2010-10-25 12:49:12 -05:00
Slava Pestov
a400b39fa1
alien.enums: enum>number didn't work in deployed images, add a test which deploys and runs benchmark.ui-panes to catch this in the future
2010-10-17 21:02:42 -04:00
Slava Pestov
559b1ae876
alien.c-types: make behavior of int/uint/long/ulong/longlong/ulonglong struct field setters consistent across 32-bit and 64-bit when supplied with floats (reported by Anton Gorenko)
2010-10-14 22:29:48 -07:00
Slava Pestov
fbbaef70c4
Remove stream-peek and stream-peek1, re-implement dns vocab to not need this abstraction
2010-10-08 18:55:13 -07:00
Doug Coleman
d462355035
Implement and document stream-peek
2010-10-08 06:34:19 -07:00
Doug Coleman
046efe7798
Update alien.enums docs
2010-10-01 01:41:24 -05:00
Doug Coleman
3ac8847a15
Fix typo ohno
2010-09-29 17:29:28 -05:00
Doug Coleman
3cdc9ba650
Use create-class-in to get redefinition errors with enums
2010-09-29 16:24:25 -05:00
Doug Coleman
56c8d47d58
Make alien.enums create singletons so I can dispatch on them. Clean up the code a bit.
2010-09-28 15:15:55 -05:00
Slava Pestov
f9c9814e57
alien.data: remove deprecated malloc-object word
2010-09-20 21:36:20 -07:00
Slava Pestov
d450d12b2b
classes.struct: fields with a type that's an array of pointers (eg int*[3]) now work
2010-08-15 02:44:21 -07:00
Slava Pestov
25ea734a8e
alien.parser: make int[3]* parse, make int[3][4 not parse
2010-08-15 02:37:17 -07:00
Slava Pestov
e8152e9098
alien.parser: array types where the base type was a pointer didn't parse (reported by Dmitry Shubin)
2010-08-15 02:32:12 -07:00
Slava Pestov
cc71799833
alien.prettyprint: fix unit test snafu
2010-08-11 21:52:37 -07:00
Joe Groff
04075be646
alien.c-types: classify typedefs of array/string types as typedef-words so they prettyprint correctly
2010-08-11 10:03:19 -07:00
Slava Pestov
a5f59e9cd6
alien.prettyprint: fix test failure
2010-07-29 21:09:05 -04:00
Slava Pestov
6142bd7335
alien.syntax: FUNCTION: and FUNCTION-ALIAS: now define inline words
2010-07-28 03:05:14 -04:00
Slava Pestov
b23aac1beb
compiler.cfg: open-code parameter boxing and unboxing for certain C types
2010-07-19 10:25:13 -04:00
Slava Pestov
446ee6896d
alien.data: remove second quotation parameter from with-out-parameters, now all values are copied properly and calling 'clone' on structs in this quotation is not necessary
2010-07-16 17:32:05 -04:00
Slava Pestov
5b31cbcb3c
alien.data: document with-scoped-allocation and with-out-parameters, and add initial: syntax
2010-07-16 17:13:38 -04:00
Slava Pestov
8a0525e5ce
Add a scan-token word which is like scan, except throws an error on EOF; document scan-object word; mention that scan-token/scan-object are preferred over scan/scan-word
2010-07-06 16:20:08 -04:00
Slava Pestov
4c4a86ee72
alien.data: fix unit test failure
2010-06-11 15:38:57 -04:00
Joe Groff
c8ea7ed0c7
alien.data: make binary-zero? public and move it from classes.struct.private
2010-06-10 17:05:43 -07:00
Slava Pestov
be1b5e6627
alien.prettyprint: fix wrapping when prettyprinting pointer:
2010-06-02 03:11:46 -04:00
Slava Pestov
adecd623d0
alien.prettyprint: fix prettyprinting of array types and CALLBACK: (reported by Anton Gorenko)
2010-05-30 16:21:43 -04:00
Slava Pestov
ba7cb61133
Stack allocation improvements
...
- New with-out-parameters combinator
- Inhibit tail call optimization in frames with local allocation, to ensure that passing a stack allocated value to the last word in the quotation works
- local allocations are now aligned properly
- spill slots are now aligned properly aligned in frames which have parameter and local allocation areas
2010-05-22 02:37:00 -04:00
Slava Pestov
86358b1dc3
alien.data: add with-scoped-allocation combinator for stack-allocating C data
2010-05-19 00:33:36 -04:00
Slava Pestov
4d66f52777
alien.c-types: make a couple of words private
2010-05-18 22:34:42 -04:00
Slava Pestov
1834241e5a
alien.libraries, stack-checker.alien: check user inputs more carefully to ensure that invalid ABI descriptors don't slip through and break random stuff (reported by prunedtree)
2010-05-18 18:46:31 -04:00
Slava Pestov
ea726f5680
Move remaining sequence operations from generalizations to sequences.generalizations where they belong
2010-05-18 18:36:47 -04:00
Slava Pestov
5b48cd2a63
FFI rewrite part 5: return value boxing and callback parameter boxing now uses vregs; simplify return value unboxing
2010-05-16 03:43:23 -04:00
Slava Pestov
0cde5c8fb5
Eliminate compiler.alien
2010-05-11 23:24:47 -04:00
Slava Pestov
ee0640f176
Move flatten-c-type to death row so that it can be executed in part 5
2010-05-11 22:26:31 -04:00
Slava Pestov
c211c3e84e
FFI rewrite part 1: split up ##alien-invoke and friends into smaller instructions
2010-05-09 21:36:52 -04:00
Slava Pestov
627295f094
Language change: tuple slot setter words with stack effect ( value object -- ) are now named FOO<< instead of (>>FOO)
2010-05-06 17:21:02 -04:00
Slava Pestov
e763c74096
More FFI cleanups
2010-05-05 01:13:45 -04:00
Slava Pestov
de8e0ccd5c
alien.c-types: cleanup
2010-05-04 19:33:55 -04:00
Joe Groff
e5c65b2204
use word-props instead of singletons for enum>number conversion so there's not a big fat generic making the image buy another plane ticket
2010-04-21 22:22:06 -07:00
Joe Groff
4c7ab0e9a3
doll up ENUM: docs
2010-04-21 21:33:04 -07:00
Doug Coleman
339952697f
Fix alien.enum docs
2010-04-21 21:32:33 -05:00
Joe Groff
f9668be814
alien.enums: make enum>number foldable so it optimizes constant enums to constant ints, make number>enum a macro so it doesn't use c-type metadata at runtime
2010-04-20 17:05:14 -07:00
Erik Charlebois
fdeb305a3c
Use generic word for enum>number. Tests and documentations.
2010-04-19 20:08:40 -07:00
Erik Charlebois
baab8c060d
Remove ENUM: f and replace uses with CONSTANTs.
...
Fix bootstrap and load-all errors from enum classes.
2010-04-19 20:08:40 -07:00
Joe Groff
52903ee597
prettyprint ENUM: definitions
2010-04-19 20:07:18 -07:00
Joe Groff
d3f770d545
add alien.enums vocab with enum-c-types that convert between symbols and integer values in the FFI. update ENUM: to define symbolic enums, and take an optional base type
2010-04-19 20:07:18 -07:00
Joe Groff
e730d3b6d5
alien.c-types: use CONSULT: to define c-type-protocol methods on c-type-name
2010-04-19 20:07:17 -07:00
Joe Groff
6e55a3b8f5
alien.parser, alien.syntax: send ENUM: body to parse-enum
2010-04-19 20:07:17 -07:00
Joe Groff
f394cb4fdc
alien.parser: have define-enum handle the case when the enum name is f
2010-04-19 20:07:17 -07:00
Joe Groff
8c915e05f7
alien.parser, alien.syntax: refactor ENUM: to separate parsing from definition
2010-04-19 20:07:17 -07:00
Joe Groff
4bc915d526
C-ENUM: -> ENUM:
2010-04-19 20:07:16 -07:00
Slava Pestov
2eda6fc6aa
io.encodings: add a fast-path for ascii, utf8 and 8-bit encodings when string only contains ASCII characters
2010-04-19 01:14:00 -05:00
Joe Groff
37784cd356
rearrange stuff in alien.arrays and alien.data to eliminate libc dependency from alien.arrays, and by extension, alien.syntax
2010-04-14 21:40:29 -07:00
Joe Groff
54015782f3
document FUNCTION-ALIAS:
2010-04-14 16:14:33 -07:00
Joe Groff
d20bff5615
prettyprint FUNCTION-ALIAS: definitions
2010-04-14 12:40:10 -07:00
Joe Groff
e5c1a82643
alien.syntax: FUNCTION-ALIAS: syntax to define a C function binding with a different Factor name
2010-04-14 12:06:45 -07:00
Slava Pestov
becb7c78b7
Move non-parsing words out of alien.syntax, and use a symbol instead of a string variable to store the current library in alien.parser
2010-04-12 18:09:26 -05:00
Slava Pestov
2b4a55b53a
Merge branch 'master' of git://github.com/erikcharlebois/factor
2010-04-10 18:01:19 -07:00
Erik Charlebois
edc489f4c1
Change C-ENUM: to always take a type. Use f for anonymous enums. Update all uses.
2010-04-09 23:48:22 -07:00
Erik Charlebois
4b78fe690b
Extend C-ENUM: to allow specifying the constant vvalues like in C. Add C-TYPED-ENUM: to automatically typedef a type.
2010-04-06 02:46:23 -07:00
Joe Groff
2240520e2d
update some more doc examples using old abi strings
2010-04-02 23:16:53 -07:00
Joe Groff
ef884ef7f2
Merge branch 'master' into abi-symbols
2010-04-01 15:28:36 -07:00
Joe Groff
98d1e7d006
update alien.libraries docs to link cdecl/stdcall symbols
2010-03-31 19:57:04 -07:00
Joe Groff
f3dd625de6
"stdcall" -> stdcall
2010-03-31 19:29:04 -07:00
Joe Groff
65c3259761
"cdecl" -> cdecl
2010-03-31 19:20:35 -07:00
Slava Pestov
2b68f56c89
Document (free), move it out of libc.private and mention it in the "c-strings" help article (reported by Blei)
2010-03-30 17:32:51 -04:00
Slava Pestov
75d0f51b30
alien.debugger: fix USING: form
2010-03-17 19:35:12 +13:00
Slava Pestov
6ff0393e2f
debugger: Untangle some dodgy dependencies that were loading locals before prettyprint, resulting in locals.prettyprint not being loaded
2010-03-17 19:19:43 +13:00
Joe Groff
cd17a934ac
cut commas off of FUNCTION: parameter names in stack effects again
2010-02-28 19:29:53 -08:00
Joe Groff
078ca0fa58
alien.parser: refactor FUNCTION: parsing to read from the source incrementally. parse errors in FUNCTION: should now correspond to their location within the definition
2010-02-28 16:20:45 -08:00
Slava Pestov
17b095a524
Slices over specialized arrays can now be passed to C functions, written to binary output streams, and given to malloc-byte-array
2010-02-25 04:50:31 +13:00
Slava Pestov
af0ddd5985
Specialized arrays, structs and other objects responding to the >c-ptr / byte-length protocol can now be written to binary streams
2010-02-24 20:18:41 +13:00
Joe Groff
b45ec6397b
typo in alien.data docs
2010-02-23 12:20:47 -08:00
Joe Groff
1916b9269e
"pointer-c-type" word-prop hack is now unnecessary since all pointer types behave uniformly now
2010-02-23 12:07:55 -08:00
Joe Groff
db8b6baa2f
typo in alien.parser test
2010-02-23 11:59:53 -08:00
Joe Groff
71d169e420
fix typos in alien docs
2010-02-23 11:56:10 -08:00
Joe Groff
4cfa1a6c77
rename current string-mangling "char*" to "c-string". char* is now just a boring old pointer to char
2010-02-23 11:42:02 -08:00
Joe Groff
818bbb4984
update docs about pointer types
2010-02-23 11:03:48 -08:00
Joe Groff
00a7559d55
have TYPEDEF:, STRUCT: etc. throw an error if you try to define a c type name ending with asterisk
2010-02-23 10:16:18 -08:00
Joe Groff
75e2a5098e
if any typedef in the chain has a pointer-c-type, use it
2010-02-23 08:09:33 -08:00
Slava Pestov
7decccf8bb
Merge branch 'master' of git://factorcode.org/git/factor
2010-02-23 20:26:41 +13:00
Joe Groff
aef979b552
alien.fortran: update tests to reflect new pointer c-type objects
2010-02-22 21:58:18 -08:00
Erik Charlebois
aead6e7dd8
Revert change to make-callback-type cause Slava already fixed it in parse-arglist
2010-02-22 19:34:34 -08:00
Joe Groff
829351f2f2
don't box struct pointer values when they're null
2010-02-22 19:08:43 -08:00
Joe Groff
1bf37f01e5
alien.arrays/classes.struct: ensure specialized array types for struct array slots get instantiated at parse time
2010-02-22 12:21:29 -08:00
Joe Groff
4d2ded634b
alien.parser: properly generate return type name for FUNCTION: stack effects
2010-02-22 11:25:01 -08:00
Erik Charlebois
833372cd08
Merge alien/parser/parser.factor
2010-02-22 10:53:19 -08:00
Erik Charlebois
124982ce23
Fix CALLBACK: effect return type also not a string. Added accompanying unit test.
2010-02-22 10:48:21 -08:00
Joe Groff
31a0d98e02
Merge branch 'master' into new-alien-pointers
...
Conflicts:
basis/alien/c-types/c-types.factor
basis/stack-checker/dependencies/dependencies.factor
2010-02-22 10:32:59 -08:00
Slava Pestov
23a1f0ed8c
alien: some code cleanups and fixes
2010-02-23 01:28:56 +13:00
Slava Pestov
7578429692
alien.c-types: remove void? word
2010-02-22 21:31:41 +13:00
Joe Groff
338edac16c
Merge branch 'master' of git://factorcode.org/git/factor into new-alien-pointers
2010-02-21 23:14:08 -08:00
Joe Groff
0bc8e8f408
alien.arrays: typedef special char* symbol so it still works as expected
2010-02-21 23:11:59 -08:00
Slava Pestov
1986dc49e4
Merge branch 'master' of git://github.com/erikcharlebois/factor
2010-02-22 20:09:20 +13:00
Joe Groff
04cc3052b6
alien.prettyprint: pprint pointer objects as "type*" in c-type contexts
2010-02-21 21:32:34 -08:00
Joe Groff
5faa97e42c
alien.parser: favor parsing "foo*" as pointer-to-foo now
2010-02-21 21:06:00 -08:00
Joe Groff
d5bf6e55cd
more implementation of pointer c-types. make it so that { char* binary } acts like a real pointer to char instead of stringifying, and add byte* typedef for { char* binary }
2010-02-21 20:58:21 -08:00
Joe Groff
5955ba06df
use a "pointer" wrapper tuple to indicate pointer types instead of the current slipshod approach
2010-02-21 16:27:36 -08:00
Joe Groff
62e97c138a
ditch string c-types
2010-02-21 10:58:21 -08:00
Erik Charlebois
536ae3c648
Unit test checking the stack effects from FUNCTION:.
2010-02-20 21:15:47 -08:00
Erik Charlebois
b25e945c74
The return values in the stack effects of FUNCTION: words were c-types rather than strings. This was causing scaffold-help to fail on vocabularies with FUNCTION:.
2010-02-20 03:02:56 -08:00
Joe Groff
42089b6586
alien.libraries: add a "deploy-library" word that marks a library to have its dll deployed with applications that use it. add support to tools.deploy to find and copy deployed libraries into target bundle
2010-02-16 13:32:58 -08:00
Slava Pestov
a3b74d88c9
cpu.architecture: rep-length now works in deployed images
2010-02-11 18:11:47 +13:00
Slava Pestov
59193af701
alien.syntax: save source location for TYPEDEF:, raise error on redefinition
2010-02-05 20:52:20 +13:00
Joe Groff
1ee05e38fb
missed an alien.fortran test
2010-02-02 00:13:13 -08:00
Joe Groff
f1bbeec198
wrap alien.fortran c-type conversion tests in with-manifest
2010-02-01 22:03:51 -08:00
Joe Groff
9adfda095f
alien.fortran: convert fortran types to word c-types
2010-02-01 12:06:10 -08:00
Slava Pestov
892522f8bd
alien.c-types: ensure that long and ulong types are defined with define-primitive-type and not typedef
2010-01-23 00:15:08 +13:00
Slava Pestov
638fbb13b0
alien.c-types: clean up and fix for win64
2010-01-22 23:14:20 +13:00
Slava Pestov
1c10196c43
Rename kernel.private:getenv/setenv to special-object/set-special-object to mirror recent renaming on the VM side
2010-01-13 18:08:18 +13:00
Slava Pestov
e96404327e
Get optimizing compiler working without global register variables in VM
2009-12-22 15:42:49 +13:00
Slava Pestov
7c8d755c45
Fix bootstrap
2009-12-02 19:24:46 -05:00
Joe Groff
67cc1c01be
Merge branch 'master' into simd-cleanup
2009-11-26 16:14:46 -08:00
Joe Groff
66d0cafa94
fix buggy simd intrinsics
2009-11-26 13:28:40 -08:00
Slava Pestov
0612bc6177
Factor source files should not be executable
2009-11-21 17:50:43 -06:00
Slava Pestov
c55bdc0d34
alien.c-types: fix help lint
2009-11-19 23:22:08 -06:00
Slava Pestov
2c553bcc86
alien.c-types: make sure generated words reference C type words not strings
2009-11-19 19:34:58 -06:00
Slava Pestov
361c38d5a1
heap-size now has a partial-eval instead of being foldable, and the partial-eval adds a dependency on the C type word. Fixes problem where redefining a struct didn't update specialized array
2009-11-15 11:26:37 -06:00
Slava Pestov
e9a7191050
Fix struct field alignment on PowerPC
2009-11-10 19:34:14 -06:00
Slava Pestov
41e340f231
More PowerPC fixes
2009-11-10 17:26:34 -06:00
Slava Pestov
fba6ddbc22
Move platform-specific c-type initialization out of cpu.* vocabularies and into alien.c-types so that the vm vocabulary, which is loaded before cpu.*, will have correct struct offsets
2009-11-05 01:36:14 -06:00
Slava Pestov
c6b0a91f34
alien.c-types: use (byte-array) instead of <byte-array> in out parameter constructors
2009-11-05 01:08:58 -06:00
Joe Groff
3fbe722561
Merge branch 'master' of http://factorcode.org/git/factor
...
Conflicts:
basis/locals/locals.factor
basis/peg/peg.factor
extra/infix/infix.factor
2009-10-28 16:17:24 -05:00
Joe Groff
6e1bffb1c5
update existing code to use :> ( ) when possible
2009-10-28 16:11:33 -05:00
Doug Coleman
93de179c2f
over push -> suffix!, over push-all -> append!
2009-10-28 15:29:01 -05:00
Doug Coleman
bd13e018dd
memq? -> member-eq?, sorted-memq? -> sorted-member-eq?
2009-10-28 15:02:00 -05:00
Doug Coleman
7ce4b746e5
parsed -> suffix!, add append!
2009-10-28 13:38:27 -05:00
Slava Pestov
560b6f45cc
compiler, cpu.x86.32: clean up FFI implementation, in particular 32-bit x86-specific backend
2009-10-20 04:15:10 -05:00
Slava Pestov
5afce2cc9e
alien.c-types: c-type no longer calls parser at runtime, tools.deploy.shaker now strips out runtime specialized array code generation
2009-10-16 23:50:17 -05:00
Joe Groff
c8eddf89e6
hurr
2009-10-16 16:39:33 -05:00
Joe Groff
21b289e836
tweak parse-c-type so data-map can parse non-c-types
2009-10-16 16:10:09 -05:00
Joe Groff
a37bc4828f
change parse-c-type so that c-type[symbolic-constant] parses to { c-type symbolic-constant }
2009-10-16 12:27:16 -05:00
Slava Pestov
36d1cfd3e5
alien.libraries: fix dlsym docs
2009-10-15 22:08:16 -05:00
Slava Pestov
b88fde04d9
alien.syntax: add C-GLOBAL: for defining words to access global variables, and remove the gimpy one from core-text.utilities
2009-10-09 04:46:29 -05:00
Slava Pestov
18d4f030cd
alien.parser: fix behavior with restarts, reported by mnestic
2009-10-09 04:25:25 -05:00
Joe Groff
b150deeb11
refactor so that generalizations reuses the stub versions of nsequence, firstn, and n*quot needed by memoize
2009-10-08 12:55:52 -05:00
Joe Groff
3a1bb22618
delete malloc-file-contents 'cause it sucks and nobody likes it
2009-10-07 19:30:06 -05:00
Keith Lazuka
405e5d015b
docs: change $subsection to $subsections
2009-10-02 12:15:48 -04:00
Joe Groff
44f393771b
change CALLBACK: to use the ABI of the current LIBRARY: and get rid of STDCALL-CALLBACK:
2009-09-28 19:27:28 -05:00
Slava Pestov
4abfe06b51
Fixing various test failures caused by C type parser change, and clarify C type docs some more
2009-09-28 08:48:39 -05:00
Slava Pestov
7ee8144259
alien.parser: fix unit tests
2009-09-28 05:42:41 -05:00
Slava Pestov
530accdad9
io.mmap: fix obsolete tests and get code to inline better
2009-09-28 03:18:27 -05:00
Joe Groff
123f4fbc30
redefine C-TYPE: to forward declare opaque C types; make C type definition and redefinition a little more robust
2009-09-27 22:12:00 -05:00
Joe Groff
89045e3fd0
Merge branch 'master' into no-c-type-string
2009-09-27 18:47:02 -05:00
Joe Groff
20621bbbb6
add missing USING: to alien.c-types test
2009-09-27 18:18:13 -05:00
Joe Groff
232d1d319c
update alien.c-types tests to use c-type words
2009-09-27 17:41:18 -05:00
Joe Groff
4e68c43f3d
disable parsing of string c-types
2009-09-27 16:06:13 -05:00
Joe Groff
c3935b823f
oops, jumped the gun on one of the alien.parser tests there
2009-09-27 12:10:50 -05:00
Joe Groff
2bc687f0de
add some tests for parse-c-type
2009-09-27 12:03:23 -05:00
Joe Groff
449695c8fe
Merge branch 'master' of git://factorcode.org/git/factor
2009-09-26 23:15:09 -05:00
Joe Groff
5054c954be
add USING:s and rearrange definitions so macosx can compile without parsing c-type strings
2009-09-26 23:14:57 -05:00
Slava Pestov
77fa16c76f
alien: improve documentation
2009-09-26 21:28:11 -05:00
Slava Pestov
685c4143c9
Fix conflict
2009-09-26 21:27:38 -05:00
Joe Groff
2cf0f3e5d3
move alien.inline, alien.cxx, alien.marshall to unmaintained; nuke alien.structs
2009-09-26 20:37:42 -05:00
Slava Pestov
63bf76cc1e
alien.complex: fix tests
2009-09-24 12:59:56 -05:00
Slava Pestov
bbbb207dab
Some fixes and cleanups in math.vectors
...
- Tighten up type inference for operations on complex float arrays
- Fix v. to have correct behavior with complex numbers
- Rename v<< and v>> to vlshift and vrshift to avoid clashing with v>> accessor
2009-09-24 06:58:33 -05:00
Slava Pestov
7ea8832556
Tweaks to reduce deployed image size
2009-09-24 06:24:43 -05:00
Slava Pestov
dfc9fd071e
Add longlong-2, ulonglong-2, longlong-4, ulonglong-4 SIMD types, fix int-4 multiplication on SSE2
2009-09-23 20:23:25 -05:00
Slava Pestov
0f0bf667b5
Merge branch 'master' of git://factorcode.org/git/factor into integer-simd
2009-09-21 17:58:24 -05:00
Joe Groff
6ce8eba961
prettyprint CALLBACK: defs
2009-09-21 14:14:12 -05:00
Joe Groff
0ff319c409
docs for C type words
2009-09-21 13:39:55 -05:00
Joe Groff
55988828bf
update alien docs to talk about C types as words
2009-09-21 13:20:01 -05:00
Joe Groff
00fa7f73fb
add CALLBACK: syntax that defines a typedef and an alien-callback constructor word for function pointer types. update some code in iokit.hid and windows.dinput to use CALLBACK: instead of TYPEDEF:/word pairs
2009-09-21 11:59:41 -05:00
Joe Groff
b09006bba9
include LIBRARY: in FUNCTION: synopsis
2009-09-20 23:59:43 -05:00
Slava Pestov
9d90bdd439
Fix conflict
2009-09-20 23:18:07 -05:00
Slava Pestov
ea44ea3522
math.vectors.simd: add saturated arithmetic operations
2009-09-20 23:16:02 -05:00
Joe Groff
08d9d0ad28
fix synopsis for C-TYPE:, TYPEDEF:, and FUNCTION: so they properly show IN: clause
2009-09-20 23:12:31 -05:00
Slava Pestov
e77341b90c
math.vectors.simd: redesign to be more flexible, integer SIMD work in progress
2009-09-20 02:08:32 -05:00
Joe Groff
076ab42dc3
move some allocation words that don't really have much to do with c types out of alien.c-types into a new alien.data vocab
2009-09-17 22:36:05 -05:00
Joe Groff
8f336b4ec0
alien.fortran can't piggyback the alien.parser arg parser anymore
2009-09-16 21:24:10 -05:00
Joe Groff
263ce45932
fix resolve-pointer-type
2009-09-16 20:54:57 -05:00
Joe Groff
58756c27c5
have typedefs take on the old type's pointer type even when the new type is a word and the old a string
2009-09-16 17:36:50 -05:00
Joe Groff
40620d470f
allow word c-types and definitions to coexist
2009-09-16 17:18:19 -05:00
Joe Groff
e70c063e61
fix alien-function-word predicate
2009-09-16 14:17:13 -05:00