Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
stewoconnor
searching Neon…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
11 ms
·
1.
▲
by
stewoconnor
10mo ago
https://github.com/unisonweb/unison/blob/trunk/unison-hashin...
2.
▲
by
stewoconnor
10mo ago
aha yeah! good question! We have two different types of type declarations, and each has its own keyword: "structural" and "unique". So you can define two different types as as structural type Optional a = Some a | None s
3.
▲
by
stewoconnor
10mo ago
> congrats on the release Thank you! > Unison is among the first languages to ship algebraic effects (aka Abilities [1]) as a major feature. In early talks and blog posts, as I recall, you were still a bit unsure about how it would la
4.
▲
by
stewoconnor
10mo ago
https://www.unison-lang.org/docs/usage-topics/docker/
5.
▲
by
stewoconnor
10mo ago
yeah, unison cloud is like the "heroku for functions" if you wanna not think about how deployments work. But you can just run unison programs standalone or in a docker container or whatever: https://www.unison-lang.org&
6.
▲
by
stewoconnor
10mo ago
> Unison seems well-designed for this use case because it seems like you could easily run untrusted Unison code without worrying about it escaping its sandbox due to the ability system. (Although this obviously requires that you typechec
7.
▲
by
stewoconnor
10mo ago
I think Alvaro's at the Unison conference was a pretty cool demonstration of what you can do with the style of algebraic effects (called "abilities" in unison) https://www.youtube.com/watch?v=u5nWbXyrC8Y He i
8.
▲
by
stewoconnor
2y ago
It's possible that we no longer remember ALL of the evidence we had when we drafted this letter, but the letter links to two first hand accounts of wrongdoing. I also have also talked to multiple other women in the community that say t
9.
▲
by
stewoconnor
2y ago
we absolutely did this to protect the scala community and we weren't scared and didn't jump the gun. People had been talking about him as being problematic for years before the open letter
10.
▲
by
stewoconnor
2y ago
This was absolutely not based on hearsay. We made our decision to sign the letter based on direct evidence, not hearsay. The open letter links directly to evidence which is not hearsay.
11.
▲
by
stewoconnor
2y ago
I signed the letter and I fully stand by everything it says. I have talked to Yifan and I feel sorry for her and believe her. It was well known, and well discussed that women in the scala community knew to warn other women about Jon Pretty.
12.
▲
by
stewoconnor
3y ago
Yes this is unfortunately a problem that comes up with our current system. We had to solve this early on by distinguishing "unique" types form "structural" types. For types it is obvious that you want to make sure that t
13.
▲
by
stewoconnor
3y ago
We recently did a series of blog posts exploring how our remote programming model makes us a good fit for writing distributed map - reduce like programs. https://www.unison-lang.org/articles/distributed-datasets/
14.
▲
by
stewoconnor
3y ago
for us, A and B are the same Term since they have the same hash, they are just two different alias for that hash, so if you update either, you are effectively updating both. In fact if you had the function: double x = x + x and you were to
15.
▲
by
stewoconnor
3y ago
Unison developer here! Let's say you have some term: B = "Hello " and it hashes to #a3yx. Lets say you also have funcion: A = B ++ "world" which hashes to #c7c1 when we store the A function, we actually store it a
16.
▲
by
stewoconnor
4y ago
Yes, we additionally have functions builtin to the runtime that let you evaluate a term before you evaluate it to make sure it doesn't call any "forbidden" functions. So in our cloud runtime, we blacklist EVERY IO function, t
17.
▲
by
stewoconnor
4y ago
I'm not totally up to date on lisp and don't know anything about PicoLisp, so forgive me if there is stuff I'm missing :) but lemme try: Lets say you wrote a imaginary program to sum a column in a csv: (defun my-program ()
18.
▲
by
stewoconnor
4y ago
In one of our most recent blog posts we talked about the progress we are making on just-in-time native compilation: https://www.unison-lang.org/blog/jit-announce/ We are expecting to be a monumental speedup for us
19.
▲
by
stewoconnor
4y ago
Thanks for the reply :) > if it's handled by `Choose.toList` and then `Abort.toOptional` in that order you end up with `Optional [a]` whereas if you do in the other order you have `[Optional a]` right? I mean, not necessarily. Somet
20.
▲
by
stewoconnor
4y ago
It is up to the code handling the abilities to decide in which order to handle the abilities (or to handle them all at once). I can't think of any cases where it would make a difference in which order they were handled, however. Can yo
21.
▲
by
stewoconnor
4y ago
The relevant sourcecode is not available, we don't store any source code. All the relevant dependences MUST be availble in AST form though. I don't know what the social and legal issues might possibly be, though I might be missing
22.
▲
by
stewoconnor
4y ago
Its certainly a turn-off for some. One thing that we have as a potential future effort would be to enable an alternate surface syntax. Since we store an AST insteead of source code, we could create a parser/pretty printer for another s
23.
▲
by
stewoconnor
4y ago
Yes, we have stack traces. You might see some hashes in the middle of the stack traces, but whenever we do have a name, we'll show you the name. So if you are calling into an anonymous clousure, but functions in your call stack will ty
24.
▲
by
stewoconnor
4y ago
(I'm the a Unison employee that works mostly on distributed computing) There are a few things about unison that make this easier: * content addressed code * unison can serialize any closure I can ask for a serialized version of any clo
25.
▲
by
stewoconnor
4y ago
(Unison Developer here), yes we've done two such migrations this year. It has typically meant that we have an "are you ready to upgrade" message when you start up and the migration took less than a minute on my pretty large c