{"id":13438363,"url":"https://github.com/probmods/webchurch","last_synced_at":"2025-03-19T18:32:51.729Z","repository":{"id":9571876,"uuid":"11485067","full_name":"probmods/webchurch","owner":"probmods","description":"A Church to Javascript compiler (DEPRECATED)","archived":false,"fork":false,"pushed_at":"2018-06-26T19:50:50.000Z","size":1392,"stargazers_count":140,"open_issues_count":18,"forks_count":15,"subscribers_count":19,"default_branch":"master","last_synced_at":"2024-08-01T03:27:08.086Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/probmods.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-07-17T19:13:43.000Z","updated_at":"2024-06-20T06:10:09.000Z","dependencies_parsed_at":"2022-08-25T21:50:32.953Z","dependency_job_id":null,"html_url":"https://github.com/probmods/webchurch","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/probmods%2Fwebchurch","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/probmods%2Fwebchurch/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/probmods%2Fwebchurch/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/probmods%2Fwebchurch/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/probmods","download_url":"https://codeload.github.com/probmods/webchurch/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":221729874,"owners_count":16871133,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-07-31T03:01:04.879Z","updated_at":"2024-10-27T20:32:08.550Z","avatar_url":"https://github.com/probmods.png","language":"JavaScript","funding_links":[],"categories":["JavaScript"],"sub_categories":[],"readme":"# webchurch [![Build Status](https://travis-ci.org/probmods/webchurch.svg?branch=master)](https://travis-ci.org/probmods/webchurch)\n\n**Note: webchurch is deprecated in favor of [webppl](http://github.com/probmods/webppl)**\n\n## Install\n\n### Dependencies\n- [nodejs](http://nodejs.org/download/) v0.10.26 (see `package.json` for npm dependencies). Some people have reported that v0.10.28 doesn't work but that switching to v0.10.26 does\n- Python (on Windows; version must be \u003e 2.5 and \u003c 3.0)\n\n### Installing with git (preferred method)\n\nIn a terminal, go to wherever you want your webchurch folder to live and run:\n\n```sh\ngit clone https://github.com/probmods/webchurch.git\ncd webchurch\ngit init ## only if you are on Windows\ngit submodule update --init --recursive\nnpm install\n./compile.sh\n```\n\nNote that you only need to run `git init` on Windows.\n\nTo pull-in and work in a particular branch (say `box2d`):\n\nlists all branches, local and remote to see what `box2d` is called on remote\n\n    git branch -a\n\nsetup local branch box2d to track remote branch box2d\n\n    git branch -b box2d remote/origin/box2d\n\nswitch to branch box2d\n\n\tgit checkout box2d\n\n### Installing without git\n\n(not good for getting updates, but useful if you can't/don't want to get git installed)\n\n1. Download the [webchurch ZIP](https://github.com/probmods/webchurch/archive/master.zip)\n2. Unarchive the zip file and go to that directory (called `webchurch-master`)\n3. Download [probabilistic-js](https://github.com/dritchie/probabilistic-js/archive/0881cd5bf2607750ede273e0408b1e957487b5e1.zip), unarchive this file, rename it to `probabilistic-js`, and move it into the `webchurch-master` folder (replacing the folder that's already there)\n4. In terminal, go to `webchurch-master` folder and run the following commands:\n\n        npm install\n        ./compile.sh\n\n### Making `church` a global command\n\nIf you want to be able to call `church` from anywhere on the command line, this is what you would do:\n\n1. If you don't alreay have a directory `~/bin`, make that directory.\n2. Add a symbolic link to the church executable:\n\n\t\tln -s path/to/webchurch/church ~/bin/\n\t\t\n3. If you don't already have a file called `~/.bash_profile`, make that file\n4. Open that file and add the line:\n\n\t\texport PATH=$PATH:~/bin\n\n5. Re-open your terminal or `source ~/.bash_profile`\n\nNow you can use the command `church` from any directory.\n\n## Usage\n\n### In a web browser\nOpen `online/index.html`. If you wish to use the `load` builtin for dynamically loading Church or Javascript libraries, you will need to access this page from the `http://` protocol rather than the `file://` protocol. We provide a simple way to do this. First, run `npm run-script server` on the command line and then point your browser to `http://localhost:8080/online/index.html`\n\n### On the command line\n`church [OPTIONS] [FILE]` will run the contents of `[FILE]`.\n\nAvailable options:\n\n- `-p, --precompile`: Turn on pre-compilation (very experimental)\n- `-a, --program-args [MESSAGE]`: Arguments to pass to program. MESSAGE is sent to Church is the `argstring` variable.\n- `-s, --seed [SEED]`: Set the seed for the random number generator.\n- `-t, --timed`: Print out timing information.\n- `-d, --desugar-only`: Apply Church desugaring without execution.\n- `-c, --compile-only`: Compile to Javascript without execution.\n- `-e, --disable-church-errors`: Disable special Church error checking and show Javascript errors instead.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprobmods%2Fwebchurch","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fprobmods%2Fwebchurch","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprobmods%2Fwebchurch/lists"}