Download the free trial version
Basic4android Video
Features
Tutorials and manuals
Showcase
Screenshots

Go Back   Android Development Forum - Basic4android > Basic4ppc (Windows Mobile) > Beta Versions
Documentation Wiki Register Members List B4P Search Today's Posts Mark Forums Read

Beta Versions This forum is the place to discuss issues regarding Basic4ppc beta versions.

Basic4ppc v6.90 beta (6.85)

Reply
 
LinkBack Thread Tools Display Modes
  #1 (permalink)  
Old 02-23-2010, 07:18 PM
Erel's Avatar
Administrator
 
Join Date: Apr 2007
Posts: 15,701
Awards Showcase
Basic4ppc Founder 
Total Awards: 1
Default Basic4ppc v6.90 beta (6.85)

The documentation of the new version is not ready yet, so I will use this thread to explain the new features.

- Regular variables can be declared with a specific data type.
Unlike previous versions where regular variables (not arrays / structures) were always stored with the default data type (string), and converted to number as required, it is now possible to declare regular variables with the Dim keyword and specify their data type. Both local and global variables.

The two main data types are String which is the default and Number. Number is a syntactic sugar and actually maps to .Net double.

Using Number variables in numeric calculations is much (10x) more efficient than using untyped variables or strings.
Note that you will only see the performance improvement in the compiled application.

Usage example:
Code:
Sub SomeSub
 
Dim x As Number
 x = 
234
 
msgbox (x * 2)
End Sub
You can also use the other data types that are already available for Arrays (and Number can be used with Arrays as well).

Another new data type name is Integer which maps to Int32. Note that currently Number (or double) will yield the best performance.

- Subs declaration - It is also possible to declare the type of subs parameters and return type.
- Passing variables by reference - Variables can be passed by reference which can used to return more than one result from a sub.
So the Sub declaration syntax is:
Code:
[Public | Private] Sub SubName [([ByVal | ByRef] parameter [As Datatype], ...)][As DataType]
ByVal which stands for passing a variable by value is the default behavior.

See this link for more information about passing by value vs passing by reference: Evaluation strategy - Wikipedia, the free encyclopedia

Note that it is still not possible to pass or return arrays and structures.
This feature was initially planned but it will not be ready for this version.

Correctly typing your variables can significantly boost the performance of numeric calculations.

- Better support for dynamic controls and objects.

A new set of keywords for handling dynamic controls and objects is now available.
The new set of keywords can be used as a replacement for the Control keyword.
You can now write the control (or object) type followed by the specific control name as string and then the property or method.
Easier to explain with an example:
Code:
 i = 1
 Control (
"Form" & i, Form).Circle(...) 'old syntax
 Form ("Form"& i).Circle (...) 'new syntax
The main advantage of the new syntax is that it is recognized by the IDE. Therefore when you type '.' you will get the list of properties and methods available for a Form (or any other control).

The same thing is true for objects:
Code:
Control ("MyBList", bList).AddFromString(...) 'old syntax
bList ("MyBList").AddFromString(...) 'new syntax
Note that the old syntax is still supported.

- Scroll bar indicators - This feature is an improvement in the desktop IDE that is more useful than it may seem at first look.
In previous versions when you selected a word in the IDE (like a variable name), all occurrences of this word were highlighted in the editor. The new feature is that now in addition to the highlighting the vertical scroll bar will be marked with small indicators that indicate the positions which you should scroll to in order to find all the occurrences.
This can be very handy if you want to immediately see where in the code some variable or control is used.

The scroll bar indicators will also show for breakpoints, current debugging line and bookmarks.

- Other improvements include more accurate error messages and bug fixes.

The final version will include some additional minor improvements and bug fixes.

- Backwards compatibility issues
* Up until now it was possible for an array to change its type in runtime. This feature was problematic and was not always handled correctly by the optimized compiler. Arrays can no longer change their types.
It is still possible to redeclare an array and change its size.

* The legacy compiler will not be available in the next version. The optimized compiler is significantly better than the legacy compiler and almost all devices available are supported by .Net CF 2.0.
Removing support for the legacy compiled makes it much more simpler to maintain and improve several core components of Basic4ppc (like the variables handling for example).
Reply With Quote
  #2 (permalink)  
Old 02-23-2010, 08:51 PM
agraham's Avatar
Basic4ppc Expert
 
Join Date: Jul 2007
Location: Cheshire, UK
Posts: 6,072
Awards Showcase
Innovator medal Beta Tester Forum Contributer 
Total Awards: 3
Default

Let me say that this is an awesome improvement for what looks like merely a 0.1 version increment, it really warrants a major version step to version 7.0. It might at first sight look complicated but once you've got your head around the changes the increase in performance and ease of use is wonderful.

I love the desktop IDE scrollbar indicators (I've been lucky to have had an early pre-beta preview version of this feature for several months now and it helps in locating references to variables etc. a lot). Those of you who have previously used typed arrays to gain an increase in arithmetic performance should notice an even larger increase in speed of calculation over previous versions.

You can look forward to another "trick up the sleeve" in the final release of this version involving improved support for one of my libraries.
__________________
Sorry, but I don't answer questions by PM or email.
Please post your queries in the forum.
Reply With Quote
  #3 (permalink)  
Old 02-24-2010, 10:50 AM
maXim's Avatar
Basic4ppc Veteran
 
Join Date: May 2007
Location: Sesto Fiorentino - Florence (Italy)
Posts: 224
Send a message via MSN to maXim Send a message via Skype™ to maXim
Awards Showcase
Beta Tester 
Total Awards: 1
Smile


Great improvements!
Thanks Erel

Reply With Quote
  #4 (permalink)  
Old 03-20-2010, 11:37 PM
sitajony's Avatar
Basic4ppc Veteran
 
Join Date: Mar 2010
Location: France
Posts: 416
Awards Showcase
Beta Tester 
Total Awards: 1
Default

Can I test me too? I'm very interested to see the last beta version
Anyway: Any chance to decrease the output executable at first compiling? Cos I noticed that even If there're no code source and I build a program it's a few too big and too slow to run... I don't know how it's maked but maybe some stuff can be removed or from the compilator check if a code is required and don't compil somes functions or others... else tamps, It's still a really great good soft
Reply With Quote
  #5 (permalink)  
Old 03-23-2010, 08:33 PM
Erel's Avatar
Administrator
 
Join Date: Apr 2007
Posts: 15,701
Awards Showcase
Basic4ppc Founder 
Total Awards: 1
Default

I Sent you an email with the download details.

Almost all of the time required to load a small program is due to parts of the .Net CF being loaded.
Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are On

Similar Threads
Thread Thread Starter Forum Replies Last Post
PowerNotify Beta eww245 Additional Libraries 27 09-09-2010 10:51 PM
Basic4ppc V6.80 - first beta is released Erel Announcements 0 04-24-2009 05:58 AM
Basic4ppc V6.30 beta will be released next week Erel Announcements 19 09-17-2008 08:36 PM
Basic4ppc V6.30 Beta (6.25) released Erel Announcements 0 05-05-2008 03:14 PM
Basic4ppc V6.00 - Beta is released Erel Announcements 0 12-16-2007 05:55 PM


All times are GMT. The time now is 02:52 PM.


Powered by vBulletin® Version 3.6.12
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.0