diff options
| author | Divay Prakash <divayprakash3@gmail.com> | 2018-10-27 16:08:16 +0530 | 
|---|---|---|
| committer | Divay Prakash <divayprakash3@gmail.com> | 2018-10-27 16:08:16 +0530 | 
| commit | ec1111c156c7420a12c5967bbd659eb61582b9cb (patch) | |
| tree | c950b8083d0ad9db695e442884df08b42851a4b9 | |
| parent | 8a80c5bfb0d913af208b47bcfaf931045e25482c (diff) | |
Fix formatting
| -rw-r--r-- | smalltalk.html.markdown | 55 | 
1 files changed, 28 insertions, 27 deletions
| diff --git a/smalltalk.html.markdown b/smalltalk.html.markdown index a253df55..57e558b2 100644 --- a/smalltalk.html.markdown +++ b/smalltalk.html.markdown @@ -11,22 +11,22 @@ contributors:  Feedback highly appreciated! Reach me at [@jigyasa_grover](https://twitter.com/jigyasa_grover) or send me an e-mail at `grover.jigyasa1@gmail.com`. - -##Allowable characters: +## Allowable characters:  - a-z  - A-Z  - 0-9  - .+/\*~<>@%|&?  - blank, tab, cr, ff, lf -##Variables: +## Variables:  - variables must be declared before use  - shared vars must begin with uppercase  - local vars must begin with lowercase  - reserved names: `nil`, `true`, `false`, `self`, `super`, and `Smalltalk` -##Variable scope: -- Global: defined in Dictionary Smalltalk and accessible by all objects in system                                 - Special: (reserved) `Smalltalk`, `super`, `self`, `true`, `false`, & `nil` +## Variable scope: +- Global: defined in Dictionary Smalltalk and accessible by all objects in system +- Special: (reserved) `Smalltalk`, `super`, `self`, `true`, `false`, & `nil`  - Method Temporary: local to a method  - Block Temporary: local to a block  - Pool: variables in a Dictionary object @@ -54,7 +54,7 @@ Transcript cr.                                              "carriage return / l  Transcript endEntry.                                        "flush the output buffer"  ``` -##Assignment: +## Assignment:  ```  | x y |  x _ 4.                                                      "assignment (Squeak) <-" @@ -73,7 +73,7 @@ y := x deepCopy.                                            "copy object and ins  y := x veryDeepCopy.                                        "complete tree copy using a dictionary"  ``` -##Constants: +## Constants:  ```  | b |  b := true.                                                  "true constant" @@ -91,7 +91,6 @@ x := $ .                                                    "character constant  x := #aSymbol.                                              "symbol constants"  x := #(3 2 1).                                              "array constants"  x := #('abc' 2 $a).                                         "mixing of types allowed" -  ```  ## Booleans: @@ -130,7 +129,6 @@ b := x isFloat.                                             "test if object is f  b := x isNumber.                                            "test if object is number"  b := $A isUppercase.                                        "test if upper case character"  b := $A isLowercase.                                        "test if lower case character" -  ```  ## Arithmetic expressions: @@ -188,7 +186,6 @@ x := Float infinity.                                        "infinity"  x := Float nan.                                             "not-a-number"  x := Random new next; yourself. x next.                     "random number stream (0.0 to 1.0)"  x := 100 atRandom.                                          "quick random number" -  ```  ##Bitwise Manipulation: @@ -205,7 +202,6 @@ x := 16r80 highbit.                                         "position of highest  b := 16rFF allMask: 16r0F.                                  "test if all bits set in mask set in receiver"  b := 16rFF anyMask: 16r0F.                                  "test if any bits set in mask set in receiver"  b := 16rFF noMask: 16r0F.                                   "test if all bits set in mask clear in receiver" -  ```  ## Conversion: @@ -221,7 +217,6 @@ x := 3.99 storeString.                                      "convert object to s  x := 15 radix: 16.                                          "convert to string in given base"  x := 15 printStringBase: 16.  x := 15 storeStringBase: 16. -  ```  ## Blocks: @@ -245,7 +240,8 @@ Transcript show: (x value: 'First' value: 'Second'); cr.    "use block with argu  ## Method calls:  - unary methods are messages with no arguments  - binary methods -- keyword methods are messages with selectors including colons standard categories/protocols:                     - initialize-release    (methods called for new instance) +- keyword methods are messages with selectors including colons standard categories/protocols: +- initialize-release    (methods called for new instance)  - accessing             (get/set methods)  - testing               (boolean tests - is)  - comparing             (boolean tests with parameter @@ -254,6 +250,7 @@ Transcript show: (x value: 'First' value: 'Second'); cr.    "use block with argu  - updating              (receive notification of changes)  - private               (methods private to class)  - instance-creation     (class methods for creating instance) +  ```  | x |  x := 2 sqrt.                                                "unary message" @@ -268,7 +265,7 @@ Transcript                                                  "Cascading - send mu  x := 3 + 2; * 100.                                          "result=300. Sends message to same receiver (3)"  ``` -##Conditional Statements: +## Conditional Statements:  ```  | x |  x > 10 ifTrue: [Transcript show: 'ifTrue'; cr].             "if then" @@ -330,7 +327,6 @@ y := x asciiValue.                                          "convert to numeric  y := x asString.                                            "convert to string"  b := $A <= $B.                                              "comparison"  y := $A max: $B. -  ```  ## Symbol: @@ -428,7 +424,7 @@ y := x asBag.                                               "convert to bag coll  y := x asSet.                                               "convert to set collection"  ``` -##OrderedCollection: acts like an expandable array +## OrderedCollection: acts like an expandable array  ```  | b x y sum max |  x := OrderedCollection with: 4 with: 3 with: 2 with: 1.     "create collection with up to 4 elements" @@ -471,7 +467,9 @@ y := x asBag.                                               "convert to bag coll  y := x asSet.                                               "convert to set collection"  ``` -## SortedCollection:    like OrderedCollection except order of elements determined by sorting criteria +## SortedCollection: +like OrderedCollection except order of elements determined by sorting criteria +  ```  | b x y sum max |  x := SortedCollection with: 4 with: 3 with: 2 with: 1.      "create collection with up to 4 elements" @@ -513,7 +511,9 @@ y := x asBag.                                               "convert to bag coll  y := x asSet.                                               "convert to set collection"  ``` -## Bag:        like OrderedCollection except elements are in no particular order +## Bag: +like OrderedCollection except elements are in no particular order +  ```  | b x y sum max |  x := Bag with: 4 with: 3 with: 2 with: 1.                   "create collection with up to 4 elements" @@ -544,8 +544,12 @@ y := x asBag.                                               "convert to bag coll  y := x asSet.                                               "convert to set collection"  ``` -## Set:           like Bag except duplicates not allowed -## IdentitySet:   uses identity test (== rather than =) +## Set: +like Bag except duplicates not allowed + +## IdentitySet: +uses identity test (== rather than =) +  ```  | b x y sum max |  x := Set with: 4 with: 3 with: 2 with: 1.                   "create collection with up to 4 elements" @@ -604,7 +608,7 @@ y := x asBag.                                               "convert to bag coll  y := x asSet.                                               "convert to set collection"  ``` -##Associations: +## Associations:  ```  | x y |  x := #myVar->'hello'. @@ -613,7 +617,9 @@ y := x value.  ```  ## Dictionary: -## IdentityDictionary:   uses identity test (== rather than =) +## IdentityDictionary: +uses identity test (== rather than =) +  ```  | b x y |  x := Dictionary new.                                        "allocate collection" @@ -939,13 +945,8 @@ x := FillInTheBlank request: 'Prompt Me'.                   "prompt user for inp  Utilities openCommandKeyHelp  ``` - - -  ## Ready For More? -### Free Online -  * [GNU Smalltalk User's Guide](https://www.gnu.org/software/smalltalk/manual/html_node/Tutorial.html)  * [smalltalk dot org](http://www.smalltalk.org/)  * [Computer Programming using GNU Smalltalk](http://www.canol.info/books/computer_programming_using_gnu_smalltalk/) | 
