Hacker Newsnew | past | comments | ask | show | jobs | submit | superhawk610's commentslogin

My high school also had a hidden copy of Unreal Tournament squirreled away on a network share somewhere, half of CS class always finished up with 20 minutes to spare to get in a few rounds. Good times.


Hey all, author here!

I’ve been fiddling around with learning x86 assembly recently, and was surprised at the lack of readily available, easy to use documentation. I did find [zneak/x86doc](https://github.com/zneak/x86doc), which does an excellent job at parsing Intel’s official reference, but I struggled to find some common instructions since they were nested under op-specific pages. Godbolt’s [compiler-explorer](https://github.con/compiler-explorer/compiler-explorer) also provided a nice docs-on-hover tool, which borrows from x86doc as well. I put these together to create a site that allows searching through all instructions from a simple UI.

Let me know what you think! The project is still very fresh, so if you’re looking for a place to knock out your last Hacktoberfest PR, come take a look :)


This article [1] is a really great read on some of the pitfalls you encounter due to the way duplicate headers are parsed in different browsers (skip to "Let's talk about HTTP headers" if you want to jump right into the code).

[1]: https://fasterthanli.me/articles/aiming-for-correctness-with...


+1 for Elixir. If you like Rust syntax, you should also check out [Gleam], it compiles to Erlang and has full interop w/ Erlang/Elixir.

[Gleam]: https://gleam.run/


Hope that this one gets some more traction. ML on BEAM would be lovely.


I believe someone has made an OCaml BEAM compiler, but I don’t recall offhand if it’s just a hobbyist product or something that could be used seriously.


It sounds like you are talking about Caramel[1].

As far as I understand its serious enough but quite young.

[1]https://caramel.run/manual/


I've tried to self-host email for my domain a couple times over the past few years, and I always end up falling back to a paid host for this reason; I rarely use email these days, but when I do (or usually when I'm expecting an email from a recruiter or other business-related sender) I need some sense of confidence that it will go through correctly. The lack of ability to confidently send via self-hosted setup definitely feels intentional, which sucks.

Great article btw!


To say that you never have to think about those considerations in Svelte is pretty unfair - reactive declarations/statements are functionally equivalent to hooks, and they also carry a somewhat nonintuitive cognitive load until you've begun to "think in reactivity". It's also worth considering that hooks, while unintuitive in function, do use intuitive, non-magical syntax (unlike Svelte's reactive syntax). FWIW I like both, I just think they're both equally unintuitive until you make the mental connection.


I guess we're all different, but I've never had to think much about reactivity in Svelte.

Most of it can be explained in a HN comment:

Component state just does its thing. You change it with = and the component is re-rendered.

Writable stores need to trigger changes with set() and you need to use $ whenever you reference it in a .svelte file so that Svelte handles subscription automatically.

Reactive statements $: are a bit more complex. Every variable inside those is referenced by the compiler so that it knows when you are mutating it. Either with = or if it's a writable store with set().


Not OP, but have used Elixir pretty extensively; the major selling points for me are the friendlier syntax and more active community support, plus with rebar3 + Elixir's seamless Erlang interop you really don't give up anything, you can use any existing Erlang/Elixir libraries with a single syntax. It's pretty great.


Haven't touched Erlang but has an entry level knowledge on Elixir. I often heard how easy it is to write macros on Elixir. Can you elaborate on this?


One of the big differences between Erlang and Elixir is indeed that Elixir allows you to write macros in the language itself, using quote / unquote constructs just like lisps.

This makes it easy to generate code on compile time, which is then executed in runtime without any performance penalty.

A large part of Elixir itself is actually implemented as macros. For instance, the "unless" construct:

  defmacro unless(condition, do: do_clause, else: else_clause) do
    quote do
      if(unquote(condition), do: unquote(else_clause), else: unquote(do_clause))
    end
  end

(code simplified for clarity)


And the if-else construct is also a macro. The whole thing ends up being a case I think.


Imho You shouldn't really write macros, they are there for libraries to make it easy to do the right thing with less boilerplate.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: