public
Description: Aims to extend Ruby standard library, providing some useful tools that's not existed in the standard library, especially for functional programming.
Homepage: http://rubyforge.org/projects/ludy
Clone URL: git://github.com/godfat/ludy.git
godfat (author)
Sat Oct 11 08:25:35 -0700 2008
commit  2400d1dc84e138fa0d3f292e2cf0f82a3dc4821d
tree    a2619df93757797807d12cb7f4d87d2e9e4ef9d2
parent  71ee19235946c169616dc0e51a96fc4778fd06e5
ludy / CHANGES
100644 234 lines (160 sloc) 6.244 kb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
= ludy changes history
 
== ludy 0.1.14,
 
* added Ludy::XhtmlFormatter from another project.
* added Ludy::RailsFieldsFilters from project above metioned.
* renamed Proc#bind to Proc#_bind because active_support
  took that name..... *cry*
 
== ludy 0.1.13, 2008-06-14
 
* fixed the package... i am so dumb
 
== ludy 0.1.12, 2008-06-14
 
* added NullPaginator and NullPage for represent 0 page.
* changed repository from svn to git.
 
== ludy 0.1.11, 2008-03-25
 
* fixed tasks function into private method of Kernel.
* fixed version comparison.
* fixed encoding using # -*- coding: utf-8 -*- instead of $KCODE
* updated tasks/preprocess_cpp/debug_hook from std::cerr to std::clog.
 
== ludy 0.1.10, 2008.02.07
 
* fixed an offset bug in paginator. if the offset was equal to the count,
  there should be no page existed.
* fixed and updated rdoc presentation
* fixed a warning of shadowing variables in ruby 1.9
 
* added the offset test in test_paginator
* make some Kernel method private
 
== ludy 0.1.9, 2008.02.07
 
* fixed a bug in RailsPaginator, which ignored opts for count.
* fixed a possible bug in puzzle_generator... (not happened before?)
* fixed a stupid timeout message bug...
 
* added multiruby test (from ZenTest) with ruby 1.8.6-p111, 1.9.0-0, svn trunk
* added Array#head, Array#choice!, Array#count
* added Array#product, which came from ruby 1.9 (implemented by combos in ruby 1.8)
* added Kernel#deep_copy, by Marshal idiom
* added Hash#reverse_merge
* added a simple and stupid timer........
 
* removed Array#reverse_map, use reverse.map instead
* renamed test_helper to helper
 
* puzzle_generator was never always dependent on facets now!
* ludy was never always dependent on rake now!
 
* change my nickname to binary string... for ruby-svn
* updated tasks from bones 1.3.2
* better Rakefile support, with version automatic extraction from README and
  better way to display tasks for default task. (no sh 'rake --tasks' now)
* rake clean now clean out the *.rbc for rubinius
* Array#rotate is re-implemented.
 
== ludy 0.1.8, 2008.01.31
 
* change the way displaying debug message
 
== ludy 0.1.7, 2008.01.31
 
* added preprocess_cpp tools, debug_hook and debug_include
 
== ludy 0.1.6, 2008.01.31
 
* make erubis don't trim...
 
== ludy 0.1.5, 2008.01.31
 
* fixed task preprocess:erubis presentation error.
 
== ludy 0.1.4, 2008.01.31
 
* added Page#begin and Page#end for real index in the data
* added Paginator#count for counter.call wrapper
 
* rename from Ludy::eout to Ludy::erbout
* added erubis support
* rename task from erb:preprocess to preprocess:erb and preprocess:erubis
* task preprocess would preprocess with erb and erubis
* rename PROJ to Project with open struct. use Project.name now
 
== ludy 0.1.3, 2008.01.23
 
* renamed next_page to next, and prev_page to prev
* added Page#page to get the page number of that page.
* added Ludy::eout to use in erb's block, see ludy/tasks/common.rb
  i would extract it to erb or somewhere else someday.
* better header_guard usage, with block
 
== ludy 0.1.2, 2008.01.17
 
* aims to add functional stuffs, list comprehension is working in progress
* Paginator series are added.
* more rdocs are added.
 
== ludy 0.1.1, 2008.01.10
 
* add Array#tail and Array#map_with_index to make the task of
  template forward parameters work again. (without depend on facets)
 
* add some todo notes.
 
== ludy 0.1.0, 2008.01.08
 
* directory structure rearranged
    now you would like to require something like:
    require 'ludy/proc/bind'
    require 'ludy/lazy'
    require 'ludy/kernel/defun'
    require 'puzzle_generator'
    ...
    the load path is now manipulated by ludy.rb, with require guard,
    to make sure that all .rb is only required once. (all the same require path.)
 
* you can now:
    require 'ludy/kernel' # for all kernel method
    require 'ludy/all' # for all ludy things
 
* there's no require_ludy anymore.
 
* project skeleton is now built through Mr Bones 1.3.0, see NOTICE
 
* many things are now deprecated. they are hard to implemented correctly,
  or useless, or easy to be replaced, or for some other reasons.
 
* ludy is now compatible with ruby 1.9. and a few ruby 1.9's features are
  now added in ludy to help improve compatibility between ruby versions.
 
* ludy executable is added. it simply call rake with ludy tasks, so:
    $ ludy test # to run all tests
    $ ludy doc # generate rdoc
    $ ludy # see all ludy tasks
 
* ludy_ext.rb is split into many other .rb
 
* C++ ERB meta-programming is added.
 
* multi re-implementation is done. the new one is called defun.
  it supports overloading(ad-hoc polymorphism), multi-method,
  pattern matching, and perhaps others?
 
* rdoc support is added.
 
* http://ludy.rubyforge.org would now insist on the latest rdoc.
 
* Array#reverse_map, Array#body, Array#rotate, Array#combos, etc. is added.
 
== ludy 0.0.9, 2008.01.07
 
* Proc#bind added, see test/tc_bind.rb
 
== ludy 0.0.8, 2007.12.06
 
* ludy_ext:
  added:
    * Array#untranspose!
    * Array#unzip!
 
  changed:
    * Kernel#curry support Symbol
 
* puzzle_generator added...
 
== ludy 0.0.7, 2007.10.08
 
* ludy_ext:
  added:
    * Array#untranspose
    * Array#unzip
    * Array#combine!
    * Object#m
    * Kernel#id
 
== ludy 0.0.6, 2007.09.15
 
* ludy_ext:
  added:
    * Array#combine
 
  moved:
    * move Symbol#to_proc to Symbol#to_msg,
       and take back the original Symbol#to_proc implementation.
 
* change the way we require
 
== ludy 0.0.5, 2007.09.15
 
 i forgot what i'd done... (days ago)
 but sure there's Symbol#to_proc and Symbol#to_msg,
 also, please read unit test.
 
== ludy 0.0.4, 2007.08.12
 
* ludy_ext:
  renamed:
    * Proc#curry => Proc#__curry__
 
  added:
    * Kernel#curry
 
 strongly suggest that use Kernel#curry instead of Proc#__curry__,
 see unit test for usage and changes
 
== ludy 0.0.3, 2007.08.07
 
* ludy_ext:
  added:
    * Proc#curry
    * Proc#compose
    * Proc#chain
    * Symbol#to_proc
    * Array#foldl
    * Array#foldr
    * Array#filter
 
  removed:
    * Fixnum#collect # see tc_ludy_ext.rb#test_fixnum_collect for reason
 
  info:
    * ruby2ruby has NilClass#method_missing return nil,
       so i can't just make it return blackhole
 
* module Curry:
  see test/tc_curry.rb for usage
 
 see unit test for usage