skiplang / skip

A programming language to skip the things you have already computed
http://skiplang.com
MIT License
1.97k stars 66 forks source link

Incremental Compilation? #190

Open Kesanov opened 4 years ago

Kesanov commented 4 years ago

In docs/blog/2017-11-30-parallelism.md you stated that skip is going to have incremental compiler based on memoization:

Although this was a fun hack, the next big exciting change won't involve parallelism, and will take a lot longer than a weekend — it's making the compiler incremental, using Skip's own reactive memoizer to only recompile code affected by modified files. Stay tuned!

But there was no follow up post on this topic, even though it's almost 3 years already. Therefore, I have few questions:

  1. Does skip have incremental compiler?
  2. How many parts of the compiler are actually incremental?
  3. Was builtin meoization useful?
  4. If yes, are there also some examples where memoization (perhaps surprisingly) wasn't that useful?
Kesanov commented 3 years ago

Any update @josephsavona.

josephsavona commented 3 years ago

I stopped working on this project in late 2018. IIRC we did have incremental compilation working at that time - cc @pikatchu re the current status.

Kesanov commented 3 years ago

Thank you for your reply. Btw, since the project looks quite dead, are there any lessons-learned worth sharing?

dumblob commented 3 years ago

Raising my hand for lessons learned write-up (preferably an exhaustive one :wink:).