Hello, All, How do you perceive Bigloo? Do you see it as just an implementation of scheme or as its own language, albeit heavily based on/inspired by scheme? I ask because, personally, I am increasingly seeing it as a separate language and am wondering if it would be beneficial to promote it as such. For example, although it is generally straight forward to port scheme code to Bigloo, it often is sub-optimal without modification to properly support Bigloo's module system, macros support (especially when used with libraries), and type system. Additionally, some traditional scheme features, such as call/cc, are inefficiently supported in Bigloo making code relying on them impractical. Conversely, code targeting Bigloo in my experience is difficult to move to other scheme systems unless it forfeits all of the extensions (modules, type annotations, object systems, etc...) that make Bigloo a practical language for my development needs. Further, by claiming to be a scheme, Bigloo is often compared to other scheme implementations in a manner which fails to highlight its strengths. For example, https://ecraven.github.io/r7rs-benchmarks/ compares the performance of a number of scheme implementations, and while Bigloo ranks fairly well, I am confident that if the Bigloo versions of the benchmark programs were written in a more idiomatic Bigloo style, leveraging type annotations and eschewing call/cc, it would have an even better showing.
So, would distancing Bigloo from scheme in a manner similar to what Racket has done open opportunities for differentiating, growing, and popularizing Bigloo? I am curious to hear your thoughts. Best Regards,Joseph Donaldson
