4 ms·
Competing projects or not, Bryan is correct. The FreeBSD folks also have a pretty good clue.
by Annatar 10y ago
Competing projects or not, Bryan is correct. The FreeBSD folks also have a pretty good clue.
- qwertyuiop924 10y agoWell, yeah. But I can't trust him out of hand. Are you a Plan9 user, by any chance?
- Annatar 10y agoNope; Solaris / illumos / SmartOS.
- qwertyuiop924 10y agoAh. I think my plan9 user detector must have been confused by the air of smugness, and the appearance of desiring Murray Hill purism, something plan9 users have that illumos users don't (SMF, for one, isn't Murray Hill at all in style). So long as you don't attack my beloved sexprs in your attack on XML, I don't care.
- Annatar 10y agoI like the fathers of UNIX, it's true; I think the way they think, and over the course of the last 30 years of using computers, I've discovered that my experience with computers matches their experience. I can see why they came up with the tenets they did. It all makes sense. As for XML in SMF, that is a sad part of history: at the time, Sun Microsystems had the guy who invented XML (Tim Bray, was it?) on the payroll, and suddenly, XML started forcefully infiltrating everywhere into UNIX, whether it was appropriate or not. I don't know anyone who's happy about having XML SMF manifests. All of us from the Solaris / illumos community would rather we never speak of that embarrassment again, I think. On LISP: I would love to use it, except getting it to run on Solaris / illumos sucks ass, and when one does get it to run, it's only 32-bit, and it likes to coredump a lot. And I'm not going back to GNU/Linux just to be able to run LISP. Other than that, I find LISP cool. I think that reentrant functional programming with no state machine is the way to go, and I like the fact that one can run LISP both interpreted and compiled into a binary executable. I've no idea what "sexprs" is.
- qwertyuiop924 10y agoI actually wasn't talking about XML, I was talking about the general design of SMF. Murray Hill purists, champions of worse is better, would call SMF's architecture overly complicated and call for the use of BSD init, daemontools, s6, or runit. As a linux user, I see SMF as the good bits of systemd (service management, etc), without a lot of the bad bits (creeping scope, gradual introduction of lock-in, kills your screen sessions for no reason, sinister plans for world domination...). It's almost like Lennart has an instinct for getting good ideas exactly wrong. As for Lisp on Illumos, which Lisp did you try? For Common Lisp, CLISP, CMUCL, and SBCL all claim to support Solaris. SBCL is the most popular of the three, but its solaris binary is a little out of date, so you'll have to use it to compile the latest sources. Instructions at http://www.sbcl.org/getting.html http://www.sbcl.org/getting.html. However, I am primarily a schemer, and if you're excited about lisp-1s, hygenic macros, tail calls, call/cc, and case sensitivity, you may want to look into scheme. Because of the minimally defined spec, every scheme is a little different. Chicken scheme, my favorite implementation, claims to run on x86 solaris, although it hasn't been tested on the latest versions. It may still work. MIT scheme explicity claims to run on any posix system, but it's kinda dead. Guile will probably run, as GNU projects usually try to be reasonably platform independant, but it's hard to tell. As both the above are GNU, so you'll need GCC, but I assume that's already installed on your system. Chibi Scheme, Gambit, and Chez Scheme are also worth a shot, although they have less libraries than the above. Finally, Racket, which isn't really a scheme so much a a new programming language descended from Scheme (as I understand it, many of the Racket implementers backed the ill-fated R6RS, but wanted to go even further, and got sick of compromising with Scheme). I don't personally like it, but you may, and it also claims POSIX. If none of the above run at their latest version, which I very much doubt, you could always try lx zones as a last resort. sexprs is an abreviation for s-expressions. They're what make up a lisp program, and how lispers store data: Typically, in a lisp program, your config file won't be a unixy .cfg, but instead a lisp program, which is much more powerful. However, like XML, it's kinda hard to grab data with regex, although unlike xml, it's trivial to parse.
- Annatar 10y agoAs for Lisp on Illumos, which Lisp did you try? Now before I get into the details, let me just state for the record that I've ported 200+ (if not more) freeware packages to Solaris, and I modify, compile and link a lot, so this was not my first "walk in the park"... First I tried CMUCL. And after some patching, I got it to work. But only 32-bit. And it would core dump a lot. Because the GCC compiler at the time didn't support DWARF 2 (it seems to support it now, but I'd have to build GCC again), compiling with -g was basically worthless for debugging, so I ditched it, because I didn't feel like disassembling x86 assembler that day. Then I tried CLISP, and that was a lost cause, it was so busted that it wouldn't even build. The last thing I tried was Steel Bank Common LISP, SBCL. Unfortunately, just like other LISP's, SBCL isn't self hosting, and it requires a working LISP to build itself. In my case, that would have been CMUCL, except that I abandoned that a while ago when it became clear that it would only work 32-bit and that it crashed. It's a shame, I really think that ANSI Common LISP is the future. However, I am primarily a schemer, and if you're excited about lisp-1s, hygenic macros, tail calls, call/cc, and case sensitivity, you may want to look into scheme. My understanding is that Scheme is not 100% LISP compatible, but even worse, that it runs as bytecode on a Java virtual machine. As soon as I see a language running on a virtual machine of any kind, I'm done. That won't enter my systems or my network. If I cannot compile it into straight machine code binary executable, that's it, it's out of the window, and never to return. Not on my watch! Is my finding correct, or is there a Scheme to ELF machine code binary executable compiler out there? If none of the above run at their latest version, which I very much doubt, you could always try lx zones as a last resort. I created an lx-branded zone for the first time a few days ago and was just absolutely speechless with regards to how everything just works. The Linux applications literally think they're running on Linux. The only things which gave it away as not being Linux was the completely made up kernel version and /native, containing native illumos binaries that would be in /usr/{bin,sbin} on illumos. It blew my mind.