I've posted a new build and updated the online docs.
I'm on vacation next week, so it'll be on quiet side.
FWT
The biggest new feature is probably the FWT (Fan Widget Toolkit). This is a work in progress, but provides an elegant Fan API on top of SWT. If everything is working correctly you should be able to run the demos without any additional setup for Windows, OS X, and Linux:
{fan_home}/apps/fwt/hello.fan
{fan_home}/apps/fwt/demo.fan
I've tried this on Windows and OS X, but I don't have a Linux desktop to test with. So please let me how this code works on your machine.
SWT and Extensions
To make the FWT work out of the box, I added some smarts to the Fan runtime for extensions. There is now a "lib/java/ext" directory. Any jars in this directory are automatically added to the runtime and compiler's classpath. There are also sub-directories under "ext" for OS specific code - these directories are added to both the classpath and the "java.library.path" automatically based on your machine. This works pretty much like Java's "lib/ext" directory, just bundled with the Fan runtime.
With-Block and Serialization
Both with-blocks and serialization now support user-defined collections:
A quick question about main() support: what is this mysterious optional boolean parameter you show in the documentation?
Void make(Str[] args, Bool flag := true)
Int make(Str[] args, Bool flag := true)
Is this just a way to say that it's okay to add any kind of parameters after Str[] as long as they are optional?
Also, would you mind changing the cookie duration of the forums to two weeks?
-- Cedric
brianThu 26 Jun 2008
Is this just a way to say that it's okay to add any kind of parameters after Str[] as long as they are optional?
Yes - that probably is a little confusing. I'll change the docs to be clearer. Thanks.
Also, would you mind changing the cookie duration of the forums to two weeks?
Andy is going to take care of that - he is working on the next rev of changes right now.
tompalmerThu 26 Jun 2008
Congrats on the new build, by the way. How do you guys code so fast?
Side note, I've been working on parameter type inference for closures, but my time is limited, so I can't give an ETA. I also can't promise you'll like my code when I'm done (if I get done). So if y'all were already working on that or planned to get to it soon, go ahead. Just felt like mentioning in passing.
tacticsFri 27 Jun 2008
Holy crap. That FWT demo is seeeeexy~
It's amazing how much you can cram in there in under 400 lines with that .add() sugar! And unlike common claims in Ruby ("A blog in under 400 lines, because there's already a blog library for you to use"), this is legitimate. It's the same basic tools as a Java programmer would have (and understand), but the new syntax lets you really pack it in there in a natural, readable way.
Incidentally, while typing FWT, I almost misspelled it. It gives me a good idea for marketing the library: FWT FTW (Fan Widget Toolkit for the win!)
brian Thu 26 Jun 2008
I've posted a new build and updated the online docs.
I'm on vacation next week, so it'll be on quiet side.
FWT
The biggest new feature is probably the FWT (Fan Widget Toolkit). This is a work in progress, but provides an elegant Fan API on top of SWT. If everything is working correctly you should be able to run the demos without any additional setup for Windows, OS X, and Linux:
I've tried this on Windows and OS X, but I don't have a Linux desktop to test with. So please let me how this code works on your machine.
SWT and Extensions
To make the FWT work out of the box, I added some smarts to the Fan runtime for extensions. There is now a "lib/java/ext" directory. Any jars in this directory are automatically added to the runtime and compiler's classpath. There are also sub-directories under "ext" for OS specific code - these directories are added to both the classpath and the "java.library.path" automatically based on your machine. This works pretty much like Java's "lib/ext" directory, just bundled with the Fan runtime.
With-Block and Serialization
Both with-blocks and serialization now support user-defined collections:
Misc
Change Log
Build 1.0.28 (25 Jun 08)
cbeust Thu 26 Jun 2008
Looks great, Brian.
A quick question about main() support: what is this mysterious optional boolean parameter you show in the documentation?
Is this just a way to say that it's okay to add any kind of parameters after Str[] as long as they are optional?
Also, would you mind changing the cookie duration of the forums to two weeks?
-- Cedric
brian Thu 26 Jun 2008
Yes - that probably is a little confusing. I'll change the docs to be clearer. Thanks.
Andy is going to take care of that - he is working on the next rev of changes right now.
tompalmer Thu 26 Jun 2008
Congrats on the new build, by the way. How do you guys code so fast?
Side note, I've been working on parameter type inference for closures, but my time is limited, so I can't give an ETA. I also can't promise you'll like my code when I'm done (if I get done). So if y'all were already working on that or planned to get to it soon, go ahead. Just felt like mentioning in passing.
tactics Fri 27 Jun 2008
Holy crap. That FWT demo is seeeeexy~
It's amazing how much you can cram in there in under 400 lines with that .add() sugar! And unlike common claims in Ruby ("A blog in under 400 lines, because there's already a blog library for you to use"), this is legitimate. It's the same basic tools as a Java programmer would have (and understand), but the new syntax lets you really pack it in there in a natural, readable way.
Incidentally, while typing FWT, I almost misspelled it. It gives me a good idea for marketing the library: FWT FTW (Fan Widget Toolkit for the win!)