Wiki page
[
todo] by
yumaikas
2017-07-05 15:30:49.
Artifact 414733bc66a18818399080aeb9ebb346a89e065b:
D 2017-07-05T15:30:49.902
L todo
N text/x-markdown
P 128736d256efea645be495b8a6af37e1ab941395
U yumaikas
W 1919
## TODO
### Math
- Add trig math words like `sin` and `cos`. [Remaining functions](https://pisc.junglecoder.com/home/apps/fossil/PISC.fossil/wiki?name=List+of+Math+Functions)
- Add exp math function
- (TODO) Add support for bignums
### Vector utilites
Look into adding vector shuffling words like the ones used in Jelly.
### Error handling
- Make sure that all "panic" type errors exit the script as they should.
### Testing
- Build a test runner (done)
- Write tests for words (WIP)
### Borrow Lua's pattern matching syntax
This will be simpler to implement, and will be easier to fit into the eventual opcode budgeting that I'd like to do in the future.
### On Hold: Regex handlings
- Add regex words
- Possibly add a regex ~ :PRE word
### IO
- More IO words. The bare basics have now been covered
### Strings and Parsing
- `>upper`
- `>lower`
- `int>string`
- `double>string`
### Collections
- A generic way to work with collections for things like `each` and so on that can replace the likes of `each-vec` and so on.
### IRC framework integration
Figure out a way to tie PISC into an IRC framework to make it easier to build a chat-bot server that can be scripted by PISC down the line.
(Note: IRCKit is a start here)
### Some kind of lite IDE in the browser
> I have some ideas around creating a IDE-lite dev enviroment for PISC that can be sandboxed and exposed to the internet for use in developing IRC bots
While it's not for IRC bots, the [playground](https://pisc.junglecoder.com/playground/) is a start on a PISC IDE-lite.
- Save/edit files local to browser (via localstorage)
- Expose XHR to PISC for scripty purposes
### Termbox bindings
If PISC is going to be used for console applications, binding to something like
[https://github.com/nsf/termbox-go](https://github.com/nsf/termbox-go) could be very useful.
Z 573c372862d3864d29dd573f0c5de697