Home
Bob Carpenter edited this page Oct 21, 2016
·
71 revisions
Pages 58
- Home
- Adding a Gaussian Process Covariance Function
- CloudStan functional specification
- Code Quality
- Coding Style and Idioms
- Compiler and OS Detection Macros for Cpp
- Complex ODE Based Models
- Continuous Integration Testing
- Contributing New Functions to Stan
- Cpp11 Upgrade
- Design: Consolidated Output for Sample, Optimize, ADVI, and Diagnose
- Dev: Git Process
- Dev: Tricks
- Developer process overview
- Development Testing: Tools and Procedures
- Documentation Organization
- Frequently Encountered Problems
- Functional Spec: List Tuple types
- Functional Spec: Sparse Matrix Data Types
- Functionals spec
- Heuristic Integration Testing of MCMC Samplers
- How to Cite Stan
- How to Write Doxygen Doc Comments
- How to Write Unit Tests with GoogleTest
- include what you use
- Installing Older Versions of Stan and RStan
- Introduction to Stan for New Developers
- Jenkins
- JSON for model data and parameters
- Logging Spec
- Longer Term To Do List
- MLE and MML Design
- Model Concept
- ODE Integrator Support
- Output format
- Parallelism in Stan
- Parallelism using MPI in Stan
- Parameter Labeling Specification
- Prior Choice Recommendations
- Process: upgrade version numbers
- Protocol Buffers for serialization of input data, output samples, initial values, input parameters, and output messages,
- Ragged array spec
- Services Refactor Design Document
- Stan 3 Density Notation and Increments
- Stan 3 Unified Interface
- Stan Advertising Webpages
- Stan Best Practices
- Stan Cpp API Refactor
- Stan Development Meeting Agenda
- Stan Parser Pedantic Mode
- Standalone Generated Quantities: Functional Specification
- Supported C Compilers and Language Features
- Testing framework
- Testing Stan using Gnu Make and Python
- Testing: Continuous Integration
- User Interface Guidelines for Developers
- Where do I create a new issue
- Yeti Cluster
- Show 43 more pages…
Clone this wiki locally
Welcome!
This is the top-level Wiki for the Stan project as well as the Wiki for the stan-dev/stan repository. Most of the content is aimed at developers, though some may be of interest to users. If you're not a Stan developer or thinking of becoming one, you're probably looking for:
There are a few remaining user-facing Wiki pages that haven't been moved to the web site:
- Prior choice
- Where do I report bugs or request features?
- Frequently encountered problems
- Installing older versions
To-Do List
Stan Meetings
GitHub Repositories and Submodule Relationships
The development for the math library, language and algorithms, and interfaces are arranged into the following repositories with arrows indicating submodule inclusions.
math <- stan <- pystan
<- rstan <- rstanarm
<- cmdstan <- statastan
<- matlabstan
<- stan.jl
<- MathematicaStan
Currently, the stan repo includes the language, the algorithms, and the service API for the interfaces. There are additional repos for tools such as the emacs mode, R plotting, R Shiny interface, web pages, etc.
Developer Process
Process
New Functions
Code Style
Testing
- Testing framework
- Testing tools and procedures
- Googletest for unit tests
- Python unit test script
- Jenkins for continuous integration
- Continuous integration (1)
- Continuous integration (2)
Miscellaneous
Feature Specifications
Language
- Ragged arrays
- Tuple data type
- Sparse matrix data type
- Functionals and higher-order functions
- Stan 3 density notation and increments
- Parameter labeling
- Parser pedantic mode
Interfaces
- Services refactor
- CloudStan
- Logging
- Log levels and consolidated output across interfaces
- Stan 3 unified interface
- Stan C++ API refactor
I/O
Algorithms
Documentation
Developer Miscellany
- Compiler and OS detection in C++
- C++ 11
- Helpful tricks
- Include what you use
- Model C++ concept
- ODE integrator support
- Developer UI guidelines
- Yeti cluster at Columbia