List:Summer of Code« Previous MessageNext Message »
From:KishoreKumar Bairi Date:March 18 2008 9:54am
Subject:Adding Lua support to the mysql command-line client
View as plain text  
Hi..

I am happy that this year also mysql is participating in SOC.
I am interested in mysql development as part of SOC.
From the project Ideas page I found, *Adding Lua
<http://www.lua.org/>support to the
mysql command-line client *interesting.
I want to know more about this project.
and here is what I understood.
Please correct me If I am wrong and add if I'm missing something.


   - *Purpose of the project:*

This gives more flexibility to the user by providing him a feature to
execute a program(written by him in lua)
I feel this feature serves the same purpose as Shell Scripting in Unix or
m-file programs in matlab.
SQL file is also an executable script, but it is just a QUERY language and
its not like a full fledged programming lanugage
and so there comes the need for proper programming environment and this
project is going to provide it.
since we are adding support of a programming language. It enables user to
build applications using this programming language
and hence it leads to the personalization of mysql interface.


   - *Why only LUA*? :

LUA is proven to be fast,portable,small yet powerful and most importantly *
Embeddable*.
It is easy to extend Lua with libraries written in other languages.
It is also easy to extend programs written in other languages with Lua.


   - *How it works?*


   - user issues the command for lua script execution.
      - lua interpreter will be invoked.(which is *lua.c* file as
      mentioned in documentation of lua)
      - while executing the script it builds the mysql command.
      - and now we call the same functions of mysql library which are
      called when that built command was directly given on command line client.
      - So, ultimately here we are doing the same thing but prepending
      the process with an additional step.
      - (*This is just my understanding. **Please correct me if am
      wrong. **)*


   - *How this can be done?*


   - firstly I should add a feature to command line client to invoke
      interpreter when proper command for execution of lua script is given.
      - next step is regarding Lua library and interpretation. The
      library is available from Lua and Interpreter is also written by them
      - It depends on us if we are willing to use their Interpreter of
      write our own from scratch(I feel its useless to reinvent the wheel).
      - In the interpreter we have to add functionality to hand over
      the control to an intermediate(new) program(to be written).
      - this new program maps the  command command handed by
      interpreter to the mysql functionality which is supposed to be executed.
      - (*am I right?)*

*
*

   - *Qualifications:*


   - programming skills: c++,lua
      - Idea of compilers.(how they work?)
      - knowledge mysql command line client source.



   1. Am I right? If not please correct me. and guide me to know it
   better.
   2. Kindly give me some keywords or reference which would help me in
   knowing this better.

Thread
Adding Lua support to the mysql command-line clientKishoreKumar Bairi18 Mar
  • Re: Adding Lua support to the mysql command-line clientGiuseppe Maxia18 Mar
Re: Adding Lua support to the mysql command-line clientDobos D . Calin20 Mar
  • Re: Adding Lua support to the mysql command-line clientJim Winstead21 Mar