[tw] Re: [TW5] Code style with plugin development by example

2016-01-10 Thread Tobias Beer
Hi Devin,

While I would better like to understand the *exports* mechanism myself,
and so I can't actually evaluate the significance of your request,
please post things like this at TiddlyWikiDev 
.

Anyhow, if you understand the TiddlyWiki core as something plugable (into 
sth else) itself,
which I don't know whether it is or not,
would that have you re-evaluate your assessment?

Best wishes,

Tobias.

-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWiki" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to tiddlywiki+unsubscr...@googlegroups.com.
To post to this group, send email to tiddlywiki@googlegroups.com.
Visit this group at https://groups.google.com/group/tiddlywiki.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tiddlywiki/6152ba2f-15d4-4de8-816c-e44afaa4fd16%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[tw] Re: [TW5] Code style with plugin development by example

2016-01-11 Thread BJ
Hi Devin,
my plugin modules end up like this:

( function ( module , exports , console , setInterval , clearInterval , 
setTimeout , clearTimeout , Buffer , $tw , require ) { ( function ( ) { 
/*\
title: $:/core/modules/parsers/wikiparser/abstractwikiparser.js
type: application/javascript
module-type: global
 
base class- individual wikiparser inherit from this class
 
\*/ 
( function ( ) { 
 
/*jslint node: true, browser: true */ 
/*global $tw: false */ 
"use strict" ; 
 
var AbstrWikiParser = function ( specifier ) { 
   
exports [ "AbstrWikiParser" ] = AbstrWikiParser ; 
 
} ) ( ) ; 
 
; } ) ( ) ; 
return exports ; 
} ) 

so it looks like the IIFE is redundent.

cheer

BJ 
On Monday, January 11, 2016 at 1:01:10 AM UTC, Devin Weaver wrote:
>
> I was just curious about the use of IFE in the core plugins. Since using 
> them as examples I felt the need to continue the style. However looking at 
> how modules are handled in TiddlyWiki it seems that an IIFE might be 
> redundant.
>
> For example:
>
> /*\
> title: $:/plugins/my-plugin/plugin.js
> type: application/javascript
> module-type: startup
>
> An example startup plugin
>
> \*/
> (function() {
>
>   exports.startup = function startup() {
> // Do stuff
>   }
>
> })();
>
> Since TiddlyWiki wraps code in a sandbox in order to manage the exports 
> variable would it not be scoped in it's own *context*? Wouldn't this 
> wrapping mean the (function() {…})() is redundant?
>
> This became a point of question for me while I was using Babel 
>  which transpiles ES2015 (ES6) modules into CommonJS 
> (which the TiddlyWiki code *mostly* emulates). But unlike CoffeeScript 
> it's output doesn't warp inside an IIFE. This is because Babel assumes that 
> the files it outputs will be bundled with a module system like Browserify 
> or AMD. TittleWiki is that bundling system using it's sandbox to evaluate 
> plugin tiddlers.
>
> For completeness the above code would look like this in ES2015:
>
> /*\
> title: $:/plugins/my-plugin/plugin.js
> type: application/javascript
> module-type: startup
>
> An example startup plugin
>
> \*/
> export function startup() {
>   // Do stuff
> }
>
> Which outputs a file like:
>
> "use strict";
>
> Object.defineProperty(exports, "__esModule", {
>   value: true
> });
> exports.startup = startup;
> /*\
> title: $:/plugins/my-plugin/plugin.js
> type: application/javascript
> module-type: startup
>
> An example startup plugin
>
> \*/
> function startup() {
>   // Do stuff
> }
>
> So would this cause a startup function to be global? Or is the sandbox 
> enough to prevent global pollution? And in the case of the later what is 
> the benefit (if any) of wrapping the core code in IIFEs?
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWiki" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to tiddlywiki+unsubscr...@googlegroups.com.
To post to this group, send email to tiddlywiki@googlegroups.com.
Visit this group at https://groups.google.com/group/tiddlywiki.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tiddlywiki/3c1d9e6a-0693-4c04-926d-527ac52dc98c%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [tw] Re: [TW5] Code style with plugin development by example

2016-01-12 Thread Felix Küppers
Thanks BJ and Devin for looking at this. I think it is ok to remove the
redundant closure then. It always looked ugly :)

On 01/11/2016 11:36 PM, BJ wrote:
> Hi Devin,
> my plugin modules end up like this:
>
> ( function ( module , exports , console , setInterval ,
> clearInterval , setTimeout , clearTimeout , Buffer , $tw , require ) {
> ( function ( ) {
> /*\
> title: $:/core/modules/parsers/wikiparser/abstractwikiparser.js
> type: application/javascript
> module-type: global
>  
> base class- individual wikiparser inherit from this class
>  
> \*/
> ( function ( ) {
>  
> /*jslint node: true, browser: true */
> /*global $tw: false */
> "use strict" ;
>  
> var AbstrWikiParser = function ( specifier ) {
>
> exports [ "AbstrWikiParser" ] = AbstrWikiParser ;
>  
> } ) ( ) ;
>  
> ; } ) ( ) ;
> return exports ;
> } )
>
> so it looks like the IIFE is redundent.
>
> cheer
>
> BJ
> On Monday, January 11, 2016 at 1:01:10 AM UTC, Devin Weaver wrote:
>
> I was just curious about the use of IFE in the core plugins. Since
> using them as examples I felt the need to continue the style.
> However looking at how modules are handled in TiddlyWiki it seems
> that an IIFE might be redundant.
>
> For example:
>
> |
> /*\
> title: $:/plugins/my-plugin/plugin.js
> type: application/javascript
> module-type: startup
>
> An example startup plugin
>
> \*/
> (function(){
>
>   exports.startup =functionstartup(){
> // Do stuff
>   }
>
> })();
> |
>
> Since TiddlyWiki wraps code in a sandbox in order to manage the
> exports variable would it not be scoped in it's own /context/?
> Wouldn't this wrapping mean the (function() {…})() is redundant?
>
> This became a point of question for me while I was using Babel
>  which transpiles ES2015 (ES6) modules into
> CommonJS (which the TiddlyWiki code /mostly/ emulates). But unlike
> CoffeeScript it's output doesn't warp inside an IIFE. This is
> because Babel assumes that the files it outputs will be bundled
> with a module system like Browserify or AMD. TittleWiki is that
> bundling system using it's sandbox to evaluate plugin tiddlers.
>
> For completeness the above code would look like this in ES2015:
>
> |
> /*\
> title: $:/plugins/my-plugin/plugin.js
> type: application/javascript
> module-type: startup
>
> An example startup plugin
>
> \*/
> exportfunctionstartup(){
>   // Do stuff
> }
> |
>
> Which outputs a file like:
>
> |
> "use strict";
>
> Object.defineProperty(exports,"__esModule",{
>   value:true
> });
> exports.startup =startup;
> /*\
> title: $:/plugins/my-plugin/plugin.js
> type: application/javascript
> module-type: startup
>
> An example startup plugin
>
> \*/
> functionstartup(){
>   // Do stuff
> }
> |
>
> So would this cause a startupfunction to be global? Or is the
> sandbox enough to prevent global pollution? And in the case of the
> later what is the benefit (if any) of wrapping the core code in IIFEs?
>
> -- 
> You received this message because you are subscribed to the Google
> Groups "TiddlyWiki" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to tiddlywiki+unsubscr...@googlegroups.com
> .
> To post to this group, send email to tiddlywiki@googlegroups.com
> .
> Visit this group at https://groups.google.com/group/tiddlywiki.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/tiddlywiki/3c1d9e6a-0693-4c04-926d-527ac52dc98c%40googlegroups.com
> .
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWiki" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to tiddlywiki+unsubscr...@googlegroups.com.
To post to this group, send email to tiddlywiki@googlegroups.com.
Visit this group at https://groups.google.com/group/tiddlywiki.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tiddlywiki/BLU436-SMTP37F676F8168777007865D4CECA0%40phx.gbl.
For more options, visit https://groups.google.com/d/optout.


Re: [tw] Re: [TW5] Code style with plugin development by example

2016-01-12 Thread BJ
I'd be sad to see them go, they give me a warm safe feeling!

On Tuesday, January 12, 2016 at 9:52:41 AM UTC, Felix Küppers wrote:
>
> Thanks BJ and Devin for looking at this. I think it is ok to remove the 
> redundant closure then. It always looked ugly :)
>
> On 01/11/2016 11:36 PM, BJ wrote:
>
> Hi Devin,
> my plugin modules end up like this:
>
> ( function ( module , exports , console , setInterval , clearInterval 
> , setTimeout , clearTimeout , Buffer , $tw , require ) { ( function ( ) { 
> /*\
> title: $:/core/modules/parsers/wikiparser/abstractwikiparser.js
> type: application/javascript
> module-type: global
>  
> base class- individual wikiparser inherit from this class
>  
> \*/ 
> ( function ( ) { 
>  
> /*jslint node: true, browser: true */ 
> /*global $tw: false */ 
> "use strict" ; 
>  
> var AbstrWikiParser = function ( specifier ) { 
>
> exports [ "AbstrWikiParser" ] = AbstrWikiParser ; 
>  
> } ) ( ) ; 
>  
> ; } ) ( ) ; 
> return exports ; 
> } ) 
>
> so it looks like the IIFE is redundent.
>
> cheer
>
> BJ 
> On Monday, January 11, 2016 at 1:01:10 AM UTC, Devin Weaver wrote: 
>>
>> I was just curious about the use of IFE in the core plugins. Since using 
>> them as examples I felt the need to continue the style. However looking at 
>> how modules are handled in TiddlyWiki it seems that an IIFE might be 
>> redundant.
>>
>> For example:
>>
>> /*\
>> title: $:/plugins/my-plugin/plugin.js
>> type: application/javascript
>> module-type: startup
>>
>> An example startup plugin
>>
>> \*/
>> (function() {
>>
>>   exports.startup = function startup() {
>> // Do stuff
>>   }
>>
>> })();
>>
>> Since TiddlyWiki wraps code in a sandbox in order to manage the exports 
>> variable would it not be scoped in it's own *context*? Wouldn't this 
>> wrapping mean the (function() {…})() is redundant?
>>
>> This became a point of question for me while I was using Babel 
>>  which transpiles ES2015 (ES6) modules into 
>> CommonJS (which the TiddlyWiki code *mostly* emulates). But unlike 
>> CoffeeScript it's output doesn't warp inside an IIFE. This is because Babel 
>> assumes that the files it outputs will be bundled with a module system like 
>> Browserify or AMD. TittleWiki is that bundling system using it's sandbox to 
>> evaluate plugin tiddlers.
>>
>> For completeness the above code would look like this in ES2015:
>>
>> /*\
>> title: $:/plugins/my-plugin/plugin.js
>> type: application/javascript
>> module-type: startup
>>
>> An example startup plugin
>>
>> \*/
>> export function startup() {
>>   // Do stuff
>> }
>>
>> Which outputs a file like:
>>
>> "use strict";
>>
>> Object.defineProperty(exports, "__esModule", {
>>   value: true
>> });
>> exports.startup = startup;
>> /*\
>> title: $:/plugins/my-plugin/plugin.js
>> type: application/javascript
>> module-type: startup
>>
>> An example startup plugin
>>
>> \*/
>> function startup() {
>>   // Do stuff
>> }
>>
>> So would this cause a startup function to be global? Or is the sandbox 
>> enough to prevent global pollution? And in the case of the later what is 
>> the benefit (if any) of wrapping the core code in IIFEs?
>>
>> -- 
> You received this message because you are subscribed to the Google Groups 
> "TiddlyWiki" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to tiddlywiki+...@googlegroups.com .
> To post to this group, send email to tiddl...@googlegroups.com 
> .
> Visit this group at https://groups.google.com/group/tiddlywiki.
> To view this discussion on the web visit 
> 
> https://groups.google.com/d/msgid/tiddlywiki/3c1d9e6a-0693-4c04-926d-527ac52dc98c%40googlegroups.com
> .
> For more options, visit https://groups.google.com/d/optout.
>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWiki" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to tiddlywiki+unsubscr...@googlegroups.com.
To post to this group, send email to tiddlywiki@googlegroups.com.
Visit this group at https://groups.google.com/group/tiddlywiki.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tiddlywiki/c3ab370e-d2f0-4a84-ad18-55eb22f5cb29%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [tw] Re: [TW5] Code style with plugin development by example

2016-01-12 Thread Felix Küppers

> I'd be sad to see them go, they give me a warm safe feeling!

Never thought about the psychological effect of this …but now that you
mention it, yes, makes sense. I also feel more secure having them
arround. Maybe that is what Jeremy intended in the first place, to give
us this warm, secure feeling when writing code for TW.

-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWiki" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to tiddlywiki+unsubscr...@googlegroups.com.
To post to this group, send email to tiddlywiki@googlegroups.com.
Visit this group at https://groups.google.com/group/tiddlywiki.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tiddlywiki/BLU437-SMTP48EC6BE54ABC7FFB696037CECA0%40phx.gbl.
For more options, visit https://groups.google.com/d/optout.


Re: [tw] Re: [TW5] Code style with plugin development by example

2016-01-12 Thread Tobias Beer
Hi BJ & Felix,
 

> I'd be sad to see them go, they give me a warm safe feeling!
>

You guys are killing me. So, warm feelings you say.  :D

Best wishes,

Tobias.

-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWiki" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to tiddlywiki+unsubscr...@googlegroups.com.
To post to this group, send email to tiddlywiki@googlegroups.com.
Visit this group at https://groups.google.com/group/tiddlywiki.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tiddlywiki/a171be6f-4b3f-4d68-a712-dda2f19126cd%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [tw] Re: [TW5] Code style with plugin development by example

2016-01-12 Thread Jeremy Ruston
The reason for the apparently unnecessary IFE is so that the same .js files can 
be require()'d by regular Node.js code.

By the way, please can we try to use the dev group for this kind of thing,

Best wishes

Jeremy

Sent from my iPad

> On 12 Jan 2016, at 07:24, Tobias Beer  wrote:
> 
> Hi BJ & Felix,
>  
>> I'd be sad to see them go, they give me a warm safe feeling!
> 
> You guys are killing me. So, warm feelings you say.  :D
> 
> Best wishes,
> 
> Tobias.
> -- 
> You received this message because you are subscribed to the Google Groups 
> "TiddlyWiki" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to tiddlywiki+unsubscr...@googlegroups.com.
> To post to this group, send email to tiddlywiki@googlegroups.com.
> Visit this group at https://groups.google.com/group/tiddlywiki.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/tiddlywiki/a171be6f-4b3f-4d68-a712-dda2f19126cd%40googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWiki" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to tiddlywiki+unsubscr...@googlegroups.com.
To post to this group, send email to tiddlywiki@googlegroups.com.
Visit this group at https://groups.google.com/group/tiddlywiki.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tiddlywiki/7604CD6C-E191-4B4B-A4AE-6B080265B012%40gmail.com.
For more options, visit https://groups.google.com/d/optout.


Re: [tw] Re: [TW5] Code style with plugin development by example

2016-01-12 Thread Matabele
Hi

One advantage, as far as I am concerned -- after auto formatting, I always 
have to unindent the whole file, as the redundant wrapper inserts an extra 
tab. Without the redundant wrapper, I should then be able to auto format 
and submit.

regards

On Tuesday, 12 January 2016 11:52:41 UTC+2, Felix Küppers wrote:
>
> Thanks BJ and Devin for looking at this. I think it is ok to remove the 
> redundant closure then. It always looked ugly :)
>
> On 01/11/2016 11:36 PM, BJ wrote:
>
> Hi Devin,
> my plugin modules end up like this:
>
> ( function ( module , exports , console , setInterval , clearInterval 
> , setTimeout , clearTimeout , Buffer , $tw , require ) { ( function ( ) { 
> /*\
> title: $:/core/modules/parsers/wikiparser/abstractwikiparser.js
> type: application/javascript
> module-type: global
>  
> base class- individual wikiparser inherit from this class
>  
> \*/ 
> ( function ( ) { 
>  
> /*jslint node: true, browser: true */ 
> /*global $tw: false */ 
> "use strict" ; 
>  
> var AbstrWikiParser = function ( specifier ) { 
>
> exports [ "AbstrWikiParser" ] = AbstrWikiParser ; 
>  
> } ) ( ) ; 
>  
> ; } ) ( ) ; 
> return exports ; 
> } ) 
>
> so it looks like the IIFE is redundent.
>
> cheer
>
> BJ 
> On Monday, January 11, 2016 at 1:01:10 AM UTC, Devin Weaver wrote: 
>>
>> I was just curious about the use of IFE in the core plugins. Since using 
>> them as examples I felt the need to continue the style. However looking at 
>> how modules are handled in TiddlyWiki it seems that an IIFE might be 
>> redundant.
>>
>> For example:
>>
>> /*\
>> title: $:/plugins/my-plugin/plugin.js
>> type: application/javascript
>> module-type: startup
>>
>> An example startup plugin
>>
>> \*/
>> (function() {
>>
>>   exports.startup = function startup() {
>> // Do stuff
>>   }
>>
>> })();
>>
>> Since TiddlyWiki wraps code in a sandbox in order to manage the exports 
>> variable would it not be scoped in it's own *context*? Wouldn't this 
>> wrapping mean the (function() {…})() is redundant?
>>
>> This became a point of question for me while I was using Babel 
>>  which transpiles ES2015 (ES6) modules into 
>> CommonJS (which the TiddlyWiki code *mostly* emulates). But unlike 
>> CoffeeScript it's output doesn't warp inside an IIFE. This is because Babel 
>> assumes that the files it outputs will be bundled with a module system like 
>> Browserify or AMD. TittleWiki is that bundling system using it's sandbox to 
>> evaluate plugin tiddlers.
>>
>> For completeness the above code would look like this in ES2015:
>>
>> /*\
>> title: $:/plugins/my-plugin/plugin.js
>> type: application/javascript
>> module-type: startup
>>
>> An example startup plugin
>>
>> \*/
>> export function startup() {
>>   // Do stuff
>> }
>>
>> Which outputs a file like:
>>
>> "use strict";
>>
>> Object.defineProperty(exports, "__esModule", {
>>   value: true
>> });
>> exports.startup = startup;
>> /*\
>> title: $:/plugins/my-plugin/plugin.js
>> type: application/javascript
>> module-type: startup
>>
>> An example startup plugin
>>
>> \*/
>> function startup() {
>>   // Do stuff
>> }
>>
>> So would this cause a startup function to be global? Or is the sandbox 
>> enough to prevent global pollution? And in the case of the later what is 
>> the benefit (if any) of wrapping the core code in IIFEs?
>>
>> -- 
> You received this message because you are subscribed to the Google Groups 
> "TiddlyWiki" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to tiddlywiki+...@googlegroups.com .
> To post to this group, send email to tiddl...@googlegroups.com 
> .
> Visit this group at https://groups.google.com/group/tiddlywiki.
> To view this discussion on the web visit 
> 
> https://groups.google.com/d/msgid/tiddlywiki/3c1d9e6a-0693-4c04-926d-527ac52dc98c%40googlegroups.com
> .
> For more options, visit https://groups.google.com/d/optout.
>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWiki" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to tiddlywiki+unsubscr...@googlegroups.com.
To post to this group, send email to tiddlywiki@googlegroups.com.
Visit this group at https://groups.google.com/group/tiddlywiki.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tiddlywiki/880fc92b-57ef-4fa0-b896-62852aefec33%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [tw] Re: [TW5] Code style with plugin development by example

2016-01-12 Thread Felix Küppers

> The reason for the apparently unnecessary IFE is so that the same .js
> files can be require()'d by regular Node.js code.

So given the psychological benefits ("warm feeling") and the
compatibility reasons ("node imports") I come to the following conclusion:

The extra closure matters.

-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWiki" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to tiddlywiki+unsubscr...@googlegroups.com.
To post to this group, send email to tiddlywiki@googlegroups.com.
Visit this group at https://groups.google.com/group/tiddlywiki.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tiddlywiki/BLU436-SMTP171E5AD5FF0792673744073CECA0%40phx.gbl.
For more options, visit https://groups.google.com/d/optout.


Re: [tw] Re: [TW5] Code style with plugin development by example

2016-01-12 Thread Devin Weaver


On Tuesday, January 12, 2016 at 9:34:05 AM UTC-5, Felix Küppers wrote:
>
>
> The reason for the apparently unnecessary IFE is so that the same .js 
> files can be require()'d by regular Node.js code.
>
>
> So given the psychological benefits ("warm feeling") and the compatibility 
> reasons ("node imports") I come to the following conclusion:
>
> The extra closure matters.
>

http://stackoverflow.com/a/21531410/227176

>From the Node.js docs :

Variables local to the module will be private, as though the module was 
wrapped in a function


Also:

New Study: Immediately Invoked Function Expressions linked to warm feelings 
(even when redundant).

Also:

Requesting further discussion to be moved to TiddlyWiki-Dev list.
 

-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWiki" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to tiddlywiki+unsubscr...@googlegroups.com.
To post to this group, send email to tiddlywiki@googlegroups.com.
Visit this group at https://groups.google.com/group/tiddlywiki.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tiddlywiki/1a20b6b7-f7a3-40a0-8712-82a4c6fc86c6%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [tw] Re: [TW5] Code style with plugin development by example

2016-01-12 Thread Felix Küppers
No real moderator move but I created a new one here:
https://groups.google.com/forum/#!topic/tiddlywikidev/7ths0cNQN-4


On 01/12/2016 03:46 PM, Devin Weaver wrote:
>
>
> On Tuesday, January 12, 2016 at 9:34:05 AM UTC-5, Felix Küppers wrote:
>
>
>> The reason for the apparently unnecessary IFE is so that the same
>> .js files can be require()'d by regular Node.js code.
>
> So given the psychological benefits ("warm feeling") and the
> compatibility reasons ("node imports") I come to the following
> conclusion:
>
> The extra closure matters.
>
>
> http://stackoverflow.com/a/21531410/227176
>
> From the Node.js docs
> :
>
> Variables local to the module will be private, as though the
> module was wrapped in a function
>
>
> Also:
>
> New Study: Immediately Invoked Function Expressions linked to warm
> feelings (even when redundant).
>
> Also:
>
> Requesting further discussion to be moved to TiddlyWiki-Dev list.
>  
> -- 
> You received this message because you are subscribed to the Google
> Groups "TiddlyWiki" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to tiddlywiki+unsubscr...@googlegroups.com
> .
> To post to this group, send email to tiddlywiki@googlegroups.com
> .
> Visit this group at https://groups.google.com/group/tiddlywiki.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/tiddlywiki/1a20b6b7-f7a3-40a0-8712-82a4c6fc86c6%40googlegroups.com
> .
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWiki" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to tiddlywiki+unsubscr...@googlegroups.com.
To post to this group, send email to tiddlywiki@googlegroups.com.
Visit this group at https://groups.google.com/group/tiddlywiki.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tiddlywiki/BLU436-SMTP227C897773AF62A5FCE0D32CECA0%40phx.gbl.
For more options, visit https://groups.google.com/d/optout.