#330 Let's assume I want to write a library for Fan ...

baurel Wed 6 Aug 2008

hi I'm not a language specialist but rather a practitioner. There is a lot of documentation and discussion about the language features of fan. To be honest - I understand not everything and I facing a lot of new concepts and unfamiliar language syntax and paradigms here. To my surprise I can't find any information and infrastucture about how to provide a library.

Some thoughts (wishes) in this regard:

1.) Documentation and guidelines about how to extend Fan with libraries composed of "native bindings" to .net and java classes

2.) A standardized way to test, document, upload and discuss the libraries in public repository (something like cpan)

3.) A system that assures building, installing, configuring libraries on different platforms (something like rubygems or dsss for the D Language)

If you intend to make Fan available to handle everyday tasks for a broader range of programmers and situations, I think high quality libraries are helping.

ben

tactics Wed 6 Aug 2008

Brian has said a few times on the forum already that he wants to do a RubyGems-like distribution tool for Fan. I think these are a must-have for any serious language nowadays. It's still a ways away, though.

brian Wed 6 Aug 2008

Ben,

I think the current focus on language issues is probably because a) early interest in a programming language tends to be by language enthusiasts and b) we need to get the language solid before moving on to tooling and libraries. Fan is still quite young, but I expect we'll quickly move towards the more practical problems of libraries and distribution issues.

For starters Fan comes with the notion of pods which is the unit of deployment, versioning, and modularity. Installing pods takes nothing more dropping them in your lib/fan directory. This will be a firm foundation for future work.

Documentation and guidelines about how to extend Fan with libraries composed of "native bindings" to .net and java classes

I apologize that this documentation isn't available yet. Although it is currently my top priority for the next chapter to write.

A standardized way to test, document, upload and discuss the libraries in public repository (something like cpan)

This feature is definitely on our roadmap, and part of the community infrastructure I consider necessary for Fan's success.

A system that assures building, installing, configuring libraries on different platforms (something like rubygems or dsss for the D Language)

This is also planned, and will work in conjunction with the public repository above (as well as private repositories). Currently on the list of priorities it sits behind some other work I consider more important like IDE support and libraries for XML and HTTP. But I hope to see something like this available in 2009.

If people are interested in, planning on, or actually have Fan libraries then please let me know. Priority for library management is only low right now because Andy and I are the only one developing libraries (and those are for the core distribution).

alexlamsl Mon 11 Aug 2008

Personally, I am planning to rekindle my project on an expression evaluation framework in Fan once I am done with my new house. (Never underestimate the sum of ineffiencies of UK businesses!)

I had a go in Java 2 years ago, and eventually gone stale due to the huge efforts of implementation to compensate for Java's type system.

Login or Signup to reply.