You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucy.apache.org by "Marvin Humphrey (JIRA)" <ji...@apache.org> on 2009/09/10 05:27:57 UTC
[jira] Created: (LUCY-40) Core object model
Core object model
-----------------
Key: LUCY-40
URL: https://issues.apache.org/jira/browse/LUCY-40
Project: Lucy
Issue Type: New Feature
Components: Core
Reporter: Marvin Humphrey
Assignee: Marvin Humphrey
Priority: Blocker
Implement the classes that comprise Lucy's core object model: Obj, VTable,
CharBuf, Hash, VArray and Err.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (LUCY-40) Core object model
Posted by "Marvin Humphrey (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/LUCY-40?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Marvin Humphrey updated LUCY-40:
--------------------------------
Attachment: core_object_model_support.diff
In addition to the files attached to the sub-issues of LUCY-40, two more
changes are necessary to get the core object model working.
First, core_object_model_support.diff must be applied. It primarily undoes a
bunch of temporary hacks, such as commented-out pound-includes. It also fixes
a couple latent bugs and inserts some THROW code now that Err is available.
Second, you need a local copy of ppport.h. This file is generated by the
Devel::PPPort, which recommends that you distribute it along with your code:
[http://perldoc.perl.org/Devel/PPPort.html#How-to-use-ppport.h]
{quote}
Don't direct the users of your module to download Devel::PPPort . They are
most probably no XS writers. Also, don't make ppport.h optional. Rather, just
take the most recent copy of ppport.h that you can find (e.g. by generating it
with the latest Devel::PPPort release from CPAN), copy it into your project,
adjust your project to use it, and distribute the header along with your
module.
{quote}
However, the generated ppport.h file contains the usual Perl license
notification:
{quote}
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
{quote}
I don't imagine that distributing ppport.h is compatible with the Apache
license, and I'm looking into what our options are.
> Core object model
> -----------------
>
> Key: LUCY-40
> URL: https://issues.apache.org/jira/browse/LUCY-40
> Project: Lucy
> Issue Type: New Feature
> Components: Core
> Reporter: Marvin Humphrey
> Assignee: Marvin Humphrey
> Priority: Blocker
> Attachments: core_object_model_support.diff
>
>
> Implement the classes that comprise Lucy's core object model: Obj, VTable,
> CharBuf, Hash, VArray and Err.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (LUCY-40) Core object model
Posted by "Marvin Humphrey (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/LUCY-40?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12755265#action_12755265 ]
Marvin Humphrey commented on LUCY-40:
-------------------------------------
The patch file core_object_model_support.diff has been committed as r814943.
> Core object model
> -----------------
>
> Key: LUCY-40
> URL: https://issues.apache.org/jira/browse/LUCY-40
> Project: Lucy
> Issue Type: New Feature
> Components: Core
> Reporter: Marvin Humphrey
> Assignee: Marvin Humphrey
> Priority: Blocker
> Attachments: core_object_model_support.diff
>
>
> Implement the classes that comprise Lucy's core object model: Obj, VTable,
> CharBuf, Hash, VArray and Err.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (LUCY-40) Core object model
Posted by "Marvin Humphrey (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/LUCY-40?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Marvin Humphrey updated LUCY-40:
--------------------------------
Attachment: ppport.diff
For now, we'll go against the Devel::PPPort docs' recommendation and add it as
a build_requires item to Build.PL. The other items under build_requires also
need a compiler, e.g. ExtUtils::CBuilder. I don't think there's a scenario
under which the user will need to build Lucy-for-Perl but won't be able to
install a recent Devel::PPPort from CPAN.
If the distribution issue for ppport.h can't be resolved, this will become a
permanent solution.
> Core object model
> -----------------
>
> Key: LUCY-40
> URL: https://issues.apache.org/jira/browse/LUCY-40
> Project: Lucy
> Issue Type: New Feature
> Components: Core
> Reporter: Marvin Humphrey
> Assignee: Marvin Humphrey
> Priority: Blocker
> Attachments: core_object_model_support.diff, ppport.diff
>
>
> Implement the classes that comprise Lucy's core object model: Obj, VTable,
> CharBuf, Hash, VArray and Err.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Resolved: (LUCY-40) Core object model
Posted by "Marvin Humphrey (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/LUCY-40?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Marvin Humphrey resolved LUCY-40.
---------------------------------
Resolution: Fixed
> Core object model
> -----------------
>
> Key: LUCY-40
> URL: https://issues.apache.org/jira/browse/LUCY-40
> Project: Lucy
> Issue Type: New Feature
> Components: Core
> Reporter: Marvin Humphrey
> Assignee: Marvin Humphrey
> Priority: Blocker
> Attachments: core_object_model_support.diff, ppport.diff
>
>
> Implement the classes that comprise Lucy's core object model: Obj, VTable,
> CharBuf, Hash, VArray and Err.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (LUCY-40) Core object model
Posted by "Marvin Humphrey (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/LUCY-40?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12753405#action_12753405 ]
Marvin Humphrey commented on LUCY-40:
-------------------------------------
The object model for Lucy consists of the following irreducible collection of
classes:
* Lucy::Obj
* Lucy::Obj::VTable
* Lucy::Obj::CharBuf
* Lucy::Obj::Hash
* Lucy::Obj::VArray
* Lucy::Obj::Err
All those modules are interdependent, but we will open separate issues for
them and commit them individually. Core will break tempararily until all of
them are added to the repository.
There are a few other modules which also belong under the Lucy::Obj umbrella.
* Lucy::Obj::Host, an inert class which implements callbacks to the host.
* Lucy::Obj::ByteBuf
* Lucy::Obj::BitVector
* Lucy::Obj::Undefined
* The number classes: Num, FloatNum, IntNum, Float32, Float64, Integer32 and
Integer64; others may follow.
The criteria for putting a module under Lucy::Obj is that if Boilerplater were
broken out as a separate project, the module would go with Boilerplater rather
than stay with Lucy. Thus, PriorityQueue, even though it is a general module
in the context of Lucy, is too specific an implementation to belong under Obj
and gets filed under Util.
> Core object model
> -----------------
>
> Key: LUCY-40
> URL: https://issues.apache.org/jira/browse/LUCY-40
> Project: Lucy
> Issue Type: New Feature
> Components: Core
> Reporter: Marvin Humphrey
> Assignee: Marvin Humphrey
> Priority: Blocker
>
> Implement the classes that comprise Lucy's core object model: Obj, VTable,
> CharBuf, Hash, VArray and Err.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (LUCY-40) Core object model
Posted by "Marvin Humphrey (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/LUCY-40?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12755015#action_12755015 ]
Marvin Humphrey commented on LUCY-40:
-------------------------------------
As per the discussion of [class hierarchy design|http://mail-archives.apache.org/mod_mbox/lucene-lucy-dev/200909.mbox/%3C20090912212047.GA2797@rectangular.com%3E]
on the lucy-dev list, we'll be moving everything under Lucy::Object.
* Lucy::Object::Obj
* Lucy::Object::CharBuf
* Lucy::Object::Hash
* Lucy::Object::VTable
* Lucy::Object::VArray
* Lucy::Object::Err
* ...
> Core object model
> -----------------
>
> Key: LUCY-40
> URL: https://issues.apache.org/jira/browse/LUCY-40
> Project: Lucy
> Issue Type: New Feature
> Components: Core
> Reporter: Marvin Humphrey
> Assignee: Marvin Humphrey
> Priority: Blocker
>
> Implement the classes that comprise Lucy's core object model: Obj, VTable,
> CharBuf, Hash, VArray and Err.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.