lucy-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Marvin Humphrey (JIRA)" <j...@apache.org>
Subject [jira] Updated: (LUCY-94) Eliminate OO from Charmonizer/Core/*
Date Mon, 04 Jan 2010 20:45:54 GMT

     [ https://issues.apache.org/jira/browse/LUCY-94?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Marvin Humphrey updated LUCY-94:
--------------------------------

    Attachment: charm_core_bye_bye_oo.diff

This patch, "charm_core_bye_bye_oo.diff",  also merges the
Charmonizer/Core/CompilerSpec module into Compiler itself.

> Eliminate OO from Charmonizer/Core/*
> ------------------------------------
>
>                 Key: LUCY-94
>                 URL: https://issues.apache.org/jira/browse/LUCY-94
>             Project: Lucy
>          Issue Type: Improvement
>          Components: Charmonizer
>            Reporter: Marvin Humphrey
>            Assignee: Marvin Humphrey
>            Priority: Minor
>         Attachments: charm_core_bye_bye_oo.diff
>
>
> Charmonizer's Compiler and OperatingSystem modules have been organized around
> OO techniques, with objects, constructors, destructors, etc.  However, since
> we never have to deal with more than one Compiler or OperatingSystem at a
> time, we can move all of their object member variables into module variables,
> so that the modules themselves become something like singletons.  We achieve
> something like polymorphism by assigning these module variables custom values
> using either ifdefs or run-time initialization routines. 
> With this change, Charmonizer's internals now simplify to a more traditional
> procedural pattern:
> {code:none}
> /* Before. */
> success = compiler->compile_exe(compiler, source_path, exe_name, 
>     code, code_len);
> /* After. */
> success = CC_compile_exe(source_path, exe_name, code, code_len);
> {code}
> Once this is committed, the only OO code remaining in Charmonizer will be
> TestBatch.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message