9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
* Re: [9fans] Plan9 as a development environment?
@ 2001-06-14 20:09 anothy
  2001-06-15  8:27 ` Andrew Nesbit
  0 siblings, 1 reply; 5+ messages in thread
From: anothy @ 2001-06-14 20:09 UTC (permalink / raw)
  To: 9fans

plan 9's C dialect (for the most part) consists of a less sophisticated pre-processor
and a few extentions to the language proper. the extetions are described breifly on
the 2c(1) man page and in more deation in the paper "How to Use the Plan 9 C
Compiler" (/sys/doc/comp.ps).

Plan 9 also includes a compatability subsystem calle APE, the ANSI/POSIX
Environment, which includes a complete(?) ANSI pre-preocssor.

the biggest differences you're likely to run into on this level are the libraries. plan 9
provides different libaries for many of the standard functions. and obviously many
things - like networking - are done completely differently. again, APE providdes the
ANSI/POSIX libraries and many common extentions.

as suggested here a few times before, ape may actually be a more exactly
conforming ANSI/POSIX environment than many Unix systems. but the prefered
development environment is still Plan 9's native environment, which provides access
to the native libraries, compiles faster, and results in faster executables. nearly all the
C code in the system as distributes (gs and troff are the only exceptions i can think
of) are written in Plan 9's C dialect.

as far as other languages, people have ported Perl and Python with some success.
they are not distributed with the system, and i don't have pointers, but the people
who did the work are probably reading this list. there was a C++ compiler in the 2nd
edition, but not in the current edition. rc, the shell, is an excelent shell, with many
improvements over the bourne shell that make it well-suited to scripting. if you
_need_ it, APE provides a mostly-ksh shell (minus the editing modes and history).
there's also awk.

many people (including me) will tell you that if you're doing applications-level stuff,
and you're willing to learn something new, it'd be worth your time to learn Limbo, the
programing language in Inferno. Inferno runs on Plan 9, and lots of other platforms,
too (various Unixes, Win-32, raw hardware). Limbo is a new language in the C lineage,
with great facilities for inter-process communication and multi-threaded, multi-proc
development, and a very nice syntax. definatly worth your investigation.

the common development environment (in the IDE sense of the term) is Acme, a sort
of combination shell, windowing system, and development environment. it's described
in the acme(1) man page, and in the paper "Acme: A User Interface for Programmers"
(/sys/doc/acme/acme.ps). Acme is available in both the Plan 9 and Inferno
distributions. the name of the paper is somewhat misleading - it's quite useful for lots
of non-programming tasks, as well. for example, my prefered email client runs in
Acme, and i use Acme as my text editor.

hope that helps, and good luck with your experimentation.
-α.



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

* Re: [9fans] Plan9 as a development environment?
  2001-06-14 20:09 [9fans] Plan9 as a development environment? anothy
@ 2001-06-15  8:27 ` Andrew Nesbit
  0 siblings, 0 replies; 5+ messages in thread
From: Andrew Nesbit @ 2001-06-15  8:27 UTC (permalink / raw)
  To: 9fans

anothy@cosym.net writes:

<big snip>

>hope that helps, and good luck with your experimentation.
>-.

Thankyou!

-Andrew


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

* Re: [9fans] Plan9 as a development environment?
  2001-06-14 17:41 anothy
@ 2001-06-15  3:33 ` William Josephson
  0 siblings, 0 replies; 5+ messages in thread
From: William Josephson @ 2001-06-15  3:33 UTC (permalink / raw)
  To: 9fans

On Thu, Jun 14, 2001 at 01:41:18PM -0400, anothy@cosym.net wrote:
<Snip C, Limbo, &c.>

Russ Cox also has a port of Mosml (see www.eecs.harvard.edu/~rsc).

 -WJ


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

* Re: [9fans] Plan9 as a development environment?
@ 2001-06-14 17:41 anothy
  2001-06-15  3:33 ` William Josephson
  0 siblings, 1 reply; 5+ messages in thread
From: anothy @ 2001-06-14 17:41 UTC (permalink / raw)
  To: 9fans

plan 9's C dialect (for the most part) consists of a less sophisticated pre-processor
and a few extentions to the language proper. the extetions are described breifly on
the 2c(1) man page and in more deation in the paper "How to Use the Plan 9 C
Compiler" (/sys/doc/comp.ps).

Plan 9 also includes a compatability subsystem calle APE, the ANSI/POSIX
Environment, which includes a complete(?) ANSI pre-preocssor.

the biggest differences you're likely to run into on this level are the libraries. plan 9
provides different libaries for many of the standard functions. and obviously many
things - like networking - are done completely differently. again, APE providdes the
ANSI/POSIX libraries and many common extentions.

as suggested here a few times before, ape may actually be a more exactly
conforming ANSI/POSIX environment than many Unix systems. but the prefered
development environment is still Plan 9's native environment, which provides access
to the native libraries, compiles faster, and results in faster executables. nearly all the
C code in the system as distributes (gs and troff are the only exceptions i can think
of) are written in Plan 9's C dialect.

as far as other languages, people have ported Perl and Python with some success.
they are not distributed with the system, and i don't have pointers, but the people
who did the work are probably reading this list. there was a C++ compiler in the 2nd
edition, but not in the current edition. rc, the shell, is an excelent shell, with many
improvements over the bourne shell that make it well-suited to scripting. if you
_need_ it, APE provides a mostly-ksh shell (minus the editing modes and history).
there's also awk.

many people (including me) will tell you that if you're doing applications-level stuff,
and you're willing to learn something new, it'd be worth your time to learn Limbo, the
programing language in Inferno. Inferno runs on Plan 9, and lots of other platforms,
too (various Unixes, Win-32, raw hardware). Limbo is a new language in the C lineage,
with great facilities for inter-process communication and multi-threaded, multi-proc
development, and a very nice syntax. definatly worth your investigation.

the common development environment (in the IDE sense of the term) is Acme, a sort
of combination shell, windowing system, and development environment. it's described
in the acme(1) man page, and in the paper "Acme: A User Interface for Programmers"
(/sys/doc/acme/acme.ps). Acme is available in both the Plan 9 and Inferno
distributions. the name of the paper is somewhat misleading - it's quite useful for lots
of non-programming tasks, as well. for example, my prefered email client runs in
Acme, and i use Acme as my text editor.

hope that helps, and good luck with your experimentation.
-α.



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

* [9fans] Plan9 as a development environment?
@ 2001-06-14 16:17 Andrew Nesbit
  0 siblings, 0 replies; 5+ messages in thread
From: Andrew Nesbit @ 2001-06-14 16:17 UTC (permalink / raw)
  To: 9fans

hi... I am interested in doing some experimentation with Plan9.  What
sort of development environment can one reasonably expect?  I know there
exists some subset(?) of ISO C, but my question is: what languages have
people used under Plan9, and to what degree of success?

-Andrew


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

end of thread, other threads:[~2001-06-15  8:27 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-06-14 20:09 [9fans] Plan9 as a development environment? anothy
2001-06-15  8:27 ` Andrew Nesbit
  -- strict thread matches above, loose matches on Subject: below --
2001-06-14 17:41 anothy
2001-06-15  3:33 ` William Josephson
2001-06-14 16:17 Andrew Nesbit

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).