The Mozilla
Organization
Our Mission
Who We Are
Getting Involved
Community
Editorials
What's New
Development
Roadmap
Module Owners
Blue Sky
Projects
Status
Tools
Products
Source Code
Binaries
Documentation
License Terms
Bug Reports
Search
Feedback


JSD Low Level and API Items

John Bandhauer
17 June 1998

DO EVERYTHING FOR BOTH ENGINES

  • Threading
    • threadsafe traps
    • thread ids
    • stop one or multiple threads
    • interoperate with Java threads
    • track objects used by multiple threads
  • JS 1.3 JavaScript specific support
    • expose and support watchpoints
    • expose object creation and destruction
    • expose location of object constructor
    • expose location of line of code that created object (where's the 'new'?)
    • expose property iterators
    • expose property flags
    • expose prototype chains
    • expose scope resolution
    • expose types
    • call/return hooks
    • return w/ value support
    • implement debugger keyword as an engine hook
    • expose objects via reference id
    • Unicode support
    • expose info about natives
    • deep recursion hook
    • XDR hooks
    • expose security annotations
    • fix numerous existing Rhino bugs
    • expose graph of object references (not just property iterator)
    • allow for debug support when some optimizations are enabled
  • JS 1.4 support
    • expose and support exceptions
    • expose sealing
  • LiveConnect support
  • Profiling support
    • track amount of time in each function
    • code coverage support
    • sampling support
    • expose ratio of time spent in compile/interpreter/native/java/XDR
  • Debugger Performanace enhancements
    • low level stepping
    • compiled in (bytecode) debug statements
  • Enhanced UI support
    • expose which lines script have code
    • loop stepping (and other activities that are semantically linked)
    • expose an ASM (logical bytecode) mapping
    • integration with Native code debugging
    • support target code communication to debugger
    • improve error reporter mechanism (differentiate compile errors and warnings from runtime errors)
    • interpreter loop waits for adjustable slow execution modes
    • cross runtime debugging
    • multiple debugger on one runtime debugging
    • eval as user or superuser
    • fast multi object snapshot/compare to detect changes
    • track type conversions
    • recursize object size information
    • catch function call param mismatches
    • expose multiple uses of the same script source
    • expose various aliases for a given object
  • API enhancements
    • evolve and restructure API
    • add capability flags to api
    • fix breakpoint clearing/chaining bugs
    • constuct and maintain API testing system
    • evolve the existing UI for testing new support and distibution to licensees
    • support various embedding specific issues (and new embedders)
    • make Corba transport more generic (not ES 3.51 specific)
    • add new API transports (transend Corba)
    • C++ wrapper for api
  • Reference UI enhancements
    • strategies for alternate logic partitioning
  • General
    • work up documentation
    • provide examples
    • support embedders and tool providers
    • support Corba scripting
    • multi-platform build/test issues



Copyright © 1998 The Mozilla Organization.