[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
www/philosophy javascript-trap.html
From: |
Richard M. Stallman |
Subject: |
www/philosophy javascript-trap.html |
Date: |
Wed, 20 Feb 2019 20:52:23 -0500 (EST) |
CVSROOT: /web/www
Module name: www
Changes by: Richard M. Stallman <rms> 19/02/20 20:52:23
Modified files:
philosophy : javascript-trap.html
Log message:
Update nontriviality criterion for LibreJS changes in 2018.
CVSWeb URLs:
http://web.cvs.savannah.gnu.org/viewcvs/www/philosophy/javascript-trap.html?cvsroot=www&r1=1.66&r2=1.67
Patches:
Index: javascript-trap.html
===================================================================
RCS file: /web/www/www/philosophy/javascript-trap.html,v
retrieving revision 1.66
retrieving revision 1.67
diff -u -b -r1.66 -r1.67
--- javascript-trap.html 15 Dec 2018 14:02:38 -0000 1.66
+++ javascript-trap.html 21 Feb 2019 01:52:22 -0000 1.67
@@ -136,17 +136,32 @@
degree, so this is a matter of designing a simple criterion that gives
good results, rather than finding the one correct answer.</p>
<p>
-Our tentative policy is to consider a JavaScript program nontrivial if:</p>
+Our current criterion is to consider a JavaScript program nontrivial if:</p>
<ul>
- <li>it makes an AJAX request or is loaded along with scripts that make
- an AJAX request,</li>
+ <li>it is referred to as an external script (from another page).</li>
- <li>it loads external scripts dynamically or is loaded along with
- scripts that do,</li>
+ <li>it declares an array more than 50 elements long.</li>
- <li>it defines functions or methods and either loads an external script
- (from html) or is loaded as one,</li>
+ <li>it defines a named entity (function or method) that calls anything other
+ than a primitive.</li>
+
+ <li>it defines a named entity with more than three conditional
+ constructs and loop constructive.</li>
+
+ <li>code outside of named definitions calls anything but primitives and
+ functions defined further up in the page,</li>
+
+ <li>code outside of named definitions contains more than three
+ conditional constructs and loop constructive, total.</li>
+
+ <li>it calls <b>eval</b>.</li>
+
+ <li>it does Ajax calls.</li>
+
+ <li>it does <b>[…]</b> calls.</li>
+
+ <li>it alters the DOM.</li>
<li>it uses dynamic JavaScript constructs that are difficult to analyze
without interpreting the program, or is loaded along with scripts
@@ -269,7 +284,7 @@
<p class="unprintable">Updated:
<!-- timestamp start -->
-$Date: 2018/12/15 14:02:38 $
+$Date: 2019/02/21 01:52:22 $
<!-- timestamp end -->
</p>
</div>
- www/philosophy javascript-trap.html,
Richard M. Stallman <=