Stream: ideas

Topic: Change `...` to `todo` or other keyword?


view this post on Zulip notramo (Oct 01 2026 at 20:59):

I often use the ... keyword. However, due to sharing the dot with the method call syntax, in many places it's a parse error:

main! = |args| {
    _ = args
    ...
}

Putting it in parentheses helps:

main! = |args| {
    _ = args
    (...)
}

but its too complicated, compared to a todo:

main! = |args| {
    _ = args
    todo
}

view this post on Zulip notramo (Oct 01 2026 at 21:00):

Given that it's a construct that developers quickly use while writing the code, and not meant to be persisted, I think it would be simpler to use todo.

view this post on Zulip notramo (Oct 01 2026 at 21:01):

Another argument for todo: it's greppable, and shows up alongside the comment todos.

view this post on Zulip notramo (Oct 01 2026 at 21:02):

Also, quick in-editor searches for ... need actually a \.\.\., because some editors (including Helix and Flow) default to regex search on the / hotkey.

view this post on Zulip notramo (Oct 01 2026 at 21:03):

It's made worse by some keyboard layouts needing a modifier key for backslash.

view this post on Zulip notramo (Oct 01 2026 at 21:05):

For example, Hungarian layout requires AltGr+q, so to search for a ... it requires
AltGr+q . AltGr+q . AltGr+q .

view this post on Zulip notramo (Oct 01 2026 at 21:07):

9 keyboard strokes, of which 6 are combination pairs, which are slower because having to wait with the AltGr release until the q is pressed.

view this post on Zulip notramo (Oct 01 2026 at 21:07):

Compared to a todo keyword: 4 keystrokes, no combinations.

view this post on Zulip notramo (Oct 01 2026 at 21:10):

And even on the English layout, the dot and the backslash are both on the same hand (the two weakest fingers), compared to todo, which is alternated hands.

view this post on Zulip notramo (Oct 01 2026 at 21:11):

These matter a lot, since this keyword is mostly used when writing the code by hand.

view this post on Zulip Aurélien Geron (Oct 01 2026 at 21:12):

I like todo. I also think it's more explicit: I didn't know that ... meant To-Do, so I would have been confused by code containing it, whereas todo leaves no room for confusion. It's another language keyword though. crash "todo" is also pretty clear and not too long to type. So maybe we should just drop ...?

view this post on Zulip notramo (Oct 01 2026 at 21:14):

I didn't know that ... meant To-Do, so I would have been confused by code containing it

Yes, todo is also better understandable for newcomers and also for LLMs with insufficient training data.

view this post on Zulip notramo (Oct 01 2026 at 21:15):

crash "todo" is also pretty clear and not too long to type.

It's too long, when I just want to quickly get rid of some error. And the " character requires Shift key, twice in the expression.

view this post on Zulip notramo (Oct 01 2026 at 21:15):

Gleam has todo and it's great.

view this post on Zulip Aurélien Geron (Oct 01 2026 at 21:20):

Yeah, I'd prefer todo too. :+1:

view this post on Zulip Luke Boswell (Oct 02 2026 at 04:22):

The intent for the dots was documentation, I dont think we talked about using it like a todo

view this post on Zulip Luke Boswell (Oct 02 2026 at 04:22):

At least that is my fuzzy memory of it

view this post on Zulip Aurélien Geron (Oct 02 2026 at 04:40):

Interesting! Perhaps the docs generator could replace the todo keyword with ...?

view this post on Zulip notramo (Oct 09 2026 at 19:30):

@Richard Feldman, do you have opinions on this?

view this post on Zulip Richard Feldman (Oct 09 2026 at 20:45):

I think we should just make it not be a parse error in those places :smile:

view this post on Zulip notramo (Oct 09 2026 at 20:59):

The parse error is just one reason out of many.

view this post on Zulip notramo (Oct 09 2026 at 21:00):

But I added a Helix macro for inserting crash "TODO" with a single keypress, and it's not so bad.


Last updated: Oct 15 2026 at 17:56 UTC