April 29, 2024, 07:00:37 PM

News:

IonicWind Snippit Manager 2.xx Released!  Install it on a memory stick and take it with you!  With or without IWBasic!


Aurora and C++

Started by Brandlingill, November 04, 2006, 12:11:11 AM

Previous topic - Next topic

0 Members and 2 Guests are viewing this topic.

Brandlingill

Hi.

Some of the first posts I read on this forum mentioned similarities and differences between Aurora and C++. I'm still going through C++ books in preparation for learning Aurora and I'd find it helpful to know a little more about these differences. It may also be good information for any C++ programmers who come this way.

So, my question is what are the main differences between the two languages and in particular in what ways is Aurora an improvement on C++? Paul has stated that Aurora is simpler than C++ but how specifically is it simpler? I know that making GUIs in Aurora is much easier than using Windows API in C++ but is it simpler in other ways as well?

Thanks.

PS My questions may sound as if Aurora is an offshoot of C++ which isn't the case. I hope that a comparison with a known language would be more helpful to some people than a list of Aurora's features.

Ionic Wind Support Team

While some of the syntax is similar to C++, and other languages, it is a separate and distinct language.  It is close enough to allow conversions though.

There are 100's of things that I as a C++ programmer find much easier with Aurora, but your experience may vary.  Some are minor and others are major.  Besides the built in classes for GUI, Database, 2D, 3D, etc of course which a stock C/C++ compiler doesn't have. Although that distinction is blurred a bit as most commercial C++ compilers include sets of classes for the same purpose.

String handling is much easier in Aurora as it borrows the string handling ideas of BASIC. Speaking of GUI I do consider our GUI classes much easier to use, and only wish C++ had an AddControl function ;)

Using third party DLL's is easier in Aurora when compared to say MSVC++.  In Aurora it's just and import library and include file.  The include file is a simple set of declare import...statements.  In contrast using a third party DLL, meant for a different language, in MSVC is a bit more difficult as there are certain rules the DLL must follow. All functions have to be cdecl, to create an import library for MSVC you have to first extract all of the function names in proper order from the DLL, create a .def file, and then use their LIB tool to finally get the needed lib.  After that the header file needs to be written and that can be a bit difficult depending on whether the DLL is to be used in C or C++. 

C++ is a lot stricter on types and doesn't support autodefintion of variables, which is good or bad depending on who you ask.  Automatic type promotion/casting is better in Aurora.  Again that is good or bad depending on who you ask.

The list goes on and on.  And I will state the same thing I used to with IBasic.  If the language fits your needs and does what you ask of it then you are already ahead of the game.

Paul.
Ionic Wind Support Team

Brandlingill

Do you still use other languages Paul or just Aurora?

srod

Quote from: Brandlingill on November 04, 2006, 05:08:25 AM
Do you still use other languages Paul or just Aurora?

The fact that the compiler core is written in VC 6 (I think!) answers that one!ÂÃ,  ;D

Mind you, an interesting 'theme' you've touched on here.

Paul, I'm not sure if you've touched upon this before, but any chance of a little info as to your programming background? Purely out of interest as I (and I'm sure I'm not the only one around these parts!ÂÃ,  ;)) can only hope to aspire to your level of knowledge and skill and constantly wonder 'how the hell you do it?'

Not that I'm in need of motivation at all as programming is like a 'drug'; it provides motivation enough.

As I say, purely one of interest and fascination.ÂÃ,  :)

Brandlingill

Quote from: srod on November 04, 2006, 05:58:13 AM
The fact that the compiler core is written in VC 6 (I think!) answers that one!ÂÃ,  ;D

Yes, I think so too  :)

Thanks.

Steven Picard

Eventually I bet Aurora will be written in Aurora.

Parker

Maybe if a lex and yacc are written for Aurora. Any volunteers? ;D

Ionic Wind Support Team

I use whatever language fills the need ;)

Mainly Aurora, C++, C, and assembler these days.  The IDE is written in VC++ 5.0 using DLL's written in Aurora. 

Ionic Wind Support Team