Sometimes I wish Xojo would not use the Basic syntax but C # or Swift. Personally, I find C # much more pleasant to read and write. It would also facilitate the exchange when I switch between Xojo and Visual Studio projects (less rethinking). Also, some colleagues have just called the Basic dialect as the main reason why they would never ever switch to Xojo. I know the use of an existing language would also bring confusion because they can’t be 100% compatible.
So my question: Is it a long term goal for Xojo Inc to go away from the Basic language? The name change from REALbasic Studio to Xojo also indicates a little bit that Xojo Inc doesn’t want ‘Basic’ in their product name.
Xojo is very close to Basic, but it’s not a pure blood Basic. So, that’s why it’s called Xojo instead Basic. A new “breed”, a new name. As far as I know, they don’t want distance from it’s roots, because of the legacy, letting Basic programmers jump into Xojo faster. But Xojo is evolving, and absorbing new features from other languages, the same way that made RealBasic to become Xojo. And yes, I also wanted they could create another team dedicated to create a swift like flavor language, with a high performance reentrant enabled framework supporting preemptive threads using the full power of multi-core processors instead of the Xojo cooperative model, created from the scratch; and a new IDE.
I don’t get your point. You want to write in C#, use Unity. You want to write in Swift, use XCode 6. Like many others, I know the adapted BASIC syntax of Xojo, so that’s what I use. I don’t understand the point of wishing it were something else.
RealBasic/Xojo has been a remarkable development tool for over 15 years which, unlike Visual Basic, is still perfectly compatible with code written in the early days. For developers, it is insurance that assets are not rendered obsolete prematurely. I chose RealBasic a long time ago precisely because it is stable, and because I like to program in a syntax close to English.
Now, there are an awful lot of snobs out there that confuse complexity and performances. Sure, C# esoteric notation and convoluted syntax has everything to make some programmers look good : “he must be real good : his code is so obscure, it looks like an alchemist recipe”. Sure. When it takes 10 lines to write “Hello, Word” against one in Xojo, it allows for some show off.
Swift is a brilliant example of how after many years of obscurity Objective-C is finally moving towards greater ease of use, by dropping artifacts of the past like imports and semicolon. Too bad for complexity snobs…
If you want to see what can happen to Basic when it tries to become C#, have a look at Visual Basic 2013 : it is so much C# like, sometimes sample code looks identical on the msdn.com site. But at the same time, a lot of faithful VB6 customers never found the new VB.NET usable, because MS neglected keeping legacy code compatible in a gesture of blatant contempt against his own customers.
I am not against innovation per se, and welcome the idea that Xojo acquire some new features. As long as it does not break legacy code. I have not invested 10 years of coding to see them frivolously squandered in the name of fashion, like it happened for VB6 users.
Now, everybody is entitled to his own preferences. If you enjoy C# or Swift more than Xojo, what is the point in requesting to make Basic C-Like ? Is it not akin to learn Portuguese, and say ‘I wish it was more like German’ ? Unless you are forced to work with Xojo by your boss, why not simply code in C# and Swift ?
In short terms, the reason Xojo uses a BASIC-like syntax is one of the main reasons for me to use it. I am really bad in documenting my code, but I can go back to a method written long ago and read it almost like a natural language.
This may also be true for pro C developers who dream in brackets, but not for the majority of people.
The point is multi-platform. Xojo, the company, has the expertise of years managing a multi-platform language. Swift is Apple only. Unity is 3D engine, not an all purpose IDE/Language. Xamarin? They are focused on mobile, and tied to Microsoft, letting Linux on the dust by money, and you can’t just provide your app to someone when it depends on Mono, you need your user to install Mono. The point is evolution, but Xojo have an anchor tied to their legs, the legacy. That’s why, at some point, maybe they (or others) would appear with a swift-like, well design language from the scratch for today’s desired features (in an easy way), in a multi-platform approach.
You’re not alone. I like Xojo but I find aspects of Xojo’s syntax unpleasant. The code ends up looking quite blocky and there’s a few strange things like if you want to use a for loop then you have to use this “to” instead of a normal condition. This means you can’t write a “<”, which in turn means that if you want to write:
for (int i = 0; i < MyListbox.Listcount; i++)
a.append listbox1.cell(i,0)
You simply can’t - as far as I’m aware (please correct me if I’m wrong. I’d love to stop managing my -1s). You have to write:
for i as integer = 0 to listbox1.listcount-1
a.append listbox1.cell(i,0)
next
This means you’ve got to keep track of all these -1s all over the place. Forget a -1 and you’ve gone out of bounds.
I also find the whole “dim x as y” thing quite pointless. Why not just cut out the “dim” and the “as” and have something like “integer x”. Less boiler plate.
I think Python’s a lot closer to writing in pure English.
[quote=98775:@Joshua Woods]You’re not alone. I like Xojo but I find aspects of Xojo’s syntax unpleasant. The code ends up looking quite blocky and there’s a few strange things like if you want to use a for loop then you have to use this “to” instead of a normal condition.
[/quote]
Xojo’s not C or derived from C - so it has it’s own syntactic conventions.
If you’d started with Xojo and learned that first you’d probably look at C and feel that C’s use of one construct, the C for loop, to do what while / wend , for and do loop do would be odd.
If you’d started with a language like Erlang or RPG then you’d probably have different feelings since they use different constructs
Popeye said about what Xojo should say best - I am what I am
Yes, the point is multi-platform. There is no other development IDE that comes close to Xojo for providing multi-platform applications (although the IDE on Linux is not usable I think). At this point: Thanks to Xojo Inc.!
I’ve started with Visual Basic, went over to Assembler/C/C++, next C# and then jumped into Objective-C. Today I only use Objective-C, C# and RealBasic. So it wasn’t that hard to program in Xojo. It’s just I don’t like the syntax. Exactly as Joshua Woods wrote.
Just wanted to hear the views of Xojo and other programmers. Sure, you can never please everyone
Xojo has done such a good job with the IDE that you’d wish it would support the C++ language and contain it in a limited sense (within the constraints of the IDE); then it could go to a open-source GCC compiler. Kind of a XCode that is actually easy to use.
I’d GLADLY go for a restricted C++ in exchange for being able to use it in the REAL/Xojo IDE.
There are C++ extensions (thinking JUCE in my realm) that do the same thing but the aren’t especially easy to use, not as easy as Xojo.
Obviously I was drawn to REAL because of the BASIC language but REAL/Xojo isn’t great just because of BASIC, it’s great and well-designed in its own right.
If you still want cross-platform apps but dont want to write Xojo code and prefer another language:
There are many others available…
If you prefer C#, you can also create libraries in C# and call them from declares in Xojo as well. Xojo is moreso an ASIC (All-Purpose Symbolic Instruction Code) dialect than BASIC (Beginner’s All-Purpose Symbolic Instruction Code). You could also write a
It is better if Xojo uses one language because everybody is familiar with it. To support C# which is only better because of personal preference, that would take too much management for it to be worth it.
[quote=98912:@Matthew Combatti]If you still want cross-platform apps but dont want to write Xojo code and prefer another language:
C#/VB8/*.Net - Mono framework (Free)
[/quote]
Yes, I urge anyone who wants an alternative to Xojo to try Mono & VisualBasic.Net with the Xamarin Studio IDE I’ll be here waiting for you when you come running back to Xojo, screaming in horror. I was offered a contract a few months ago to do some ASP.Net using VB.Net or C# (my choice) with Mono/Xamarin; it took me less than one hour to realize I’d rather shoot myself in the head than try to figure out how that piece-of-crap IDE is supposed to work.
Wow, this place is super G-rated. Even the word that starts with c and rhymes with trap is verboten.
(I’m not complaining. It’s kind of refreshing actually.)