ANN: Tao Scripting Language 0.8.5 beta released!

Discussion in 'Python' started by Limin Fu, Jan 27, 2005.

  1. Limin Fu

    Limin Fu Guest

    Dear all,

    I am glad to announce in this mailing list that the lastest version
    of a new scripting language has come out.

    Welcome to try it out.

    Comments are welcome.

    Suggestions are appreciated.

    =======================
    Here are some details:
    =======================

    Design Goals:
    1. Simple and efficient.
    2. Integrate nice features of other languages whenever possible.

    Implementation language: C++ with STL.

    Designer: Fu Limin
    Email: fu [dot] limin [dot] tao [at] gmail.com

    Key features have been supported:

    1. Dynamic-typing variables, supporting complex data structures
    such as array/list, hash/dictionary and matrix etc.

    2. Object-oriented programming ( multi-inheritance not supported
    yet ).

    3. Basic string regular expression matching.

    4. Automatic garbage collection capable of collecting cyclically
    referenced objects.

    5. Numeric data types: complex number and matrix, and their basic
    operations.

    6. Convenient namespacing and dynamic creation of subroutines and
    classes.

    7. Dynamic loading of C/C++ modules ( not complete, but enough for
    playing with it ^_^ ).

    8. An embedded tiny XML parser.

    ToBeDone:
    More string operations, multi-inheritance of classes, improvements
    on C/C++ module loading, more on regular expression matching and
    possible optimizations etc.

    Documentation:

    http://taoscript.sourceforge.net/brief_tao.php

    Sample scripts:

    http://taoscript.sourceforge.net/sample.php

    Download:
    http://taoscript.sourceforge.net/downloads.php

    Best regards,

    Limin

    --
    Homepage for Tao Language:
    http://taoscript.sourceforge.net

    Tao Language project at sourceforge.net:
    http://sourceforge.net/projects/taoscript
     
    Limin Fu, Jan 27, 2005
    #1
    1. Advertising

  2. Limin Fu

    Limin Fu Guest

    Re: Tao Scripting Language 0.8.5 beta released!

    Dear Claudio,

    Thank you for your kind testing, suggestions and encourages.
    I'm glad that you like it.

    For that problem in the Lexer, it can be corrected without increasing
    the size. I will do it soon.

    Best regards,

    Limin


    On Thu, 27 Jan 2005 15:32:13 -0000, Claudio Grondi
    <> wrote:
    > Dear Limin,
    >
    > Tao Script with its 300 KByte of code is so small,
    > that one just must love it forgiving all its baby
    > troubles.
    >
    > After changes (see below) to the code in taoModule.cpp
    > necessary because my compiler claimed repeated definition
    > of 'ref' e.g. in the section:
    > if(TaoReference *ref2a=inNameSpace->findDataShared(name) ){
    > myData[name]=ref2a;
    > outNameSpace->nsData[name]=ref2a;
    > }else{
    > TaoShareRefer*ref2b=new TaoShareRefer();
    > myData[name]=ref2b;
    > outNameSpace->nsDataShared[name]=ref2b;
    > outNameSpace->nsData[name]=ref2b;
    > }
    > I was able to compile the code with
    > Microsoft Visual C++ .NET 2003 on W2K
    > (create an empty .NET project, add all source
    > code files, compile and be happy :)
    >
    > Trying the examples provided on the
    > homesite of Tao Script which run ok as they
    > are, I found, that print("### \n") failes due to
    > the way the Lexer works beeing not able to
    > proper handle string literals.
    > One just can't probably use any of "#'" "//" "/*"
    > in strings because the lexer strips the
    > comments before it analyses the source
    > to handle content of the string literals.
    >
    > Hope this comment helps you to continue
    > the well done work on it.
    > I had fun with it because of its size, so
    > from my point of view please try to
    > keep the project as small as possible, so
    > that it remains easy to check out the entire
    > code.
    > Maybe it is even a good idea to keep
    > the problem with the strings as a "feature"
    > in order to keep the Lexer as simple as
    > possible?
    >
    > Best regards
    >
    > Claudio
    >
    > "Limin Fu" <> schrieb im Newsbeitrag
    > news:...
    > > Dear all,
    > >
    > > I am glad to announce in this mailing list that the lastest version
    > > of a new scripting language has come out.
    > >
    > > Welcome to try it out.
    > >
    > > Comments are welcome.
    > >
    > > Suggestions are appreciated.
    > >
    > > =======================
    > > Here are some details:
    > > =======================
    > >
    > > Design Goals:
    > > 1. Simple and efficient.
    > > 2. Integrate nice features of other languages whenever possible.
    > >
    > > Implementation language: C++ with STL.
    > >
    > > Designer: Fu Limin
    > > Email: fu [dot] limin [dot] tao [at] gmail.com
    > >
    > > Key features have been supported:
    > >
    > > 1. Dynamic-typing variables, supporting complex data structures
    > > such as array/list, hash/dictionary and matrix etc.
    > >
    > > 2. Object-oriented programming ( multi-inheritance not supported
    > > yet ).
    > >
    > > 3. Basic string regular expression matching.
    > >
    > > 4. Automatic garbage collection capable of collecting cyclically
    > > referenced objects.
    > >
    > > 5. Numeric data types: complex number and matrix, and their basic
    > > operations.
    > >
    > > 6. Convenient namespacing and dynamic creation of subroutines and
    > > classes.
    > >
    > > 7. Dynamic loading of C/C++ modules ( not complete, but enough for
    > > playing with it ^_^ ).
    > >
    > > 8. An embedded tiny XML parser.
    > >
    > > ToBeDone:
    > > More string operations, multi-inheritance of classes, improvements
    > > on C/C++ module loading, more on regular expression matching and
    > > possible optimizations etc.
    > >
    > > Documentation:
    > >
    > > http://taoscript.sourceforge.net/brief_tao.php
    > >
    > > Sample scripts:
    > >
    > > http://taoscript.sourceforge.net/sample.php
    > >
    > > Download:
    > > http://taoscript.sourceforge.net/downloads.php
    > >
    > > Best regards,
    > >
    > > Limin
    > >
    > > --
    > > Homepage for Tao Language:
    > > http://taoscript.sourceforge.net
    > >
    > > Tao Language project at sourceforge.net:
    > > http://sourceforge.net/projects/taoscript

    >
    > --
    > http://mail.python.org/mailman/listinfo/python-list
    >



    --
    Homepage for Tao Language:
    http://taoscript.sourceforge.net

    Tao Language project at sourceforge.net:
    http://sourceforge.net/projects/taoscript
     
    Limin Fu, Jan 27, 2005
    #2
    1. Advertising

  3. Re: Tao Scripting Language 0.8.5 beta released!

    Dear Limin,

    Tao Script with its 300 KByte of code is so small,
    that one just must love it forgiving all its baby
    troubles.

    After changes (see below) to the code in taoModule.cpp
    necessary because my compiler claimed repeated definition
    of 'ref' e.g. in the section:
    if(TaoReference *ref2a=inNameSpace->findDataShared(name) ){
    myData[name]=ref2a;
    outNameSpace->nsData[name]=ref2a;
    }else{
    TaoShareRefer*ref2b=new TaoShareRefer();
    myData[name]=ref2b;
    outNameSpace->nsDataShared[name]=ref2b;
    outNameSpace->nsData[name]=ref2b;
    }
    I was able to compile the code with
    Microsoft Visual C++ .NET 2003 on W2K
    (create an empty .NET project, add all source
    code files, compile and be happy :)

    Trying the examples provided on the
    homesite of Tao Script which run ok as they
    are, I found, that print("### \n") failes due to
    the way the Lexer works beeing not able to
    proper handle string literals.
    One just can't probably use any of "#'" "//" "/*"
    in strings because the lexer strips the
    comments before it analyses the source
    to handle content of the string literals.

    Hope this comment helps you to continue
    the well done work on it.
    I had fun with it because of its size, so
    from my point of view please try to
    keep the project as small as possible, so
    that it remains easy to check out the entire
    code.
    Maybe it is even a good idea to keep
    the problem with the strings as a "feature"
    in order to keep the Lexer as simple as
    possible?

    Best regards

    Claudio

    "Limin Fu" <> schrieb im Newsbeitrag
    news:...
    > Dear all,
    >
    > I am glad to announce in this mailing list that the lastest version
    > of a new scripting language has come out.
    >
    > Welcome to try it out.
    >
    > Comments are welcome.
    >
    > Suggestions are appreciated.
    >
    > =======================
    > Here are some details:
    > =======================
    >
    > Design Goals:
    > 1. Simple and efficient.
    > 2. Integrate nice features of other languages whenever possible.
    >
    > Implementation language: C++ with STL.
    >
    > Designer: Fu Limin
    > Email: fu [dot] limin [dot] tao [at] gmail.com
    >
    > Key features have been supported:
    >
    > 1. Dynamic-typing variables, supporting complex data structures
    > such as array/list, hash/dictionary and matrix etc.
    >
    > 2. Object-oriented programming ( multi-inheritance not supported
    > yet ).
    >
    > 3. Basic string regular expression matching.
    >
    > 4. Automatic garbage collection capable of collecting cyclically
    > referenced objects.
    >
    > 5. Numeric data types: complex number and matrix, and their basic
    > operations.
    >
    > 6. Convenient namespacing and dynamic creation of subroutines and
    > classes.
    >
    > 7. Dynamic loading of C/C++ modules ( not complete, but enough for
    > playing with it ^_^ ).
    >
    > 8. An embedded tiny XML parser.
    >
    > ToBeDone:
    > More string operations, multi-inheritance of classes, improvements
    > on C/C++ module loading, more on regular expression matching and
    > possible optimizations etc.
    >
    > Documentation:
    >
    > http://taoscript.sourceforge.net/brief_tao.php
    >
    > Sample scripts:
    >
    > http://taoscript.sourceforge.net/sample.php
    >
    > Download:
    > http://taoscript.sourceforge.net/downloads.php
    >
    > Best regards,
    >
    > Limin
    >
    > --
    > Homepage for Tao Language:
    > http://taoscript.sourceforge.net
    >
    > Tao Language project at sourceforge.net:
    > http://sourceforge.net/projects/taoscript
     
    Claudio Grondi, Jan 27, 2005
    #3
  4. Limin Fu wrote:
    > Dear all,
    >
    > I am glad to announce in this mailing list that the lastest version
    > of a new scripting language has come out.


    Since you chose to announce it in this mailing list/newsgroup, may I
    suggest that a comparison with Python is in order?

    Since it is a new scripting language, I'm not suggesting a language war,
    but rather a simple statement of how Tao differs from Python, and what
    "itch" you were trying to scratch when you designed your new language.
    Basically, how does your design philosophy differ from that of Guido?
    Where did you go left when Python went right?

    (Congrats on beating the technical challenge of designing and
    implementing a programming language - now's your chance to sell us on
    it. :)
     
    Rocco Moretti, Jan 27, 2005
    #4
  5. Limin Fu

    Limin Fu Guest

    > Since you chose to announce it in this mailing list/newsgroup, may I
    > suggest that a comparison with Python is in order?
    >


    To make a reasonable comparison with Python, I need to spend more time
    to investigate into python, since so far I only know some basic things
    in Python :). But I can ensure that Tao is very different from
    Python, and it will be more different in the future.

    > Since it is a new scripting language, I'm not suggesting a language war,
    > but rather a simple statement of how Tao differs from Python, and what
    > "itch" you were trying to scratch when you designed your new language.


    Well, I started to design this language, because I work on
    bioinformatics and I hardly found any language that really satisfied
    me. I found that, a language with simple syntax, convenient text
    processing functionality, powerful numeric computation capability, and
    simple C/C++ interfaces would be very useful in this field.

    Perl is got out immediately due to its complicated syntax and many
    possible traps(though there are still many people using it in this
    field, I think it is due to historical reasons). Though Python is
    great in many aspects, its syntax is also something I don't really
    like, and I think its interface to C/C++ is not simple enough. R
    language is not well designed according to me, though it's more
    popularly used in bioinformatic than Python. So I decided to design a
    new language. Though that goal is not reached yet, it is not
    unreachable either.

    > Basically, how does your design philosophy differ from that of Guido?


    I think I agree much of the design philosophy of Guido. But it is just
    a kind of guide line, it doesn't imply anything about the structure of
    the language and the interpreter. So the same philosophy can come out
    completely different language.

    > Where did you go left when Python went right?


    I will only point out a few such places.

    1. Tao use uniform parenthesis symbol for both list/array and
    hash/dictionary, that is []. While in Python, [] is used for list, and
    {} is used for dictionary.

    2. In Tao, there is no "self" argument in class methods as in Python.
    And the class syntax of Tao is more similar to that of C++.

    3. Some Matlab features regarding numeric types, multi returned
    values in functions and multi assignment etc. are integrated into Tao.

    4. Tao provides a very convenient way of declaring array/list which,
    to the best of my knowledge, is not presented in any other language.
    That is,
    a=[10][5] : value/arith/function;
    which will create a 10x5 array with elements resulted from evaluation
    of the right side of ":".

    Best regards,

    Limin

    --
    Homepage for Tao Language:
    http://taoscript.sourceforge.net

    Tao Language project at sourceforge.net:
    http://sourceforge.net/projects/taoscript
     
    Limin Fu, Jan 27, 2005
    #5
  6. Limin Fu

    PA Guest

    PA, Jan 27, 2005
    #6
  7. Limin Fu

    Limin Fu Guest

    I only looked at languages which are more often used in
    bioinformatics, at that time I didn't heard about Lua. I knew it about
    2 or 3 months after I began to implement Tao. For Io, this is my first
    time to hear about it :)

    Cheers,

    Limin


    On Thu, 27 Jan 2005 23:02:45 +0100, PA <> wrote:
    >
    > On Jan 27, 2005, at 22:54, Limin Fu wrote:
    >
    > > I found that, a language with simple syntax, convenient text
    > > processing functionality, powerful numeric computation capability, and
    > > simple C/C++ interfaces would be very useful

    >
    > You bet.
    >
    > Have you looked at Lua?
    >
    > http://www.lua.org/about.html
    >
    > Or perhaps Io?
    >
    > http://www.iolanguage.com/About/
    >
    > Cheers
    >
    > --
    > PA, Onnay Equitursay
    > http://alt.textdrive.com/
    >
    > --
    > http://mail.python.org/mailman/listinfo/python-list
    >



    --
    Homepage for Tao Language:
    http://taoscript.sourceforge.net

    Tao Language project at sourceforge.net:
    http://sourceforge.net/projects/taoscript
     
    Limin Fu, Jan 27, 2005
    #7
  8. Limin Fu

    PA Guest

    On Jan 27, 2005, at 23:42, Limin Fu wrote:

    > at that time I didn't heard about Lua. I knew it about
    > 2 or 3 months after I began to implement Tao.


    So, compared to Lua for example, what does Tao brings to the table that
    you found worthwhile?

    Cheers

    --
    PA, Onnay Equitursay
    http://alt.textdrive.com/
     
    PA, Jan 27, 2005
    #8
  9. Limin Fu

    Limin Fu Guest

    I should admit I only read a little bit very simple introductions of
    Lua, so I can't answer you question exactly now. Maybe you can found
    the answer by yourself by spending some minutes to read the brief
    documentation of Tao.

    Depending how much time I have, probably I will make a comparison
    between Tao and other languages, and make it available in the website
    of Tao. But it will not be soon.

    Cheers


    On Thu, 27 Jan 2005 23:47:27 +0100, PA <> wrote:
    >
    > On Jan 27, 2005, at 23:42, Limin Fu wrote:
    >
    > > at that time I didn't heard about Lua. I knew it about
    > > 2 or 3 months after I began to implement Tao.

    >
    > So, compared to Lua for example, what does Tao brings to the table that
    > you found worthwhile?
    >
    > Cheers
    >
    > --
    > PA, Onnay Equitursay
    > http://alt.textdrive.com/
    >
    > --
    > http://mail.python.org/mailman/listinfo/python-list
    >



    --
    Homepage for Tao Language:
    http://taoscript.sourceforge.net

    Tao Language project at sourceforge.net:
    http://sourceforge.net/projects/taoscript
     
    Limin Fu, Jan 28, 2005
    #9
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Limin Fu
    Replies:
    0
    Views:
    306
    Limin Fu
    Apr 25, 2005
  2. Fu Limin
    Replies:
    27
    Views:
    217
    Fu Limin
    May 1, 2005
  3. Fu Limin
    Replies:
    7
    Views:
    93
    Peter Hickman
    Apr 28, 2005
  4. Fu Limin
    Replies:
    0
    Views:
    84
    Fu Limin
    Apr 27, 2005
  5. Fu Limin
    Replies:
    1
    Views:
    90
    A. Sinan Unur
    Apr 27, 2005
Loading...

Share This Page