* Bug: Operator associativity problem [9.1.9 (release_9.1.9-65-g5e4542 @ /usr/share/emacs/26.1/lisp/org/)]
@ 2019-09-25 9:50 Justus Winter
2019-09-25 12:51 ` Fraga, Eric
0 siblings, 1 reply; 5+ messages in thread
From: Justus Winter @ 2019-09-25 9:50 UTC (permalink / raw)
To: emacs-orgmode
Remember to cover the basics, that is, what you expected to happen and
what in fact did happen. You don't know how to make a good report? See
https://orgmode.org/manual/Feedback.html#Feedback
Your bug report will be posted to the Org mailing list.
------------------------------------------------------------------------
I noticed a operator associativity problem when evaluating formulas in
tables. To reproduce, enter:
| :=6/2*3 |
And evaluate the formula. This results in:
| 1 |
#+TBLFM: @1$1=6/2*3
Whereas AIUI it should be 9:
% gcc -x c - <<< 'int main() { return 6/2*3; }' && ./a.out ; echo $?
9
% python -c 'print(6/2*3)'
9
Emacs : GNU Emacs 26.1 (build 2, x86_64-pc-linux-gnu, GTK+ Version 3.24.4)
of 2019-02-03, modified by Debian
Package: Org mode version 9.1.9 (release_9.1.9-65-g5e4542 @ /usr/share/emacs/26.1/lisp/org/)
current state:
==============
(setq
org-src-mode-hook '(org-src-babel-configure-edit-buffer
org-src-mode-configure-edit-buffer)
org-after-todo-state-change-hook '(org-clock-out-if-current)
org-metadown-hook '(org-babel-pop-to-session-maybe)
org-clock-out-hook '(org-clock-remove-empty-clock-drawer)
org-mode-hook '(#[0 "\300\301\302\303\304$\207"
[add-hook change-major-mode-hook org-show-block-all append
local]
5]
#[0 "\300\301\302\303\304$\207"
[add-hook change-major-mode-hook org-babel-show-result-all
append local]
5]
org-babel-result-hide-spec org-babel-hide-all-hashes)
org-archive-hook '(org-attach-archive-delete-maybe)
org-confirm-elisp-link-function 'yes-or-no-p
org-agenda-before-write-hook '(org-agenda-add-entry-text)
org-metaup-hook '(org-babel-load-in-session-maybe)
org-bibtex-headline-format-function #[257 "\300\236A\207" [:title] 3 "\n\n(fn ENTRY)"]
org-babel-pre-tangle-hook '(save-buffer)
org-tab-first-hook '(org-babel-hide-result-toggle-maybe
org-babel-header-arg-expand)
org-occur-hook '(org-first-headline-recenter)
org-cycle-hook '(org-cycle-hide-archived-subtrees org-cycle-hide-drawers
org-cycle-show-empty-lines
org-optimize-window-after-visibility-change)
org-speed-command-hook '(org-speed-command-activate
org-babel-speed-command-activate)
org-confirm-shell-link-function 'yes-or-no-p
org-link-parameters '(("id" :follow org-id-open)
("rmail" :follow org-rmail-open :store
org-rmail-store-link)
("mhe" :follow org-mhe-open :store org-mhe-store-link)
("irc" :follow org-irc-visit :store org-irc-store-link)
("info" :follow org-info-open :export org-info-export
:store org-info-store-link)
("gnus" :follow org-gnus-open :store
org-gnus-store-link)
("docview" :follow org-docview-open :export
org-docview-export :store org-docview-store-link)
("bibtex" :follow org-bibtex-open :store
org-bibtex-store-link)
("bbdb" :follow org-bbdb-open :export org-bbdb-export
:complete org-bbdb-complete-link :store
org-bbdb-store-link)
("w3m" :store org-w3m-store-link) ("file+sys")
("file+emacs") ("doi" :follow org--open-doi-link)
("elisp" :follow org--open-elisp-link)
("file" :complete org-file-complete-link)
("ftp" :follow
(lambda (path) (browse-url (concat "ftp:" path))))
("help" :follow org--open-help-link)
("http" :follow
(lambda (path) (browse-url (concat "http:" path))))
("https" :follow
(lambda (path) (browse-url (concat "https:" path))))
("mailto" :follow
(lambda (path) (browse-url (concat "mailto:" path))))
("news" :follow
(lambda (path) (browse-url (concat "news:" path))))
("shell" :follow org--open-shell-link))
)
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Bug: Operator associativity problem [9.1.9 (release_9.1.9-65-g5e4542 @ /usr/share/emacs/26.1/lisp/org/)]
2019-09-25 9:50 Bug: Operator associativity problem [9.1.9 (release_9.1.9-65-g5e4542 @ /usr/share/emacs/26.1/lisp/org/)] Justus Winter
@ 2019-09-25 12:51 ` Fraga, Eric
2019-09-25 18:16 ` Justus Winter
0 siblings, 1 reply; 5+ messages in thread
From: Fraga, Eric @ 2019-09-25 12:51 UTC (permalink / raw)
To: Justus Winter; +Cc: emacs-orgmode@gnu.org
On Wednesday, 25 Sep 2019 at 11:50, Justus Winter wrote:
> I noticed a operator associativity problem when evaluating formulas in
> tables. To reproduce, enter:
>
> | :=6/2*3 |
>
> And evaluate the formula. This results in:
>
> | 1 |
> #+TBLFM: @1$1=6/2*3
Yes, this is a property (feature, ?) of Emacs Calc.
--
Eric S Fraga via Emacs 27.0.50, Org release_9.2.4-401-gfabd6d
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Bug: Operator associativity problem [9.1.9 (release_9.1.9-65-g5e4542 @ /usr/share/emacs/26.1/lisp/org/)]
2019-09-25 12:51 ` Fraga, Eric
@ 2019-09-25 18:16 ` Justus Winter
2019-09-26 5:23 ` Fraga, Eric
2019-09-26 9:23 ` Robert Pluim
0 siblings, 2 replies; 5+ messages in thread
From: Justus Winter @ 2019-09-25 18:16 UTC (permalink / raw)
To: Fraga, Eric; +Cc: emacs-orgmode@gnu.org
[-- Attachment #1: Type: text/plain, Size: 675 bytes --]
"Fraga, Eric" <e.fraga@ucl.ac.uk> writes:
> On Wednesday, 25 Sep 2019 at 11:50, Justus Winter wrote:
>> I noticed a operator associativity problem when evaluating formulas in
>> tables. To reproduce, enter:
>>
>> | :=6/2*3 |
>>
>> And evaluate the formula. This results in:
>>
>> | 1 |
>> #+TBLFM: @1$1=6/2*3
>
> Yes, this is a property (feature, ?) of Emacs Calc.
Wow! Re-reading the org-mode documentation I see that it is prominently
mentioned indeed, and that it is an precedence thing, not an
associativity one.
However, I cannot fathom the rationale behind this property, and for a
spreadsheet-like application I consider it borderline negligent.
Thanks,
Justus
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Bug: Operator associativity problem [9.1.9 (release_9.1.9-65-g5e4542 @ /usr/share/emacs/26.1/lisp/org/)]
2019-09-25 18:16 ` Justus Winter
@ 2019-09-26 5:23 ` Fraga, Eric
2019-09-26 9:23 ` Robert Pluim
1 sibling, 0 replies; 5+ messages in thread
From: Fraga, Eric @ 2019-09-26 5:23 UTC (permalink / raw)
To: Justus Winter; +Cc: emacs-orgmode@gnu.org
On Wednesday, 25 Sep 2019 at 20:16, Justus Winter wrote:
> However, I cannot fathom the rationale behind this property, and for a
> spreadsheet-like application I consider it borderline negligent.
Not my place to defend (or otherwise) the decisions that went into defining the grammar for Calc. However, there is no single universal precedence definition for algebraic expressions. People do write, e.g. in heat transfer applications, W/m^2 K to mean W/(m^2 K) which is not the precedence you believe should be implemented. Just because Excel, say, implements something does not make it negligent for others to implement something different.
As a mathematician, I always write my expressions as, for instance, W m^{-2} K^{-1} both in practice and when teaching to avoid all doubt.
--
Eric S Fraga via Emacs 27.0.50, Org release_9.2.4-401-gfabd6d
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Bug: Operator associativity problem [9.1.9 (release_9.1.9-65-g5e4542 @ /usr/share/emacs/26.1/lisp/org/)]
2019-09-25 18:16 ` Justus Winter
2019-09-26 5:23 ` Fraga, Eric
@ 2019-09-26 9:23 ` Robert Pluim
1 sibling, 0 replies; 5+ messages in thread
From: Robert Pluim @ 2019-09-26 9:23 UTC (permalink / raw)
To: Justus Winter; +Cc: emacs-orgmode@gnu.org, Fraga, Eric
[-- Attachment #1: Type: text/plain, Size: 794 bytes --]
>>>>> On Wed, 25 Sep 2019 20:16:26 +0200, Justus Winter <justus@sequoia-pgp.org> said:
Justus> "Fraga, Eric" <e.fraga@ucl.ac.uk> writes:
>> On Wednesday, 25 Sep 2019 at 11:50, Justus Winter wrote:
>>> I noticed a operator associativity problem when evaluating formulas in
>>> tables. To reproduce, enter:
>>>
>>> | :=6/2*3 |
>>>
>>> And evaluate the formula. This results in:
>>>
>>> | 1 |
>>> #+TBLFM: @1$1=6/2*3
>>
>> Yes, this is a property (feature, ?) of Emacs Calc.
Justus> Wow! Re-reading the org-mode documentation I see that it is prominently
Justus> mentioned indeed, and that it is an precedence thing, not an
Justus> associativity one.
See 'calc-multiplication-has-precedence'
Robert
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2019-09-26 9:24 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-09-25 9:50 Bug: Operator associativity problem [9.1.9 (release_9.1.9-65-g5e4542 @ /usr/share/emacs/26.1/lisp/org/)] Justus Winter
2019-09-25 12:51 ` Fraga, Eric
2019-09-25 18:16 ` Justus Winter
2019-09-26 5:23 ` Fraga, Eric
2019-09-26 9:23 ` Robert Pluim
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).