Skip to content
Shell based on es
C++ Groff XS Shell Perl
Find file
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
xs_tests Remove return, break, add new escape function
AUTHORS Add required autotools files
CHANGES Write most changes from es to xs into CHANGES
COPYING
ChangeLog Add required autotools files
INSTALL
MANIFEST Add Makefile.in, install documents to code
Makefile.am
NEWS Add required autotools files
README Minor cleanup to README
access.cxx Add iterate macro
closure.cxx Miscallaneous minor changes
config.sub
configure.ac Use va_copy instead of using ugly non-standard stuff
conv.cxx Cleanup of syntax, especially for
depcomp
dump.cxx
es.hxx Add a missing header <string>
esconfig.hxx Remove volatile hack
eval.cxx
fd.cxx
glob.cxx Revert to sh-like glob failure behavior
glom.cxx Add basic support for arithmetic in :(expr) expansion
heredoc.cxx
initial.xs Make alias use which instead of whatis
input.cxx Build fixes for modern autoconf/automake
input.hxx Reconst nw, dnw
install-sh Add needed install script
list.cxx Cleanup heredoc code a little - mainly use deque
main.cxx Minor fix to main.cxx
match.cxx
mksignal
opt.cxx
parse.yxx
prim-ctl.cxx Add iterate macro
prim-etc.cxx
prim-io.cxx Rename Push -> Dyvar, move varpush and varpop into constructor/destru…
prim-sys.cxx Add iterate macro
prim.cxx Add a lot of const to List-related code, especially eval
prim.hxx Add a lot of const to List-related code, especially eval
print.cxx Use va_copy instead of using ugly non-standard stuff
print.hxx
proc.cxx Fix type signature of wait3 for darwin
sigmsgs.hxx Beginning of transition to c++
signal.cxx Rename Push -> Dyvar, move varpush and varpop into constructor/destru…
split.cxx
status.cxx
stdenv.hxx
str.cxx
syntax.cxx Build fixes for modern autoconf/automake
syntax.hxx mkseq char* -> const char*
term.cxx Miscallaneous minor changes
term.hxx
test.xs Remove return, break, add new escape function
token.cxx Build fixes for modern autoconf/automake
tree.cxx
trip.xs Cleanup of syntax, especially for
util.cxx
var.cxx Fix accidental duplicaton in environment
var.hxx
version.cxx
xs.1
xsdebug
y.tab.h Build fixes for modern autoconf/automake
ylwrap Add proper versions of autoconf/automake dependencies to repo

README

Xs is a cleanly-designed shell with functional programming. It is based off the source-code for 
the es project, which was in the public domain. The changes in xs can also be 
considered to be in the public domain.

Xs is not source-level compatible with es. See the manpage (xs.1) for more details about it.

Most of the xs source code remains the same as es. The primary authors of that shell can be 
found in that source code, currently located at: ftp://ftp.sys.utoronto.ca/pub/es/. Modifications 
since es-0.9-beta1 are all parts of xs and have been written by Frederic Koehler.
Something went wrong with that request. Please try again.