Skip to content
By using Twitter’s services you agree to our Cookies Use. We and our partners operate globally and use cookies, including for analytics, personalisation, and ads.
  • Home Home Home, current page.
  • About

Saved searches

  • Remove
  • In this conversation
    Verified accountProtected Tweets @
Suggested users
  • Verified accountProtected Tweets @
  • Verified accountProtected Tweets @
  • Language: English
    • Bahasa Indonesia
    • Bahasa Melayu
    • Català
    • Čeština
    • Dansk
    • Deutsch
    • English UK
    • Español
    • Filipino
    • Français
    • Hrvatski
    • Italiano
    • Magyar
    • Nederlands
    • Norsk
    • Polski
    • Português
    • Română
    • Slovenčina
    • Suomi
    • Svenska
    • Tiếng Việt
    • Türkçe
    • Ελληνικά
    • Български език
    • Русский
    • Српски
    • Українська мова
    • עִבְרִית
    • العربية
    • فارسی
    • मराठी
    • हिन्दी
    • বাংলা
    • ગુજરાતી
    • தமிழ்
    • ಕನ್ನಡ
    • ภาษาไทย
    • 한국어
    • 日本語
    • 简体中文
    • 繁體中文
  • Have an account? Log in
    Have an account?
    · Forgot password?

    New to Twitter?
    Sign up
wycats's profile
Yehuda Katz 🥨
Yehuda Katz 🥨
Yehuda Katz  🥨
Verified account
@wycats

Tweets

Yehuda Katz  🥨Verified account

@wycats

Tilde Co-Founder, OSS enthusiast and world traveler.

Portland, OR
yehudakatz.com
Joined August 2007

Tweets

  • © 2018 Twitter
  • About
  • Help Center
  • Terms
  • Privacy policy
  • Cookies
  • Ads info
Dismiss
Previous
Next

Go to a person's profile

Saved searches

  • Remove
  • In this conversation
    Verified accountProtected Tweets @
Suggested users
  • Verified accountProtected Tweets @
  • Verified accountProtected Tweets @

Promote this Tweet

Block

  • Tweet with a location

    You can add location information to your Tweets, such as your city or precise location, from the web and via third-party applications. You always have the option to delete your Tweet location history. Learn more

    Your lists

    Create a new list


    Under 100 characters, optional

    Privacy

    Copy link to Tweet

    Embed this Tweet

    Embed this Video

    Add this Tweet to your website by copying the code below. Learn more

    Add this video to your website by copying the code below. Learn more

    Hmm, there was a problem reaching the server.

    By embedding Twitter content in your website or app, you are agreeing to the Twitter Developer Agreement and Developer Policy.

    Preview

    Why you're seeing this ad

    Log in to Twitter

    · Forgot password?
    Don't have an account? Sign up »

    Sign up for Twitter

    Not on Twitter? Sign up, tune into the things you care about, and get updates as they happen.

    Sign up
    Have an account? Log in »

    Two-way (sending and receiving) short codes:

    Country Code For customers of
    United States 40404 (any)
    Canada 21212 (any)
    United Kingdom 86444 Vodafone, Orange, 3, O2
    Brazil 40404 Nextel, TIM
    Haiti 40404 Digicel, Voila
    Ireland 51210 Vodafone, O2
    India 53000 Bharti Airtel, Videocon, Reliance
    Indonesia 89887 AXIS, 3, Telkomsel, Indosat, XL Axiata
    Italy 4880804 Wind
    3424486444 Vodafone
    » See SMS short codes for other countries

    Confirmation

     

    Welcome home!

    This timeline is where you’ll spend most of your time, getting instant updates about what matters to you.

    Tweets not working for you?

    Hover over the profile pic and click the Following button to unfollow any account.

    Say a lot with a little

    When you see a Tweet you love, tap the heart — it lets the person who wrote it know you shared the love.

    Spread the word

    The fastest way to share someone else’s Tweet with your followers is with a Retweet. Tap the icon to send it instantly.

    Join the conversation

    Add your thoughts about any Tweet with a Reply. Find a topic you’re passionate about, and jump right in.

    Learn the latest

    Get instant insight into what people are talking about now.

    Get more of what you love

    Follow more accounts to get instant updates about topics you care about.

    Find what's happening

    See the latest conversations about any topic instantly.

    Never miss a Moment

    Catch up instantly on the best stories happening as they unfold.

    Yehuda Katz  🥨‏Verified account @wycats 23 Oct 2017

    Do you want mixin syntax in JS, and if so, which semantics? In the prototype chain means super works.

    7:41 AM - 23 Oct 2017
    • 16 Retweets
    • 16 Likes
    • Maksim Kuklin owntrack Francesc Rosas Mateusz Wygoda Clay Morton Leo Selig Tim Kevin Oxley Mateusz Zatorski Alexey Berezin
    15 replies 16 retweets 16 likes
      1. New conversation
      2. Yehuda Katz  🥨‏Verified account @wycats 23 Oct 2017

        In the prototype chain probably desugars into something like: function Mixin(Super) { return class extends Super { /* mixin here */ } }

        3 replies 0 retweets 1 like
        Show this thread
      3. Yehuda Katz  🥨‏Verified account @wycats 23 Oct 2017

        The syntax could be something like: mixin Enumerable { ... } class MyList implements Enumerable {} but not ready for bikeshedding yet!

        5 replies 0 retweets 6 likes
        Show this thread
      4. End of conversation
      1. Yehuda Katz  🥨‏Verified account @wycats 23 Oct 2017

        If you selected "We don't need mixins", is it because:

        5 replies 0 retweets 2 likes
        Show this thread
        Thanks. Twitter will use this to make your timeline better. Undo
        Undo
      1. New conversation
      2. marco sparagna‏ @thetallestuser 23 Oct 2017
        Replying to @wycats

        doesn't that favors hierarchy instead of composition?

        1 reply 0 retweets 1 like
      3. Yehuda Katz  🥨‏Verified account @wycats 23 Oct 2017
        Replying to @thetallestuser

        It doesn't favor it, but it offers it as an option.

        1 reply 0 retweets 1 like
      4. marco sparagna‏ @thetallestuser 23 Oct 2017
        Replying to @wycats

        If it's to avoid code duplication and have shared functionalities, I usually prefer decorators and utility functions, they're clearer. imho

        1 reply 0 retweets 0 likes
      5. Yehuda Katz  🥨‏Verified account @wycats 23 Oct 2017
        Replying to @thetallestuser

        I agree, usually!

        1 reply 0 retweets 0 likes
      6. marco sparagna‏ @thetallestuser 23 Oct 2017
        Replying to @wycats

        plus we all know what "it offers it as an option" leads to :p

        1 reply 0 retweets 0 likes
      7. Yehuda Katz  🥨‏Verified account @wycats 23 Oct 2017
        Replying to @thetallestuser

        Eh not a huge fan of holding back useful tools for fear people might cut off their finger. Teams can use lints for that if they want.

        2 replies 0 retweets 2 likes
      8. marco sparagna‏ @thetallestuser 23 Oct 2017
        Replying to @wycats

        sure, it depends on how you want to structure a framework, capabilities or conventions. I like the ember way of strongly suggesting the 2nd

        1 reply 0 retweets 1 like
      9. Yehuda Katz  🥨‏Verified account @wycats 23 Oct 2017
        Replying to @thetallestuser

        Ember has both. Capabilities under the hood, conventions above it. Which I guess argues for decorators implementing mixins :)

        2 replies 0 retweets 1 like
      10. 1 more reply
      1. New conversation
      2. Jonas Nicklas‏ @jonicklas 23 Oct 2017
        Replying to @wycats

        IMO protocols like in Clojure or Elixir are far superior to Ruby-style mixins. I wouldn't like to see further encouragement of inheritance.

        1 reply 0 retweets 2 likes
      3. Yehuda Katz  🥨‏Verified account @wycats 23 Oct 2017
        Replying to @jonicklas

        What about refinements in Ruby? fwiw "I don't want to see encouragement of inheritance" reads as zealotry to me.

        5 replies 0 retweets 3 likes
      4. Jonas Nicklas‏ @jonicklas 23 Oct 2017
        Replying to @wycats

        Maybe it is a bit zealous, but I see inheritance as inherently (heh) bad. Any future language development should move away from inheritance.

        1 reply 0 retweets 5 likes
      5. Jonas Nicklas‏ @jonicklas 23 Oct 2017
        Replying to @jonicklas @wycats

        Maybe that's an extreme opinion, but there are now tons of languages which prove that inheritance isn't necessary.

        2 replies 0 retweets 0 likes
      6. Yehuda Katz  🥨‏Verified account @wycats 23 Oct 2017
        Replying to @jonicklas

        I don't think that's true. I think it's useful largely for frameworks, which have their place. Rust specialization shows this.

        0 replies 0 retweets 1 like
      7. End of conversation
      1. New conversation
      2. Danny Andrews‏ @lunde_andrews 23 Oct 2017
        Replying to @wycats

        If the are implemented at all like Ruby Mixins, then 🙅. Can easily get collisions without realizing it.https://gist.github.com/danny-andrews/cf363303bff4bb5ce4fa169cc16d2c39 …

        1 reply 0 retweets 0 likes
      3. Yehuda Katz  🥨‏Verified account @wycats 23 Oct 2017
        Replying to @lunde_andrews

        The biggest diff would be you can't see instance variables of superclasses.

        1 reply 0 retweets 0 likes
      4. Yehuda Katz  🥨‏Verified account @wycats 23 Oct 2017
        Replying to @wycats @lunde_andrews

        Also JS symbols (and soon private methods) let you avoid collisions way more readily.

        1 reply 0 retweets 0 likes
      5. Danny Andrews‏ @lunde_andrews 23 Oct 2017
        Replying to @wycats

        You could still get collisions in public methods those, like those the mixins actually expose/provide.

        0 replies 0 retweets 0 likes
      6. End of conversation

    Loading seems to be taking a while.

    Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.

      Promoted Tweet

      false

      • © 2018 Twitter
      • About
      • Help Center
      • Terms
      • Privacy policy
      • Cookies
      • Ads info