Daniel Watkins
117fa24623
Unwrap the PyResult returned by builtin_print
2018-08-05 14:53:11 -04:00
Daniel Watkins
5554160981
Reduce builtin_str match to two arms
2018-08-05 14:49:43 -04:00
Daniel Watkins
04cff8c968
Remove unused imports (and reorder affected lines)
2018-08-05 14:40:28 -04:00
Daniel Watkins
4f13e3db9c
Merge pull request #35 from yodalee/fizzbuzz
...
Fizzbuzz
2018-08-05 12:26:07 -04:00
yodalee
8b4549efbe
Add fizzbuzz snippet to tests
2018-08-05 10:32:25 -04:00
Daniel Watkins
cd940f13ba
Expand unimplemented message for Rem
2018-08-05 10:29:24 -04:00
Daniel Watkins
b8608bd513
Fix copy-paste error in str error message
2018-08-05 10:25:54 -04:00
Adam Kelly
5714cf14cf
Interpreter - read until empty line after first continuation.
2018-08-05 10:08:32 +01:00
yodalee
5da0432dda
add builtin_str a temp version
2018-08-05 16:06:59 +08:00
yodalee
f0f48d82bd
rearrange builtin function
2018-08-05 16:06:59 +08:00
yodalee
0d9d4c9ea4
add modulo in pyobject, vm
2018-08-05 16:06:49 +08:00
Windel Bouwman
fcf3518f4a
Merge pull request #30 from OddBloke/nums_in_funcs
...
Include numbers in valid identifier characters
2018-08-04 23:01:01 +02:00
Windel Bouwman
7b599d4a8d
Merge pull request #31 from OddBloke/basic_range
...
Naive builtin range function
2018-08-04 22:59:22 +02:00
Windel Bouwman
f66a330b13
Merge pull request #26 from cthulahoops/interpreter_improvements
...
Interpreter improvements
2018-08-04 22:57:21 +02:00
Daniel Watkins
2a52a15fa6
Restore perf_fib to being tested
...
We now have a range function that is sufficient for its purposes.
2018-08-04 16:26:06 -04:00
Daniel Watkins
164b5fe277
Implement naive range function
...
This just returns a list rather than a range object (which is what
CPython does), and only accepts a single integer argument.
Fixes #28 .
2018-08-04 16:25:07 -04:00
Daniel Watkins
cf7005602f
Implement new list creation with elements
2018-08-04 16:23:21 -04:00
Daniel Watkins
3e56bc1d60
Include numbers in valid identifier characters
...
Fixes #27 .
2018-08-04 16:00:15 -04:00
Adam Kelly
c6ef62ceac
Improved interpreter using compile single and with multiline input.
2018-08-04 20:47:34 +01:00
Adam Kelly
1333e624f6
Add Single mode to compile.
2018-08-04 20:47:34 +01:00
Adam Kelly
0d645bf1a9
Add PrintExpr instruction to vm.
2018-08-04 20:47:34 +01:00
Adam Kelly
a9afa76438
Test that an empty line parses.
2018-08-04 20:47:34 +01:00
Windel Bouwman
4bbff56d0e
Merge pull request #29 from RustPython/tests
...
Run snippet tests in Travis
2018-08-04 20:26:47 +02:00
Daniel Watkins
dc633ef818
Comment or move all currently-failing snippet tests
...
This allows us to make the snippet tests merge-blockers, whilst
improving over time.
2018-08-04 13:55:23 -04:00
Daniel Watkins
a9d6c8db87
Run snippet tests for stable and beta Rusts
2018-08-04 13:43:30 -04:00
Daniel Watkins
9e8c5fb960
First attempt to run snippet tests in Travis
2018-08-04 13:37:52 -04:00
Daniel Watkins
c857d75748
Restore running of benchmarks in test_snippets.py
...
This distinguishes them from regular snippet tests, and runs them
without trace logging (which was causing major slowdowns previously).
2018-08-04 12:51:12 -04:00
Daniel Watkins
402ca31423
Suppress cargo/jobserver log messages in snippet testing
...
They make the output unmanageably large, and don't provide any useful
information for debugging.
2018-08-04 12:51:12 -04:00
Daniel Watkins
31bdfe2cd7
Move performance snippets to a separate directory
2018-08-04 12:51:12 -04:00
Windel Bouwman
9f0360947a
Use boolean short circuit in expression logic
2018-08-04 18:14:33 +02:00
Windel Bouwman
3ed0b39831
Idea for short circuit logic
2018-08-04 17:44:38 +02:00
Windel Bouwman
a585d897c8
Return none at end of function
2018-08-04 17:02:56 +02:00
Windel Bouwman
131c34a96b
Fix build
2018-08-04 12:38:40 +02:00
Windel Bouwman
0f4f130d08
Add early sys module
2018-08-04 10:59:13 +02:00
Windel Bouwman
908f85b473
Merge pull request #23 from OddBloke/slice
...
Parse steps notation and support (positive) steps for strings
2018-08-04 10:10:38 +02:00
Windel Bouwman
3a19053c5b
Merge pull request #24 from OddBloke/unimplemented
...
Add more information to unimplemented! panics
2018-08-04 10:07:11 +02:00
Windel Bouwman
1d08e1bf57
Merge pull request #25 from OddBloke/fix_while_break
...
Emit a SetupLoop instruction during while loop compilation
2018-08-04 10:06:14 +02:00
Daniel Watkins
2d2f999c3a
Emit a SetupLoop instruction during while loop compilation
...
This means that breaks within while loops function correctly (as they
have a block that they can reference to work out where to jump to).
2018-08-04 01:25:28 -04:00
Daniel Watkins
b8a6662ca8
Negative steps for strings are unimplemented!
2018-08-04 00:56:20 -04:00
Daniel Watkins
13e421a979
Add more information to unimplemented! panics
2018-08-04 00:53:01 -04:00
Daniel Watkins
46257724e7
Add tests to snippet for stepped string slicing
2018-08-04 00:41:31 -04:00
Daniel Watkins
705c1c7dee
Implement stepped slicing for strings
2018-08-03 20:56:47 -04:00
Daniel Watkins
862442b635
Simplify the conversion of missing slice parts to None
2018-08-03 20:55:18 -04:00
Daniel Watkins
73b2d07578
Support parsing steps in slice syntax
2018-08-03 20:55:18 -04:00
Windel Bouwman
e1ce670d4b
Merge pull request #22 from OddBloke/locals_trace
...
Output locals mapping in trace logging
2018-08-03 17:23:47 +02:00
Daniel Watkins
3b81f806ab
Retain the previous locals output format
2018-08-02 19:18:35 -04:00
Daniel Watkins
e768f06d94
Panic on unexpected locals instead of just logging
2018-08-02 19:14:26 -04:00
Daniel Watkins
b95c473121
Output locals mapping in trace logging
...
The Locals line in the Frame Object output is now, for example:
Locals: {"num": RefCell { value: [PyObj int 9] }, "f": RefCell { value: [PyObj function] }}
2018-08-02 15:38:20 -04:00
Windel Bouwman
eb2cc5b055
Change rt to vm and change args into an object holding both args and kwargs
2018-08-02 17:28:33 +02:00
Windel Bouwman
f7aa1dd822
Remove executor trait since we can have mutual includes
2018-08-01 22:22:19 +02:00