mistofeles

New Member
Joined
Feb 12, 2009
Messages
58
MS SmallBasic might be great, if they only add some more commands to it. Now it is just misses some of the most important tools for for example string handling.

Basic is great language, when you want to make something simple fast.
I have allways wondered, why MS didn't make Basic the command language of MSDOS. Instead they decided to have separated Command.com and Basica. It might have been fine to write *.bas instead of *.bat. The tools in command.com for *.bat programming were just not adequate.

From those days until now I havewritten thousands of small progrrams. most of them one-shot. Change some characters in some files, make some counting, device driveers, data collection etc... Time to time I have found that basic is the fastest language to write. Time spent to time of run is like 100000:1. The speed of the binary doesn't matter in these cases.

Java, C, C++, C#, VB and .net are too large systems to be used in everyday programming.

I tested MS Smallbasic thoroughly - and moved to Freebasic.
 


Solution
Have a look again at REXX -- you can distribute OO rexx programs without the source
As it's interpreted its far far easier to develop apps quickly -- there's loads of sample programs in this link

Once you've got an app working quickly it can be converted to C++ or whatever but for essentially "single user" apps why bother.

I still use the REXX interface to access MySQL databases (via OBDC) -- still works a treat. Code is much the same whether on an old mainframe or on Windows 7.

OOREXX is public domain freeware from IBM -- supports OO programming as well.


Link Removed

Cheers
jim
Actually for small scripting why not use PERL (it's available for Windows as well and it's really easy). Python is another good one.

Don't forget the Windows Native scripting language of javascript itself.

I think there's nothing wrong with the Visual Studio Express (2008) editions of Visual Basic, C# and C++ -- all free plus a free express edition of sqlserver all from Microsoft site. There's also a free web developer edition.

If you are actually developing stuff for windows you will need GUI functions in any case. Dos type "Masic" is only any good for running batch commands now -- and there are much better ways to do that in any case.

The Dinosaur strikes back : ------

As an old "Mainframer" if I want something really fast and quick I'll use REXX -- brilliant language which can actually do anything quickly and easily without all the illegibility and complicattions of C++.

For those who've never heard of REXX have a look at this site.

Link Removed

Cheers
jimbo
 


Last edited:
Actually for small scripting why not use PERL (it's available for Windows as well and it's really easy). Python is another good one.

If you are actually developing stuff for windows you will need GUI functions in any case. Dos type "Masic" is only any good for running batch commands now -- and there are much better ways to do that in any case.
Cheers
jimbo

Java, Perl and Python do not produce executables. Sometimes I write programs for my customers and they got to be in binary format, because people don't want to install any libraries or runtime environments. another thing is that they can not change anything in a binary by mistake.

No, I'm not developing anything for Windows. I'm building programs to be used in windows. Most of people forget, that there is a lot of users, who write small tools for themselves. Programs for mathematics, simple graphigs, filehandling, simple device management, data collection. These programs are not to be sold. The least important thing in them is the visual appearance. They just run and ask the parameters as they have done for decades: "Give A:".

In most OSses it is nearly impossible to handle external devices. For example reading data from a dual Xtal roentgen absorbtion meter or commanding it to move the goniometer 5 degrees.
You can do it in windows, but mostly we do it using MSDOS or buildin our own computers from components.
 


Have a look again at REXX -- you can distribute OO rexx programs without the source
As it's interpreted its far far easier to develop apps quickly -- there's loads of sample programs in this link

Once you've got an app working quickly it can be converted to C++ or whatever but for essentially "single user" apps why bother.

I still use the REXX interface to access MySQL databases (via OBDC) -- still works a treat. Code is much the same whether on an old mainframe or on Windows 7.

OOREXX is public domain freeware from IBM -- supports OO programming as well.


Link Removed

Cheers
jim
 


Solution
Have a look again at REXX -- Cheers
jim

Another Dinosaurus comment:
I will have a look to REXX.

Still I'll be using Basic for two good reasons:
- Basic is very universal. There is versions for almost anu OS and uP from one chip computers like PIC 16F84 up to mainframes. From historic WANG to Linux.
- Basic is very portable. I have ported the same code from WANG to VIC-20 to APPLE II to DEC-10 to MSDOS to QuickBasic to Linux. One branch of this program was ported to Fortran with very minor changes which were made by script -written in Basic of course.

MS SmallBasic has many differences to old language versions being more an OOP in itself, and misses vey many important commands, but it is a nice try and might be a model to something new.
 


Hi there
Whilst REXX definitely might be "OLD" it's really easy and as you said you really want to run a string of commands with a user prompt.

I haven't done any serious programming for AGES now (apart from have a quick look at some of the absolutely JUNK AV protection software which could be reasonably hacked in about 30 mins-- amazing how people trust that junk implicitly)
but what I like about rexx it's all English like syntax and doesn't need complex statements like "C".

For example it's easy as you don't need any variable type casting

A = 'The Big dog";
B = substring(A,1,3);

so B is simply "The". No declarations etc needed.

There's functions like C2X convert to hex
X2C convert to char

you use these simply like A = C2X(variable char string)

etc etc.

arrays are simply A.1 (or A.n where n can be a simple or complex expression) or A.1.1 etc. As many dimensions as you like subject to the memory in the machine.

functions for reading (and storing) directories and files and even more useful - return a filelist of all the files in a directory (and its sub-directories) -- a useful one that I use that quite a lot in batch commands. Also return a list of all directories on a volume etc etc.

This can be quite useful as well for feeding a list of files into say an MySQL data base to return a list of say your Photos for other processing.
etc.

I've used it for such things as for building a C++ "Disassembler" , and also used it for "Disassembling" some .EXE and .DLL files into Intel CPU instructions .
(For "Reverse Engineering stuff a "Dis-assembler" is a must have tool).

The OO version also has GUI functions but there is a "System Call" function so you can also use Windows standard API funcs if you want to build a GUI.

Runs fine on Linux as well and is so easy that once you've learned it you just won't forget it. -- All variables are treated as char strings - so it should run even better on todays 64 Bit machines than years ago.

Really simple -- I suppose it was too simple for "programmers" but a lot of Internal IBM stuff was originally developed in a combination of REXX and PL/C (Not PL/1 BTW) and the origins of the IBM Mainframe MVS operating systems were developed using REXX so it's capable of very complex tasks.

Incidentally a few years ago (More years than I can actualy remember) I built a Fortran Compiler using REXX.
It was Very Crude effort for the old IBM PC (80386 based just about Windows 3.1 release).

I read the Fortran statements in via the REXX interpreter, converted these essentially to Intel 30386 Assembler language source code (remembering Loops, memory allocation etc etc) and then "cheated" by calling the supplied Intel 30386 Assembler. This would then read the generated Assembler source code produce the necessary .EXE file that could then be loaded and executed by the machine.

Crude but it worked and at that time I had a lot of fun doing it.

The same REXX code will run on almost any platform you care to throw at it - from Mainframes to tablet PC's.

Cheers (from the Dinosaur)

Jimbo
 


Last edited:
Back
Top