00:00:00 --- log: started forth/13.11.27 00:27:25 --- quit: Bahman (Ping timeout: 240 seconds) 00:29:41 --- quit: nisstyre (Ping timeout: 252 seconds) 00:48:29 --- join: nisstyre (~yours@oftn/member/Nisstyre) joined #forth 01:36:13 is there any tool to analyze forth code 01:36:31 and found which word ref what words 01:36:52 and finally shows an directed graph? 01:52:41 --- join: LinearInterpol (~RJones@cpe-76-179-150-229.maine.res.rr.com) joined #forth 02:19:50 haha i asked the same thing a while back. still don't have an answer. 02:20:02 although colorforth's editor is pretty awesome for navigation. 02:21:15 --- join: Bahman (~Bahman@2.146.33.217) joined #forth 02:23:04 tangentstorm: i could make that myself 02:23:26 its not a hardwork, i just want to know if there're some exists tool doing that 02:24:36 it actually is kind of hard... 02:25:22 actually i'd say it's kind of hard in forth but not hard in colorforth. 02:25:37 because in colorforth all the tokens are tagged. 02:26:37 in regular forth to do it right you have to specially handle any word that reads from the input stream. 02:27:24 : because ." does this reference these ! @ + dup swap?" 02:28:02 : or what about the fact that ['] because didn't have a semicolon? ; 02:42:09 --- quit: kludge` (Ping timeout: 245 seconds) 02:42:57 --- join: kludge` (~comet@unaffiliated/espiral) joined #forth 03:07:08 tangentstorm: "Hard in forth"? Have you seen Holon? 03:33:15 yes you need to add a extra name field for the words dict 03:38:14 --- quit: Bahman (Quit: Leaving.) 03:44:20 yes i've used holon, true-grue 03:44:58 holon did quite a bit of that hard work :) 03:47:41 it's not a criticism... the fact that forth is hard to parse for anything but forth is due to the extreme flexibility of the language. 03:47:59 --- join: Bahman (~Bahman@2.146.33.217) joined #forth 03:48:20 then again if your codebase doesn't take advantage of that flexibility, you can probably get by with a weak parser. 03:49:42 here's an attempt i made in python to parse and colorize part of the retro codebase: https://github.com/sabren/b4/blob/master/go/untangle.py 04:31:32 --- quit: mark4 (Remote host closed the connection) 04:52:36 No, Forth is not hard to parse. 04:53:26 The problem you're facing is not about parsing, it is about analysis. 04:55:28 Of course, if you want to parse it correctly, then right, you can do that only by simulation. 05:00:38 yeah, that's what i meant. 05:12:19 Holon was a very modest attempt... It's little shame that there were no further tries in this area. Many forthers even don't know about existence of Holon. 05:15:30 --- quit: Anarch (Ping timeout: 246 seconds) 05:16:43 --- join: w0rm_x (~w0rm@client-82-26-220-142.pete.adsl.virginm.net) joined #forth 05:18:08 --- part: w0rm_x left #forth 05:21:49 --- quit: nighty^ (Quit: leaving) 05:22:17 --- join: nighty^ (~nighty@lns-bzn-49f-62-147-170-46.adsl.proxad.net) joined #forth 05:22:48 --- join: regreg (~regreg@77.81.151.155) joined #forth 05:23:36 --- quit: mtm (Remote host closed the connection) 05:23:54 --- quit: crc_mobile (Remote host closed the connection) 05:25:09 http://imgur.com/gallery/1SJ3UUC/new <- colorforth inspired source encoding i'm working on 05:27:17 It's funny that most of cF variants/extensions that I have seen were written on Python :) 05:28:40 this one is in coffeescript :) 05:28:59 Ah, yes :) 05:29:02 that screenshot is running in a web browser 05:29:58 Somebody may ask why these forthers don't use their Forth? :) 05:31:05 i'm bootstrapping a forthlike environment. 05:32:48 eventually if possible i'd like to start with just a virtual machine with some display capabilities and an assembler but... 05:33:32 Like this one? http://pelulamu.net/ibniz/ 05:34:14 no 05:34:33 although i've seen that before and i think it's cool :) 05:34:55 i'm making a programming course. 05:35:45 the idea is the students start with the virtual machine and can modify it directly. 05:36:13 like you'll be able to see all the numbers in memory and change them on a grid or something. 05:38:10 anyway this colorforth variant would run atop that. hopefully, the students will actually construct a version of it themselves. 05:38:45 Well, if someone will ask me to make a programming course, I would be started it with three great books: Starting/Thinking Forth (Forth), SICP (Scheme) and Compiler Construction (Oberon). 05:39:27 --- join: crc_mobile (sid2647@gateway/web/irccloud.com/x-tysgqriucfzdchjc) joined #forth 05:40:31 :) those are all some of my favorite books! 05:40:56 --- join: mtm (uid16845@gateway/web/irccloud.com/x-thrlcvkuasjrqzdj) joined #forth 05:41:20 before i found forth, i planned to start with a simulator for wirth's RISC processor 05:42:11 but i kind of wanted to start with a stack machine, and that lead me to retroforth's ngaro vm. 05:43:04 How about switching from soft-simulators to FPGA? 05:43:39 i can't... it's an online thing. it has to run in a browser. 05:44:06 although i'd love it if there were also an fpga implementation. 05:44:06 Check this one :) http://www.youtube.com/watch?v=oh1_MzuFtdU 05:47:11 --- quit: Bahman (Quit: Leaving.) 05:47:27 true-grue: Don't forget The Art of Prolog. 05:48:06 pretty cool :) 05:50:16 ttmrichter: Sure. But those three books are fundamental. And it's shame that there is no such easy-to-read book about Prolog with easy explanation of language internals/toy implementation. I personally see Prolog as a DSL, not as a stand alone PL :) 05:50:57 That's an interesting stance. What makes it not a stand-alone PL? 05:54:13 ttmrichter: For me? Because of course there are many stand-alone implementations. I think that the base language should be closer to hardware. At least in imperative sense, like Forth, Oberon or Scheme. And on top of that language you can build Prolog or something else. 05:55:03 Taking that stance to its logical conclusion and the only standalone PL is assembler. 05:55:24 I'm not sure that's a useful definition. 05:55:41 Looks like a Prolog inspired logical deduction :) 05:55:57 A "domain specific language" (DSL) has a domain that it is targeted toward. Indeed it is usually not even Turing complete. 05:56:21 As soon as you get Turing completion you start to break out of the "domain specific" world, IMO. 05:56:42 And when Turing completion is the norm (i.e. trivial to use) it is a general purpose language. 05:57:16 No. Think about valuable, expressive notation, not about Turing or something. 05:57:46 If you want to go expressive, then C isn't a standalone programming language. :) 05:57:58 Oberon's pretty restrictive in its expression as well. 05:58:13 Scheme's pretty expressive (although I don't like that particular mode of expression; that's a taste issue, however). 05:58:20 Prolog's easily as expressive as Scheme. 05:59:32 Base language should have facilities to build expressive notations on top of it. Most of PL's don't have even an integrated BNF parser :) 05:59:51 Prolog qualifies by that standard as well then. 05:59:59 DCGs were built atop Prolog primitives. 06:00:27 DCGs are basically executable BNF. (Simultaneously more and less than that, but about that level of power.) 06:01:08 Expressive or not -- depends on the domain/problem. There is no PL which has a universal expressivity. You need many languages for that. 06:01:18 Well that's certainly true. 06:01:34 But I wasn't claiming it was universally expressive. I'm trying to fathom why you think it's not standalone. 06:02:30 I said "for me". Many statements about PLs are matter of taste essentially. 06:57:46 --- join: Anarch (~olaf@c-67-183-64-49.hsd1.wa.comcast.net) joined #forth 07:01:45 --- join: Zarutian (~zarutian@194-144-84-110.du.xdsl.is) joined #forth 07:09:37 --- quit: regreg (Ping timeout: 248 seconds) 07:31:51 --- join: asie (~textual@178235038113.elblag.vectranet.pl) joined #forth 07:45:01 --- join: regreg (~regreg@77.81.151.155) joined #forth 07:53:30 --- quit: regreg (Ping timeout: 246 seconds) 08:24:05 --- quit: Zarutian (Quit: Zarutian) 08:36:33 --- quit: asie (Quit: I'll probably come back in either 20 minutes or 8 hours.) 08:44:08 --- join: Zarutian (~zarutian@194-144-84-110.du.xdsl.is) joined #forth 08:50:30 --- join: kumool (~mool@adsl-64-237-226-44.prtc.net) joined #forth 08:53:02 --- quit: robonerd (Ping timeout: 248 seconds) 08:56:19 --- join: robonerd (~user@unaffiliated/key) joined #forth 09:39:43 true-grue 09:39:49 universal expressivity? 09:50:38 robonerd: yes? :) 09:51:42 what does thta mean please? 09:54:24 Ok. Try to use musical notation to describe chemical formula, or vise versa. There are no universal notations that would be equally good for all possible domains/problems. 09:56:51 Well, one could argue that those are both colored pixels arranged in a 2D array. 09:57:00 They're the same notation. 09:57:13 They evoke different *mental processes*. 09:57:46 So in each case you have a "different program" constructed from the same "low level operations." 09:58:21 And the purpose of each program is to facilitate human thought in a particular domain. 09:59:14 Both cars and refrigerators are made from the same sorts of "stuff." 09:59:22 Are they good for the same things? Of course not. 09:59:31 It is still an open question whether we do need Turing-complete languages... 09:59:39 Coats and bathing suits are both made of cloth... 10:00:33 That's an interesting point. Yes, a Turing-complete language can "do anything." But some things aren't worth doing... 10:01:04 true-grue ah ok. so programming field has no language with universal expressiveness? 10:01:08 why hasn't this been developed? 10:01:19 like, a language based solely on abstract constructs that can be composed 10:02:05 KipIngram: decider can "do anything" as well. 10:02:46 Yeah, sure deciders cannot do some things TMs can do, but do you really need to do that? 10:03:07 Ok, then they can't "do anything." You're just saying they can do anything worth doing. 10:03:15 See total functional programming :) 10:03:18 Which may be true - I'm not familiar with what they even are. 10:03:34 Yes, see total functional programming. 10:04:22 http://en.wikipedia.org/wiki/Total_functional_programming 10:04:42 robonerd: Don't confuse expressivity with computability. The former is only for user of the language. And it can be based on non-text representations etc. 10:04:50 true-grue wait doesn't apl have universal expressiveness? 10:06:18 true-grue so when you talk of chemical composition and music notation, i understand what you mean. you have these finite sets of constructs which can be composed in standard ways to make 'anything'. we need that for software development 10:06:23 i want to build it if it doesn't yet exist 10:06:37 I thought they all had universal expressiveness. 10:06:44 Isn't that more or less the point? 10:07:20 Up to the limits of TMs, at least. GEB was all about the limitations of formal logic. 10:07:53 In any formal system of logic there are expressions that are true, but cannot be proven true within the context of the system itself. 10:08:02 --- join: asie (~textual@178235038113.elblag.vectranet.pl) joined #forth 10:08:04 KipIngram: no, that's prove wrong. 10:08:18 You're telling me Godel's theorem has been proven untrue? 10:08:19 proven. 10:08:33 Yes, see Goedel's completeness theorem. 10:08:34 I strongly think I would have heard of that. 10:08:42 When did this happen? 10:08:49 In thirties, AFAIR. 10:09:17 You miss the fact that there're _two_ theorems after Goedel: 10:09:19 completeness theorem and incompleteness theorem. 10:09:24 Ok. 10:09:30 Educate me, please. 10:09:34 Briefly. 10:09:47 The result is basically this. 10:09:52 1st theorem: FOL is complete. 10:10:00 2nd theorem: PA is incomplete. 10:10:01 FOL? 10:10:16 First-order logic. 10:11:12 --- quit: asie (Client Quit) 10:11:35 --- join: asie (~textual@178235038113.elblag.vectranet.pl) joined #forth 10:11:49 --- quit: asie (Client Quit) 10:12:30 Alright, I misremember, it is 1929. 10:12:34 Reading... 10:13:13 --- join: asie (~textual@178235038113.elblag.vectranet.pl) joined #forth 10:13:35 Ok, then this implies that the "Godel's Theorem" that the author of GEB made such a hoo ha about was the incompleteness theorem? 10:13:56 Which of "GEB"? 10:14:20 A book. "Godel, Escher, Bach." 10:14:28 Ah. 10:14:31 Published in the 60s or 70s, I think. 10:14:39 Very thick book. 10:14:52 Well... This is popular science. 10:15:37 Well, lay science. But I still expect lay science to be "correct." Or else the book shouldn't be published. 10:15:55 I don't expect it to be correct. 10:15:58 There's no harm in trying to explain general concepts to people who don't have the training to drill down to the detailed level. 10:16:41 But there is great harm in using the fact that you're not going to lay out every detail as an opportunity to slide in incorrect conclusions. 10:17:03 Take some of Feynman's books, for example. 10:17:15 He was a master of explaining rarified concepts to general readers. 10:17:24 I'm pretty sure that Feynman doesn't tell full story either. 10:17:45 If you try to explain everything really correct you'll dive in details before you take off. 10:18:17 And you'll lose most of your audience along the way, unless you've targeted an academic audience. 10:18:24 Sure. 10:18:26 The point is that these are not intended to be textbooks. 10:18:45 In general, incompleteness theorem was indeed an astonishing result back then. 10:18:50 ASau: well Feynman always gives the disclaimer that his explanations are coarce and should be verified 10:19:07 Yes. Feynman was a very conscientious guy. 10:19:18 Zarutian: I didn't read his lectures. 10:19:44 We have other physisists that wrote popular science books before Feynman. 10:19:48 Anywa. 10:19:51 Anyway. 10:20:01 Another example is astronomy. To "really understand it" you'd have to study general relativity. But there are many very educational lay astronomy books that don't even go into the Newtonian explanation to a fully detailed level. 10:20:10 ASau: well I watched some that were recorded to film then transcoded into digital form and made aviable on the net 10:20:16 Sure - his were just the ones that sprang to mind. 10:20:31 Incompleteness theorem was an astonishing result, and this is why it left such an outstanding impression that leaves many other things in shadows. 10:20:46 Now the "Feynman Lectures" were intended to be fairly rigorous, I believe. 10:20:54 Those were actual lectures to actual students of physics. 10:21:06 I'm thinking of Q.E.D., for example. 10:21:11 That was for the popular audience. 10:21:45 KipIngram: I've been "there", and I know that even best universities don't cover details in simpler fields. 10:22:19 There are a lot of details... 10:22:35 One does have to eventually graduate with a useful amalgamation of knowledge. 10:22:46 For instance, I had an experience of learning statistical mechanics from translation of original Gibbs' works, 10:22:57 and presenting that to our teaching assistant. 10:24:16 My interpretations differed from what TA expected. 10:31:58 KipIngram: if you read Prigogine's popular science, you get completely different mind-bending experience. 10:38:36 I like mind-bending experiences. 10:38:43 I will look up some of his stuff. 10:40:58 Feynman can be associated with parallel computing too. 10:41:05 Oh y es. 10:41:22 Feynman did some very interesting stuff on the physical foundations of computing. 10:41:36 Theoretical limits on energy consumption, etc. 10:42:00 Not only it: http://longnow.org/essays/richard-feynman-connection-machine/ 10:42:22 Very interesting reading, by the way. 10:44:00 Oh, that's already a fun read... 10:44:53 --- quit: asie (Quit: Textual IRC Client: www.textualapp.com) 10:51:48 --- join: dkordic (~danilo@109-93-122-193.dynamic.isp.telekom.rs) joined #forth 11:05:55 --- quit: nisstyre (Quit: Leaving) 11:21:55 --- quit: Zarutian (Quit: Zarutian) 11:38:49 --- quit: robonerd (Ping timeout: 245 seconds) 11:42:16 --- join: robonerd (~user@unaffiliated/key) joined #forth 11:45:49 --- quit: robonerd (Excess Flood) 11:47:17 --- join: robonerd (~user@unaffiliated/key) joined #forth 12:11:10 Well, I read it in a couple of sittings with some Thanksgiving tasks interspersed, but that was just awesome. 12:11:17 true-grue: Thanks very much. 12:33:19 --- join: nisstyre (~yours@oftn/member/Nisstyre) joined #forth 13:07:22 KipIngram: You're welcome :) 13:07:26 --- quit: true-grue (Read error: Connection reset by peer) 13:08:28 --- quit: goingretro (Read error: Connection reset by peer) 13:09:50 --- join: goingretro (~kbmaniac@host86-157-24-207.range86-157.btcentralplus.com) joined #forth 14:02:11 --- quit: nisstyre (Quit: Leaving) 14:03:28 --- join: Azel (~Thunderbi@125.82.69.86.rev.sfr.net) joined #forth 14:12:55 --- join: nisstyre (~yours@oftn/member/Nisstyre) joined #forth 14:15:20 --- join: ASau` (~user@p5083D665.dip0.t-ipconnect.de) joined #forth 14:18:12 --- quit: ASau (Ping timeout: 272 seconds) 14:20:21 --- quit: Azel (Quit: Azel) 14:22:50 --- join: Azel (~Thunderbi@125.82.69.86.rev.sfr.net) joined #forth 14:25:02 --- quit: nighty^ (Quit: Disappears in a puff of smoke) 14:25:15 --- join: nighty^ (~nighty@lns-bzn-49f-62-147-170-46.adsl.proxad.net) joined #forth 14:31:51 --- nick: ASau` -> ASau 14:46:14 --- quit: nisstyre (Quit: Leaving) 14:48:15 --- join: Onionnion_ (~ryan@cpe-98-144-41-91.wi.res.rr.com) joined #forth 14:51:23 --- quit: Onionnion_ (Client Quit) 16:11:34 --- nick: Adeon -> MaryPoppins 16:21:19 --- quit: dkordic (Quit: Ex-Chat) 16:30:24 --- join: Zarutian (~zarutian@194-144-84-110.du.xdsl.is) joined #forth 17:02:50 --- quit: ASau (Ping timeout: 245 seconds) 17:09:37 --- join: ASau (~user@p5083D665.dip0.t-ipconnect.de) joined #forth 18:53:01 --- join: nisstyre (~yours@oftn/member/Nisstyre) joined #forth 19:10:10 --- join: Bahman (~Bahman@2.146.33.217) joined #forth 19:20:24 KipIngram: BTW, while speaking about TMs 19:20:45 I've forgotten to mention that when you refer to Church-Turing thesis, 19:21:32 you should remember that it is of empirical nature. 19:24:46 It is hypothesis that. 19:26:14 We _think_ that everything that we can calculate can be calculated in LC or by TM. 19:27:14 Whether it is true or not is unclear. 19:28:01 There's another thing with CTT that should be taken into consideration. 19:28:19 CTT establishes upper bound. 19:28:54 Whether we do need general recursion for practical needs or not is another question. 19:29:14 For analogy, consider formal grammars. 19:30:00 Natural languages do not employ even context-sensitive grammars for syntactical structure. 19:30:44 It isn't clear why programming languages should be more complex than natural languages. 19:31:00 And last evidence. 19:31:45 Some people have brought it up that sane programming languages (i.e., not C++) 19:31:59 can be parsed by LL(k) grammars quite reliably. 19:32:46 There're observactions that on practice the largest k reached 4 for notorious DO operator in Fortran 19:33:14 being no more than 2 in the usual case. 19:33:44 Thus Turner has a point. 19:34:14 It may easily be that we don't actually need Church-complete/Turing-complete programming languages. 19:35:22 --- quit: LinearInterpol (Ping timeout: 248 seconds) 19:56:55 --- quit: Zarutian (Quit: Zarutian) 20:24:19 --- join: noneofmynickswor (~mool@66-50-97-148.prtc.net) joined #forth 20:27:22 --- quit: kumool (Ping timeout: 246 seconds) 20:29:15 --- nick: MaryPoppins -> Adeon 20:34:22 --- quit: noneofmynickswor (Ping timeout: 246 seconds) 20:44:16 --- join: noneofmynickswor (~mool@adsl-64-237-226-44.prtc.net) joined #forth 20:45:25 --- join: kumool (~mool@66-50-97-148.prtc.net) joined #forth 20:48:58 --- quit: noneofmynickswor (Ping timeout: 260 seconds) 21:22:30 --- quit: nisstyre (Quit: Leaving) 21:38:36 --- join: nisstyre (~yours@oftn/member/Nisstyre) joined #forth 21:57:49 --- quit: nisstyre (Quit: Leaving) 21:58:31 --- join: nisstyre (~yours@oftn/member/Nisstyre) joined #forth 22:31:17 --- join: aranhoide (~smuxi@227.Red-83-45-165.dynamicIP.rima-tde.net) joined #forth 23:04:53 --- quit: Bahman (Quit: Leaving.) 23:07:35 --- quit: kumool (Quit: Leaving) 23:22:26 --- join: Bahman (~Bahman@2.146.33.217) joined #forth 23:45:01 --- quit: Azel (Ping timeout: 272 seconds) 23:46:05 --- join: true-grue (~quassel@176.14.137.178) joined #forth 23:46:13 --- quit: ASau (Ping timeout: 260 seconds) 23:55:12 --- join: ASau (~user@p5083D665.dip0.t-ipconnect.de) joined #forth 23:59:59 --- log: ended forth/13.11.27