ftp.nice.ch/pub/next/developer/languages/eiffel/espretty.s.tar.gz#/espretty-se

Makefile
 
RCS/
 
README
 
ansi_format.e
 
ascii_format.e
 
eiffel_format.e
 
espp
 
espp.1
 
espp.man
[View espp.man] 
espp.script
 
espretty.1
 
espretty.cio
 
espretty.e
 
espretty.man
[View espretty.man] 
f_input.e
 
format.c
[View format.c] 
format.e
 
formattable_io.e
 
manager.e
 
mif_format.e
 
mime_format.e
 
p_output.e
 
rtf_format.e
 
s_input.e
 
s_supply.e
 
scanner.e
 
string.e
 
string.e.backup
 
t_eof.e
 
t_ident.e
 
t_line.e
 
t_number.e
 
t_space.e
 
t_string.e
 
t_symb.e
 
token.e
 

README

Thu Jul  4 17:46:46 GMT+0100 1996 -- Author: V. Kyriakides

*** This is "espretty", a Eiffel source pretty printer for SmallEiffel. ***


1.) INSTALLATION

- To compile it, cd into the /espretty-se directory and type:

      >  compile espretty main -o espretty format.c

- To get a finalized version of espretty which runs much quicker, type:

      >  compile espretty main -boost -o espretty format.c
		
  or use the supplied Makefile.
		
- After this, open the 'espp' script with your favorite editor and setup
  the correct search path for the 'espretty' programm in the following
  section of the script:

        #
        # SET HERE SPRETTY's ACCESS PATH! 
        #
        # NOTE: THIS IS THE ONLY NEEDED CUSTOMIZATION SETTING
        #

        ESPRETTY=/usr/local/bin/espretty

		
NOTE: On Unix systems you should use the supplied 'espp' shell script, 
      which offers greater flexibility in handling eiffel files.


- Now you can copy 'espp', 'espretty' and the man-pages to corresponding 
  places, for example:

         >   cp espp espretty /usr/local/bin
			>   cp espp.1 espretty.1 /usr/local/man/man1


2.) DOCUMENTATION

Don't forget to read the supplied man-pages for 'espp' and 'espretty',
since they are the documentation.


3.) PURPOSE

espretty is the result of some tests I run with SmallEiffel-v0.95.
(Yes, SmallEiffel produces nice code and I highly recommend it!) 

For the moment I use it to prettify my (Small)Eiffel codings etc.
I also use it as an 'short' alias, so it is my 'flatshort' tool
for SmallEiffel.

However, for the future it would be better to have real 'short',
'flat', 'flat-short' and 'plain' tools etc. which should use some 
sort of extendable filter format. Something similar like ISE-Eiffel 
v3.3 seems to have. But for the moment (at least for me) espretty 
will do it!


4.) HISTORY

In late 1994 I needed some nice formatted Eiffel sources for presentations
in one of our OOA/OOD University projects. At that time we used ISE-Eiffel
version 2.3 and 2.4, which hadn't the ability to produce pretty printed
RTF or FrameMaker MIF files. 

I decided to look around for a publicly available one for ISE-Eiffel. There
wasn't any for ISE-Eiffel, only some pretty printers for SIG's Eiffel/S.
So I started with some public sources for a simple ascii pretty printer called
spretty and rewrote it for ISE-Eiffel. The result was espretty, which also 
supports simple RTF, MIF... etc. output formating.

Now 1996, I tried during tests of SmallEiffel, to rebuild espretty for 
SmallEiffel. This is the result.

However, for the moment SmallEiffel lacks some more powerfull structure and 
string matching classes, so the ISE-Eiffel version of espretty is much more 
powerfull and in some points different from this version for SmallEiffel.
(The ISE-Eiffel version for example uses an enhanced argument cluster, which 
offers GNU getopt like argument parsing etc. And has also some more powerfull
string parsing mechanisms, especially for the RTF and MIF formating. So it 
hasn't the restrictions, that this version for SmallEiffel has.)

BUT: don't forget, SmallEiffel is still in it's first evolution steps and
will become more and more powerfull during it's releases. So that it is only
a matter of time, for SmallEiffel to reach the same level as the commercial
Eiffel-systems. 

So SmallEiffel has some advantages over ISE-Eiffel:

a) SmallEiffel is a *free* Eiffel compiler.
b) SmallEiffel is *very portable* as it is distributed in C sourcecode form.
c) SmallEiffel beats ISE-Eiffel today and now in compilation speed 
   and turnaround cyclus time (as my personal tests have shown).
d) It produces small, fast and portable C code. 
   

--
Valentino Kyriakides
1kyriaki@informatik.uni-hamburg.de

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.