"A unison program describes an entire distributed system. It includes deployment, scaling, failover, [etc]." You write one program for the whole system and deploy that system by running that program.
-
Show this thread
-
mapReduce has output `{Remote} b`. The `Remote` is an ability, or an effect system, tracked in the types. Unison can transfer an arbitrary computation to a remote node.
1 reply 0 retweets 1 likeShow this thread -
We have a primitive `at`: `http://Remote.at location AST` The code is sent to another node. (Sounds dangerous re security, we'll find out.)
2 replies 0 retweets 0 likesShow this thread -
Functions/types are internally represented as hashes of their implementation. So two things with the same implementation can have different names- makes serialization easy. It also means that you can casually rename stuff no problem- they're interchangeable.
2 replies 0 retweets 3 likesShow this thread -
The Unison codebase is an immutable data structure. "If you compile code, you never have to recompile it again- it's around forever." (Memory issues an issue? Hash collisions a thing?)
2 replies 0 retweets 1 likeShow this thread -
Dependency hell is vastly reduced in Unison. (wait: if you change the name, and THEN the implementation, will the other code be pointing at the old name?)
2 replies 0 retweets 0 likesShow this thread -
Instead of libraries, your program depends on hashes. So if two libraries depend on the same dependency, but different hashes, no problem. (Seems like this would have problems with security updates)
3 replies 0 retweets 0 likesShow this thread -
Type system stuff: It's crazy we're in TYOOL 2018 and error messages are bad. Let's take a page from elm and have the error explain the problem to you! For example: saying "All the types in this case match output should be the same, but they're not."
1 reply 0 retweets 2 likesShow this thread -
"This looks like a function call, but with Text where an operator should be. Are you missing an operator?" (This seems like it has potential to get really unhelpful if you're working off the beaten path)
1 reply 0 retweets 2 likesShow this thread -
(Why don't most new languages have structured compiler error output?) Seems like it would be incredibly useful.)
3 replies 0 retweets 7 likesShow this thread
We have error reflection in Idris; you can match on errors and rewrite them to be more informative if you know more of the domain. It's really useful, if tricky to use well at the moment...
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.