Title: MozTorch - Machine Learning for the Mozilla Community


Machine learning has become an increasingly useful area of computer science contributing to such diverse areas as biomedical research, image recognition, prediction of highway traffic congestion, and web document searching. Perhaps most relevant to the Mozilla project, machine learning techniques have made it possible to significantly reduce junk email by automatically filtering unwanted messages. The goal of MozTorch is to provide these techniques to the Mozilla community for use in email filtering and other future applications. This will be accomplished by leveraging Mozilla's technology to give developers access to the Torch open source C++ library as an XPCOM component.

Benefits to Community:

MozTorch benefits the open source community by bringing together researchers and academicians with open source developers, providing cutting-edge machine learning techniques to the people who can make the most use of them. At the same time, this project helps support one of the shining stars of the open source community, boosting support and adding credibility to the movement as a whole.


    * Investigation:
        * Analyze Torch file I/O and memory management routines
        * Identify points to rewrite with XPCOM calls

    * Programming: Port Torch to XPCOM environment
        * Port file access to XPCOM's file I/O service
        * Port memory handling code to XPCOM's memory management service
        * Write manager functions for handling general tasks 
        * Write XPIDL interface for Torch library

    * Dissemination: Package MozTorch for distribution
        * XPInstall script: adds component to chrome registry
        * Trigger script: web page which initiates install process

    * Documentation: 
        * MozTorch API Reference
        * Changes from original Torch library


The MozTorch project provides access to state-of-the-art machine learning techniques to Mozilla developers. This work is primarily intended to support advanced spam filtering in Mozilla's Thunderbird email application, but many uses can be imagined. The project's goal will be achieved by converting the Torch C++ library into XPCOM component, accessible to the entire Mozilla codebase.

Related Work:

   * Torch project website -
   * Mozilla project website -
   * XPCOM documentation -


I am an undergraduate computer science student at Portland State University in Portland, OR. As an undergraduate, I have been involved in various machine learning projects over the last three years. Under the direction of Professor Bart Massey, I worked on research into the use of machine learning in open source software. This work was published Proceedings in the 2003 Usenix Annual Technical Conference, Freenix Track, and can be found at the following URL:

The moztorch project can be contacted through the mailing list or the member list.
Copyright © 2000-2018. All rights reserved. Terms of Use & Privacy Policy.