Next BIG improvement - Need Input before I Jump (New Features)

by Jim ⌂ @, Russell, KY, Monday, October 26, 2015, 23:46 (552 days ago)

Hello everybody,

I know that the forum is not very widely used but before I make a big change to BASIC256 I wanted some input and reasons to or not to.

I have noticed in my Introductory Programming class that the old BASIC string variable vs. numeric variable (a$ vs a) is causing students some grief. I have two possible solutions:

1) Change all variables (with or without $) into simple variants (they can store strings, integers, decimals, and booleans) without any fancy code. Just assign it a value and it becomes that type of variable. This would allow for the automatic conversion of one type to another with the automatic casting that is already happening. This would make BASIC256 act a bit more like scripting languages (like javaScript).

or

2) Require ALL Variables to be DIMed BEFORE USE with a type associated. Statements like "DIM a AS string" would be required for variables. This brings BASIC256 closer to VB.NET but adds quite a lot of complexity for the new programmer. Also this change would require rewriting ALL sample programs, documentation, and everything.

Currently I like option #1 the best. It simplifies much of the BASIC256 code and should allow for existing programs to continue to "mostly" run. It would require a significant update to the book but should make it easier also.

What do you all think?

Jim

Next BIG improvement - Need Input before I Jump

by UglyMike ⌂ @, Brussels, Friday, November 06, 2015, 12:22 (541 days ago) @ Jim

OMG! Jim, you're still around!

Well, as long as there is no (major) impact on speed or memory usage, I'm all for making it simpler. It's not like modern computers are memory constrained...

Next BIG improvement - Need Input before I Jump

by igendel ⌂ @, Thursday, November 26, 2015, 01:20 (522 days ago) @ Jim

Hello Jim,

I came here initially to say a big thank you for this wonderful IDE. I moved to other languages myself a long time ago, but I'm using Basic256 to try and teach some programming basics to my children. Also, since I'm involved with the Maker crowd, I see Basic256 as a great way for beginners to build some PC-side applications, e.g. for Arduino projects; this is something I'm going to pursue soon, after I explore the OpenSerial command a little further.

As a side note, an updated Linux version that works on Raspberry Pi would be absolutely cool. Maybe I did something wrong, but last time I tried, the IDE crashed whenever the code attempted to handle a decimal-point value... (the latest Raspbian, installation using apt-get install basic256, Pi model B [not 2])

Since I'm already here, I'll join UglyMike in supporting the Variant way. As much as I like strong-typed languages, DIM will be a step too far backwards in this day and age.

All the best,

Avatar

Next BIG improvement - Need Input before I Jump

by DickStomp2 @, NL- SASSENHEIM, Tuesday, December 29, 2015, 12:29 (488 days ago) @ Jim

Dear Jim,

Keep it simple!
a is numeric and a$ is a string. Using implies declared.

All that DIMming: a lot of work and a source of mistakes...

Regards,
Dick

--
Linux Ubuntu 14; MicroSof free... since 2006!

Next BIG improvement - Need Input before I Jump

by Jim ⌂ @, Russell, KY, Saturday, January 02, 2016, 03:17 (485 days ago) @ Jim

Well, I am posting 1.99.99.8 to Sourceforge. It makes all variables variants that can contain any data type. It greatly simplified much of the code. In the process the internal INTEGER type has been added back and integer operations should be faster and more accurate.

Download and let me know. Once I get the book revision done and get the online docs updated then we will renumber to 2.0.0

Jim

RSS Feed of thread
powered by my little forum