Ok, that makes more sense. I can still see problems, but at least they require other examples.
Thanks, -- Raul On Sat, Apr 11, 2015 at 6:47 PM, Vijay Lulla <[email protected]> wrote: > The statement in the article is: "We must distinguish :@ (prefixing) > from :* (unit multiplication) because Kilo :@ Gram can, for example, > be added to something expressed in Gram s, but Meter :* Gram cannot." > > I infer this as: Gram can be added to Kilogram (of course by fixing > for appropriate unit conversions) but it cannot be added to "Meter :* > Gram". I think that's what Bob meant. > > On Sat, Apr 11, 2015 at 6:10 PM, Raul Miller <[email protected]> wrote: >> That one strikes me as odd, also. >> >> Perhaps it's to prevent people from calculating center of mass? >> >> But why would anyone want to prevent that type of calculation? >> >> -- >> Raul >> >> On Sat, Apr 11, 2015 at 5:41 PM, Devon McCormick <[email protected]> wrote: >>> Hi Bob - >>> >>> this sounds interesting but why would Meter*Gram be forbidden? If I'm >>> calculating Newtons, I want Kg * M/s^2, don't I? >>> >>> Regards, >>> >>> Devon >>> >>> On Sat, Apr 11, 2015 at 4:37 PM, Robert Bernecky <[email protected]> >>> wrote: >>> >>>> In the recent discussion on typing in J, I cited the Gimley Glider >>>> and the Mars Climate Orbiter as events in which confusion over >>>> units of measure caused expensive problems and near-disaster >>>> (disaster in the case of the MCO). >>>> >>>> This morning, I was reading the SIGPLAN Haskell Symposium '14 >>>> Proceedings, and found this article: >>>> >>>> http://www.cis.upenn.edu/~eir/papers/2014/units/units.pdf >>>> >>>> By way of introduction, the paper cites the same two events, and also >>>> cites (bottom of page 1) a paper that gives more of the same. >>>> The paper is worth reading, IMO, because the authors create >>>> DIMENSIONs: mass, length, density, volume, etc., that are >>>> independent of units (kilogram, furlong, fortnight). >>>> They also introduce two kinds of combinators (adverbs) that >>>> can modify the dimensions, e.g,: >>>> >>>> type Velocity = Length: / Time >>>> type Kilogram = Kilo :@ Gram NB. Kilo is prefix, not unit >>>> >>>> This lets them do things such as multiplying Kilograms times Gram >>>> (and getting the right answer) , while forbidding Meter * Gram. >>>> >>>> I think these folks have some good ideas that could be exploited >>>> in J and APL to everyone's benefit. >>>> >>>> Bob >>>> >>>> -- >>>> Robert Bernecky >>>> Snake Island Research Inc >>>> 18 Fifth Street >>>> Ward's Island >>>> Toronto, Ontario M5J 2B9 >>>> >>>> [email protected] >>>> tel: +1 416 203 0854 >>>> >>>> ---------------------------------------------------------------------- >>>> For information about J forums see http://www.jsoftware.com/forums.htm >>>> >>> >>> >>> >>> -- >>> Devon McCormick, CFA >>> ---------------------------------------------------------------------- >>> For information about J forums see http://www.jsoftware.com/forums.htm >> ---------------------------------------------------------------------- >> For information about J forums see http://www.jsoftware.com/forums.htm > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
