lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


On Wed, Feb 20, 2002 at 08:33:53PM -0500, Peter Shook wrote:
> So how was the workshop?  Is there a summary of the outcomes?

Here is an incomplete list of topics that we discussed at the Lua
Library Workshop. Maybe the other attendees of the workshop can help to
complete it.

* I took a look at the IO libray of Lua 4.0 and proposed some changes. 
  http://www.eecs.harvard.edu/~lindig/papers/lua-iolib/
  http://www.eecs.harvard.edu/~lindig/papers/lua-iolib/slides.pdf
  
  The essence of the proposal is to remove functions like writeto which
  handle files implicitly. The rational is that they are not general
  enough when you deal with multiple files. The discussion was mostly
  around less radical ways such that the casual user still can have
  default input and output channels.

* A big topic of discussion was name space management. A
  hierarchical name space like IO.open allows everybody to contribute
  libraries and simplifies the transition between libraries. For
  example, at this point is it not clear whether libraries should be
  written in an object-oriented style, or a procedural style. We could
  have both and pick as a standard what emerges later.
  
  Problems related to name spaces are: 
  
  - Writing module X.Y.Z, how do I refer to function X.Y.Z.f, without
    having to know that this is X.Y.Z?  A local module M does the trick.

  - How are modules mapped into the file system? The success of Python
    suggests to use directories hierarchies. Discussion was around how
    to load libraries and search paths. What can be written in Lua, what
    must go into the kernel?

  - Inside a module, is there a way to "open" other modules such that
    their members can be accessed without dot notation?  Seems to be
    difficult.
    
* Loading of object files at run-time. Consensus was, that this is not a
  technical problem, but a problem of policy. Where to put the tiny
  target specific module that implements it? 

* A mechanism that forces variable declarations in large projects. A
  flexible technical solution emerged that I did not fully understand.
  Probably Roberto can explain it.   
    
* Christian Carrilo suggested some changes to the C API to support Lua
  threaded environments better. The details escaped me because I don't
  write threaded programs.

-- Christian

-- 
Christian Lindig          Harvard University - DEAS
lindig@eecs.harvard.edu   33 Oxford St, MD 242, Cambridge MA 02138
phone: +1 (617) 496-7157  http://www.eecs.harvard.edu/~lindig/