Good, good. On Mon, Feb 8, 2016 at 7:58 PM, Panicz Maciej Godek <godek.mac...@gmail.com> wrote:
> 2016-02-07 22:51 GMT+01:00, Lawrence Bottorff <borg...@gmail.com>: > > I've got this <https://github.com/borgauf/pamphlet> fork going where > I've > > done some editing (grammar, style, spelling, etc.) on the book (up to > > "Reporting bugs." Let me know what you think. > > I'm really impressed! Thanks! :) > However, I do have some remarks: > > 1. if possible, it would be nice if you could keep the lines up to 80 > columns each (60 columns is preferable). I do editing in Emacs in > terminal on a very tiny display and I often split the screen in two > halves for comparatory editing. > The only exception are links that are more than 80 columns long. > > 2. in the line 161, you expanded the sentence "The first chapter > introduces all the elementary notions needed for programming" with the > adverbial "in Scheme". My original intent was that -- although the > syntactic guise of the programs expressed is obviously Scheme -- the > presented notions (of definition, reduction and substitution) are > required to do programming in general. > corrected > > 3. I'm not quite convinced whether \texttt{equivalence-classes} should > be replaced with \textit{equivalence-classes}. If we actually decide > to do so, I think it would be better to replace it as > \textit{equivalence classes}. However, although the italics are > actually used to refer to new notions, and typewriter font to refer to > notions/functions defined in Scheme, that use case is closer to > mentioning, than defining -- and I thought it would fall into memory > easier if the reader could see that "this is actually a Scheme > function indeed". (This won't be obvious during the first reading, so > I think it would be best to put the decision off for now) > good . . . it's just that it bleeds into the margin (on your original pdf) . . . any way to correct that? > > 4. I don't think that we need to add (line 192) that we mean "the > phenomena in the +real+ world". We could also mean the phenomena in > the world of ideas, or some fictional world. Either way, this is > unobvious from the philosophical point of view ;] > I didn't change this? But looking at it I'd say ". . . Internalizing a definition is not always a pleasant task, because it requires the intellectual effort of focusing and remembering." (*the *instead of *an*) > > 5. I think you got the "reading programs isn't like reading novels" > (196) opposite to my intention, which was that the programs have a > higher level of generality (which is rather unfamiliar) -- novels are > more concrete and less general. > Changed it to ". . . Because of their familiar narrative specificity, we typically absorb stories almost effortlessly." > > (I wonder whether we should switch to private correspondence, or > doesn't anyone mind having such updates here?) > > > In general, I think Scheme desperately needs an "O'Reilly"-style book. > > Sometimes I wonder. On one hand, our community could benefit if Guile > was more fashionable. I think that in practice, our situation is > similar to that of Erlang. Garret Smith (the author of "Erlang The > Movie II: the sequel", the best movie on the whole Internet) said that > "github is the Erlang's package manager" -- which is much more tedious > than, say, pip or ruby gems. And while some implementations of Scheme > provide nice solutions with this regard (most notably Chicken's eggs), > I think that -- similarly to Erlangers -- we mostly need to rely on > the fact that even if they are complex, well written functional > programs are easy to understand and compose. (This is also why I > thought writing a booklet is better than just publishing those > libraries, because creating them was really effortless. Also, I think > that the kind of software literacy that Scheme promotes is much more > important and far-reaching than even the most complete set of > libraries imaginable) > > I think that the problem of Scheme is that it is best characterized > not by what it allows to do, but what it doesn't forbid to do, and > comprehending this "negative" characteristic requires much more > imagination. > > > Question: What should we say when someone asks, "Why should I fool with a > > new programming language when there's Matlab/Mathematica/etc.?" > > The way I see it, this is a field where there's constant change -- > there was Octave, but then R emerged, and now Julia is gaining > popularity. > > Certailny, the language itself (Scheme, that is) has been good enough > for at least two decades. What I think is needed is a set of > accessible tools that would provide immediate benefits from the Lisp's > syntax. For instance, Emacs is a really great environment for lispers, > but it is accessible only to those that already know Emacs. The dr > Racket envrionment is way more accessible, but while it's good for > education, I don't think I would want to use it for editing. > > I think that LightTable is a very nice tool, but is focused on > Clojure, which is targetted to the JVM platform. > > > I think this is a great project. I myself have recently started something > > similar which shamelessly puts coding (in Scheme) together with high > school > > math. Two things I want to avoid is 1) having other "blub" languages fill > > this yawning gap (read Python), and 2) helping cushion the computer > science > > wall where hot-shot high-school coders go to college, major in comp-sci > . . > > . and then hit the comp-sci wall, i.e., discrete math, theory, no more > cool > > coding tricks, etc. > > Honestly, I think that Python is a very good tool for many practical > applications. I often use it at work, where I wouldn't be able to > convince anyone to use a language with "all those weird parentheses". > On the other hand, I don't think that I would want to build anything > complex or serious in Python, because of its inherent limitations. > > I believe is that we could make this cognitive revolution only through > the minds of children, that weren't spoiled by the idea that the infix > notation is natural. Actually I do have an idea for a game that could > teach children programming (and that uses Guile), but it's been almost > a year since I made any greater contributions. The idea is that the > players can control their humanoid avatars in 3d environment, and they > can progress from fully manual control, through automating some tasks > using scripts, to completely autonomous bots. > > If you're interested, you can have a look at the presentation that I > made a year ago: > > http://link.as/the-pose-editor-videotutorial > > Sorry for so many words ;] > and thanks again! > > Panicz >