Live data from Hacker News

Viewing profile — Araq

Araq

HN member
Joined
Sat, Sep 29, 2012, 10:50 PM UTC
HN karma
44
Public activity
24 items

About Araq

No profile information was provided.

Recent public activity

  1. comment
    Comment #18087769

    Support for embedded is indeed getting into focus. I hope to release an article soon how the '--gc:regions' switch works (which is misnamed, it's a way to do memory management, not…

  2. comment
    Comment #17474834

    I agree that 'discard' is usually a code smell, but how would implicitly ignoring the result be any better? It wouldn't be better at all, and that means Nim's discard feature is ra…

  3. comment
    Comment #17474501

    I'm not following you really. 'discard' is an enforced, explicit statement about that you throw away information/the result of a computation. That's against "nice if you are progra…

  4. comment
    Comment #17474464

    That's true and I wouldn't use the Option type for that either. There is a switch that warns about variables that are not initialized explicitly (including the 'result' variable) a…

  5. comment
    Comment #14612762

    We're slowly getting there though. I hope to release a blog post soon about how it might look like in Nim.

  6. comment
    Comment #12658736

    > But to ask a pointed question, doesn't that mean Nim gets the worst of both worlds? You have both the overhead of updating reference counts and the (relatively long) garbage coll…

  7. comment
    Comment #12633746

    > There are other ways to address this issue. You can do what Swift does and call into libclang so that you can pull out the structure definitions, for instance. Sure and you only …

  8. comment
    Comment #12619477

    Compiling to C vs using LLVM is a complex design tradeoff. For example, the Posix standard specifies a C interface. Quote: "The stat structure shall contain at least the following …

  9. comment
    Comment #12619177

    Good questions. I'm afraid the documentation is seriously out of date about the GC: It used to implement a variant of "trial deletion" so that "never scans the whole heap" used to …

  10. comment
    Comment #10210799

    > The manual even says that just calling printf is actually unsafe as the cstring could be GC'd (but it probably won't). The manual tries very hard to mention corner cases since it…

  11. comment
    Comment #10209639

    > And there's no strong sense of design and elegance. It very much comes off as "here's a bunch of ideas thrown together with the restriction that they all must somehow compile to …

  12. comment
    Comment #9051068

    Shrug , you left out: - Conservative GC marking of the stack. - No stack overflow check in release mode. Compiling to C is not tricky, it is horrible and we don't do it for the fun…

  13. comment
    Comment #8938260

    Well I did my homework. When you find another language that does it in a somewhat similar fashion, I'll happily change the website. ;-) I didn't think Rust counts, but since it's c…

  14. comment
    Comment #8938208

    Disclaimer: I'm the lead designer of Nim. pcwalton's remark is excellent but "automated proof technology" is not a well defined term. What I mean by this is that it goes beyond wha…

  15. comment
    Comment #8811401

    You cannot do these things easily currently since the assignment operator cannot be overloaded. There are ways around it, you can "fix" the broken builtin assignment with a TR macr…

  16. comment
    Comment #8669246

    Thanks for mentioning Nim! :-) I can't say I agree with anything you say though... So only memory safety is C's problem? Not its type system that's very weak in every aspect (not j…

  17. comment
    Comment #8654684

    As the primary author of Nimrod I disagree. ;-) And to be blunt: I know the person has no idea of what he talks about when he uses the word "transpile".

  18. comment
    Comment #7445411

    Nimrod solved that... The solution in a nutshell: If a statement list contains a 'return', it enforces a 'void' context for the statement list, otherwise the statement list has the…

  19. comment
    Comment #6502404

    (Disclaimer: I am the creator of Nimrod.) What you say is entirely correct; however Nimrod's effect system is not tied to any runtime mechanisms like a GC and provides lots of othe…

  20. comment
    Comment #6277703

    Strings should be converted to UTF-8 as part of input validation. For proper input validation we have the taint mode already. Note that often a file does not include any informatio…

  21. comment
    Comment #6273782

    This is very true; however c2nim distinguishes between #def and #define for this reason and this helps a lot. #def means c2nim needs to expand the macro, #define means it's some ma…

  22. comment
    Comment #5759823

    It delivers? Lol. The GC used to suck for 32 bit systems and it still sucks for realtime. As opposed to Nimrod's which pretty much guarantees a maximum pause time of 2 milliseconds…

  23. comment
    Comment #5745192

    Ok, lets see: UTF-16 strings encourage bugs with surrogates. Note that most C# and Java code is notoriously broken wrt those and yet I never hear anybody complain about it. UTF-32 …

  24. comment
    Comment #5738990

    Hello everyone, I'm the designer of Nimrod. I will be glad to answer any questions regarding the language.