Live data from Hacker News

Viewing profile — bhansconnect

bhansconnect

HN member
Joined
Fri, Nov 24, 2023, 7:14 PM UTC
HN karma
30
Public activity
20 items

About bhansconnect

No profile information was provided.

Recent public activity

  1. comment
    Comment #42940395

    Roc never plans to self host. We want roc the compiler in the long term to be as nice as possible for end users. A big part of that is as fast as possible. While roc can be fast, i…

  2. comment
    Comment #42940353

    It sadly helps a lot less than you would hope. A true dev backend can be many times faster than llvm to compile code. Crane lift is more like a 1.5x or 2x. Not to mention a lot of …

  3. comment
    Comment #42940320

    Yeah, the compiler was started in 2019 when zig wasn't nearly as viable of an option. On top of that, you don't necessarily know what you want until you build something. I'm part o…

  4. comment
    Comment #42940283

    Yeah, the rewrite will clean up a ton of technical debt for us. So it will very much be a bad comparison.

  5. comment
    Comment #42940220

    Thank you for your work! Rust is still a great language. I think a significant portion of our pain with rust compile times is self inflicted due to the natural growth of our crate …

  6. comment
    Comment #42940175

    https://www.roc-lang.org/faq.html#self-hosted-compiler

  7. comment
    Comment #42940151

    https://www.roc-lang.org/faq.html#self-hosted-compiler

  8. comment
    Comment #42940090

    For sure, but we have a really good relationship with the zig folks and they are willing to help us out. On top of that, zig has gotten a lot more robust and stable of the last few…

  9. comment
    Comment #42940067

    This is more about simplicity, maintainability, and possiblity for new contributors to easily jump in and fix things. Our current parser is not fun for new contributors to learn. A…

  10. comment
    Comment #42940011

    Zig was not ready or nearly as popular back in 2019 when the compiler was started. Not to mention, Richard has a background mostly doing higher level programming. So jumping all th…

  11. comment
    Comment #41305492

    As a general note, the code there is an initial more exploratory api. It definitely could be simplified (solid bits of extra noise in it). That said, it does have the fundamental i…

  12. comment
    Comment #41305277

    It isn't "no escape hatch". It is platform dependent escape hatches. A platform can give you full access to mutation and libffi if it wants.

  13. comment
    Comment #41305264

    There are some major changes to platform development that are coming (both flexibility and usability). Sadly, they have been slow to introduce. I think that is a large part of the …

  14. comment
    Comment #39351235

    This is not accurate. The blog post used `--release` for it's Rust numbers. The confusion comes from the 50% performance win being specific to running on an M2 mac. On an x86_64 Li…

  15. comment
    Comment #38411295

    Roc doesn't allow side effects. All effects are wrapped and returned from a function. So this is just as pure as haskell. Though it may not be exposed in the same way as haskell, e…

  16. comment
    Comment #38407232

    0. Roc is capable of always inferring types. So type annotations are never required. That said, type annotations are used commonly and 100% supported.

  17. comment
    Comment #38407224

    Yes and No. Roc fundamentally is built on top of platforms. Platforms are communicated with through cffi. So cffi is fundamental to roc. At the same time, roc will never have gener…

  18. comment
    Comment #38407204

    > it's actively rude within three error messages. Can you share those error messages? I am sure that is not the intent.

  19. comment
    Comment #38407196

    Can you clarify what you mean? I don't think Roc actually has that many keywords or operators in total. I would bet that C has more keywords that Roc. I do agree that default conve…

  20. comment
    Comment #38407167

    Roc cares a lot about explicitness, so I don't think this would be a wanted feature. That said, it is easy to get this functionality with something like ``` append = List.append ``…