ѕєχυαℓ ρσℓутσρє

I fuck numbers.

  • 18 Posts
  • 204 Comments
Joined 1 年前
cake
Cake day: 2023年6月21日

help-circle





  • Getting a job won’t make things easier. Most people need human friends to live a fulfilling life. I think you might be imagining that people dislike you, as we socially awkward people often do. Just try talking to people, and you’ll surely make a few friends. I’m socially awkward, but make it a point to attend some social gatherings outside of classes/job so that I’m basically forced to talk to people, no matter how hard it is. If you’re just starting university, it’ll be easier as everyone is trying to make friends, and there’ll be many open events. For later years, it might be a bit harder, but try joining some clubs. I’ve found astronomy clubs to be pretty chill and welcoming to new members.

    Just make it a point to attend some social events. There will definitely be people who will appreciate your personality, just give them the chance to get to know you.

    (All of this is assuming you don’t have some underlying mental condition. If you find it hard to follow this advice, maybe seek help from a professional.)













  • You’re pretty much right on the money. In Haskell, a String is a type synonym for [Char], so we can use the list concatenation function ++ to join strings. ++ is an infix function i.e. [1,2,3] ++ [3,4,5] = [1,2,3,3,4,5] (which will be equivalent to doing (++) [1,2,3] [3,4,5] by virtue of how infix functions work in Haskell). When we do (++ "a"), we create a partially applied function. Now, we can supply another string to it and it will add "a" at the end of it.

    iterate f x produces a lazily evaluated sequence [x, f x, f f x, ...]. So, to get the nth entry, we can do wine !! n where we use another infix function !!. With partial application, we can modify the definition of wine to create a function that takes an Int n and spits out the nth entry of it by doing

    wine = (!!) $ iterate (++" Is Not an Emulator") "WINE"
    

    We needed to wrap the !! inside parentheses because it’s an infix function. $ just changes the order of application. (IIRC, it’s the least significant function.) You can think that we’re wrapping whatever’s on the right of the $ by parentheses. Now we can do wine 2 instead of wine !! 2 to get "WINE Is Not an Emulator Is Not an Emulator".

    I’m by no means a Haskell expert. (I’m not even a professional programmer lol.) So, if someone would like to add some more details, they’re more than welcome.

    Edit: A much more readable version might be

    wine 0 = "WINE"
    wine n = wine (n-1) ++ " Is Not an Emulator"