diff --git a/autoTest.pl b/autoTest.pl index 9527148..c7785a5 100755 --- a/autoTest.pl +++ b/autoTest.pl @@ -12,10 +12,13 @@ $os = `uname`; $debug=0; -@langs = ("cgcc", "cclang", +@langs = ("cgcc", "cclang", "asm", # Uncomment for alternat C algorithms -# "c2", "ca", "ca2", "ca3", - "objc", "cpp", "asm", "for", "pas", "go", "rs", "ada", "hs", "e", "cbl", "oml", "java", "scala", "cs", "vb", "erl", "awk", "pl", "php", "py", "tcl", "rb", "dart", "cl", "scm", "st", "sml", "4th", "pro", "m3", "pike", "lua", "rexx", "r", "fe", "5c", "m4", "sh"); +# "c2", "ca", "ca2", "ca3", +# Applied some Tiobe 2026 language ordering + "cpp", "objc", "py", "java", "cs", "js", "vb", "r", "pas", "rs", "go", "php", "ada", "for", "pl", + "cbl", "dart", "pro", "lua", "rb", "cl", "oml", "erl", "scala", "hs", + "scm", "e", "awk", "tcl", "st", "sml", "4th", "m3", "pike", "rexx", "fe", "5c", "m4", "sh"); $llen = $#langs+1; @@ -97,6 +100,10 @@ $data{'for'}{'compiler0'} = "gfortran"; $data{'for'}{'prog'} = "primesfor"; $data{'for'}{'cflags0'} = "-O3 -o $data{'for'}{'prog'}"; +$data{'js'}{'name'} = "Javascript (nodejs)"; +$data{'js'}{'prog'} = 'primes.js'; +$data{'js'}{'interp0'} = 'nodejs'; + $data{'pas'}{'name'} = "Pascal"; $data{'pas'}{'src'} = "primes.pas"; $data{'pas'}{'compiler0'} = "fpc"; diff --git a/primes.js b/primes.js new file mode 100644 index 0000000..fbb44a8 --- /dev/null +++ b/primes.js @@ -0,0 +1,14 @@ +let max = process.argv[2]; +for(cnt = 3; cnt <= max; cnt += 2) { + let sq = Math.round(Math.sqrt(cnt)); + let isPrime = true; + for(i=3; i<=sq; i+=2) { + if(cnt % i == 0) { + isPrime = false + break; + } + } + if (isPrime) { + console.log(cnt); + } +} \ No newline at end of file