# Would you choose one language over another language for something as minor as the presence or absence of semicolon?

**URL:** <https://forum.devtalk.com/t/would-you-choose-one-language-over-another-language-for-something-as-minor-as-the-presence-or-absence-of-semicolon/9807>\
**Category:** General Dev Chat\
**Tags:** syntax, programming-languages\
**Created:** [22 May 2021 09:28 UTC](https://forum.devtalk.com/t/would-you-choose-one-language-over-another-language-for-something-as-minor-as-the-presence-or-absence-of-semicolon/9807 "2021-05-22T09:28:58Z")\
**Posts on this page:** 11\
**Page:** 1

<div class="post-metadata">

**Author:** ![DevotionGeo](https://forum.devtalk.com/user_avatar/forum.devtalk.com/devotiongeo/32/1140_2.png) [@DevotionGeo](https://forum.devtalk.com/u/DevotionGeo)\
**Post date:** [22 May 2021 09:28 UTC](https://forum.devtalk.com/t/would-you-choose-one-language-over-another-language-for-something-as-minor-as-the-presence-or-absence-of-semicolon/9807/1 "2021-05-22T09:28:58Z")

</div>

I hate having mandatory semicolons in a language, no matter how beautiful the language is otherwise. What about you?

---

<div class="post-metadata">

**Author:** ![dimitarvp](https://forum.devtalk.com/user_avatar/forum.devtalk.com/dimitarvp/32/5599_2.png) [@dimitarvp](https://forum.devtalk.com/u/dimitarvp)\
**Post date:** [22 May 2021 10:01 UTC](https://forum.devtalk.com/t/would-you-choose-one-language-over-another-language-for-something-as-minor-as-the-presence-or-absence-of-semicolon/9807/3 "2021-05-22T10:01:35Z")

</div>

What’s the big deal? I prefer that to Python’s significant whitespace.

---

<div class="post-metadata">

**Author:** ![DevotionGeo](https://forum.devtalk.com/user_avatar/forum.devtalk.com/devotiongeo/32/1140_2.png) [@DevotionGeo](https://forum.devtalk.com/u/DevotionGeo)\
**Post date:** [22 May 2021 14:22 UTC](https://forum.devtalk.com/t/would-you-choose-one-language-over-another-language-for-something-as-minor-as-the-presence-or-absence-of-semicolon/9807/4 "2021-05-22T14:22:57Z")

</div>

> [@dimitarvp](#):
>
> What’s the big deal?

I think it’s because of the habit. Most of the languages I use lack a semicolon like Ruby, Elixir, Go, Kotlin and Swift. Even JavaScript lets you get away with not writing a semicolon, even if it’s recommended to write one.

> [@dimitarvp](#):
>
> I prefer that to Python’s significant whitespace.

Python’s significant whitespace was the exact reason I chose Ruby over Python when I was new to web development.

---

<div class="post-metadata">

**Author:** ![AstonJ](https://forum.devtalk.com/user_avatar/forum.devtalk.com/astonj/32/7_2.png) [@AstonJ](https://forum.devtalk.com/u/AstonJ)\
**Post date:** [22 May 2021 14:36 UTC](https://forum.devtalk.com/t/would-you-choose-one-language-over-another-language-for-something-as-minor-as-the-presence-or-absence-of-semicolon/9807/5 "2021-05-22T14:36:42Z")

</div>

I’m not a fan either, but I would probably judge based on overall feel or use of language 😃

---

<div class="post-metadata">

**Author:** ![Hallski](https://forum.devtalk.com/user_avatar/forum.devtalk.com/hallski/32/610_2.png) [@Hallski](https://forum.devtalk.com/u/Hallski)\
**Post date:** [22 May 2021 16:17 UTC](https://forum.devtalk.com/t/would-you-choose-one-language-over-another-language-for-something-as-minor-as-the-presence-or-absence-of-semicolon/9807/6 "2021-05-22T16:17:40Z")

</div>

Definitely prefer not to have them but wouldn’t base my choice in it. Also joining the choir of choosing it over significant white space.

---

<div class="post-metadata">

**Author:** ![dimitarvp](https://forum.devtalk.com/user_avatar/forum.devtalk.com/dimitarvp/32/5599_2.png) [@dimitarvp](https://forum.devtalk.com/u/dimitarvp)\
**Post date:** [22 May 2021 21:20 UTC](https://forum.devtalk.com/t/would-you-choose-one-language-over-another-language-for-something-as-minor-as-the-presence-or-absence-of-semicolon/9807/7 "2021-05-22T21:20:29Z")

</div>

I mean sure, not the best ergonomics but in Rust in particular the _lack_ of a semicolon means that you want to return this expression to the caller which, albeit easy to miss for a human, is enforced by a very strict compiler that will tell you very clearly what you did wrong. So really, not such a problem as many in the past made it to be.

There are languages with not very clear error messages however and there the semicolons – and their misplacement – can be a real productivity killer.

To that I say: don’t use these languages! 😉

---

<div class="post-metadata">

**Author:** ![mafinar](https://forum.devtalk.com/user_avatar/forum.devtalk.com/mafinar/32/723_2.png) [@mafinar](https://forum.devtalk.com/u/mafinar)\
**Post date:** [23 May 2021 02:25 UTC](https://forum.devtalk.com/t/would-you-choose-one-language-over-another-language-for-something-as-minor-as-the-presence-or-absence-of-semicolon/9807/8 "2021-05-23T02:25:46Z")

</div>

I don’t mind semicolons. Or lack of it. What I do mind is a high number of wtf in a language.

Edit: What @dimitarvp said.

---

<div class="post-metadata">

**Author:** ![kokolegorille](https://forum.devtalk.com/user_avatar/forum.devtalk.com/kokolegorille/32/575_2.png) [@kokolegorille](https://forum.devtalk.com/u/kokolegorille)\
**Post date:** [23 May 2021 11:00 UTC](https://forum.devtalk.com/t/would-you-choose-one-language-over-another-language-for-something-as-minor-as-the-presence-or-absence-of-semicolon/9807/9 "2021-05-23T11:00:11Z")

</div>

I don’t think it’s language which should adapts to programmers, but the opposite…

Even if a language has semicolon, space indentation or whatever, programming starts on a paper 🙂

---

<div class="post-metadata">

**Author:** ![OvermindDL1](https://forum.devtalk.com/user_avatar/forum.devtalk.com/overminddl1/32/52_2.png) [@OvermindDL1](https://forum.devtalk.com/u/OvermindDL1)\
**Post date:** [24 May 2021 18:08 UTC](https://forum.devtalk.com/t/would-you-choose-one-language-over-another-language-for-something-as-minor-as-the-presence-or-absence-of-semicolon/9807/10 "2021-05-24T18:08:57Z")

</div>

> [@DevotionGeo](#):
>
> I hate having mandatory semicolons in a language, no matter how beautiful the language is otherwise. What about you?

Few languages actually have truly mandatory semicolons (like C is one). Most semicolon usage in languages (like erlang) is actually just another operator, like `<left> + <right>`, but where `<left> ; <right>` is just the sequence operator that runs the left expression, throws away the result, then runs the right expression, and returns its result. Languages that use a semicolon as a statement terminator (like C) are indeed annoying, but when it’s a proper operator then it’s far better. ^.^

However, I don’t care one way or the other, a single token isn’t going to change a language usage for me at all.

---

<div class="post-metadata">

**Author:** ![steelx](https://forum.devtalk.com/user_avatar/forum.devtalk.com/steelx/32/1249_2.png) [@steelx](https://forum.devtalk.com/u/steelx)\
**Post date:** [26 May 2021 14:00 UTC](https://forum.devtalk.com/t/would-you-choose-one-language-over-another-language-for-something-as-minor-as-the-presence-or-absence-of-semicolon/9807/11 "2021-05-26T14:00:43Z")

</div>

I prefer semicolons ;

---

<div class="post-metadata">

**Author:** ![davearonson](https://forum.devtalk.com/user_avatar/forum.devtalk.com/davearonson/32/591_2.png) [@davearonson](https://forum.devtalk.com/u/davearonson)\
**Post date:** [1 June 2021 13:48 UTC](https://forum.devtalk.com/t/would-you-choose-one-language-over-another-language-for-something-as-minor-as-the-presence-or-absence-of-semicolon/9807/12 "2021-06-01T13:48:33Z")

</div>

It’s just one of many things that should be considered, if it makes any difference to you. All else being equal, or at least balanced, I’d go with the one that doesn’t require semicolons – but all else is rarely equal.
