Campfyre
  • Communities
  • Create Post
  • Create Community
  • heart
    Support Lemmy
  • search
    Search
  • Login
  • Sign Up
TadoTheRustacean@programming.dev to Programmer Humor@programming.devEnglish · 2 年前

thisIsGoingToBeASeriousDebate

programming.dev

message-square
41
fedilink
265

thisIsGoingToBeASeriousDebate

programming.dev

TadoTheRustacean@programming.dev to Programmer Humor@programming.devEnglish · 2 年前
message-square
41
fedilink
alert-triangle
You must log in or # to comment.
  • dauerstaender@feddit.de
    link
    fedilink
    arrow-up
    49
    ·
    2 年前

    Unsafe block detected. Extermination initiated. There is no hiding from memory safety!

  • 30p87@feddit.de
    link
    fedilink
    arrow-up
    40
    arrow-down
    1
    ·
    2 年前

    Personally,

    echo Hello World!
    
    • pranaless@beehaw.org
      link
      fedilink
      arrow-up
      31
      ·
      2 年前
      use std::process::Command;
      
      fn main() {
          Command::new("sh")
              .arg("-c")
              .arg("echo Hello World!")
              .spawn()
              .unwrap();
      }
      

      Like this?

      • 30p87@feddit.de
        link
        fedilink
        arrow-up
        10
        ·
        2 年前

        No, more like

        use std::process::Command; fn main() { Command::new("sh").arg("-c").arg("echo Hello World!").spawn().unwrap(); }
        

        .
        Just a little bit shorter, as it seems /s

        • funkajunk@lemm.ee
          link
          fedilink
          English
          arrow-up
          8
          ·
          2 年前

          I just fucking threw up

          • 30p87@feddit.de
            link
            fedilink
            arrow-up
            6
            ·
            2 年前

            I did too. Multiple times in fact, I had to look at the other Rust code!

        • TadoTheRustacean@programming.devOP
          link
          fedilink
          arrow-up
          2
          ·
          2 年前

          Isn’t echo a shell builtin?

          • pranaless@beehaw.org
            link
            fedilink
            arrow-up
            1
            ·
            2 年前

            Yes and no. While coreutils does provide an echo binary, shells also have a built-in for optimisation purposes.

            At first I had the code calling the binary directly, but then changed it to spawning a shell (and so using the builtin). It’s very cursed either way.

  • umbraroze@kbin.social
    link
    fedilink
    arrow-up
    20
    ·
    2 年前

    Oh you fancy PC people and your fancy syscall instruction.

    I still don’t know why I could remember jsr $ab1e. I didn’t even write that much assembly.

    • AVincentInSpace@pawb.social
      link
      fedilink
      English
      arrow-up
      1
      ·
      2 年前

      That looks like a 6502 instruction. What system is it from?

  • r00ty@kbin.life
    link
    fedilink
    arrow-up
    19
    ·
    2 年前

    Or, you could just go the whole hog. Create your own simple CPU emulator, design a basic 8bitesque CPU, give it an output port that is the console, and load up some basic ASM to cycle through Hello World to the console port.

  • xmunk@sh.itjust.works
    link
    fedilink
    arrow-up
    17
    ·
    2 年前

    System.out.println

  • starman@programming.dev
    link
    fedilink
    English
    arrow-up
    21
    arrow-down
    4
    ·
    2 年前

    Console.WriteLine("Hello World!");

  • DumbAceDragon@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    15
    ·
    2 年前

    echo "Hello world"

    This is different from the other two echos here, this is Nim not Bash.

  • Speiser0@feddit.de
    link
    fedilink
    arrow-up
    15
    arrow-down
    1
    ·
    edit-2
    2 年前

    Definitely left. Right one won’t be optimized. (And there are so many some mistakes in your inline asm…)

    • TadoTheRustacean@programming.devOP
      link
      fedilink
      arrow-up
      1
      ·
      2 年前

      What mistakes?

      • Speiser0@feddit.de
        link
        fedilink
        arrow-up
        6
        ·
        2 年前

        Mostly the missing listing of clobbered registers. Other than that it’s mostly just that you’re doing useless things, like manually putting the stuff into the registers instead of letting the compiler do it, and the useless push and pop. And the loop is obviously not needed and would hurt performance if you do every write like that.

        asm!(
        "syscall",
        in("rax") 1,
        in("rdi") 1,
        in("rsi") text_ptr,
        in("rdx") text_size,
        
        )
        

        (“so many” was inappropriate, sorry.)

        • TadoTheRustacean@programming.devOP
          link
          fedilink
          arrow-up
          1
          ·
          2 年前

          I am hopeless at getting the text_ptr simpler than i64::from_str_radix(&format!(“{:p}”, my_string)[2…], 16).unwrap(); How can i get it the normal way?

          • Speiser0@feddit.de
            link
            fedilink
            arrow-up
            2
            ·
            2 年前

            Just use str::as_ptr().

            Here’s an example (disclaimer: I haven’t used inline asm in rust before, expect issues): https://godbolt.org/z/sczYGe96f

  • Arthur Besse@lemmy.ml
    link
    fedilink
    arrow-up
    8
    ·
    2 年前

    https://www.gnu.org/fun/jokes/helloworld.html

  • nonearther@lemmy.ml
    link
    fedilink
    English
    arrow-up
    11
    arrow-down
    3
    ·
    edit-2
    2 年前

    console.log(“Hello World!”)

  • lugal@sopuli.xyz
    link
    fedilink
    arrow-up
    10
    arrow-down
    3
    ·
    2 年前
    def main(): 
        print("Hello world") 
    
  • 257m@sh.itjust.works
    link
    fedilink
    arrow-up
    5
    ·
    edit-2
    2 年前
    #include <stdio.h>
    
    int main(int argc, char** argv)
    {
        printf("hello, world");
    }
    
  • DNOS@reddthat.com
    link
    fedilink
    arrow-up
    5
    ·
    edit-2
    2 年前

    Ec Emm this side is the best one …

    ++++++++[< +++++++++>-]<. ++++[<+++++++>-]<+. +++++++… +++.

    ++++++[<+++++++>-]<++. ------------. ++++++[<+++++++++>-]<+. <. +++. ------. --------.

    ++++[<++++++++>-]<+.

  • MonkderZweite@feddit.ch
    link
    fedilink
    arrow-up
    5
    arrow-down
    1
    ·
    edit-2
    2 年前

    plan 9 cat vs GNU longcat meme

    edit: reddit image linking is broken?

    • AMDIsOurLord@lemmy.ml
      link
      fedilink
      arrow-up
      4
      ·
      2 年前

      Well, the GNU version does more and is more documented. The Plan9 code is frankly shitC, even for 1980z

      But this monstrosity is something else

      • 257m@sh.itjust.works
        link
        fedilink
        arrow-up
        1
        ·
        2 年前

        Plan 9 does the job. GNU is better for the end user. But if I had to maintain that stuff I would definitely want to maintain the Plan 9 code and not the GNU code.

      • MonkderZweite@feddit.ch
        link
        fedilink
        arrow-up
        1
        arrow-down
        1
        ·
        2 年前

        Of course, not always is shorter better.

    • rhpp@programming.dev
      link
      fedilink
      arrow-up
      2
      ·
      2 年前

      reddit image linking is broken?

      Well you didn’t link to a reddit image, you linked to Google image search result page which is not an image.

      • rhpp@programming.dev
        link
        fedilink
        arrow-up
        1
        ·
        2 年前

        deleted by creator

      • MonkderZweite@feddit.ch
        link
        fedilink
        arrow-up
        1
        arrow-down
        1
        ·
        2 年前

        I did that because the image didn’t show in reddt.

        • rhpp@programming.dev
          link
          fedilink
          arrow-up
          3
          ·
          2 年前

          Looks like you need to insert the raw image link, not Reddit’s media wrapper link.

          plan 9 cat vs GNU longcat meme

          • MonkderZweite@feddit.ch
            link
            fedilink
            arrow-up
            1
            arrow-down
            1
            ·
            2 年前

            Oh, so it’s only my browser setup that doesn’t show it.

  • sj_zero@lotide.fbxl.net
    link
    fedilink
    arrow-up
    4
    ·
    2 年前

    ? “Hello World”

Programmer Humor@programming.dev

programmer_humor@programming.dev

Subscribe from Remote Instance

Create a post
You are not logged in. However you can subscribe from another Fediverse account, for example Lemmy or Mastodon. To do this, paste the following into the search field of your instance: [email protected]

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

  • Keep content in english
  • No advertisements
  • Posts must be related to programming or programmer topics
Visibility: Public
globe

This community can be federated to other instances and be posted/commented in by their users.

  • 1.31K users / day
  • 4.9K users / week
  • 8.6K users / month
  • 18.5K users / 6 months
  • 1 local subscriber
  • 27.5K subscribers
  • 1.93K Posts
  • 70.2K Comments
  • Modlog
  • mods:
  • Feyter@programming.dev
  • adr1an@programming.dev
  • BurningTurtle@programming.dev
  • Pierre-Yves Lapersonne@programming.dev
  • BE: 0.19.7
  • Modlog
  • Legal
  • Instances
  • Docs
  • Code
  • join-lemmy.org