Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>There are a few options, like <a href="http://www.erikveen.dds.nl/rubyscript2exe/" rel="noreferrer"><strong>RubyScript2Exe</strong></a> or <a href="http://www.erikveen.dds.nl/allinoneruby/index.html" rel="noreferrer"><strong>AllInOneRuby</strong></a>. However, <strong>all obfuscators of interpreted languages tend to have a serious flaw:</strong> they usually don't understand more sophisticated metaprogramming techniques.</p> <p>That is, they can't necessarily tell that something like <code>foo.send(:bar, ...)</code> is an invocation on the <code>bar</code> method in a completely different library, or that <code>eval("require %w{abc def ghi}")</code> means to require three different libraries. These are trivial examples -- things get much more complex when you throw <code>method_missing</code> and its ilk into the mix.</p> <p>When an obfuscator encounters this sort of code, it will dutifully compile the appropriate instructions, but it may not know to also include certain libraries or other code from elsewhere. That can cause serious issues, since the dynamically <code>include</code>d or <code>require</code>d will not be available at runtime in a statically linked executable.</p> <p>Unfortunately, many gems and libraries use sophisticated metaprogramming techniques. You'll likely get into trouble here if you try to use obfuscation and expect your program to have the same behavior. Worse still, because there are so many levels of indirection, if a bug occurs in the obfuscated version, you may never know what exactly happened or how to reproduce it.</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    3. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload