[comp.sys.apple] Language Discussion Vote

dowst@JPL-VLSI.ARPA (05/29/87)

My vote is for dropping the language discussion at this point.
The diatribes are getting to heavy, and the contributions to the
needs of most Apple owners' knowledge base are minimal.  Most
decent Apple program development is done in assembly language.
Most home users find AppleSoft sufficient for their programming
needs.  Neither C nor Pascal/Modula have much utility for "the 
rest of us".  Although I have been a programmer for over 30 years, 
I admit that I can't make any linguistic evaluations at the level
the discussion has now reached.  I am not sure that the various
authors can either.

Henry Dowst
 evaluations at 

gwyn@BRL.ARPA.UUCP (05/30/87)

I have to disagree with your claim that "neither C nor Pascal/Modula
have much utility for "the rest of us"".  It is said that currently
most Macintosh commercial software is being written in C; both C and
Pascal (I don't know about Modula-2) are available for the whole Apple
II family; the Apple IIGS has good 16-bit C and Pascal compilers
available (Apple provides an assembler and a C compiler), and the IIGS
built-in AppleSoft BASIC is effectively limited to the 8-bit world.

It is certainly true that the choice of language is not terribly
relevant to the buyer of a turnkey package; however, even in that
situation it may make a difference.  For example, if MouseTalk had
been developed under Apple's Pascal, it would not be able to be easily
moved onto my hard disk nor access ProDOS files for upload/download;
these capabilities are important to me as a product user.  Some Apple
Pascal-based software, for example Wizardry, runs more slowly than it
should, as a direct consequence of the language implementation used.

Infrequent, amateur programmers may well be advised to stick to
AppleSoft BASIC, since it comes with the machine and is accommodated
in Apple documentation.  However, for serious programming projects,
AppleSoft BASIC has a number of severe limitations (among them lack of
modular subroutines and too limited variable names) that make it not
usually the best choice.  Beagle Brothers has a BASIC compiler for those
who need more speed for their BASIC programs.  Assembly language has the
advantage of permitting direct control over everything programmable
about the machine, but it requires taking care of numerous low-level
details that a higher-level language handles for the programmer.  Even
worse, assembly code is machine-specific and cannot readily be ported to
other systems.  These characteristics have adverse impact on the long-
term economics of software development, even for hobbyist programmers.
Apple Pascal has the advantage of being a higher-level language, and
one that is usually taught in introductory Computer Science courses,
but it has the notable drawback of using its own incompatible operating
system and disk format.  There are at least two C packages available
for the Apple II; the one I use, Aztec C65, works well and makes it
fairly easy to port applications from the UNIX environment at work to
my home system.  I believe that Forth, Fortran-77, and Lisp are also
available in some form for the Apple II, but I don't have any
experience with those products.  For the Apple IIGS, the three
choices at present seem to be assembler (basically ORCA/M, which is
also for sale from the ByteWorks), C, and TML Pascal.  All three are
available through APDA, the first two (Apple products) in Beta test
versions.

For what it's worth, of the languages available to me at home for
Apple II programming, my approximate choice ratio is:
assembler	 5% (limited to special circumstances)
BASIC		10% (mostly small, one-shot tests or contributed code)
C		85% (most major applications)

I have no motivation to buy more languages that are functionally similar
to these; if I were developing AI applications, I might buy Lisp or
Prolog or some such language (if none were available, I'd produce one
rather than trying to use the wrong tools for the job).  I'm considering
porting Icon to the IIGS to support certain cryptographic applications
(although C seems to be best for most of what I have in mind).

One thing to keep in mind:  Serious software development practically
requires a hard disk.  The 5Mb ProFile I have is not really enough;
20Mb seems like the best size for the typical developer.  40Mb and larger
would require partitioning for ProDOS, which is probably an acceptable
nuisance if you really need the space -- which you will if you work with
digitized images or sound.

In case you haven't inferred it, I consider the IIGS to be a much more
capable system than the //e, particularly from the programmer's viewpoint.
Even though preliminary software support for the IIGS is a bit rough, I
am really glad I upgraded.

ranger@ecsvax.UUCP (Rick N. Fincher) (06/01/87)

In article <8705291829.aa03893@VGR.BRL.ARPA>, gwyn@BRL.ARPA (Doug Gwyn, VLD/VMB) writes:
> One thing to keep in mind:  Serious software development practically
> requires a hard disk.  The 5Mb ProFile I have is not really enough;
> 20Mb seems like the best size for the typical developer.  40Mb and larger
> would require partitioning for ProDOS, which is probably an acceptable
> nuisance if you really need the space -- which you will if you work with
> digitized images or sound.

Is there still a 32 MB limit for Prodos 16 volumes?  I had heard that
the volume sizes were greatly increased for Prodos 16 but I have not
been able to get the Tech reference manual yet, so I don't know.

Rick Fincher
ranger@ecsvax 

gwyn@brl-smoke.ARPA (Doug Gwyn ) (06/02/87)

In article <3306@ecsvax.UUCP> ranger@ecsvax.UUCP (Rick N. Fincher) writes:
>Is there still a 32 MB limit for Prodos 16 volumes?  I had heard that
>the volume sizes were greatly increased for Prodos 16 but I have not
>been able to get the Tech reference manual yet, so I don't know.

I thought I remembered the ProDOS 16 Tech. Ref. saying that, but I'll
check and if it's different I'll let you know.  Note that the 32Mb limit
corresponds to the maximum size that a 16-bit block pointer (for 512-byte
blocks) can reference.  This is the fundamental constraint, built into
the structure of ProDOS directories.  The format has to be changed or
extended somehow to access a larger partition.

eww@OBERON.LCS.MIT.EDU.UUCP (06/03/87)

Ummmm, pardon my ......    but in regard to a 32MB restriction to a ProDos
Volume; if one were given a 160MB drive, just what are the parameters
required by ProDos to utilize such a unit? ie: 

1. What separation of the theoretical 160Mb's are required?

2. Are directories sufficient or are partitions of 32Mb's neccessary?

3. Is it that ProDos requests different "Drives" such as slot# "X" drive
#1, slot# "X" drive #2 etc. etc.?

rupp@cod.UUCP (06/05/87)

Let me add Z-Basic, and Micol-Basic to the list of alternatives
to Applesoft.  These two languages are much more modern in approach
and greatly improve on Applesoft's modest capabilities.  Right now
they are limited to 8-bit mode, but we can only hope that GS specific
versions will appear eventually.

[I have no connection with any product mentioned above.  My opinions
are solely my own and are offered for your information.  How's that, Gary?]

sloan@pnet02.UUCP (06/06/87)

Well, when I talked to the folks at Apple about the 32MB limit, they had
_absolutely *NO*_ plans on changing the maximum disk size.  

Personally, some ProDOS software gurus and some hardware geeks should be able
to come up with the same idea as folks that partition drives for DOS 3.3! 
Have one, two, or however many "volume" directories it takes.  ie:

        /HDA    /HDB    /HDC    etc, etc....

Steve

UUCP: {ihnp4!crash, hplabs!hp-sdd!crash}!gryphon!pnet02!sloan
INET: sloan@pnet02.CTS.COM