• 14 Posts
  • 145 Comments
Joined 1 year ago
cake
Cake day: June 15th, 2023

help-circle












  • Short Version

    I was a console player, now I am on PC. And I harvest the power of emulation alongside playing modern games.


    Long Version

    I’m an 80s guy and was fortunate enough to experience the 90s in its full glory; from Snes Jrpgs to the transitioning to 3D to the first consoles with internet connection. Nowadays I am a PC player and play ton of games through emulation. And the little cute Steam Deck on my side is the extra fun.

    I played this year Breath of the Wild from the Switch, but through emulation on my PC in 60 fps, higher resolution and with my Xbox gamepad. Got all or almost all shrines in the game with over 130 hours playtime (Edit: Played it this year on Yuzu BTW. They started suing while I was playing.)! And besides that, I play old Romhacks and mods of old console games for the SNES, in example translations, bug fixes or just new stages (like DLCs from the community!). Or play games to beat highscores and times from your friends or other players in the community. There is so much to explore through emulation.

    If you have a good PC and the patience, then I recommend you to get into emulation a little bit. Maybe not as hardcore as I do, but for your favorite consoles and games. You can play games that you missed back in the day in example, or just waste 20 minutes testing old games and then go back to modern games. It’s such a fun experience.





  • But that mathematical pseudo code has nothing in common with the walrus operator := in Python and Go. They are just the same symbols, but with a totally different meaning and use case. Its an operator designed specifically for programming languages, because that is not applicable to mathematics at all. In mathematics you don’t have an assignment operator a = 69 that cannot be used as part of an expression. Therefore you don’t need a dedicated := that yields an expression that can be used as part of an expression and create a variable if its not already. (Edit: I’m so sick of my stupidness.)


  • Turns out it was introduced in 3.8, released in 2019, so it was much too late to inspire Go

    You are probably right about that. But don’t forget that the operator didn’t made it day one, there was lot of discussion before and probably testing it in the beta releases before. But given how old Golang at that point is, you are right about my take on inspiration. This operator wasn’t a new invention in Python.

    It also has a substantially different meaning than in Go.

    I don’t know if there’s an “official” rationale for the Go syntax, but := is a fairly common (but not ubiquitous) math notation meaning “define the thing on the left to be equal to the expression on the right”, i.e. to distinguish it from the other use of =, i.e. “the expression on the left must be equal to the expression on the right.”

    Does it though? In both cases, Go and Python, the operator will assign a variable a value and also use it as an expression. That is useful in cases like for loops or other cases where you want immediately use the variable content as an expression. This cannot be done with the regular assignment operator a = 69, which itself is not an expression. So in practical terms, its the same in usability for Go and Python. So its doing the same for both languages and has the same differences to the assignment operator. (Edit: Read the reply, I learned something myself. That’s why its important that you don’t blindly teach people like I did.)