Hey Evan,
Again - WOW - thanks!
Just doing some testing and came across the following:
- [tag[Expenses]get[value]]
- 2.03 1.49 14.90
- map(function(x):(x*x), [tag[Expenses]get[value]])
- 4.12 2.22 222.01
- map(function(x):(x*x* & ','*), [tag[Expenses]get[value]])
- 4.120899999999999, 2.2201, 222.01000000000002,
Diego
On Monday, January 15, 2018 at 10:26:27 AM UTC-6, Evan Balster wrote:
>
> Hey, Tony —
>
> The JavaScript error is a defect in attribute-modules — that's a core mod
> with a lot more potential to affect wiki stability, which is why I made
> some warnings about it.
>
> I think if you grab the latest version of the attribute-modules plugin
> from the formulas wiki, even though the version number is the same (my
> mistake), it should fix the issue and restore support for that feature.
> Sorry about the trouble.
>
> On Monday, 15 January 2018 00:32:42 UTC-6, TonyM wrote:
>>
>> Evan,
>>
>> I dragged the new version plugin to two different wikis, one saved and
>> reloaded OK.
>>
>> The Other will not reload, nor does safemode work, giving the following
>> error.
>>
>> Internal JavaScript Error
>> Well, this is embarrassing. It is recommended that you restart TiddlyWiki
>> by refreshing your browser
>> Error executing boot module $:/core/modules/widgets/attributes/macro.js:
>> "Cannot find module named '$:/plugins/ebalster/formula/operands.js'
>> required by module '$:/core/modules/widgets/attributes/macro.js', resolved
>> to $:/plugins/ebalster/formula/operands.js" undefined
>>
>> From where I can go no where.
>>
>> I am trying to fix the wiki now but just wanted to let you know.
>>
>> I installed a couple of your other plugins previously the attribute and
>> if.else plugins if they may have something to do with it.
>>
>> I am not so sure how to toggle a plugin enabled to disable when editing
>> the tiddlywiki file directly, to eliminate your plugin.
>>
>> Regards
>> Tony
>>
>> On Monday, January 15, 2018 at 4:05:05 PM UTC+11, Evan Balster wrote:
>>>
>>> *Formula 0.2.0 released*:
>>> https://evanbalster.com/tiddlywiki/formulas.html
>>> GitHub and issue tracking:
>>> https://github.com/EvanBalster/TiddlyWikiFormula
>>>
>>> This one's a doozie... Changelog:
>>>
>>> A substantial re-write of the formulas plugin that introduces various
>>> improvements and improves support for functional programming. Various minor
>>> compatibility-breaking changes were made.
>>>
>>> - Introduced (lambda) functions and formula-local variables.
>>> - Added let construct <http://localhost:8080/#LetConstruct> for
>>> making local variables.
>>> - Added function declaration <http://localhost:8080/#Function>.
>>> Closures are not supported yet.
>>> - Added map function <http://localhost:8080/#Functions> for
>>> manipulating array elements.
>>> - Improved number formatting.
>>> - Default number formatting no longer displays tiny imprecisions.
>>> - Number formats may be specified with numeral.js
>>> <http://numeraljs.com/>, enabling thousands separators, k/m/b
>>> notation and greater control over digits.
>>> - *Renamed some FormulaWidget
>>> <http://localhost:8080/#FormulaWidget> and FormulaVarsWidget
>>> <http://localhost:8080/#FormulaVarsWidget> attributes.*
>>> - Original number formatting can still be used by specifying
>>> precision (no value).
>>> - Enhanced support for imported values.
>>> - Added Functions <http://localhost:8080/#Functions> for
>>> importing values as text: transclude, transclude_index, variable
>>> - Added datum function for interpreting text as a Datum
>>> <http://localhost:8080/#Datum>.
>>> - *Datum parsing now recognizes qualifying 14- and 17-digit
>>> numbers as TiddlyWiki dates.* (eg. created & modified fields).
>>> - *Widgets now display errors in the TiddlyWiki style*, like this.
>>> - $formula-vars will display any errors instead of its normal
>>> content.
>>> - $formula uses tc-error styling.
>>> - *Value conversion behaviors have changed.*
>>> - Non-array values will not be treated as single-element arrays.
>>> - Enhanced array functions sum, average, product and count.
>>> - Multi-dimensional array values are properly supported.
>>> - *count ignores empty values.*
>>> - New function counta counts empty values.
>>> - Internal implementation was changed. *This will break
>>> customizations.*
>>> - Consolidated "Node" type replaces Operator, Operand and Value.
>>> - Removed Value "boxing" and percentage values.
>>> - Implemented a new type cast mechanism, making custom JavaScript
>>> functions simpler to write.
>>> - Computation now uses a "context" object.
>>> - Fixed doc error: $noRebuild option is not called $noRefresh
>>> - The substitute and trim functions now process all occurrences, not
>>> just one.
>>> - Fixed implementation of the modulo function.
>>> - *The % operator no longer affects display style.*
>>> - Use a format string instread.
>>> - *+, -, add and subtract no longer auto-sum their operands.*
>>> - Use sum instead.
>>>
>>>
>>> General remarks: This makes formula a lot more powerful, especially for
>>> iterating through arrays with the MAP function. I might investigate even
>>> more flexible ways to use that later. The absence of proper closures does
>>> make functions and locals less useful as they could be, as local variables
>>> can't currently be used inside the function supplied to MAP.
>>>
>>> For a simple example of a computation that wasn't possible before, see
>>> the Line Graph demo: http://localhost:8080/#Demo%3A%20Line%20Graph
>>>
>>>
>>> On Saturday, 13 January 2018 15:25:29 UTC-6, coda coder wrote:
>>>>
>>>> Ah, the joys of IEEE-754...
>>>>
>>>> <$if "anyone wants to see the gory details of fp in javascript (and a
>>>> slew of other languages all of which are dependent on today's CPUs)">
>>>> https://www.h-schmidt.net/FloatConverter/
>>>> </$if>
>>>>
>>>> :)
>>>>
>>>> On Saturday, January 13, 2018 at 2:09:28 PM UTC-6, Evan Balster wrote:
>>>>>
>>>>> Hey, all —
>>>>>
>>>>> I get 5.6000000000000005 as a result (instead of 5.6).
>>>>>>
>>>>>
>>>>> Right now formula uses the JavaScript style for displaying numbers by
>>>>> default, and it's pretty terrible. The inaccuracy is "floating point"
>>>>> error and any reasonable system would round it off somehow. To get rid
>>>>> of
>>>>> it, refer to the "fixed" and "precision" options in FormulaWidget:
>>>>> http://evanbalster.com/tiddlywiki/formulas.html#FormulaWidget
>>>>>
>>>>> I'm probably going to change how numbers are formatted, likely using
>>>>> numeral.js <http://numeraljs.com/> or something like it. This is one
>>>>> of a few compatibility-breaking changes I'm thinking about for the big
>>>>> update.
>>>>>
>>>>>
>>>>> On Saturday, 13 January 2018 13:28:30 UTC-6, [email protected] wrote:
>>>>>>
>>>>>> Hi Evan,
>>>>>>
>>>>>> I just ran into a weird problem. When I enter
>>>>>>
>>>>>> (= sum(1.5,1.2,2,0.9) =)
>>>>>>
>>>>>> (= 2+1.2+0.9+1.5 =)
>>>>>>
>>>>>> I get 5.6000000000000005 as a result (instead of 5.6). If I change
>>>>>> the numbers slightly, I get the correct result.
>>>>>>
>>>>>> Is this a bug, or is there a well known explanation I'm not aware of?
>>>>>>
>>>>>> Kind regards,
>>>>>>
>>>>>> Stef
>>>>>>
>>>>>
--
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 [email protected].
To post to this group, send email to [email protected].
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/74fab411-6074-4c7c-b897-2d9f5af62fe4%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.