>
> Yes. The real solution for most of these differences is to simply
> import the 9front version into 9legacy. I suspect this hasn't happened
> mostly because of time and energy.
Yes, there's enough historical difference between them that even perusing a
tree diff is somehow exhausting.
The split is regrettable, and it confuses newcomers. "What do I boot and
how?"
It isn't worthwhile revisiting the reasons for it.
Even so, there seems to be a lingering obligation to read code before
importing it wholesale.
("If you want AI, you know where to find it.") I did enough several years
ago to get 9front git of the time
running on my non-9front system so I could use it on various projects. It
did take some time merging
in essential changes to get it to go, even though it is tiny and even fun
to read compared to Linux git.
(Curiously, gefs was easier.)
Perhaps ...
Perhaps it would be better to jump to "9front as Plan 9" and merge things
we like from "9legacy" that were
missed or dropped from 9front, and argue the toss where needed, but try to
continue from there without a further divergence.
Branches are fine, experiment is good, but it makes sense to merge
successes back in.
There's a small example of this from Inferno: Styx. It was a subset of 9P
of the time, slightly simplified but incompatible.
Plan 9 Fourth Edition came out and 9P2000 was incompatible with both.
It was obvious to me that having 2 or 3 similar but incompatible file
service protocols that hardly anyone used was
excessive, so we changed the 4th Edition Inferno entirely to 9P2000. (I
added support for Plan 9's shared key
system to Inferno to allow connecting to Plan 9 services, and a GSoC
project added support the other way.)
Similarly, having two very similar systems that hardly anyone uses be
incompatible is unhelpful and I think it's right
to change that.
On Sat, 9 May 2026 at 01:21, Dan Cross <[email protected]> wrote:
> On Fri, May 8, 2026 at 7:36 PM Anthony Martin <[email protected]> wrote:
> > Yaroslav <[email protected]> once said:
> > > 2. The use of ifs. You're correct in your suspicion that it may not be
> > > a straightforward replacement, and it wasn't. In fact, being aware of
> > > its intricacies, the largest body of work on this port I spent on was
> > > evaluating the effect of each such replacement on a case by case
> > > basis. I believe the ifs overrides I ended up putting forward all work
> > > as intended.
> >
> > The special splitting version of the backquote construct
> >
> > w = ` $split {cmds}
> >
> > is equivalent to
> >
> > oifs=$ifs ifs=$split {
> > w = `{ifs=$oifs oifs=() cmds}
> > }
> >
> > but much more convenient.
> >
> > It was added to 9atom in 2011, 9front in 2016, and plan9port
> > in 2025. At this point, 9legacy should just incorporate it.
> >
> > It also gets close to my preferred syntax for no word splitting
> > at all: "{} from Inferno's sh becomes `''{}.
>
> Yes. The real solution for most of these differences is to simply
> import the 9front version into 9legacy. I suspect this hasn't happened
> mostly because of time and energy.
>
> - Dan C.
------------------------------------------
9fans: 9fans
Permalink:
https://9fans.topicbox.com/groups/9fans/Td167d7e8cebadcc4-M40cda0e17e651cc6226c50fc
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription