V ictor K ohn A dvanced C ommand L anguage |
on your site
|
|
Hello! As it follows from the title, my name is Victor Kohn and this my site is devoted to the programming language ACL. In addition here I collect links on the program catalogues and programmer's sites, publish interesting articles (sorry, only in russian), both my and other, on various topics, and also present my photos from various trips. So if you are not a programmer - it does not matter - you can look at my photos. But if you are a programmer, I presents my own programming language ACL. For professionals it may be interested as idea, for others - as a tool to obtain many results with minimum efforts. The language ACL can be used in a complex with other programming languages. Really, all know that programming a graphical user interface by languages of low level is rather cumbersome. Very many things must be matched and accounted for. Of course, there are visual tools but this is not a programming, it is more similar to a use of ready programs. As for me, I am old man and I began to program this GUI in the old times of DOS when each man needs to make all from zero level. Naturally, it was desirable to choose a small pool from the ocean of possibilities, to make it comfortable and to live without problems. And certainly without compilers. To write a text, to click a button and to obtain result directly. The ACL is just a such programming language. It is a middle point between zero level programming and using a ready program where the main problem is to find that cherished button which must be clicked to obtain a desirable result. So, ACL is a relatively advanced set of commands added by parameters and arguments. Each command makes a definite work similarly to subroutines, macroses, procedures and other names. A combination of commands is a program. The number of commands is not large, but each of them fulfills it's own part of work and can make many various operations. I created the commands taking in mind my own practice, i.e. programming scientific tasks (I am physicist-theorist). However, the language is open for new commands if it is interested for anyone. Specific realization of ACL as a set of commands demands elaborating the program interpreter. This may be done with any languages and in any platforms. It was just so. But today I use Java as a programming language, and therefore I made and present the interpreter as a Java program. One can debate whether Java is a good language or not. But remember a law of conservation of all. A happiness for one is an unhappiness for other. For all merits we must pay by demerits. It is a law of life. Java has disadvantages, certainly. But it is a payment for the advantages which are more desirable for me. So I made three different interpreters of ACL on three different modifications of Java. First one is a program vkACL.jar for a desktop (I will call it PC). It is made with Java 1.4.2, shortly with Java4. You need to install on a computer Java interpreter named JavaRE-1.4.2. It is free, and a distributive of JRE can be obtained from this site. Second one is an applet vkACLapp.zip. I tried to write it with Java classes for version earlier 1.2, shortly with Java1. Although it is not so powerful and beautiful as first one, but it must work as a web-site with JRE inserted in browsers. Unfortunately there are many browsers and they work differently. But in any case all browsers work well with Java plug-in. This program can work directly in internet. So you can use it for creating your own applets even if you don't know Java language and have no Java compiler. Third one is a program vkACL.ewe, written with a modification of Java named by Ewe. This interpreter can work on PC as well as on PPC (pocket personal computer or PDA). But only after installing virtual machine Ewe. It is also free program which is elaborating by Michael Brereton and it can be obtained on his site. Consider the first interpreter. The program vkACL.jar is really a tool of elaborating ACL programs. It has an editor for writing the text of program, inserted description of language, and a set of pointer on errors during executing the programs. It is convenient for creating the programs. Besides, there is a special program which works as a pure interpreter without it's own face. The ACL program can tune the interpreter on any face and can look as a usual Java program where an existence of ACL processor is invisible. I call this program ACLpro.jar as a player. A ready applied programs can be prepared as rather different and independent Java applications with a usage of the same player. I note that vkACL-applet is the player as well and with restricted possibilities because applets cannot work with the files on the client computer. What programs can be made with ACL. With the first interpreter one can make many. Any work with files, including zip, any graphics, including set of scientific figures, operations with images in formats JPG and PNG, mathematics, one can make calculations and operations with matrices, Fast Fourier Transformation and many others. In addition one can create PS (postscript) and PDF documents from zero or using the origins. One can make animation as a cinema, i.e. change of pictures with background music and sound comments. A speed of picture changing depends on computer and picture size. However a slide show runs normally. What cannot be made with ACL. May be super fast animation and games. More right to say that I did not try to make this. Really, ACL is not an object language, more correctly it is object static one. So dynamical things are impossible. For this one must use Java directly. Really there are ready programs for creating such things. It is another world. However, a beautiful presentation, archives and base of various documents, photos can be made effectively. I myself use ACL each day in my scientific work for organizing input data and analyzing the results of calculation. The calculation itself can be done separately. As for me, it is easy to add new class to interpreter. But other users cannot make this and it is not necessary. ACL can run any external programs created by user. The important advantage of ACL is that the answer on many simple questions can be obtained very quickly. It is sufficient to write one or two lines of text and execute them. Namely, as in an advanced calculator. Well, I began to make applications with ACL. The first program of common use is Mendeleev Table. It uses a possibility of ACL to make picture as a menu and a possibility of text editor to show web-pages and images. Namely, for any chemical element it shows text in editor which can be added or improved, and shows interesting article about the element from the book Popular library of chemical elements, formatted as web-page (sorry, only in russian). And a last matter. If you read up to the end and will look other materials of this site, don't forget to make your comments in the Guest book. I like to know your opinion. |
created: May, 2006 modified: November, 2007 |
Statistics: visits since May 2006 |