• fri@compuverse.uk
    link
    fedilink
    arrow-up
    5
    ·
    edit-2
    1 year ago

    Looks like it creates a few emoji printers in a vector, then prints them all. The output is all emoji, of course. The main function exits with a random return value just to be more quirky.

    I’m not sure what the purpose of the 😎 function is. In main that first predicate is always true, so it prints the poop emoji. I don’t know why it’s behind an if.

    Also, there’s a copy-paste error on line 31. Wrong emoji is used.

  • flashgnash@lemm.ee
    link
    fedilink
    arrow-up
    4
    ·
    1 year ago

    Now imagine the poor sod who gets this as an interview question

    “Please extend the following code in the same code style to sort [😀,😃,😄,😁,😆] using bubble sort”

    • zib@kbin.social
      link
      fedilink
      arrow-up
      2
      ·
      1 year ago

      If you really need some nightmare fuel, some of us use c++ every day and even enjoy it.

  • erogenouswarzone@lemmy.ml
    link
    fedilink
    arrow-up
    4
    arrow-down
    1
    ·
    edit-2
    1 year ago

    It would be great to use some emojis in coding.

    Imagine how much more readable it would be if you could break a loop with 💀 or return true with 👍. Or use ❓for ifs, or ↔️ for switch (the emoji didn’t work for that one). Or use an emoji to represent a custom object?

    Maybe the ECMA should get on that!

    Edit: I guess you can use emojis for custom objects in js.

    Edit 2: ➡ for console.log

    • SubArcticTundra@lemmy.ml
      link
      fedilink
      arrow-up
      0
      ·
      1 year ago

      You’d still be left with the brackets and braces though. It might make more sense in a whitespace-based language pike Python

      • erogenouswarzone@lemmy.ml
        link
        fedilink
        arrow-up
        0
        arrow-down
        1
        ·
        1 year ago

        I see your point. Personally, I like the brackets and braces, they help organize. Or maybe that’s just what I’m used to.

    • jimmux@programming.dev
      link
      fedilink
      arrow-up
      0
      arrow-down
      1
      ·
      1 year ago

      Programming typefaces with ligatures are a step in this direction.

      I would try this in something like Haskell, where some of the more exotic character sequences get tricky to recognise.

      Unison might be the best language to test this in. Having identifiers separate from the actual definitions, you can call anything whatever you want.

  • nothacking@discuss.tchncs.de
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    1 year ago

    This just prints:

    💩
    🍊
    🍉
    🍉
    🍍
    🍎
    

    Line 38 and 39 just check if a function that always returns false is false and if so, prints “💩\n”. (C++ uses the bit shift operator for file IO for some reason)

    Line 41 creates a vector of shared pointers to an abstract class, or in other words, an array of functions. Each function prints the emoji, mostly the same as the name, but not always. ( 🍒 is the exception, it prints “🍉\n”)

    43 and 44 just loop over the array and call every function inside, printing a bunch of emoji.

    Line 46 returns the result of std::rand(), but because the programer forgot to call srand, the result is always the same (1804289383 for me).

    (There are also a few missing includes, but I doubt this is intentional)