Commit Graph

293 Commits (5cd2fbb56450817b67c8bf1039b913bd042c59e9)

Author SHA1 Message Date
Jeremy Hughes b421a360c0 alien.inline: added DELETE-C-LIBRARY: word, mainly for tests
Conflicts:

	basis/alien/inline/inline.factor
2009-07-08 09:45:08 +12:00
Jeremy Hughes e140d80d71 alien.inline: prepend vocab name to c-library name
Conflicts:

	basis/alien/inline/inline.factor
2009-07-08 09:43:19 +12:00
Jeremy Hughes ed65e2ae4c alien.marshall.syntax: added tests 2009-07-08 09:39:39 +12:00
Jeremy Hughes 7c1ae71a3e alien.marshall: formatting 2009-07-08 09:39:15 +12:00
Jeremy Hughes fec504197b alien.marshall: add longlong and ulonglong marshallers 2009-07-08 09:33:29 +12:00
Jeremy Hughes 787b5d618a alien.marshall: factorize-type before primitive-unmarshaller 2009-07-08 09:33:04 +12:00
Jeremy Hughes 0aa1a9a43d alien.marshall.syntax: remove duplicate annotate-effect call 2009-07-08 09:31:27 +12:00
Jeremy Hughes ca740fcb03 alien.marshall.syntax: fix: return value unmarshaller 2009-07-08 09:30:58 +12:00
Jeremy Hughes 09aea6d8e6 alien.inline: allow compiling from non-file vocabs 2009-07-08 09:29:41 +12:00
Jeremy Hughes 5e822dd454 alien.inline: added DELETE-C-LIBRARY: word, mainly for tests 2009-07-07 21:11:57 +12:00
Jeremy Hughes c478fa9f1b alien.inline: prepend vocab name to c-library name 2009-07-07 21:05:16 +12:00
Jeremy Hughes e046605473 moved struct wrapper code from alien.structs.structs to alien.marshall.structs 2009-07-07 19:44:34 +12:00
Jeremy Hughes 9128952867 alien.marshall: fixes 2009-07-07 19:43:30 +12:00
Jeremy Hughes 4917454b85 append inline to combinator 2009-07-07 19:41:59 +12:00
Jeremy Hughes 811a7c54eb Merge branch 'inlinec' into marshall
* inlinec:
  moved alien.inline tests to inline-tests.factor
  alien.inline: file get path>> instead of vocab-source-path
  alien.inline.compiler: x86_64 check and hook methods

Conflicts:
	basis/alien/inline/inline.factor
2009-07-07 17:22:56 +12:00
Jeremy Hughes 66a740aaaf moved alien.inline tests to inline-tests.factor 2009-07-07 17:21:47 +12:00
Jeremy Hughes da024f5547 alien.inline: file get path>> instead of vocab-source-path 2009-07-07 17:21:47 +12:00
Jeremy Hughes e76229a8f6 alien.inline.compiler: x86_64 check and hook methods 2009-07-07 17:20:54 +12:00
Jeremy Hughes f61b736f10 alien.marshall(.private): free and non-free marshallers and struct marshalling 2009-07-07 16:04:41 +12:00
Jeremy Hughes dc9bcc8b73 alien.structs: alien.syntax: struct wrapper and marshalling of fields 2009-07-07 15:49:39 +12:00
Jeremy Hughes 296a3eb554 Merge branch 'inlinec' into marshall
* inlinec:
  alien.inline.compiler: use g++ for C++ files
2009-07-06 21:34:45 +12:00
Jeremy Hughes 994b142f74 alien.inline.compiler: use g++ for C++ files 2009-07-06 21:34:27 +12:00
Jeremy Hughes 4bdc4aa589 Merge branch 'inlinec' into marshall
* inlinec:
  Added alien.inline.types (forgot to add several commits ago)

Conflicts:
	basis/alien/inline/inline.factor
2009-07-06 21:17:55 +12:00
Jeremy Hughes da01ae5cda Added alien.inline.types (forgot to add several commits ago) 2009-07-06 21:14:08 +12:00
Jeremy Hughes 3b987a77a8 alien.marshall.syntax: added MARSHALLED: word 2009-07-06 11:55:53 +12:00
Jeremy Hughes 511ae71763 alien.inline: moved marshalling syntax to alien.marshall.syntax
* made appropriate words in alien.inline public
2009-07-06 11:55:23 +12:00
Jeremy Hughes 7ecadf0a68 alien.inline: renamed and refactored prototype-string 2009-07-06 11:28:41 +12:00
Jeremy Hughes ae4b284006 Moved two words from alien.inline to alien.inline.types 2009-07-06 11:26:17 +12:00
Jeremy Hughes 9cf0c5e33b alien.inline: made define-c-marshalled standalone 2009-07-06 11:08:47 +12:00
Jeremy Hughes bb3fa44e2d Merge branch 'inlinec' into marshall
* inlinec:
  alien.inline: reverted refactoring
2009-07-06 11:07:32 +12:00
Jeremy Hughes dbe19d8173 alien.inline: reverted refactoring 2009-07-06 11:06:44 +12:00
Jeremy Hughes 64aef112b5 alien.inline: stopped annotate-effect affecting prototype strings 2009-07-05 22:17:13 +12:00
Jeremy Hughes c32d7c5c97 Fixed bug where primitive-type? could not handle "Class*" types 2009-07-05 22:17:13 +12:00
Jeremy Hughes 519277a0a0 Fixed cify-types bug 2009-07-05 22:17:13 +12:00
Jeremy Hughes 577420b7dd Added alien.marshall and modified alien.inline accordingly 2009-07-05 22:17:13 +12:00
Jeremy Hughes 284ef4f048 Made factorize-type and cify-type public 2009-07-05 22:17:13 +12:00
Jeremy Hughes 3cd4bd8106 alien.inline: added annotate-effect word 2009-07-05 22:16:58 +12:00
Jeremy Hughes b212588417 alien.inline: refactoring 2009-07-05 22:16:58 +12:00
Jeremy Hughes dd45949c50 alien.inline: prototype-string: fixed params 2009-07-05 22:16:58 +12:00
Jeremy Hughes 1a0a34fbfc alien.inline: cify-type: fixed incorrect substitution 2009-07-05 22:16:58 +12:00
Jeremy Hughes d2f6f99954 alien.inline: types->effect>params-return: fix for stack order and void return type 2009-07-05 22:16:58 +12:00
Jeremy Hughes f7ddd899c3 alien.inline: function-types-effect: fixed incorrect stack order 2009-07-05 22:16:57 +12:00
Jeremy Hughes 8f8aa3051c alien.inline: factorize-type covers unsigned and long 2009-07-05 22:16:57 +12:00
Jeremy Hughes 713e71fd3c alien.inline: added define-c-function' and refactored existing words 2009-07-05 22:16:57 +12:00
Jeremy Hughes 408bbbdcf8 alien.inline renamed words for runtime use 2009-07-03 15:32:00 +12:00
Jeremy Hughes 670388b45a whitespace 2009-07-03 14:55:50 +12:00
Jeremy Hughes c286074fe5 Unit tests for alien.inline 2009-07-03 11:35:46 +12:00
Jeremy Hughes 450b5ff4f1 Added copyright headers 2009-07-03 11:35:02 +12:00
Jeremy Hughes f23e330f58 alien.c-syntax -> alien.inline, alien.compile -> alien.inline.compiler 2009-07-03 10:46:19 +12:00
Jeremy Hughes bb379a11ca alien.c-syntax alien.compile: symbols instead of strings 2009-07-03 10:43:27 +12:00
Jeremy Hughes 94f519b12c alien.compile: use locals in some words 2009-07-03 10:42:52 +12:00
Jeremy Hughes 4473ac9921 alien.c-syntax alien.compile: added authors.txt 2009-07-03 07:41:18 +12:00
Jeremy Hughes 542e490950 alien.c-syntax: fixed host of problems 2009-07-03 07:35:18 +12:00
Jeremy Hughes 9e240eb3b9 Removed C++-LIBRARY: in favour of COMPILE-AS-C++ statement 2009-07-02 11:35:43 +12:00
Jeremy Hughes 5c8d4bee52 Inline C 2009-07-02 11:35:43 +12:00
Slava Pestov 1b355bcc95 alien.structs: update docs to mention struct-arrays 2009-07-01 16:16:40 -05:00
Slava Pestov a0eb60906d Fix even more usings 2009-05-16 10:45:17 -05:00
Slava Pestov b62630b5ac Updating code in basis and extra for stricter vocab search path semantics 2009-05-14 23:23:06 -05:00
Slava Pestov b31fe9b8f2 Implement stricter vocab search path semantics, with a new API for vocabs.parser. Add map-find-last to sequences vocab 2009-05-14 22:31:29 -05:00
Slava Pestov fb6df472a2 Cleaning up USING: lists for new strict semantics 2009-05-14 16:54:16 -05:00
Slava Pestov aa0e954633 Move wchar_t* typedef from alien.arrays to windows.types since that's the only place that uses it. Reduces deployed image size since io.encodings.utf16 not loaded on Unix 2009-05-12 04:19:22 -05:00
Slava Pestov 9986f6e23e Fix bool type on PowerPC 2009-05-10 19:01:38 -05:00
Slava Pestov 58d0e17936 Fix bool type; its actually 1 byte not 4 in structs. Bug reported by jedahu 2009-05-05 18:37:40 -05:00
Slava Pestov a6afbea707 alien.libraries: Fix dlsym on Windows 2009-05-05 16:00:31 -05:00
Slava Pestov a63ad6a7a5 Remove cruddy string encoding/decoding code from VM 2009-05-02 13:45:38 -05:00
Slava Pestov 9d1c4f39a8 Some gold plating 2009-05-01 02:03:22 -05:00
Slava Pestov 5f6c074edd Split up types.c/h into smaller files, remove optimized slot from F_WORD struct 2009-04-28 17:26:11 -05:00
Slava Pestov 05f3f9dcb9 Fixing unit tests for stack effect inference changes 2009-04-20 21:15:19 -05:00
Slava Pestov c3e7db3852 Refactor FUNCTION: to make it more extensible 2009-04-18 02:37:35 -05:00
Slava Pestov b5b80cd0e9 Documentation updates 2009-04-14 20:36:10 -05:00
Slava Pestov 409b331716 Fix typo 2009-04-07 20:06:28 -05:00
Slava Pestov 41e3e0acb4 Fix alien.fortran for NetBSD x86.64 2009-04-07 18:49:54 -05:00
Slava Pestov 99b8400e56 Documentation updates 2009-04-06 03:00:46 -05:00
U-SLAVA-DFB8FF805\Slava 9c3054c84a More progress on Uniscribe 2009-04-02 13:05:26 -05:00
U-SLAVA-DFB8FF805\Slava 0cfa22c276 Merge branch 'master' of git://69.93.127.154/git/factor into uniscribe 2009-04-01 22:46:04 -05:00
Joe Groff 432ff9b07f Make math.blas library and ABI choice configurable 2009-04-01 14:52:43 -05:00
Slava Pestov 84b5ace863 alien.destructors: ignore any output values from disposal word 2009-03-28 22:26:49 -05:00
Doug Coleman 63e06589bd don't normalize-path in add-library 2009-03-26 18:56:10 -05:00
Doug Coleman b771758ff7 fix load errors, help lint 2009-03-26 10:45:52 -05:00
Doug Coleman 8b7fcce399 update code for usages of add-library 2009-03-25 23:00:19 -05:00
Doug Coleman 3c1b716bf9 move a lot of words to alien.libraries 2009-03-25 23:00:02 -05:00
Slava Pestov 6080c6e734 Fix stack effect redefinition 2009-03-22 20:16:31 -05:00
Slava Pestov 52cac7fd4e alien.structs: simplify logic and remove dead code 2009-03-22 17:47:48 -05:00
Slava Pestov ea60f8ae93 Changing : foo ; parsing to SYNTAX: foo ; 2009-03-21 01:27:50 -05:00
Slava Pestov be4fb1e7d9 Move call( and execute( to core 2009-03-16 20:11:36 -05:00
Slava Pestov 06e8468c40 Document alien.destructors 2009-03-12 20:48:22 -05:00
Slava Pestov ce1bc1d6ed Fixing conflicts from stack checker changes 2009-02-24 01:21:10 -06:00
Slava Pestov 91d0c4ed1f Fix conflict 2009-02-22 20:02:13 -06:00
Doug Coleman 7a033876b6 use ?at instead of at* 2009-02-22 19:20:28 -06:00
Slava Pestov 421ee726b8 Merge branch 'master' into new_ui 2009-02-16 21:22:12 -06:00
Slava Pestov 6b25e99470 Add summary for heaps more vocabs 2009-02-16 21:05:13 -06:00
Slava Pestov eba330f1b1 Merge branch 'master' into new_ui 2009-02-12 09:49:08 -06:00
Slava Pestov 489bb32a98 Fix potential load order issue with alien.complex; it used a slot defined in alien.structs but didn't reference that file by name 2009-02-12 09:48:50 -06:00
Slava Pestov 8fd159dadd Fix conflict 2009-02-12 09:22:35 -06:00
Slava Pestov 215127e9f6 Merge branch 'master' of git://factorcode.org/git/factor 2009-02-12 09:20:35 -06:00
Slava Pestov 2c88d339d0 Improve type inference for struct returns 2009-02-12 09:20:32 -06:00
sheeple 3c1ddde1f9 Fix complex float support on NetBSD 2009-02-12 08:10:21 -06:00
sheeple facd455e92 Working on complex float support in FFI on NetBSD 2009-02-12 06:25:07 -06:00
Slava Pestov e068400e54 Merge branch 'master' into new_ui 2009-02-12 02:22:09 -06:00
Joe Groff 94a5582edc tweak fortran-invoke so that unit tests can set fortran-abi without being shouted over 2009-02-11 14:05:57 -06:00
Slava Pestov fb84b8dd6a Merge branch 'master' into new_ui 2009-02-10 16:53:09 -06:00
Joe Groff a0421edf97 set fortran abi in fortran-invoke macro 2009-02-10 16:39:24 -06:00
Slava Pestov ab386d01aa Merge branch 'master' into new_ui 2009-02-10 16:23:14 -06:00
Joe Groff 0279270dda un-unportable the blas stuff 2009-02-10 15:11:39 -06:00
Joe Groff 8a144b7b94 support different fortran ABIs 2009-02-10 13:11:06 -06:00
Slava Pestov 6235e95052 Fix conflict 2009-02-10 00:44:23 -06:00
Joe Groff dd9ceba26a Merge branch 'master' of git://factorcode.org/git/factor 2009-02-09 22:08:48 -06:00
Joe Groff 204f5195f7 mark blas libs unportable till i sort out all the fortran abis 2009-02-09 22:08:35 -06:00
Slava Pestov 8654bfe921 Merge branch 'master' into new_ui 2009-02-09 20:30:44 -06:00
Joe Groff f7d9f2ab2e typo in alien.fortran docs 2009-02-09 19:02:20 -06:00
Joe Groff 03f7a72d41 alien.fortran docs 2009-02-09 18:44:36 -06:00
Joe Groff ebdd135d62 gfortran returns float for REAL functions, not double like f2c 2009-02-09 16:36:46 -06:00
Joe Groff 08b02fadc9 typos 2009-02-09 15:51:59 -06:00
Joe Groff db6706434d tweak specialized-arrays to box values returned by nth 2009-02-09 15:38:07 -06:00
Joe Groff 32481f8e2f my stuped, let me show u it 2009-02-09 15:01:41 -06:00
Joe Groff d41c1f2b09 Merge branch 'master' into fortran 2009-02-09 14:36:39 -06:00
Joe Groff 42265cbc62 start hacking on math.blas.vectors to switch to fortran 2009-02-09 14:35:44 -06:00
Joe Groff 0522f63e5f alien.fortran metadata 2009-02-09 14:20:29 -06:00
Joe Groff 4dd500b5b1 fortran-invoke works(?) 2009-02-09 13:29:50 -06:00
Slava Pestov 3045777f02 Fix conflict 2009-02-09 00:34:00 -06:00
Daniel Ehrenberg b65b88364c Updating lots of things to use call( -- ) 2009-02-08 22:12:11 -06:00
Joe Groff 118f2de466 fortran-invoke sketch 2009-02-06 19:05:56 -06:00
Joe Groff 6ff37d2951 Merge branch 'master' of git://factorcode.org/git/factor into fortran 2009-02-06 19:05:25 -06:00
Slava Pestov c04ee453e3 Merge branch 'master' into new_ui 2009-02-06 11:10:55 -06:00
Slava Pestov 33b513fb05 byte-length on f outputs 0 2009-02-06 10:16:51 -06:00
Joe Groff da05150686 Merge branch 'master' into fortran 2009-02-06 10:07:35 -06:00
Joe Groff 7e2ac604e7 some initial work on invoking fortran functions 2009-02-06 10:06:22 -06:00
Slava Pestov dd9cf39467 Fix conflict in libc 2009-02-06 05:10:41 -06:00
Slava Pestov 242638fc5c alien.complex vocabulary implementing support for C99 complex numbers 2009-02-06 04:38:31 -06:00
Slava Pestov 7ffbbb13e0 Specialized arrays can now be passed to alien functions directly, without calling underlying>> first 2009-02-06 04:36:17 -06:00
Slava Pestov 7bb0e78314 Add support for C99 complex float and complex double types to FFI
They are named complex-float and complex-double in the Factor world
2009-02-06 04:02:00 -06:00
Slava Pestov d3b2650ce9 Update alien.destructors for DEFINE-CLASS 2009-02-06 02:42:03 -06:00
Joe Groff 7b1f16ae5e fortran records 2009-02-05 18:51:50 -06:00
Joe Groff 4429c17f63 implement fortran-arg-type>c-type and fortran-ret-type>c-type 2009-02-05 16:39:23 -06:00
Joe Groff 4f1dc5cd0c implement fortran-name>symbol-name and fortran-type>c-type 2009-02-05 15:31:58 -06:00
Joe Groff c24bc639d1 unit tests for alien.fortran 2009-02-05 15:29:59 -06:00
slava e29f18a2f4 Trying to fix a bad merge...
Revert "Merge branch 'master' of git://factorcode.org/git/factor"

This reverts commit da639739bd, reversing
changes made to 346a61f497.
2009-02-03 00:27:34 -06:00
Slava Pestov 6cd835e567 Fix conflict 2009-02-02 06:07:59 -06:00
Slava Pestov b684db297a Use [ max ] map-reduce instead of map supremum; would be nice to find a good name for this and put it in sequences vocab 2009-02-02 03:46:10 -06:00
Slava Pestov 7dd22ac130 Update alien.destructors for functor changes 2009-01-28 15:03:00 -06:00
Slava Pestov 1951d739a0 Stack effect declarations are mandatory on all words now
define-temp now takes an effect parameter
Fix compiler bug that Dan found
Stricter enforcement of * effects
Move compile-call from compiler.units to compiler
2009-02-23 20:27:05 -06:00
U-SLAVA-DFB8FF805\Slava a4a6885189 Fix setters for value struct slots and add unit test for this case; this fixes an io.mmap regression on Windows 2009-01-28 01:58:57 -06:00
Slava Pestov ef223f26d5 Fix conflict 2009-01-24 23:56:33 -06:00
Slava Pestov a8d1459c08 Rename compiled slot of words to optimized, to reflect what it really means (all words are compiled) 2009-01-23 00:37:02 -06:00
Slava Pestov 87a1363c95 Merge branch 'master' into new_ui 2009-01-21 19:56:20 -06:00
Slava Pestov 71bc5e9e10 Fix &: to throw an error if the symbol does not exist 2009-01-21 19:55:33 -06:00
Slava Pestov 3a668a9457 Fix bootstrap by adding protocol slot 2009-01-18 20:51:07 -06:00
Slava Pestov 8f4d84373b Clean up alien.destructors 2009-01-17 18:18:31 -06:00
Slava Pestov 3ba833779f New alien.destructors vocab defines a functor which generalizes &CFRelease; flesh out core-graphics and core-text bindings 2009-01-16 22:37:56 -06:00
Slava Pestov 4fb20dcfe2 C-ENUM: uses define-constant 2009-01-16 17:44:29 -06:00