Changes between Initial Version and Version 1 of LoritoDesignQuestions

Show
Ignore:
Timestamp:
07/21/10 06:07:57 (12 years ago)
Author:
tcurtis
Comment:

Create a list of questions to consider when thinking about Lorito.

Legend:

Unmodified
Added
Removed
Modified
  • LoritoDesignQuestions

    v1 v1  
     1As Lorito seems to be a somewhat nebulous concept about which people seem to be certain about only a few specific details (not that the specific details are the same between any two people), this is a list of questions we need to consider when designing, planning, and implementing Lorito. Feel free to add more or offer your opinion on a possible answer to any of them. 
     2 
     3What are the main goals that Lorito should accomplish? 
     4 
     5How much of Parrot's current core do we want to eventually rewrite in Lorito? 
     6 
     7Will PIR compile down to Lorito assembly or will it be a superset of Lorito assembly? 
     8 
     9Will Lorito have the option of compiling to C? 
     10 
     11Will Lorito use a different bytecode format from the existing PBC? 
     12 
     13If there is a distinct LBC (Lorito bytecode) format, will instructions be fixed-length? 
     14 
     15Will Lorito have the same calling conventions as Parrot currently does? 
     16 
     17If Lorito's calling conventions differ from Parrot's current ones, what will they be? 
     18 
     19Will Parrot's calling conventions remain the same after Lorito? 
     20 
     21Will Lorito allow direct memory access/pointer arithmetic? 
     22 
     23Will Lorito allow manual memory allocation/deallocation? 
     24 
     25Will Lorito have a stack? 
     26 
     27Will Lorito distinguish between data types at the lowest level? 
     28 
     29Will there be separate storage for different types of data at the lowest level? 
     30 
     31Will Lorito have a object model built-in? 
     32 
     33Will Lorito still have the same core object model as Parrot? 
     34 
     35Will Lorito have a single op that does method dispatch at the lowest level or it will be simulated using a series of ops? 
     36 
     37Will Lorito have some declarative syntax at the lowest level for creating classes/types? 
     38 
     39Will there be a declarative syntax at some level below HLLs for creating classes/types? 
     40 
     41Will PMCs and Objects be merged? 
     42 
     43Will Strings and PMCs/Objects be merged? 
     44 
     45What requirements will Lorito impose on the memory layout of objects? 
     46 
     47Will objects have a static vtable in addition to method dispatch? 
     48 
     49How should method dispatch work? 
     50 
     51Should method dispatch be tied to classes, to objects, to some vtable/prototype object associated with each object? 
     52 
     53Should method dispatch use strings or [http://en.wikipedia.org/wiki/Symbol_(Lisp) symbols]?