Arc Forumnew | comments | leaders | submitlogin
Is there a repository of Arc libraries?
2 points by svetlyak40wt 3716 days ago | 6 comments
Is there a repository of Arc libraries like the Planet for Scheme?


3 points by thaddeus 3716 days ago | link

There's a library directory for Anarki which seems to be a common place for the user submitted libraries.

https://github.com/arclanguage/anarki/tree/master/lib

-----

2 points by shader 3706 days ago | link

Indeed. I've put several libraries there myself.

I might be interested in working on something like packages.el for emacs that supports grabbing arc libs directly from github.

Dependency management may be somewhat tricky, but we could leave that up to the library creators to manage. Or work on yet another package system...

-----

2 points by zck 3716 days ago | link

There isn't. I was considering writing something like quicklisp for Arc, but the downside is that with no module system, recursive loading of dependencies will break two different pieces of code that depend on different versions of a library.

We should probably at least make a wiki page with libraries, though.

-----

2 points by svetlyak40wt 3716 days ago | link

Why there isn't any module system yet?

-----

4 points by rocketnia 3716 days ago | link

Historically speaking, Arc was put forward as a language for experimentation. If you want to package up code in a squeaky clean format for others to use who don't care about implementation details, you're doing something other than experimentation; you're publishing a product people would supposedly rely on.

Moreover. not even the Arc language is stable (or so this website has always said). If it encouraged people to package up their stable code, that would prove deceptive once the whole foundation fell away. This happened to Anarki when Arc 3 was released; the community had built up lots of Arc 2 code, and not much of that was ported to work on Arc 3.

However, Arc is not without module systems. The first thing I did in Arc was build some namespace macros with explicit imports and exports for my own benefit (Lathe). Andrew Wilcox made "the hackinator" which I think could download Arc programs from a Web-hosted manifest file, most often from GitHub.

More recently, Arc/Nu is an Arc implementation with rich support for first-class namespaces, along with several utilities for modular loading of Arc code that's written in the usual sequence-of-commands style. Arc/Nu is probably the best platform to publish stable modules for, since it can load alternate namespaces to achieve backwards compatibility.

-----

2 points by svetlyak40wt 3715 days ago | link

Thank you for detailed answer, now reasons are more clear to me!

-----