[comp.databases] Moving to the Unix environment from Clipper and MS-DOeSn't.

f0057@uafhp.uucp (James Everett Ward) (10/11/89)

Hello,

We are looking into projects that recquire multiuser ability and multitasking
would just be a boon.  I desire to move into the Unix world.  What would be
the easiest transition for a team of Clipper programmers (dBASE III+) as far
as programming languages go?  I have heard good things about Informix.  Would
we be at home or lost?  Any suggestions?

James E. Ward
Boren's Laws:
	(1) When in charge, ponder.
	(2) When in trouble, delegate.
	(3) When in doubt, mumble.

monty@delphi.uchicago.edu (Monty Mullig) (10/13/89)

In article <5809@decvax.dec.com> f0057@uafhp.uucp (James Everett Ward) writes:
>
>We are looking into projects that recquire multiuser ability and multitasking
>would just be a boon.  I desire to move into the Unix world.  What would be
>the easiest transition for a team of Clipper programmers (dBASE III+) as far
>as programming languages go?  I have heard good things about Informix.  Would
>we be at home or lost?  Any suggestions?
>
>James E. Ward


i have to suggest starting from scratch.  the MS-DOS and unix worlds
are so different and the db packages available on unix so richly
featured that i think trying to preserve the clipper/dos programming
environment would severely limit you in the long run, or at least
would deny you the best of the unix world and its software.  just my
opinion, though.

--monty

timk@xenitec.on.ca (Tim Kuehn) (10/14/89)

In article <5796@tank.uchicago.edu> monty@delphi.UUCP (Monty Mullig) writes:
>In article <5809@decvax.dec.com> f0057@uafhp.uucp (James Everett Ward) writes:
>>
>>We are looking into projects that recquire multiuser ability and multitasking
>>would just be a boon.  I desire to move into the Unix world.  What would be
>>the easiest transition for a team of Clipper programmers (dBASE III+) as far
>>as programming languages go?  
>>James E. Ward

>i have to suggest starting from scratch.  the MS-DOS and unix worlds
>are so different and the db packages available on unix so richly
>featured that i think trying to preserve the clipper/dos programming
>environment would severely limit you in the long run, or at least
>would deny you the best of the unix world and its software.  just my
>opinion, though.
>
>--monty

Actually part of the question is "Which unix are you going to use"? If you 
go to the SCO Xenix/Unix then you can get the SCO version of Foxbase/+ 2.1 
which runs virutally identical to the ms-dos version. There are some 
differences between clipper and foxbase/+ (f-base doesn't do windows as 
easily as clipper's dbedit and memoedit functions, but then clipper doesn't 
allow you the kind of macro-command creation/execution f-base does. There 
are other dielectical-type differences, but once you get over those the 
environment's are actually quite similar. The 'windowing' question 
can be addressed in f-base by writing your own 'dbedit' function (or 
buy the one I'm just about finished writing :-) no commercialisim intended...) 

However, if you go to a 4GL or SQL type package, then yes - you will
be starting from scratch. How much of a scratch I don't know, not having 
used any of the 4gl's out there yet. 
+-----------------------------------------------------------------------------+
|Timothy D. Kuehn	       			       timk@xenitec.on.ca     |
|TDK Consulting Services			       !watmath!xenitec!timk  |
|871 Victoria St. North, Suite 217A					      |
|Kitchener, Ontario, Canada N2B 3S4 		       (519)-741-3623 	      |
|DOS/Xenix - SW/HW. uC, uP, DBMS. 		       Satisfaction Guaranteed|
+-----------------------------------------------------------------------------+

bruce@mdi386.UUCP (Bruce A. McIntyre) (10/16/89)

In article <5809@decvax.dec.com>, f0057@uafhp.uucp (James Everett Ward) writes:
> We are looking into projects that recquire multiuser ability and multitasking
> would just be a boon.  I desire to move into the Unix world.  What would be
> the easiest transition for a team of Clipper programmers (dBASE III+) as far
> as programming languages go?  I have heard good things about Informix.  Would
> we be at home or lost?  Any suggestions?
> James E. Ward

We were long time developers using the dBASE language, starting back when
dBASEII first showed up under CP/M.  Over the years, as we kept running
beyond the capabilities of the dBASE environment, we used Clipper, Foxbase,
and others.  However, when we went to the UNIX environment full time, we
found that we needed a real, robust, fast 4GL and DBMS to develop with.

We explored Oracle, Informix 4GL, Unify Accell and others, but in the end
we selected PROGRESS from Progress Software.  This has proven to be a very
good move.  It was easy for the dBASE programmers to move to PROGRESS, once
they got used to the idea of SCOPING, and the reliability and flexibility
of the PROGRESS environment has allowed us to do whatever we needed without
going to a "C" environment at all.  PROGRESS offers both the high-level
4GL functions that an Informix 4GL does, and yet offers the lower level
nit-picking stuff that is necessary to really get what you want in a appli-
cation.  In addition, the ability to move the exact same source code to
such a wide variety of platforms has proven to be a real market advantage.

The reliability and speed of PROGRESS have proven to be even more than we
hoped, and the new multi-threaded server has allowed us to move to very
large applications and databases with no degredation in speed.  The latest
system under development will be working with 2.5 gigabyte databases for
insurance policy processing, to replace a system that was running on a
Honywell Mainframe...

Just happy users and developers,
bruce
-- 
=========================================================================
	Bruce A. McIntyre, McIntyre Designs, Inc. VOICE(215)322-1895
	143 Bridgetown Pike, Langhorne, Pa. 19047 DATA (215)357-2915
	{wells|lgnp1}!mdi386!bruce		bruce@mdi386 tbit+

timk@xenitec.on.ca (Tim Kuehn) (10/17/89)

In article <226@labii.UUCP> shevett@labii.UUCP (Dave Shevett) writes:
>>f0057@uafhp.uucp (James Everett Ward) writes:
>>
>>We are looking into projects that recquire multiuser ability and multitasking
>>would just be a boon.  I desire to move into the Unix world.  What would be
>>the easiest transition for a team of Clipper programmers (dBASE III+) ...
>
>I think you should seriously look at Foxbase under [X|U]nix.  

I belive this is only available with the SCO product. It *may* be ported to 
other unix's too, but one should check first....

>If you're
>already familiar with the dBase III structure, Foxbase will serve you fine,
>and you can port your application to the Unix system with NO mods (save
>possibly reindexing your files).  I developed a big Foxbase application
>under DOS, including file and record locking, and it ported to Unix and ran
>ON THE FIRST TRY.  

I can second that. I help beta-test f-base just before it first came out. 
Outside of a couple trivila beta bugs here and there I had the same experience
with a production tracking system I'd developed for a local steel mill.
Just copy the code and the databases over, recompile and reindex, and you're
off to the races! 

>If I wanted to run another task in the background that didn't need
>interactive I/O, you could push it into the background and return to the
>application via a !function & command.  (gee, I wonder how that would work?
>Isn't & a comment in Foxbase?  Has anyone done this?)

No - the && is the end-of-line comment in Foxbase. If the first character
is a "*" then the whole line is a comment. The "&" is a prefix for a 
macro substitution. Some examples:

* This line is a comment
i = chr(34) + "?hello world"+chr(34)		&& This is a macro command
&i						&& This will execute the 
						&& command ?"hello world"

Running the above little program from the '.' prompt or as a .prg will give:

Hello world

on your screen. 

Macro substituion is a the standard f-base way to pass arrays as arguments
to procedures and functions, to wit:

dimension array1(10)
array1 = 1				&& Store array1 with all '1's
i = summ_all("array1")			&& Call proc to summ array elements
?i

************************************************
procedure summ_all			&& F-base uses procedures as opposed
parameters arr_name			&& to clipper's function/procedure 
private summ				&& Statements.
summ = 0
i =1
do while i <= 10
	summ = summ + &arr_name(i)	&& Total up the array elements
	i = i + 1
enddo
return(summ)

>I'll admit I'm biased, but I haven't found a major need to dish out 
>bucks x 10^XXX for a large dbms when Foxbase has everything I need...

Ditto!

There are some differences between f-base and clipper (f-base has no dbedit()
and memoedit() calls, nor some of the other nice f{read/open/write/close}
calls clipper has, but they can be worked around. (The dbedit function can 
be emulated too by writing your own code or (dare I suggest this?) buying 
a f-base clone of the function which I'm almost done writing)

>/--------------------+ 'The shortest distance +------------------\
>|    Dave Shevett    |  between two puns is a | Labyrinth II BBS |
>| shevett@labii.UUCP |  straight line...'     |  W. Trenton, NJ  |
>\--------------------+       - Doc Webster    +------------------/

+-----------------------------------------------------------------------------+
|Timothy D. Kuehn	       			       timk@xenitec.on.ca     |
|TDK Consulting Services			       !watmath!xenitec!timk  |
|871 Victoria St. North, Suite 217A					      |
|Kitchener, Ontario, Canada N2B 3S4 		       (519)-741-3623 	      |
|DOS/Xenix - SW/HW. uC, uP, DBMS. 		       Satisfaction Guaranteed|
+-----------------------------------------------------------------------------+