Open desm opened 9 years ago
When I remove the 'global' keyword, then the error message becomes:
$ lite -es6 blog-example-dns.lite.md
LiteScript-to-js v0.8.9 Build Date Thu Oct 23 2014 07:54:38 GMT-0300 (ART)
compiler options: {"verboseLevel":1,"warningLevel":1,"comments":1,"target":"js","outDir":"generated/js","perf":0,"generateSourceMap":true,"defines":[],"includeDirs":[],"projectDir":".","mainModuleName":"blog-example-dns.lite.md","storeMessages":false,"now":"2015-01-11T06:53:34.231Z","es6":true}
cwd: /data/projects/LiteScript/doc
compile : blog-example-dns.lite.md
Project Dir: /data/projects/LiteScript/doc
Main Module: blog-example-dns
Out Dir: /data/projects/LiteScript/doc/generated/js
preprocessor #defined [ 'ENV_JS', 'ENV_NODE', 'TARGET_JS' ]
Compiling blog-example-dns
/data/projects/LiteScript/doc/blog-example-dns.lite.md:7:1 Module not found:
Searched 'dns' at:
/data/projects/LiteScript/doc
/data/projects/LiteScript/doc/lib
/data/projects/LiteScript/doc/interfaces
/data/projects/LiteScript/lib
/data/projects/LiteScript/interfaces
with extensions (.lite.md|.md|.interface.md|.js)
Using the 'lite -s' flag, code generation is successful:
$ lite -es6 -s blog-example-dns.lite.md
LiteScript-to-js v0.8.9 Build Date Thu Oct 23 2014 07:54:38 GMT-0300 (ART)
compiler options: {"verboseLevel":1,"warningLevel":1,"comments":1,"target":"js","outDir":"generated/js","perf":0,"generateSourceMap":true,"single":true,"defines":[],"includeDirs":[],"projectDir":".","mainModuleName":"blog-example-dns.lite.md","storeMessages":false,"now":"2015-01-11T08:02:53.500Z","es6":true}
cwd: /data/projects/LiteScript/doc
compile : blog-example-dns.lite.md
Project Dir: /data/projects/LiteScript/doc
Main Module: blog-example-dns
Out Dir: /data/projects/LiteScript/doc/generated/js
preprocessor #defined [ 'ENV_JS', 'ENV_NODE', 'TARGET_JS' ]
Compiling blog-example-dns
WARNING: /data/projects/LiteScript/doc/blog-example-dns.lite.md:15:47. No member named 'resolve' on 'dns:any'
WARNING: /data/projects/LiteScript/doc/blog-example-dns.lite.md:7:12 declaration is here
WARNING: /data/projects/LiteScript/doc/blog-example-dns.lite.md:17:56. No member named 'reverse' on 'dns:any'
WARNING: /data/projects/LiteScript/doc/blog-example-dns.lite.md:7:12 declaration is here
Producing js
Generated .js files (1) at /data/projects/LiteScript/doc/generated/js
0 errors, 4 warnings.
Then, when I try to run it, I get the following error:
$ /usr/local/bin/node -v
v0.13.0-pre
$ /usr/local/bin/node --harmony generated/js/blog-example-dns.js
/data/projects/LiteScript/doc/generated/js/blog-example-dns.js:17
nicegen.run(this, resolveAndParallelReverse_generator, arguments);
^
TypeError: undefined is not a function
at resolveAndParallelReverse (/data/projects/LiteScript/doc/generated/js/blog-example-dns.js:17:15)
at Object.<anonymous> (/data/projects/LiteScript/doc/generated/js/blog-example-dns.js:55:5)
at Module._compile (module.js:460:26)
at Object.Module._extensions..js (module.js:478:10)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
at Function.Module.runMain (module.js:501:10)
at startup (node.js:124:16)
at node.js:811:3
This is because the 'run' method is no longer used. So simply removing ".run" from that line of code does the trick. Note that one needs to use a version of node >= 0.11 and that the '--harmony' flag is required.
$ /usr/local/bin/node --harmony generated/js/blog-example-dns.js
74.125.226.104 reverse: yyz08s13-in-f8.1e100.net
74.125.226.99 reverse: yyz08s13-in-f3.1e100.net
74.125.226.105 reverse: yyz08s13-in-f9.1e100.net
74.125.226.110 reverse: yyz08s13-in-f14.1e100.net
74.125.226.100 reverse: yyz08s13-in-f4.1e100.net
74.125.226.96 reverse: yyz08s13-in-f0.1e100.net
74.125.226.97 reverse: yyz08s13-in-f1.1e100.net
74.125.226.103 reverse: yyz08s13-in-f7.1e100.net
74.125.226.101 reverse: yyz08s13-in-f5.1e100.net
74.125.226.98 reverse: yyz08s13-in-f2.1e100.net
74.125.226.102 reverse: yyz08s13-in-f6.1e100.net
I'm sorry for that. The nice+parallel example got neglected while I was focusing on the compile-to-c feature.
_Now the example is fixed, please try it_
Thanks for the detailed report.
I've used the mkInterface utility, to automatically create an .interface.md file from require('dns')
cd ~/LiteScript/devel/source/v0.8/utility
lite -run mkInterface dns >dns.interface.md
After some tweaking, the interface for dns is now included in LiteScript/lib/interfaces
By fixing the import problem, also the correct "nicegen" is now imported.
Hi @luciotato , I'm sorry I never saw your reply until now. I have practically no recollection of this discussion. You can close the issue if you'd like.
@desm same here, I dont remember why I am subscribed to this issue 😂
Hi, I get the following error when trying to run the sample LiteScript blog-example-dns.lite.md:
Commit hash: '5767d7' LiteScript version: LiteScript-to-js v0.8.9 Build Date Thu Oct 23 2014 07:54:38 GMT-0300 (ART)