Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.ruby > #1942 > unrolled thread
| Started by | Robert Klemme <shortcutter@googlemail.com> |
|---|---|
| First post | 2011-03-30 02:29 -0500 |
| Last post | 2011-04-14 05:01 -0500 |
| Articles | 20 on this page of 92 — 19 participants |
Back to article view | Back to comp.lang.ruby
[OT] functional paradigm taking over Robert Klemme <shortcutter@googlemail.com> - 2011-03-30 02:29 -0500
Lambda Shambda Mike Stephens <rubfor@recitel.net> - 2011-03-30 04:38 -0500
Re: Lambda Shambda Robert Klemme <shortcutter@googlemail.com> - 2011-03-30 10:19 -0500
Re: Lambda Shambda Mike Stephens <rubfor@recitel.net> - 2011-03-30 12:27 -0500
Re: Lambda Shambda 7stud -- <bbxx789_05ss@yahoo.com> - 2011-03-30 20:49 -0500
Re: Lambda Shambda Phillip Gawlowski <cmdjackryan@googlemail.com> - 2011-03-30 22:30 -0500
Re: Lambda Shambda Mike Stephens <rubfor@recitel.net> - 2011-03-31 05:08 -0500
Re: Lambda Shambda Josh Cheek <josh.cheek@gmail.com> - 2011-04-02 15:07 -0500
Re: Lambda Shambda Mike Stephens <rubfor@recitel.net> - 2011-04-03 00:29 -0500
Re: Lambda Shambda Phillip Gawlowski <cmdjackryan@googlemail.com> - 2011-04-03 02:48 -0500
Re: Lambda Shambda Robert Klemme <shortcutter@googlemail.com> - 2011-04-03 12:58 +0200
Re: Lambda Shambda Phillip Gawlowski <cmdjackryan@googlemail.com> - 2011-04-03 06:50 -0500
Re: Lambda Shambda Josh Cheek <josh.cheek@gmail.com> - 2011-04-03 13:59 -0500
Re: Lambda Shambda Johnny Morrice <spoon@killersmurf.com> - 2011-04-03 15:06 -0500
Re: Lambda Shambda Josh Cheek <josh.cheek@gmail.com> - 2011-04-03 15:56 -0500
Re: Lambda Shambda Everett L Williams II <rett@classicnet.net> - 2011-04-03 07:17 -0500
Re: Lambda Shambda Phillip Gawlowski <cmdjackryan@googlemail.com> - 2011-04-03 07:47 -0500
Why should I be a programmer, to program? Mike Stephens <rubfor@recitel.net> - 2011-04-03 13:44 -0500
Re: Why should I be a programmer, to program? Phillip Gawlowski <cmdjackryan@googlemail.com> - 2011-04-03 14:45 -0500
Re: Why should I be a programmer, to program? Johnny Morrice <spoon@killersmurf.com> - 2011-04-03 15:58 -0500
Re: Why should I be a programmer, to program? Josh Cheek <josh.cheek@gmail.com> - 2011-04-03 15:21 -0500
Re: Why should I be a programmer, to program? serialhex <serialhex@gmail.com> - 2011-04-03 15:34 -0500
Re: Why should I be a programmer, to program? - OT Chris <chris@s-4-u.net> - 2011-04-03 15:53 -0500
Re: Why should I be a programmer, to program? Petite Abeille <petite.abeille@gmail.com> - 2011-04-03 16:01 -0500
Re: Why should I be a programmer, to program? - OT Chris <chris@s-4-u.net> - 2011-04-03 16:42 -0500
Re: Lambda Shambda Everett L Williams II <rett@classicnet.net> - 2011-04-04 04:23 -0500
Re: Lambda Shambda Phillip Gawlowski <cmdjackryan@googlemail.com> - 2011-04-04 04:52 -0500
Re: Lambda Shambda Robert Klemme <shortcutter@googlemail.com> - 2011-04-04 06:19 -0500
Re: Lambda Shambda Martin DeMello <martindemello@gmail.com> - 2011-04-03 08:13 -0500
Re: Lambda Shambda Phillip Gawlowski <cmdjackryan@googlemail.com> - 2011-04-04 00:55 -0500
Re: Lambda Shambda Phillip Gawlowski <cmdjackryan@googlemail.com> - 2011-04-04 10:16 -0500
Re: Lambda Shambda Iain Barnett <iainspeed@gmail.com> - 2011-04-04 15:50 -0500
Re: Lambda Shambda Phillip Gawlowski <cmdjackryan@googlemail.com> - 2011-04-03 15:07 -0500
Re: Lambda Shambda Johnny Morrice <spoon@killersmurf.com> - 2011-04-03 06:05 -0500
Re: Lambda Shambda Phillip Gawlowski <cmdjackryan@googlemail.com> - 2011-03-31 13:56 -0500
Re: [OT] functional paradigm taking over Martin DeMello <martindemello@gmail.com> - 2011-03-30 15:46 -0500
Re: functional paradigm taking over Mike Stephens <rubfor@recitel.net> - 2011-04-04 04:05 -0500
Re: functional paradigm taking over Johnny Morrice <spoon@killersmurf.com> - 2011-04-04 04:21 -0500
Re: functional paradigm taking over Johnny Morrice <spoon@killersmurf.com> - 2011-04-04 04:25 -0500
Re: functional paradigm taking over Stu <stu@rubyprogrammer.net> - 2011-04-04 04:28 -0500
Re: functional paradigm taking over Robert Dober <robert.dober@gmail.com> - 2011-04-04 06:49 -0500
Re: functional paradigm taking over Phillip Gawlowski <cmdjackryan@googlemail.com> - 2011-04-04 05:00 -0500
Re: functional paradigm taking over Johnny Morrice <spoon@killersmurf.com> - 2011-04-04 05:15 -0500
Re: functional paradigm taking over Phillip Gawlowski <cmdjackryan@googlemail.com> - 2011-04-04 05:18 -0500
Re: functional paradigm taking over Everett L Williams II <rett@classicnet.net> - 2011-04-04 06:31 -0500
Re: functional paradigm taking over Johnny Morrice <spoon@killersmurf.com> - 2011-04-04 07:17 -0500
Re: functional paradigm taking over Johnny Morrice <spoon@killersmurf.com> - 2011-04-04 07:29 -0500
Re: functional paradigm taking over Johnny Morrice <spoon@killersmurf.com> - 2011-04-04 10:42 -0500
Re: functional paradigm taking over Michal Suchanek <hramrach@centrum.cz> - 2011-04-04 12:43 -0500
Re: functional paradigm taking over Robert Dober <robert.dober@gmail.com> - 2011-04-10 11:59 -0500
Re: functional paradigm taking over Kevin <darkintent@gmail.com> - 2011-04-12 01:18 -0500
Re: functional paradigm taking over Kevin <darkintent@gmail.com> - 2011-04-12 01:22 -0500
Re: functional paradigm taking over Phillip Gawlowski <cmdjackryan@googlemail.com> - 2011-04-12 02:09 -0500
Re: functional paradigm taking over Phillip Gawlowski <cmdjackryan@googlemail.com> - 2011-04-12 02:11 -0500
Re: functional paradigm taking over Kevin <darkintent@gmail.com> - 2011-04-12 02:47 -0500
Re: functional paradigm taking over Phillip Gawlowski <cmdjackryan@googlemail.com> - 2011-04-12 03:40 -0500
Re: functional paradigm taking over Kevin <darkintent@gmail.com> - 2011-04-13 00:53 -0500
Re: functional paradigm taking over Josh Cheek <josh.cheek@gmail.com> - 2011-04-13 01:02 -0500
Re: functional paradigm taking over Kevin <darkintent@gmail.com> - 2011-04-13 01:38 -0500
Re: functional paradigm taking over Kevin <darkintent@gmail.com> - 2011-04-13 01:46 -0500
Re: functional paradigm taking over Josh Cheek <josh.cheek@gmail.com> - 2011-04-13 02:46 -0500
Re: functional paradigm taking over Phillip Gawlowski <cmdjackryan@googlemail.com> - 2011-04-13 03:52 -0500
Re: functional paradigm taking over Kevin <darkintent@gmail.com> - 2011-04-13 09:59 -0500
Re: functional paradigm taking over Phillip Gawlowski <cmdjackryan@googlemail.com> - 2011-04-13 10:16 -0500
Re: functional paradigm taking over Kevin <darkintent@gmail.com> - 2011-04-13 11:18 -0500
Re: functional paradigm taking over serialhex <serialhex@gmail.com> - 2011-04-13 14:41 -0500
Re: functional paradigm taking over Kevin <darkintent@gmail.com> - 2011-04-13 15:34 -0500
Re: functional paradigm taking over Peter Hickman <peterhickman386@googlemail.com> - 2011-04-13 10:17 -0500
Re: functional paradigm taking over Kevin <darkintent@gmail.com> - 2011-04-13 18:44 -0500
Re: functional paradigm taking over Kevin <darkintent@gmail.com> - 2011-04-14 00:32 -0500
Re: functional paradigm taking over Michal Suchanek <hramrach@centrum.cz> - 2011-04-14 05:06 -0500
Re: functional paradigm taking over Mike Stephens <rubfor@recitel.net> - 2011-04-15 01:25 -0500
Re: functional paradigm taking over Josh Cheek <josh.cheek@gmail.com> - 2011-04-04 07:41 -0500
Re: functional paradigm taking over Michal Suchanek <hramrach@centrum.cz> - 2011-04-04 07:56 -0500
Re: functional paradigm taking over Stu <stu@rubyprogrammer.net> - 2011-04-05 03:58 -0500
Re: functional paradigm taking over Phillip Gawlowski <cmdjackryan@googlemail.com> - 2011-04-05 04:12 -0500
Re: functional paradigm taking over Stu <stu@rubyprogrammer.net> - 2011-04-05 16:57 -0500
Re: functional paradigm taking over Everett L Williams II <rett@classicnet.net> - 2011-04-07 10:51 -0500
Re: functional paradigm taking over Josh Cheek <josh.cheek@gmail.com> - 2011-04-07 18:42 -0500
Re: functional paradigm taking over Alex Stahl <astahl@hi5.com> - 2011-04-07 20:26 -0500
Re: functional paradigm taking over Mike Stephens <rubfor@recitel.net> - 2011-04-07 22:14 -0500
Re: functional paradigm taking over Johnny Morrice <spoon@killersmurf.com> - 2011-04-08 06:10 -0500
Re: functional paradigm taking over Everett L Williams II <rett@classicnet.net> - 2011-04-08 13:58 -0500
Re: functional paradigm taking over Mike Stephens <rubfor@recitel.net> - 2011-04-08 16:04 -0500
Re: functional paradigm taking over Josh Cheek <josh.cheek@gmail.com> - 2011-04-08 19:12 -0500
Re: functional paradigm taking over Mike Stephens <rubfor@recitel.net> - 2011-04-12 07:31 -0500
Re: functional paradigm taking over Phillip Gawlowski <cmdjackryan@googlemail.com> - 2011-04-12 11:22 -0500
Re: functional paradigm taking over Gregory Vella <gregory_vella@yahoo.com> - 2011-04-13 14:49 -0500
Re: functional paradigm taking over Kevin <darkintent@gmail.com> - 2011-04-13 15:59 -0500
Re: functional paradigm taking over Mike Stephens <rubfor@recitel.net> - 2011-04-14 02:28 -0500
Re: functional paradigm taking over Robert Klemme <shortcutter@googlemail.com> - 2011-04-14 03:29 -0500
Re: functional paradigm taking over Josh Cheek <josh.cheek@gmail.com> - 2011-04-14 05:01 -0500
Page 3 of 5 — ← Prev page 1 2 [3] 4 5 Next page →
| From | Robert Dober <robert.dober@gmail.com> |
|---|---|
| Date | 2011-04-04 06:49 -0500 |
| Subject | Re: functional paradigm taking over |
| Message-ID | <BANLkTi=4GZAR2XA8cjfNy10N4Rr3=YLZWg@mail.gmail.com> |
| In reply to | #2249 |
On Mon, Apr 4, 2011 at 11:28 AM, Stu <stu@rubyprogrammer.net> wrote: > is this a good book to read to grok functional programming, > http://mitpress.mit.edu/sicp/full-text/book/book.html It is, almost religously considered as such ;). I do not share this POV for the simple reason that I am too stupid to understand it. However, I found the "corresponding" MIT videocasts much more easy to grasp. e.g. http://www.youtube.com/watch?v=2Op3QLzMgSY HTH Robert > > I have done some lisp but interested in gaining the skillset with ruby, > > any nice thick comp sci books for recommendation? > > On Mon, Apr 4, 2011 at 4:05 AM, Mike Stephens <rubfor@recitel.net> wrote: >> This thread has been touching upon three issues - functional languages >> as a way of expressing problems, Excel as a language environment, and >> the programmer. >> >> Today, relational databases are widely accepted. However Ted Codd did >> not invent the relational model because he thought relations were neat. >> If you look at what he said at the time, his motivation was to make >> corporate data more accessible to non-programmers. Forty years ago he >> thought there were less programmers than there were programs to be >> written. Arguably the same is true today. >> >> When I was a boy, I would see IDMS recordsets like this: >> >> 200 >> 300 >> 150 >> 200 >> 230 >> etc >> >> What this represented was >> >> 2011/Q1 Sales = £200 >> 2011/Q2 Sales = £300 >> 2011/Q2 Sales = £150 >> >> Worse still you would have: >> >> 12 >> 200 >> 27 >> 300 >> etc >> >> which meant: >> 2011/Q1 Sales = £200 >> 2011/Q1 Units = 12 >> 2011/Q2 Sales = £300 >> 2011/Q2 Units = 27 >> etc >> >> Tedd said you must use relations. Relations are unordered so you can't >> hide information in the order of data. Also you must have a field name >> for each field (and it should be on the same domain, so Sales shouldn't >> be in the same 'column' as Units). >> >> You would therefore have to have: >> >> Period Sales Units >> 2011/Q1 200 12 >> 2011/Q2 300 27 >> etc >> >> Whilst- as we all know - that typically doesn't tell you everything you >> need to know when you come across a recordset, it makes it much easier >> for someone not deeply involved in the system concerned, to work out >> what is going on. >> >> Put it another way, using relations makes it less likely you will make a >> mistake because you didn't know the subtleties of the behaviour of the >> programs generating that data. >> >> Then, relations are amenable to first order predicate calculus. This >> resticts the complexity of the operations you need to carry out. >> >> When you consider the merits of functional languages, I believe you >> should take into account not only the elegance with which you can >> express what you want to do, or how amenable it is to eg parallel >> processing. You should also consider whether it strikes a better balance >> between such issues and accessibility. Does all your terseness and >> 'elegance' give you a justifiable advantage over something simpler which >> could be more easily handled by a person of less capability? >> >> -- >> Posted via http://www.ruby-forum.com/. >> > > -- The 1,000,000th fibonacci number contains '42' 2039 times; that is almost 30 occurrences more than expected (208988 digits). N.B. The 42nd fibonacci number does not contain '1000000' that is almost the expected 3.0e-06 times.
[toc] | [prev] | [next] | [standalone]
| From | Phillip Gawlowski <cmdjackryan@googlemail.com> |
|---|---|
| Date | 2011-04-04 05:00 -0500 |
| Subject | Re: functional paradigm taking over |
| Message-ID | <BANLkTi=T-K8dULruusbim73SPyJvyuBJSg@mail.gmail.com> |
| In reply to | #2244 |
On Mon, Apr 4, 2011 at 11:05 AM, Mike Stephens <rubfor@recitel.net> wrote: > > When you consider the merits of functional languages, I believe you > should take into account not only the elegance with which you can > express what you want to do, or how amenable it is to eg parallel > processing. You should also consider whether it strikes a better balance > between such issues and accessibility. Does all your terseness and > 'elegance' give you a justifiable advantage over something simpler which > could be more easily handled by a person of less capability? A) Provide examples that functional programming leads to "terseness" (BTW, the Laconians of old Greece preferred to say as much as possible in as few words as possible; one man's virtue is one man's sin, it seems). B) Define "accessibility". Surely you aren't saying that the UI of a program is related to which language it was written in. If you mean issues like maintainable code, isn't a strictly logical, mathematical structure preferable, especially if it can be analyzed (tooling is our friend) with the help of other programs? If, indeed, the code can be *proven* to be correct (proven in the mathematical sense)? C) Why should someone with less capability be taken care off by going onto their levels, instead of helping them to reach new heights (we could call such an effort "No Coder Left Behind")? Maths isn't hard, nor is programming. So this smells like the plot of "Harrison Bergeron" to me. D) Wouldn't a person with less capability be aided by code that follows simple, logical rules? *sigh* This'll be the ORM debate all over again, I bet. -- Phillip Gawlowski Though the folk I have met, (Ah, how soon!) they forget When I've moved on to some other place, There may be one or two, When I've played and passed through, Who'll remember my song or my face.
[toc] | [prev] | [next] | [standalone]
| From | Johnny Morrice <spoon@killersmurf.com> |
|---|---|
| Date | 2011-04-04 05:15 -0500 |
| Subject | Re: functional paradigm taking over |
| Message-ID | <20110404111458.480f0a25@fractal> |
| In reply to | #2252 |
> Maths isn't hard As someone doing his math homework as we speak, I beg to differ :p
[toc] | [prev] | [next] | [standalone]
| From | Phillip Gawlowski <cmdjackryan@googlemail.com> |
|---|---|
| Date | 2011-04-04 05:18 -0500 |
| Subject | Re: functional paradigm taking over |
| Message-ID | <BANLkTinf7GL68Xdp8HS-EQno8UoUrzDb+A@mail.gmail.com> |
| In reply to | #2254 |
On Mon, Apr 4, 2011 at 12:15 PM, Johnny Morrice <spoon@killersmurf.com> wrote: >> Maths isn't hard > > As someone doing his math homework as we speak, I beg to differ :p That's why it's homework. :P -- Phillip Gawlowski Though the folk I have met, (Ah, how soon!) they forget When I've moved on to some other place, There may be one or two, When I've played and passed through, Who'll remember my song or my face.
[toc] | [prev] | [next] | [standalone]
| From | Everett L Williams II <rett@classicnet.net> |
|---|---|
| Date | 2011-04-04 06:31 -0500 |
| Subject | Re: functional paradigm taking over |
| Message-ID | <4D99ABF9.60407@classicnet.net> |
| In reply to | #2244 |
[Note: parts of this message were removed to make it a legal post.] *Mike,* Mike Stephens wrote: > This thread has been touching upon three issues - functional languages > as a way of expressing problems, Excel as a language environment, and > the programmer. > > > > When you consider the merits of functional languages, I believe you > should take into account not only the elegance with which you can > express what you want to do, or how amenable it is to eg parallel > processing. You should also consider whether it strikes a better balance > between such issues and accessibility. Does all your terseness and > 'elegance' give you a justifiable advantage over something simpler which > could be more easily handled by a person of less capability? > *You have restated my point in much more pleasant language, and with commendable precision. The average person who wishes to program a solution to a problem cares not one whit whether the tool they find most accessible qualifies as a programming language by another person's definition. They just want to get their problem solved. Personally, though I have been arguning the side of Excel here, I hate spreadsheets. It is arguable that almost anything that can be accomplished with a database and implementing language such as SQL can be accomplished with a spreadsheet. I just happen to prefer the DB way of describing and thinking about data. But, as I have said, I have seen some absolutely amazing things doen with spreadsheets. My particular crutch for dealing with DB's is Alpha 5, but there are dozens of such solutions out there. I happen to be a person with 45 years in the computing field, with specific knowledge of lambda calculus, Turing completeness, object orientation, structured programming, relational databases, and an host of other such things, but I have also learned that the real purpose of computer programs is to get work done unless I am specifically researching computing as a science. "Turing completeness" is a term of art that could be replaced in the minds of 99.9% of even fairly technically competent programmers with any other reference for which they have poor understanding. If being TC means that the tool can get the job done accurately and efficiently, including the time that it takes to create a program, then they are all for it. Most could not even accurately describe a Turing machine in the original sense of that definition. Denigrating another person's choice of tools will certainly not make that person likely to seek your advice again, nor consider you helpful. If you have confused your switchblade with a Swiss Army knife, then you are more foolish than the person you are denigrating. Since this is a Ruby forum, sometimes the best answer is to refer a person to docs and/or books for deeper learning rather than try to answer the first problem that they run into as if that will really help them make efficient use of Ruby. Help with installing and making Ruby work properly are always appropriate, but only time and study and practice will actually allow people to program with any confidence. When people come from other programming disciplines, comparison of modalities and techniques are usually helpful, but fanboy expressions of "mine is bigger and/or better than yours" are not. Eveerett L.(Rett) Williams II *
[toc] | [prev] | [next] | [standalone]
| From | Johnny Morrice <spoon@killersmurf.com> |
|---|---|
| Date | 2011-04-04 07:17 -0500 |
| Subject | Re: functional paradigm taking over |
| Message-ID | <20110404131734.24b9f7c4@fractal> |
| In reply to | #2258 |
> But, as I have said, I have seen some absolutely > amazing things doen with spreadsheets. I've seen some absolutely amazing things done with befunge! Networked programs, even. Which is more than excel can do. However, I think it would be reasonable for people to disagree with me, if I were to insist on a public forum that befunge is somehow preferable to the entire imperative school of programming languages. > When people come from other programming disciplines, comparison of > modalities and techniques are usually helpful, but fanboy expressions > of "mine is bigger and/or better than yours" are not. Since I am completely awesome*, I offered to attempt dissect a piece of functional code for him, if he would provide one. This would definitely involve a comparison of techniques. We may both learn something! * Due to the lack evidence or attention to detail in your post, I feel confident asserting my awesomeness without any display of rigour, evidence or logic.
[toc] | [prev] | [next] | [standalone]
| From | Johnny Morrice <spoon@killersmurf.com> |
|---|---|
| Date | 2011-04-04 07:29 -0500 |
| Subject | Re: functional paradigm taking over |
| Message-ID | <20110404132907.6fbdedac@fractal> |
| In reply to | #2261 |
> I've seen some absolutely amazing things done with befunge! Networked > programs, even. Which is more than excel can do. Sorry, what with all the bullshit I forgot to provide any evidence of this fact: http://zem.fi/~fis/fungot.b98.txt
[toc] | [prev] | [next] | [standalone]
| From | Johnny Morrice <spoon@killersmurf.com> |
|---|---|
| Date | 2011-04-04 10:42 -0500 |
| Subject | Re: functional paradigm taking over |
| Message-ID | <20110404164212.79e2baea@fractal> |
| In reply to | #2264 |
> I have not seen "befunge" as a euphemism for brainfuck before. Is > that common? It's a different language, befunge is a 2d language. Your text file is like a grid. IIRC, among the commands > < ^ v change direction right, left, up and down, respectively. So this would be an infinite loop: >v ^< The link was to an IRC bot, I think it runs in perl's Inline::Befunge module, but I really don't know. If you wanted to track it down, I'd recommend asking at #esoteric on freenode. Also, see this for more on befunge http://esoteric.voxelperfect.net/wiki/Befunge Hey, I don't know if there's a ruby interpreter for it! Making one would definitely be a fun evening with a beer. Nor seemingly does there seem to be an interpreter in excel... actually I think Excel would be great for this sort of thing, seeing as it's a 2d grid. You could have one part of the sheet containing the program instructions, and have another part of the sheet contain the registers (I think it uses registers?) and the 2-dimensional program counter. The formula would just have to update the state based on the position of the program counter and the instruction at that point. Then it would have to update the program counter...
[toc] | [prev] | [next] | [standalone]
| From | Michal Suchanek <hramrach@centrum.cz> |
|---|---|
| Date | 2011-04-04 12:43 -0500 |
| Subject | Re: functional paradigm taking over |
| Message-ID | <BANLkTi=bmkjxY02S--meA+KX2uFpAFTdCw@mail.gmail.com> |
| In reply to | #2270 |
On 4 April 2011 17:42, Johnny Morrice <spoon@killersmurf.com> wrote: >> I have not seen "befunge" as a euphemism for brainfuck before. Is >> that common? > > It's a different language, befunge is a 2d language. Your text file is > like a grid. IIRC, among the commands > < ^ v change direction right, > left, up and down, respectively. So this would be an infinite loop: > >>v > ^< > OMG yeah, this explains the ASCII art style. And it makes it at least as much or more twisted as using Excel for programming. Awesome thing to show people ;-) Thanks Michal
[toc] | [prev] | [next] | [standalone]
| From | Robert Dober <robert.dober@gmail.com> |
|---|---|
| Date | 2011-04-10 11:59 -0500 |
| Subject | Re: functional paradigm taking over |
| Message-ID | <BANLkTin-9w=YbZL0kp+-0vfvWCY-ER8V_w@mail.gmail.com> |
| In reply to | #2270 |
On Mon, Apr 4, 2011 at 8:07 PM, Chad Perrin <code@apotheon.net> wrote: > That makes sense -- and could be another fun evening with a beer. It was IIRC ;) http://rubyquiz.strd6.com/quizzes/184-befunge Cheers Robert -- The 1,000,000th fibonacci number contains '42' 2039 times; that is almost 30 occurrences more than expected (208988 digits). N.B. The 42nd fibonacci number does not contain '1000000' that is almost the expected 3.0e-06 times.
[toc] | [prev] | [next] | [standalone]
| From | Kevin <darkintent@gmail.com> |
|---|---|
| Date | 2011-04-12 01:18 -0500 |
| Subject | Re: functional paradigm taking over |
| Message-ID | <BANLkTin50cDXAKoG5VtwM2H94o6b2sxRrw@mail.gmail.com> |
| In reply to | #2596 |
[Note: parts of this message were removed to make it a legal post.] Aren't all programs languages as the program describes a particular problem or set of problems? It seems that saying that a program is not a language is a bit of an artificial distinction. Mathematics is a language. Ruby or C++ are languages that can be used to construct entirely new languages. Even pictures can form the basis of language. Every program that exists possesses the vocabulary to deal with a given problem domain, so why bother trying to claim that something like Excel does not have these qualities? Aside from adherence to useless jargon of course. As for issues like terseness, it isn't really a virtue at all. That you can say or do more with less is not very important if people have a distinct bit of trouble understanding what is being communicated. The goal should be clarity, not trying to condense everything into the fewest possible symbols, ultimately to say that you could.
[toc] | [prev] | [next] | [standalone]
| From | Kevin <darkintent@gmail.com> |
|---|---|
| Date | 2011-04-12 01:22 -0500 |
| Subject | Re: functional paradigm taking over |
| Message-ID | <BANLkTinOfSqiHQ9DLjYtP0nc4xQPRKPg0Q@mail.gmail.com> |
| In reply to | #2659 |
[Note: parts of this message were removed to make it a legal post.] One more thing the SQL programming language as it currently exists was in fact designed to allow people who were not programmers by trade or training to be able to comprehend the system. (Look on Wikipedia you can find a PDF of the original proposal.) It is the reason that the syntax took the form that it did. On Tue, Apr 12, 2011 at 2:18 AM, Kevin <darkintent@gmail.com> wrote: > Aren't all programs languages as the program describes a particular problem > or set of problems? It seems that saying that a program is not a language > is a bit of an artificial distinction. Mathematics is a language. Ruby or > C++ are languages that can be used to construct entirely new languages. > Even pictures can form the basis of language. Every program that exists > possesses the vocabulary to deal with a given problem domain, so why bother > trying to claim that something like Excel does not have these qualities? > Aside from adherence to useless jargon of course. > > As for issues like terseness, it isn't really a virtue at all. That you can > say or do more with less is not very important if people have a distinct > bit > of trouble understanding what is being communicated. The goal should be > clarity, not trying to condense everything into the fewest possible > symbols, > ultimately to say that you could. >
[toc] | [prev] | [next] | [standalone]
| From | Phillip Gawlowski <cmdjackryan@googlemail.com> |
|---|---|
| Date | 2011-04-12 02:09 -0500 |
| Subject | Re: functional paradigm taking over |
| Message-ID | <BANLkTikjOE6sD1J1QKD1pUGLOO50TRLwaQ@mail.gmail.com> |
| In reply to | #2661 |
On Tue, Apr 12, 2011 at 8:22 AM, Kevin <darkintent@gmail.com> wrote: > One more thing the SQL programming language as it currently exists was in > fact designed to allow people who were not programmers by trade or training > to be able to comprehend the system. (Look on Wikipedia you can find a PDF > of the original proposal.) It is the reason that the syntax took the form > that it did. Just to refresh everyone's memory what an INSERT statement looks like: INSERT INTO table (column1, column2) VALUES (value1, value2); Compare to UPDATE: UPDATE table SET column1 = data WHERE column1 = NULL; Contrast with SELECT: SELECT column1, column2 FROM Table WHERE column1 = column2; Not to put too fine a point to it: Well meant isn't well done. -- Phillip Gawlowski Though the folk I have met, (Ah, how soon!) they forget When I've moved on to some other place, There may be one or two, When I've played and passed through, Who'll remember my song or my face.
[toc] | [prev] | [next] | [standalone]
| From | Phillip Gawlowski <cmdjackryan@googlemail.com> |
|---|---|
| Date | 2011-04-12 02:11 -0500 |
| Subject | Re: functional paradigm taking over |
| Message-ID | <BANLkTi=fgkUrFAY82Tv4vGAjmVcdHWZxYQ@mail.gmail.com> |
| In reply to | #2659 |
On Tue, Apr 12, 2011 at 8:18 AM, Kevin <darkintent@gmail.com> wrote: > Aren't all programs languages as the program describes a particular problem > or set of problems? Programs are solutions to problems. > It seems that saying that a program is not a language > is a bit of an artificial distinction. Mathematics is a language. Ruby or > C++ are languages that can be used to construct entirely new languages. > Even pictures can form the basis of language. Every program that exists > possesses the vocabulary to deal with a given problem domain, so why bother > trying to claim that something like Excel does not have these qualities? > Aside from adherence to useless jargon of course. You are confusing computer science with linguistics. > As for issues like terseness, it isn't really a virtue at all. That you can > say or do more with less is not very important if people have a distinct bit > of trouble understanding what is being communicated. The goal should be > clarity, not trying to condense everything into the fewest possible symbols, > ultimately to say that you could. That isn't a problem of terseness, but a problem of semantics, and how well something can be understood and learned. -- Phillip Gawlowski Though the folk I have met, (Ah, how soon!) they forget When I've moved on to some other place, There may be one or two, When I've played and passed through, Who'll remember my song or my face.
[toc] | [prev] | [next] | [standalone]
| From | Kevin <darkintent@gmail.com> |
|---|---|
| Date | 2011-04-12 02:47 -0500 |
| Subject | Re: functional paradigm taking over |
| Message-ID | <BANLkTi=F20QrAgmOovSZ47bhmjmnzwMH4A@mail.gmail.com> |
| In reply to | #2665 |
[Note: parts of this message were removed to make it a legal post.] No I'm not confusing them, all programs provide the vocabulary (Means of expression. Look it up if you don't believe me.) necessary to deal with a particular problem or problem domain. Furthermore what you said hardly distinguishes computer programs from every other language humans have ever or will ever create. All of those solve particular problems just as much as computer programs do. What a program is, is a system as opposed to a singular object like a table or a chair. The system is itself the tool and the system exists solely to allow humans to express their will to machines. Terseness is a problem the moment it causes people to prioritize it above superior semantics. It might be a great idea to use the mathematical symbol for lambda to refer to a lambda function but it is not necessarily a great idea to use an ellipsis to refer to an exclusive range like we do in Ruby. Both use very few characters to get the job done, but one is not only much more distinct, it is far easier to explain since it matches a subject more people are likely to associate correctly with very little in the way of explanation. (Though I think that Ruby explains things nicely without getting into the whole lambda/closure thing right out of the gate.) Why the ellipsis is used for excluding the last number in a range is not readily explainable, the use of the lambda symbol to refer to lambda functions however is. On Tue, Apr 12, 2011 at 3:11 AM, Phillip Gawlowski < cmdjackryan@googlemail.com> wrote: > On Tue, Apr 12, 2011 at 8:18 AM, Kevin <darkintent@gmail.com> wrote: > > Aren't all programs languages as the program describes a particular > problem > > or set of problems? > > Programs are solutions to problems. > > > It seems that saying that a program is not a language > > is a bit of an artificial distinction. Mathematics is a language. Ruby > or > > C++ are languages that can be used to construct entirely new languages. > > Even pictures can form the basis of language. Every program that exists > > possesses the vocabulary to deal with a given problem domain, so why > bother > > trying to claim that something like Excel does not have these qualities? > > Aside from adherence to useless jargon of course. > > You are confusing computer science with linguistics. > > > As for issues like terseness, it isn't really a virtue at all. That you > can > > say or do more with less is not very important if people have a distinct > bit > > of trouble understanding what is being communicated. The goal should be > > clarity, not trying to condense everything into the fewest possible > symbols, > > ultimately to say that you could. > > That isn't a problem of terseness, but a problem of semantics, and how > well something can be understood and learned. > > -- > Phillip Gawlowski > > Though the folk I have met, > (Ah, how soon!) they forget > When I've moved on to some other place, > There may be one or two, > When I've played and passed through, > Who'll remember my song or my face. > >
[toc] | [prev] | [next] | [standalone]
| From | Phillip Gawlowski <cmdjackryan@googlemail.com> |
|---|---|
| Date | 2011-04-12 03:40 -0500 |
| Subject | Re: functional paradigm taking over |
| Message-ID | <BANLkTimk1ksVqO7C7aDdv2cpVn5vDJiTBQ@mail.gmail.com> |
| In reply to | #2666 |
On Tue, Apr 12, 2011 at 9:47 AM, Kevin <darkintent@gmail.com> wrote: > No I'm not confusing them, all programs provide the vocabulary (Means of > expression. Look it up if you don't believe me.) necessary to deal with a > particular problem or problem domain. That doesn't make them languages, or languages useful for everything. Or do you really believe the Egyptians spoke in little pictures of birds, eyes and waves? > Furthermore what you said hardly > distinguishes computer programs from every other language humans have ever > or will ever create. The difference between the two is so obvious, I don't think it needs to be spelled out (The Latin and Asian languages suffer from a distinct lack of looping constructs, as well as disambiguity, for example). > All of those solve particular problems just as much as > computer programs do. Human languages don't solve problems. They facilitate communications which, considering the circumstances, enables problem solving in groups. Very different thing from programming languages which exist to solve problems (there are of course levels of abstractions with languages providing richer or poorer semantics to deal with particular problems, or to provide other trade offs). > What a program is, is a system as opposed to a > singular object like a table or a chair. The system is itself the tool and > the system exists solely to allow humans to express their will to machines. Superficially correct, but programs exist to do stuff. Be that data storage, data analysis, or whatever, but programs don't impose a user's will on a machine. They enable users to accomplish a task easier and faster (ideally), than the lack of a tool would allow. > Terseness is a problem the moment it causes people to prioritize it above > superior semantics. It might be a great idea to use the mathematical symbol > for lambda to refer to a lambda function but it is not necessarily a great > idea to use an ellipsis to refer to an exclusive range like we do in Ruby
[toc] | [prev] | [next] | [standalone]
| From | Kevin <darkintent@gmail.com> |
|---|---|
| Date | 2011-04-13 00:53 -0500 |
| Subject | Re: functional paradigm taking over |
| Message-ID | <BANLkTi=Ccu_9WQNCGUYvevYUVbJHO0-9Ww@mail.gmail.com> |
| In reply to | #2666 |
[Note: parts of this message were removed to make it a legal post.] Why don't you actually go take a look at the definition of language, specifically definitions three,four,five, and seven here: http://dictionary.reference.com/browse/language Also have a look at definition four in the second set. While you are at it take a look at vocabulary definitions four and five in the first set and four in the second set here: http://dictionary.reference.com/browse/vocabulary Your degree of ignorance about what the word language means does not help communication. I specifically mentioned to Phillip to look up the words in a dictionary, so that he would understand why I made the points I did the way I did. You really should have heeded my advice rather than attempting to resort to sarcasm. Furthermore you totally missed my point about the use of the ellipsis for exclusive ranges in Ruby, the symbology of the ellipsis does not give you any indication whatsoever that 1...10 is going to return 1 through 9, on top of that it can be easily confused with "..". Now compare that with using the lambda symbol for a lambda function: It is a symbol really only used in mathematics, it is not easily confused with a common operator, it even manages to retain its' connection to the mathematics responsible for the concept itself, making it need less explanation for more people since more people will know about lambda calculus than will expect an ellipsis to stand for an exclusive range. Oh and by the way do you know what every program that has ever been or ever will be created has that your easy chair will not simply with moving parts? The ability to express a set of human thoughts, like math, Ruby, Latin and Java. These four unlike your easy chair do not simply do, they were created to be understood by humans. But please do attempt more sarcasm, to cover up for your inability to actually look at a dictionary. On Tue, Apr 12, 2011 at 11:45 AM, Chad Perrin <code@apotheon.net> wrote: > On Tue, Apr 12, 2011 at 04:47:17PM +0900, Kevin wrote: > > > > No I'm not confusing them, all programs provide the vocabulary (Means > > of expression. Look it up if you don't believe me.) necessary to deal > > with a particular problem or problem domain. Furthermore what you said > > hardly distinguishes computer programs from every other language humans > > have ever or will ever create. All of those solve particular problems > > just as much as computer programs do. What a program is, is a system > > as opposed to a singular object like a table or a chair. The system is > > itself the tool and the system exists solely to allow humans to express > > their will to machines. > > I guess, by your phrasing, we simply do not "understand" your "language", > because the "language" you are making is "spoken" upon "semantics" that > do not exist in anyone else's "metalanguages". > > Put another way, we do not "agree with" your "argument", because the > "argument" you are making is "predicated" upon "premises" that do not > exist in anyone else's "experience". > > I don't think taking your approach to labeling everything under the Sun a > "language" really aids communication. > > Your attempt to bend software into the shape of a language by calling it > a "system", then contrasting the fact it basically has moving parts with > the case of tables and chairs to say it's not just a "singular object", > is flawed. Recliners and collapsible card tables are not "languages" > just because they are complex systems of moving parts any more than my > mail user agent is a "language" for the same reason. > > > > > > Terseness is a problem the moment it causes people to prioritize it > > above superior semantics. It might be a great idea to use the > > mathematical symbol for lambda to refer to a lambda function but it is > > not necessarily a great idea to use an ellipsis to refer to an > > exclusive range like we do in Ruby. > > Really? What's wrong with using ellipsis points to stand in for a range? > Are you saying that software would be easier to read and write (and > understand) if we had to type every single number between 1 and 1000 into > a program to create an array containing all those numbers? What if we > want to exclude number 347? I think this: > > foo = ((1...347).to_a + (348..1000).to_a).flatten > > . . . is much easier to quickly read and properly understand than the > alternative: > > foo = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 # . . . and so on > > Of course, in this case the exclusive ellipsis is probably not the best > option, and instead my example of using ellipsis points should look like > this instead: > > foo = ((1..346).to_a + (348..1000).to_a).flatten > > There are times that three ellipsis points are more appropriate, though. > > > > > > Both use very few characters to get the job done, but one is not only > > much more distinct, it is far easier to explain since it matches a > > subject more people are likely to associate correctly with very little > > in the way of explanation. (Though I think that Ruby explains things > > nicely without getting into the whole lambda/closure thing right out of > > the gate.) Why the ellipsis is used for excluding the last number in a > > range is not readily explainable, the use of the lambda symbol to refer > > to lambda functions however is. > > It's easy to explain how ellipsis points work in Ruby: > > Three points are "up to"; two points are "through". If you want "one > through ten", use two points, because the last number in the series > essentially *is* the third point. If you want "one to ten", use three > points, showing that it ends with that third point. It's a pretty simple > rule and, while it may not match with exactly what *you* expect, it is > still consistent and meaningful, and easily explained. > > Also . . . is there any chance we can get you to stop top-posting > everything? TOFU posting is kind of annoying. > > -- > Chad Perrin [ original content licensed OWL: http://owl.apotheon.org ] >
[toc] | [prev] | [next] | [standalone]
| From | Josh Cheek <josh.cheek@gmail.com> |
|---|---|
| Date | 2011-04-13 01:02 -0500 |
| Subject | Re: functional paradigm taking over |
| Message-ID | <BANLkTik5BaU6hNbZMnSFHF3s831ObKqz4Q@mail.gmail.com> |
| In reply to | #2731 |
[Note: parts of this message were removed to make it a legal post.] On Wed, Apr 13, 2011 at 12:53 AM, Kevin <darkintent@gmail.com> wrote: > Why don't you actually go take a look at the definition of language, > specifically definitions three,four,five, and seven here: > http://dictionary.reference.com/browse/language > > The rest of us are talking about definition twelve.
[toc] | [prev] | [next] | [standalone]
| From | Kevin <darkintent@gmail.com> |
|---|---|
| Date | 2011-04-13 01:38 -0500 |
| Subject | Re: functional paradigm taking over |
| Message-ID | <BANLkTimz5eXP2k8V_gy1GBN3+KLSbenozg@mail.gmail.com> |
| In reply to | #2732 |
[Note: parts of this message were removed to make it a legal post.] That is all well and good. But does that fact make the definitions I am using incorrect in any way? Does it necessarily make the suggestion that excel is a programming language incorrect? Someone posted a link to an animation done in Excel (I've seen something similar in the past.), is that not giving instructions to a computer as per definition twelve? Heck if you were to speak to a computer using English you could give instructions to a computer. As voice recognition technology gets better and hopefully cheaper people who are not great at typing may do just that in order to create programs that would be no different from the ones we type currently. On Wed, Apr 13, 2011 at 2:02 AM, Josh Cheek <josh.cheek@gmail.com> wrote: > On Wed, Apr 13, 2011 at 12:53 AM, Kevin <darkintent@gmail.com> wrote: > > > Why don't you actually go take a look at the definition of language, > > specifically definitions three,four,five, and seven here: > > http://dictionary.reference.com/browse/language > > > > > The rest of us are talking about definition twelve. >
[toc] | [prev] | [next] | [standalone]
| From | Kevin <darkintent@gmail.com> |
|---|---|
| Date | 2011-04-13 01:46 -0500 |
| Subject | Re: functional paradigm taking over |
| Message-ID | <BANLkTikxCiF+j0Aqc0wrt9brt-KLeT0KEw@mail.gmail.com> |
| In reply to | #2734 |
[Note: parts of this message were removed to make it a legal post.] Before anyone bothers syntax would still apply even if one could simply use English to give instructions and we were able to skip over the symbols, by that time it would probably be possible to type English in order to create a program or a subset of it. On Wed, Apr 13, 2011 at 2:38 AM, Kevin <darkintent@gmail.com> wrote: > That is all well and good. But does that fact make the definitions I am > using incorrect in any way? Does it necessarily make the suggestion that > excel is a programming language incorrect? Someone posted a link to an > animation done in Excel (I've seen something similar in the past.), is that > not giving instructions to a computer as per definition twelve? Heck if you > were to speak to a computer using English you could give instructions to a > computer. As voice recognition technology gets better and hopefully cheaper > people who are not great at typing may do just that in order to create > programs that would be no different from the ones we type currently. > > > On Wed, Apr 13, 2011 at 2:02 AM, Josh Cheek <josh.cheek@gmail.com> wrote: > >> On Wed, Apr 13, 2011 at 12:53 AM, Kevin <darkintent@gmail.com> wrote: >> >> > Why don't you actually go take a look at the definition of language, >> > specifically definitions three,four,five, and seven here: >> > http://dictionary.reference.com/browse/language >> > >> > >> The rest of us are talking about definition twelve. >> > >
[toc] | [prev] | [next] | [standalone]
Page 3 of 5 — ← Prev page 1 2 [3] 4 5 Next page →
Back to top | Article view | comp.lang.ruby
csiph-web