Coder Social home page Coder Social logo

ruby-under-a-microscope's People

Contributors

patshaughnessy avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

ruby-under-a-microscope's Issues

[PDF] Inconsistent YARV Definition

page 10

  • Next in Chapter 2, How Ruby Executes Your Code, I pick up the story from where Chapter 1 left off and describe how Ruby’s virtual machine, called “Yet Another Virtual Machine” (YARV) executes your program.

page 44

  • With Ruby 1.9, the Ruby core team introduced something called “Yet Another Ruby Virtual Machine” (or YARV), which actually executes your Ruby code.

[PDF] Typo - page 47

Final paragraph

  • Function and method calls are very important and very common in Ruby programs; the Ruby compiles them for YARV using this pattern:

Typo: page 77 (PDF)

This second stack represents the path through your Ruby program YARV has taken and
it’s current location.

should be =>

This second stack represents the path through your Ruby program YARV has taken and
its current location

Typo : Page 210 (PDF)

Specifically, this allows the puts statement to access the str2 variable from the parent scope.

Should be =>

Specifically, this allows the puts statement to access the str variable from the parent scope.

[PDF] Page 128 Rephrasing

I am not sure whether this is appropriate or not. But here is my thought about this sentence on page 128 -

Whenever the FIXNUM_FLAG is set, Ruby knows this VALUE is really a small integer, an
instance of the Fixnum class, and not a pointer to a value structure.

Could it be considered to be rephrased to below sentence for more clarity ?

Whenever the FIXNUM_FLAG is set, Ruby knows this VALUE is really a small integer, an
instance of the Fixnum class, and not a pointer to its corresponding C structure.

Thanks !

[PDF] Typo - page 19

Final paragraph

  • They may have done this for performance reasons, or because Ruby’s tokenization rules required special logic Lex could’t provide.

typo

But alongside YARV’s internal stack Ruby also keeps track of your Ruby program’s call stack: which methods called which other methods, functions, blocks, lambdas, etc. In fact, YARV is not just a stack machine – it’s a “double stack machine!” It not only has to track the arguments and return values for it’s own internal instructions; it has to do it for your Ruby arguments and return values as well.

Pat Shaughnessy. Ruby Under a Microscope (Kindle Locations 1079-1082).

Should the first sentence read: "alongside YARV's internal stack YARV also keeps track of your Ruby's program's call stack", or am I misreading?

[PDF] Page 129 font mismatch

On page 129 for this line -

The class method returns the class pointer.

Please correct the last font i.e. 's' to match with the entire 'class' word.

Thanks !

Typo : Page 76 (PDF)

It not only has to track the arguments and return values for it’s own internal instructions

Should be =>

It not only has to track the arguments and return values for its own internal instructions

Thanks

[PDF] Typo page 16 line 5

Tokenization and parsing are two separate processes that actually happen at the time time should be Tokenization and parsing are two separate processes that actually happen at the same time

Typo:page 207 (PDF)

Here the puts function call refers equally well to the str variable located inside the
block and the str2 variable from the surrounding code.

Should be ->

Here the puts function call refers equally well to the str2 variable located inside the
block and the str variable from the surrounding code.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.