[LispM-Hackers] Target platforms for porting

James A. Crippen james@UnLambda.COM
Mon, 19 Mar 2001 12:37:34 -0900 (AKST)


I'd like to ask what our primary target platforms are.  I know we're
already developing primarily on Linux/x86.  That guarantees compatibility
with at least half of all the Unix systems out there.  Here's a list of
other platforms that we should consider.

* FreeBSD/x86
  This is another large chunk of Unix systems.  Porting to it also
  provides much of the groundwork necessary for compatibility to most
  other BSD based systems.

* Linux/[Ultra]Sparc
  This is what Kappa is running, and is thus a convenient test
  platform.  I also have another Linux/UltraSparc at home.  AFAIK all
  Linux/UltraSparc systems are totally compatible with Linux/Sparc as long
  as no UltraSparc-specific assembler is used.  That we probably won't be
  doing much of.

* Linux/Alpha
  My roommate (not my SO:) has two Alphas at home, one Multia and the
  other an AlphaStation.  Both can run Linux handily.  I suspect he'll be
  installing Linux on at least one and we can put that box on the net for
  porting work.

* Digital Unix/Alpha
  Digital Unix (aka DUX, aka DEC OSF/1, aka Compaq Tru64 Unix) is a
  possibility for porting.  I think Tom (the roommate) has a copy which
  could be run on one of the Alphas for testing, but I'd have to ask.

* Solaris/UltraSparc
  I don't particularly care about Solaris on the Sparc because it's much
  slower than Linux is on the same architecture.  But Solaris on the
  UltraSparc is markedly more interesting.  Apparently someone has such a
  system?  Speak up, please.  Can this be net-accessible for testing?

* IRIX/SGI Mips
  I have one Indy R4400 that I plan to get IRIX 5.3 running on.  The
  roommate has another with the same goal in mind.  I could put mine
  online for testing.  It's a very basic system but certainly would make a
  good platform for porting.  The graphics hardware can make your eyes
  bleed.  I'd love to hack OpenGL support in as some low-level macroop
  extensions for supporting 3D.  Neato.

* Windows{NT,2000}/x86
  JM is quite insistent about porting to these two monstrosities, and I'm
  perfectly willing to let him handle all the porting to these two
  targets.  I suppose this will be good for expansion of the user base.

* Mac OS X/PowerPC
  This is probably a good idea but I'd say we should wait until the OS
  actually stabilizes.  It's all GNU tools and is BSD derived so the work
  shouldn't be hard.  Doing the graphics could be interesting.

Below are a list of platforms that I don't give two shits about.  If
anyone really wants to try porting to them they're certainly welcome, but
IMNSHO they should be consigned to the permanently unported drawer.

* !{Linux,*BSD}/x86
  Any other Unix running on x86 is a waste of time.  Solaris/x86, for
  instance I believe can be ignored.  Obviously a port is possible, but
  I'll leave that up to someone who really needs it.  Porting to other
  such crap as Unixware, SCO anything, Minix, Amoeba and any other of
  those buggers is just wrong.  I guess someone might want to port to
  the HURD, but I'm guessing that's not entirely likely.

* HP-UX/PA-RISC
  Even at 11.x HP-UX still sucks in unbelievably major ways.  I refuse to
  care about it.  I don't think we should consider it seriously at
  all.  Someone could make a joke port though. :P

* AIX/RS6000
  AIX is still a huge PITA to port to, but large quantities of people
  (or really, organizations) still use it.  I think I'll leave it up to
  some desperate bozo to try a port.  Remember that there are a number of
  different processors that AIX runs on, like POWER, PowerPC, and Intel
  x86.  They all behave differently in nonobvious ways.

* Ultrix/VAX and Ultrix/MIPS
  People still run these.  I'm not ever going to port to them.  Ever.

* UNICOS/Cray
  Yeah, right.  While it would be interesting, I think that it'd be more
  efficient to create an application that sends data over the network to a
  Cray to be processed there with the native tools and languages.  In any
  case, around most Crays a large number of SGI front ends can be found,
  so I'd guess that the SGI port would be more useful to such people.

* SunOS/Sparc
  People using SunOS on the Sparc should probably either upgrade to Linux
  or NetBSD, or downgrade to Solaris.  Supporting it would be futile, I
  think.  Particularly since all the above OSes mentioned as alternatives
  are available freely in one fashion or another.

Can anyone think of other platforms and which category to file them
under?  Any other comments?

I'd also be interested in ports to Linux/PPC, Linux/m68k, Linux/ia64,
Linux/S390, Linux/Mips, NetBSD/dreamcast, NetBSD/newsmips,
NetBSD/playstation2, NetBSD/n64, and a few other ports of the free OSes.  
But those are definitely Blue Sky material.

'james

-- 
James A. Crippen <james@unlambda.com> ,-./-.  Anchorage, Alaska,
Lambda Unlimited: Recursion 'R' Us   |  |/  | USA, 61.2069 N, 149.766 W,
Y = \f.(\x.f(xx)) (\x.f(xx))         |  |\  | Earth, Sol System,
Y(F) = F(Y(F))                        \_,-_/  Milky Way.