[comp.sys.apple] Merlin and APW-ORCA/M

wtaylor@pro-hysteria.cts.com (Will Taylor) (04/25/89)

perhaps this has been asked before, and from a non-biased viewpoint, is
APW-ORCA/M any better than Merlin (8,16,16+)   I know Merlin is faster because
it is loaded into memory at one time.. and APW has more documentation in the
main stream, but to any with experience with both, is there really that
much difference for Assembly programming (not pascal or c) ? thanks.

blochowi@cat28.CS.WISC.EDU (Jason Blochowiak) (04/26/89)

	I don't think that there is such a thing as a non-biased viewpoint on
these matters - at least not from anyone who's used them much. I personally
think that Merlin is better for little things, and APW is better for bigger
things.
	Merlin started out, way back, as Big Mac (for the original ][), and
was a compatible (methinks) replacement for an earlier assembler. Then it
turned into Merlin, then Merlin Pro, and so on. Anyways, all of this means
that it started out small and got bigger. I think that Glen Bredon did a
pretty damn good job of growing Merlin without too many problems, but, IMHO,
it's a bit "hackish", because it started small and got bigger.
	APW started out as Orca/M for the //'s, but was huge for the time.
It was modeled after larger development systems. I'm not sure how many
artifacts there are from the older development system, but the overall design
seems somewhat cleaner (although still not quite what I'd like to see...).
	APW's source segmentation allows for much cleaner design of larger
programs - each segment references things ONLY in its segment, or things in
other segments that it explicitly includes. So, you can control the scope of
variables, much like higher level languages. Also, it seems to me that APW's
macro language is more powerful - I'm not a real expert on Merlin's macros
(I don't even own Merlin yet - I just get lent the package by my current
employer whenever I need to use it), but I have done some work with them.
The segmentation makes it much easier to just "yank" a subroutine out of one
program and drop it into another, and the worries about "hmm, does this
reference something else that I have to put into my other program?" are
diminished, as (if you do it right) you'll be able to see what data it
accesses.
	APW's overhead (the shell, etc.) can be something of a pain, especially
if you have a small development system (not lotsa RAM, no hard drive, or
whatever), but it pays off if you do something large. Conversely, Merlin is
useable without a large number of resources.
	You said that higher level languages didn't come into play - but you
might become interested in them at some later date, and APW leaves that door
open to you.
	Hope this helps...
 ------------------------------------------------------------------------------
		Jason Blochowiak (blochowi@garfield.cs.wisc.edu)
			"Not your average iconoclast..."
 ------------------------------------------------------------------------------

shawn@pnet51.cts.com (Shawn Stanley) (04/28/89)

wtaylor@pro-hysteria.cts.com (Will Taylor) writes:
>perhaps this has been asked before, and from a non-biased viewpoint, is
>APW-ORCA/M any better than Merlin (8,16,16+)   I know Merlin is faster because
>it is loaded into memory at one time.. and APW has more documentation in the
>main stream, but to any with experience with both, is there really that
>much difference for Assembly programming (not pascal or c) ? thanks.

"Loaded into memory at one time..."  As in, it's only one program?  That in
itself points out something I like about APW.  It's a shell environment, where
you may run other programs (including your own).  I especially like this
ability for debugging purposes, and also because I like to add my own
programming utilities.

I originally converted all my Merlin source files for my BBS over to ORCA/M so
I could have an Apple IIgs assembler to work with.  (My BBS used to run on an
Apple //e with a clock card for interrupts and time-keeping, and I wanted to
take advantage of the Apple IIgs in those ways, in addition to others.)

When Merlin 8/16 came out, I played with it a little bit, wondering if I could
move back into Merlin since I had been so used to it.  But it ran in ProDOS 8,
and I had to quit every time I wanted to run a module of my BBS, or any ProDOS
16 product for that matter.

I haven't tried 16+, but now I suspect I'm too used to the APW environment. 
I've always liked shell environments, and I like the fact that I also have
access to a C compiler without having to quit the shell, so I can write up
quick utilities or file conversion programs.

I guess I would call APW "open-architecture development", and it's a feature I
like a lot.

UUCP: {uunet!rosevax, amdahl!bungia, chinet, killer}!orbit!pnet51!shawn
INET: shawn@pnet51.cts.com