A long time ago I wrote an rc program called 'new' that automated the
creation of a new window to hold a command's output.
It's installed in /acme/bin/new
-rob
On Wed, Jun 3, 2009 at 10:34 AM, erik quanstrom wrote:
>> For example, for lines with 8 characters and the ? operator:
>>
>> ^$
>
> just to clarify (sorry if i'm being pedantic):
> that will mach lines with *up to* 8 characters. (including
> blank lines) "^$" will match lines with
On Sat, Jun 27, 2009 at 11:17 AM, J.R. Mauro wrote:
> On Fri, Jun 26, 2009 at 6:57 AM, roger peppe wrote:
>> you need (.|\n) instead of .
>>
>> sam originally used @ as a "match everything" character
>> but it was removed, presumably because it was rarely used.
>
> That's a stupid reason to remove
I believe ^H ^W ^U date back at least to TENEX.
-rob
because originally it was little more than the typedefs for uchar, ulong etc.
-rob
I always intended to do something about that but never got around to
it. Other things took precedence.
In any case I doubt it could ever work as well in Acme as it does in Oberon.
-rob
It wasn't me with this exact feature but I'll take credit for moving
the mouse where you want it. Sam did it with its menus, but Acme took
it much farther. I like it a lot and I appreciate your noticing.
(Did you ever notice it puts it back when it's done? Error window
pops up, mouse moves ther
That qed was done in the 1970s by Tom Duff, Hugh Redelmeier, David
Tilbrook and myself. The regular expressions are from ed, plus simple
forms of parentheses, alternation, and backreferences and a couple of
minor tweaks that later appeared in vi.
It's essentially ed with some original qed feature
> Are you implying Doug McIlroy hadn't been taught about (and inevitably
> occupied by) Church-Turing Thesis or even before that Ackermann function and
> had to wait to be inspired by a comment in passing about FORTRAN to realize
> the importance of recursion?! This was a rhetorical question, of co
It's still the same. The regexp library is too.
-rob
cat * /dev/null
is the recommended solution.
-rob
> Does anyone agree with me that it needs fixing?
I don't. I also think that even if it were a problem the usage is far
too ingrained to be fixable.
-rob
the first attempt was on a multi-headed vax whose model number escapes
me. it was pretty foul architecturally.
in early 1989 a restart was done for the 25-MHz mips CPU inside a
4-headed SGI shared-memory multiprocessor. the CPU had no
synchronizing instructions but the SGI machine had a special pi
New will take an arbitrary file name as an argument, except even with
New spaces are taken as argument separators.
-rob
On Wed, Dec 2, 2009 at 10:42 AM, Federico G. Benavento
wrote:
>> r3_[1-5Co6-10Ni]/
>>
>> When I 3-click on such a name in an acme (e.g. a directory) window, acme
>> doesn't ope
The 'g' is unnecessary.
-rob
On Wed, Dec 30, 2009 at 4:59 AM, Tim Newsham wrote:
>> It is suggested to use
>> du -a | awk '{print $2}'
>> instead of find. But what if filename contains spaces? For example if
>> file is named "foo bar" then awk will output "foo" only.
>
> What about
>
> du -a
my father danced with his great aunt.
-rob
margaret
-rob
On Fri, Jan 29, 2010 at 8:20 AM, wrote:
> Yes, we only support the 16-bit runes of Unicode plane 0.
Really? They're 32 bits in plan9port and, although there are a few
things that need to be patched, we know what they are.
Rune should be 32 bits by now.
-rob
What Russ says is true but for me it was simpler. I used Plan 9 as my
local operating system for a year or so after joining Google, but it
was just too inconvenient to live on a machine without a C++ compiler,
without good NFS and SSH support, and especially without a web
browser. I switched to Li
Acme's New command does not parse the file name. Try New
rotxy3_[1-5Co6-10Ni] with button 2.
-rob
On Sun, Mar 7, 2010 at 9:24 AM, Rudolf Sykora wrote:
> On 7 March 2010 17:43, Rob Pike wrote:
>> Acme's New command does not parse the file name. Try New
>> rotxy3_[1-5Co6-10Ni] with button 2.
>>
>> -rob
>
> Ok. This works. Nonetheless, it's a questi
The problem is that samterm, which interprets keystrokes, doesn't have
access to the files. It would be a protocol change that bounces a
message off the server. Doable but not compatible.
-rob
u for uint uchar ulong
q for unique.
Does anyone know of a version of sam for Windows that will run on
64-bit installations?
-rob
The old version of sam does not run on 64 bits, I am told.
-rob
On Mon, Jun 2, 2014 at 3:56 PM, Lee Fallat wrote:
> Does that old version of sam[1] not run on 64-bit Windows?
>
> 1: http://plan9.bell-labs.com/sources/extra/9pm051031.zip (the version I ran
> awhile ago at my college that I think
Great, thanks.
-rob
The original Blit JIT (stupid name - if the compilation was "in time"
we wouldn't need a JIT. Our term was "on the fly") version was
actually done by John Reiser.
My favorite JIT I wrote was to fix up floating point after a trap on the SPARC.
-rob
Looks like it.
-rob
On Tue, Oct 14, 2014 at 3:11 PM, Yoann Padioleau wrote:
> Hi,
>
> It’s a copy paste bug here right?
> https://code.google.com/p/ken-cc/source/browse/src/cmd/cc/cc.y#476
>
>
>| LSWITCH '(' cexpr ')' stmnt
> {
> $$ = new(OCONST, Z, Z);
It's not dead code. It's prepping the switch somehow.
-rob
On Tue, Oct 14, 2014 at 3:45 PM, Rob Pike wrote:
> Looks like it.
>
> -rob
>
>
> On Tue, Oct 14, 2014 at 3:11 PM, Yoann Padioleau wrote:
>
>> Hi,
>>
>> It’s a copy paste bug here
Edit {
s/^/\[/
s/\:\ /\]/
}
On Mon, Oct 27, 2014 at 8:28 AM, Eduardo Alvarez
wrote:
> Hello, everyone,
>
> I'm in the process of learning acme via Russ Cox's p9p port. Recently, I
> found
> myself editing some text to use with markdown, and needed to make more
> than one
> modification to a lis
Yes you can. That's how I verified this works. Open up the tag to
multiple lines (just type newline in the tag).
-rob
That's a shame.
-rob
On Mon, Oct 27, 2014 at 9:41 AM, wrote:
>> Yes you can. That's how I verified this works. Open up the tag to
>> multiple lines (just type newline in the tag).
>
> I think this only works in p9p.
>
> sl
>
The appearance of frogs in
https://github.com/Harvey-OS/harvey/blob/master/sys/src/9/port/chan.c makes
it clear this is a port.
-rob
On Sun, Jul 26, 2015 at 8:15 AM, Axel Belinfante wrote:
> I couldn’t resist looking, and found in
> http://www.osnews.com/comments/28699
>
> "Harvey is an effort
If that was meant as a dis, you obviously haven't been to New York lately.
-rob
On Sat, May 21, 2016 at 11:16 AM, Kurt H Maier wrote:
> On Sat, May 21, 2016 at 10:36:44AM -0700, erik quanstrom wrote:
> > > This is tantamount to saying acme is superior because you are better at
> > > acme. [..
The operation is not to copy but to snarf. It's called snarf because
snarf is what it does. There is no design document.
-rob
On Mon, Sep 12, 2016 at 8:44 PM, Alexander Kapshuk
wrote:
> Both 'Zerox' and 'Snarf' are there:
>
> /sys/src/cmd/acme/cols.c:34
> textinsert(t, 0, L"New Cut Paste Snarf S
This might be one reason.
-rob
On Tue, Sep 13, 2016 at 10:51 PM, Chris McGee wrote:
> Sorry for the spam. Is this mailing list getting my emails?
>
> Thanks
> Chris
>
Total coincidence: I played on a 5620 yesterday, connected to a 3B2 running
System V. Used jim for the first time since 1985.
-rob
On Wed, Apr 26, 2017 at 10:23 PM, Bruce Ellis wrote:
> I guess Stephen should update his webpage. He's quite a specialized
> tinkerer. He built a huge analogue syn
use guest. I recall you saying that you used
> bedbug when writing sam.
>
> Such an enlightenment after using vi. Was it a 1200 baud modem?
>
> brucee
>
> On 27 April 2017 at 22:37, Rob Pike wrote:
>
>> Total coincidence: I played on a 5620 yesterday, connected to a 3B
It went away because it wasn't necessary.
-rob
On Wed, Oct 18, 2017 at 11:50 AM, Kurt H Maier wrote:
> On Tue, Oct 17, 2017 at 05:46:22PM -0700, Kurt H Maier wrote:
> >
> > implementation of sam, the '@' operator (which behaved like '*' except
>
> The '@' operator (c=ANYNL) behaved like '.' (c
What's this? https://plan9.io/
On Fri, Jan 5, 2018 at 9:27 AM, Joseph Stewart
wrote:
> Someone (not me) should make a 9p to S3 service and put all the goodies
> there.
> -joe
>
> On Thu, Jan 4, 2018 at 1:20 PM, Steve Simon wrote:
>
>> I found the old addresses here:
>>
>> https://dnshistory.o
Everyone is naming sites to check out, but which one has the right
contents, is being maintained, and will be stable?
-rob
On Fri, Jan 5, 2018 at 6:42 PM, David du Colombier <0in...@gmail.com> wrote:
> Take a look to https://9p.io/
>
> --
> David du Colombier
>
>
Spoilsport.
-rob
On Tue, Mar 18, 2008 at 8:46 AM, Richard Miller <[EMAIL PROTECTED]> wrote:
> > speaking of arm:
> >
> > does the compiler emit conditional instructions
> > like subgt?
>
> term% cat t.c
> int
> f(int x)
> {
> int y = 0;
> if (x > 0)
> y -= 1
echo -n -n'
'
-rob
You'll need to process it from the textual form it's in now to the
binary format used by scat.
It's also probably not quite the same data set scat used since the
provenance is different,
but it's likely to be fine.
Someone at the labs may be able to root around in my directory there
and find the
p
(By 'indentation' of course I mean 'indentation to define structure')
-rob
Indentation by white space is a very bad idea in my experience.
Superficially attractive but ultimately very dangerous. I once spent a
couple of days tracking down a bug caused by a source-to-source code
tool that broke a major program because the code it was injecting into
had indented one more sp
I care and I am confused. Which edition of the manuals are you referring to?
-rob
On Wed, May 7, 2008 at 6:52 AM, Michaelian Ennis
<[EMAIL PROTECTED]> wrote:
> For anyone who cares the "plan 9" text on the cover of the manuals is
> Industria LT Std Solid . Industria was designed by Neville Bro
The Unix source is on my web site.
-rob
Fuse on the Mac is markedly inferior.
-rob
http://flickr.com/photos/redlense/2429073822/
> Shouldn't the cast to void mean that I don't intend to use the result of the
> operation? Thanks.
That's not standard C, just a bad convention established by lint(1)
and carried too far for a while before fading away again.
-rob
On Sun, Jun 29, 2008 at 1:55 AM, underspecified
<[EMAIL PROTECTED]> wrote:
> I second the Acme window t-shirt idea :-)
>
> By the upper-left of an acme window, I assume you mean something like this:
>
> http://cl.naist.jp/~eric-n/osx/acme-sac.tiff
>
> I can't recall for certain, but I believe at so
The fact the UTF-8 was first "implemented" on Plan 9 has nothing
to do with Plan 9's funtionality as an OS.
Not true. The ability to adapt the system quickly in response to a
changing standards situation made a critical difference in having
UTF-8 rather than a weaker proposal accepted by X/Open
I first saw it used in bundling software created by James Gosling,
and liked the (relevant, I might add) joke so much I put it in the
Plan 9 version.
-rob
It's the plumber that decides. If you want those characters to be understood as
file name characters in general - and you really don't, whatever you think now;
consider what happens when you click on "includefile.h" - then change the
plumbing rules.
-rob
On Wed, Oct 8, 2008 at 9:35 AM, Rudolf Syk
All the Plan 9 work was done in Murray Hill.
-rob
Sam cannot handle file names with spaces. There is one way to
work around this that I can think of without renaming the file. Make
a new buffer with nothing in it. ("B " without the quotes is how you
do that.) Then
cat > 'a b'
Clunky but so be it. Sam comes from a system where spaces in
file
Backreferences within the pattern (such as in /(.*)\1/) make the
matcher non-regular and exponentially hard. It was a deliberate
decision not to implement them in sam and I'd make the same decision
today.
As far as greedy/non-greedy operators go, they have more utility but I
believe they have beco
The ability to put \1 in the right hand side of a substitution was
done by jason@
at the Uni of Sydney, but after the Sam papers were published. It was a welcome
feature that added special functionality to the 's' command within
Sam. (Ed(1) had
the feature, within its limited regexps, long before,
cd .
is sufficient
-rob
don't forgot that plan 9 binaries are fully linked while most other
systems pull in more code through dynamic linking when the binary is
executed.
-rob
less is more.
-rob
When Sun reported on their first implementation of shared libraries,
the paper they presented (I think it was at Usenix) concluded that
shared libraries made things bigger and slower, that they were a net
loss, and in fact that they didn't save much disk space either. The
test case was Xlib, the b
I'm pretty sure Peter Weinberger (pjw) did the very first, which
Killian adapted and improved when pjw lost interest.
The big change in Plan 9 was moving to a true file system hierarchy
instead of just one file and a pile of ioctls. Linux's /proc is very
close in overall design.
-rob
On Tue, Dec 2, 2008 at 3:55 PM, Russ Cox <[EMAIL PROTECTED]> wrote:
>> a couple of questions come to mind. how does writing
>> to a ns interact with shared namespaces? does it automaticly
>> fork the namespace? seems iffy. which leads to the next
>> obvious question
>>
>> how do you prevent a r
i don't understand this thread. the "moral" equivalent? surely you
mean "functional" or "rough" or "approximate" or some other adjective,
not "moral". the phrase "moral equivalent" originates in the "moral
equivalent of war". using it in this context is wrong, misguided,
maybe punishable.
the o
Sam and Acme use a simple, pure form of regular expressions. If they
had the counting operations, this would be a trivial task, but to add
them would open the door to the enormous, ill-conceived complexity of
(no longer) regular expressions as the open source community thinks of
them.
So yes: use
Do you see utility in counting/movement commands if they are not
combined with regular expressions?
If you want to make a substitution to the thousandth match of a
regular expression on a line, try
s1000/[^ ]+/yyy/
But to navigate to that place is not as straightforward. Counting only
.,.1000
and then snarf.
It's a different model from the one you are familiar with. That is
not a value judgment either way, but before pushing too hard in
comparisons or suggestions it helps to be familiar with both.
-rob
Not all the features adapt as easily.
-rob
% ivy
652342**52342
1.85475753442e+304341
)cpu
8.291ms
(652342**52342)/34232342
9.27378767209e+304340/17116171
)cpu
9.217ms
float _
5.41814385477e+304333
50 minutes feels excessive; dc seems to work very hard.
-rob
--
9fans: 9fans
Permalink:
https://
In case it's not clear, those calculations are integral, only the
presentation looks like floats.
-rob
On Tue, Dec 17, 2019 at 9:46 AM Rob Pike wrote:
> % ivy
> 652342**52342
> 1.85475753442e+304341
>
> )cpu
> 8.291ms
>
> (652342**52342)/34232342
> 9.27378
>
> *You can tell because when I double-click on the modified text acme
> doesn't know where the word boundaries are and ends up highlighting across
> punctuation that it normally wouldn't.*
I don't understand that. Acme knows the characters' location or it couldn't
draw them. Are you sure it's n
I see, yes. Well, that's not too terrible.
-rob
On Thu, Jul 23, 2020 at 1:40 PM wrote:
> > I don't understand that. Acme knows the characters' location or it
> couldn't
> > draw them. Are you sure it's not just the frame library's lousy handling
> of
> > italic fonts?
>
> Unless I'm misunders
After Acme was written, I replaced most of the buffer management code in
Sam with that from Acme, which was more efficient - it did the database
stuff in a different order that was one pass quicker. It's possible the old
code used an arena allocator, I don't remember, but it's possible you're
refer
I would
,x s/.*/echo "&"/
as it seems most direct. The ,x idiom is the thing that turns sam into ed.
-rob
On Tue, Jul 20, 2021 at 9:18 PM wrote:
> or:
>
> ,x/^/i/echo "
> ,x/$/i/"
>
--
9fans: 9fans
Permalink:
https://9fans.topicbox.com/groups/9fans
There are many things here that feel wrong or at least inelegant, starting
with the first character. Surely you mean a comma not a period. You are
also inconsistent: sometimes you use x to find the pattern and then change
it, sometimes you use a substitute. It's more efficient in both time and
keys
If you mean, why is it spelled like that? It's because the text was sent to
the voice synthesizer for the 5PM Unix room ephemeris announcement. Tweaked
spellings could improve pronunciation.
-rob
On Thu, Jul 29, 2021 at 9:42 AM Marshall Conover
wrote:
> Today's the peak of a seasonal meteor sh
% cat bin/f
#!/bin/sh
9 grep -i -n '^func (\([^)]+\) )?'$1'\(' *.go /dev/null
% cat bin/t
#!/bin/sh
9 grep -i -n '^type '$1' ' *.go /dev/null
% cat bin/cf
#!/bin/sh
csearch -n -f '\.go$' '^func (\([^)]+\) )?'$1'\('
% cat bin/ct
#!/bin/sh
csearch -n -f '\.go$' '^type '$1
--
It is Russ Cox's code search suite: https://github.com/google/codesearch
On Fri, Aug 20, 2021 at 5:02 AM wrote:
> Quoth un...@cpan.org:
> > Quoth Maurizio Boriani :
> > > thanks a lot! But... what's csearch?
> >
> > Possibly
> https://manpages.debian.org/testing/codesearch/csearch.1.en.html
>
>
LENOVO SCROLLPOINT MOUSE - USB. I have a few of them.
None of mine have ever broken or needed maintenance.
Not sure they're made any more, and the IBM logo on this:
https://www.exxactcorp.com/Lenovo-31P7405-E1272118
may be indicative, but I've been using mine for 20+ years with
great satisfaction.
I have one mouse still in the original unopened box, just to be safe. The
label reads
31P7405 Lenovo Scrollpoint Mouse Model MO098OA
And I have now opened it to be sure, and it is the true blue (literally)
3-button version. It is labeled Lenovo, although the ones I use are all
labeled IBM.
-rob
l, more like a single axis trackpoint.
>
> On Jan 27, 2022, at 8:47 PM, Rob Pike wrote:
>
> I have one mouse still in the original unopened box, just to be safe. The
> label reads
>
> 31P7405 Lenovo Scrollpoint Mouse Model MO098OA
>
> And I have now opened it to be sure
Buffer, a word in editor context that came from QED but may have had
earlier roots.
-rob
On Mon, Dec 12, 2022 at 11:44 PM wrote:
> Does anybody know where the name B (b/B in sam) comes from?
> thanks,
> Gergely Födémesi
--
9fans: 9fans
Permalink:
https
Create the initial workspace you want, use Dump, and quit. Then when you
want to start, say acme -l acme.dump.
-rob
On Mon, Jan 16, 2023 at 6:58 PM Alexander Sychev wrote:
> Hello,
>
> For manipulating tags of windows, you can eather use external application
> or patch acme. I wrote an applica
A big reason for doing Plan 9, as the linked article says right up top, was
supporting multi{core|processor} machines. And that took some research
because there really hadn't been that many around to write OSes for before
then. Some novel work resulted, work that still has relevance.
-rob
On Sun
The dual VAX was the first machine we tried to make work, but for various
reasons including the machine's peculiarities and our own embryonic
knowledge, we abandoned it. The first working Plan 9 kernel was for a 4-CPU
(one MIPS chip per board) IRIS machine, with custom locking hardware (on
another
Thanks, but I don't know who owns that site these dayse. I'll forward to
the 9fans mailing list.
-rob
On Sat, Feb 10, 2024 at 6:20 AM Douglas McIlroy <
douglas.mcil...@dartmouth.edu> wrote:
> The link to plan 9 from outer space in sam.cat-v is wrong. I found a good
> link in wikipedia.
>
-
,x/0\.00/-a/\n/
-rob
What's changed is that, to simplify porting (to systems other than
Plan 9), the compilers in the Go distribution are built by gcc, not
the Plan 9 C compilers.
It's easy to fix that header file. Patches willingly accepted.
-rob
"The essence of XML is this: the problem it solves is not hard, and it
does not solve the problem well." -- Phil Wadler, POPL 2003
-rob
I should add that Russ's post is on point, Wadler's slightly off. I
would extend it as "The essence of XML is this: the problem it solves
is not hard, it does not solve the problem well, and anyway it's not
the problem people think it solves."
-rob
On Mon, Jun 28, 2010 at 3:03 PM, Eric Van Hensbergen wrote:
> On Sat, Jun 26, 2010 at 4:26 AM, wrote:
>>> but I can dig
>>> them up, clean them up, and share them,
>>
>> My particular concern is to encourage convergence towards a single
>> source distribution rather than divergence as seems to h
> `Interfaces', the way they are invariably implemented, don't cut it --
> too limiting and imposing.
I do not claim that Go's interfaces can match the type system of
Haskell but this sentence tells me you aren't very familiar with them.
They are not implemented, invariably or otherwise, like any
as part of the 1989 kernel, ken wrote its beginnings with a pattern
that involved a lot of repetitive typing but had the basic structure.
each function had to define local pieces. i took his idea and wrapped
it into the structure that's there now, which made it easier to get
right in practice. i'm
The more you optimize, the better the odds you slow your program down.
Optimization adds instructions and often data, in one of the
paradoxes of engineering. In time, then, what you gain by
"optimizing" increases cache pressure and slows the whole thing down.
C++ inlines a lot because microbench
On Wed, Feb 23, 2011 at 5:32 AM, Russ Cox wrote:
>> Local In the Plan 9 acme, this prefix causes a command to be run in
>> acme'sown file name space and environment variable group. On
>> Unix this is impossible...
>>
>> is there any other way to define environment variables for acme while
>> it's
someone should move those pages and all links from 2 to 8.
-rob
We'll get the Plan 9 implementation up to scratch. It's not there yet,
though. Once things look solid we'll need a volunteer to set up a
builder so we can automatically make sure the Plan 9 port stays
current.
-rob
I'm not sure I follow. The 6c and 6g compilers in the Go distribution
are compiled with the local compiler, such as gcc on Linux and OS X.
I don't believe it's possible they have Plan 9-specific features in
their source. I can believe they would have problems compiling on
Plan 9, but that's the i
1 - 100 of 148 matches
Mail list logo