SpiderBasic 1.00 beta 2 is out !

Everything else that doesn't fall into one of the other categories.
Fred
Site Admin
Posts: 1506
Joined: Mon Feb 24, 2014 10:51 am

SpiderBasic 1.00 beta 2 is out !

Post by Fred »

Hi folks !

We are very happy to officially announce our new product:

SpiderBasic
- A Basic to master the Web -

Forums: http://forums.spiderbasic.com

You can see online examples here:

http://www.purebasic.com/spidertest/gadgets.html
http://www.purebasic.com/spidertest/waponez/index.html


beta 2 is out !

Code: Select all

- Full english doc
- Added ParseXML()
- Many bug fixes
beta 1 is out !

Code: Select all

- Added OS X and Linux support
- Added full JSON support
- ExportImage(), ExportJSON(), ExportXML() to send the specified objects as download to the user
alpha 7 is out !

Code: Select all

- Added AllocateStructure/FreeStructure()
- Chnaged the signature of the 'Loaded/Error' callback, the objectId as been added
- Added OpenFileRequester()/NextSelectedFile() and #PB_LocalFile support for LoadImage/XML/JSON()
- New IDE feature like Issue tool and more
alpha 6 is out ! Mainly bug fixes

Code: Select all

- Added 'UserData' optional parameter to HttpRequest()
- Added GetGadgetItemText() support to WebGadget() (from same site only)
- Reworked AMD module handling to have a better code isolation
- Bug fixes
alpha 5 is out ! Some more improvements and bug fixes

Code: Select all

- Added: RegularExpression library
- Added: Import/EndImport support for variables and functions
- Added: "!" full inlined javascript support
- Added: EnableJS/DisableJS to put big javascript blocks in programs
- Added: CallDebugger support for native browser debugger (the FireFox/Chrome debugger needs to be opened first).
- Added: FrameGadget()
- Added: #PB_Compiler_InlineJavascript compiler constant
alpha 4 is out ! It does brings a lot of fixes and the following new commands, which should allow to start building some interesting applications !

Code: Select all

- Added: XML Library (see Xml.sb)
- Added: Font Library
- Added: #PB_Window_Background and #PB_Window_BorderLess flags for OpenWindow()
- Added: TreeGadget(), nested SplitterGadget()
- Added: DesktopWidth()/DesktopHeight()/DesktopDepth()/DesktopName()/ExamineDesktop(), DesktopMouseX(), DesktopMouseY()
- Added: HTTPRequest() with #PB_HTTP_Get and #PB_HTTP_Post type
- Added: URLEncoder(), URLDecoder()
- Added: ChangeCurrentElement(), CopyList(), InsertElement(), MergeLists(), MoveElement()
- Added: PopListPosition(), PushListPosition(), SplitList(), SwapElements()
- Added: PopMapPosition(), PushMapPosition()
- Added: RandomSeed(), DrawText(), TextWidth(), TextHeight(), DrawingFont()
- Added: SetFrameRate(), CreateSprite(), SpriteOutput()
- Added: SortArray(), SortList(), RandomizeArray(), RandomizeList()
- Added: CopyImage(), ImageDepth(), ResizeImage(), GrabImage(), ImageFormat()
- Added: .sb/.sbi/.sbp/.sbf extension support for the SpiderBasic IDE
- Added: optimization option in compiler window based on Google Closure Compiler (requires java)
- Added: port and optimization options in the IDE (in Compiler Options)
- Added: image support for menu item
- Added: automatic grayed toolbar icon when disabled
alpha 3 is out ! It does brings a lot of fixes and the following new commands. The incompatibility list has been updated.

Code: Select all

 - Added: ContainerGadget(), ListIconGadget() and TreeGadget() (See GadgetOverview.pb example for a demo)
- Added UseGadgetList()
alpha 2 is out ! It does brings a lot of fixes and new commands. The incompatibility list has been updated. New examples has been added: WaponezWeb (thanks to Danilo for the early adaptation) and GadgetsOverview

Why the SpiderBasic name ? Well, spider, web, basic, should I say more ? :) It's a new programming language available for Windows (more plateforms will follow)
to develop rich web applications (JavaScript/HTML5/WebGL) based on the PureBasic syntax. Even if the syntax is close, there is fondamental differences
in the program workflow between PureBasic and SpiderBasic. In JavaScript, there is no blocking operations, all is asynchronous. For example, LoadImage()
will return immediately and you will have to wait for a callback announcing the load is done. So it was not possible to create just a new backend for PureBasic
and run a PureBasic program on the web. That's why we decided to fork PureBasic completely and made a new language to have greater control over the
commandset and command design. You can still write a program which will work in PB and SB, but it will need some care and probably some CompilerIf.

For now, we are targeting major browsers (firefox, chrome, ie and safari) in their lastest versions. In the long run, Android and iOS support could be
added as subsystems to be allow to create native applications or game with SpiderBasic !

SpiderBasic is a new commercial program which will be available for 49 euro with all minor upgrades included. When a major version will be
released a new license will be needed (will happen about every 1 or 2 years, like PureBasic). The website and support forums will be launched when SpiderBasic
will be stable enough to be released.

As a gift for your support, SpiderBasic will be free until 31 dec. 2014 to all registered PureBasic user ! It's available right now on your
online account :). Please read below before installing though.

Important: this is an alpha version, so while it can run some programs, it's far from being stable or feature complete. Your comments are welcome
as well as your bug reports. You can report them here: http://www.purebasic.fr/english/viewforum.php?f=41

1) Don't install it in "Program Files" directory or the examples couldn't be run out of the box. The examples needs to be put in a writable directory
as an .html file is created side by side to the SpiderBasic file.

2) Open one example (look in the "Examples" drawer of the SpiderBasic installation folder

3) Press "compile" and it should launch your default web browser and display the program.

Limitations against PureBasic compiler:

- Bitwise operands like '<<', '>>', '^', '!' only works on 32-bit numbers
- Quads are not real 64-bit quads but 53-bit only.
- Float are handled like double (32-bit float doesn't exists)
- Integer type other than 'quad' and 'integer' are subject to slow casting to respect their range
- '?' operator to get the labels address is not supported
- 'Break' doesn't support a level parameter
- No 'Goto'
- No 'Gosub'
- No 'End'

Supported libraries:
2DDrawing
Array
Date
Font
Gadget
Image
Joystick
Keyboard
LinkedList
Map
Math
Menu
Mouse
Runtime
Screen
Sound
Sprite
String
System
ToolBar
Window
XML

Libraries limitations:

Gadget:
- Get/SetGadgetFont() not implemented
- ScrollBar() not implemented
- MDIGadget() not implemented
- ExplorerGadgets() not implemented
- IPAddressGadget() not implemented
- ShortCutGadget() not implemented
- Get/SetGadgetItemColor() not implemented

2DDrawing:
- Only outlined and standard mode supported for now
- Gradient functions not implemented
- Custom filter not implemented
- DrawingBuffer() not implemented
- DrawRotatedText() not implemented
- AlphaBlend() not implemented
- DrawingFont() not implemented
- DrawAlphaImage() not implemented
- FillArea() not implemented
- GrabDrawingImage() not implemented

Date:
- ParseDate() not implemented

Image:
- CatchImage() not implemented
- EncodeImage() not implemented
- SaveImage() not implemented

Math:
- RandomData() not implemented

Window:
- No window maximize/minimize buttons
- WindowOutput() not implemented
- Get/SetWindowState() not implemented
- Get/SetWindowColor() not implemented
- PostEvent() not implemented
- DisableWindow() not implemented
- WindowEvent()/WaitWindowEvent() not supported (use BindEvent() instead)
- Add/RemoveKeyboardShortcut()

String:
- StringByteLength() not implemented

ToolBar:
- ToolBarStandardButton() not implemented

XML:
- CreateXMLNode() syntax is different
- SetXMLNodeName() is not available

Known issues:
- The doc is the one from PureBasic
- The icons and extensions are one from PB as well :)
- No runtime debugger ("Debug" works and output to browser console)
- Not optimized

Don't hesitate to play with it, publish your small programs (tell us if you want them included in the final package) and report bugs here:

Have fun with SpiderBasic and don't be too harsh with it, it's still in early stage !

The Fantaisie Software Team.
Foz
Posts: 20
Joined: Mon Feb 24, 2014 11:25 pm

Re: SpiderBasic 1.00 alpha 5 is out !

Post by Foz »

Thanks Fred!
rsts
Posts: 5
Joined: Mon Feb 24, 2014 11:33 pm

Re: SpiderBasic 1.00 alpha 5 is out !

Post by rsts »

Thanks.

As noted in PB forum, download page shows alpha 4.
Fred
Site Admin
Posts: 1506
Joined: Mon Feb 24, 2014 10:51 am

Re: SpiderBasic 1.00 alpha 5 is out !

Post by Fred »

True, it's fixed :)
User avatar
eddy
Posts: 124
Joined: Thu Mar 27, 2014 8:34 am

Re: SpiderBasic 1.00 alpha 5 is out !

Post by eddy »

How Import/EndImport is used ?
Fred
Site Admin
Posts: 1506
Joined: Mon Feb 24, 2014 10:51 am

Re: SpiderBasic 1.00 alpha 5 is out !

Post by Fred »

As silly example, but it should show how to import variables (same can be done for functions):

Code: Select all

a = 10

Import ""
  b As "v_a"
EndImport

Debug a
Debug b

b = 21

Debug a
Debug b
Fred
Site Admin
Posts: 1506
Joined: Mon Feb 24, 2014 10:51 am

Re: SpiderBasic 1.00 alpha 6 is out !

Post by Fred »

Alpha 6 is out, don't hesitate to give it a try :)
davido
Posts: 10
Joined: Mon Feb 24, 2014 10:22 pm
Location: Uttoxeter UK

Re: SpiderBasic 1.00 alpha 6 is out !

Post by davido »

Thanks.
User avatar
MrTAToad
Posts: 291
Joined: Sun Apr 20, 2014 11:43 am
Location: Chichester, England
Contact:

Re: SpiderBasic 1.00 alpha 6 is out !

Post by MrTAToad »

Will you be making sure that the database set of functions is available ?
garretthylltun
Posts: 1
Joined: Fri Jun 06, 2014 3:12 am

Re: SpiderBasic 1.00 alpha 6 is out !

Post by garretthylltun »

I will gladly pay for a registration of spiderbasic once it's available for purchase(anyone interested in buying a slightly used wife? Only been used for 26 years, lots of miles left on her!). My biggest wish is for iOS and Android support.

Anyway, just saw this in the purchased users download section when I went to update PureBasic.. I am very impressed with spiderbasic and plan on spending the next few weeks getting familiar with it. :-)

Thanks to those involved in developing spiderbasic.
~Garrett
Post Reply