Arc Forumnew | comments | leaders | submit | nupa's commentslogin
2 points by nupa 36 days ago | link | parent | on: Noob resources for Arc/Anarki?

As of Python 3.7 at least, it comes with pip package manager and IDLE ide already installed. Yeah, you can use other tools, but it comes with the bare minimum all right there in the installer -- everything "just works" in a way I've never gotten with a lisp to date.

Although someone recently suggested I try Portacle, which is common lisp bundled with emacs and quicklisp already set up. That's definitely got my interest.

I still wish it was as "elegant" as arc, but maybe I'll find out it's complicated for good reason. We'll see.

reply

2 points by akkartik 36 days ago | link

Interesting, I didn't realize IDLE comes bundled with Python. Looks like it came out in Python 2.6! https://docs.python.org/2.6/library/idle.html. That's from 2008.

Bundling a package manager for Anarki would be a little like being all dressed up with nowhere to go. There just aren't any libraries outside of the repo, to my knowledge. The community tends to add code directly to the repo since anyone can easily get commit access. That seems more elegant than a package manager, at least for this stage of Anarki's life.

reply

3 points by nupa 35 days ago | link

I suppose that's fair. I guess I'm just angsty because arc clearly delivers on the promised elegance of lisp better than common lisp does, but arc isn't yet at a point where I can just press play and start using it to automate everything. Someday I hope to get to a point where I can contribute to anarki myself and make it into the power tool I know it ought to be, but I'm still at the stage where build tools scare me and everything seems needlessly complicated.

reply

1 point by akkartik 35 days ago | link

I'm not following "..just press play and start using it to automate everything." Is there a specific task you're trying to use Arc for?

It's definitely true that Arc has lots of deficiencies when it comes to tooling. We're not going to fix them all at once. So if you have suggestions for the most important three (or dozen!) tools you'd like it to provide, I'd love to see them. More specific tool suggestions are superior here to general ones. "Package manager" means wildly different things and has wildly different responsibilities in different contexts and languages and platforms. So I'd particularly like to see suggestions that talk about a specific situation that applies to you. "In ___ context, If I run ___, Arc should ___."

reply

2 points by krapp 35 days ago | link

>"Package manager" means wildly different things and has wildly different responsibilities in different contexts and languages and platforms

I disagree. Most package managers for most languages share the same core functions and responsibilities: import and export code (likely from or to a repo), organize code into "packages" or "applications" according to some hierarchy, describe dependencies for packages using metadata and manage those dependencies when importing or updating.

The "special sauce" between them is in the way packages are defined and the metadata, and the way dependencies are handled, and those are details the Arc community could argue about until the heat death of the universe. But ~90% of what new people will want from Arc is to import News as an application or import libraries into their own local version of News.

reply

2 points by akkartik 27 days ago | link

Hmm, we've had this conversation a few times, and I think I may be unfairly holding others back. To reiterate the obvious, you should absolutely feel free to create a package manager in Anarki. The way you put it suggests it may not even be that much work for a rudimentary tool. Why not try it? Let a thousand flowers bloom :)

reply

2 points by krapp 26 days ago | link

>The way you put it suggests it may not even be that much work for a rudimentary tool.

From what little I know, it would be an exercise in suffering [0,1] and that's not even getting into arguments over how versioning should work. But I still want to do it... eventually.

I kind of suspect it would be pointless without some changes to the language itself which I don't know how to implement myself yet, and I don't want to just wait for other people to do the work. Basically, I don't think we can have useful packages until we can do something about the possibility of packages being able to globally redefine things and create unintended havoc. Namespaces would be nice too.

I am hoping to get something like plugins working in the forum, though. I've already combined the repo and what was the plugin manager and I've been trying to get hooks to work through it so that it would be possible to 'plug' scripts in or out of those hooks during runtime. It might also be useful as a way to add updates by hotpatching the existing code (which is really the only valid use I can even think of for being able to redefine things in Arc.)

Maybe, if that ever gets anywhere, something like a package manager can emerge from it.

[0]https://medium.com/@sdboyer/so-you-want-to-write-a-package-m...

[1]https://news.ycombinator.com/item?id=11088125

reply

3 points by shader 26 days ago | link

I'm actually somewhat intrigued with the idea of using guix[0] as a language package manager. It has really nice facilities for setting up "environments" that contain a set of packages, so you can use it for bundling together all of the deps needed to build a particular application. As a bonus, it uses scheme as its configuration language :)

It wouldn't solve arc side of actually loading packages, which probably still needs work, but it should work pretty well at managing them.

____

[0] https://www.gnu.org/software/guix/

reply

2 points by nupa 80 days ago | link | parent | on: Noob resources for Arc/Anarki?

Thanks for the advice! I figured I was just missing something, but if it doesn't exist yet then that's reasonable enough.

I've heard of foreign function interfaces, does Arc have one of those?

Regardless, I'm sort of getting the impression that Arc is something I should come back to someday when I'm able to contribute tooling to it -- it's an amazing core but not much else.

-----

2 points by krapp 80 days ago | link

>I've heard of foreign function interfaces, does Arc have one of those?

If Racket interop counts, then yes, albeit not seamlessly.

>it's an amazing core but not much else.

Yeah, it's mostly News and some random experiments. Fun to mess around with, though.

-----

3 points by nupa 106 days ago | link | parent | on: Running in DrRacket?

Thanks! And yes I'm on windows, although that command didn't work at first -- protip, you can't run it from a powershell prompt, it has to be a cmd prompt. Weird.

-----

2 points by rocketnia 106 days ago | link

Interesting, 'cause I even tested it at a powershell prompt to make sure before I posted. What problems were you seeing?

-----

2 points by nupa 80 days ago | link

Apologies, I just saw this reply now. It looks like this:

    PS C:\git\anarki> .\arc
    Program 'arc.cmd' failed to run: Access is deniedAt line:1 char:1
    + .\arc
    + ~~~~~.
    At line:1 char:1
    + .\arc
    + ~~~~~
        + CategoryInfo          : ResourceUnavailable: (:) [], ApplicationFailedException
        + FullyQualifiedErrorId : NativeCommandFailed

-----

2 points by rocketnia 80 days ago | link

Thanks. I'm afraid I've never encountered something like that, but I can suggest a few things just in case....

Since arc.cmd is practically a one-line script, what do you get if you try to run the `racket` executable directly, like so?

  racket -t boot.rkt -e "(anarki-windows-cli)"
I've found pretty much just one thread online where people reported a similar issue (https://github.com/Microsoft/WSL/issues/2323). People attempted various fixes in the thread, and they didn't work for everyone.

Some of the approaches they took:

- There's a diagnostic tool which some people found limited success with. It would fix the location of their temp folder. Then a few days later it would break again. Here's a link to the comment that links to that tool: https://github.com/Microsoft/WSL/issues/2323#issuecomment-31...

- One person gave detailed instructions for diagnosing and fixing permission issues, in case that's what it is: https://github.com/Microsoft/WSL/issues/2323#issuecomment-41...

- It seems it might be some difference depending on whether the account you're doing this with is roaming or an administrator. At least, a lot of people in the thread thought it would make a difference. Maybe your command prompt works with Arc because it's a different user.

If you find out any more about what's going on, I hope you'll keep us in the loop. :)

Of course, since you already have this working via the command prompt, it's understandable if you prefer not to mess with it.

-----