9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
* Re: [9fans] ports from GPL
@ 2006-03-17 16:17 erik quanstrom
  0 siblings, 0 replies; 54+ messages in thread
From: erik quanstrom @ 2006-03-17 16:17 UTC (permalink / raw)
  To: 9fans

yes. gnu really did loose their way.

too bad. the early stuff was quite good. gnu
grep, (hi mike) for example, didn't have the limitations of
grep on sunos or xinu bsd.

now gnu grep is so broken that
	LC_LANG=utf8 grep fu j-random-file
is 80x slower than
	LC_LANG=C grep fu j-random-file

this is not entirely gnu's fault. posix confuses
locale and character set.

coreutils (which includes /bin/cp) has a 40k-line library
with over 1k preprocessor conditionals. even with that
library:

; wc -l /var/tmp/coreutils/coreutils-5.2.1/src/cat.c $home/9.cd/sys/src/cmd/cat.c
  861 /var/tmp/coreutils/coreutils-5.2.1/src/cat.c
   36 /home/quanstro/9.cd/sys/src/cmd/cat.c
  897 total

no wonder it's not very portable.

- erik

On Fri Mar 17 09:48:19 CST 2006, rminnich@lanl.gov wrote:
> erik quanstrom wrote:
>
> > however gnu has devolved.
>
> degenerated.
>
> It occured to me the other day that tex has way more useful things to
> say about portability than, say, gnu /bin/cp.
>
> Tex seems to run on anything that has an ALU and a program counter and
> more than 20 bits of address space.
>
> ron


^ permalink raw reply	[flat|nested] 54+ messages in thread
* Re: [9fans] ports from GPL
@ 2006-03-21  1:56 erik quanstrom
  2006-03-21  3:43 ` dmr
  0 siblings, 1 reply; 54+ messages in thread
From: erik quanstrom @ 2006-03-21  1:56 UTC (permalink / raw)
  To: 9fans

the official awk (from the aho, kernighan, weinberger book)
is available on the net, isn't it? i have a copy from 1993, if
you can't find it.

- erik

On Mon Mar 20 14:05:45 CST 2006, ggm@apnic.net wrote:
>
> what about awka? ok, so compiling awk to C and then compiling it is
> probably overkill, but its kinda cute too..
>
> NetBSD is nawk. it still carries lucent tags. and
>
> 	/* lasciate ogne speranza, voi ch'entrate. */
>
> comments..
>
> -G


^ permalink raw reply	[flat|nested] 54+ messages in thread
* Re: [9fans] ports from GPL
@ 2006-03-18 19:01 erik quanstrom
  0 siblings, 0 replies; 54+ messages in thread
From: erik quanstrom @ 2006-03-18 19:01 UTC (permalink / raw)
  To: 9fans

interesting.  off the top of my head i saw two similar sorts on
the tiac.net (below). there was one that picked a random i, j
to compare.  but you have the added advantage of computing each
full solution in advance.  there was at least one O(N^3) algorithm
that used an auxillary bit array to keep track of itself.

- erik

On Sat Mar 18 12:48:23 CST 2006, 9nut@9netics.com wrote:
> has anyone done a lotterysort? something like:
>
> array lotterysort(array a) {
> 	forever {
> 		array b = randomize(a)
> 		int i = 1
> 		while (b[i] > b[i-1] && i < size(b))
> 			i++
>
> 		if (i >= size(b)) return b
> 	}
> }
>
> > references:
> > 	http://home.tiac.net/~cri/2001/badsort.html
> > 	http://www.iq0.com/duffgram/silly.c
> >
> > - erik
> >
> > On Sat Mar 18 08:05:10 CST 2006, quanstro@quanstro.net wrote:
> >
> >> actually i think rtl ends up doing this: (quoted from tom duff's
> >> sillysort)
>


^ permalink raw reply	[flat|nested] 54+ messages in thread
* Re: [9fans] ports from GPL
@ 2006-03-18 14:14 erik quanstrom
  2006-03-18 18:47 ` Skip Tavakkolian
  0 siblings, 1 reply; 54+ messages in thread
From: erik quanstrom @ 2006-03-18 14:14 UTC (permalink / raw)
  To: 9fans

references:
	http://home.tiac.net/~cri/2001/badsort.html
	http://www.iq0.com/duffgram/silly.c

- erik

On Sat Mar 18 08:05:10 CST 2006, quanstro@quanstro.net wrote:

> actually i think rtl ends up doing this: (quoted from tom duff's
> sillysort)


^ permalink raw reply	[flat|nested] 54+ messages in thread
* Re: [9fans] ports from GPL
@ 2006-03-18 14:03 erik quanstrom
  0 siblings, 0 replies; 54+ messages in thread
From: erik quanstrom @ 2006-03-18 14:03 UTC (permalink / raw)
  To: 9fans

hey, i don't think that old assumptions about inline are the
reason that gcc is slow and large.

the major reason is design. gcc takes many passes over the data,
transforming it first into a parse tree, then into rtl and then
optimizes the rtl. (i think they do strength reduction, &c
in rtl, using some arch-specific tables to compute costs.)

the problem is that rtl must handle every arch and every
language that gcc supports, making it slow and cumbersome.

actually i think rtl ends up doing this: (quoted from tom duff's
sillysort)

/*
 * The time complexity of this thing is O(n^(a log n))
 * for some constant a. This is a multiply and surrender
 * algorithm: one that continues multiplying subproblems
 * as long as possible until their solution can no longer
 * be postponed.
 */

- erik

On Sat Mar 18 07:32:05 CST 2006, brantley@coraid.com wrote:
> > their major mistake, apart from not thinking before coding, is that all
> > of those stupid inlines blow your cache and ken is clever.
>
> This is a big deal.  Assumptions learned early in our careers had very
> hard to change.  A few years back I wrote a DES implementaiton that on
> 0 loops.  Ran like a dog because it pretty much filled the cache.  Hard
> to stop thinking that memory isn't flat.
>


^ permalink raw reply	[flat|nested] 54+ messages in thread
* Re: [9fans] ports from GPL
@ 2006-03-18  2:03 dmr
  2006-03-18  6:12 ` Bruce Ellis
  2006-03-18 16:28 ` George Michaelson
  0 siblings, 2 replies; 54+ messages in thread
From: dmr @ 2006-03-18  2:03 UTC (permalink / raw)
  To: 9fans

Coile remarked

 > ...  I can see at least three different cultures.
 > Murry Hill (Bell Labs), 545 Technology Sq (MIT), and Berkeley.  These
 > cultures have belief systems that are mutually exclusive.  And there
 > must be subcultures as well.  The socket interface, for example, is
 > really MIT culture thru BBN to BSD.

There were two markedly different groups on different
floors of 545 Tech Sq:
the ITS crowd (emacs, eventually GNU), vs. CTSS then
Multics. Unix itself was influenced much more by the
second group.

I'm reasonably sure that the socket interface was Berkeley's.
BBN was tasked by ARPA to develop the TCP/IP stack for BSD,
but UCB's CSRG was quite resistant to incorporating the BBN
work in favor of their own.  This was the major subject of
several somewhat messy meetings of ARPA's BSD advisory board.
I no longer remember what the BBN ideas were for the
programming interface to networks; they may have contained
the germ of the socket scheme.

On the other hand, the --longoption convention (mod the -- vs -)
espoused by all recent GNU stuff is a reversion to Multics
conventions that were taken out of early Unix with its mostly 1-char
options, and which were generally followed by BSD.

	Dennis


^ permalink raw reply	[flat|nested] 54+ messages in thread
* Re: [9fans] ports from GPL
@ 2006-03-17 15:25 erik quanstrom
  0 siblings, 0 replies; 54+ messages in thread
From: erik quanstrom @ 2006-03-17 15:25 UTC (permalink / raw)
  To: 9fans

On Fri Mar 17 09:22:42 CST 2006, 9fans@ducky.net wrote:
>
> Emacs and Info clearly originated on MIT's "ITS" operating system,
> and were originally written by Richard Stallman, as was today's
> widely used GNU Emacs.  GCC had its roots in a "portable optimizer"
> paper written by someone at Arizona (I think), but GCC itself was
> coded in a heavily Lisp-influenced style, again by Richard Stallman.
>

it seems that gcc rtl would discredit the "portable optimizer" idea.

- erik


^ permalink raw reply	[flat|nested] 54+ messages in thread
* Re: [9fans] ports from GPL
@ 2006-03-17 15:21 Mike Haertel
  0 siblings, 0 replies; 54+ messages in thread
From: Mike Haertel @ 2006-03-17 15:21 UTC (permalink / raw)
  To: 9fans

>Wouldn't at least gcc be from the MIT culture given its originator was
>from the mit ai lab?  Where's readline and info from originally?
>Not to mention emacs.
>
>Where did the --option syntax originate?  Maybe they wanted to say /option
>but that's not possible under Unix.  Wouldn't the -o vs --very-long-option-name
>count as a MH vs. MIT artifact?
>
>These are real questions.  I would like to know.

Emacs and Info clearly originated on MIT's "ITS" operating system,
and were originally written by Richard Stallman, as was today's
widely used GNU Emacs.  GCC had its roots in a "portable optimizer"
paper written by someone at Arizona (I think), but GCC itself was
coded in a heavily Lisp-influenced style, again by Richard Stallman.

The --option syntax is also due (as far as I know) to Stallman and
resulted from a search for ways to add long-named options to existing
Unix programs without breaking POSIX 1003.2 compatibility.  Stallman
originally tried to use +option, but found that was directly
incompatible with POSIX, which pretty much says that anything not
beginning with - is a regular argument.  POSIX had inherited the
old System V getopt() convention that "--" ends the list of options,
and never specifically said what "--stuff" means, so Stallman stole
it for long-named options.


^ permalink raw reply	[flat|nested] 54+ messages in thread
* Re: [9fans] ports from GPL
@ 2006-03-17 15:12 erik quanstrom
  0 siblings, 0 replies; 54+ messages in thread
From: erik quanstrom @ 2006-03-17 15:12 UTC (permalink / raw)
  To: 9fans

On Fri Mar 17 08:25:34 CST 2006, brantley@coraid.com wrote:
> Wouldn't at least gcc be from the MIT culture given its originator was
> from the mit ai lab?  Where's readline and info from originally?
> Not to mention emacs.

stallman left the mit lab in 1983/4.  this was before gcc, readline,
or (tex)info.  i think gnu has to be considered seperately because rms
started with the gnu manifesto before he wrote any (much) code for gnu.

i'm not sure when readline started but i believe that it started life
as part of bash. this is from the readline-2.0 ChangeLog.

Wed Jun 28 20:20:51 1989  Brian Fox  (bfox at aurel)

	* Made readline and history into independent libraries.

there are also some references to bash in the readline-2.0 source.

>
> Where did the --option syntax originate?  Maybe they wanted to say /option
> but that's not possible under Unix.  Wouldn't the -o vs --very-long-option-name
> count as a MH vs. MIT artifact?
>

i don't know who invented the --gnu-system-long-option-syntax-option
but i'm pretty sure it was invented to disambguated betwen a multicharacter
option and a sequence of single character options. imho, just trying to
parse the long option first and a little common sense could have been enough.

- erik



^ permalink raw reply	[flat|nested] 54+ messages in thread
* Re: [9fans] ports from GPL
@ 2006-03-17 14:11 erik quanstrom
  2006-03-17 14:22 ` Brantley Coile
                   ` (2 more replies)
  0 siblings, 3 replies; 54+ messages in thread
From: erik quanstrom @ 2006-03-17 14:11 UTC (permalink / raw)
  To: 9fans

oh ya. i think the gnu culture was seperate from the start.
i started out by necessity. they needed to get their software
to run on all kinds of unix varients, which were highly incompatable.
and for a while it was pretty good stuff.

(for example, the infamus mt xinu tools were suffering from bit
rot when gnu tools started to become usable. for example,
xinu grep had a really short line limit. gnu grep didn't (thanks mike.)
the xinu shell was the original bourne shell, and would exit if you
hit ^C at the wrong time and had signal-related memory
issues because of its infamous memory management.)

however gnu has devolved. they seem to value compiling on anything,
and efficiency, but they don't seem to value simplicity. gcc is a good
example of how getting as far out-of-balance as gnu seems to be
can undermine one's primary goals.

- erik

On Fri Mar 17 05:35:36 CST 2006, brantley@coraid.com wrote:
> > i think that open source code has a very different outlook
> > on the world than plan 9. it's very hard (and frustrating) to
> > deal with the culture clash when porting.
>
> That brings to mind something that I've been thinking about for a
> couple of years.  In watching the stuff in Linux and poking around the
> simulators and old code, I can see at least three different cultures.
> Murry Hill (Bell Labs), 545 Technology Sq (MIT), and Berkeley.  These
> cultures have belief systems that are mutually exclusive.  And there
> must be subcultures as well.  The socket interface, for example, is
> really MIT culture thru BBN to BSD.
>
> Anyone else see this?  More cultures?
>
>


^ permalink raw reply	[flat|nested] 54+ messages in thread
* [9fans] ports from GPL
@ 2006-03-16  8:11 Fernan Bolando
  2006-03-16 13:03 ` Anthony Sorace
  0 siblings, 1 reply; 54+ messages in thread
From: Fernan Bolando @ 2006-03-16  8:11 UTC (permalink / raw)
  To: 9fans Mailing list

I was just wondering ...

If a port for plan9 using APE or native that where derived from from
GPL or others. Are they considered forks of the original or are they
eventually going to be merged in.

--
Public PGP/GnuPG key (http://www.fernski.com)
pub 1024D/3576CA71 2006-02-02 Fernan Bolando
Key fingerprint = FDFE C9A8 FFED C1A5 2F5C EFEB D595 AF1C 3576 CA71


^ permalink raw reply	[flat|nested] 54+ messages in thread

end of thread, other threads:[~2006-03-26  9:14 UTC | newest]

Thread overview: 54+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-03-17 16:17 [9fans] ports from GPL erik quanstrom
  -- strict thread matches above, loose matches on Subject: below --
2006-03-21  1:56 erik quanstrom
2006-03-21  3:43 ` dmr
2006-03-18 19:01 erik quanstrom
2006-03-18 14:14 erik quanstrom
2006-03-18 18:47 ` Skip Tavakkolian
2006-03-18 14:03 erik quanstrom
2006-03-18  2:03 dmr
2006-03-18  6:12 ` Bruce Ellis
2006-03-18  6:24   ` Tim Wiess
2006-03-18  6:36     ` Bruce Ellis
2006-03-18 13:31       ` Brantley Coile
2006-03-18 13:30   ` Brantley Coile
2006-03-18 16:28 ` George Michaelson
2006-03-18 23:13   ` Brantley Coile
2006-03-19  1:03     ` geoff
2006-03-17 15:25 erik quanstrom
2006-03-17 15:21 Mike Haertel
2006-03-17 15:12 erik quanstrom
2006-03-17 14:11 erik quanstrom
2006-03-17 14:22 ` Brantley Coile
2006-03-17 15:40 ` Ronald G Minnich
2006-03-18  0:39 ` geoff
2006-03-18  0:59   ` erik quanstrom
2006-03-18  1:16   ` Lyndon Nerenberg
2006-03-18  1:18     ` George Michaelson
2006-03-19 14:43   ` David Leimbach
2006-03-20  2:18     ` erik quanstrom
2006-03-20  3:39       ` uriel
2006-03-20 11:50         ` erik quanstrom
2006-03-20 20:00       ` Aharon Robbins
2006-03-21  2:41         ` erik quanstrom
2006-03-20 19:50     ` Aharon Robbins
2006-03-20 19:59       ` George Michaelson
2006-03-21 23:43       ` Jack Johnson
2006-03-16  8:11 Fernan Bolando
2006-03-16 13:03 ` Anthony Sorace
2006-03-16 16:50   ` Jack Johnson
2006-03-17  1:05   ` erik quanstrom
2006-03-17 11:33     ` Brantley Coile
2006-03-17 12:03       ` Axel Belinfante
2006-03-17 15:39       ` Ronald G Minnich
2006-03-20  3:44         ` Dave Eckhardt
2006-03-20  3:50           ` Skip Tavakkolian
2006-03-20  4:11             ` Russ Cox
2006-03-20  8:13           ` Charles Forsyth
2006-03-24  5:29         ` ems
2006-03-24  7:49           ` Bruce Ellis
2006-03-24 17:14           ` Ronald G Minnich
2006-03-24 17:34             ` erik quanstrom
2006-03-24 18:11             ` Wes Kussmaul
2006-03-24 18:09               ` Ronald G Minnich
2006-03-24 18:26                 ` Wes Kussmaul
2006-03-26  9:14             ` ems

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).