|From:||Brandon J. Van Every|
|Subject:||Re: [Chicken-users] comparison of Chicken and Bigloo?|
|Date:||Fri, 30 Mar 2007 16:09:49 -0700|
|User-agent:||Thunderbird 188.8.131.52 (Windows/20070221)|
bryan rasmussen wrote:
You'd need to Google for recent comparisons / benchmarks. I don't know what's going on in the Great Computer Language Shootout universe anymore. I can tell you some basic differences between Bigloo and Chicken.
- Bigloo is much more aggressive from a compilation performance standpoint. It shares an implementation lineage with the OCaml compiler.
- Bigloo has a notion of static type annotations, owing to its shared history with OCaml. Chicken does not.
- Bigloo doesn't have first class continuations by default. There's an optional compiler flag for it, and I don't know what consequences that has for performance or functionality.
- Bigloo's community is noticeably smaller than Chicken's, with fewer resources going into things like organizing wikis, developing extensions, maintaining cross-platform builds, etc. Chicken's "eggs" are a clear advantage here.
- Bigloo's license is GPL. Chicken's is BSD.
- Bigloo has C, Java, and C# backends. Chicken talks to C, and can talk to C++ to some degree also. Chicken has SWIG support, Bigloo does not. http://www.swig.org/
- Bigloo's build is based on GNU Autoconf. The Visual Studio build of Bigloo is not in their source pool, and judging by the past 2 years of observation, never will be. It is maintained by Yannis Bres, who does good work, but that work lags the main Bigloo releases. In contrast, Chicken's build is based on CMake http://www.cmake.org It runs on many
platforms with 1 build, including Visual Studio, MinGW / MSYS, Cygwin, Linux, and Mac OSX. The build is in the source pool, is publically available / fixable, and is always up to date with current Chicken releases on all platforms.
- Bigloo provides binaries for Fedora, Debian, and MS Visual Studio platforms. Chicken does not, you have to build from source.
- Bigloo may not provide the binary you want for your platform. For instance, Cygwin and MinGW / MSYS. In that case you'll have to build Bigloo from source. Back in the day, that required a small amount of black magic due to compiler flag quoting or some such. I think the answer was to double the number of slashes specified or something. I don't know if it's a problem anymore, if anyone fixed that wart. There's stuff in their mailing list archives about it in any event.
- Manuel Serrano, the principal Bigloo author, and Felix Winkelmann, the principal Chicken author, are both easygoing, easy to work with, and responsive to community bug reports + improvement requests or offers.
Brandon Van Every
|[Prev in Thread]||Current Thread||[Next in Thread]|