Menu

X11-Basic versus DeRe-Basic (RFO)

Android
Anonymous
2017-05-22
2019-06-13
  • Anonymous

    Anonymous - 2017-05-22

    Greetings

    I am a new Android user who's trying to decide between X11 Basic and De Re Basic! for this platform. I have used basica on PC-jr, qbasic on DOS 5, yBasic on PalmOS, Visual Basic and VBA in Windoze, and various C/C++ platforms as well. It seems clear to me that X-11 Basic is more thorough and faster, but it lacks some of the high level features that make Basic! so attractive to me.

    Even writing my first program to scan the files in a directory and create a cfg script for RetroArch in Basic! gave me problems. Firstly, its relative paths made it difficult to scan the files on my memorycard. Then I discovered its lack of an instr function, so I had to workaround using word$, which might not work if the token lay at the end of the string. On the plus side, there is an app to easily compile native binaries from Basic! source. I remain unsure if I can do that with x11 basic. (FYI: I have no desktop or other device right now, and only limited internet access a couple times a week)

    Other features that Basic! has that interest me are Lists, Collections, Stacks, Encryption and access to both MySQL and zip files. I can work without the high level containers, but why? There must be ways to access MySQL and zip files in X-11, but they're not included and documented with the app. My limited access makes it is difficult for me to experiment with external libraries and documentation. Also, while I'm more familiar with the graphical get/put sprite method of x-11 basic than the various functions included with Basic!, Basic! provides built in collision detection and an easy method to scale graphics to a device's native resolution. I'll be developing games so this will come in handy (though I can surely design my own functions with time, I used to blit to the framebuffer on my VGA card in real mode DOS when I was a kid)

    It may sound like I'm advertising Basic! to your users but I do't mean to. I am drawn to it for the above reasons, but I recognize the huge advantage x-11 basic grants in terms of performance and crossplatform support. It offers a complete line of string, file, and math functions that Basic! lacks. In fact Basic! only offers one numerical data type, 32bit floats. I like to work with int and char once in a while (no matter how much memory and processor speed becomes available, efficiency remains hard coded in my brain)

    The GUI should also attract me to x-11 basic but it doesn't. While it does offer me with capabilities I could use, the attitude among GUI toolkit designers that your gui should look the same across platforms never made any since to me. No offense, but the GUI provided by X-11 Basic, which is dated and a bit ugly, is absolutely out of place on Android. I'll have to draw my own menuing system, an easy enough task considering that I'll only be developing personal tools and retro games for free distribution.

    If anyone can provide me with the info and files related to the following topics I would greatly appreciate it. Contact by email is preferred.

    Database access
    On device native compilation
    Graphical scaling
    SDL interface (for input/timing/ext)
    Linked list and stacks (hate to develop them myself. OSS is all about code reuse, right?)
    Zip and/or 7z access
    Encryption

    Michael C Palmer
    michaelcpalmer1980@gmail.com

     
  • Markus Hoffmann

    Markus Hoffmann - 2017-05-23

    I may be a bit biased, but I can of course comment on some of your remarks:

    1. Encryption: X11-Basic supports encryption but you would need to compile it youself, because a law (the patriot act) forbits to export software which does (strong) encryption from USA. And since the google playstore is on USA terretory.... So Encryption is not compiled in by default.
    2. There is an interface to SQL databases (see sqlite3). It comes with the apk for Anroid.
    3. Zip and 7z access is not supported. However there is a compress and uncompress function which are as powerful, but not compatible with zip. However it is possible to access zip files with the SYSTEM() commands, because zip is already there on Android.
    4. On device native compiling. Hm. I always wanted this for on android for X11-Basic and indeed there was a relative big effort to have it. But the thing is as complicated as with RFO-Basic. So you either have to do the cmpilation on a PC with all the platform tools (which works of course) or someone has to write a native compiler for Android. Unfortunately the compiler for RFO-Basic is not open source so one cannot take code from it. Maybe you can try to convince the author of it to also support X11-Basic ....
    5. Linked lists and stacks: Why not, but do you have a suggestion for X11-Basic like syntax to implement it.
    6. Graphical Scaling: PUT should have a scale factor...

    The GUI thing: Yes, X11-Basic is very limited here. But the main focus has always been math calculation, data manipulation and speed, Supporting all native Android User interface functions (which is nicely done by RFO-Basic) whould slow everything down a lot. (As you can see with RFO). If you really need his, X11-Basic wouldnot be the right language.

    But so what: have fun anyways. I hope you can use at least some of the functions of X11-Basic.

     
  • Kott

    Kott - 2017-05-28

    pro: X-11 Basic is very, very fast - definitely one of the fastest. DeRe Basic is on the opposite end - it's very slow. I wrote to the Great Ones of DeReBasic that they could convert the interpreter into Java code emitter (interpreter is written in Java, so they know what to do), but they weren't enthusiastic about it ;) When I tested X-11 Basic, it was 6-8 times faster than DeRe Basic, and when compiled to p-code the difference reached even 40 times. It's even faster than Mintoris Basic.
    programs can be run and tested on PC before transferring to Android device without installing any android emulators
    Cons: no automated Android installer. DeReBasic got its own thanks to one of the users, also the possibility of editing code on PC and sending via wi-fi to android device to run on.
    Internal editor built in DeReBasic
    Both languages have got great manuals.
    lists and bundles - I'd prefer something like Type... End Type from many other basic dialects.

     
  • Markus Hoffmann

    Markus Hoffmann - 2017-05-29

    Hm, since I heared it many times: would a builtin editor be a pro or a con? I always thought, that external editors are better because they have really good fetures which are specialized on editing which one could never build oneself.

     
  • Anonymous

    Anonymous - 2017-05-31

    Thanks everyone for their replies.

    I spent the to dollars for the DeReBasic Complier and it works nice. One of my problems is that I have NO pc access and very limited internet access due to court order. I cannot, for example, compile encryption into x-11 basic, and I have to budget my time in researching.

    Kott is right that custom typedefs would be even better than lists and bundles, and certainly much faster than the txt searches that DeRe must do when accessing data. Of course I'd rather just build C++ objects and forget basic but I cannot root my device so running linux is impossible.

    Perhaps someone could gather as much info (tutorials/faqs) , source, and add-ons for x-11 and post it here so I can get it all at once. Would be much obliged. The speed advantage of x-11 basic and draws me toward it, and RFO-Basics lack of simple commands such as instr pushes me away.

     
  • Anonymous

    Anonymous - 2019-05-24

    Didn't GFA BASIC 3.x have UDT support? Between that and the existing dynamic array resizing support in X11 BASIC, rolling your own stacks, queues, balanced binary search trees, and even prefix trees wouldn't be too bad. Well, modulo garbage collection if you decide to support deletion and reuse of previously deleted nodes in your ever growing array of UDTs, I guess.

     
  • Markus Hoffmann

    Markus Hoffmann - 2019-06-04

    No. Looking at GFA- BAsic 3.0 for ATARI-ST this was not possible. The windows version of GFA-Basic was not at all(!) comparable to the ATARI-ST version. It was not as popular and not even revolutionary not in speed not other performance or anything else. It was not even programmed by the same author (Frank Ostrowski).

    So X11-Basic want to be similar to the ATARI-ST version.

    But if it would fit to the syntax, why not think of any implementation of new features? Just make a specific suggestion and I will see, what I can do.

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.