Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Explain disj #47

Open
wants to merge 43 commits into
base: master
Choose a base branch
from
Open

Explain disj #47

wants to merge 43 commits into from

Conversation

yuchen1984
Copy link

In the page where (defn eliminate [grid cells value-to-eliminate]
...) is explained, a function called "disj" suddenly comes out. Bette explain that a bit. it seems "assoc" has also not been explained before it is used at the first time..

@yuchen1984
Copy link
Author

explain a bit more about the usage of "recur", which seems quite important

@ray1729
Copy link

ray1729 commented Jul 10, 2014

I suspect this pull request was opened in error - there's a whole lot of stuff in my fork you don't want to merge into the main branch. Sorry for the noise.

@Raynes
Copy link
Owner

Raynes commented Jul 10, 2014

@ray1729 Out of curiosity, what are you doing with your fork? This project is still being maintained and I'm super duper open to improvements/changes.

@ray1729
Copy link

ray1729 commented Jul 10, 2014

A colleague and I are using the Try Clojure framework to deliver a tutorial at http://devcycles.net/summer/ this coming weekend. I've extended the content to ~50 pages, working towards a Sudoku solver. The content is all in the fork if you're interested, and the extended tutorial is up on EC2 for a while.

I made some changes to allow the content to be defined in a single HTML file (resources/public/tutorial.html) with page exit expressions in data-exitexpr attributes. These are extracted using enlive and the metadata is then available as JSON via a GET handler. The Javascript has been updated to use this, so you can now add content without touching the Javascript. There's also a small CSS change and some enlive processing of the content to allow code blocks inside pre, which allows for nicer formatting.

I suspect these changes may be of interest, but I'd have to do a little bit of work to pull them out. I'm not sure the extended tutorial is suitable for tryclj.com, as I had to increase the timeout and defn limits on the sandboxes, so it may not scale so well.

We did a trial run with the Cambridge Clojure user group today and got generally good feedback. There are still a few gaps in the explanation and I go a bit too fast towards the end, so there is still room for improvement.

We were kind of keen for this to be available as a community resource, and perhaps add other themes over time. It would be good to feed back into your main branch, so do let me know if there are any bits you're interested in.

@Raynes
Copy link
Owner

Raynes commented Jul 10, 2014

Given the imperfection of the sandboxing mechanisms tryclj uses, it crashes from time to time anyways. Heroku keeps it running. Not a real problem to increase timeout/defn limits.

All of those changes sound just fine. Let me look over your fork this weekend, but we can probably just merge it in more or less verbatim. I'd also be happy to add you as a committer to the project if we end up doing that.

@ray1729
Copy link

ray1729 commented Jul 10, 2014

That would be great - thanks! I haven't really got my head into clojail, so please pay particular attention to any changes I've made around that. I remember deleting some cleanup code that ran in a future created in make-sandbox, and I meant to go back and review whether or not that was a good thing to do.

Oh, and you won't want to merge the change to the github banner - that should point back to your repo.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants