Class 3: Ruby, continued
Held: Friday, 27 January 2017
We continue to investigate some issues in Ruby.
Preliminaries
Overview
- A brief introduction to Ruby
- Some exercises
- Interesting characteristics of Ruby
- Q&A
Related Pages
Updates
News / Etc.
- I realize that there have been some problems getting up and running with Ruby and Cloud 9 and everything. That’s to be expected.
- Reflections should generally be submitted by 9pm on Sunday night so that I can read them before class.
- Friday PSA
Upcoming work
- Read and do Hartl, chapter 1.
Good things to do
- Various dance activities.
- CS table, Tuesday: Planning for the semester.
- CS extras, Thursday: LaTeX.
A brief introduction to Ruby
- Modern programming language.
- “One” designer.
- Imperative, functional, and OOP characteristics.
- Good at “Get the job done quickly.”
- Very dynamic.
- Very popular.
- Everything (more or less) is an object.
- Includes anonymous functions, although with a different syntax than we might expect.
-
Disadvantage: Too many ways to express the same concept.
if TEST consequent consequent if TEST if TEST consequent end unless not TEST consquent end consequent unless not TEST
Some Ruby exercises
We will explore some of the examples from today’s assignment to see the different ways in which students approached problems.
Write sums_to_n?(vals,val)
that returns true if any two distinct
values from vals
(a list of values) sums to val
.
Write multiple_of_4?(bitstring)
that takes a string of 0’s and 1’s
(representing an unsigned integer) as input and returns true if the
string represents an integer divisible by four.
Write starts_with_consonant?(str)
that determines if a string
starts with a consonant.
Additional characteristics of Ruby
What did you see as important characteristics of Ruby?