-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Brian Svoboda edited this page Nov 16, 2017
·
15 revisions
Welcome to the Bok development wiki!
- Test build procedure with
setup.py
- Implement the local
bok.config
withConfigParser
- Include a more complete interface to
numpy
- array literals with {1 2 3}
- calling attributes like @pi push to stack
- Calling methods and attributes on python objects
- syntax, leading ".", e.g.
{{1 2}} .T
- check if callable for methods/attributes
- dict's `'a' 2] ['b' 3 dict``
- set's
[1 2 3 3] set
- tuples
[1 2 3] tuple
- syntax or functions for grouping arguments, positional into a list and keywords into a dictionary. In general however, if functions need 3 or more arguments, it will not be simple for stack manipulation reasons. New words can be defined however to provide simple interfaces
- syntax, leading ".", e.g.
- Object system
- quoting a single word with
\foo
like Factor - default method
.clone
to take a word and gives it the name\foo Bar.clone
- see the Factor white-paper for object system
- quoting a single word with
- More descriptive error handling with tracebacks
- Interactive stepping debugger
- Tests, either with
pytest
orhypothesis
- Command line interface for running scripts
$ bok foo.bok
- Fix the
import
system- Diamond problem for multiple imports to the same module
- Recursive/circular imports to the same module
- Documentation
- Complete docstrings for builtin functions
- Manual and reference documentation with
sphinx
- Interactive REPL improvements
- Command shortcuts with the F-keys (dump stack, repeat macro, help-browser, etc)
- Define macros like IPython to save typing
- Completion for sub-words, e.g.
foo.b -> foo.bar
- Interactive help-browser, like an
info
page for the docs