[Laszlo-dev] [UPDATED] For Review: Change 20080606-ptw-1 Summary: Trim some fat
Henry Minsky
hminsky at laszlosystems.com
Wed Jun 18 15:57:55 PDT 2008
I haven't gotten all the way through this yet, but why don't you check
it in and I'll keep reviewing...
On Wed, Jun 18, 2008 at 4:24 PM, P T Withington <ptw at pobox.com> wrote:
> [UPDATED: Responding to André's review, weather demo works in swf9 (still),
> with no deprecated warnings in swf8]
>
> Change 20080606-ptw-1 by ptw at dueling-banjos.local on 2008-06-06 06:47:15 EDT
> in /Users/ptw/OpenLaszlo/ringding-clean
> for http://svn.openlaszlo.org/openlaszlo/trunk
>
> Summary: Trim some fat
>
> Bugs Fixed:
> LPP-6017 'file size of compiled swf applications has gotten
> significantly larger' (partial)
>
> Technical Reviewer: hminsky (pending)
> QA Reviewer: a.bargull at intensis.de (pending)
>
> Details:
> With these changes, dhtml size is significantly improved, swf not
> so much. In the table below, p-d is the pagan-deities sizes, r-d
> is ring-ding, and now is with this change set
>
> swf8 dhtml
> p-d 121k 288k
> r-d 226k 560k
> now 208k 353k
>
> LzNode: makeChild now takes the class to instantiate, instead of a
> tag. This allows us to instantiate anonymous classes directly and
> not clutter the tag table with anonymous class names. Renamed
> userClassPlacement to follow internal class names, removed it from
> the tag table. (Part of the reason this can work now is that the
> compiler orders class definitions to emit them before they are
> used, whereas in the past it did not handle forward references.)
>
> swf9/hello.lzx: Update to load resource from local server rather
> than Henry's house, so I can test off line.
>
> LzLibraryLoader, LzLibrary, LzLibraryCleanup, kernel.as: Use class
> instead of name for LzInstantiateView (and hence makeChild).
>
> ReplicationManager: Use class rather than tag to create clones.
>
> Class: Install class in global (rather than the compiler doing so
> in-line, to save space).
>
> CommonGenerator: Simplify argument defaulting code to use `switch`
> and `Array#slice` rather than multiple `if` clauses and `for`
> loop.
>
> CanvasCompiler: Compute and declare all global id's and names in a
> batch up front.
>
> *: Rename '[cC]lass[nN]ame' to '[tT]ag[nN]ame', since that is what it
> really
> is. Update map generators and calls to instantiator to pass
> 'class' instead of 'name'.
>
> NodeModel: If you are not in debug mode, use short, unique names
> for methods, rather than the verbose names.
>
> ClassModel: Allow classes that don't have corresponding tags.
> Don't output empty children maps. Don't install anonymous classes
> in the tagmap.
>
> Tests:
> smokecheck, ant runlztest, swf9/hello
>
> Files:
> M test/swf9/hello.lzx
> M WEB-INF/lps/lfc/kernel/swf/LzLibraryLoader.lzs
> M WEB-INF/lps/lfc/kernel/dhtml/LzLibrary.js
> M WEB-INF/lps/lfc/kernel/LzLibraryCleanup.lzs
> M WEB-INF/lps/lfc/debugger/platform/swf/kernel.as
> M WEB-INF/lps/lfc/core/LzNode.lzs
> M WEB-INF/lps/lfc/data/LzReplicationManager.lzs
> M WEB-INF/lps/lfc/compiler/Class.lzs
> M WEB-INF/lps/server/src/org/openlaszlo/sc/CommonGenerator.java
> M WEB-INF/lps/server/src/org/openlaszlo/compiler/ClassCompiler.java
> M WEB-INF/lps/server/src/org/openlaszlo/compiler/ViewCompiler.java
> M WEB-INF/lps/server/src/org/openlaszlo/compiler/CanvasCompiler.java
> M WEB-INF/lps/server/src/org/openlaszlo/compiler/ViewSchema_Test.java
> M WEB-INF/lps/server/src/org/openlaszlo/compiler/ViewSchema.java
> M
> WEB-INF/lps/server/src/org/openlaszlo/compiler/CompilationEnvironment.java
> M WEB-INF/lps/server/src/org/openlaszlo/compiler/DataCompiler.java
> M WEB-INF/lps/server/src/org/openlaszlo/compiler/NodeModel.java
> M
> WEB-INF/lps/server/src/org/openlaszlo/compiler/ScriptElementCompiler.java
> M WEB-INF/lps/server/src/org/openlaszlo/compiler/Compiler.java
> M WEB-INF/lps/server/src/org/openlaszlo/compiler/ClassModel.java
> M WEB-INF/lps/server/src/org/openlaszlo/compiler/CompilationError.java
> M WEB-INF/lps/server/src/org/openlaszlo/compiler/CompilerUtils.java
>
>
> Changeset: http://svn.openlaszlo.org/openlaszlo/patches/20080606-ptw-1.tar
--
Henry Minsky
Software Architect
hminsky at laszlosystems.com
More information about the Laszlo-dev
mailing list