unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#15859: 24.3.50; Calc - dimensionless units again
@ 2013-11-10 23:35 Roland Winkler
  2020-11-22 15:13 ` Michael Heerdegen
                   ` (2 more replies)
  0 siblings, 3 replies; 15+ messages in thread
From: Roland Winkler @ 2013-11-10 23:35 UTC (permalink / raw)
  To: 15859


I thought that the new (though undocumented) variable
calc-allow-units-as-numbers allowed to perform unit conversions
involving dimensionless units. Yet I am still having trouble with
this.  (For the following I have used the default
calc-allow-units-as-numbers bound to t, assuming that this is what I
need.)

Say, the old expression is "7 m / (c s)" and I want to convert this
into a physically equal expression.  So I run calc-convert-units,
which will ask

  (The expression is unitless when simplified) Old Units: 

With calc-allow-units-as-numbers non-nil, I think calc-convert-units
should not ask this question, or there should be some other way to
customize calc-convert-units to skip this question.  Anyway, I enter
an empty string, because I do not know what else would be meaningful
here. [m/(c s) is equal to 3.33e-9, this cannot be required if I
just want to convert "7 m / (c s)" into something equal to this
expression.]

Now for the new unit:

(1) If I want to convert "7 m / (c s)" to a plain number, I enter "1",
    but then Calc throws an error "No units specified".
    The correct result would be 2.33e-8.

(2) If one wants to convert to the new unit "in / (c hr)" the result
    returned by calc-convert-units is 2.33e-8, that is, the plain
    number which would have been the correct result for (1).
    The new unit "in / (c hr)" is ignored by calc-convert-units.
    The correct result would be "992125.98 in / (c hr)".

Both examples assume that it should be possible to make a unit
conversion where the old expression on the stack is physically equal
to the new expression.  I think this assumption is reasonable.




In GNU Emacs 24.3.50.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.4.2)
 of 2013-11-10 on regnitz
Bzr revision: 115054 jan.h.d@swipnet.se-20131110121803-bv908hul7t8ji6c8
Windowing system distributor `The X.Org Foundation', version 11.0.11103000
System Description:	Ubuntu 12.04.3 LTS





^ permalink raw reply	[flat|nested] 15+ messages in thread

* bug#15859: 24.3.50; Calc - dimensionless units again
  2013-11-10 23:35 bug#15859: 24.3.50; Calc - dimensionless units again Roland Winkler
@ 2020-11-22 15:13 ` Michael Heerdegen
  2020-11-23 15:13   ` Roland Winkler
  2023-04-14 15:12 ` Michael Heerdegen
  2023-04-21 14:25 ` Michael Heerdegen
  2 siblings, 1 reply; 15+ messages in thread
From: Michael Heerdegen @ 2020-11-22 15:13 UTC (permalink / raw)
  To: Roland Winkler; +Cc: 15859

"Roland Winkler" <winkler@gnu.org> writes:

> Say, the old expression is "7 m / (c s)" and I want to convert this
> into a physically equal expression.  So I run calc-convert-units,
> which will ask
>
>   (The expression is unitless when simplified) Old Units:

Yes, I agree that the command doesn't behave in a useful way here.

u s works for me here and seems to do what you want.


Michael.





^ permalink raw reply	[flat|nested] 15+ messages in thread

* bug#15859: 24.3.50; Calc - dimensionless units again
  2020-11-22 15:13 ` Michael Heerdegen
@ 2020-11-23 15:13   ` Roland Winkler
  2020-11-24  1:00     ` Michael Heerdegen
  0 siblings, 1 reply; 15+ messages in thread
From: Roland Winkler @ 2020-11-23 15:13 UTC (permalink / raw)
  To: Michael Heerdegen; +Cc: 15859

On Sun Nov 22 2020 Michael Heerdegen wrote:
> "Roland Winkler" <winkler@gnu.org> writes:
> 
> > Say, the old expression is "7 m / (c s)" and I want to convert this
> > into a physically equal expression.  So I run calc-convert-units,
> > which will ask
> >
> >   (The expression is unitless when simplified) Old Units:
> 
> Yes, I agree that the command doesn't behave in a useful way here.
> 
> u s works for me here and seems to do what you want.

Thanks for confirming that the current behavior is not useful.  Long
ago, before Calc was merged into the GNU Emacs trunk.  Calc was
handling dimensionless units just fine, which is why I consider the
new behavior a bad regression.  Personally, am so annoyed by this
behavior that I run into too often that I have gone back to a
version of calc-units.el from old times before Calc was merged into
the GNU Emacs trunk.  (For myself, none of the changes that were
done since then to calc-units.el are significant or useful.)
I really would like to revert the broken changes in calc-units.el
and bring the relevant pieces of code back to what they used to be.
But I have not yet found the time to come up with a patch for this.





^ permalink raw reply	[flat|nested] 15+ messages in thread

* bug#15859: 24.3.50; Calc - dimensionless units again
  2020-11-23 15:13   ` Roland Winkler
@ 2020-11-24  1:00     ` Michael Heerdegen
  2020-11-24 23:37       ` Michael Heerdegen
  0 siblings, 1 reply; 15+ messages in thread
From: Michael Heerdegen @ 2020-11-24  1:00 UTC (permalink / raw)
  To: Roland Winkler; +Cc: Jay Belanger, 15859

"Roland Winkler" <winkler@gnu.org> writes:

For your recipe that failed to convert 7 m / (c s) to a unitless
expression using u c, if I specify as old units "m 1/s 1/c" and as new
units "1", I get a result with u c, but it is different from the result
I get with u s.  I tried some other combinations of old units
(e.g. skipping 1/c) but that doesn't result in a unitless expression.

I'm CC'ing Jay B. who seems to have worked on that code 8 years ago.
Maybe he can hear us?


Regards,

Michael.





^ permalink raw reply	[flat|nested] 15+ messages in thread

* bug#15859: 24.3.50; Calc - dimensionless units again
  2020-11-24  1:00     ` Michael Heerdegen
@ 2020-11-24 23:37       ` Michael Heerdegen
  2021-09-06  9:40         ` Lars Ingebrigtsen
  0 siblings, 1 reply; 15+ messages in thread
From: Michael Heerdegen @ 2020-11-24 23:37 UTC (permalink / raw)
  To: Roland Winkler; +Cc: Jay Belanger, 15859

Michael Heerdegen <michael_heerdegen@web.de> writes:

> I'm CC'ing Jay B. who seems to have worked on that code 8 years ago.
> Maybe he can hear us?

Maybe the tests whether the user specified any units are just too eager
in this case?  When I comment them out, I can input "1" or an empty
string two times and u c behaves as you want.

Michael.





^ permalink raw reply	[flat|nested] 15+ messages in thread

* bug#15859: 24.3.50; Calc - dimensionless units again
  2020-11-24 23:37       ` Michael Heerdegen
@ 2021-09-06  9:40         ` Lars Ingebrigtsen
  2021-09-17  1:45           ` Michael Heerdegen
  0 siblings, 1 reply; 15+ messages in thread
From: Lars Ingebrigtsen @ 2021-09-06  9:40 UTC (permalink / raw)
  To: Michael Heerdegen; +Cc: Jay Belanger, Roland Winkler, 15859

Michael Heerdegen <michael_heerdegen@web.de> writes:

> Michael Heerdegen <michael_heerdegen@web.de> writes:
>
>> I'm CC'ing Jay B. who seems to have worked on that code 8 years ago.
>> Maybe he can hear us?
>
> Maybe the tests whether the user specified any units are just too eager
> in this case?  When I comment them out, I can input "1" or an empty
> string two times and u c behaves as you want.

Do you have a proposed patch for this?

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no





^ permalink raw reply	[flat|nested] 15+ messages in thread

* bug#15859: 24.3.50; Calc - dimensionless units again
  2021-09-06  9:40         ` Lars Ingebrigtsen
@ 2021-09-17  1:45           ` Michael Heerdegen
  0 siblings, 0 replies; 15+ messages in thread
From: Michael Heerdegen @ 2021-09-17  1:45 UTC (permalink / raw)
  To: Lars Ingebrigtsen; +Cc: Jay Belanger, Roland Winkler, 15859

Lars Ingebrigtsen <larsi@gnus.org> writes:

> Do you have a proposed patch for this?

I don't, but maybe Roland is able to provide one?


Regards,

Michael.





^ permalink raw reply	[flat|nested] 15+ messages in thread

* bug#15859: 24.3.50; Calc - dimensionless units again
  2013-11-10 23:35 bug#15859: 24.3.50; Calc - dimensionless units again Roland Winkler
  2020-11-22 15:13 ` Michael Heerdegen
@ 2023-04-14 15:12 ` Michael Heerdegen
  2023-04-17  4:47   ` Roland Winkler
  2023-04-21 14:25 ` Michael Heerdegen
  2 siblings, 1 reply; 15+ messages in thread
From: Michael Heerdegen @ 2023-04-14 15:12 UTC (permalink / raw)
  To: Roland Winkler; +Cc: 15859

"Roland Winkler" <winkler@gnu.org> writes:

> (2) If one wants to convert to the new unit "in / (c hr)" the result
>     returned by calc-convert-units is 2.33e-8, that is, the plain
>     number which would have been the correct result for (1).
>     The new unit "in / (c hr)" is ignored by calc-convert-units.
>     The correct result would be "992125.98 in / (c hr)".

I tried to follow what Calc is doing in this case using Edebug.
Everything seems to work as expected - it's only that Calc automatically
unit-simplifies the resulting expression, and that brings us to the
simpler unit-less form.  This happens here (I was using fraction mode
when recording this backtrace):

| 1 -> (math-simplify-units (* (frac 126000000 127) (/ (var in var-in) (* (var c var-c) (var hr var-hr))))) 16:55:53.949
|   (math-apply-units (/ (/ (* 7 (var m var-m)) (* (/ (* 299792458 (var m var-m)) (var s var-s)) (var s var-s))) (/ (* 254 (* (^ 10 -2) (* (^ 10 -2) (var m var-m)))) (* (/ (* 299792458 (var m var-m)) (var s var-s)) (* 60 (* 60 (var s var-s)))))) (/ (var in var-in) (* (var c var-c) (var hr var-hr))) nil nil)
|   (math-convert-units-rec (/ (* 7 (var m var-m)) (* (var c var-c) (var s var-s))))
|   (math-normalize (let ((calc-internal-prec (+ calc-internal-prec 2))) (let ((compat (and (not pure) (math-find-compatible-unit expr new-units))) (math-cu-unit-list nil) (math-combining-units nil)) (if compat (math-simplify-units (math-mul (math-mul (math-simplify-units ...) (math-pow new-units ...)) (math-simplify-units (math-to-standard-units ... nil)))) (if (setq math-cu-unit-list (math-decompose-units new-units)) (progn (setq new-units (nth 2 ...)))) (if (eq (car-safe expr) '+) (progn (setq expr (math-simplify-units expr)))) (if (math-units-in-expr-p expr t) (let ((math-cu-new-units new-units) (math-cu-pure pure)) (math-convert-units-rec expr)) (math-apply-units (math-to-standard-units (list ... expr new-units) nil) new-units math-cu-unit-list pure))))))
|   (math-convert-units (/ (* 7 (var m var-m)) (* (var c var-c) (var s var-s))) (/ (var in var-in) (* (var c var-c) (var hr var-hr))) nil)
|   (calc-do (closure ((new-units . "in / (c hr)") (old-units)) nil (let ((expr (calc-top-n 1)) (uoldname nil) (unitscancel nil) (nouold nil) units defunits) (if (or (not (math-units-in-expr-p expr t)) (setq unitscancel (and (if ... ... calc-allow-units-as-numbers) (eq ... 1)))) (let ((uold (or old-units ...))) (if (or calc-allow-units-as-numbers (math-units-in-expr-p uold t)) nil (error "No units specified")) (if (eq (car-safe uold) 'error) (progn (error "Bad format in units expression: %s" ...))) (setq expr (math-mul expr uold)))) (setq defunits (math-get-default-units expr)) (if new-units nil (setq new-units (read-string (format-prompt (if ... ... "New units") defunits))) (if (string= new-units "") (progn (setq new-units (or defunits "1"))))) (if (string-match "\\` */" new-units) (progn (setq new-units (concat "1" new-units)))) (setq units (math-read-expr new-units)) (if (eq (car-safe units) 'error) (progn (error "Bad format in units expression: %s" (nth 2 units)))) (if calc-ensure-consistent-units (math-check-unit-consistency expr units)) (let ((unew (math-units-in-expr-p units t)) (std (and (eq ... ...) (assq ... math-standard-units-systems))) (comp (eq (car-safe units) '+))) (if (or unew std calc-allow-units-as-numbers) nil (error "No units specified")) (let* ((noold (and uoldname ...)) (res (if std ... ...))) (if std nil (math-put-default-units (if noold units res) (if comp units))) (calc-enter-result 1 "cvun" res))))) 44)
|   (calc-convert-units)
|   (command-execute calc-convert-units)
| 1 <- math-simplify-units: (frac 1 42827494)

[ Note that special variables (`math-cu-new-units', `math-cu-unit-list',
`math-cu-pure') are being bound there by Calc so just evaluating some of
the stack expression might give you different results. ]

At least the result given by Calc is not incorrect.  It would be better
if it would respect the units explicitly requested by the user, though.


Michael.





^ permalink raw reply	[flat|nested] 15+ messages in thread

* bug#15859: 24.3.50; Calc - dimensionless units again
  2023-04-14 15:12 ` Michael Heerdegen
@ 2023-04-17  4:47   ` Roland Winkler
  2023-04-17 14:04     ` Michael Heerdegen
  0 siblings, 1 reply; 15+ messages in thread
From: Roland Winkler @ 2023-04-17  4:47 UTC (permalink / raw)
  To: Michael Heerdegen; +Cc: 15859

On Fri, Apr 14 2023, Michael Heerdegen wrote:
> At least the result given by Calc is not incorrect.  It would be better
> if it would respect the units explicitly requested by the user, though.

The command `calc-convert-units' from the old calc tar ball (from before
calc became part of GNU Emacs) had been doing for me exactly what I
expected for the longest time.  The trouble only started for me when the
old code got modified.  Therefore, some time ago I grabbed the old code
of `calc-convert-units' and put it into my emacs init file.  (In the
code attached below I merely added a let-binding for the internal
variable UNITS.)  This code has been working fine for me since then with
recent versions of GNU Emacs and the likewise more recent versions of
calc they ship with.  (I use this command on a regular basis.)

I suggest to revert the changes of the command `calc-convert-units' and
go back to its old definition.


(defun calc-convert-units (&optional old-units new-units)
  (interactive)
  (calc-slow-wrapper
   (let ((expr (calc-top-n 1))
	 uoldname unew units)
     (or (math-units-in-expr-p expr t)
	 (let ((uold (or old-units
			 (progn
			   (setq uoldname (read-string "Old units: "))
			   (if (equal uoldname "")
			       (progn
				 (setq uoldname "1")
				 1)
			     (if (string-match "\\` */" uoldname)
				 (setq uoldname (concat "1" uoldname)))
			     (math-read-expr uoldname))))))
	   (if (eq (car-safe uold) 'error)
	       (error "Bad format in units expression: %s" (nth 1 uold)))
	   (setq expr (math-mul expr uold))))
     (or new-units
	 (setq new-units (read-string (if uoldname
					  (concat "Old units: "
						  uoldname
						  ", new units: ")
					"New units: "))))
     (if (string-match "\\` */" new-units)
	 (setq new-units (concat "1" new-units)))
     (setq units (math-read-expr new-units))
     (if (eq (car-safe units) 'error)
	 (error "Bad format in units expression: %s" (nth 2 units)))
     (let ((unew (math-units-in-expr-p units t))
	   (std (and (eq (car-safe units) 'var)
		     (assq (nth 1 units) math-standard-units-systems))))
       (if std
	   (calc-enter-result 1 "cvun" (math-simplify-units
					(math-to-standard-units expr
								(nth 1 std))))
	 (or unew
	     (error "No units specified"))
	 (calc-enter-result 1 "cvun"
			    (math-convert-units
			     expr units
			     (and uoldname (not (equal uoldname "1"))))))))))





^ permalink raw reply	[flat|nested] 15+ messages in thread

* bug#15859: 24.3.50; Calc - dimensionless units again
  2023-04-17  4:47   ` Roland Winkler
@ 2023-04-17 14:04     ` Michael Heerdegen
  2023-04-17 15:20       ` Roland Winkler
  0 siblings, 1 reply; 15+ messages in thread
From: Michael Heerdegen @ 2023-04-17 14:04 UTC (permalink / raw)
  To: Roland Winkler; +Cc: 15859

Roland Winkler <winkler@gnu.org> writes:

> I suggest to revert the changes of the command `calc-convert-units' and
> go back to its old definition.

I would like to know what the changes since then tried to accomplish/fix
and what we loose when we revert to the old definition.

> (defun calc-convert-units (&optional old-units new-units)
>   (interactive)
> [...]

Reverting only that definition does not fix your
"convert 7m / (c s) to in / (c hr)" example.

Michael.





^ permalink raw reply	[flat|nested] 15+ messages in thread

* bug#15859: 24.3.50; Calc - dimensionless units again
  2023-04-17 14:04     ` Michael Heerdegen
@ 2023-04-17 15:20       ` Roland Winkler
  2023-04-18 23:07         ` Michael Heerdegen
  0 siblings, 1 reply; 15+ messages in thread
From: Roland Winkler @ 2023-04-17 15:20 UTC (permalink / raw)
  To: Michael Heerdegen; +Cc: 15859

On Mon, Apr 17 2023, Michael Heerdegen wrote:
> I would like to know what the changes since then tried to accomplish/fix
> and what we loose when we revert to the old definition.

That's a very good question.  In my experience, there was never a
problem with the old code where it yielded incorrect results nor have I
encountered a situation where these changes improved anything (in
whatever vague sense).

Most importantly, at some point I checked the bug-gnu-emacs archive,
when I could not find a bug report that could have triggered the changes
in the code, nor there was any explanation in a ChangeLog or commit
message that would have explained why these changes were done.

So from all I can tell, these changes were introduced for no clear
reason, but they only broke things.

>> (defun calc-convert-units (&optional old-units new-units)
>>   (interactive)
>> [...]
>
> Reverting only that definition does not fix your
> "convert 7m / (c s) to in / (c hr)" example.

Good point.  I must have come up with this example at a point in time
when I couldn't check what the old code would do.  In any case, running
this example with the old code yields a behavior that is mathematically
perfectly correct, whereas the new code asks a meaningless question
about a unit for the expression "7m / (c s)".  Strange enough, the old
code even handles fine the case that "7m / (c s)" is converted to a
user-defined dimensionless unit such as Pi.

Again, the bottom line is that the old code works correct, whereas the
new code cannot handle expressions where the units can be simplified to
a dimensionless number.  Therefore, I believe reverting the changes to
calc-convert-units is the best thing to do.  Then, any future changes
should document the use cases they intend to fix or address.





^ permalink raw reply	[flat|nested] 15+ messages in thread

* bug#15859: 24.3.50; Calc - dimensionless units again
  2023-04-17 15:20       ` Roland Winkler
@ 2023-04-18 23:07         ` Michael Heerdegen
  2023-04-25  3:44           ` Roland Winkler
  0 siblings, 1 reply; 15+ messages in thread
From: Michael Heerdegen @ 2023-04-18 23:07 UTC (permalink / raw)
  To: Roland Winkler; +Cc: 15859

Roland Winkler <winkler@gnu.org> writes:

> Therefore, I believe reverting the changes to calc-convert-units is
> the best thing to do.  Then, any future changes should document the
> use cases they intend to fix or address.

I now tried your originally posted examples (1) and (2) with the old
version of `calc-convert-units' you posted, and they both don't seem to
work as you wish: (1) errors, it just doesn't ask about the old units
before that, and case (2) is also simplified to a plain number.

Are you able to test these cases using that old Calc code?  I first want
to know what are really regressions, and then we can try to find a
solution.  Just going back to the version of `calc-convert-units' you
had posted doesn't seem to do what you want.

BTW, my impression of the intended semantics of
`calc-allow-units-as-numbers' is that an expression that can be
transformed into an equivalent unitless expression will be treated like
a unitless expression, i.e. as a number.  I think this is the opposite
of what you want.

I still agree that the current default behavior is not acceptable in
your examples btw.

TIA,

Michael.





^ permalink raw reply	[flat|nested] 15+ messages in thread

* bug#15859: 24.3.50; Calc - dimensionless units again
  2013-11-10 23:35 bug#15859: 24.3.50; Calc - dimensionless units again Roland Winkler
  2020-11-22 15:13 ` Michael Heerdegen
  2023-04-14 15:12 ` Michael Heerdegen
@ 2023-04-21 14:25 ` Michael Heerdegen
  2023-04-25  3:44   ` Roland Winkler
  2 siblings, 1 reply; 15+ messages in thread
From: Michael Heerdegen @ 2023-04-21 14:25 UTC (permalink / raw)
  To: Roland Winkler; +Cc: 15859

Hello Roland,

> [...]
> just want to convert "7 m / (c s)" into something equal to this
> expression.]
>
> Now for the new unit:
>
> (1) If I want to convert "7 m / (c s)" to a plain number, I enter "1",
>     but then Calc throws an error "No units specified".
>     The correct result would be 2.33e-8.
>
> (2) If one wants to convert to the new unit "in / (c hr)" the result
>     returned by calc-convert-units is 2.33e-8, that is, the plain
>     number which would have been the correct result for (1).
>     The new unit "in / (c hr)" is ignored by calc-convert-units.
>     The correct result would be "992125.98 in / (c hr)".

I found that u n (`calc-convert-exact-units') is exactly doing that.
Maybe you are more fortunate with that command - or even used it in the
past?

TIA,
Michael.





^ permalink raw reply	[flat|nested] 15+ messages in thread

* bug#15859: 24.3.50; Calc - dimensionless units again
  2023-04-18 23:07         ` Michael Heerdegen
@ 2023-04-25  3:44           ` Roland Winkler
  0 siblings, 0 replies; 15+ messages in thread
From: Roland Winkler @ 2023-04-25  3:44 UTC (permalink / raw)
  To: Michael Heerdegen; +Cc: 15859

On Wed, Apr 19 2023, Michael Heerdegen wrote:
> Roland Winkler <winkler@gnu.org> writes:
> I now tried your originally posted examples (1) and (2) with the old
> version of `calc-convert-units' you posted, and they both don't seem to
> work as you wish: (1) errors, it just doesn't ask about the old units
> before that, and case (2) is also simplified to a plain number.

It may help if you repost the old example from this long thread that you
are refering to.

For me, the essential difference between "old" and "new"
calc-convert-units is that the new version tries to fix a problem that
doesn't exist in the first place.  (It is perfectly fine that a user may
want to feed an expression into calc-convert-units where the combination
of units yields a plane number like (a multiple of) the fine structure
constant.  It is ridiculous if calc-convert-units first wants to give
such an expression a new unit like kg or m^3.

There are probably corner cases where the old (!) code can still be
improved.  But I've given up regarding the new code which, in my
experience, has no base to improve upon unless you first revert it.

This may sound like a harsh judgement, but this endless thread really
has made me tired.

I am just curious: how did you get interested in this bug that was
dormant for the longest time, and where it always seemed to me I was
the only one annoyed by it?





^ permalink raw reply	[flat|nested] 15+ messages in thread

* bug#15859: 24.3.50; Calc - dimensionless units again
  2023-04-21 14:25 ` Michael Heerdegen
@ 2023-04-25  3:44   ` Roland Winkler
  0 siblings, 0 replies; 15+ messages in thread
From: Roland Winkler @ 2023-04-25  3:44 UTC (permalink / raw)
  To: Michael Heerdegen; +Cc: 15859

On Fri, Apr 21 2023, Michael Heerdegen wrote:
> I found that u n (`calc-convert-exact-units') is exactly doing that.
> Maybe you are more fortunate with that command - or even used it in the
> past?

I did not know this command existed, and I haven't used it before.  I
find that this command follows a weird philosophy, and I am not
surprised that this command is only a recent addition to calc (absent in
the "old" calc-2.02f, which, I believe was the last version of calc
before this package became part of GNU Emacs).  I cannot help saying
that all these more recent changes to calc's handling of units were put
in place by someone without a practical day-to-day interest in the
subject.





^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2023-04-25  3:44 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-11-10 23:35 bug#15859: 24.3.50; Calc - dimensionless units again Roland Winkler
2020-11-22 15:13 ` Michael Heerdegen
2020-11-23 15:13   ` Roland Winkler
2020-11-24  1:00     ` Michael Heerdegen
2020-11-24 23:37       ` Michael Heerdegen
2021-09-06  9:40         ` Lars Ingebrigtsen
2021-09-17  1:45           ` Michael Heerdegen
2023-04-14 15:12 ` Michael Heerdegen
2023-04-17  4:47   ` Roland Winkler
2023-04-17 14:04     ` Michael Heerdegen
2023-04-17 15:20       ` Roland Winkler
2023-04-18 23:07         ` Michael Heerdegen
2023-04-25  3:44           ` Roland Winkler
2023-04-21 14:25 ` Michael Heerdegen
2023-04-25  3:44   ` Roland Winkler

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.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).