Live data from Hacker News

Viewing profile — hugomg

hugomg

HN member
Joined
Fri, Sep 21, 2018, 1:30 PM UTC
HN karma
107
Public activity
29 items

About hugomg

No profile information was provided.

Recent public activity

  1. comment
    Comment #44349024

    We figured that it wasn't worth dealing with the hassle of unaligned addresses because the more portable alternatives worked just as well.

  2. comment
    Comment #41101396

    tl;dr: For Pallene, Lua is a scripting language. For Terra, Lua is mainly for metaprogramming. The key difference is that Terra cannot directly manipulate Lua data. Although Terra'…

  3. comment
    Comment #41100785

    The difference is the Lua-C API. The default Lua-C API is designed for humans: it is stable and safe to use, but every operation must pay the cost of function calls and passing dat…

  4. comment
    Comment #41100081

    > I can just as good implement it in C using the Lua C API Pallene beats C when the code uses many Lua data structures. Acessing Lua data from C via the Lua-C API has significant o…

  5. comment
    Comment #41100053

    (I'm one of the Pallene authors) For compiled code, Pallene's performance can be comparable to LuaJIT[1]. Pallene might be better in code with unpredictable branches, which don't f…

  6. comment
    Comment #26263759

    Pallene and Teal are in a bit of a different space. Teal is focused on compile-time type checking. The intention is to encourage you to add type annotations to your entire Lua code…

  7. comment
    Comment #23992100

    It wouldn't be the JS we know and love if it had been burdened with a type system designed by a committee sometime in the 90s. That said, one thing we can say for sure is that the …

  8. comment
    Comment #23991486

    I always love reading more about JavaScriptCore internals although I have to confess that much of the time one of the main lessons I get from it is that life would be much easier i…

  9. comment
    Comment #23447701

    If you are curious, this is what the resulting format string looks like after expanding all the macros: https://gist.github.com/hugomg/73e91ebca7ced3c5c6f955e9e830b...

  10. comment
    Comment #21153897

    We chose the Pallene name because it was another one of Saturn's moon names that sounded nice, and is pronounced the same way in English and Portuguese. The Mike Pall thing was jus…

  11. comment
    Comment #21148329

    It is no surprise that the benchmarks on the LuaJIT website are going to show it ahead of PUC-Lua, is it? In truth the performance comparison is a bit more complicated than that. :…

  12. comment
    Comment #19955415

    In case others aren't familiar with the termiology: #SAT is the counting version of the SAT problem, which tries to find how many different solutions exist to a set of constraints)…

  13. comment
    Comment #19955385

    Some SAT solvers allow you to add additional constraints while they are running. So you can find a solution and then add additional constraints to try to get it to find a better on…

  14. comment
    Comment #19955339

    Generally speaking, if you ever find yourself coding a brute-force backtracking search for some combinatorical problem, it might be a good idea to consider using a SAT solver inste…

  15. comment
    Comment #19955269

    Seeing someone cite a little project I did for fun many years ago is a very nice surprise. :)

  16. comment
  17. comment
    Comment #18079186

    Currently there is no special support for metaprogramming, but maybe we could borrow some ideas from Terra in a future version...

  18. comment
    Comment #18079160

    Wow, I hadn't thought of that. Its a complete coincidence, actually!

  19. comment
    Comment #18079146

    From the point of view of Lua, Pallene works the same as C If you want to produce a standalone executable, at the end of the day this executable will contain a copy of the Lua VM. …

  20. comment
    Comment #18045678

    If you were writing naive code, it probably wouldn't be that much. Maybe a 2to 3 times difference. But the thing with Terra is that you can be even faster than naively-written C if…

  21. comment
    Comment #18043780

    I talk a bit about this in a sibling comment. Maybe that helps answer your question? Pallene uses garbage collection, and shares the Lua garbage collector. The idea is to make as e…

  22. comment
    Comment #18042845

    You hit the nail on the head. With a more "Oberon-like" language we can use textbook optimization algorithms and take advantage of existing compiler backends, like GCC and LLVM. Fo…

  23. comment
    Comment #18042702

    Don't worry, that is still a fine question. Pallene programs are still able to use Lua's "load" to eval dynamically-typed Lua code. But it is less likely that we would implement a …

  24. comment
    Comment #18041229

    Pallene has been designed to seamlessly interoperate with Lua, not to replace it. So you can still use Lua when you need dynamic code loading or magic debug hooks. Roughly speaking…

  25. comment
    Comment #18041192

    Terra uses Lua as a metaprogramming language, while Pallene/Titan use Lua as a scripting language. Terra is designed for high performance numerical computing. As you mentioned, it …