←2006-11-16 2006-11-17 2006-11-18→ ↑2006 ↑all
00:19:37 -!- wooby has quit.
00:38:46 <Razor-X> Higher-order functions are supposedly harder than pointers?
00:38:59 <Razor-X> (Reading the above article.)
00:39:39 <lament> harder?
00:39:48 <Razor-X> I dunno.
00:39:59 <lament> C has function pointers
00:40:07 <Razor-X> It's an odd concept in the beginning. But insanely powerful when learned.
00:40:10 <lament> with which you can make higher-order functions.
00:40:10 <Razor-X> *harder to learn
00:40:19 <lament> so i would say they're equally difficult :)
00:40:31 <lament> except that many people learn pointers without learning function pointers
00:40:37 <xor_> hmmm
00:40:45 <lament> still... on the whole, i would say pointers are much MORE difficult
00:40:46 <Razor-X> Function pointers are awesome.
00:41:00 <Razor-X> I mean, it's just a pointer pointing to a function. Yeesh :P
00:41:04 <Razor-X> lament: I agree there.
00:41:07 <xor_> lament: I don't see what people think is so difficult about pointers
00:41:27 <Razor-X> I think a higher-order function is only difficult if you've been trained as an imperative robot all of your life.
00:42:06 <xor_> What's a higher-order function?
00:42:57 <xor_> Oh never mind
00:43:09 <xor_> higher-order functions aren't hard to understand
00:45:19 <Razor-X> Lisp, in general, was hard for me to pick up in the very beginning.
00:45:45 <Razor-X> I spent spring break reading about Common Lisp and bashing myself for being seemingl incapable of understanding it.
00:45:58 <Razor-X> (I thought Scheme was weak for some reason and didn't learn it. Heh.)
00:46:52 <lament> higher order functions are conceptually much more simple than objects
00:47:02 <lament> and everybody uses objects without a second thought
00:47:25 <xor_> Razor-X: Higher order functions seem like something a brute-force laboring imperitive robot would do
00:47:33 <Razor-X> xor_: Huh?
00:47:51 <lament> there's nothing non-imperative about higher order functions
00:48:04 <xor_> hey, robot, map(pound_in_nails,stack_of_wood)
00:50:22 -!- CXI has quit (Read error: 104 (Connection reset by peer)).
00:50:48 <Razor-X> Then one magic moment it clicked, but I still didn't like Common Lisp, so I went onto OCaML. The syntax looked like some sort of unholy union of odd things, so I moved on to Haskell. I ended up writing an IRC bot in Haskell from scratch and *that's* when functional programming really clicked. I had enough of passing state in creative ways, and learned Scheme. I loved it.
00:51:20 <xor_> I'm learning common lisp
00:51:23 -!- CXI has joined.
00:52:50 <Razor-X> Common Lisp isn't abstracted enough, IMO.
00:53:15 <xor_> I'm really not liking the different function and variable namespaces
00:53:23 <xor_> It's ugly and inconsistent
00:53:25 <Razor-X> Yeah, exactly.
00:53:37 <Razor-X> Another thing is, the Common Lisp spec is huge.
00:53:41 <Razor-X> Like dwarfing.
00:54:15 <xor_> But tail recursion a la scheme is ugly too
00:54:16 -!- CXI has quit (Read error: 104 (Connection reset by peer)).
00:54:23 <Razor-X> Hmmm?
00:54:31 <Razor-X> Isn't it the same in CL and Scheme?
00:54:45 <xor_> Yeah, but it is encouraged in scheme
00:54:57 <Razor-X> Well... it *is* functional programming.
00:55:00 <xor_> I don't think recursively most of the time
00:55:09 -!- CXI has joined.
00:55:24 <Razor-X> See, that's the trapped mindset of an imperative thinker.
00:55:54 <xor_> recursing is not effecient
00:56:01 <Razor-X> Tail recursion is made effecient.
00:56:19 <Razor-X> Almost all of Lisp's idioms encourage the use of tail recursion. Haskell does too.
00:56:28 <xor_> Can I see your irc bot in haskell?
00:57:04 <Razor-X> Heh, I'll put it up a bit later, sure. There are some messy parts (the semi-modular framework especially), though, so be warned.
00:57:18 <Razor-X> I'll be rewriting it in Scheme, maybe.
01:05:18 <Razor-X> I wish the stupid recursive-application-for-internship was applied to high-schoolers.
01:08:00 <Razor-X> But in all seriousness, when I think of a programming problem, I think of it either in Scheme, or pseudo-C/pseudo-Forth (this is generally for low-level stuff).
01:08:40 <Razor-X> Sometimes I get angry for thinking in Scheme, because Scheme solutions come so easily for me (but nifty, I've been working on a small CAS for my Palm recently).
01:12:16 <Razor-X> Very nifty: http://home.earthlink.net/~krautj/sassy/sassy-Z-H-2.html#node_toc_start Scheme assembler.
01:14:49 <xor_> CASs are great
01:15:11 <xor_> ha ha lisp asm
01:16:08 <xor_> Why would you get angry for thinking in scheme?
01:16:17 <Razor-X> Because most of the world doesen't use it.
01:17:03 <Razor-X> Yup. I've been working mainly on the infix->postfix bit now, and converting that to an intermediary form I can perform CAS goodness with.
01:18:26 * xor_ loves his calculator
01:18:36 <xor_> It has lots of CAS goodness
01:19:46 <GregorR-L> I want a teletype machine.
01:20:40 <xor_> I don't.
01:29:59 <RodgerTheGreat> I want a PDP-8 *and* a teletype.
01:30:17 <GregorR-L> Well, I'd like to plug the teletype into my modern box ^^
01:30:28 <RodgerTheGreat> haha
01:30:42 <RodgerTheGreat> the idea of having a physical terminal for root appeals to me.
01:31:06 <RodgerTheGreat> "Awright, no more fucking around! Where's the fanfold paper?"
01:31:07 -!- ivan` has quit (" HydraIRC -> http://www.hydrairc.com <- 100,000+ downloads can't be wrong").
01:32:08 <xor_> heh
01:35:20 <RodgerTheGreat> and instead of sneakernetting files across the room with a flashdrive, punch them onto tape and have teletypes stationed all over your house.
01:35:40 <RodgerTheGreat> "inefficiency never felt so good"
01:41:25 <xor_> Razor-X: People say scheme is purely an academic language, with no practical use
01:56:30 -!- anonfunc has joined.
02:06:23 -!- GregorR-L has quit (Read error: 148 (No route to host)).
02:10:43 -!- Asztal has joined.
02:17:13 -!- calamari has joined.
02:23:50 <SimonRC> zzzz
02:55:22 <lament> Razor-X: it's true
02:55:25 <lament> errr
02:55:27 <lament> xor_: it's true
02:55:53 <xor_> Please support your awnser with a detailed explaination
02:57:15 <xor_> ^^ what my teachers say
03:05:58 <lament> it's good they're not my teachers :)
03:06:15 <xor_> But really, why is that so?
03:07:43 -!- CakeProphet has quit ("haaaaaaaaaa").
03:09:49 -!- ivan` has joined.
03:11:02 <Razor-X> There are practical uses, IMO. But the industry doesen't care about the merits of one language over another more than a language whose code is easily debuggable by a lot of people.
03:14:24 <Razor-X> I would think functional programming on the whole is very easily debuggable because there are no side-effects.
03:24:50 <lament> unfortunately scheme is not a side-effect free language
03:25:05 <lament> and side effects play an important role in the standard idioms
03:25:23 <lament> but yes, haskell does have its merits :)
03:25:29 <Razor-X> .... Heh.
03:25:45 <Razor-X> Haskell is a lot of fun, I admit. But state passing, at some point, becomes infesible.
03:25:50 <Razor-X> Anywho, Japanese time.
03:26:02 <xor_> So haskell doesn't have global vars?
03:26:23 <Razor-X> Nope.
03:26:47 <xor_> In my mind, that prevents abstraction
03:27:33 <Razor-X> Well, you can attempt to wrap your mind around a StateT monad, or do the simple thing and pass state around in lists.
03:28:11 <Razor-X> It's a great exercise of the mind, because you'll realize that ~60% of the state you wastefully use normally is useless.
03:28:21 <xor_> hmm
03:29:08 <lament> xor_: um, it's not that haskell doesn't have global variables
03:29:22 <lament> xor_: it's that the concept of "variable" is completely alien to Haskell because it doesn't have _any_.
03:29:32 <xor_> ?
03:29:45 <lament> xor_: stuff is immutable. Nothing varies.
03:30:01 <lament> you do have arguments to functions.
03:30:33 <lament> which people call variables if they like, but it's quite a different thing
03:30:46 <lament> since, again, they don't vary
03:31:17 <lament> so a "global variable" would be a "global constant", which is probably not what you had in mind.
03:33:49 <xor_> I need to learn more languages so I can keep up with the discussion in this channel!
03:38:00 <Razor-X> You should.
03:44:29 <lament> just learn haskell
03:44:42 <xor_> I coded a little in haskell for a bit
03:44:44 <lament> or at least get familiar with its concepts; you don't actually need to learn it.
03:44:58 <lament> same with forth, lisp, smalltalk
03:45:06 <lament> then you can keep up with practically any discussion
03:45:15 <xor_> I need to learn some smalltalk
03:53:54 -!- anonfunc has quit.
03:54:15 <lament> that should take you all of five minutes
03:54:33 <lament> smalltalk is probably the smallest language that was ever commercially used :)
03:54:40 <lament> or is it tied with forth
03:57:15 <xor_> brainfuck!
03:58:56 <xor_> I know, I know, not comercially
04:17:30 <Razor-X> I haven't done anything with SmallTalk either, meself.
04:18:02 <Razor-X> I like to actually get my feet wet in a language. I think of some pseudo-project and do it, to get a working feel of the language.
04:20:53 <Razor-X> One of the things I dislike thoroughly about R5RS is multiple-return support.
04:21:10 <Razor-X> That's one of those things done to make the language more effecient, but EH.
04:23:12 <xor_> R5RS?
04:24:12 <Razor-X> The Revised 5 Report on Scheme. The current ``de-facto'' standard.
04:24:43 <Razor-X> R6RS is in the making and will be revolutionaly in that, it will standardize previously implementation-specific things instead of merely language specific.
05:16:38 -!- calamari has quit ("Leaving").
05:28:20 -!- ivan` has quit (" HydraIRC -> http://www.hydrairc.com <- The future of IRC").
05:56:32 -!- Asztal has quit ("Chatzilla 0.9.75 [IceWeasel 1.0.1b2] (kidding!)").
05:59:40 -!- Sgeo has quit (Remote closed the connection).
06:19:44 -!- xor_ has quit ("Lost terminal").
06:23:31 -!- bsmntbombdood has joined.
06:28:21 -!- wooby has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
10:02:50 -!- ivan` has joined.
11:01:36 -!- wooby has quit.
11:03:13 -!- wooby has joined.
11:03:20 -!- wooby has quit (Remote closed the connection).
11:32:15 -!- wooby has joined.
11:32:16 -!- wooby has quit (Remote closed the connection).
12:10:42 -!- Asztal has joined.
13:51:34 -!- ihope has quit ("http://tunes.org/~nef/logs/esoteric/06.08.09").
14:51:28 -!- Asztal has quit (Read error: 110 (Connection timed out)).
15:14:02 -!- jix has joined.
15:20:52 * SimonRC loves the fact that Haskell, like C and C++, has first-class variables.
15:21:01 <SimonRC> (IORefs and STRefs)
15:21:25 <SimonRC> it can make writing imperative code cleaner too, not writing functions
15:22:47 <SimonRC> Haskell (versus Java) lacks: Good marketing (Sun), buzzword-compliance (OOP, AOP), the ability for idiots to think they understand it (Java monkeys).
15:23:40 <SimonRC> If we were taught Haskell *instead* of Java, I would be a better programmer, but 70% of my class would have dropped out.
16:03:21 -!- Asztal has joined.
16:10:22 -!- GregorR-L has joined.
16:45:54 <bsmntbombdood> SimonRC: Don't let school get in the way of your education
17:37:17 -!- tgwizard has joined.
18:01:03 <Eidolos> (Mark Twain)++
18:39:07 -!- CakeProphet has joined.
19:03:52 <SimonRC> bsmntbombdood: I didn't
19:03:59 <bsmntbombdood> good
19:04:31 <SimonRC> I followed the advice of a graduate friend and learnt more Haskell in my free time in the first year than we were taught in the second year.
19:50:08 -!- oerjan has joined.
20:17:37 -!- anonfunc has joined.
20:50:19 -!- Sgeo has joined.
21:10:55 -!- ihope has joined.
21:30:01 <ihope> Six megahertz processor with 28 kilobytes of RAM. Isn't it wonderful?
21:30:17 <bsmntbombdood> very
21:30:37 <oerjan> reminisce reminisce
21:30:48 <bsmntbombdood> old hardware turns me on
21:36:48 <ihope> It seems to be from 1992.
21:36:57 <ihope> About as old as I am, not that I'm very old.
21:37:12 <oerjan> you don't mean 1982?
21:38:09 <ihope> No, I don't.
21:39:01 <oerjan> did they still use only 28 kilobytes anywhere in 1992?
21:39:31 <ihope> In graphing calculators, apparently.
21:39:41 <ihope> This is a TI-86.
21:39:46 <ihope> s/6/5/
21:40:26 <bsmntbombdood> I love my ti-89
21:40:41 <bsmntbombdood> m68k!
21:41:38 <jix> i love mine too
21:42:00 <ihope> Hey, wait, wait...
21:42:06 <jix> anyone know what cpu is/will be used in those new n-spire things?
21:42:08 * oerjan has an HP28S from 1989.
21:42:30 <ihope> The TI-86 has a whopping 128KB of RAM.
21:42:34 <bsmntbombdood> I want a HP{4,5}{8,9,5}G
21:43:18 <ihope> The TI-83 has 256KB.
21:43:41 <ihope> Plus flash ROM.
21:43:52 <ihope> In the Silver Edition, that's 2MB.
21:44:11 <bsmntbombdood> TI-89Ti, that has uber ram+flash
21:44:21 <bsmntbombdood> :)
21:45:39 -!- ihope_ has joined.
21:45:55 <ihope_> The TI-86 seems to have no flash ROM. It has twice as much ROM as RAM, actually.
21:47:08 <jix> ti-86 is from 1997
21:49:26 <ihope_> The TI-89 still has less than the TI-83 Silver Edition.
21:49:40 <bsmntbombdood> don't think so
21:51:16 <ihope_> The Voyage 200 has 2.7 MB of flash ROM and 188 KB of RAM.
21:52:50 <ihope_> Now, the TI-Nspire CAS has a whopping 36 MB of memory.
21:53:22 <ihope_> 16 MB of that is RAM, which should make it possible to run Linux on it :-)
21:53:22 <bsmntbombdood> oooooh
21:54:27 <ihope_> Will have, I mean.
21:54:41 <ihope_> Not out yet, I think.
21:56:18 <bsmntbombdood> oh
21:56:38 <bsmntbombdood> I want an HP calc
21:56:44 <ihope_> HP, eh?
21:57:00 <ihope_> What's the cheapest one with at least 16MB of memory? :-)
21:57:28 -!- jix has quit ("Bitte waehlen Sie eine Beerdigungnachricht").
21:57:29 <bsmntbombdood> this nspire thing is probably going to be super expensive
22:00:55 <bsmntbombdood> bah, I can't even find out what proc that uses
22:01:34 <bsmntbombdood> And, teachers don't want CAS
22:01:54 <bsmntbombdood> CAS just isn't marketable to schools
22:02:00 -!- ihope has quit (Read error: 110 (Connection timed out)).
22:38:39 * SimonRC suggests that the channel be renamed ##calculators
22:43:16 <ihope_> This channel?
22:43:42 <SimonRC> wyeah
22:43:51 <SimonRC> you keep talking about calculators
23:07:41 <ihope_> Well, lament's the one to talk to about renaming. :-)
23:12:06 <ihope_> "'From now on, I will be recommending sex . . . as the cure-all for intractable hiccups.'" http://en.wikipedia.org/wiki/Hiccup
23:12:12 * rt tries to think of a fun, simple recreational programming project.
23:13:15 <lindi-> sorry to ask here too but has anybody used gdb to debug freebsd's kernel? i got everything working but using "si" command is very painful since the timer interrupt gets triggered between all instructions
23:19:23 <ihope_> And what happened to aftran.com?
23:50:59 <ihope_> My last line there: [11/15/2006 8:32 PM] <ihope> Wait, what?
23:53:33 <bsmntbombdood> we never saw that
23:58:03 <ihope_> Now for a random hostname: dhcp03181.mid-resnet.unc.edu
23:58:54 <ihope_> Aha, it's Aftran's.
23:59:42 <bsmntbombdood> wtf are you talking about?
←2006-11-16 2006-11-17 2006-11-18→ ↑2006 ↑all