[#18931] notes from a Ruby newbie — Ned Konz <ned@...>
Some initial impressions from a Perl/Smalltalk programmer writing his first
[#18957] Ruby and Unicode — Ned Konz <ned@...>
I haven't dug into the source yet, but it seems that Ruby ignores the fact
[#18959] Using "@" as a method name? — Laurent Julliard <Laurent.Julliard@...>
Let's start with a silly question to warm you up :-))
[#18974] Perl/Python/Ruby common backend (Perl6) — ptkwt@...1.aracnet.com (Phil Tomson)
There is a thread about using .NET's CLR as a backend for Ruby, but how
Hi,
no guile has no vm,
[#19015] Re: IDE for Ruby — Bob Follek <bfollek@...>
Tobias DiPasquale wrote:
[#19025] 1.6/net errors (stack, igneof) — Tobias Reif <tobiasreif@...>
Hi;
[#19026] YAWN Question (Your Annoying Wandering Newbie) — Matt <matt@...>
Since I have yet to find a comprehensive tutorial for CGI using Ruby, I'm still stumbling around in many respects. (I'm sure they exist in Japanese, but I haven't learned it yet... :/ )
On Thursday 02 August 2001 07:13 am, you wrote:
On Thu, 2 Aug 2001, Ned Konz wrote:
[#19043] SSL in Ruby? — hubert@... (Hubert Hung-Hsien Chang)
Just curious if Ruby library has SSL? I look around and it seems that
[#19059] QNX port — Eli Green <eli.green@...>
Greetings.
from Roland Priem on 2001-08-03 at 09:32:49:
Eli Green [mailto:eli.green@codedogs.ca] wrote:
[#19064] ANN: Code Amelioration Contest (presented by Ruby Conference 2001) — David Alan Black <dblack@...>
On Fri, 3 Aug 2001, David Alan Black wrote:
Hello --
On Mon, 6 Aug 2001, David Alan Black wrote:
Guillaume Cottenceau wrote:
Hello --
[#19086] Re: Code Amelioration Contest (presented by Ruby Conference 2001) — "MikkelFJ" <mikkelj-anti-spam@...1.dknet.dk>
> Try to think of imaginative ways to write unattractive Ruby.
[#19091] Re: ANN: Code Amelioration Contest (presented by Ruby Conference 2001) — pschoenb@... (Patrick Schoenbach)
David Alan Black wrote:
Hello --
A couple of questions.
[#19097] Unbuffered output — Harry Ohlsen <harryo@...>
I'm trying to write a small interactive program that reads commands and
[#19098] Endianness and integer indexing — eric@... (Eric Lee Green)
-----BEGIN PGP SIGNED MESSAGE-----
[#19125] My 1st look @ ruby: No prototypes and problem with String#gsub — stesch@... (Stefan Scholl)
My first ruby program:
Hello --
"MikkelFJ" <mikkelj-anti-spam@post1.dknet.dk> writes:
[#19167] struct and $SAFE — ts <decoux@...>
[#19192] Some remarks from a nembie in Ruby — Renaud HEBERT <renaud.hebert@...>
After having read the book "Programming Ruby: The Pragmatic Programmer's
Lloyd Zusman wrote:
>>>>> "R" == Renaud HEBERT <renaud.hebert@alcatel.fr> writes:
[#19248] Ruby/Tk: how to discard excess messages — "Albert L. Wagner" <alwagner@...>
An auto-repeat key is sending additional messages while method is
[#19253] Trying to get to grips with Ruby threads — "Peter Hickman" <peterhi@...>
I am trying to get to grips with threads in Ruby and I wrote (adapted more
[#19259] ANNOUNCE: socket options library v0.1 — "Nat Pryce" <nat.pryce@...13media.com>
I would like to announce the release of Sockopt 0.1. Sockopt is a package
[#19269] Re: Perl/Python/Ruby common backend (Parrot, can Ruby play too?) — ptkwt@...1.aracnet.com (Phil Tomson)
In article <72X97.12093$9i1.972452@e420r-atl1.usenetserver.com>,
On Tuesday 07 August 2001 10:37 pm, Mathieu wrote:
At 02:37 PM 8/8/01 +0900, Mathieu Bouchard spewed forth:
Ned Konz wrote:
On Thursday 09 August 2001 02:42 pm, you wrote:
>>>>> "N" == Ned Konz <ned@bike-nomad.com> writes:
On Thursday 09 August 2001 11:27 pm, you wrote:
>>>>> "N" == Ned Konz <ned@bike-nomad.com> writes:
On Fri, 10 Aug 2001, Ned Konz wrote:
[#19272] [META] Who kills the References? — stesch@... (Stefan Scholl)
It's a bit hard to read comp.lang.ruby. Some programs (the mail
[#19282] PATCH: fixed bug in "waitfor" in net/telnet.rb — Lloyd Zusman <ljz@...>
I'm using the Net::Telnet module and I'm quite
[#19283] Help with ternary operator syntax and grammar — furufuru@... (Ryo Furue)
Hi there,
[#19297] Speaking of the ternary operator.... — David Alan Black <dblack@...>
Hello --
[#19306] Virtual list — Sean Middleditch <elanthis@...>
For starts, I'm new to Ruby still, forgive me naivette. (Is that even a word?)
[#19326] WIN32OLE — "Aleksei Guzev" <aleksei.guzev@...>
"Aleksei Guzev" <aleksei.guzev@bigfoot.com> writes:
Assigning to a constant???????????!!!!!!!!!!!!!
"Aleksei Guzev" <aleksei.guzev@bigfoot.com> writes:
Are there global constants and how they are distinguished from locals?
"Aleksei Guzev" <aleksei.guzev@bigfoot.com> writes:
[#19398] XPath... — Sean Chittenden <sean-ruby-talk@...>
Does anyone know of an XPath library for Ruby? I dug through
[#19403] Re: WIN32OLE — "Aleksei Guzev" <aleksei.guzev@...>
#Ruby 1.6.4 IRB:
[#19418] Re: Setting $_ for the current scope — Renald Buter <buter@...>
On Thu, Aug 09, 2001 at 01:41:00PM +0100, ruby-talk@ruby-lang.org wrote:
[#19420] Test — Dave Thomas <Dave@...>
[#19446] Help! I'm still confused about threading in the ML — Dave Thomas <Dave@...>
[#19451] Re: Help! I'm still confused about threadin g in the ML — "Morris, Chris" <chris.morris@...>
> Is there an Outlook option to turn on In-Reply-To or References
"Morris, Chris" <chris.morris@snelling.com> writes:
Hello --
On Fri, 10 Aug 2001, David Alan Black wrote:
[#19506] the way class variables work — David Alan Black <dblack@...>
Hello --
David Alan Black <dblack@candle.superlink.net> writes:
David Alan Black <dblack@candle.superlink.net> writes:
Hello --
Hello --
[#19517] Why not?: Assigning to self — furufuru@... (Ryo Furue)
Hi there,
On 13 Aug 2001 20:59:54 -0700, furufuru@ccsr.u-tokyo.ac.jp (Ryo Furue)
On Tuesday 14 August 2001 05:09 am, Ron Jeffries wrote:
>>>>> "N" == Ned Konz <ned@bike-nomad.com> writes:
On Tuesday 14 August 2001 07:51 am, you wrote:
>>>>> "N" == Ned Konz <ned@bike-nomad.com> writes:
On Tuesday 14 August 2001 08:27 am, you wrote:
>>>>> "N" == Ned Konz <ned@bike-nomad.com> writes:
On Tuesday 14 August 2001 09:05 am, Guy Decoux wrote:
>>>>> "N" == Ned Konz <ned@bike-nomad.com> writes:
On Tuesday 14 August 2001 09:27 am, you wrote:
>>>>> "N" == Ned Konz <ned@bike-nomad.com> writes:
On Tuesday 14 August 2001 09:45 am, you wrote:
Hi,
On Tuesday 14 August 2001 08:14 pm, matz wrote:
Hi,
On Thu, Aug 16, 2001 at 11:05:59AM +0900, Yukihiro Matsumoto wrote:
Hi,
Just a followup at (my) current end of the thread:
"Pit Capitain" <pit@capitain.de> writes:
matz@ruby-lang.org (Yukihiro Matsumoto) writes:
[#19550] Forced garbage collection — Lars Christensen <larsch@...>
From: "Lars Christensen" <larsch@cs.auc.dk>
[#19551] /.ed again — Tobias Reif <tobiasreif@...>
Ruy gets slasdotted again ;)
Interesting (and pleasing) to see that the comments
--- Joel Wilsson <siigron@sii.linuxsweden.nu> wrote:
[#19574] Why not access control for instance and class variables? — ptkwt@...1.aracnet.com (Phil Tomson)
From: ptkwt@shell1.aracnet.com (Phil Tomson)
[#19597] reading characters without waiting for carriage return — "RodZilla" <rodzilla2@...>
Greetings,
[#19604] eRuby Application Server — Lothar Scholz <llothar@...>
After working with Allaires JRUN application server i would ask if
[#19631] () overloading — Ed Sinjiashvili <edsin@...>
Hi there!
[#19641] Array.uniq(!) uses what operator ? — Martin Weber <Ephaeton@...>
[#19647] Re: eRuby Application Server — Tobias DiPasquale <anany@...>
chad fowler wrote:
[#19650] Ruby Newbie mailing list — Michael Pence <mikepence@...>
Hello all.
We had a similar discussion on the OmniWeb Objective-C mailing list not to
I appreciate your references to Objectionable-C ;-)
Michael Pence wrote:
Dave Vandervort wrote:
ptkwt@shell1.aracnet.com (Phil Tomson) writes:
[#19652] String#substr — Sean Chittenden <sean_ca_1979@...>
Perl/C/PHP have substr.... does the ruby equiv
[#19685] Compiling Ruby with cygwin and Tk support — Manuel Zabelt <ng@...>
Hello!
[#19699] class methods and optimizing — Chris Moore <thegrandbrie@...>
Does anyone know what class methods are as opposed to instance methods? Are
[#19715] and in postconditions — Joel Wilsson <siigron@...>
Hi everyone,
[#19718] General (GUI/license) questions — Ryan Tarpine <rtarpine@...>
First: Kero commented in the description of his new Ruby Agenda program
[#19745] Computer Language Shootout... — Sean Chittenden <sean@...>
I know this has shown up here before, but after the /. effect
[#19755] "new" returning nil: how to report the failure of object creation — furufuru@... (Ryo Furue)
Hi there,
stephen.hill@motorola.com (Steve Hill) wrote in message news:<c230c758.0108150708.11d81bf2@posting.google.com>...
[#19758] The GUI poll is in, and the results are surprising — Dave Thomas <Dave@...>
On Wed, 15 Aug 2001, Dave Thomas wrote:
> Please don't forget what Ruby is all about in this discussion! I think
[#19782] TCPServer#accept bug? — "Michel H.G. van de Ven" <michelv@...4.nl>
Ruby 1.6.4
[#19800] Exception handling bug? — <ale@...>
Didn't post this to the bug database, as I'm not completely sure this is a
[#19809] how to speed up hash script? — gerry@... (Gerry Wiener)
I'm in the process of writing a script that will read data from a 17MB
[#19820] Ruby GUI — <avdi@...>
Looking over the archives, it seems this very discussion came up a few months
[#19824] Ruby GUI — "Hal E. Fulton" <hal9000@...>
The concept of a new GUI is somewhat appealing,
[#19905] Keyword arguments (was GUI...) — Joseph McDonald <joe@...>
Hi,
[#19927] [ANN] Ruby Behaviors, v. 0.0.2 — David Alan Black <dblack@...>
Hello --
[#19933] SMTP authentication — Brian Marick <marick@...>
Net::SMTP#start takes either :cram_md5 or :plain. My ISP doesn't like
[#19936] CORBA Ruby mapping — Daisuke KANDA <MAP2303@...>
I agree that common classes like system exceptions, a union type, an
[#19944] RE-ENTRY: ruby Mysql for cygwin — Matthias Lampert <ml@...>
Hi, folks!
[#19960] problem understanding class relationships — Tobias Reif <tobiasreif@...>
Hi;
[#19976] How to do arbitrary super calls? — Ned Konz <ned@...>
In Smalltalk, "super" in a method represents the receiver object (the same
[#19993] pose_as — <jweirich@...>
I was reading someone commenting about Objective C yesterday. They
[#19994] Ruby/Gtk: caveats/help on use of rbbr.rb — Albert Wagner <alwagner@...>
I am re-evaluating Ruby/Gtk. I assume that the gtk-brows, talked of in the
[#20018] Anyone know how to send a BCC e-mail in Ruby? — "Carl Youngblood" <carlyoungblood@...>
I'm trying to send a BCC email in Ruby like this:
[#20033] Ruby Article — Joshua Drake <jd.nospam@...>
Hello,
>>>>> "Joshua" == Joshua Drake <jd.nospam@commandprompt.com> writes:
[#20042] breaking out of nested loops — tromp@... (John Tromp)
I wonder what's the proper way to break out of nested loops,
>>>>> "J" == John Tromp <tromp@daisy.uwaterloo.ca> writes:
At 01:44 AM 8/21/01, you wrote:
Hi Brian,
At 07:06 AM 8/22/01, you wrote:
[#20046] [patch] block memory allocation scheme - bmalloc — Lars Christensen <larsch@...>
[#20056] Regexp for japanese characters — Slava Kravchenko <arachis@...>
Hello, everybody!
[#20102] File.stat not working? — "Roger Lipscombe" <rlipscombe@...>
#!/usr/bin/env ruby
[#20127] Another Possible RCR - Wrappers via Mixins — Stephen White <spwhite@...>
The main difference between mix-ins and multiple inheritence is (to my understanding) that parent classes do not call child code, but mix-ins do.
Hi,
Cool! I could use that.
On Thu, 23 Aug 2001, Albert Wagner wrote:
[#20135] Bruce Eckel's criticism of Ruby — Ned Konz <ned@...>
Python.org links to http://www.mindview.net/Etc/notes.html#Ruby , saying
On 23 Aug 2001 08:06:01 +0900, Ned Konz wrote:
[#20145] unfair comparison — theschof@... (Alexander Schofield)
[Note to Pythoners, I like Python (I prefer Ruby), but I do sometimes
[#20181] Re: Bruce Eckel's criticism of Ruby — "Dat Nguyen" <thucdat@...>
[#20183] ++ Operator — kamphausen@... (SKa)
Dear Community,
>>>>> "S" == SKa <kamphausen@novelscience.com> writes:
ts <decoux@moulon.inra.fr> writes:
Hi,
matz@ruby-lang.org (Yukihiro Matsumoto) writes:
Hi,
> If we really want "++", (a) is the way to go, but I don't think it's
[#20209] In Ruby 0 is true but nil is false.. or how to shoot yourself?.. — Guillaume Cottenceau <gc@...>
I have a simple Audio-CD database (using CSV format). I was writing a
[#20210] Inherit singleton method? — "Marco Guay" <mguay@...>
I'm a newbie in Ruby, exploring the language from early this summer with the
[#20225] ordered hash — Joseph McDonald <joe@...>
[#20228] ruby accessing variables it doesn't need to? — Joseph McDonald <joe@...>
[#20254] File.readline(s) — Michael Husmann <michael.husmann@...>
I am reading a 55MB ASCII file by using File.readline(s) which takes on
Hi,
Hi,
[#20280] ODBC under Debian Linux — Massimiliano Mirra <list@...>
Has anyone successfully compiled ruby-odbc under Debian (woody)? I
[#20290] Performance of Substrings — kamphausen@... (SKa)
Dear Ruby Community,
[#20291] new toy: method_var — Brian Fundakowski Feldman <green@...>
After seeing a million examples of overriding methods in classes by aliasing
[#20303] New Windows InstallShield version of Ruby — Andrew Hunt <andy@...>
"MikkelFJ" <mikkelj-anti-spam@post1.dknet.dk> writes:
> That hasn't been our experience with the Cygwin DLL. If
[#20307] Backwards language — "Sean Middleditch" <elanthis@...>
Greetings,
Sean Middleditch <elanthis@users.sourceforge.net> wrote:
On 25 Aug 2001 05:52:34 +0900, Todd Gillespie wrote:
[ date ] 2001/08/25 | Saturday | 04:33 AM
On 25 Aug 2001 06:45:25 +0900, John Beppu wrote:
Sean Middleditch <elanthis@users.sourceforge.net> wrote:
On 25 Aug 2001 08:32:39 +0900, Todd Gillespie wrote:
Hi Sean,
On Sat, Aug 25, 2001 at 04:33:51AM +0900, Sean Middleditch wrote:
[#20312] Re: New Windows InstallShield version of Ruby — Andrew Hunt <andy@...>
>Hey, thanks for the windows update! Including FXRuby was a good idea.
[#20337] Re: Iterators (was Re: ++ Operator) — Dave Thomas <Dave@...>
Brian Marick <marick@visibleworkings.com> writes:
[#20356] Vector graphics — "Aleksei Guzev" <aleksei.guzev@...>
Is there an open crossplatform vector-based graphics file format
[#20432] kanji size — Slava Kravchenko <arachis@...>
Hello, everybody!
[#20441] YACC & lex and Ruby — "Dat Nguyen" <thucdat@...>
[#20448] Re: Backwards language — Sean Middleditch <elanthis@...>
On 28 Aug 2001 05:44:57 +0900, Avi Bryant wrote:
[#20462] recursive lambda forms — theschof@... (Alexander Schofield)
It occurs to me that being able to create recursive lambda forms
[#20474] hml tag removal — "Thomas A. Reilly" <w3gat@...>
[#20508] Question: How to use TCPSocketServer and threads on Win32 — Ville Mattila <mulperi@...>
Hello,
[#20513] Question to the Tk/whatever GUI gurus: displaying trees — Armin Roehrl <armin@...>
Hi,
[#20516] A plea for CPAN in Ruby — "Avdi B.Grimm" <avdi@...>
I know it's bad manners to ask for some non-trivial feature without offering
[#20524] Problem with float numbers — DaVinci <bombadil@...>
Hello.
Hi,
On 29 Aug 2001 23:08:04 +0900, Yukihiro Matsumoto wrote:
[#20528] Ruby, DBI, design — steved-clr@...
Can anyone point me to example Ruby code that uses an SQL database.
[#20553] Multiple args to constructor — "Schaefer, F." <fschaef@...>
Hi again,
[#20581] RE: Relative path — "Barnett, Aaron" <aaron.barnett@...>
[#20585] Weird things with eval — Paul Brannan <pbrannan@...>
(A) If I do this:
Hello --
On Fri, 31 Aug 2001, David Alan Black wrote:
[#20588] Calling class member functions from C++ — jglueck@... (Bernhard Glk)
Hi there!
[#20594] The Rabbit — Dave Thomas <Dave@...>
[#20604] String.subst[!] RCR — "Aristarkh A Zagorodnikov" <xm@...3d.ru>
[#20614] Dynamic generation of class variables? — Renald Buter <buter@...>
Hello,
Hello --
[#20646] Iterating by links — Joel VanderWerf <vjoel@...>
[#20647] net/telnet problems — "Carl Youngblood" <cyoungbl@...>
I'm having a problem with the Net::Telnet class. Any help would be greatly
[ruby-talk:20469] Re: recursive lambda forms
>>>>> "Alexander" == Alexander Schofield <theschof@cs.com> writes:
Alexander> It occurs to me that being able to create recursive
Alexander> lambda forms should be possible in any language where a
Alexander> method is an object. Just as "self", refers to the
Alexander> object a method belongs to, shouldn't there be a
Alexander> reserved word (or optional argument specified with
Alexander> different syntax, maybe %?) for the Method or Proc
Alexander> object itself? This way a method could call itself
Alexander> without knowing in advance what it was going to be
Alexander> called.
Alexander> Aside from defining a named method and creating a
Alexander> reference to it, is there any already existing way to
Alexander> do what I'm think of?
This isn't exactly what you want, but it reminds me of a "problem"
involving a Y-Combinator. This was a fun puzzle, so I'll post it here
for entertainment purposes only.
The Y-Combinator "solves" the problem of recursive anonymous lambda
functions (proc's), with the additional constraint that lamdba binding
is the only way to associate values and names. In other words,
assignments are not allowed.
If assignments are allowed, a recursive version of factorial can be
done like this ...
fact = proc { |n|
if n == 0
1
else
fact.call(n-1)
end
}
If we using only lambda binding, then we would have to write something
like
proc { |fact|
proc { |n|
if n == 0
1
else
fact.call(n-1)
end
}
}
where "fact" is bound to the factorial function. Unfortunately, it
seems we have a chicken and egg problem because the factorial function
is exactly what we are trying to write in the first place.
The Y-combinator will take the above form and turn it into a real
factorial without infinite recursion or exploding (just kidding about
the exploding part).
The following code will demonstrates the Y-combinator written in Ruby.
If this hurts your head, you should see the version done in Java using
inner classes!
######################################################################
# Program: Y
# Purpose: Demonstrate the Y-Combinator in Ruby
# Author: Jim Weirich
# Why: Because everybody else was doing it in Perl and I wanted
# to be different.
# Usage: java Y `number'
#
# Discussion:
#
# The Y-Combinator is a way of using lambda calculus to bind
# functions to names for recursive calling. Its purpose is to
# demonstrate that Lambda calculus is theoritically sufficient for
# all compuational processes.
#
# I used the definition of the Y-Combinator from Friedman's "The
# Little Schemer", page 172. He defines it (in Scheme of course) as:
#
# (define Y
# (lambda (le)
# ((lambda (f) (f f))
# (lambda (f)
# (le (lambda (x) ((f f) x))) ) ) ) )
#
# Y takes an argument that is a function generator. To use Y, just
# define a function that takes an function as an argument and then
# codes the recursive definition using the argument. For example,
# the recursive factorial function generator could be defined ...
#
# (define F
# (lambda (proc)
# (lambda (n)
# (if (zero? n)
# 1
# (* n (proc (- n 1))) ))))
#
# In order to calculate the factorial of 5, you would invoke:
#
# ((Y F) 5)
#
# A fully expanded Y-Combinator/Function-generator expression would
# look like:
#
# (((lambda (le)
# ((lambda (f) (f f))
# (lambda (f)
# (le (lambda (x) ((f f) x))) ) ) )
# (lambda (proc)
# (lambda (n)
# (if (zero? n)
# 1
# (* n (proc (- n 1))) ))) ) 5)
#
# Evaluating the above expression yields: 120
#
# Translation to Ruby
# -------------------
#
# The following Ruby program is a fairly straightforward translation
# of the above Scheme expressions. We shall use proc's as the Ruby
# version of lambda expressions.
#
# The following bit of code creates a lambda function that adds 1 to
# its argument and applies the newly created function to the number 5:
#
# proc {|arg| arg+1}.call(5)
#
# Scheme Equivalent:
# ((lambda (arg) (+ arg 1)) 5)
#
# The following calculates the factorial of the command line argument
# using only Lambda functions.
#
# Are you ready? First, we will do it the easy way, using Y to hold
# the combinator expression and F to hold the factorial proto
# function.
# --------------------------------------------------------------------
F = proc { |recurse|
proc { |n|
if n == 0 then
1
else
n * recurse.call (n-1)
end
}
}
Y = proc { |builder|
proc { |f| f.call(f) } \
.call ( proc { |f|
builder.call (proc { |x| f.call(f).call(x) }) })
}
p Y.call(F).call(5) # prints "120"
# --------------------------------------------------------------------
# Now the hard way, in a single expression without any free variables.
# This is the same as the above expression, except that we have
# explicitly replaced the variables Y and F with their expressions.
# --------------------------------------------------------------------
p proc { |le|
proc { |f| f.call(f) } \
.call ( proc { |f|
le.call (proc { |x| f.call(f).call(x) }) })
}.call(proc { |recurse|
proc { |n|
if n == 0 then
1
else
n * recurse.call (n-1)
end
}
}).call(5) # prints "120"
--
-- Jim Weirich jweirich@one.net http://w3.one.net/~jweirich
---------------------------------------------------------------------
"Beware of bugs in the above code; I have only proved it correct,
not tried it." -- Donald Knuth (in a memo to Peter van Emde Boas)