On Wed, 2020-05-20 at 11:13 -0500, Pete Dietl wrote: > > - major added dependency (Make needs to be widely portable, and it > > is often part of a boot-strapping procedure. The core > > functionality needs to be trim. Heavy lifting needs to be > > separable.) > > The shared library for libgmp does not have dependencies on anything > besides libc, so libgmp only adds one direct dependency and no > indirect dependencies.
One dependency is 100% more than we have now, though... > If so desired, like with Guile integration, we could relegate $(expr) > as a compile-time option. If idea is that we require GMP or we don't get any math operations, that seems like a very significant degradation in behavior... it would in effect require GMP for decent portability. Or else, all the Linux distros would not link in GMP (as they don't link with Guile now) and no one would use it. If you're suggesting that if GMP is not available then we fall back to a homegrown math implementation then... why do we need GMP anyway? > GMP also compiles for windows. GNU make also runs on VMS, DOS, the BSD and SysV UNIXen, and many other places. Even, at one point, AmigaOS although I haven't heard from those folks in a few releases. GNU make code still adheres to the C90 standard, because we haven't decided to drop support for environments which don't have a C99 compiler/runtime... although this might change as we use more gnulib code. I can't remember what gnulib's minimum requirements are. > > Maybe. > > My argument for these is that they are pretty easy to implement. All these operations are easy to implement because they're native operations in C :). The issue is the expression parser and how tricky that is to get right. The more operations supported the more work the parser needs to do (and the more potential for bugs). > > Again, the questions in my email yesterday need to be addressed. > > I totally missed that email somehow. I'll address it in another > email. You can discuss these individually if you want to, but I was mainly raising these as things that need to be thought about and addressed in any proposal. So it's fine with me if you just want to make the proposal and we can discuss that.