Skip to content

Deal with the type system: we are not dynamic #266

@ahojukka5

Description

@ahojukka5

Do like Python, be slow like Python. Know what you do before compiling, and be fast like C. There's no free lunch, and Julia is not making miracles in the field of computer science.

Julia is solving a problem that shouldn't even exist, in the same manner as TypeScript is solving a problem that shouldn't exist. First, we have duck typing, how excellent. Then we introduced a number of problems as a result. Then we learned about TDD and began testing against errors that would not exist without runtime interpretation. Finally, everybody gets sane. Both Python and JavaScript introduced a typing system. Why? The first impression was, Hey, look, I can write x = 1, I save four keystrokes, I don't have to write int . And here we are. Python is slow and, at best, typed, and not even enforced. Someone could call it failure: unpredictable, almost type-free, functional crap, without any benefits.

I do still believe in the idea that everything is a field. It's doable, but it's totally different from thinking that field["foo"] = 2 and it would be somehow mystically fast. Get the speed and feel the pain. It's always a tradeoff.

Acceptance criteria:

  • zero-allocation field system, no exceptions

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions