• Stars
    star
    256
  • Rank 159,219 (Top 4 %)
  • Language
    CSS
  • License
    Other
  • Created about 11 years ago
  • Updated about 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A version of Pharo by Example for Pharo 50.

Build Status

Introduction

Pharo by Example (vol 1) is a practical introduction for Pharo, a Smalltalk-inspired programming language, IDE and live coding enviroment. This book is an updated version of Pharo By Example for Pharo 1.4.

This version focuses on the latest stable version of Pharo (Pharo 5.0, at the time of writing). The most recent version is Pharo by Example 9 available at

You can find more info and documentation about Pharo at https://github.com/SquareBracketAssociates/NewPharoByExample9. Pharo.org.

Latest Builds

  • Individual chapters can also be viewed online or be downloaded in pdf format in the following section:

Chapter Progress

Chapter Status Latest Link reference
1 - Preface Revised, copyedited html pdf
2 - Pharo Tour Revised, copyedited html pdf Chapter *: A Quick Tour of Pharo>../PharoTour/PharoTour.pillar@cha:tour*
3 - A First Application Revised, copyedited html pdf Chapter *: A First Application>../FirstApplication/FirstApplicatioin.pier@cha:firstApp*
4- Syntax in a Nutshell Revised, copyedited html pdf Chapter *: Syntax in a Nutshell>../SyntaxNutshell/SyntaxNutshell.pillar@cha:syntax*
5 - Understanding Messages Revised, copyedited html pdf Chapter *: Understanding Message Syntax>../UnderstandingMessage/UnderstandingMessage.pillar@cha:messages*
6 - The Pharo Object Model Revised, copyedited html pdf Chapter *: The Pharo Object Model>../PharoObjectModel/PharoObjectModel.pier@cha:model*
7 - Environment Revised, copyedited html pdf Chapter *: The Pharo Environment>../Environment/Environment.pillar@cha:env*
8 - Sharing Code and Source Control Revised, copyedited html pdf Chapter *: Sharing Code and Source Control>./SharingCode/SharingCode.pillar@cha:sharingCode*
9 - SUnit Revised, copyedited html pdf Chapter *: SUnit>../SUnit/SUnit.pillar@cha:sunit*
10 - Basic Classes Revised, copyedited html pdf Chapter *: Basic Classes>../BasicClasses/BasicClasses.pier@cha:basicClasses*
11 - Collections Revised, copyedited html pdf Chapter *: Collections>../Collections/Collections.pier@cha:collections*
12 - Streams Revised, copyedited html pdf Chapter *: Streams>../Streams/Streams.pillar@cha:streams*
13 - Morphic Revised, copyedited html pdf Chapter *: Morphic>../Morphic/Morphic.pier@cha:morphic*
14 - Seaside By Example Needs revision html pdf Chapter *: Seaside By Example>../Seaside/Seaside.pier@cha:seaside*
15 - Classes and Metaclasses Revised, copyedited html pdf Chapter *: Classes and Metaclasses>../Metaclasses/Metaclasses.pillar@cha:metaclasses*
16 - Reflection Needs revision html pdf Chapter *: Reflection>../Reflexion/Reflexion.pier@cha:reflection*
17 - Regular Expressions in Pharo Needs revision html pdf Chapter *: Regular Expressions in Pharo>../Regex/Regex.pier@cha:regex*

Contributing to Updated Pharo By Example (vol 1)

This book follows the fork-and-pull GitHub workflow for contributions:

  1. Fork the repository

  2. For each modification, create a quick topic branch named in the form of...

    • initials_ChapterName_my_topic_description

    example: git checkout -b dz_PharoTour_update_screen_snapshots

  3. Make commits to that branch. When you're ready, make a Pull Request

  4. The request will receive comments/corrections, and will be merged into the main repo.

More info about contributing to this book (including Pillar syntax, setting up LaTeX, etc) can be found in the CONTRIBUTING.md file.

Please send any comments, suggestions, or questions to the pharo-dev mailing list (see also the Get Help section of Pharo.org).

Style Guide

This book is written in Pillar markup. If you are not familiar with it please check the pillar-documentation. See also:

Images

Images (screenshots and diagrams) use Pillar image syntax:

+Image caption>file://figures/filename.png|width=80|label=fig:label+

For example:

+A stream positioned at its beginning.>file://figures/abcde.png|width=100|label=fig:abcde+
  • The width parameter is required (percentage of the screen).
  • Place the files in the figures directory of the chapter they are in.
  • The label should begin with fig:
  • When taking screenshots (PNG format), please compress them (you can use TinyPNG for easy and lossless compression)

To reference an image: Figure *@fig:abcde* (renders to Figure 3.8, for example).

Scripts and Code Blocks

For scripts, method definitions and other code blocks:

[[[language=smalltalk|caption=Hello World in a Transcript|label=src:helloWorld
	Transcript show: 'hello world'; cr.
]]]

Note that the label starts with src:.

To reference code blocks, use Script *@scr:helloWorld* (similar to Figures).

Chapter and Section Reference Links

Whenever you refer to other chapters of the book, please use the Pillar internal link syntax and the chapter name. (The cha: in the id is to denote that it's a chapter, to differentiate from a section id.) For example:

Chapter *: A Quick Tour of Pharo>../PharoTour/PharoTour.pillar@cha:tour*

A list of chapter ref link code is provided, to easily copy and paste, in the Chapter Progress / table of contents above.

General Style Guidelines

Please keep in mind the following:

  • When possible, hard-wrap lines at 80 characters (e.g. Meta-Q in Emacs, Cmd-Alt-Q in Atom). This is a common open-source documentation convention, and helps with viewing GitHub-generated diffs. However, due to Pillar limitations, ordered and unordered list elements must be on a single line to be correctly parsed. Those can be left un-wrapped.
  • Only one space between sentences.
  • Avoid periods in section titles. (For example, this section is titled "Style Guide" and not "Style Guide.")
  • All inline code mentions (objects, messages, variables, packages) should use the Pillar monospace notation: ==Object==.

License

This book is licensed under a Creative Commons Attribution-ShareAlike 3.0 license.

Other Books

Deep Into Pharo (Pharo By Example vol 2)

Deep into Pharo (source code) is the second volume of a series of books covering Pharo. Whereas the first volume is intended for newcomers, this second volume covers deeper topics.

Enterprise Pharo: A Web Perspective

Enterprise Pharo: A Web Perspective (latest PDF, source code) is the third volume of the series. It covers enterprise libraries and frameworks, and in particular those useful for doing web development.

More Repositories

1

PolyMath-book

PolyMath - An Introduction to numerical computing with Pharo
TeX
75
star
2

EnterprisePharo

A new book describing Pharo librairies to make business.
CSS
71
star
3

PharoByExample-english

Open source LaTeX of Pharo By Example
TeX
66
star
4

LearningOOPWithPharo

Learning Object-Oriented Programming with Pharo
TeX
65
star
5

SqueakByExample-english

Open source LaTeX of Squeak By Example
TeX
53
star
6

ExploringVMs

CSS
44
star
7

DeepIntoPharo

TeX
39
star
8

BuildingUIWithSpec

A book to show how to build UI with the Spec 1.0 framework.
CSS
37
star
9

TinyBlogTutorial

A tutorial in French on Pharo's web stack
Smalltalk
35
star
10

PharoByExample-japanese

Shell
35
star
11

OORP

Object-Oriented Reengineering Patterns
TeX
34
star
12

PharoByExample9

The version of Pharo by Example for Pharo 90
CSS
30
star
13

Booklet-PharoWithStyle

How to write well Pharo code?
CSS
28
star
14

DynamicWebDevelopmentWithSeaside

Dynamic Web Development with Seaside
TeX
23
star
15

PharoForTheEnterprise-english

[MIGRATED] Moved to other places
22
star
16

BuildingApplicationWithSpec2

A book to build user interfaces using the Spec 2.0 framework.
CSS
21
star
17

PharoByExample80

A new version of Pharo by example for Pharo 8.0
CSS
19
star
18

Booklet-DataFrame

A little booklet to master dataframe
CSS
16
star
19

Booklet-Smacc

A booklet on the Smacc compiler compiler framework
CSS
14
star
20

Booklet-uFFI

about the new Unified FFI frameworks
CSS
14
star
21

Booklet-ConcurrentProgramming

The present some concurrent programming abstractions in Pharo.
CSS
13
star
22

ArchiveOONumericalMethods

archive of the oo numerical book
TeX
10
star
23

NewPharoByExample9

The PharoByExample9 repository since to have a broken history. Now the book versioning is moved to this repository to get work done.
CSS
10
star
24

PharoInProgress

To store chapter in progress for all the books. Once the chapters are ready for reviews we can move them to Pharo-ReadyForReviews
CSS
9
star
25

Booklet-APharoThingsTutorial

PharoThings supports live development of IoT related application.
CSS
8
star
26

FunWithPharo

CSS
8
star
27

PharoByExample-french

French translation of Pharo By Example
TeX
8
star
28

PharoLaserGameTutorial

A pharo port of the http://squeak.preeminent.org/tut2007/html/index.html excellent tutorial
HTML
8
star
29

Booklet-TestingInPharo

This booklet describes SUnit and DrTests.
HTML
7
star
30

Booklet-ManagingCode

This booklet explains you how to manage your code with Pharo
CSS
7
star
31

BuildingObjectLanguages

A book on various object models.
TeX
6
star
32

books.pharo.org

books.pharo.org website
TeX
6
star
33

PharoByExample-spanish

Spanish translation of Pharo By Example
Ruby
6
star
34

Booklet-PharoGraphs

CSS
6
star
35

TinyBlog-EN

'Create your first web app with Pharo' book
CSS
6
star
36

PharoLimbo

A store for all the chapter draft - so that they do not pollute all the other repositories.
TeX
6
star
37

Booklet-Magritte

A new booklet on magritte
CSS
6
star
38

Booklet-Scraping

How to do HTML scraping using XML and XPath?
HTML
6
star
39

Booklet-PharoVirtualMachine

Draft of a documentation of the Pharo Virtual Machine
TeX
5
star
40

PharoByExample-german

Smalltalk
5
star
41

booklet-Commander

To illustrate the Commander v2.0 framework
CSS
5
star
42

Booklet-PublishingAPillarBooklet

How to publish a Pillar Booklet
CSS
5
star
43

Booklet-BuildingMemoryGameWithBloc

CSS
4
star
44

Booklet-Glorp

Glorp is an object relational mapper.
CSS
4
star
45

PharoTheHiddenTreasures

To group all the little chapters that are hanging around... and worth to read.
CSS
4
star
46

PharoByExample-korean

Korean translation of Pharo By Example
4
star
47

PatternsOfDesign

The following of Learning OOP, Design and TDD but focusing more on Design
CSS
4
star
48

SqueakByExample-korean

Korean translation of Squeak by Example
Smalltalk
4
star
49

Booklet-FamixNG

A booklet to learn how to use the FamixNG meta-model generator.
CSS
4
star
50

Booklet-CORMAS

A booklet on the CORMAS multi-agent simulation framework
CSS
4
star
51

Booklet-PharoForPythonists

To present Pharo to Python developers
CSS
3
star
52

Booklet-LLVMCompilationWithPharo

CSS
3
star
53

Booklet-ClapCommandLine

A booklet about the command line argument parser for Pharo
CSS
3
star
54

PharoByExample-portuguese

Portuguese translation of Pharo By Example
3
star
55

NewToolsInPharo

A collaborative book on new tools in the Pharo ecosystem
TeX
3
star
56

Booklet-AMiniSchemeInPharo

Describe the implementation a little scheme interpreter in Pharo as pretext to play with a language interpreter.
CSS
3
star
57

CodeOfSpec20Book

Smalltalk
3
star
58

SqueakByExample-english-olpc

OLPC specific variant of Squeak By Example
Smalltalk
2
star
59

Booklet-AI-Technics

A future little book on AI technics
CSS
2
star
60

BookBuilderDashboard

To get an overview of the book building status
2
star
61

booklet-Willow

A nice little book to present willow a cool seaside extension to support client side web applications
CSS
2
star
62

PharoCover

Sources for the covers of Pharo By Example books
2
star
63

Booklet-Voyage

Voyage is a layer to manage document oriented noSQL database
CSS
2
star
64

MasteringMoose

A book to understand and master the Moose platform
CSS
2
star
65

Magritte

A booklet on magritte
CSS
2
star
66

Booklet-FunWithInterpreters

TeX
2
star
67

SqueakByExample-german

German translation of Squeak By Example
Smalltalk
2
star
68

Booklet-Graphics

CSS
2
star
69

SquareBrackets

Common resources for Square Bracket Associates
1
star
70

Booklet-XML

To describe some solutions related to XML in Pharo.
CSS
1
star
71

SqueakByExample-french

French translation of Squeak By Example
Smalltalk
1
star
72

PharoReadyForReviews

This project contains chapters that we are ready for reviews or that can go in books under construction.
CSS
1
star
73

Booklet-Pharo-Debugger

A booklet about the Pharo debugging tools
CSS
1
star
74

PharoWebStack

CSS
1
star
75

Booklet-Mocking

Mocks in Pharo
CSS
1
star
76

Booklet-AReflectiveKernel

A little book explaining a simple reflective kernel
TeX
1
star
77

Chest

CSS
1
star
78

Booklet-PharoChosenPieces

To describe some parts of the Pharo language
CSS
1
star
79

Booklet-Rewriter

About the parse tree rewriter of Pharo (originally developed by J. Brant and D. Roberts).
CSS
1
star
80

SquareBracketsWebSite

Sources for the web pages of Square Brackets Associates
1
star
81

Booklet-AdvancedMicroProjects

CSS
1
star
82

101-OOP

TeX
1
star
83

Booklet-CompilerEssentials

CSS
1
star
84

Booklet-TipAndTricks

To collect and explain some little way to custom Pharo.
CSS
1
star
85

Booklet-DNA

CSS
1
star
86

Booklet-Reflectivity

A little book on reflectivity the reflective layer of Pharo
CSS
1
star
87

LearningOOPSolutions

CSS
1
star
88

Booklet-ZincHTTP

Zinc HTTP
CSS
1
star
89

booklet-CountryTutorial

A little exercise to have fun with countries and pharo of course!
CSS
1
star