Live data from Hacker News

The Wake Programming Language

wakelang.com

11–20 of 58 posts

Re: The Wake Programming Language

#11
post #8

> Code as concise as javascript, with inheritance and typesafety and more Extremely minor potential nitpick: correct me if I'm wrong, but I think this sentence implies that Javascript is not type-safe, when it is indeed type-safe; it's just dynamically typed, and its type system gives meaning to all expressions (where that meaning is to signal an error in some cases).

I wouldn't call JavaScript type-safe by any type-theoretic definition. It allows operations that really make no sense for the types involved ([]+{} ??).

Re: The Wake Programming Language

#12
post #8

> Code as concise as javascript, with inheritance and typesafety and more Extremely minor potential nitpick: correct me if I'm wrong, but I think this sentence implies that Javascript is not type-safe, when it is indeed type-safe; it's just dynamically typed, and its type system gives meaning to all expressions (where that meaning is to signal an error in some cases).

Having types does not imply type safety. I think you're confusing "type safe" and "typed".

The terms are evidently murky: http://www.pl-enthusiast.net/2014/08/05/type-safety/#comment...

Re: The Wake Programming Language

#13
I think the top blurb would benefit from specifying what modern problems Wake is good at solving. Certainly, the rest of the docs give a better idea, but most programmers have a short attention span regarding brand new languages and won't get beyond the first paragraph.

Re: The Wake Programming Language

#14
post #13

I think the top blurb would benefit from specifying what modern problems Wake is good at solving. Certainly, the rest of the docs give a better idea, but most programmers have a short attention span regarding brand new languages and won't get beyond the first paragraph.

Agreed, I feel like every JavaScript framework of the week should have this as well. What advantages does this tool have over everything else that is similar to it?

Re: The Wake Programming Language

#15
post #11
post #8

> Code as concise as javascript, with inheritance and typesafety and more Extremely minor potential nitpick: correct me if I'm wrong, but I think this sentence implies that Javascript is not type-safe, when it is indeed type-safe; it's just dynamically typed, and its type system gives meaning to all expressions (where that meaning is to signal an error in some cases).

I wouldn't call JavaScript type-safe by any type-theoretic definition. It allows operations that really make no sense for the types involved ([]+{} ??).

I think that whether the semantics of the language make sense to a particular person isn't really the criterion for type-safety. The language does define what should happen in the case of the expression ([]+{}), so no violation of the type system occurs and the behaviour of the program is well defined.

Re: The Wake Programming Language

#16
post #8

> Code as concise as javascript, with inheritance and typesafety and more Extremely minor potential nitpick: correct me if I'm wrong, but I think this sentence implies that Javascript is not type-safe, when it is indeed type-safe; it's just dynamically typed, and its type system gives meaning to all expressions (where that meaning is to signal an error in some cases).

JS is type-safe in a way that is not useful in any way.

Re: The Wake Programming Language

#17
I'm not sure I like the closure syntax, with the explicit return. Most modern languages (Swift, Rust, Python (lambdas), Lisp if I can call it modern) support implicit returns and it looks much better. Maybe it's just the juxtaposition with the JS code, but I was confused for a second by the word "return" inside the closure, thinking that it returned from the original function with just the first result.

(I really like Rust's take on this with the semicolons—just leave off the semicolon to return—it makes the semicolon actually useful.)

Re: The Wake Programming Language

#18

the Wake language was on here a few days ago, in the form of an article titled: The Rewards of Creating a Programming Language. Other discussion here: https://news.ycombinator.com/item?id=9040029

Good memory! Yeah, I had posted that to Reddit, where it didn't do too well, but someone posted it here where (for some reason!) it did much better. Figured in addition to the story of creating Wake, I'd post the home page so people could look into it more!

> for some reason

I've typically found PL related articles do much better on Hacker News than Reddit, I think perhaps because of differing (but overlapping) target audiences. Always found it interesting what articles work here but not on Reddit (the converse isn't as interesting...)

Re: The Wake Programming Language

#19

I'm not sure I like the closure syntax, with the explicit return. Most modern languages (Swift, Rust, Python (lambdas), Lisp if I can call it modern) support implicit returns and it looks much better. Maybe it's just the juxtaposition with the JS code, but I was confused for a second by the word "return" inside the closure, thinking that it returned from the original function with just the first result. (I really lik…

Thanks! Great comment, I'd planned on adding implicit returns, and may copy rust on that one!

Re: The Wake Programming Language

#20
one very curious design decision is to allow type aliases either before or after the type. so, from the examples, you have

> setIdThenSave(newid Num, Bool recursively) { ... }

i like the idea of letting a type do double duty as a variable name if it's obvious in context, and being aliased by an explicit name if wanted/needed, but letting the order be irrelevant sounds like unnecessary flexibility to me - it makes writing no easier, and reading harder.

Post reply on HN