▲ 624 ▼ know the features of your language (lemmy.world) submitted 2 years ago by jroid8@lemmy.world to c/programmerhumor@lemmy.ml 145 comments fedilink hide all child comments
[–] carpelbridgesyndrome@sh.itjust.works 12 points 2 years ago (8 children) Please don't use #2. It is how you get the goto fail bug permalink fedilink source hideshow 8 child comments replies: [–] UnrepententProcrastinator@lemmy.ca 10 points 2 years ago (1 child) But I really need to go. permalink fedilink source parent hideshow 1 child comment replies: [–] unique_hemp@discuss.tchncs.de 1 point 2 years ago Then use golang permalink fedilink source parent [–] Uriel_Copy@lemmy.world 3 points 2 years ago (1 child) Should you even be using goto? I was taught to avoid it like the plague permalink fedilink source parent hideshow 1 child comment replies: [–] carpelbridgesyndrome@sh.itjust.works 4 points 2 years ago Apple wrote bugged TLS code that broke using unbraced ifs with a goto, hence the name "goto fail". You don't need a goto to break this code though. All you need is a second indented line under the if permalink fedilink source parent [–] cupcakezealot@lemmy.blahaj.zone 1 point 2 years ago 10 goto 20 20 goto 10 permalink fedilink source parent [–] camelbeard@lemmy.world 1 point 2 years ago (2 children) Can you explain? 1 and 2 seem like the same logic? Are they compiled differently? To me number 2 is just the cleanest and most easy to read. But I really need to get more used to lambda's permalink fedilink source parent hideshow 2 child comments replies: [–] carpelbridgesyndrome@sh.itjust.works 3 points 2 years ago (1 child) #2 is also the most insideous to update. Add another indented line to one of the conditions and the cotrol flow completely breaks while visually appearing fine. C and a number of other languages have annoying pair of parallel syntax systems that makes it easy for people to read code one way and computers to compile it another. People read the indentation and newlines while compilers count braces and semicolons. #2 gets rid of the braces and makes control flow driven by semicolons making human visual inspection more likely to fail permalink fedilink source parent hideshow 1 child comment replies: [–] camelbeard@lemmy.world 1 point 2 years ago Thanks for the reply (not really sure why someone would downvote you for answering a question). permalink fedilink source parent
[–] UnrepententProcrastinator@lemmy.ca 10 points 2 years ago (1 child) But I really need to go. permalink fedilink source parent hideshow 1 child comment replies: [–] unique_hemp@discuss.tchncs.de 1 point 2 years ago Then use golang permalink fedilink source parent
[–] unique_hemp@discuss.tchncs.de 1 point 2 years ago Then use golang permalink fedilink source parent
[–] Uriel_Copy@lemmy.world 3 points 2 years ago (1 child) Should you even be using goto? I was taught to avoid it like the plague permalink fedilink source parent hideshow 1 child comment replies: [–] carpelbridgesyndrome@sh.itjust.works 4 points 2 years ago Apple wrote bugged TLS code that broke using unbraced ifs with a goto, hence the name "goto fail". You don't need a goto to break this code though. All you need is a second indented line under the if permalink fedilink source parent
[–] carpelbridgesyndrome@sh.itjust.works 4 points 2 years ago Apple wrote bugged TLS code that broke using unbraced ifs with a goto, hence the name "goto fail". You don't need a goto to break this code though. All you need is a second indented line under the if permalink fedilink source parent
[–] cupcakezealot@lemmy.blahaj.zone 1 point 2 years ago 10 goto 20 20 goto 10 permalink fedilink source parent
[–] camelbeard@lemmy.world 1 point 2 years ago (2 children) Can you explain? 1 and 2 seem like the same logic? Are they compiled differently? To me number 2 is just the cleanest and most easy to read. But I really need to get more used to lambda's permalink fedilink source parent hideshow 2 child comments replies: [–] carpelbridgesyndrome@sh.itjust.works 3 points 2 years ago (1 child) #2 is also the most insideous to update. Add another indented line to one of the conditions and the cotrol flow completely breaks while visually appearing fine. C and a number of other languages have annoying pair of parallel syntax systems that makes it easy for people to read code one way and computers to compile it another. People read the indentation and newlines while compilers count braces and semicolons. #2 gets rid of the braces and makes control flow driven by semicolons making human visual inspection more likely to fail permalink fedilink source parent hideshow 1 child comment replies: [–] camelbeard@lemmy.world 1 point 2 years ago Thanks for the reply (not really sure why someone would downvote you for answering a question). permalink fedilink source parent
[–] carpelbridgesyndrome@sh.itjust.works 3 points 2 years ago (1 child) #2 is also the most insideous to update. Add another indented line to one of the conditions and the cotrol flow completely breaks while visually appearing fine. C and a number of other languages have annoying pair of parallel syntax systems that makes it easy for people to read code one way and computers to compile it another. People read the indentation and newlines while compilers count braces and semicolons. #2 gets rid of the braces and makes control flow driven by semicolons making human visual inspection more likely to fail permalink fedilink source parent hideshow 1 child comment replies: [–] camelbeard@lemmy.world 1 point 2 years ago Thanks for the reply (not really sure why someone would downvote you for answering a question). permalink fedilink source parent
[–] camelbeard@lemmy.world 1 point 2 years ago Thanks for the reply (not really sure why someone would downvote you for answering a question). permalink fedilink source parent