freenode/lisp - IRC Chatlog
Search
8:26:29
beach
But they won't get there ultimately anyway, until they abandon manual memory management and that crazy syntax.
8:33:09
beach
kapil_: Feel free to ask questions if there is something in that document that you do not understand.
8:42:52
phoe
(float-features:with-float-traps-masked (:invalid) (list (min 0d0 (/ 0d0 0d0)) (min (/ 0d0 0d0) 0d0))) ;=> (#<DOUBLE-FLOAT quiet NaN> 0.0d0)
8:44:13
phoe
(float-features:with-float-traps-masked (:invalid) (list (> 0d0 (/ 0d0 0d0)) (= 0d0 (/ 0d0 0d0)) (< 0d0 (/ 0d0 0d0)))) ;=> (NIL NIL NIL)
8:44:42
Guest2239
but nevertheless, (min nan 0d0) should return nan irrespective of the arrgument order
8:46:00
Guest2239
because that makes way more sense mathematically, and if one needs less consistence then should use a low level primitive
8:46:46
phoe
if you have NaNs compared to numbers, you've already screwed up, and no amount of lacquer on top of that will fix that
8:47:30
phoe
orders like #'< are only defined for real numbers, and NaN is, well, not a number. garbage in, garbage out.
8:51:24
phoe
"IEEE however, treats NaN as a missing value for the purpose of the minNum and maxNum functions. They will suppress a single NaN operand and return the number instead."
8:53:10
Guest2239
so it either supposed to return the other number independently of the argument order or nan
8:55:34
phoe
a naïve implementation of the algorithm there is (defun float< (x y) (cond ((> x y) x) ((< x y) x) ((= x y) x) ((float-features:float-nan-p x) y) ((float-features:float-nan-p y) x) (t x)))
8:58:54
phoe
but then again, it's up to the implementations to say whether they support ieee754-2008 float comparison
11:51:22
Shinmera
My opinion is it depends on what you need. If you just need matrix multiplication for small sizes you can write that triple loop yourself in like five lines. If you need large sizes and high performance you'll have to go for blas bindings. If it's in the middle, take your pick.
14:59:36
rpg
Anyone know anything about the SBCL images on Dockerhub? There are a lot of them, and it seems hard to figure out which one to use.
15:00:20
phoe
and they seem sorta maintained if the last commit there is from 12 days ago and merges something from Stas
17:23:41
rogersm
folks, maybe you're able to help. I'm trying to locate 'easy to plug' Garbage Collectors.
17:27:49
Bike
it's difficult to do garbage collection as a library since it needs to know object layouts and probably should do some things inline. So I also only know those two.