Recent submissions

Comment · 10 years ago
> they have a cost associated with them and their misuse makes things worse

Omg. My assessment was correct, after all.

> Hence, they're not objectively superior to anything else

Of course they are.

Comment · 10 years ago
The study is related - it shows an attitude to self esteem, while you're apparently trying to compare the self esteem itself.
Comment · 10 years ago
> Click on the time (for example "2 minutes ago") to open the post and reply there.

Shit. Is it a new feature? I do not remember this working before.

> And my point is that you haven't answered why using a static type system over a dynamic one is a net win for people

I am not interested in diverting the discussion from the topic. The topic was that static typing is superior to dynamic typing - i.e., more powerful and more flexible.

How does it translate to a "net win"? I do not care, honestly. There are fare to many factors other than the language features.

Comment · 10 years ago
> Please stop editing your posts 40 minutes after you initially post them in order to muddle the post history.

HN does not allow to continue a thread below a certain threshold.

> I think strong static type systems are useful in many ways and I've already told you repeatedly that I prefer them.

This is not what I was talking about. Learn to read.

My point is that you do not understand what does it mean that a bigger type system is providing new semantics for the language. You still fail to understand it, obviously, because this is a central point of my proof, which you failed to comprehend.

> No one, in their next project, is going to build a dynamic type system in their static one, and then jerk off over that fact, when they could just start working on their ACTUAL project.

Take a look at pretty much any code in static languages - it is almost always doing exactly this: various degrees of dynamic typing on top of static. Sometimes it is ugly, sometimes it is done the right way (LLVM is a good example of this approach).

> Would you recommend to someone choosing between static and dynamic typing to start with a static one and then build their dynamic one on top of that?

Even you somehow heard something about the gradual typing - which is exactly an example of this.

> Your posts are full of bullshit, stupid assumptions and personal attacks.

Omg. I'm only responding to your attacks. You're an uninformed and incompetent side in this argument, not me.

Comment · 10 years ago
> Ok, only Americans have over-inflated self esteem,

Again. Only Americans are conditioned to value and cherish their self esteem. That was my statement.

Other cultures do not put any emphasis on self esteem (and many consider it as something shameful to even talk about it).

Comment · 10 years ago
Comment · 10 years ago
> What culture doesn't acknowledge self respect, and one's place in society relative to others?

What culture (besides the Northern Americans) would so blindly equate self respect to self esteem? The others understand better that you can respect yourself even without the overblown, unrealistic views on your own abilities and virtues.

Comment · 10 years ago
It is very childish and stupid to respond to a proof with a shit like "no, this is not a proof".

> The idea that static type systems are better to use (in general) because you can make dynamic type systems on top of them is simply not something you can just say and then have taken as fact.

Oh, did not realise you're so incompetent (although I should have guessed after your epic fail with the gradual typing). Do I have to prove that 2+2=4 too?

Once again: dynamic typing is a subset of static typing and therefore it is less powerful. Period. You cannot do anything with this fact.

Also, funny that you did not respond to my accusation that you believe that type systems are only for "validity checking". Which suggests that I was right.

Comment · 10 years ago
Americans are conditioned from the early childhood to value their "self esteem". The others do not even care.
Comment · 10 years ago
Sorry, cannot reply down the thread, so I'll put my answer here:

> This is not necessarily true: Static typing quite often requires you to satisfy the type system

We're talking about static typing in general, not some particular implementation of it.

Any static type system with an "anything" type (think of the System.Object in .NET, for example) allows a transparent fallback to dynamic at any time.

So, claiming that "there is a cost" is an outright lie.

> I haven't stated that dynamic typing is better, but I have stated that people claiming one or the other need to have proof.

You know, there is a little funny thingy called "logic". And one of the most common tricks in logic is a proof by contradiction. When you're asking for a proof that static typing is superior, the simplest way is to start with "let's assume dynamic typing is superior". This is exactly what I did. Unfortunately, you could not follow.

> If your programs are as airtight as the "proof" you've given here, I'm not sure I ever want to use them.

It's understandable that a person who do not know much about type systems in particular and PL theory in general also apparently does not know much about proofs and logic in general. After all, type theory and proof theory are indistinguishable.

Comment · 10 years ago
In a static type system, all of the expressions and expression-like constructs of your language may have a constraint attached to them, which guarantees that a value this expression yields have certain properties; In a static type system there is a well defined set of rules, describing how such constraints are transformed when expressions are combined in a certain way.

In a dynamic type system, no such constraints exist (besides for the constant literals, of course) and there are no rules for combining the constraints.

These definitions should cover all the spectrum.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton