PDA

View Full Version : A strange way to classify Basic programming languages



ErosOlmi
13-08-2008, 12:09
http://www.garybeene.com/misc/dialects.htm

What is strange is the "kids" area. I didn't expect Euphoria there.

Petr Schreiber
13-08-2008, 15:48
Hi Eros,

interesting web, but the methodic is odd. I am happy to see both PowerBASIC and ThinBASIC have so many google hits ... but ... what does it mean in the end, hard to say.

Euphoria and kids ... that is odd. Maybe author of the comparsion was confused by the colorful rainbow on Euphoria website?


Petr

ErosOlmi
13-08-2008, 16:06
Yes, it is a nonsense because if you search Google for thinBasic you will find that 90% are fake websites (unfortunately).

kryton9
13-08-2008, 21:34
That is strange how Euphoria is even on the list and where it is at, but still fun to look at such lists.

marcuslee
10-09-2008, 00:01
Yes, hits is a nonsense because if you search Google for thinBasic you will find that 90% are fake websites (unfortunately).


I don't get that impression. If you search "thinbasic" on Google, every entry on the first page is relevant to thinBasic. Unless you are refering to something else.

I don't know anything about Euphoria, but I am guessing it is beyond the ability of a kid to use.

What would you (anyone may answer) suggest for a starter language for a young child, perhaps age 8 - 12?

Personally, Liberty Basic was pretty easy to use, so their free version Just Basic might be a nice choice. The original Basic and other older Basics such as QBasic are still out there. In fact, there is a site that has an extensive QBasic tutorial geared toward kids: http://www.tedfelix.com/qbasic/

Perhaps there is a QBasic clone of today that works with Windows. And, when I say clone, I mean a QBasic program from yesteryear could run without errors and without changing one thing. I don't know of one like that, but I don't know much about all the various types of Basics out there.

Now, don't take this the wrong way, but I don't think I would start a 10-year-old on thinBasic as his first language. If I did, I would have a structured tutorial program, which doesn't exist at the moment. That's what's nice about the QBasic tutorial I just mentioned. If that was translated into thinBasic syntax, I think thinBasic would be a fine choice for a first language. But, as it stands, thinBasic is great language for someone who already knows how to program.

Who knows? Maybe I'll write that tutorial for thinBasic. No promises! :P

Mark ;)

ErosOlmi
10-09-2008, 06:43
I don't get that impression. If you search "thinbasic" on Google, every entry on the first page is relevant to thinBasic. Unless you are refering to something else.


I'm referring to the fact that after some pages, all Google reference are referring to pages not talking about thinBasic but just there because thinBasic is listed with other languages due to GeShi syntax highlighter module. GeShi is widely used but wiki web sites and blogger software. So everywhere it is listed, thinBasic is listed because thinBasic is one of the suported language for syntax highlight.

Charles Pegge
10-09-2008, 12:13
What would you (anyone may answer) suggest for a starter language for a young child, perhaps age 8 - 12?



This is a very interesting question. We could really devote an entire board to it, but from what I have seen with my friends' children and their school mates, they handle complexity remarkably well and are, I am convinced, quite capable of learning any skill, providing it attracts their interest, which in the case of the young ones is anything that delivers an immediate visual result - and an element of scoring. The sheer variety of programming scripts and languages is likely to continue expanding. Tomorrows progammers will have to be adept at negotiating their way through this complex environment.

ErosOlmi
10-09-2008, 12:17
I'm with you in your consideration especially:



... delivers an immediate visual result ...


In future I want to work a lot more on this direction. I think it is one of the key point for a programming language in order to be used.

Thanks
Eros

Charles Pegge
10-09-2008, 16:19
Something to dream about:

Being able to alter a program, while it is running.:)

I understand Erlang can do this to some degree - but with an interpreter you have greater flexibility. - altering constants, inserting functions - rolling back when there is an error.

ErosOlmi
10-09-2008, 16:33
Maybe, maybe.

All those requests are already in my ToDo list since some time.

Changing thinBasic scripts on the fly during runtime is something we can think about.
Inserting a function on the fly is quite easy to be implement.
Changing a constant also very easy (I have to uncomment just 2 lines of code). thinBasic constants and variables are just the same inside thinBasic engine. Constants have just one flag on
I also wanted to change #INCLUDE statement from PreParsing stage to runtime stage. In this way files can be included at runtime when needed allowing dynamic scripts. More or less like PHP does.
Having a roll back point is something more complex but I have some ideas on how to do it. Since the beginning I developed thinBasic with NO GOTO in mind so te idea to jump to a label is not something present in thinBasic.


The main reasons why those things are not yet implemented are

I want thinBasic a little bit more stable in some areas like debugging, external declared function (DLLs), ...
I want to first end compatibility with Win9x systems and move on
add native COM support to thinBasic Core engine
multithreading (currently thinBasic can execute only one script for each thinBasic process)
use thinCore.dll as stand alone engine to be embedded in 3rd party applications as script engine (like VBA for Office applications)


Eros

Jophur
10-09-2008, 16:52
Something to dream about:

Being able to alter a program, while it is running.:)


Well it is nice, and also normal for me when I work.

I work with industrial systems and most DCS/PLC's (ABB, Siemens, Emersson etc) has this function and will do a partial download between two cycles. Having a major download and changes in the libraries and-/or objects internal structures is harder and normally will require a full download and the need of a re-initiation of all the programs.

For thinBasic I guess that a similar thing are possible in the future; Possible to do a small change in a subroutine, add/remove some code while still executing, but a lot harder to change part of an data structure without messing up the execution and memory.

ErosOlmi
10-09-2008, 17:10
Now you know why I renew thinBasic.com domain for 5 years in a block: there is so much to do and have fun! ;D

Charles Pegge
10-09-2008, 19:19
Altering programs while they are running:

One possible solution is to go recursive and call thinBasic from thinBasic.:) The first thinBasic then takes on the role as programming host which control the scripts for a number of other thinBasics. We can already do this now with thinBasic being the host for Oxygen scripts ThinBasic has full control over the source script strings, their assembly and execution. A basic system can be built around an editing dialog and a DO LOOP.

Host and client scripts also need to share at least part of their variable space for communication - which thinBasic can do already for any of its modules.