Page 1 of 21 12311 ... LastLast
Results 1 to 10 of 203

Thread: thinBASIC 1.9.16.X

  1. #1
    thinBasic author ErosOlmi's Avatar
    Join Date
    Sep 2004
    Location
    Milan - Italy
    Age
    50
    Posts
    8,198
    Blog Entries
    2
    Rep Power
    10

    thinBASIC 1.9.16.X

    ThinBASIC 1.9.16.x

    Download from: http://www.thinbasic.biz/projects/th..._1.9.16.17.zip

    2016.08.14 11:15 (CET Time) updated to version 1.9.16.17: added few additional classes, one module from Petr (StringBuilder), fixed and improved few features.
    See list of changes at http://www.thinbasic.com/public/prod..._1_9_16_17.htm


    2016.02.04 23:15 (CET Time) updated to version 1.9.16.16: added few more features to Hash Table. Added thinBasic recent paths. Added a new very interesting data structure: AVL Tree. Create a tree, add new nodes key/data pairs, traverse tree in order from top to bottom and bottom to top. See AVL Tree example in \thinBasic\SampleScripts\DataStructure\
    2016.01.24 12:15 (CET Time) updated to version 1.9.16.15: fixed a Tokenizer bug. Added more features to Hash Table now able to change Hash Table capacity and to Clone an Hash Table into another with all key/data pairs.
    2016.01.23 12:50 (CET Time) updated to version 1.9.16.14: other fixed in Exit Do, more pre-parsing error checking in IF/ELSE/END IF, few fix in zLib module
    2016.01.22 11:43 (CET Time) updated to version 1.9.16.13: hopefully fixed Exit Do. Changed HASH Table functions in order to avoid Second WW SS acronym See Hash Table example in \thinBasic\SampleScripts\DataStructure\
    2016.01.21 12:14 (CET Time) updated to version 1.9.16.12: an important bug fixed: numeric parameters passed BYREF in user defined functions not working properly. Added new native Core data structure: Hash Table and some functions working with it. Those of you in need to store great amount of data in order to quickly retrieve will love it. See Hash Table example in \thinBasic\SampleScripts\DataStructure\
    2016.01.20 22:55
    (CET Time) updated to version 1.9.16.11: this version had a BUG that GPF Core Engine. Discard!
    2016.01.18 21:42 (CET Time) updated to version 1.9.16.10: some fix, changed the way #INCLUDE find files, added left/right bit shift << >>, added C notation for hex numbers, added Scintilla Edit Control in template dialogs (it's a start), numeric and string equates (constants starting with % or $) can now be declared also without = sign, #INCLUDE and #INCLUDEDIR can now have many meta tags for getting special folders, improved profile info
    2015.12.21 05:20 (CET Time) updated to version 1.9.16.9: some fix, added APP_IniFile, renamed #TRACE to #PROFILE, added a profile utility (see help), added more profile info: time spent in function stack allocation/de-allocation, number of function parameters, number of function local variables
    2015.12.16 23:45 (CET Time) updated to version 1.9.16.8: some fix plus new #TRACE directive. See help for more info
    2015.12.14 21:10 (CET Time) updated to version 1.9.16.7: nothing new compared to 1.9.16.6 but LD function renamed to StrDistance
    2015.12.13 20:41 (CET Time) updated to version 1.9.16.6: #BUNDLE File ... added, FOR ... WHEN ... added, LD function added, ZLib_ExtractToString function added. See help for info
    2015.12.01 17:30 (CET Time) updated to version 1.9.16.5: dynamic arrays (numeric and dyn strings) inside TYPEs can now extends the power of thinBasic TYPEs. A new tokenizer module class.
    2015.11.23 17:23 (CET Time) updated to version 1.9.16.4: some urgent fixes
    2015.11.11 20:00 (CET Time) updated to version 1.9.16.3: some fixes
    2015.11.04 07:40 (CET Time) updated to version 1.9.16.2: improved ARRAY SORT ... adding Collate Ucase. Thanks to René Miner.
    2015.11.02 21.15 (CET Time) updated to version 1.9.16.1: fixed error reported by Petr Schreiber.

    Previous 1.9.16.x beta versions (in case of any needs):
    http://www.thinbasic.biz/projects/th..._1.9.16.16.zip
    http://www.thinbasic.biz/projects/th..._1.9.16.15.zip
    http://www.thinbasic.biz/projects/th..._1.9.16.14.zip
    http://www.thinbasic.biz/projects/th..._1.9.16.13.zip
    http://www.thinbasic.biz/projects/th..._1.9.16.12.zip
    http://www.thinbasic.biz/projects/th..._1.9.16.10.zip
    http://www.thinbasic.biz/projects/th...c_1.9.16.9.zip
    http://www.thinbasic.biz/projects/th...c_1.9.16.8.zip
    http://www.thinbasic.biz/projects/th...c_1.9.16.7.zip
    http://www.thinbasic.biz/projects/th...c_1.9.16.6.zip
    http://www.thinbasic.biz/projects/th...c_1.9.16.5.zip
    http://www.thinbasic.biz/projects/th...c_1.9.16.4.zip
    http://www.thinbasic.biz/projects/th...c_1.9.16.3.zip
    http://www.thinbasic.biz/projects/th...c_1.9.16.2.zip
    http://www.thinbasic.biz/projects/th...c_1.9.16.1.zip




    This version will be an ongoing development version for some time.
    Among other changes, this version introduced 1 great new change:

    • possibility to have TYPEs methods inside TYPE declaration.
    • possibility to define and re-dimension as many times as needed dynamic string and numeric arrays inside TYPEs


    Example:
    Uses "console"
    
    Type tCircle
      Radius As Double
      lColor As Long 
    
      Function getRadius() As Double
        Return Me.Radius
      End Function
    
      Function getColor() As Double
        Return Me.lColor
      End Function
    
      Function getArea() As Double
        Return Me.Radius * Me.Radius * 3.1416
      End Function
      
    End Type
    
    Dim c1 As tCircle
    
    c1.Radius = 10
    c1.lColor = Rgb(255, 0, 0)
    
    PrintL "---Circle data---"
    PrintL "Radius:", c1.getRadius
    PrintL "Color:", c1.getColor
    PrintL "Area:", c1.getArea
    
    Waitkey
    
    See help for details.
    More detailed info and examples will come next days.

    Have fun.
    Eros
    Last edited by ErosOlmi; 14-08-2016 at 11:17.
    www.thinbasic.com | www.thinbasic.com/community/ | psch.thinbasic.com
    Win10Pro 64bit - 8GB Ram - Intel i7 M620 2.67GHz - NVIDIA Quadro FX1800M 1GB

  2. #2
    thinBasic MVPs
    Join Date
    Oct 2012
    Location
    Philippines
    Age
    48
    Posts
    1,218
    Blog Entries
    1
    Rep Power
    133
    thanks for the new stuff to play with

    Sadly i could not find anything about the user-utilities of thinAir documented yet.
    Is it already possible? Does the utilities-subfolder belong into c:\thinBasic or c:\thinBasic\thinAir?

    ----------------------------------------------------------

    Missing highlighted keywords because not USES "..." in
    c:\thinBasic\thinAir\Syntax\thinBasic\thinBasic.CreateSyntaxIni.tBasic:

    Uses "ADODB"
    Uses "Excel"
    
    completely undocumented but keywords are created of it:
    Uses "ASTAR" ' what's this?
    
    ---------------------------------------------------------

    The menu for user-help (see image) does not show any names, so it's a guess - i know i have to click on "Help 7" for TBGL-help.
    Attached Thumbnails Attached Thumbnails Click image for larger version. 

Name:	userHelp.png 
Views:	139 
Size:	39.8 KB 
ID:	9337  
    Last edited by ReneMiner; 02-11-2015 at 12:30.
    [TABLE="class: tblf1 tblf-fullwidth tblf-alternate"]
    [TR]
    [TD][COLOR=#b22222][B][SIZE=1]The limit is[/SIZE][/B][/COLOR][/TD]
    [TD="class: isRelinked"] [COLOR=#0000cd][B][SIZE=1]Imagination[/SIZE][/B][/COLOR][/TD]
    [/TR]
    [/TABLE]

  3. #3
    Super Moderator Petr Schreiber's Avatar
    Join Date
    Aug 2005
    Location
    Brno - Czech Republic
    Posts
    6,800
    Blog Entries
    3
    Rep Power
    694
    Hi Eros,

    so far very good, but I think one little creature slipped the testing.

    Try to run this script - it will throw false-positive run time error:
    ' -- Will trigger run time error, but it should not
    MarkSeparator("Monsters (werewolves, dwarfs), are awesome", "!")
    
    Function MarkSeparator( textIn As String, separator As String ) As String
      Long i, inBracket
      
      For i = 1 To Len(textIn)
      
        Select Case Mid$(textIn, i, 1)
          Case "("
            inBracket = TRUE      
            Iterate For      
          
          Case ")"
            inBracket = FALSE 
            Iterate For      
    
          Case ","
            If inBracket = FALSE Then
              Mid$(textIn, i, 1) = separator         
            End If
            
        End Select
        
      Next
      
      Return textIn  
    End Function
    
    What is strange is that just reordering the CASEs fixes the problem:
    ' -- Will run ok
    MarkSeparator("Monsters (werewolves, dwarfs), are awesome", "!")
     
    Function MarkSeparator( textIn As String, separator As String ) As String
      Long i, inBracket
       
      For i = 1 To Len(textIn)
       
        Select Case Mid$(textIn, i, 1)
          Case ","
            If inBracket = FALSE Then
              Mid$(textIn, i, 1) = separator         
            End If
        
          Case "("
            inBracket = TRUE     
            Iterate For     
           
          Case ")"
            inBracket = FALSE
            Iterate For     
             
        End Select
         
      Next
       
      Return textIn  
    End Function
    
    Petr
    Last edited by Petr Schreiber; 02-11-2015 at 19:53.
    Learn 3D graphics with ThinBASIC, learn TBGL!
    Windows 7 64bit - Intel Core 2 Duo T6600 @ 2.2GHz - 4 GB RAM - NVIDIA GeForce G210M 512MB
    Windows 8 64bit - Intel Core i5-3350P @ 3.1GHz - 8 GB RAM - NVIDIA GeForce GT640 3GB

  4. #4
    thinBasic author ErosOlmi's Avatar
    Join Date
    Sep 2004
    Location
    Milan - Italy
    Age
    50
    Posts
    8,198
    Blog Entries
    2
    Rep Power
    10
    Quote Originally Posted by ReneMiner View Post
    Sadly i could not find anything about the user-utilities of thinAir documented yet.
    Is it already possible? Does the utilities-subfolder belong into c:\thinBasic or c:\thinBasic\thinAir?
    Still to be developed, sorry.

    Quote Originally Posted by ReneMiner View Post
    Missing highlighted keywords because not USES "..." in
    c:\thinBasic\thinAir\Syntax\thinBasic\thinBasic.CreateSyntaxIni.tBasic:

    Uses "ADODB"
    Uses "Excel"
    
    Sorry, I do not understand.

    Quote Originally Posted by ReneMiner View Post
    completely undocumented but keywords are created of it:
    Uses "ASTAR" ' what's this?
    
    An old module developed by Randall: http://www.thinbasic.com/community/s...r-Path-Finding


    Quote Originally Posted by ReneMiner View Post
    The menu for user-help (see image) does not show any names, so it's a guess - i know i have to click on "Help 7" for TBGL-help.
    I will fix in next versions, thanks
    www.thinbasic.com | www.thinbasic.com/community/ | psch.thinbasic.com
    Win10Pro 64bit - 8GB Ram - Intel i7 M620 2.67GHz - NVIDIA Quadro FX1800M 1GB

  5. #5
    thinBasic author ErosOlmi's Avatar
    Join Date
    Sep 2004
    Location
    Milan - Italy
    Age
    50
    Posts
    8,198
    Blog Entries
    2
    Rep Power
    10
    Quote Originally Posted by Petr Schreiber View Post
    Hi Eros,

    so far very good, but I think one little creature slipped the testing.

    Try to run this script - it will throw false-positive run time error:
    ' -- Will trigger run time error, but it should not
    MarkSeparator("Monsters (werewolves, dwarfs), are awesome", "!")
    
    Function MarkSeparator( textIn As String, separator As String ) As String
      Long i, inBracket
      
      For i = 1 To Len(textIn)
      
        Select Case Mid$(textIn, i, 1)
          Case "("
            inBracket = TRUE      
            Iterate For      
          
          Case ")"
            inBracket = FALSE 
            Iterate For      
    
          Case ","
            If inBracket = FALSE Then
              Mid$(textIn, i, 1) = separator         
            End If
            
        End Select
        
      Next
      
      Return textIn  
    End Function
    
    What is strange is that just reordering the CASEs fixes the problem:
    ' -- Will run ok
    MarkSeparator("Monsters (werewolves, dwarfs), are awesome", "!")
     
    Function MarkSeparator( textIn As String, separator As String ) As String
      Long i, inBracket
       
      For i = 1 To Len(textIn)
       
        Select Case Mid$(textIn, i, 1)
          Case ","
            If inBracket = FALSE Then
              Mid$(textIn, i, 1) = separator         
            End If
        
          Case "("
            inBracket = TRUE     
            Iterate For     
           
          Case ")"
            inBracket = FALSE
            Iterate For     
             
        End Select
         
      Next
       
      Return textIn  
    End Function
    
    Petr
    A fix in on the way, a dummy temp variable not defined during checking.
    www.thinbasic.com | www.thinbasic.com/community/ | psch.thinbasic.com
    Win10Pro 64bit - 8GB Ram - Intel i7 M620 2.67GHz - NVIDIA Quadro FX1800M 1GB

  6. #6
    thinBasic MVPs
    Join Date
    Oct 2012
    Location
    Philippines
    Age
    48
    Posts
    1,218
    Blog Entries
    1
    Rep Power
    133
    Quote Originally Posted by ErosOlmi View Post

    ...
    Sorry, I do not understand.
    ...
    I mean we have both modules (ADODB & Excel) but the script to create the keywords-list does not load them, so the keywords of both modules are not in bold & blue within thinAir-code-window...

    Result of this: my current auto-complete-scripting-stuff is kind of incomplete
    Last edited by ReneMiner; 02-11-2015 at 22:13.
    [TABLE="class: tblf1 tblf-fullwidth tblf-alternate"]
    [TR]
    [TD][COLOR=#b22222][B][SIZE=1]The limit is[/SIZE][/B][/COLOR][/TD]
    [TD="class: isRelinked"] [COLOR=#0000cd][B][SIZE=1]Imagination[/SIZE][/B][/COLOR][/TD]
    [/TR]
    [/TABLE]

  7. #7
    thinBasic author ErosOlmi's Avatar
    Join Date
    Sep 2004
    Location
    Milan - Italy
    Age
    50
    Posts
    8,198
    Blog Entries
    2
    Rep Power
    10
    Quote Originally Posted by ErosOlmi View Post
    A fix in on the way, a dummy temp variable not defined during checking.
    Fixed.
    Updated first post of this thread to version 1.9.16.1
    Updated download link to 1.9.16.1
    New version available for download
    Last edited by ErosOlmi; 02-11-2015 at 22:25.
    www.thinbasic.com | www.thinbasic.com/community/ | psch.thinbasic.com
    Win10Pro 64bit - 8GB Ram - Intel i7 M620 2.67GHz - NVIDIA Quadro FX1800M 1GB

  8. #8
    thinBasic author ErosOlmi's Avatar
    Join Date
    Sep 2004
    Location
    Milan - Italy
    Age
    50
    Posts
    8,198
    Blog Entries
    2
    Rep Power
    10
    Quote Originally Posted by ReneMiner View Post
    I mean we have both modules (ADODB & Excel) but the script to create the keywords-list does not load them, so the keywords of both modules are not in bold & blue within thinAir-code-window...

    Result of this: my current auto-complete-scripting-stuff is kind of incomplete
    OK, I've understood now.
    Well the problem is that there are no keywords when modules has embedded module classed.
    I mean for example "Visible" property in <ObjectInstance>.Visible is not passed to Core engine as a keyword because is valid only when used with the object for which it has been developed.
    You can have any variable defined as "Visible" and this will not interfere with <ObjectInstance>.Visible
    If it would be a language keyword you would have a runtime error.

    Maybe I need to develop few more APP_List... functionalities able to list all module class objects and for each of them all properties and methods/nested methods.
    Quite complex at the moment.
    www.thinbasic.com | www.thinbasic.com/community/ | psch.thinbasic.com
    Win10Pro 64bit - 8GB Ram - Intel i7 M620 2.67GHz - NVIDIA Quadro FX1800M 1GB

  9. #9
    thinBasic author ErosOlmi's Avatar
    Join Date
    Sep 2004
    Location
    Milan - Italy
    Age
    50
    Posts
    8,198
    Blog Entries
    2
    Rep Power
    10
    Updated to version 1.9.16.2
    See first post of this thread.
    www.thinbasic.com | www.thinbasic.com/community/ | psch.thinbasic.com
    Win10Pro 64bit - 8GB Ram - Intel i7 M620 2.67GHz - NVIDIA Quadro FX1800M 1GB

  10. #10
    thinBasic MVPs
    Join Date
    Oct 2012
    Location
    Philippines
    Age
    48
    Posts
    1,218
    Blog Entries
    1
    Rep Power
    133
    small discoveries while fooling around with keywords & especially equates:

    Help tells there would be some to Core built-in equate M_Zero
    but thinAir-syntax-highlighting does not have it. Using it ends up with an Error.

    (tB-help, section Thinbasic Modules\Core\Built-In Constants\Math-Equates)
    [TABLE="class: tblf1 tblf-fullwidth tblf-alternate"]
    [TR]
    [TD][COLOR=#b22222][B][SIZE=1]The limit is[/SIZE][/B][/COLOR][/TD]
    [TD="class: isRelinked"] [COLOR=#0000cd][B][SIZE=1]Imagination[/SIZE][/B][/COLOR][/TD]
    [/TR]
    [/TABLE]

Page 1 of 21 12311 ... LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •