Safe mode: Difference between revisions
Created Nim answer.
Thundergnat (talk | contribs) m (syntax highlighting fixup automation) |
(Created Nim answer.) |
||
Line 116:
<syntaxhighlight lang="javascript">var interp1 = new Interp({isSafe:true, safeWriteDirs:['/tmp'], , safeReadDirs:['/tmp']});</syntaxhighlight>
=={{header|Nim}}==
Nim doesn’t provide safe mode, but it make a distinction between safe and unsafe features. Safe features are those
which cannot corrupt memory integrity while unsafe ones can.
There is currently no restrictions for using unsafe features, but a programmer should be aware that they must be
used with care.
Here are some unsafe features:
* The ones dealing with raw memory and especially those using pointers. Note that Nim makes a
difference between pointers which allow access to raw (untraced) memory and references which allow access to
traced memory.
* Type casting which, contrary to type conversion, is a simple assignment of a new type without any
conversion to make the value fully compatible with the new type.
* Using <code>cstring</code> variables as no index checking is performed when accessing an element.
* Inserting assembly instructions with the <code>asm</code> statement.
=={{header|Perl}}==
|