Ďî-đóńńęč
Art.Lebedev Studio presents…
parser


Recent news articlesBirdSome articles from FAQ
[April 10, 2008]  Version 3.2.3 released.

Bugs which were introduced in version 3.2.2 were fixed.

Latest vesrions of xml/xslt libraries included.

Few new methods added: ^hash.contains[], ^date:last-day(year;month), ^date.last-day[], ^date.gmt-string[].



[December 27, 2007]  Version 3.2.2 released.

Lots of bugfixes and new features: check out documentation, look for [3.2.2] version-marks.

In short:

Driver for SQLite was released (thanks to Niko and Creator).

Locks on unix were fixed.

Latest vesrions of xml/xslt libraries included.

Many new file methods added like: copy, md5, base64, crc32.

And many others improvements and bugfixes.



[March 17, 2006]  Versions 3.1.6sp2 and 3.2.1sp2 released

Error with $.encloser[] in table.save was fixed;

Security issue in mail:send was fixed;

^string:base64[encoded] didn't work in version 3.2.1.



[December 29, 2005]  Version 3.2.1 released:

Completely rewritten DOM inteface with XML, now Parser does that without gdome library (and glib too);

Compiling Parser (with XML!) from source code on Unix became trivial. Now one can download/unpack Parser source code and run one shell script. See INSTALL for details.

Some compiler error messages (in hard cases) made clearer.



[December 29, 2005]  Version 3.1.6 released:

Fixed long-hiding error which occured when working with XML via DOM properties/methods.



[December 08, 2005]  Version 3.2.0 released.

Introducing properties.

This version is compiled with latest XML and memory management libraries.



[December 08, 2005]  Version 3.1.5 released.

Lots of bugfixes and new features: check out documentation, look for [3.1.5] version-marks.



[December 24, 2004]  Version 3.1.4 released.

Several bugfixes.

ODBC: changed recommended connection strings. DSN is inconvinient and not required actually–there is simple way to connect without one.

Hashfile: increased limit of size of data that can be stored there: now key+value can be up to 8000 bytes.

Win32, IIS: added support to help using "Page not find" error to organize virtual adresses (an analogue to Apache/mod_rewrite).



[May 28, 2004]  Version 3.1.3 released.
Bugfix release, minor changes.

[March 26, 2004]  Version 3.1.2 released.
Added new hashfile class.

What is Parser?
Parser is a simple and convenient object-oriented language, which allows creating good sites in short time. It is a little more complicated than HTML, but requires no special programming skills. Parser was started in Art. Lebedev studio in 1997. Nowadays, most of sites created by Art. Lebedev studio are made with Parser.

What is it for, anyway?
Language is designed and optimized in such a way that it would be more convenient to create good sites. Language supports working with forms, cookies, table files, databases, and XML. Support for user operators and classes allows to extend its functionality.

There is PHP, what Parser is for?
PHP is a programming language requiring appropriate training. Parser can be successfully used by non-professional programmers. Parser is especially good in that it allows mere mortals to create and maintain complex dynamic sites without spending too much time.

I programmed in other languages, in short, what is so convenient in Parser?
Parser is, among other things, a macro-language. It has no print operator; all the code in source file is, in fact, a big print operator. Parser syntax is immersed into text. That is, you do not write program that outputs text. On the contrary, you add logic to already existing text, ^if(condition){action}, and organize it by splitting HTML-code into blocks like:

@header[]

...
@footer[]
...
@navigation[]
...
@body[]
...

My browser displays Parser code, not its result. What's wrong (I am using Apache web-server)?
Parser is not assigned as a handler of your documents after all.
To test whether Parser itself works, type this in your browser's address line:
http://your_site/cgi-bin/parser3.cgi (or .exe, for Win32 version) You should see something like this:

Parser/3.x.x
If you can see it, that means Parser is uploaded where it should have been, and its rights are set correctly.

If you have uploaded parser correctly, and you have not forgotten to put directives specified in documentation to .htaccess, you may have forgotten to allow Apache to process .htaccess in httpd.conf file by directive AllowOverride (see Apache documentation). To check whether .htaccess is processed, put there some arbitrary wrong instruction, say «mytest», to the very beginning of it. If, after page reload you do NOT see 500 error (which must appear if you configured everything right), that means you have .htaccess file ignored. Change AllowOverride directive or turn to your administrator.



Parser 3—simple and convenient object-oriented language which allows creating good sites in short time.

  • XML, XSL, XPath and DOM support
  • Available in documented source code
  • Uniformed database support
  • Support of object-oriented programmers
  • Detailed language documentation (160 pages!)
  • UTF-8 support