How about a BASIC that uses Labels instead of line numbers, and actual names for variables - some of the statements are different, for example instead of ‘Input’ labelbasic uses ‘ask’ (Each statment begins with a unique letter)

git your own copy at : https://codeberg.org/WasPentalive/LabelBasic.git

    • waspentalive@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      5 days ago

      Maybe you don’t want it, that’s fine. I developed it for myself, but since I enjoy Free Open Source software, I am giving it away to anyone who would like to play with it.

      • CallMeAl (like Alan)@piefed.zip
        link
        fedilink
        English
        arrow-up
        1
        arrow-down
        1
        ·
        5 days ago

        As you are promoting it as something new I was hoping you would tell me about the unique aspects, advantages, or differences from existing options.

        • waspentalive@lemmy.worldOP
          link
          fedilink
          English
          arrow-up
          2
          ·
          5 days ago

          It is less structured than bwbasic can be - it still uses goto and call (gosub) and If statments that can only goto someplace (not structured If statements) No case / switch statement yet. It is not as complete in the function area as it could be. It is still a work in progress. - The most unique things are lines you goto/call can be labeled - variables can have long names not just A1 B C7 etc. index, done, the keyword LET is required (for parsing reasons)

    • _NetNomad@fedia.io
      link
      fedilink
      arrow-up
      1
      ·
      5 days ago

      yeah, that elevator pitch is BASIC as we’ve known it for 25 years. it has some other neat QOL features though like the C-style string printing

    • waspentalive@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      5 days ago

      It is not a “visual basic”, the code is less complicated, the interpreter is smaller and easier to change, and you get the source code (you do for Gambas too, but Gambas is way more complex)

  • Treczoks@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    6 days ago

    String arrays are a must, and you’ll have to be able to keep open several different files at once. How about DATA/READ/RESTORE statements?

    • waspentalive@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      4 days ago

      “Mat $strings(400)” gives you $strings(0) … $strings(399) just like C, You can do two dimensonal strig arrays also. Please look over the remaining unused letters and let me know how you would integrate DATA statement. Remember, I am keeping the first letter unique.

    • waspentalive@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      5 days ago

      I will consider those, thanks for the input. - I have constrained myself: Each statement starts with a unique letter, just to make parsing a tiny bit easier. Also so far I don’t have file input - only output to files - for printing on a printer or sending to gnuplot perhaps. That does not mean I can’t have an OPEN “filename”,r to replace stdin temporarily.

      • Treczoks@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        5 days ago

        Quick complete parsing of a fixed set of keywords can easily be done with a finite state automaton.

    • waspentalive@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      edit-2
      5 days ago

      for string arrays – MAT $BOX(3,5) == 15 CHARACTERS OR 15 STRINGS ? I think it does the latter already. Note, I am nearly 70 years old - I got “help” coding this. (oh noe here comes a storm)