lucy-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Apache Wiki <wikidi...@apache.org>
Subject [Lucy Wiki] Update of "MeetUp" by MarvinHumphrey
Date Sat, 04 Apr 2015 00:13:57 GMT
Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Lucy Wiki" for change notification.

The "MeetUp" page has been changed by MarvinHumphrey:
https://wiki.apache.org/lucy/MeetUp?action=diff&rev1=2&rev2=3

Comment:
Various improvements.

  
  Time: 10:00 AM Pacific / 5:00 PM GMT
  
- Agenda:
+ Location: Lucy's dedicated Google Hangout: [[http://s.apache.org/lucy-hangout]].
+ 
+ To participate, log into Google Plus, then [[http://s.apache.org/lucy-hangout|join the videochat]].
+ 
+ === Agenda ===
  
   1.  Introductions (10 minutes)
   2.  Interfaces    (30 minutes)
   3.  Open discussion / more about interfaces (20 minutes)
+ 
+ === Format ===
+ 
+ This MeetUp will take the form of a Lucy Book Club discussion: participants will answer
questions prepared by other participants on the theme.  Feel free to bring your own questions!
  
  General discussion questions for interfaces:
  
@@ -25, +33 @@

   1.  Should Lucy's Query class be an interface instead of an abstract class?  How about
Analyzer, Searcher, Matcher, Collector, Compiler, IndexReader, DataReader, DataWriter, Lexicon,
Posting, Folder, FileHandle, Lock, and SortExternal -- all of which are abstract classes?
   1.  There are a handful of Lucy classes which are designed to be subclassed by users but
are not abstract: QueryParser, IndexManager, Schema, FieldType, and Highlighter.  Why is it
challenging to change these to interfaces?
   1.  How can we change the Clownfish callback mechanism to be based on interfaces instead
of classes?
-  1.  If we use runtime "duck typing" to establish interface compliance, 
   1.  Should Obj#Hash_Sum be moved to a "Hasher" interface?  Should Obj#Clone be moved to
a "Cloner" interface?  Should Obj have any methods at all?
  
  Bonus questions:
  
-  1.  What are co-variant return types?
+  1.  What are covariant return types?
   1.  Why is duck typing easier using hashtable-based method dispatch than vtable-based method
dispatch?
  
+ Optional reading materials:
+ 
+  * [[https://en.wikipedia.org/wiki/Mixin|Mixins]]
+  * [[https://docs.oracle.com/javase/tutorial/java/IandI/defaultmethods.html|Default methods]]
+ 

Mime
View raw message