x x x x x x
Upcoming SlideShare
Loading in...5
×
 

x x x x x x

on

  • 390 views

 

Statistics

Views

Total Views
390
Views on SlideShare
390
Embed Views
0

Actions

Likes
0
Downloads
1
Comments
0

0 Embeds 0

No embeds

Accessibility

Upload Details

Uploaded via as Apple Keynote

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n

x x x x x x x x x x x x Presentation Transcript

  • Applied RebarCommon Patterns for Usage
  • GoalsExamine common patterns for organization ofErlang applications/librariesDiscuss tradeoffs
  • OTP TerminologyApplication 1..n modules + resource file (.app)Release 1..n applications + resource file (.rel)System (aka “Target System”) Release + Embedded ERTS
  • How rebar worksThree module chains: app, rel, anyApp dir test: ebin/*.app or src/*.app.srcRel dir test: reltool.config
  • Helper bitsRebar dependencies Source-based download/compilation {deps, [{App, {git, Url, Tag}}]}Reltool can automagically generate a release +system from a config file Rebar wraps reltool and uses convention of reltool.config
  • A bit of philosophy...Apps should be compiled from source Ensures correctness for platform/ERTS version Allows isolation of dependenciesNo central repo of applications Curation not required Curation not provided, either
  • Simple AppFollows standard conventions src, ebin, include, priv, c_srcMay have deps in rebar.configExamples: cowboy, gproc, folsom
  • Escripted AppSingle appMay have dependenciesExample: basho_bench
  • Composite AppMultiple apps apps/app1..nMay have dependenciesreltool.config in subdir rel/reltool.config
  • Packaged SystemNo apps in repo; all apps are dependenciesReltool.config in subdirPredominant example: Riak
  • The FutureTBD. :)