634
submitted 11 months ago by quazar@lemmy.world to c/programmerhumor@lemmy.ml

TIL about the greek question mark

Tell me, can you tell the difference between these two characters?

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

top 50 comments
sorted by: hot top controversial new old
[-] qaz@lemmy.world 120 points 11 months ago

Every syntax highligher shows this and VSCode even has a special case for this, this is not a real issue.

[-] theKalash@feddit.ch 58 points 11 months ago

I just tried and it just turns into a proper semicolon and everything works. (Sublime Text).

That might explain that:

In Unicode, it is separately encoded as U+037E ; GREEK QUESTION MARK, but the similarity is so great that the code point is normalised to U+003B ; SEMICOLON, making the marks identical in practice.

load more comments (1 replies)
[-] SomewhatOffBeat@ttrpg.network 113 points 11 months ago

Like r/programmerhumor, this community is already full of people who literally never programmed anything more than Hello World before.

[-] TimTamFlimFlam@discuss.tchncs.de 61 points 11 months ago

And just like Reddit you're complaining about it for absolutely no reason. How about we try to be a bit more welcoming and a bit less gatekeepery.

[-] IncognitoErgoCvm@reddthat.com 8 points 11 months ago

That's kind of an absurd position when the explicit purpose of segmented communities is to gatekeep content.

load more comments (13 replies)
[-] anarchyrabbit@discuss.tchncs.de 38 points 11 months ago

Just because a meme is not reality doesn't mean it can't be funny.

[-] exu@feditown.com 12 points 11 months ago

Did you expect anything different?

[-] funkless_eck@sh.itjust.works 11 points 11 months ago* (last edited 11 months ago)

programming hello world is doing better than most people and I applaud and welcome beginners.

I am little more than an amateur myself, entirely self taught, and yet I'm forever digging into various bits of code for my marketing job, because paying someone $400 to fix a recalcitrant css style in a week and a half is worse than just doing it myself.

load more comments (1 replies)
[-] P1r4nha@feddit.de 98 points 11 months ago

I get this warning in my IDE (VS Code) so I feel safe:

The character U+037e ";" could be confused with the ASCII character U+003b ";", which is more common in source code.

[-] XTornado@lemmy.ml 36 points 11 months ago

Well, there goes my diabolical plan, crushed like a bug under someone else's shoe. Back to the drawing board, I guess.

[-] Comment105@lemm.ee 3 points 11 months ago

Would be weird to be crushed like a bug under anyone else than someone else's or simply put your own shoe.

[-] XTornado@lemmy.ml 4 points 11 months ago

I meant the plan not me being crushed.

load more comments (1 replies)
[-] xtremeownage@lemmyonline.com 53 points 11 months ago

yea... every modern IDE makes it extremely obvious of the unicode character.....

SO.... yea...

If you really wanted to be evil, zero-width space is the worst.

https://symbl.cc/en/200B/

You don't see it.

[-] EtzBetz@feddit.de 50 points 11 months ago

Laughs in just removing all semicolons because it's not necessary in JS.

[-] Andrew15_5@mander.xyz 5 points 11 months ago

It is recommended. But in TS it is not necessary with rare exceptions.

[-] platypode@sh.itjust.works 19 points 11 months ago* (last edited 11 months ago)

That's what's really irks me be about JS--you can do just about whatever but you're not supposed to.

It's an imperative language, but best practices are to use it functionally.

You can omit semicolons, but best practices are to use them.

You can use sloppy equality, but best practices are to always use strict.

[-] TopRamenBinLaden@sh.itjust.works 18 points 11 months ago

JavaScript reminds me of an older brother who happens to be the most laid back stoner you could meet. "Like yea man, you should probably use semicolons, but I ain't gonna narc"

[-] fidodo@lemm.ee 9 points 11 months ago

After switching to typescript with linting and prettier I simply hate writing vanilla JavaScript anymore. Some people complain about the extra project setup needed but I find that time pays for itself immediately.

load more comments (11 replies)
[-] MotoAsh@lemmy.world 8 points 11 months ago

You need to remember that a lot of those best practices are to cover for the performance issues from misusing loosely typed variables.

The JavaScript engine can compile clean, type-safe code down to be almost as fast as properly compiled code. When you use various features like the loose equals or various object mutations and the like, the engine cannot optimize it, leaving your code much, much slower.

[-] fidodo@lemm.ee 5 points 11 months ago

I'll add that to my mountain of reasons for using typescript

[-] MotoAsh@lemmy.world 4 points 11 months ago

Yup! I love TypeScript, and I love the flexibility of JavaScript. With all of the type templates and generics and other black magic TypeScript has, it's pretty easy to even support the crazy stuff like mixins and contextual parameters (if I'm not speaking too loosely while avoiding proper terms!).

A lot of the crazy stuff won't optimize, but at least it goes to show how it's not really tying JavaScript's hands even when requiring TS everywhere.

[-] DrM@feddit.de 6 points 11 months ago

thanks to eslint enforcing it in the default rules it's necessary for most typescript projects

[-] NatoBoram@lemm.ee 4 points 11 months ago

Except that you should use Prettier for formatting instead of ESLint. That said, semicolons are useless noise

load more comments (5 replies)
[-] fidodo@lemm.ee 4 points 11 months ago

I wouldn't do it without an auto formatter. With prettier it will catch potential no semi colon issues.

load more comments (2 replies)
load more comments (1 replies)
[-] CanadaPlus 4 points 11 months ago

Great, now you just need to do the rest of the code.

[-] PowerCrazy@lemmy.ml 20 points 11 months ago

Unicode was a mistake.

[-] Unreliable@lemmy.ml 12 points 11 months ago
[-] AnUnusualRelic@lemmy.world 4 points 11 months ago

This file shows that the font my web browser uses is quite incomplete.

[-] drathvedro@lemm.ee 12 points 11 months ago

Вгь, Iмa gо sрrinкlе sоме cугilliс снаггастегs аll оvег sомеоnе's lаrаvеl vаlidатiоn гules

(The аеос's are the most evil ones)

[-] Aurenkin@sh.itjust.works 11 points 11 months ago

I thought zero width whitespace characters were the ones to go for if you want to be evil.

[-] unionagainstdhmo@aussie.zone 10 points 11 months ago

It's been a while but doesn't JavaScript work without semicolons and just fail silently?

[-] Chaphasilor@feddit.nl 8 points 11 months ago

Just remove everything that looks like a semicolons, problem solved. You don't need semicolons in JS

[-] nxfsi@lemmy.world 8 points 11 months ago

Why did Unicode even allow these symbols even exist? What happened to using a single encoding for similar symbols like in CJK? Uriel must be rolling furiously in his grave rn

[-] Squids@sopuli.xyz 37 points 11 months ago* (last edited 11 months ago)

Because the point of unicode is to accurately depict every sort of writing regardless of format, not to make a neat table of every unique glyph. Fonts may want to render the two differently or treat them differently. Same reason why there's a difference between an em dash and a quotation line mark

Same reason why unicode is full of random characters that only ever appear like thrice in some Russian coptic manuscript from the 3rd century - it's about being able to depict something, not perceived usefulness

Also excuse my ignorance, but who's Uriel? Because right now I just have the mental image of a very upset archangel which I'm guessing is not what you're referring to. I mean it could be - I'm pretty sure unicode would fall under his domain of literature

[-] nxfsi@lemmy.world 10 points 11 months ago

every sort of writing regardless of format

💯💯😹👁️👄👁️ well 👏👏 said! 🍌🍑💦🫄🏻🎉🎉

load more comments (2 replies)
[-] Zyansheep@programming.dev 7 points 11 months ago
[-] alokir@lemmy.world 5 points 11 months ago

Use both the latin x and the cyrillic х as variable names in the same scope. Your coworkers will thank you.

[-] RedstoneValley@sh.itjust.works 3 points 11 months ago

Might try that in CSV files

load more comments
view more: next ›
this post was submitted on 16 Aug 2023
634 points (90.2% liked)

Programmer Humor

31314 readers
29 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 4 years ago
MODERATORS