Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Compiler plugin for implementing incremental computation in user space (#10819) | cooldome | 2019-04-11 | 1 | -3/+21 |
| | | | | | | | | | | This plugin provides essential building block for implementing incremental computations in your programs. The idea behind incremental computations is that if you do the same calculation multiple times but with slightly different inputs you don't have to recompute everything from scratch. Also you don't want to adopt special algorithms either, you would like to write your code in standard from scratch manner and get incrementality for free when it is possible. The plugin computes the digest of the proc bodies, recursively hashing all called procs as well . Such digest with the digest of the argument values gives a good "name" for the result. Terminology loosely follows paper "Incremental Computation with Names" link below. It works well if you have no side effects in your computations. If you have global state in your computations then you will need problem specific workarounds to represent global state in set of "names" . SideEffect tracking in Nim also useful in this topic. Classical examples: Dashboard with ticking data. New data arrives non stop and you would like to update the dashboard recomputing only changed outputs. Excel spreadsheet where user changes one cell and you would like to recompute all cells that are affected by the change, but do not want to recompute every cell in the spreadsheet. | ||||
* | fixes #10585 | Araq | 2019-02-07 | 1 | -2/+5 |
| | |||||
* | add `getCurrentCompilerExe` to vmops (eg allows to get nim compiler at CT); ↵ | Timothee Cour | 2018-12-18 | 1 | -1/+4 |
| | | | | add tests for vmops (#9925) | ||||
* | Don't use deprecated fmod in VM | data-man | 2018-12-01 | 1 | -2/+1 |
| | |||||
* | Fixes #9671 (#9750) | Randy Smith | 2018-11-19 | 1 | -3/+0 |
| | |||||
* | deprecated ospaths (#9665) | Andreas Rumpf | 2018-11-09 | 1 | -3/+3 |
| | |||||
* | make `mod` on floats available in the VM (#9591) | skilchen | 2018-11-05 | 1 | -1/+5 |
| | | | | | | * make `mod` on floats available in the VM * add testcase * removed no longer needed imports | ||||
* | compiler refactoring; use typesafe path handing; docgen: render symbols ↵ | Andreas Rumpf | 2018-09-07 | 1 | -1/+1 |
| | | | | between modules | ||||
* | compiler API: final cleanups; improve security by diabling 'gorge' and friends | Andreas Rumpf | 2018-05-29 | 1 | -11/+12 |
| | |||||
* | more modules compile again | Andreas Rumpf | 2018-05-12 | 1 | -9/+7 |
| | |||||
* | introduce nkTupleConstr AST node for unary tuple construction; breaking change | Andreas Rumpf | 2018-04-13 | 1 | -2/+2 |
| | |||||
* | Added a few useful os calls to VM (#7440) | genotrance | 2018-04-12 | 1 | -19/+29 |
| | |||||
* | getEnv now supports a 'default' parameter; refs #6019 | Andreas Rumpf | 2017-10-30 | 1 | -1/+6 |
| | |||||
* | Fixes #6336 (#6337) | Yuriy Glukhov | 2017-09-06 | 1 | -2/+10 |
| | |||||
* | added system.gorgeEx that includes the exitCode; refs #4874; fixes #1994 | Araq | 2017-01-07 | 1 | -0/+6 |
| | |||||
* | stdlib and compiler don't use .immediate anymore | Andreas Rumpf | 2016-07-29 | 1 | -8/+8 |
| | |||||
* | Add ``readFile`` implementation for nimvm | Anatoly Galiulin | 2016-04-13 | 1 | -31/+37 |
| | |||||
* | os.walkDir is available at compile time | Araq | 2015-11-10 | 1 | -1/+9 |
| | |||||
* | VM produces objects. | Yuriy Glukhov | 2015-09-05 | 1 | -1/+1 |
| | |||||
* | system.locals is now a plugin for education | Araq | 2015-04-24 | 1 | -1/+1 |
| | |||||
* | Happy new year! | Guillaume Gelin | 2015-01-06 | 1 | -1/+1 |
| | |||||
* | fixes #1473 | Araq | 2014-11-12 | 1 | -0/+5 |
| | |||||
* | system.writeFile works at compile-time | Araq | 2014-10-02 | 1 | -0/+9 |
| | |||||
* | VM supports math and a few os procs | Araq | 2014-08-30 | 1 | -0/+66 |