freenode/lisp - IRC Chatlog
Search
0:39:32
ldb
bitmapper: it's simple, the author just doesn't know that CCL won't eval defstruct at compile time.
7:04:40
seok
spreading the task using bt didn't improve performance by any, so I'm wondering if it is the db
7:10:29
no-defun-allowed
Can you look at how fast it writes to disk, and how that compares to how fast you think your disk can be written to?
7:11:44
no-defun-allowed
On my system, I can have the activity monitor program show me how much each process writes and reads.
7:13:39
no-defun-allowed
I would watch that while having my program do its doings, and compare that to how fast the disk can be written to (which is around 100MB/s for a mechanical drive and more than 1000MB/s for a good solid state drive).
8:17:53
beach
One of the strengths of Common Lisp is that it has an international standard that is stable.
8:20:05
beach
As with anything, count 10 years to be a master. But you can learn the basics in a week or two if you work hard on it.
8:20:37
beach
A warning: If C++ is what you are used to, you will have some "aha" moments, and when you understand what is going on, you won't want to go back.
8:21:30
beach
So if, say, your livelihood depends on developing C++ code, you will no longer be happy at work. :)
8:22:22
kapil_
i have currently a c++ back end web server. i want to use common lisp . if it is easy
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