[comp.sys.mac.hypercard] Slow Stack

edmoy@opal.berkeley.edu (10/27/87)

I'm new to HyperCard'ing and have been playing with other peoples stacks.
I just downloaded one from CompuServe that is called Data Library Browser,
that allows you to takes scans of the data libraries and convert them to
cards.  Anyways, I ran scans on about 5 or 6 data libraries in MACUS,
going back a year or so.  After spending all evening loading these in
(slow, but this is not the slowness I'm refering to), the stack has 981
cards, totalling 570 K.  The main background contains 10 fields and 27
buttons.  The Find operation seems to be reasonably quick, given the
size of the stack, but using the arrows to page through the cards is
really slow!  It takes over a minute to go to the next card on a Mac+
with a HD20 SC.  Is this typical of HyperCard, or is this stack somehow
braindamaged?  The Cover button takes you to the front cover in just a
few seconds (it has a different background with no buttons or fields, but
the card itself has 32 buttons).

Edward Moy
Academic Computing Services
University of California
Berkeley, CA  94720

edmoy@opal.Berkeley.EDU
ucbvax!opal!edmoy

steele@unc.cs.unc.edu (Oliver Steele) (10/27/87)

edmoy@opal.berkeley.edu() writes:
>The Find operation seems to be reasonably quick, given the
>size of the stack, but using the arrows to page through the cards is
>really slow!  It takes over a minute to go to the next card on a Mac+
>with a HD20 SC.  Is this typical of HyperCard, or is this stack somehow
>braindamaged?  The Cover button takes you to the front cover in just a
>few seconds

No, this isn't typical.  Try "Compact Stack" from the file menu (you may
have to hold down the command key when you click to see the item), and
if this fails try "Save a copy as..." and use the copy (this probably won't
work if "Compact Stack" didn't), and if this fails run DiskExpress on
your HD20SC (this almost definitely won't create a speedup as dramatic as
the one you need, but it's worth doing anyway).

Unless it took over a minute to page with the arrows when the stack was
real small.  If the time didn't increase as you added cards, there's
probably just a lot of slow script-work going on to rearrange the
environment whenever you close or open a card (you do both when you move
from one to another), and there's nothing you can do about it short of
trying to debug someone elses scripts.

------------------------------------------------------------------------------
Oliver Steele				  ...!{decvax,ihnp4}!mcnc!unc!steele
							steele%unc@mcnc.org

  "But remember, it's never too late to take Swahili." -- Peter Wolfenden

chuq%plaid@Sun.COM (Chuq Von Rospach) (10/27/87)

> but using the arrows to page through the cards is
>really slow!  It takes over a minute to go to the next card on a Mac+
>with a HD20 SC.  Is this typical of HyperCard, or is this stack somehow
>braindamaged?

That seems anomalous. What are the scripts on those buttons doing? If they 
are just doing a "go to next card" somethings wrong. my guess is there must
be a fair amount of processing going on trying to figure out just what
'next' means.

chuq
---
Chuq "Fixed in 4.0" Von Rospach			chuq@sun.COM	Delphi: CHUQ

tswift@well.UUCP (Theodore John Swift) (10/28/87)

>[slow traversal of stack made from network stuff]

I remember seeing someone else having the same problem.  He'd slurped a
bunch of text into a stack from some non-HC source.  He found that the stack
was much reduced in size when he "compacted" it. (This is pure speculation)
Hypercard seems to insert "buffer" cards when it's importing lots of text.
Danny Goodman's book mentions that compacting a stack removes unused or
redundant cards and cleans up links, so it may very well solve the problem.
Let us know what you find.

-ted
p.s. Oh yeah: and record the "before" and "after" sizes when you try "compact".
-- 
Ted Swift (well!tswift)                  "Why is there watermelon there?"
                                             "I'll explain later"
                                          - from "Buckaroo Banzaii"

edmoy@opal.berkeley.edu.UUCP (10/28/87)

Thanks for the suggestion to compact the stack.  Unfortunately, I had already
done that.  Just for fun, I tried compacting again (I've made no changes
since the first compaction).  Strangely, the stack grew in size from 569K
to 577K.  It's a bit faster; now the next card takes right around a minute
rather than over a minute!?!  Anyone got some other suggestions?

I've only started the HyperCard Handbook, but maybe someone can tell me
beforehand how to look at a script connected to a button.  Thanks.

Edward Moy
Academic Computing Services
University of California
Berkeley, CA  94720

edmoy@opal.Berkeley.EDU
ucbvax!opal!edmoy

john@felix.UUCP (John Gilbert) (10/28/87)

In article <5633@jade.BERKELEY.EDU> edmoy@opal.berkeley.edu() writes:

>cards, totalling 570 K.  The main background contains 10 fields and 27
>buttons.  The Find operation seems to be reasonably quick, given the
>size of the stack, but using the arrows to page through the cards is
>really slow!  It takes over a minute to go to the next card on a Mac+
>with a HD20 SC.  Is this typical of HyperCard, or is this stack somehow
>braindamaged?  The Cover button takes you to the front cover in just a
>few seconds (it has a different background with no buttons or fields, but
>the card itself has 32 buttons).

Something else you might try is entering:

   show all cards

in the message box (click the mouse to stop it at any time).  If this is quick,
then the next and previous buttons are doing something else as well to make
it slow.  You might also examine the scripts for the card, background and
stack to see if they are handling either openCard, closeCard messages.

Compacting your stack may help, but I suspect additional processing
is in the way here.

--
John Gilbert
!trwrb!felix!john

allen@mmm.UUCP (Kurt Allen) (10/30/87)

In article <5662@jade.BERKELEY.EDU> edmoy@opal.berkeley.edu () writes:
>... now the next card takes right around a minute
>rather than over a minute!?!  Anyone got some other suggestions?

    I'v noticed that when one enters a card that has a text field that
    is large (5-10 kb) it takes a second or two to load. Could it
    be possible that your card is loading a VERY large amount of text
    or data ?

>I've only started the HyperCard Handbook, but maybe someone can tell me
>beforehand how to look at a script connected to a button.  Thanks.

    By the time you get this you will probably have gotten your answer,
    but
    1. select Button (or Field) menu item from the tools menu
    2. select the button (or field) you want to look at
       by clicking on it.
    3. Select the menu item for Button Info (or Field Info)
       from the Objects Menu.
    4. Select Script... button from dialog box
    You'r now in the script editor. Note that you can also edit scripts
    for cards and stacks too. Enjoy.
-- 
	Kurt W. Allen
	3M Center
	ihnp4!mmm!allen