this post was submitted on 05 Jul 2024
866 points (97.9% liked)

Programmer Humor

32744 readers
687 users here now

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

Rules:

founded 5 years ago
MODERATORS
 
top 50 comments
sorted by: hot top controversial new old
[–] lurch@sh.itjust.works 208 points 5 months ago (2 children)

all lines not terminated by a single space are comments

[–] tabarnaski@sh.itjust.works 86 points 5 months ago

There's a special place in hell for you

[–] Ziglin@lemmy.world 53 points 5 months ago (1 children)

Also each line starts with a semicolon and you have to escape spaces in strings using a double forward slash

[–] turbowafflz@lemmy.world 49 points 5 months ago (3 children)

I realized a while ago that there's nothing stopping me from writing rust like this

;println!("This is great")
;println!("I think everyone should write rust like this")
;println!("Probably works in most languages that use semicolons")
;
[–] miningforrocks@lemmy.ml 15 points 5 months ago (1 children)

Also a spicial place in hell for you

[–] rovingnothing29@lemmy.world 7 points 5 months ago

Can we add the comefrom function too?

load more comments (2 replies)
[–] manucode@infosec.pub 120 points 5 months ago (14 children)

It uses XML-like syntax:

<fun>
  <name>sum</name>
  <in>
    <int>foo</int>
    <int>bar=0</int>
  </in>
  <out><int>foo+bar</int></out>
</fun>
[–] kameecoding@lemmy.world 61 points 5 months ago

This deserves to be added to the list of human rights violations

[–] VitaminF@feddit.org 46 points 5 months ago (3 children)
<fun>
  <name>sum</name>
  <in>
    <int>
      <name>foo</name>
    </int>
    <int>
      <name>bar</name>
      <default_value>
        <int>0</int>
      </default_value>
    </int>
  </in>
  <out>
    <int>
      <calculation>
        <numerical_operation>
          <operator_plus>
            <operand>
              <var>foo</var>
            </operand>
            <operand>
              <var>bar</var>
            </operand>
          </operator_plus>
        </numerical_operation>
      </calculation>
    </int>
  </out>
</fun>
[–] manucode@infosec.pub 13 points 5 months ago (3 children)

How did you come up with such a ****ingly stupid syntax?!

[–] hedgehog@ttrpg.network 19 points 5 months ago (1 children)

They probably have experience with Spring

[–] VitaminF@feddit.org 10 points 5 months ago (1 children)

I imagined what an Elasticsearch query style Python XML syntax would look like.You must share my pain.

[–] luciferofastora@lemmy.zip 7 points 5 months ago

That's grotesque and you have my condolences

load more comments (2 replies)
load more comments (2 replies)
[–] _stranger_@lemmy.world 30 points 5 months ago (2 children)

The whitespace is not only required, but it must be tabs and spaces.

[–] TheRealJefe@lemmy.world 10 points 5 months ago

Calm down, Satan

[–] kewko@sh.itjust.works 8 points 5 months ago (1 children)

Compiler rolls the dice if your only required indentation is accepted as space or tab. Per line.

load more comments (1 replies)
[–] notabot@lemm.ee 19 points 5 months ago

I like it, this is clearly very enterprisey and solution focused, but I would like to suggest a couple of amendments if I may?

  • Namespaces We should make full use of namespaces. Make the structural tags be in a language specific namespace (to be referenced in every function spec, obviously) but change the in an out params to use the parameter name as the tag, namespaced to the function they're for, with a type attribute.

  • In memory message queues Have all function invocations be marshaled as xml documents posted to an in memory message queue. Said documents should use a schema that validates the structure and a function specific schema to validate the types of arguments being passed. Namespace everything.

I reckon we could power a medium sided country if we could generate energy from the programmers despair.

[–] Pilon23@feddit.dk 19 points 5 months ago

Can you please link to a medium article on how this will help utilize AI blockchain so i can show it to management on Monday?

[–] JackbyDev@programming.dev 10 points 5 months ago (1 children)

Make sure to make ample use of mixed content elements.

<statement><var>bar</var> = <int>0</int></statement>
[–] aphlamingphoenix@lemm.ee 5 points 5 months ago (3 children)
statement: 
  comparison:
    - kind: libcompare.EQUALS
      comparators:
        - foo
        - bar
      whentrue:
        statement: 
          streaming: 
            - kind: libstreams.PRINT
               content: foo equals bar
      whenfalse:
        statement: 
          streaming: 
            - kind: libstreams.PRINT
               content: foo does not equal bar
load more comments (3 replies)
[–] anonymoose@lemmy.ca 7 points 5 months ago

You monster

[–] breakcore@discuss.tchncs.de 5 points 5 months ago

Oh my, I feel woozy …

load more comments (6 replies)
[–] bottleofchips@lemmy.blahaj.zone 99 points 5 months ago (2 children)
[–] lurch@sh.itjust.works 70 points 5 months ago

...but intended for web, but you can also misuse it for apps and system services

[–] qaz@lemmy.world 15 points 5 months ago (1 children)

...to an intermediate set of instructions for a virtual machine...

...called the brainfuck interpreter

[–] enleeten@discuss.online 11 points 5 months ago (1 children)

Brainfuck.NET Interpreter that uses modified Java bytecode instructions.

[–] qaz@lemmy.world 7 points 5 months ago

Yes brainfuck with some Java Bytecode instructions for syscalls.

[–] MIDItheKID@lemmy.world 47 points 5 months ago (1 children)

Confusion like this got me my current job. They were looking for somebody with experience in "Microsoft Endpoint Configuration Manager", and I look that up and I'm like "Oh, that's SCCM, I do that". Go through the interview process they keep asking me if I know Endpoint Configuration Manager and I'm like "yeah, for sure". I get the job. Day one, the other systems engineer is like "here is the link to our Endpoint Manager Tenant", and I'm like "oh... Shit I have never ever used this"

Well... Ends up Endpoint Configuration Manager and Endpoint Manager are two different things. Fortunately for me they are pretty similar in function and rely on knowledge of Windows and Powershell, which I know.

So my first 2 weeks of work was taking a shitload of courses in Endpoint Manager and watching a lot of videos and learning it inside and out.

2 years later and I'm an Endpoint Manager/Intune pro.

[–] BambiDiego@lemmy.world 55 points 5 months ago

90% of IT and software jobs are "I have common sense, know how to look up information, and my boss is intimidated by my work so they don't question it."

[–] DumbAceDragon@sh.itjust.works 31 points 5 months ago (1 children)

Make it completely untyped. Everything's just a string.

[–] AdamEatsAss@lemmy.world 13 points 5 months ago (1 children)

I think white space should be used to represent basic functions too. For example 3 spaces can be used to sum two values while 4 spaces can be used to subtract.

load more comments (1 replies)
[–] mcmodknower@programming.dev 31 points 5 months ago (2 children)

Or make a language named everything so you can say "i program in everything"

load more comments (2 replies)
[–] 01189998819991197253@infosec.pub 27 points 5 months ago

And its syntax is nothing like python haha

[–] sunoc@sh.itjust.works 24 points 5 months ago (1 children)

Make it purely functional, lisp based with reversed Polish notation and APL symboles, I dare you mf

[–] AkatsukiLevi@lemmy.world 22 points 5 months ago

Make it completely ignore indentation

[–] Australis13@fedia.io 18 points 5 months ago

Make sure it's not whitespace sensitive and requires explicit typing, just to mess with everyone.

[–] mogoh@lemmy.ml 17 points 5 months ago* (last edited 5 months ago)
[–] dandroid@sh.itjust.works 14 points 5 months ago* (last edited 5 months ago)

Make it so the capitalization affects the scope.

Oh wait.

(Sorry, I recently had to switch to golang for work, and I'm just not used to it yet, and I'm getting annoyed by some of these design decisions)

[–] umbraroze@lemmy.world 13 points 5 months ago (1 children)

Just today I heard someone whining about how in LinkedIn and other recruitment sites there's like five bazillion profile tag options for RDMBSes and various dialects of SQL... when in actuality the recruiters are probably only concerned if the developer can do a bloody SELECT and stuff.

load more comments (1 replies)
[–] sasquash@sopuli.xyz 13 points 5 months ago

There is a Tiger Jyhton version for the web https://www.tigerjython.ch/en

But at least just for educational purposes😅

[–] Mio@feddit.nu 13 points 5 months ago

Just call it Script.

[–] Zangoose@lemmy.world 12 points 5 months ago* (last edited 5 months ago) (3 children)

Screw it. Let's actually make python script an ISA that gets run on physical hardware with no higher level tooling. Then we can have the python virtual environment which runs this for fools who don't have the right hardware. Finally, when people start complaining about naming we make Python Script 2.1, which is a JIT language built on top of IL that looks nothing like either of them but can emulate both python and python script with the performance cost of being a quarter as fast as both.

load more comments (3 replies)
[–] Colonel_Panic_@lemm.ee 10 points 5 months ago

PythonSharp Script Java Edition

[–] Ghostalmedia@lemmy.world 8 points 5 months ago

Make a UX or Project management tool with “Java” in the name so newbie recruiters look for people in the wrong department.

They already do this, but this would make them do it even more.

[–] theterrasque@infosec.pub 7 points 5 months ago (2 children)

And just to top it off, make this pythonscript a dialect of rust

load more comments (2 replies)
[–] agelord@lemmy.world 7 points 5 months ago
[–] bitfucker@programming.dev 6 points 5 months ago

Make CScript, an interpreted, duck-typed language

[–] Sparky@lemmy.blahaj.zone 6 points 5 months ago

What if every variable would have to use a pointer that points to a reference of the data in a central array. In normal languages you'd need a variable to store said array, but what if it too has to reference itself in itself, so we get some funky recursion.

[–] muntedcrocodile@lemm.ee 6 points 5 months ago (4 children)

So the matlab thing where all lines not terminated by semi colon are printed except use Greek question marks instead of semi colons.

load more comments (4 replies)
load more comments
view more: next ›