Your SlideShare is downloading. ×
x x x x x x
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

x x x x x x

353

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
353
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Transcript

    • 1. Applied RebarCommon Patterns for Usage
    • 2. GoalsExamine common patterns for organization ofErlang applications/librariesDiscuss tradeoffs
    • 3. OTP TerminologyApplication 1..n modules + resource file (.app)Release 1..n applications + resource file (.rel)System (aka “Target System”) Release + Embedded ERTS
    • 4. How rebar worksThree module chains: app, rel, anyApp dir test: ebin/*.app or src/*.app.srcRel dir test: reltool.config
    • 5. 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
    • 6. 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
    • 7. Simple AppFollows standard conventions src, ebin, include, priv, c_srcMay have deps in rebar.configExamples: cowboy, gproc, folsom
    • 8. Escripted AppSingle appMay have dependenciesExample: basho_bench
    • 9. Composite AppMultiple apps apps/app1..nMay have dependenciesreltool.config in subdir rel/reltool.config
    • 10. Packaged SystemNo apps in repo; all apps are dependenciesReltool.config in subdirPredominant example: Riak
    • 11. The FutureTBD. :)

    ×