Commit Graph

13155 Commits (6a912e47b49466481af1aa62b2163c36d263bb76)

Author SHA1 Message Date
John Benediktsson 5f11bf63b6 globs: adding tests for char-range. 2016-03-27 18:55:45 -07:00
John Benediktsson ffbd9e4754 globs: removing glob-parent-directory. 2016-03-27 18:54:38 -07:00
John Benediktsson 1441d66553 globs: implement glob-directory.
It looks too complicated, and maybe it is.  Some tests pass.
2016-03-27 18:52:20 -07:00
John Benediktsson c1010144e5 regexp.combinators: fix <char-range>. 2016-03-27 18:49:42 -07:00
Björn Lindqvist ff99f69f02 compiler.cfg.save-contexts: fix $link markup 2016-03-27 23:47:08 +02:00
Björn Lindqvist 07aee7525f compiler.cfg.save-contexts: ##save-context isn't need in front of ##call-gc
The reason is because the minor-gc primitive itself saves the
context. Not inlining context saves, saves 20 bytes/call site.
2016-03-27 19:21:50 +02:00
Björn Lindqvist 63ef600aa3 compiler.cfg.*: indentation fixes 2016-03-27 19:21:50 +02:00
John Benediktsson 7038e8a55e stack-checker: a little cleanup. 2016-03-27 10:01:56 -07:00
Björn Lindqvist f549283508 bootstrap.assembler.ppc: make ppc also use define-sub-primitives 2016-03-27 17:46:55 +02:00
Björn Lindqvist df3852f54a bootstrap.assembler: new word define-sub-primitives
This way all sub primitives can be declared at once which imo is cleaner.
2016-03-27 17:42:25 +02:00
John Benediktsson 292e95f867 stack-checker.known-words: simpler infer-ndip and infer-builder. 2016-03-26 18:37:25 -07:00
Björn Lindqvist ce2b971b3b mirrors: make all sequences be "inspectable", could fix #1237 2016-03-26 15:08:31 +01:00
John Benediktsson a3d83d2252 compression.zlib.ffi: add more functions. 2016-03-25 20:55:41 -07:00
John Benediktsson a359dd7a8e mirrors: fix tests for string change. 2016-03-25 15:56:42 -07:00
Björn Lindqvist b21457411e mirrors: makes string an inspectable sequence, fixes #1238 2016-03-25 21:10:26 +01:00
John Benediktsson 774c6ae19e summary: better word re-use. 2016-03-25 09:43:35 -07:00
John Benediktsson c50e75ca85 summary: can't use formatting or it breaks bootstrap. 2016-03-25 09:42:04 -07:00
Björn Lindqvist e075ea02a8 summary: string summary should say characters, not elements 2016-03-25 14:46:37 +01:00
Björn Lindqvist cf3e376ac0 summary: improved summary for tuples
It reads nicer if it says "a blabla tuple" instead of just "blabla".
2016-03-25 14:37:53 +01:00
Björn Lindqvist 52c5d2b0a4 summary: refactoring to use the formatting vocab + tests 2016-03-25 14:00:48 +01:00
Doug Coleman 7a6570b355 unicode.data, terrain.generation: remove abusive stack effect names. 2016-03-25 03:13:27 -07:00
Doug Coleman d3bc2035a2 factor: remove rest of double paren words. 2016-03-25 03:13:27 -07:00
Doug Coleman 92afdc3ad0 hashtables: rename ((tombstone)) to +tombstone+, ((empty)) to +empty+ 2016-03-25 03:13:27 -07:00
Björn Lindqvist 0bb3228063 unix: fixed read-symbolic-link (#1074) + tests 2016-03-23 16:15:30 +01:00
Björn Lindqvist 53467d4e21 io.files.unix: loop getcwd with an expanding buffer, fixes part of #1074
It appears that the right way to do it is using an arbitrary sized buffer
and just expanding it in case getcwd reports ERANGE.
2016-03-23 16:15:29 +01:00
John Benediktsson e2e3b448ee vocabs.metadata: moving os-specific paths to tools.deploy. 2016-03-23 07:44:35 -07:00
John Benediktsson 6e035c3640 compiler.tests: fix a few KERNEL-ERROR. 2016-03-22 15:22:15 -07:00
John Benediktsson 6ec952c436 db.errors: move to db.{postgresql,sqlite}.errors. 2016-03-22 12:44:50 -07:00
Björn Lindqvist 579875821b VM: removes the OBJ-ERROR special object in favor of a constant
The special object contained the string "kernel-error" which were used
to tag VM errors. But it is simplier and removes a little complexity to
just tag them with a fixnum constant.
2016-03-22 17:52:19 +01:00
John Benediktsson 7f16923ce1 tools.completion: fix help-lint for runs now that it returns slices. 2016-03-22 07:44:28 -07:00
John Benediktsson 6e2726f232 tools.completion: simplify runs which is just monotonic-split. 2016-03-22 07:41:33 -07:00
John Benediktsson 0d2859124e checksums: remove hex-string in favor of math.parser:bytes>hex-string. 2016-03-21 21:06:22 -07:00
Doug Coleman 236f962323 gmae.input: rename ` to backtick 2016-03-21 14:57:48 -07:00
John Benediktsson 9cc73c9492 graphs: move to core and simplify.
1. remove add-vertex* and remove-vertex* that contradicted the documentation.
2. graphs use hash-sets of edges instead of hashtables of {edge,edge} pairs.
3. make graphs:closure work like classes:closure, use in classes.
2016-03-21 10:20:38 -07:00
John Benediktsson f1fd761a72 mirrors: define M\ hash-set make-mirror so inspector works better on hash-sets. 2016-03-21 10:20:38 -07:00
Doug Coleman 2f7a4a26cd basis: rename the only four words with backtick in their name. 2016-03-20 21:04:30 -07:00
John Benediktsson 12628c5a95 tools.crossref: change crossref to store uses in hash-set.
Previously it would use a hashtable where the key and value
were both the same.
2016-03-20 20:20:34 -07:00
John Benediktsson 1031a02d15 help: cleanup usings. 2016-03-20 19:42:38 -07:00
John Benediktsson c04ce00b45 ui.gadgets.panes: fix use of string-lines that prevented icons from showing in help browser. 2016-03-20 15:56:02 -07:00
John Benediktsson a067b13311 help: simplify. 2016-03-20 14:39:13 -07:00
Doug Coleman 35d84c6e64 maths.primes: finish renaming fast-gcd to simple-gcd. 2016-03-19 17:21:24 -07:00
John Benediktsson 50759f4bc6 io.files.unique: change cleanup-unique-file quot stack effect. 2016-03-19 13:03:15 -07:00
John Benediktsson 20883fb21a ui.backend.cocoa.views: add constants for modifier flags. 2016-03-19 12:48:42 -07:00
John Benediktsson 6b07e6caf2 math: rename fast-gcd to simple-gcd. 2016-03-19 12:20:09 -07:00
Björn Lindqvist bce3a88287 stack-checker.known-words: fix input class declaration for <string>
it should be { integer-array-capacity integer } ofcourse
2016-03-19 18:59:19 +01:00
John Benediktsson bde8f522f1 fix some tests broken by my io.files.unique change. 2016-03-19 09:50:01 -07:00
John Benediktsson 95a6f6d568 help.home: simplify USING. 2016-03-19 08:54:59 -07:00
John Benediktsson 7388706ab7 help.home: use $content to render the handbook. 2016-03-19 07:54:37 -07:00
John Benediktsson 1a8aca2969 help.markup: adding $content to inline the content of another article. 2016-03-19 07:54:24 -07:00
John Benediktsson fbb6968312 help.home: make the home screen the handbook content. 2016-03-19 04:27:20 -07:00
John Benediktsson 9c323e2884 cleanup some uses of current-directory. 2016-03-18 17:04:05 -07:00
John Benediktsson e36727db23 io.files.unique: some cleanup. 2016-03-18 16:54:17 -07:00
Björn Lindqvist 6f9ff8813e compiler.*, stack-checker.known-words: adds the integer-array-capacity
This commit adds the integer-array-capacity declaration on a few
words. It should make loopy code compile faster and fix #1339
2016-03-18 20:46:41 +01:00
Björn Lindqvist be4484d708 compiler.tree.*: fixes the propagation and dead-code removal logic so it
becomes aware of integer-array-capacity
2016-03-18 20:39:28 +01:00
Björn Lindqvist a3ce61f8da compiler.tree.cleanup: more docs and a test 2016-03-18 19:21:31 +01:00
Björn Lindqvist 6576660069 compiler.tree.dead-code.simple: tests and more docs 2016-03-18 19:21:31 +01:00
John Benediktsson baae677276 io.files.unique: change to create unique files and directories relative to the current-directory. 2016-03-18 10:57:54 -07:00
John Benediktsson f5b31a85c0 io.monitors: change tests to not use unique because it only ever used temp-file. 2016-03-18 10:36:45 -07:00
John Benediktsson 7c2e8d0fad io.launcher.unix: simplify use of temp-directory. 2016-03-18 10:36:45 -07:00
Doug Coleman 63763caef4 tools.deploy.test.19: case sensitive on linux. 2016-03-17 22:50:13 -07:00
John Benediktsson 32b29f7079 io.files.info: cleanup by using with-temp-directory. 2016-03-17 17:51:36 -07:00
John Benediktsson 2e85dd2eb3 io.directories: simplify tests by using with-temp-directory. 2016-03-17 17:11:59 -07:00
John Benediktsson 0316a04c42 tools.deploy.test.19: make sure to test vocab urls. 2016-03-17 17:00:32 -07:00
Doug Coleman d4b8e44399 license rename: fix the rest of it. 2016-03-17 02:36:34 -07:00
John Benediktsson 73de6246b7 io.files.temp: use a startup hook as the temp directory could change from run to run. 2016-03-16 21:40:25 -07:00
Doug Coleman 2aadc94b10 io.files.temp: Initialize symbols after the backends are loaded. Top level code sucks. 2016-03-16 21:25:19 -07:00
John Benediktsson 33b6c0426d io.files.temp: allow changing of current temp and cache directory. 2016-03-16 15:19:10 -07:00
John Benediktsson 5f682c18de use the new bytes>hex-string. 2016-03-16 10:13:56 -07:00
John Benediktsson 497f8cb514 Update tests for LICENSE.txt rename. 2016-03-16 10:13:56 -07:00
Björn Lindqvist 707bc801a4 compiler.cfg.stacks.local: replace-sets values must be hash-sets (#1507)
The compiler hang was because { D: 3 D: 2 } was unequal to { D: 2 D: 3
}, so using a set should fix that.
2016-03-16 16:32:50 +01:00
Björn Lindqvist db9093dd5c compiler.cfg.stacks.*: new docs
Mostly from making comments into doc definitions
2016-03-16 15:21:42 +01:00
Björn Lindqvist f80513cd99 compiler.cfg.dataflow-analysis: removes the -analysis from the dfa token
It makes the FORWARD-ANALYSIS: and BACKWARD-ANALYSIS: functors less
magical if the generated singletons name is the same as in the syntax.
2016-03-16 14:40:58 +01:00
Björn Lindqvist 4a472d7882 compiler.cfg.builder.blocks: return the slots, they are absolutely
needed for bootstrap
2016-03-16 14:08:49 +01:00
Björn Lindqvist f906f1c282 compiler.cfg.*: the make-kill-block word is not needed 2016-03-16 12:26:03 +01:00
Björn Lindqvist 5ca571e304 compiler.cfg.builder.blocks: some cleanup 2016-03-16 11:48:31 +01:00
Björn Lindqvist 3a9b297b3b compiler.cfg.*: better stack effect for end-stack-analysis 2016-03-16 10:53:33 +01:00
John Benediktsson ee599e9dea functors: don't leak the bindings. 2016-03-15 16:12:37 -07:00
John Benediktsson 07c867846a documents: rename string-lines to split-lines so I don't get restarts. 2016-03-15 10:41:14 -07:00
John Benediktsson 51bafaeda4 locals.parser: move parse-binding to functors. 2016-03-15 10:34:07 -07:00
John Benediktsson ebfa9402d4 io.sockets.unix: using getsockopt doesn't need to recurse. 2016-03-14 08:42:54 -07:00
John Benediktsson 2cf223d863 http: fix tests for string-lines. 2016-03-13 20:01:58 -07:00
John Benediktsson 49ae6575d8 html.templates.fhtml: fix tests for string-lines. 2016-03-13 20:01:33 -07:00
John Benediktsson a3073bd15c documents: whoops, doc-lines conflicts with doc-lines. 2016-03-13 17:01:58 -07:00
Doug Coleman bb7161a46f io.sockets.secure.windows: Add some code for loading the certificates on
windows. Still disabled, and the CA certificates are duplicated.
2016-03-13 16:11:45 -07:00
Doug Coleman d9a39ce5e4 openssl.libssl: Use libcrypto on Windows instead of libeay or ssleay and
add a few more functions. Ugh.
2016-03-13 16:11:44 -07:00
John Benediktsson ef2ae9c360 splitting: make string-lines more correctly handle line terminator. 2016-03-13 15:46:04 -07:00
John Benediktsson a58a2ff7b0 io.sockets.unix: don't need these imports. 2016-03-13 13:43:57 -07:00
John Benediktsson cd90435588 io.sockets.unix: refactor getsockopt into get-socket-option. 2016-03-13 13:34:29 -07:00
John Benediktsson b3fbafcf92 io.sockets.unix: adding tests for connection refused. 2016-03-13 13:15:45 -07:00
John Benediktsson 3fdbbe0fea io.sockets.unix: use getsockopt to check connect success. 2016-03-13 13:08:26 -07:00
John Benediktsson 5b3987a26f unix.ffi: adding getsockopt and some socket options. 2016-03-13 13:08:07 -07:00
John Benediktsson 2845fb47c1 windows.crypt32: adding platforms.txt. 2016-03-13 07:57:11 -07:00
Doug Coleman c906148e29 windows.types: fix using 2016-03-13 01:53:22 -08:00
Doug Coleman 460555785c io.sockets.secure.openssl: Fix docs. 2016-03-13 01:45:52 -08:00
Doug Coleman 2398800829 openssl.libssl: Adding some functions to work with certificates. 2016-03-13 01:42:53 -08:00
Doug Coleman f3eca53bf5 windows: Adding crypt32 api for SSL certificate loading. 2016-03-13 01:42:52 -08:00
Doug Coleman aac36d1af8 windows.types: LPSTR is a utf8 string. Add LPTCSTR. 2016-03-13 01:42:51 -08:00
Björn Lindqvist d62240a0a2 compiler.codegen.relocation.tests: fix test so it works on windows too 2016-03-13 07:37:49 +01:00
Björn Lindqvist db4c4665f3 Docs: doc updates 2016-03-13 07:37:20 +01:00
Doug Coleman df3f58ae61 io.sockets.secure.openssl: Fix subject-name-match? for wildcard domains.
Also remove duplicate names before checking.
2016-03-12 20:22:47 -08:00
Benjamin Pollack b0d62bcdc3 io.sockets.secure: add SNI support for Windows
M: secure ((client)) is identical between Unix and Windows, so this probably
could be moved out of the platform-specific vocab, but doing it sanely would
require a refactor I'm not excited about, so punting on that for now.

Fixes #1551
2016-03-12 09:27:31 -05:00
Doug Coleman 8ce3ff3fab xml.write: Fix xml for spacing change. 2016-03-11 22:29:31 -08:00
Benjamin Pollack 2ad91ce941 xml.writer: do not include meaningless extra whitespace in doctype
This is theoretically merely annoying, but since we're using the XML vocab in
tons of places as an overenthusiastic HTML generator, and HTML5 technically
mandates that the first token needs to be `<!DOCTYPE html>` full-stop, this had
to get fixed.
2016-03-11 18:20:55 -05:00
Benjamin Pollack 4ef42357e1 chloe/html: switch to HTML5 templates
Since XHTML is dead, and HTML5 isn't, switch to HTML5 templates for Chloe and
other key parts of our HTML subsystems. As part of this, I went through and
added DOCTYPE declarations to some of our examples as well.
2016-03-11 18:20:55 -05:00
Benjamin Pollack 512014a436 chloe: make self-closing tags support more idiomatic Factor 2016-03-11 13:13:43 -05:00
Benjamin Pollack bbc5fe4b5b command-line: document memory sizes as mebibytes/kibibytes 2016-03-11 12:31:48 -05:00
Benjamin Pollack ed1ccc4448 chloe: ensure self-closing tags are self-closing
This gets us much closer to HTML5 compatibility, while not breaking the
existing XHTML functionality. (Indeed, the entire reason this is necessary is
that XHTML, being an XML derivative, treats `<foo></foo>` and `<foo />`
equivalently, whereas HTML5 does not.)
2016-03-11 11:01:22 -05:00
Björn Lindqvist a0dba498aa math.vectors.simd.intrinsics: the syntax for declaring simd intrinsics
isn't needed so it can be removed afaict
2016-03-11 07:11:47 +01:00
Björn Lindqvist 2713153273 io.sockets.tests: these needs to be conditional, in case you are ipv4 only 2016-03-10 04:11:23 +01:00
Björn Lindqvist 076abf04ce compiler.*: new tests 2016-03-09 23:24:43 +01:00
Björn Lindqvist b51bd79819 compiler.cfg.*: new doc files 2016-03-09 23:24:43 +01:00
Björn Lindqvist 442827ade9 compiler.cfg.intrinsics.fixnum: more docs and tests 2016-03-09 23:24:43 +01:00
Björn Lindqvist b27634bff7 compiler.cfg.builder.blocks: removes assignments to basic-block variable
Now it isn't used at all in the cfg creation step.
2016-03-09 23:24:43 +01:00
Björn Lindqvist 9df955e199 compiler.cfg.*: big changes which removes the last basic-block uses
All intrinsic code generating words signatures are changed from ( node
-- ) to ( block node -- block' ) so the current block is now always
passed on the stack.
2016-03-09 23:24:42 +01:00
Björn Lindqvist 482998974b compiler.cfg.*: more refactoring to remove basic-block get:s
Now almost all words pass around the current basic block on the
stack. Left is updating all intrinsics.
2016-03-09 23:24:42 +01:00
Björn Lindqvist f9c6d7cc43 compiler.cfg.*: changes to remove basic-block variable
The emit-node generics signature is changed to ( block node -- block' )
so that it always returns the next block to operate on. Signature for a
lot of related words are changed similarily. Now there is only a few
basic-block usages left.
2016-03-09 23:24:42 +01:00
Björn Lindqvist 07adc2ecae compiler.cfg.*: changed generic emit-node to take the current block as
stack parameter

The idea is to eventually completely remove the basic-block dynamic
variable from cfg construction.
2016-03-09 23:24:42 +01:00
Benjamin Pollack 915a7ec1e2 Make VSC work on OS X again
`-r` isn't an argument to `open`, and `-n` seems exactly the opposite of what
we want in most circumstances.
2016-03-09 13:23:50 -05:00
Doug Coleman a1e3476617 tools.deploy: increase sizes for linux32 2016-03-08 16:36:45 -08:00
Jon Harper 43be523e31 math.statistics, add docs for cum-sum0, add cum-product1 for symmetry 2016-03-08 13:41:54 -08:00
Jon Harper cb6ddb1735 rename math.statistics:cum-map to sequences:accumulate* 2016-03-08 13:41:54 -08:00
Doug Coleman a4804621af windows openssl, libtls: Use the libressl dlls for SSL.
http://ftp.openbsd.org/pub/OpenBSD/LibreSSL/
http://downloads.factorcode.org/dlls/
libcrypt-37.dll
libssl-38.dll
libtls-10.dll
2016-03-08 12:48:45 -08:00
Doug Coleman a1f3378365 io.sockets: Default make-sockaddr-outgoing to make-sockaddr. 2016-03-08 09:21:49 -08:00
Jon Harper cac9b58f11 formatting, format numbers with C locale and document that it's english only 2016-03-08 07:55:25 -08:00
Jon Harper 19fadb6c96 prettyprinter, locale independant float printing 2016-03-08 07:55:25 -08:00
Doug Coleman 3cd2775855 io.sockets.unix: Fix ipv6 sends for udp on osx. 2016-03-08 04:46:26 -08:00
Doug Coleman a12a56f777 io.sockets: Special-case 0.0.0.0 and f for outgoing sockets so we can use
them on windows. Add some tests that shouldn't fail. Fixes #85.
2016-03-08 02:27:01 -08:00
Doug Coleman 027a9fb1a2 io.sockets: Fix send-once for inet6. 2016-03-07 16:58:56 -08:00
Doug Coleman 05a8ac2423 Revert "io.sockets: Windows doesn't recognize 0.0.0.0. Add a method for"
This reverts commit 2c82dfb51b.
2016-03-07 14:31:40 -08:00
Doug Coleman 2c82dfb51b io.sockets: Windows doesn't recognize 0.0.0.0. Add a method for
resolve-localhost for Windows, and make the default ipv4 make-sockaddr use
127.0.0.1 since we are making a sockaddr for ipv4 anyway and 127.0.0.1 is
cross-platform. Fixes #85.
2016-03-07 14:07:01 -08:00
Doug Coleman 253de1dc8e editors.visual-studio-code: msft changed the install directory to
c:\program files (x86). Now we don't need the platform-specific windows
file.
Also, add -r option to reuse existing windows.
2016-03-07 13:23:24 -08:00
Doug Coleman 334cc880ec io.standard-paths.windows: We call >lower on the paths being compared, but
not on the original file we are looking for. So searching for something
like "Code.exe" would never find it. Fixed.
2016-03-07 13:21:30 -08:00
Doug Coleman 0f994c9924 alien.syntax: Add ENUM: example with c basetype. 2016-03-05 15:34:15 -08:00
John Benediktsson ee134373f0 ip-parser: some cleanup, move ipv6 parsing here. 2016-03-05 09:51:37 -08:00
Benjamin Pollack efd22a668f Import a few extra JSON tests from Jansson
Fixes #1189
2016-03-05 07:03:12 -08:00
Benjamin Pollack e707374085 Make <inet4> and <ipv4> use ip-parser:parse-ipv4
Fixes #1209
2016-03-05 09:11:56 -05:00
Doug Coleman a303637850 io.sockets.secure.windows: Try to fix compile error. 2016-03-05 02:57:39 -08:00
Benjamin Pollack 37f047c1df Allow specifying vocabulary roots on the command line
Fixes #1498
2016-03-04 10:51:21 -08:00
Benjamin Pollack 9a4fc29c07 Use proper SI prefixes in memory flag docs 2016-03-04 10:48:21 -08:00
Doug Coleman c077ee91e9 openssl: More ciphers. 2016-03-04 18:42:35 +00:00
Doug Coleman 46c9143232 openssl: call SSL_CTX_set_ecdh_auto() for forward secrecy. 2016-03-04 10:05:09 -08:00
Doug Coleman 777528fd40 openssl.libssl: Add more constants. 2016-03-04 10:05:02 -08:00
Doug Coleman 0bfe6ff826 openssl: support more protocols for forward secrecy. 2016-03-04 09:19:08 -08:00
Doug Coleman 3576c0930c openssl: Prefer tls1.2. Only use secure ciphers. 2016-03-04 09:15:12 -08:00
Doug Coleman 27b954f95b alien.libraries: Add a way to see if a dll has a function. 2016-03-04 09:14:49 -08:00
Doug Coleman d0616c5fa8 command-line: More consistent command-line docs, fix MB -> kb for callback heap size 2016-03-03 17:28:53 -08:00
Doug Coleman 5813e8384e command-line.startup: document more command line flags. we already have -nosignals, but it was hidden in the source code. Fix spacing for default image. Closes #1514. 2016-03-03 17:16:39 -08:00
Doug Coleman 2af988eca2 urls: fix docs 2016-03-03 16:15:11 -08:00
Doug Coleman 9d563dc2fe urls: fix unit test 2016-03-03 14:21:12 -08:00
Benjamin Pollack e83e791a7a Do not attempt to set an SNI hostname on a server 2016-03-03 13:58:31 -08:00
Benjamin Pollack 3fda77dbe8 Add an SNI-based http.client test 2016-03-03 09:48:20 -08:00
Benjamin Pollack 62d1425971 Add SNI support to Factor
Fixes #1527
2016-03-03 09:48:20 -08:00
Jon Harper 490523e732 docs, smpt-gmail: fix for people not using 2FA + formatting 2016-03-02 10:14:15 -08:00
Benjamin Pollack bfd656df17 Dump everything before TLSv1
All versions of SSL are deprecated and have major security issues. Just
kill the whole thing. If you want to deliberately expose yourself to
POODLE, you can do it on your own time.
2016-03-01 19:43:06 -05:00
Doug Coleman 3f07cbd194 io.sockets.secure.openssl: Nuke RSA. 2016-03-01 14:02:47 -08:00
Doug Coleman b1e0ba1edd alien.syntax: Fix CALLBACK: syntax again in another place 2016-03-01 13:07:37 -08:00
Doug Coleman 72be6bf9b7 alien.syntax: Fix docs for CALLBACK: (no semi) 2016-03-01 12:42:17 -08:00
Björn Lindqvist b0a201165a bootstrap.image: docs 2016-03-01 17:32:43 +01:00
Björn Lindqvist 5663d39a76 compiler.*: more docs 2016-02-28 01:01:38 +01:00
Doug Coleman 57c01ce863 unix.linux.proc: add bugs line. 2016-02-27 00:28:58 +00:00
John Benediktsson 6af99c3c21 Fix "doesnt" typo. 2016-02-26 08:56:25 -08:00
Doug Coleman 0945303dc5 editors.visual-studio-code: Try to find ``Code`` executable on linux. 2016-02-23 18:45:25 -08:00
Doug Coleman 03e8f4bc19 openssl.libssl: Add some more constants. Move things around a little and add SSL_ctrl() binding. 2016-02-23 18:24:41 -08:00
Benjamin Pollack 12af22f3ee openssl: only set RSA keys if required to do so
Modern OpenSSL and LibreSSL both do not require SSL_CTX_set_tmp_rsa to
be called unless SSL_CTX_need_tmp_rsa returns true, and LibreSSL and
OpenSSL compiled with deprecation warnings both will fail if this
happens. This commit resolves that.

With this change, it becomes possible to use LibreSSL in place of
OpenSSL with Factor.
2016-02-23 08:11:04 -05:00
Benjamin Pollack 8073c8a77e Update OpenSSL calls to work with LibreSSL/newer OpenSSL
RSA_generate_key has been deprecated, and is not available in either
LibreSSL or newer OpenSSL that are not compiled with deprecated call
support. This commit switches to the still-supported
RSA_generate_key_ex, which is supported by both libraries.

Note that this is still insufficient for Factor to work under LibreSSL,
though we now get a call further than before.
2016-02-22 14:21:39 -08:00
Doug Coleman 69d5a3a276 io.sockets: remove send-n-times, broadcast-n-times. 2016-02-20 18:37:08 -08:00
Doug Coleman e4347f5254 io.sockets: Add more utility words for working with udp. 2016-02-19 19:21:13 -08:00
Doug Coleman 64db45c536 factor: update repository location to factor/factor 2016-02-19 13:51:58 -08:00
Doug Coleman 3f9ac2ad9f json.prettyprint: Add a simple json prettyprinter. 2016-02-17 18:36:21 -06:00
Benjamin Pollack 7d8d60ede3 Fix incorrect alien.syntax documentation for FUNCTION:
The library docs indicate that you need a semicolon at the end of
a `FUNCTION:` definition, but that's actually a syntax error. Likewise,
while the parentheses and commas may at one point have been optional,
they emphatically aren't anymore. This patch brings the documentation in
line with the code.
2016-02-17 09:33:33 -08:00
Benjamin Pollack 1887695d45 Make Visual Studio Code integration go directly to lines 2016-02-15 15:42:31 -05:00
Benjamin Pollack 97d1ec759e Add Mac support for Visual Studio Code 2016-02-12 10:06:50 -05:00
John Benediktsson fffb501486 x11.xim: fix "cannot execute a word before it has been compiled" bug. 2016-01-09 16:16:58 -08:00
Jon Harper 6ebf6ff53b docs, ffi: more explicit c-string conversions docs 2016-01-09 13:54:21 -08:00
Jon Harper 5b96d4d390 docs, wrapping structs: add links to memory>struct and <direct-T-array> 2016-01-09 13:54:21 -08:00
Jon Harper 53ce93a0da ffi docs, C unions are UNION-STRUCT: in factor 2016-01-09 13:54:21 -08:00
Jon Harper 3e84d30760 x11.xim: lookup-string, always use same buf and simplify 2016-01-09 20:21:13 +01:00
Jon Harper 2f92f29d2a x11 xlib, use Xutf8LookupString instead of XwcLookupString
XwcLookupString uses a locale dependant encoding, but was always
decoded using utf16. On my system, it was not utf16 that was used.
Xutf8LookupString always uses utf8 so it should work everywhere
2016-01-09 19:28:33 +01:00
John Benediktsson 7b28949331 tools.deploy: bump size. 2015-12-30 12:49:34 -08:00
John Benediktsson 7e40b60374 tools.deploy: add a MAIN:. 2015-12-25 21:11:21 -08:00
Björn Lindqvist 216a1234c2 tools.test: makes <test-failure> public 2015-12-17 23:50:49 +01:00
John Benediktsson 119f188423 tools.deploy: bump sizes, sigh. 2015-12-14 10:21:52 -08:00
Björn Lindqvist cbba6bbf95 bootstrap.image.tests: I screwed up the test case values -- fix them 2015-12-14 13:56:35 +01:00
Björn Lindqvist 7247906bf8 vm: remove vm-field-offset and context-field-offset
Shorter to just write "vm offset-of" and "context offset-of"
2015-12-14 09:29:18 +01:00
Björn Lindqvist 1378841c95 bootstrap.image.tests: new tests & fix for 32bit test failure 2015-12-14 06:54:12 +01:00
John Benediktsson 6ded345591 tools.deploy: bump deploy test sizes. 2015-12-13 14:25:45 -08:00
John Benediktsson 8cf8f023e2 tools.deploy: bump test sizes. 2015-12-13 09:02:55 -08:00
Björn Lindqvist b87dd9f6cb system-info.linux.tests: fix test, linux is at 4.2.x now 2015-12-13 13:56:37 +01:00
John Benediktsson 3affad7681 docs: using $maybe. 2015-12-11 17:05:45 -08:00
Björn Lindqvist 1a72f731e0 VM: now special-objects is used for -1, 0, 1 and t
The fields in the image_header aren't read or written to but I haven't
changed the format yet.
2015-12-10 10:22:38 +01:00
Björn Lindqvist 339b1b6466 VM: put the singletons t, -1, 0 and 1 in the special objects table
Having them there instead of as fields in the vm struct removes a bunch
of special handling. This commit just adds them and doesn't remove the
old ones to avoid potential chicken-and-egg bootstrap problems.
2015-12-09 21:31:13 +01:00
Björn Lindqvist d6a9122967 ui.backend.gtk: only run the tests on linux 2015-12-08 09:46:30 +01:00
Björn Lindqvist 24db8a5d7f compiler.tests.callstack-overflow: disable test for os x 64, see #1478 2015-12-08 02:16:51 +01:00
Björn Lindqvist 4551fdcb28 tools.test: print the callstack in test failures
So when mason reports a test failure it should include the whole
callstack. That should make it easier to catch the "No suitable
arithmetic method" random error that is hard to debug without a
callstack.
2015-12-04 16:57:40 +01:00
Björn Lindqvist bf8fe25271 bootstrap.*: fix for #1512, load docs after everything else
By making it so the help component is loaded almost last, all vocabs are loaded without docs and only then are they loaded. It should make it so you don't get cyclic dependency problems in doc files during bootstrapping.
2015-12-04 13:29:29 +01:00
Björn Lindqvist fc9eb0d5ac bootstrap.stage2: more logging output and fix for #1444
The error clearing needs to happen almost last so that an error is not
set in the image.
2015-12-04 13:16:21 +01:00
Björn Lindqvist 5deea76d55 ui.backend.gtk: set the active? to 100 in on-map, should fix #1506
what now happens is that configure events are skipped until the first
on-map signal is fired. seem to work fine in a variety of wm:s. if this
works well we can return active? to be plain boolean.
2015-12-04 00:57:19 +01:00
Björn Lindqvist a35895f222 compiler.cfg.intrinsics: fix doc and make tests work on 32bit 2015-12-01 13:43:45 +01:00
Björn Lindqvist 43f2592d1b ui.gestures: fix gesture docs, #1509 2015-12-01 11:01:34 +01:00
Björn Lindqvist 763b892a1d ui.*: move some of the gl initing to set-up-window, should fix #1510
it's also more efficent to run the check-extensions "1.0"
require-gl-version code only once when the window is created, rather
than once for each draw
2015-12-01 04:49:36 +01:00
Björn Lindqvist 02c80423ba compiler.cfg.intrinsics.slots: refactor + docs & tests 2015-11-28 01:55:12 +01:00
Björn Lindqvist 686975ec29 ui.tools.listener: only wait up to 5 seconds for the listener to start
otherwise unit tests can wait forever if there is an error in listener-thread
2015-11-27 13:15:17 +01:00
John Benediktsson e84e63fd0c tools.deploy: small bump in sizes. 2015-11-23 10:42:49 -08:00
Björn Lindqvist 6a2c36f5ec compiler.cfg.builder.blocks: help-lint fix 2015-11-23 16:32:01 +01:00
Björn Lindqvist 63fd4d25cf compiler.cfg.*: more fixes to pass basic-block on the stack than in a
dynamic variable
2015-11-22 01:06:11 +01:00
Björn Lindqvist 1421779c9e compiler.cfg.*: refactors words to take a block parameter instead of
using the basic-block dynamic variable

the idea is to make the code easier to follow by limiting the use of
dynamic variables
2015-11-22 00:37:34 +01:00
Björn Lindqvist e1b22e0af4 compiler.tree.dead-code.simple: small refactoring and docs 2015-11-22 00:37:33 +01:00
Björn Lindqvist 097b40ce41 compiler.tree.propagation.recursive: better counter-class 2015-11-22 00:37:33 +01:00
John Benediktsson 17b536c3a8 html.templates: use unless* instead of or. 2015-11-20 09:15:19 -08:00
John Benediktsson 6d21a5a073 urls: only create linked-hash if query is f. 2015-11-19 08:50:30 -08:00
Björn Lindqvist a3be724f5a compiler.tree.propagation.info: better code for wrap-interval 2015-11-16 12:30:24 +01:00
Björn Lindqvist 7301da0314 urls: fix for the test failure in the yahoo vocab
?set-at can't be used in set-query-param because it creates a normal
hashtable and we need a linked-assoc
2015-11-16 11:41:21 +01:00
Björn Lindqvist a915d3bdb4 stack-checker.known-words: nicer stack-effect declaration code
I think it looks better to put the primitives in groups and declare them
that way than one big block.
2015-11-15 11:10:03 +01:00
John Benediktsson a97f840daa urls.encoding: make query>assoc docs have checked example. 2015-11-04 15:16:36 -08:00
John Benediktsson 02c4ec3630 http.server.requests: fix LH{ } in tests. 2015-11-04 13:01:59 -08:00
Doug Coleman bda9092cef urls: Fix unit tests for linked-hash change 2015-11-04 10:45:02 -08:00
John Benediktsson 3c06b585d7 linked-assocs: move prettyprint stuff to its own vocab. 2015-11-04 09:16:02 -08:00
John Benediktsson a73340a032 urls.encoding: fix tests for linked-hash changes. 2015-11-04 08:43:08 -08:00
John Benediktsson f7b7b5afbf urls.encoding: preserve order of URL query parameters. 2015-11-04 08:36:56 -08:00
John Benediktsson 40d454758e linked-assocs: give linked-hash "LH{ }" literal pprint. 2015-11-04 08:36:24 -08:00
Sankaranarayanan Viswanathan 4ce72ddbfb Show persistent border on right clicking presentation gadgets 2015-11-04 07:55:13 -08:00
Alexander Iljin fc7b70a17e Rename variables in some stack declarations for consistency.
It doesn't look great when a word is called "v/n", but the declared
parameters are "u" and "n". Better to have the parameters "v" and "n".
Also for consistency all input parameters are named "v" for "vector" (or
"u" and "v" in the alphabetical order), and the result vector is always
"w".
2015-11-04 07:47:57 -08:00
John Benediktsson 986bf1b2f9 Revert "Auto load urls.secure when needed"
This reverts commit bb7740091e.
2015-11-04 07:45:46 -08:00
Björn Lindqvist 7b18618b3e compiler.cfg.linear-scan.allocation.state: fixes the the 64-bit-o-centric testcases 2015-11-04 13:54:14 +01:00
Björn Lindqvist bb6fa7267c compiler.cfg.linear-scan.allocation.state: help-lint fixes 2015-11-04 13:38:59 +01:00
Björn Lindqvist 3718137969 webbrowser.*: let's open the file in a detached process
Seems more useful overall and matches how it already works on Windows.
2015-11-04 11:35:40 +01:00
Björn Lindqvist f692200547 compiler.cfg.*: refactoring which removes spill-area-size and
spill-area-align from cfg

This makes the code for building the stack frame simpler.
2015-11-04 07:53:19 +01:00
Björn Lindqvist cfe4fec574 compiler.cfg.linear-scan.*: make it so cfg is given as an argument to next-spill-slot 2015-11-04 07:53:19 +01:00
Doug Coleman 67e7874e91 io.files.info.unix.linux: Special characters in mount points are encoded as octal escape sequences. 2015-11-03 15:55:14 -08:00
Doug Coleman d23aa7e1f1 vocabs.refresh.monitor: Add exception handling in monitor-loop so that if
a path isn't a valid vocabulary name then we print an error. Should spam
the console on windows downloads but 1) only for .com not the .exe, 2) we
prefer people to build from source in which case the :Zone.Identifier ADS
will not be present, and 3) it will educate people about ADS hopefully.

If it's annoying we can turn it off.
2015-11-02 21:36:10 -08:00
Doug Coleman acdd529983 io.monitors.windows: ADS pathnames crashing the monitors threads is the
real culprit. Back out change and print out the crash and error message instead of ignoring
errors!
2015-11-02 21:19:12 -08:00
Doug Coleman 51ecaa5ab4 io.files.windows: ALIEN: -1 puts an expired alien in the image. -1 <alien>
it is then.
2015-11-02 21:18:49 -08:00
Doug Coleman d645b2e17c io.monitors.windows: Strip the :Zone.Identifier from pathnames reported
by the file change api.
2015-11-01 19:58:05 -08:00
Doug Coleman 26e5c1aecf windows.kernel32, io.files.windows: Add support for listing alternate data
streams, e.g. file paths like foo.txt:Zone.Identifier.
2015-11-01 18:17:51 -08:00
Sankaranarayanan Viswanathan bb7740091e Auto load urls.secure when needed 2015-10-29 21:28:22 -07:00
Björn Lindqvist c773ce6463 ui.tools.listener: revert the commit that added UP/DOWN keybindings to
cycle history
2015-10-30 02:18:08 +01:00
Björn Lindqvist d4a127211d ui.backend.cocoa: fix for the silly error I made in 7bc1009973 2015-10-29 04:41:36 +01:00
Björn Lindqvist 705e2b8d4b ui.tools.listener: only recall if the lexer-error is aborted (#375) 2015-10-28 16:31:13 +01:00
Björn Lindqvist 7bc1009973 ui.*: make active? an integer 0-100
A UI backend can delay setting active? to 100 until the windows actually
is visible. That way, some redundant redraws that happen when the window
isn't visible is supressed. It makes the Windows and GTK UI startup a
little faster.
2015-10-27 19:00:28 +01:00
Björn Lindqvist 73893693d3 ui.backend.*: the offscreen buffer hooks appear unused - let's delete! 2015-10-27 16:58:01 +01:00
John Benediktsson dac179bc33 unicode.normalize: cleanup usings. 2015-10-26 18:25:52 -07:00
Björn Lindqvist 8cd471eda6 images.loader.gdiplus: both BGRA and BGRX formats are supported 2015-10-25 21:57:41 +01:00
John Benediktsson 8a2cf5d67b fonts: fix name of sans-serif font. 2015-10-25 13:32:02 -07:00
Björn Lindqvist 9ca00a3c75 help.stylesheet: make sizes calculated relative to the default-font-size
This makes Factors ui much easier to adapt to hidpi screens. You change
the default-font-size and elements should grow or shrink in proportion.
2015-10-24 14:44:30 +02:00
Björn Lindqvist 594eb3774d fonts: turn hardcoded font names and sizes into constants 2015-10-24 14:29:12 +02:00
Björn Lindqvist f2f7fd0b94 ui.tools.listener: recall the last command on parse errors 2015-10-23 17:59:04 +02:00
Björn Lindqvist 5f6ec2ba8b ui.tools.listener.tests: fix tests, manifest needs to be set and vocab used 2015-10-22 23:33:46 +02:00
Björn Lindqvist 436cb76dd3 windows.uniscribe: add SSA_FALLBACK and SSA_TAB to the flags, should fix #860 2015-10-22 23:14:55 +02:00
Björn Lindqvist ff118771ae ui.tools.listener: call interactor-finish before try-parse #375
Also changes the parse error handling in try-parse. If a parse error
occurs it is wrapped in a small quotation to defer handling it until the
quotation is ran.
2015-10-22 18:02:35 +02:00
Björn Lindqvist d15c5bced4 ui.tools.listener: tried to simplify stream-read-quot and handle-interactive 2015-10-22 18:02:35 +02:00