Live data from Hacker News

Gedanken: A Simple Typeless Language (1970) [pdf]

pdf.yt

1–10 of 19 posts

Re: Gedanken: A Simple Typeless Language (1970) [pdf]

#5

Earlier quoted context omitted.

as is C

Almost

it's sort of like trying to argue that "Whose Line" is not a game without points. There are types there, but they don't matter at all. You can cast anything to anything and it will never fail.

Re: Gedanken: A Simple Typeless Language (1970) [pdf]

#6

Earlier quoted context omitted.

Almost

it's sort of like trying to argue that "Whose Line" is not a game without points. There are types there, but they don't matter at all. You can cast anything to anything and it will never fail.

    int f(float x) {
        return *(int *)x;
    }

Re: Gedanken: A Simple Typeless Language (1970) [pdf]

#7

Earlier quoted context omitted.

Almost

it's sort of like trying to argue that "Whose Line" is not a game without points. There are types there, but they don't matter at all. You can cast anything to anything and it will never fail.

Not sure where I was reading this the other day, but types have two advantages: abstraction and checking.

You can add a third one to that list: safety.

C has types in the sense that it allows you to do abstraction, and type checking, but it doesn't enforce safety.

2/3 doesn't seem bad to me, especially for a systems language.

I'd say that Typescript is in a similar position, you can cast anything to any type you want and there is no runtime check to stop you, but it helps you add structure to your code.

Types do very much matter in these languages in practice, since you want to very much want to avoid writing a giant mess.

Re: Gedanken: A Simple Typeless Language (1970) [pdf]

#9

Earlier quoted context omitted.

Almost

it's sort of like trying to argue that "Whose Line" is not a game without points. There are types there, but they don't matter at all. You can cast anything to anything and it will never fail.

Try to cast everything to the same type in C, and you quickly see that isn't true.

While C does not give you safety, the typing is important for ease of access to members of structures, for example, and for deciding the number of bits or bytes to operate on, and for deciding layout of a type.

The moment you go fully typeless, you suddenly need to be explicit about layout, size and signedness far more places.

Post reply on HN