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
Björn Lindqvist
0795d21e46
ui.backend.gtk: on-key-press and on-key-release can be merged into one
...
on-key-press/release handler
2015-10-22 18:02:35 +02:00
Björn Lindqvist
9b5cb445ee
tools.ps.linux: recover from missing file in ps-cmdline, fixes #1120
2015-10-20 16:55:48 +02:00
Björn Lindqvist
8bb96cbfd1
ui.gadgets.incremental: fix so that the scrolled of gadgets are ungrafted
2015-10-18 17:35:26 +02:00
Björn Lindqvist
0f803aa84b
ui.gadgets.tests: clear the layout queue, so test dont interfere with
...
other tests
2015-10-17 15:58:59 +02:00
Björn Lindqvist
27f54fc123
ui.gadgets.tests: fix the test (layout-queue is a vector now)
2015-10-16 22:28:31 +02:00
Björn Lindqvist
d2181a9e71
ui.gadgets.incremental: trivial scrolling, maybe solves #1488 ?
2015-10-16 10:55:48 +02:00
Björn Lindqvist
4812cec634
ui.gadgets.buttons: memoize the roll button themes pens
...
It reduces memory usage by about 10% for the #1488 test on my machine
and doesnt seem to have any bad side-effects.
2015-10-16 09:20:29 +02:00
Björn Lindqvist
9af7be2ef9
ui: the layout-queue is more efficient as a vector than a dlist
...
Improves memory usage in the #1488 example from about 20,4% to 17,4% on
my machine.
2015-10-15 18:34:49 +02:00
Björn Lindqvist
1873eda1d2
ui.gadgets: ensure that layout-later yields if the queue gets to large
...
This improves memory utilization a lot for #1488 . Otherwise the queue
grows to two million entries before being processed.
2015-10-15 16:29:49 +02:00
Björn Lindqvist
302220c535
dlists: new word dlist-length for getting the length
2015-10-15 16:27:23 +02:00
Björn Lindqvist
c0d1d2f331
ui.*: a little more ui docs
2015-10-15 16:27:15 +02:00
Björn Lindqvist
420ca29795
ui.tools.listener: make it so up/down arrows can be used for history
...
cycling
It's how it works in most CLIs so it's nice if it works in Factor too.
2015-10-14 03:05:16 +02:00
Björn Lindqvist
f9e5d4f22c
ui.backend.gtk: tune the order of the setup tasks in (open-window)
...
The fix for #1307 made bug #776 come back. Apparently gtk is kind of
britle so the widget setup must be done in a very specific order.
2015-10-14 00:22:26 +02:00
Björn Lindqvist
575da3e478
VM: fix so that errno is set if MoveFileEx fails, should fix #1490
2015-10-12 12:19:21 +02:00
Björn Lindqvist
37cd54cfbb
io.files.windows.tests: windows test for the save-image not failing failure #1489
...
this one really should always throw permission denied or else something
is very spooky
2015-10-11 04:21:43 +02:00
Björn Lindqvist
e35087fb22
io.files.windows: fix incorrect parsing of file attribute bitfield in win32-file-attributes
2015-10-11 04:11:30 +02:00
Björn Lindqvist
e8841a4967
classes.struct: fix for struct equality and hashcode #1194
...
Instead of comparing the structs underlying byte arrays, get their slots
and compare that.
2015-10-10 23:58:04 +02:00
Björn Lindqvist
81ad3e21cb
tuple-arrays: initial-values can be reused here to create the tuple
...
array sequence
2015-10-10 23:58:04 +02:00
Doug Coleman
8e90bd3dec
kernel32: Fix a typo, fix a constant value, another typo, add three more
...
flags to the monitors api.
2015-10-09 20:38:30 -07:00
Doug Coleman
db793e06f6
io.files.windows: SetFilePointer takes a PLONG not a uint pointer.
2015-10-09 19:50:06 -07:00
Doug Coleman
78f9fe9053
io.monitors.windows: make a DWORD ref instead of a uint. probably
...
irrelevant but it's what the win32 api header uses.
2015-10-09 19:21:24 -07:00
Björn Lindqvist
77f0d0042e
unix.ffi,windows.winsock: add the rest of the AI_* flags
...
Currently unused, but they are useful if you are calling the getaddrinfo
function directly
2015-10-08 15:29:14 +02:00
Björn Lindqvist
75b8b4a408
io.servers: filter the list of addrspecs in listen-on so that only
...
usable ones remains
"localhost" resolve-host can return unusable ipv6 addresses on hosts not
supporting ipv6. So a filtering step is needed in listen-on.
2015-10-08 15:08:07 +02:00
Björn Lindqvist
2f4c8ee07a
listener: only call parser-quiet? off when listener starts
...
it probably shouldn't be called on every input loop because then if you
set parser-quiet? to t, the setting will be undone
2015-10-05 17:04:36 +02:00
Björn Lindqvist
cc4bb991b2
webapps.wiki.example: new vocab to show how the wiki webapp should be
...
run
it's a little tricky to figure out so a vocab demonstrating it is useful
2015-10-04 03:07:29 +02:00
Björn Lindqvist
28c179cf59
furnace.recaptcha: logic in recaptcha-url was wrong, fix and test case
2015-10-04 02:26:02 +02:00
Björn Lindqvist
0a3b4b4872
io.sockets.secure.debug: use <test-secure-config> in some places
...
the word can be reused in a few places when setting up ssl. it removes
some duplicated code
2015-10-04 01:25:11 +02:00
John Benediktsson
29f94f8a65
http.server.static: better fix for cgi-docs issue.
2015-10-02 11:32:20 -07:00
John Benediktsson
36c002f567
http.server.cgi: different fix maybe.
2015-10-02 11:25:36 -07:00
John Benediktsson
761f0d630e
Revert "http.server.cgi: fix for the dependency cycle http.server.cgi <=>"
...
This reverts commit 51c5484e24
.
2015-10-02 11:12:56 -07:00
Björn Lindqvist
51c5484e24
http.server.cgi: fix for the dependency cycle http.server.cgi <=>
...
http.server.static (#1311 )
2015-10-02 14:19:47 +02:00
Björn Lindqvist
6b940cb972
furnace.auth.login: name of the realm is already set in the <login-realm> constructor
2015-10-02 13:14:26 +02:00
John Benediktsson
30182a4d38
debugger: adding strerror of the errno to io-error.
2015-10-01 08:15:39 -07:00
Björn Lindqvist
dbcfc178ff
io.directories.unix,environment.unix: better to use
...
native-string-encoding over hardcoding utf8
2015-10-01 15:52:51 +02:00
Björn Lindqvist
ffc441ad63
VM: looks like ERROR_C_STRING is never thrown, so it can be removed
2015-09-29 23:12:56 +02:00
Alexander Iljin
13b4b76632
Fix a word in some old documentation on lazy lists.
2015-09-29 09:12:35 -07:00
Alexander Iljin
156a2d0b90
Minor documentation fixes.
2015-09-29 09:12:29 -07:00
John Benediktsson
2dea9bab74
ui.backend.gtk: small typo fix.
2015-09-28 14:48:20 -07:00
Björn Lindqvist
94f863f33e
ui.backend.gtk: make it so configure-im is called after realize ( #1307 )
...
gtk_im_context_set_client_window must be called with a realized window
otherwise IM won't work,
http://lists.maemo.org/pipermail//maemo-developers/2006-January/002337.html
2015-09-28 15:33:36 +02:00
Björn Lindqvist
be7fc6f7c9
logging: let's include the tb when logging errors, makes it way easier
...
to debug!
2015-09-24 11:43:48 +02:00
John Benediktsson
924fc60e30
io.ports: bring back file read performance, ignoring zeroes.
2015-09-23 20:07:53 -07:00
Doug Coleman
84e0034168
io.standard-paths.unix: iterm2 integration has some spew before every bash command if you have enabled shell integration. these commands end in ascii 7, so find the last one, strip it off, and then split on ":". Fixes the mac graphviz install problem.
2015-09-23 17:11:47 -07:00
John Benediktsson
b644afb019
stack-checker.inlining: fix help-lint.
2015-09-23 17:10:43 -07:00
Björn Lindqvist
4890239c3c
compiler.tree.propagation.tests: #1370 specific test
2015-09-22 09:03:16 +02:00
Björn Lindqvist
804348287c
Docs: fix a bunch of help-lint warnings
2015-09-22 08:52:59 +02:00
Björn Lindqvist
c5b92cedcb
compiler.*: even more compiler docs
2015-09-22 08:52:59 +02:00
Björn Lindqvist
4db173cadb
compiler.*: random doc and tests updates
2015-09-22 08:52:59 +02:00
Björn Lindqvist
3e485652fe
compiler.tree.propagation.slots: looks like you can do without the
...
constructor-output-class word
2015-09-22 08:52:59 +02:00
Björn Lindqvist
09ad5bd617
compiler.tree.propagation.slots: docs & tests for the vocab
2015-09-22 08:52:59 +02:00
Björn Lindqvist
4ee88bdc3d
compiler.tree.propagation.info: better logic for comparing value-infos
...
Now the slots of the value infos only matter if the class of the first
info is at least as large as the class of the second info
2015-09-22 08:52:37 +02:00
Björn Lindqvist
bc0cdff2c6
compiler.tree.propagation.info: fixed value-info<= so that it handles
...
slots correctly
if a slot is defined for a value-info, then it can't be <= a value-info
without that slot defined
2015-09-22 08:52:37 +02:00
Björn Lindqvist
86d35982ac
compiler.cfg.linear-scan.allocation.splitting: better def for split-uses
...
it seems to be just as fast as the wordier one
2015-09-22 08:52:37 +02:00
Björn Lindqvist
ea67379751
compiler.tree.*: new tests
2015-09-22 08:52:37 +02:00
Björn Lindqvist
b9ce4910af
compiler.tree.*: docs
2015-09-22 08:52:36 +02:00
Björn Lindqvist
aaef9af863
compiler.cfg.*: random doc updates
2015-09-22 08:51:46 +02:00
Björn Lindqvist
a1153e6de1
compiler.tree.propagation.info: more docs and tests for the vocab
2015-09-22 08:51:46 +02:00
Björn Lindqvist
bb8b77419f
compiler.tree.propagation.nodes: the loop-nesting variable appears unused
2015-09-22 08:51:05 +02:00
Björn Lindqvist
44092bf78d
compiler.tree.propagation.*: better to use 2array than the "cuter" /\ word
2015-09-22 08:51:05 +02:00
Björn Lindqvist
9369f8216f
compiler.tree.propagation.constraints: docs for this vocab
2015-09-22 08:51:04 +02:00
Björn Lindqvist
508ddc5c0b
compiler.cfg.linear-scan.ranges: merge adjacent ranges when adding them
...
this way, the number of live interval ranges you have to deal with is
much smaller
2015-09-22 08:51:04 +02:00
Björn Lindqvist
89e261f673
compiler.cfg.linear-scan.ranges: remove the live-range definition and
...
use integer pairs instead
so instead of ranges being a sequence of live-ranges it is now a
sequence of integer pairs instead. That makes the
compiler.cfg.linear-scan.ranges simpler and easier to generalize
2015-09-22 08:51:04 +02:00
Björn Lindqvist
2943e7f246
compiler.cfg.linear-scan.ranges: new word ranges-endpoints and remove relevant-ranges
2015-09-22 08:51:04 +02:00
Björn Lindqvist
8c781639ed
compiler.cfg.linear-scan.ranges: move more range-related features into
...
this vocab
2015-09-22 08:51:04 +02:00
Björn Lindqvist
fb45bc278f
compiler.cfg.linear-scan.live-intervals: the reg-class slot can be
...
removed
it's always the same as vreg>> rep-of reg-class-of so no need to store
that data twice
2015-09-22 08:51:04 +02:00
Björn Lindqvist
68c6654763
compiler.cfg.linear-scan.*: move words for splitting and intersecting ranges to the compiler.cfg.linear-scan.ranges vocab
2015-09-22 08:51:04 +02:00
Björn Lindqvist
b8d47ed845
compiler.cfg.linear-scan.ranges: new vocab to contain all the range
...
related stuff from live intervals
2015-09-22 08:51:03 +02:00
Björn Lindqvist
d0aae5cc20
compiler.cfg.linearization: number-blocks can set the number>> accessor
...
instead of using the numbers dynamic variable
2015-09-22 08:51:03 +02:00
John Benediktsson
d5c5a1389d
ui.gadgets.paragraphs: pref-dim of { 0 0 } if no children.
2015-09-20 09:45:05 -07:00
John Benediktsson
e0bcd7423b
wrap.words: make it work with empty input.
2015-09-20 09:44:17 -07:00
John Benediktsson
d6b545a10b
html.streams: fix tests.
2015-09-14 20:32:45 -07:00
John Benediktsson
ba3f342bf1
help.html: cleanup extra spaces.
2015-09-14 15:43:33 -07:00
John Benediktsson
74d8e43312
help.html: simplify html by saving styles as classes.
...
We store the CSS classes in the HTML <style> tag.
2015-09-14 13:32:38 -07:00
John Benediktsson
59caf874a3
syntax: removing #! as a comment character.
...
We don't need two types of comments and shebang (#!) is handled
natively by the lexer, so the original reason for #! is not valid.
2015-09-09 18:28:08 -07:00
John Benediktsson
e477f6996f
Fix comments to be ! not #!.
2015-09-08 16:15:10 -07:00
John Benediktsson
75e50ec5e0
images.loader: use accessors in tests.
2015-09-06 08:23:17 -07:00
Björn Lindqvist
5684fab484
images.loader.gdiplus: fix for the call to GdipBitmapLockBits
...
GdipBitmapLockBits might trigger gc so the GpRect struct must be copied
to stable stack memory so that the collector doesn't move it.
2015-09-06 15:15:01 +02:00
Björn Lindqvist
721048bbb9
bootstrap.image.tests: total 20 -> 18
2015-09-03 13:18:26 +02:00
John Benediktsson
2435307fb3
peg: some cleanup.
2015-09-02 13:14:01 -07:00
Björn Lindqvist
bc7f9ee669
VM: always use undecorated names when loading ffi functions
...
For win32, Factor tries four different function names when loading
stdcall and fastcall functions, in case decorated names are used in the
dll. It seems to not be necessary because a dll meant for 3rd party use
will always export undecorated
names (http://blogs.msdn.com/b/oldnewthing/archive/2004/01/12/57833.aspx ).
2015-09-02 21:54:41 +02:00
Björn Lindqvist
9725169ca7
compiler.cfg.intrinsics.misc: use the vm-special-object-offset word
2015-09-02 21:54:36 +02:00
Björn Lindqvist
de4917e6a1
VM: give the exception handling special object a real name
2015-09-02 21:54:33 +02:00
Björn Lindqvist
22887c5816
VM: get rid of the odd RT_EXCEPTION_HANDLER relocation
...
The address to the win32 relocation handler can be stored in a special
object and be accessed by jit-install-seh. Doing it that way is better
because you can remove a lot of special code related to that relocation
type.
2015-09-02 21:54:30 +02:00
Björn Lindqvist
85e45ae29e
compiler.constants: remove a bunch of constants that are unused
...
(or only used by the defunkt arm backend)
2015-09-02 21:54:24 +02:00
Björn Lindqvist
a89b0c2b30
Docs: reorg of the compiler.constants docs a little
2015-09-02 21:54:21 +02:00
Björn Lindqvist
cee0b19324
VM: the ffi-signal-handler and ffi-leaf-signal-handler primitives are unused
2015-09-02 21:54:15 +02:00
John Benediktsson
b28a24c7df
peg: fix some old docs that referred to "p1".
2015-09-02 10:34:59 -07:00
Jon Harper
6ee9fad443
formatting: fix docs for padding and use a better example
...
Make the padding number coherent between the example and the docs.
Also bump it from 3 to 10 because [[3.14 "%'#5f" printf]] is "3.140000"
because the default precision is 6.
2015-08-30 18:43:59 +02:00
Jon Harper
03630e8100
peg.ebnf: support escaped double quote in a string
2015-08-30 18:43:58 +02:00
Doug Coleman
b2a51dfeb2
vocabs.metadata: wrap test in a with-manifest to ensure there's a manifest. Fixes #1463 .
2015-08-27 22:28:30 -07:00
Doug Coleman
2a520191e1
vocabs.metadata: Fix test so it stops trying to load the wrong platform vocabulary forever. Fixes #1463 .
2015-08-27 18:51:40 -07:00
Doug Coleman
bb16ef8a86
windows.kernel32: add more bindings
2015-08-27 11:29:26 -07:00
Björn Lindqvist
663e5e2a09
VM: fix jit-signal-handler-prolog/epilog to account for the home space
...
Windows 64bit abi requires callers to reserve 32 bytes of home space in
the stack frame which the callee is free to clobber. Previous versions
of VS didn't compile code to take advantage of the home space so it
worked fined. VS2015 however, is using the home space which causes
registers and flags that were supposed to be saved to be
overwritten. The fix is to put a little extra empty space at the bottom
of the stack frame.
2015-08-26 20:23:25 +02:00
Björn Lindqvist
10464e7e4e
VM: LEAF_FRAME_SIZE is 16 bytes on all platforms so we can simplify it
2015-08-26 20:23:15 +02:00
John Benediktsson
8db66d9dd3
ui.gestures: update action gesture docs, thanks @jonenst!
2015-08-24 10:27:00 -07:00
John Benediktsson
e45e669fd6
locals.parser: change docs for with-lambda-scope.
2015-08-24 10:21:35 -07:00
John Benediktsson
3154e70b88
vocabs.metadata: add some tests.
2015-08-23 18:43:36 -07:00
John Benediktsson
087b8df798
vocabs.metadata: fix for error refactoring.
2015-08-23 18:37:34 -07:00
Björn Lindqvist
59b7a50567
VM: removing the get_datastack/retainstack/callstack primitives
...
they can all be implemented using the
datastack/retainstack/callstack-for primitives and the less primitives
the better!
2015-08-23 18:36:30 -07:00
Doug Coleman
f6c1d00c37
ui.baseline-alignment: Don't divide f by 2. Also, can't put ``0 or`` after
...
``max-cap-height`` because it breaks something else.
2015-08-19 17:20:45 -05:00
Doug Coleman
3649dd2764
ui.backend.cocoa.views: Don't throw an error on weird mouse buttons. Fixes #1453 .
2015-08-18 23:22:55 -07:00
John Benediktsson
e8cc383388
minor cleanup.
2015-08-17 20:32:28 -07:00
John Benediktsson
399d01f56e
strings.parser: finish removing triple-strings.
...
parse-string => parse-short-string (on the same line)
parse-multiline-string-until => parse-full-string
2015-08-17 19:49:12 -07:00
John Benediktsson
ff880262cb
ui.gadgets.editors: make it easier to set and get default-text.
2015-08-16 14:29:21 -07:00
John Benediktsson
6de244da44
ui.tools.browser: use default-text to make search box prettier.
2015-08-16 13:45:29 -07:00
John Benediktsson
f24444e990
ui.gadgets.editors: allow action-fields to have a default text.
2015-08-16 13:45:16 -07:00
John Benediktsson
f3608deb63
ui.tools.browser: better to remove page-color than change it.
2015-08-16 12:58:38 -07:00
John Benediktsson
7dd0acbf0f
help.stylesheet: add back page-color and override in ui.tools.browser.
2015-08-16 12:54:56 -07:00
John Benediktsson
c957ab876c
prettyprint: fix for -> rename.
2015-08-16 12:39:08 -07:00
John Benediktsson
ace299b5c7
help: fix some html navigation styles.
2015-08-16 11:38:38 -07:00
John Benediktsson
81cbf71d27
help: make the default print prev/next links but then modify ui.tools.browser to do what it used to do.
2015-08-16 11:33:24 -07:00
John Benediktsson
92762cb56b
help.html: fix navigation links at top.
2015-08-16 11:33:24 -07:00
Doug Coleman
f414323d1d
prettyprint: change -> to => for newparser and -> cocoa syntax. Alternatives are possible.
2015-08-16 10:59:03 -07:00
John Benediktsson
6b440e5e81
ui.gadgets: fix help-lint warnings.
2015-08-16 10:46:28 -07:00