Re: tcsh fix

2004-11-11 Thread Avleen Vig
On Thu, Nov 11, 2004 at 06:49:04PM -0600, Kevin Lyons wrote:
> I think the problem can still be fixed.  Simply put in /bin/tcsh and let 
> /bin/csh be what it actually is, which is to say /bin/csh.  I realize 
> that will add all of 300kB to the system. And there would also have to 
> be an entry for tcsh in /etc/shells.  Should I send a patch?
> 
> Developers have a right to expect a certain basic level of functionality 
> on a system.  When he calls fopen() he should get fopen, when he calls 
> /bin/bash he should get /bin/bash not zsh nor sh nor ksh.

I have to agree with Kevin's sentiments on principle.
'csh' should run pure csh, not anything else.
'sh' should be pure sh, not what Linux does and bastardize it as
/bin/bash

If someon wants a more powerful shell, they can install it themselves.

-- 
Avleen Vig
Systems Administrator
Personal: www.silverwraith.com
EFnet:irc.mindspring.com (Earthlink user access only)
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: tcsh fix

2004-11-11 Thread Erik Trulsson
On Thu, Nov 11, 2004 at 06:30:23PM -0800, Avleen Vig wrote:
> On Thu, Nov 11, 2004 at 06:49:04PM -0600, Kevin Lyons wrote:
> > I think the problem can still be fixed.  Simply put in /bin/tcsh and let 
> > /bin/csh be what it actually is, which is to say /bin/csh.  I realize 
> > that will add all of 300kB to the system. And there would also have to 
> > be an entry for tcsh in /etc/shells.  Should I send a patch?
> > 
> > Developers have a right to expect a certain basic level of functionality 
> > on a system.  When he calls fopen() he should get fopen, when he calls 
> > /bin/bash he should get /bin/bash not zsh nor sh nor ksh.

When /bin/bash is called he should get a message saying that there is
no such program, since bash has no business being installed under /bin.
(This for FreeBSD - other systems have other conventions.)

Personally I am of the opinion that csh (all versions) should be
removed completely from the base system and relegated entirely to the
ports system. Other than historical reasons there is not much point in
having it in the base system.
Other peoples opinions differ however, and last time the future of csh/tcsh
was discussed (in a *long* bikeshed-thread) the decision was that
/bin/csh should be upgraded to the latest version of tcsh.
If one is to have csh in the base system this was probably the right
decision.
(Originally csh was created to get a shell with better interactive
features the original Bourne shell and tcsh is much better for
interactive use than 'classic' csh - indeed a modern /bin/sh is better
than 'classic' csh.  For writing scripts the Bourne-derivatives is much
better than csh and it has long been strongly recommended that one
should not write scripts for csh. One cannot even assume that
all systems have csh installed - Posix doesn't require it but it does
require /bin/sh to be present.) 

> 
> I have to agree with Kevin's sentiments on principle.
> 'csh' should run pure csh, not anything else.

'csh' does run pure csh, and nothing else. The latest version of csh
which happens to be renamed to tcsh to be exact.  That this latest
version is not 100% compatible with earlier versions might be
unfortunate but very few software packages never break backwards
compatibility.


> 'sh' should be pure sh, not what Linux does and bastardize it as
> /bin/bash

There is no such thing as "pure sh".  It you believe otherwise please
tell us what you think such a shell would look like and exactly what
features should be in it.
(Hint: Current standards require /bin/sh to have several features that
were not available on early Unix versions.)

The only real problem with having bash as /bin/sh is that people tend
to write scripts using bash-specific features and forget that such
scripts are not portable to systems using a less powerful /bin/sh.

> 
> If someon wants a more powerful shell, they can install it themselves.

Keep in mind that FreeBSD's /bin/sh is a more powerful shell than was
available in, say, v7 Unix.


-- 

Erik Trulsson
[EMAIL PROTECTED]
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: tcsh fix

2004-11-11 Thread Bruce M Simpson
On Fri, Nov 12, 2004 at 04:11:22AM +0100, Erik Trulsson wrote:
> Keep in mind that FreeBSD's /bin/sh is a more powerful shell than was
> available in, say, v7 Unix.

Also keep in mind that ash is not POSIX sh (at least not as completely
as one might like). This tends to bite me when using GNU autotools,
which are hardcoded to prefer bash by default.

Regards,
BMS
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: tcsh fix

2004-11-11 Thread Avleen Vig
On Fri, Nov 12, 2004 at 04:11:22AM +0100, Erik Trulsson wrote:
> Personally I am of the opinion that csh (all versions) should be
> removed completely from the base system and relegated entirely to the
> ports system. Other than historical reasons there is not much point in
> having it in the base system.

I strongly disagree. csh and sh should be 'pure' versions. That is to
say, no matter what shell is actually being called as sh or csh, it
should provide a 100% compatible version, no differences, no "upgrades".
This is to provide compatibility whn working with multiple versions of
Unix.
I write many scripts in sh on Solaris, and find they just don't work on
Linux because /bin/sh on Linux is really /bin/bash and is not bacwards
compatible. I HATE this. We shouldn't do this, and should do anything
like this.

> (Originally csh was created to get a shell with better interactive
> features the original Bourne shell and tcsh is much better for
> interactive use than 'classic' csh - indeed a modern /bin/sh is better
> than 'classic' csh.  For writing scripts the Bourne-derivatives is much
> better than csh and it has long been strongly recommended that one
> should not write scripts for csh. One cannot even assume that
> all systems have csh installed - Posix doesn't require it but it does
> require /bin/sh to be present.) 

and /bin/sh should be classic /bin/sh not some version which is going to
break my shit when I port it over! I'm so glad this is the case with
FreeBSD :-)

> 'csh' does run pure csh, and nothing else. The latest version of csh
> which happens to be renamed to tcsh to be exact.  That this latest
> version is not 100% compatible with earlier versions might be
> unfortunate but very few software packages never break backwards
> compatibility.

How about when working with multiple versions of the same shell on
different OS's? surely you can see the problem there.

> > 'sh' should be pure sh, not what Linux does and bastardize it as
> > /bin/bash
> 
> There is no such thing as "pure sh".  It you believe otherwise please
> tell us what you think such a shell would look like and exactly what
> features should be in it.
> (Hint: Current standards require /bin/sh to have several features that
> were not available on early Unix versions.)

Then we should follow current standards. Not pretend one shell is
another!

> > If someon wants a more powerful shell, they can install it themselves.
> 
> Keep in mind that FreeBSD's /bin/sh is a more powerful shell than was
> available in, say, v7 Unix.

Yes but AFAIK it's compatible in every way I've tried with say, Sun's
/bin/sh, and I've tried some pretty complex shell scripts.

-- 
Avleen Vig
Systems Administrator
Personal: www.silverwraith.com
EFnet:irc.mindspring.com (Earthlink user access only)
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: tcsh fix

2004-11-11 Thread Avleen Vig
On Thu, Nov 11, 2004 at 07:30:14PM -0800, Bruce M Simpson wrote:
> Also keep in mind that ash is not POSIX sh (at least not as completely
> as one might like). This tends to bite me when using GNU autotools,
> which are hardcoded to prefer bash by default.

True, but the problem there is people coding things to bash-specific
routines, and then not bothering to test they work on anything but their
own little boxes. Argh.

-- 
Avleen Vig
Systems Administrator
Personal: www.silverwraith.com
EFnet:irc.mindspring.com (Earthlink user access only)
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: tcsh fix

2004-11-12 Thread Bob Bishop
At 03:30 12/11/2004, Bruce M Simpson wrote:
Also keep in mind that ash is not POSIX sh (at least not as completely
as one might like). [etc]
Indeed. It's POSIX sh far more completely than one might like.
/duck
--
Bob Bishop  +44 (0)118 940 1243
[EMAIL PROTECTED]   fax +44 (0)118 940 1295
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: tcsh fix

2004-11-12 Thread Erik Trulsson
On Thu, Nov 11, 2004 at 09:55:43PM -0800, Avleen Vig wrote:
> On Fri, Nov 12, 2004 at 04:11:22AM +0100, Erik Trulsson wrote:
> > Personally I am of the opinion that csh (all versions) should be
> > removed completely from the base system and relegated entirely to the
> > ports system. Other than historical reasons there is not much point in
> > having it in the base system.
> 
> I strongly disagree. csh and sh should be 'pure' versions. That is to
> say, no matter what shell is actually being called as sh or csh, it
> should provide a 100% compatible version, no differences, no "upgrades".

100% compatible with WHAT?!?  Remember that even 'classic' csh went
through several versions, and I very much doubt that the last version
was 100% compatible with the first version.
sh has gone through even more upgrades over the years.
For /bin/sh there is a Posix standard which says what minimum set of
features it should have.  Following this standard makes /bin/sh look
much more like the Korn shell than the original Bourne shell.

> This is to provide compatibility whn working with multiple versions of
> Unix.
> I write many scripts in sh on Solaris, and find they just don't work on
> Linux because /bin/sh on Linux is really /bin/bash and is not bacwards
> compatible. I HATE this. We shouldn't do this, and should do anything
> like this.

Again - backwards compatible with what?  Might it not be the case that
it is your scripts for Solaris-sh which uses non-standard features and
therefore fails on bash (which actually tends to be very
standards-compliant.)

> 
> > (Originally csh was created to get a shell with better interactive
> > features the original Bourne shell and tcsh is much better for
> > interactive use than 'classic' csh - indeed a modern /bin/sh is better
> > than 'classic' csh.  For writing scripts the Bourne-derivatives is much
> > better than csh and it has long been strongly recommended that one
> > should not write scripts for csh. One cannot even assume that
> > all systems have csh installed - Posix doesn't require it but it does
> > require /bin/sh to be present.) 
> 
> and /bin/sh should be classic /bin/sh not some version which is going to
> break my shit when I port it over! I'm so glad this is the case with
> FreeBSD :-)

But it isn't.  /bin/sh is much improved and enhanced over 'classic'
/bin/sh (as found in, say v6 Unix.)
Going back to the original Bourne shell would not be fun.

ash (the shell FreeBSD uses for /bin/sh) is much a "real" /bin/sh as
tcsh is a "real" /bin/csh.


> > 'csh' does run pure csh, and nothing else. The latest version of csh
> > which happens to be renamed to tcsh to be exact.  That this latest
> > version is not 100% compatible with earlier versions might be
> > unfortunate but very few software packages never break backwards
> > compatibility.
> 
> How about when working with multiple versions of the same shell on
> different OS's? surely you can see the problem there.

If you have to write scripts that need to work with many different
shell-implementations - each with its own set of bugs - you will simply
have to write your scripts so as to avoid those things which differ
between the implementations.
The other option is to write your scripts so that they work according
to some relevant standard and file bug-reports for those shells which
do not implement the standard correctly.

> 
> > > 'sh' should be pure sh, not what Linux does and bastardize it as
> > > /bin/bash
> > 
> > There is no such thing as "pure sh".  It you believe otherwise please
> > tell us what you think such a shell would look like and exactly what
> > features should be in it.
> > (Hint: Current standards require /bin/sh to have several features that
> > were not available on early Unix versions.)
> 
> Then we should follow current standards. Not pretend one shell is
> another!

Following current standards means that we cannot have a 'classic'
/bin/sh.  Following current standards mean that Linux can have bash
installed as /bin/sh.

> 
> > > If someon wants a more powerful shell, they can install it themselves.
> > 
> > Keep in mind that FreeBSD's /bin/sh is a more powerful shell than was
> > available in, say, v7 Unix.
> 
> Yes but AFAIK it's compatible in every way I've tried with say, Sun's
> /bin/sh, and I've tried some pretty complex shell scripts.

Sun's /bin/sh has also been enhanced in many ways (mostly for
Posix-compliance I would think, same as FreeBSD's /bin/sh.)



-- 

Erik Trulsson
[EMAIL PROTECTED]
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: tcsh fix

2004-11-12 Thread Kevin Lyons
Erik Trulsson wrote:

100% compatible with WHAT?!?  Remember that even 'classic' csh went
through several versions, and I very much doubt that the last version
was 100% compatible with the first version.
They added some features. Existing functionality was not broken.
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: tcsh fix

2004-11-12 Thread Paul Armstrong
On Fri, Nov 12, 2004 at 05:05:28PM +0100, Erik Trulsson wrote:
> > This is to provide compatibility whn working with multiple versions of
> > Unix.
> > I write many scripts in sh on Solaris, and find they just don't work on
> > Linux because /bin/sh on Linux is really /bin/bash and is not bacwards
> > compatible. I HATE this. We shouldn't do this, and should do anything
> > like this.
> 
> Again - backwards compatible with what?  Might it not be the case that
> it is your scripts for Solaris-sh which uses non-standard features and
> therefore fails on bash (which actually tends to be very
> standards-compliant.)

Indeed. Keep in mind that if you want a standard Bourne implementation
on Solaris (or at least one that complies to POSIX.2a-1992), then you
need to start your scripts with /usr/xpg4/bin/sh rather than /bin/sh.

Given that it's easier (and shouldn't actually do any harm to the base
OS) to commit the 44bsd csh as /bin/csh (or just simply remove the link
for /bin/csh->/bin/tcsh) than continue to argue about this, would
someone with a commit bit please make this thread go away?

Paul

___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: tcsh fix

2004-11-12 Thread David O'Brien
On Thu, Nov 11, 2004 at 09:55:43PM -0800, Avleen Vig wrote:
> On Fri, Nov 12, 2004 at 04:11:22AM +0100, Erik Trulsson wrote:
> > Personally I am of the opinion that csh (all versions) should be
> > removed completely from the base system and relegated entirely to the
> > ports system. Other than historical reasons there is not much point in
> > having it in the base system.
> 
> I strongly disagree. csh and sh should be 'pure' versions. That is to
> say, no matter what shell is actually being called as sh or csh, it
> should provide a 100% compatible version, no differences, no "upgrades".
> This is to provide compatibility whn working with multiple versions of
> Unix.

What is a pure 'csh'??  Please answer in detail.  Have you ever looked at
the source code for 4.3BSD 'csh'?  What about 'tcsh' source code?  Hint,
Christos Zoulas had at CSRG login and was maintaining and enhancing BSD
'csh'.  The 4.4BSD 'csh' was Zoulas's work.  'tcsh' is simply the
continued evolution of BSD 'csh'.

So do you want the original Bill Joy 'csh' from 3BSD??
Do you want the 'csh' that originally appeared in System 3 (or was it
V)??  Do you wan the 4.4BSD-Lite2 'csh' (ie, the last from CSRG)??
THERE IS NO STANDARD 'csh'.  POSIX doesn't even try to standardize it.

'csh' is an interactive shell, not a programming language.  Anyone trying
to write "portable" scripts in 'csh' should know why "Csh Programming
Considered Harmful" http://www.faqs.org/faqs/unix-faq/shell/csh-whynot/


> I write many scripts in sh on Solaris, and find they just don't work on
> Linux because /bin/sh on Linux is really /bin/bash and is not bacwards
> compatible. I HATE this.

This is a totally different story.  There is a POSIX 'sh' standard, and
bash "leaks" extensions even when exec'ed as /bin/sh.


> > There is no such thing as "pure sh".  It you believe otherwise please
> > tell us what you think such a shell would look like and exactly what
> > features should be in it.
> > (Hint: Current standards require /bin/sh to have several features that
> > were not available on early Unix versions.)
> 
> Then we should follow current standards. Not pretend one shell is
> another!

Again, show me the standard addressing 'csh'.

-- 
-- David  ([EMAIL PROTECTED])
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: tcsh fix

2004-11-12 Thread Kevin Lyons
David O'Brien wrote:
What is a pure 'csh'??  Please answer in detail.  Have you ever looked at
the source code for 4.3BSD 'csh'?  What about 'tcsh' source code?  Hint,
Christos Zoulas had at CSRG login and was maintaining and enhancing BSD
'csh'.  The 4.4BSD 'csh' was Zoulas's work.  'tcsh' is simply the
continued evolution of BSD 'csh'.
Presumably pure csh is the last stable release of csh before tcsh came 
along.  Openbsd, netbsd, sun and sgi all seem to have been able to 
settle on a csh.

___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: tcsh fix

2004-11-12 Thread Bruce M Simpson
On Fri, Nov 12, 2004 at 01:50:24PM -0600, Kevin Lyons wrote:
> Presumably pure csh is the last stable release of csh before tcsh came 
> along.  Openbsd, netbsd, sun and sgi all seem to have been able to 
> settle on a csh.

I'm extremely happy with having tcsh instead of csh in the base system. As
others have said, if someone has an operational requirement for plain old
csh, they are free to install the port and make the appropriate links.

BMS
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: tcsh fix

2004-11-12 Thread Charles Sprickman
On Fri, 12 Nov 2004, Bruce M Simpson wrote:
I'm extremely happy with having tcsh instead of csh in the base system. As
others have said, if someone has an operational requirement for plain old
csh, they are free to install the port and make the appropriate links.
As an interested (and innocent) bystander, I'm not quite grasping why it's 
an either/or proposition.  Why not just break the link, grab net/open's 
/bin/csh and commit it?

Charles
BMS
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: tcsh fix

2004-11-12 Thread Bernd Walter
On Fri, Nov 12, 2004 at 09:50:05AM -0800, Paul Armstrong wrote:
> On Fri, Nov 12, 2004 at 05:05:28PM +0100, Erik Trulsson wrote:
> > > This is to provide compatibility whn working with multiple versions of
> > > Unix.
> > > I write many scripts in sh on Solaris, and find they just don't work on
> > > Linux because /bin/sh on Linux is really /bin/bash and is not bacwards
> > > compatible. I HATE this. We shouldn't do this, and should do anything
> > > like this.
> > 
> > Again - backwards compatible with what?  Might it not be the case that
> > it is your scripts for Solaris-sh which uses non-standard features and
> > therefore fails on bash (which actually tends to be very
> > standards-compliant.)
> 
> Indeed. Keep in mind that if you want a standard Bourne implementation
> on Solaris (or at least one that complies to POSIX.2a-1992), then you
> need to start your scripts with /usr/xpg4/bin/sh rather than /bin/sh.

I often missed features in FreeBSD ash that Solaris /bin/sh had, such as
using ^ sign as an | alternative (in germany one often has to search
the | key on bad configured terminals, which was not uncommon in field
service).
I also often missed the vi mode and command history of FreeBSDs ash in
Solaris.
To get both sides happy you have to build it into *one* shell and not
complaining your missing features are more important than what others
need.

> Given that it's easier (and shouldn't actually do any harm to the base
> OS) to commit the 44bsd csh as /bin/csh (or just simply remove the link
> for /bin/csh->/bin/tcsh) than continue to argue about this, would
> someone with a commit bit please make this thread go away?

It's much easier getting the compatbility bug fixed in tcsh by
contacting the tcsh maintainers than senseless asking for yet another
shell in the base.
Have you ever tried contacting the tcsh team about this issue?
Having two shells is just bleeding base and the discussion about csh
vs. tcsh is long time ago - it even already made it into -stable.

-- 
B.Walter   BWCThttp://www.bwct.de
[EMAIL PROTECTED]  [EMAIL PROTECTED]

___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: tcsh fix

2004-11-12 Thread Bruce M Simpson
Hello,

Misunderstandings such as this seem to be all too common in volunteer
open source projects, sadly, and the resultant slagging match on
mailing lists is counterproductive for all concerned.

On Fri, Nov 12, 2004 at 04:53:58PM -0500, Charles Sprickman wrote:
> As an interested (and innocent) bystander, I'm not quite grasping why it's 
> an either/or proposition.  Why not just break the link, grab net/open's 
> /bin/csh and commit it?

Because we settled on tcsh 4 years ago, and no one has complained up
until now, and making such a change now means going through all the
vendor branch rigmarole for another shell in the base system, when
the vast majority of people using the system are happy with the
shells we already have, and alternatives are easily and readily
available from ports.

If person X wants shell Y which is not in the base system, and they
wish to use they are perfectly free to use ports or maintain a local
branch. The latter is non-trivial, the former, well, the time and
effort involved in maintaining a port is far lower, and a port
already exists for this particular case.

Being abusive towards the volunteers who maintain something largely
for free, and maintaining that something a bug when it isn't, when the
answer to person X's problems is right in front of them, doesn't
help anyone - it certainly doesn't help the person who wants the
functionality of shell Y, and it doesn't magically inspire the
volunteers who maintain the project to invest the non-trivial time
and effort in creating a CVS vendor branch to maintain shell Y,
which only person X has asked for.

Regards,
BMS
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: tcsh fix

2004-11-12 Thread Tim Robbins
On Fri, Nov 12, 2004 at 04:53:58PM -0500, Charles Sprickman wrote:
> On Fri, 12 Nov 2004, Bruce M Simpson wrote:
> 
> >I'm extremely happy with having tcsh instead of csh in the base system. As
> >others have said, if someone has an operational requirement for plain old
> >csh, they are free to install the port and make the appropriate links.
> 
> As an interested (and innocent) bystander, I'm not quite grasping why it's 
> an either/or proposition.  Why not just break the link, grab net/open's 
> /bin/csh and commit it?

Because two copies of csh are two too many. If we were to import another
shell into the base system, it would not be csh.


Tim
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: tcsh fix

2004-11-12 Thread Brian Fundakowski Feldman
On Fri, Nov 12, 2004 at 10:47:10AM -0800, David O'Brien wrote:
> On Thu, Nov 11, 2004 at 09:55:43PM -0800, Avleen Vig wrote:
> > On Fri, Nov 12, 2004 at 04:11:22AM +0100, Erik Trulsson wrote:
> > > Personally I am of the opinion that csh (all versions) should be
> > > removed completely from the base system and relegated entirely to the
> > > ports system. Other than historical reasons there is not much point in
> > > having it in the base system.
> > 
> > I strongly disagree. csh and sh should be 'pure' versions. That is to
> > say, no matter what shell is actually being called as sh or csh, it
> > should provide a 100% compatible version, no differences, no "upgrades".
> > This is to provide compatibility whn working with multiple versions of
> > Unix.
> 
> What is a pure 'csh'??  Please answer in detail.  Have you ever looked at
> the source code for 4.3BSD 'csh'?  What about 'tcsh' source code?  Hint,
> Christos Zoulas had at CSRG login and was maintaining and enhancing BSD
> 'csh'.  The 4.4BSD 'csh' was Zoulas's work.  'tcsh' is simply the
> continued evolution of BSD 'csh'.
> 
> So do you want the original Bill Joy 'csh' from 3BSD??
> Do you want the 'csh' that originally appeared in System 3 (or was it
> V)??  Do you wan the 4.4BSD-Lite2 'csh' (ie, the last from CSRG)??
> THERE IS NO STANDARD 'csh'.  POSIX doesn't even try to standardize it.
> 
> 'csh' is an interactive shell, not a programming language.  Anyone trying
> to write "portable" scripts in 'csh' should know why "Csh Programming
> Considered Harmful" http://www.faqs.org/faqs/unix-faq/shell/csh-whynot/

How dare you interject reason into this flamewar!

-- 
Brian Fundakowski Feldman   \'[ FreeBSD ]''\
  <> [EMAIL PROTECTED]   \  The Power to Serve! \
 Opinions expressed are my own.   \,,\
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: tcsh fix

2004-11-13 Thread David O'Brien
On Sat, Nov 13, 2004 at 12:03:34AM +0100, Bernd Walter wrote:
> I often missed features in FreeBSD ash that Solaris /bin/sh had, such as
> using ^ sign as an | alternative (in germany one often has to search
> the | key on bad configured terminals, which was not uncommon in field
> service).

That actually isn't a Solaris'ism -- '^' was used as the pipe character
in Ken Thompson's Version 4 shell, before '|' was decided on.
http://www.in-ulm.de/~mascheck/bourne/v4/

-- 
-- David  ([EMAIL PROTECTED])
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: tcsh fix

2004-11-13 Thread Mike Partin
> > I write many scripts in sh on Solaris, and find they just don't work on
> > Linux because /bin/sh on Linux is really /bin/bash and is not bacwards
> > compatible. I HATE this.

Not to mention there is simply POSIX sh that you can have on linux, I
personally like ash as it's got the speed, and features I like while
being IIRC POSIX compliant sh. You would know this had you spent 5
minutes on google instead of 3 days complaining.

-- 
Mike Partin <[EMAIL PROTECTED]>

___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: tcsh fix

2004-11-13 Thread Johan van Selst
Kevin Lyons wrote:
> Presumably pure csh is the last stable release of csh before tcsh came 
> along.  Openbsd, netbsd, sun and sgi all seem to have been able to 
> settle on a csh.

If you really want csh, please install ports:shells/44bsd-csh/
And if you just want to troll, please stop. Thank you.


Greetings,
Johan


pgpG9ro9TyRgD.pgp
Description: PGP signature


Re: tcsh fix

2004-11-13 Thread Richard Coleman
Tim Robbins wrote:
I'm extremely happy with having tcsh instead of csh in the base
system. As others have said, if someone has an operational
requirement for plain old csh, they are free to install the port
and make the appropriate links.
As an interested (and innocent) bystander, I'm not quite grasping
why it's an either/or proposition.  Why not just break the link,
grab net/open's /bin/csh and commit it?

Because two copies of csh are two too many. If we were to import
another shell into the base system, it would not be csh.
I have to agree.  I've never understood why people take it personal if 
something is not in the base.  Just because you install something as a 
port doesn't make it any less a part of your system.  It can actually be 
an advantage, since updating a small port like 44bsd-csh is pretty easy.

I would personally rather see it go in the opposite direction.  I would 
be happy if the ONLY shell in the base was a POSIX'ified sh.  That's 
really the only thing necessary for the base system.  Everything else 
could be a port.  Of course, removing things from the base is harder 
than adding them, so it won't happen any time soon.  And since there are 
more important things to worry about, the current setup is just fine 
with me.

Richard Coleman
[EMAIL PROTECTED]
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: tcsh fix

2004-11-14 Thread Andrew Lankford
>'csh' is an interactive shell, not a programming language.  Anyone >trying
>to write "portable" scripts in 'csh' should know why "Csh Programming
>Considered Harmful" http://www.faqs.org/faqs/unix-faq/shell/csh-whynot/
I vote that FreeBSD import a free version of the Windows command line, 
"cmd.exe".  Show them the real meaning of pain! >;)
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: tcsh fix

2004-11-15 Thread Roman Neuhauser
# [EMAIL PROTECTED] / 2004-11-12 04:11:22 +0100:
> The only real problem with having bash as /bin/sh is that people tend
> to write scripts using bash-specific features and forget that such
> scripts are not portable to systems using a less powerful /bin/sh.

Or the other way around. Bash (at least the one from RHEL 3.0) is
seriously broken, these two things are more than it can handle (as
opposed to our /bin/sh):

$(case $foo in
  x) do_x;;
  y) do_y;;
esac)

out=`mktemp ...`
$otherscript >$out 2&1

where $otherscript contains

$(x | tee /dev/stderr | y)

I stumbled upon these when I was porting periodic(8) to RHEL. So, my
description would be that people run into problems when they write
scripts using sh-specific features and forget that such scripts are
not portable to systems using a less powerful bash. ;)


-- 
If you cc me or remove the list(s) completely I'll most likely ignore
your message.see http://www.eyrie.org./~eagle/faqs/questions.html
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: tcsh fix

2004-11-15 Thread Christopher Vance
On Fri, Nov 12, 2004 at 04:11:22AM +0100, Erik Trulsson wrote:
Personally I am of the opinion that csh (all versions) should be
removed completely from the base system and relegated entirely to the
ports system. Other than historical reasons there is not much point in
having it in the base system.
I agree.  Please.
OpenBSD's standard sh is a well-maintained pdksh, and is really nice -
significantly nicer than the pdksh version in ports, and much nicer
than the bash that got foisted on me at my last job or the csh I got
stuck with many jobs before that.
--
Christopher Vance
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"