M. Lanza

Results 45 comments of M. Lanza

In my library I deal with `undefined` and `null` as a singular entity, as Clojure does, as it should've been implemented anyway. The existence of `undefined` and `null` is nonuseful...

This is an opt in suggestion, so it would allow me to go my way and you to go yours.

Why don't you demonstrate what you're thinking with code and then I'll explain, because I'm not sure what you're thinking. ```js protocol ToString { tag; toString() { return `[object ${this[ToString.tag]}]`;...

Just look at my implementation, which I've realized and used for years as a blueprint. It's trivial. And I'm sure professional language implementers could do it even better than me.

In my case I defined a `Nil` type a substitute for the fact that one doesn't actually exist. It only exists to serve protocols, exactly as mine does. It's not...

It's worth noting that the proposed implementation only considers protocols for objects, things which would have a `this` context within a scope. ```js protocol Ordered { compare; lessThan(other) { return...

@michaelficarra - I've been looking at the proposal and I see plenty of examples for implementing protocols, but none for actually invoking them. Has the invocation syntax not been determined?...

That's awkward. I've called out some problems with it. I'll revisit this topic, when the newly-linked one reaches a consensus.

I really appreciate your willingness to consider the angles. Thank you for being open. I'm not just offering up the first ideas which occurred to me. I don't think it's...

Having [implemented protocols in my own library](https://github.com/mlanza/atomic) I'll offer my perspective. Protocols are contracts (or rather behaviors) applied to types so any object of a type automatically observes the contract....