00:00:00 --- log: started forth/13.03.17 00:15:45 --- quit: TodPunk (Quit: This is me, signing off. Probably rebooting or something.) 00:16:13 --- join: TodPunk (~Tod@166-70-93-209.ip.xmission.com) joined #forth 00:43:51 --- join: epicmonkey (~epicmonke@188.134.41.112) joined #forth 00:46:23 --- quit: RodgerTheGreat (Quit: RodgerTheGreat) 01:28:27 --- quit: Nisstyre-laptop (Ping timeout: 256 seconds) 02:20:50 --- quit: epicmonkey (Remote host closed the connection) 02:23:22 --- join: epicmonkey (~epicmonke@188.134.41.112) joined #forth 02:34:18 --- join: chaotic_good (476a925c@gateway/web/freenode/ip.71.106.146.92) joined #forth 02:34:20 well 02:34:34 is forth able to do e commerce input output 02:34:38 in 1% the code 03:05:43 --- quit: chaotic_good (Quit: Page closed) 03:15:23 --- join: JDat (JDat@89.248.91.5) joined #forth 03:15:32 --- join: impomatic (~digital_w@123.177.125.91.dyn.plus.net) joined #forth 03:29:23 --- join: jyf (~jyf@124.207.123.62) joined #forth 03:29:44 ttmrichter: i saw you in #concatenative , can i ask you a question about factor? 04:19:36 --- join: fantazo (~fantazo@213.129.230.10) joined #forth 05:01:43 --- join: ncv (~quassel@unaffiliated/neceve) joined #forth 05:14:01 --- join: dto (~user@pool-96-252-62-13.bstnma.fios.verizon.net) joined #forth 05:33:20 jyf: Sure. But I'm hardly an expert in it. 05:40:18 --- quit: dto (Remote host closed the connection) 05:44:27 --- quit: Bahman (Read error: Connection reset by peer) 06:18:22 --- join: protist (~protist@195.224.69.111.dynamic.snap.net.nz) joined #forth 06:22:31 i am using gas 32bit at&t syntax...and i have a macro i am using like 50 times...is there a way to make a macro that will take 50 args and apply the macro to each arg? 06:28:14 Hello Forthists! 06:28:29 there are nows regarding Rasberry Pi and Forth 06:28:49 1st bare metal forth for raspberry on public! 06:28:50 http://www.raspberrypi.org/phpBB3/viewtopic.php?f=72&t=36391&p=311673 06:35:39 this is good news. 06:36:54 protist, whatever you are doing, it sounds not intelligent or clean. 06:38:22 fantazo: i am making an entry table for a FORTH i am making 06:38:38 fantazo: sounds pretty normal to me 06:38:43 protist, and for that you need 50 args? 06:39:03 fantazo: 20...but i am building a data structure with macros 06:39:33 fantazo: just a big list of references to strings and code 06:40:06 ok. 06:41:06 i am just starting the big debugging phase of this...but i think i can make this forth decent in under 300 lines 06:41:28 maybe 400 :/ ....but my indirect threaded one was overcomplicated and over 800 lines 06:41:49 i realized a bunch of things that could be done better 06:43:39 and what are you doing with forth besides writing your own implementation? 06:44:06 fantazo: why do you care? 06:44:35 fantazo: is there something wrong with writing forths?...that is part of the beauty of it...the ease of implementation 06:45:02 protist, just interest. 06:45:20 ah...i thought you were being snarky 06:45:52 there is nothing wrong with it. On the other hand forth could need some application code, besides forth systems. 06:46:50 i like forth and i like asm...this is a good way to practice both...i started thinking about writing a compiler in forth recently...and started expanding on gforth's case statement...then noticed gforth is ugly...and my indirect threaded forth was sloppy as well 06:47:25 so i am attempting to make a much simpler forth than my last one....then i'll play with control structures in a cleaner environment 06:48:51 nice. 06:48:55 :) 06:48:55 Which implementation strategy are you working on now, protist? 06:49:06 Direct threading? Token? 06:49:14 ttmrichter: direct threaded..and none of the typing nonsense i had before :) 06:49:28 * ttmrichter is still sticking with indirect for now. 06:49:43 When I get A Round Tuit in my Copious Free Time™ that is. 06:49:54 hehe 06:50:34 i want a simple and fast forth...i want to go from asm => forth => compiler => compiled language 06:50:42 i want to play with the whole process 06:50:53 I got a new shiny today. :( 06:51:00 new shiny? 06:51:23 http://www.youtube.com/watch?v=A03AENwOVNY 06:51:25 This. 06:51:35 the interesting thing simple and fast isn't that simple.. 06:53:41 fantazo: i only plan to accomplish better speed through not being indirect and having cleaner asm with less conditional branching 06:53:54 fantazo: i had a bunch of branching i realised wasn't needed 06:54:35 ttmrichter: haha 06:55:45 It's a 32-bit MCU with a 3D gyroscope, 3D accelerometer and a magnetic compass. 06:56:04 THAT THING IS SCREAMING "QUUUUUUUUUUUAAAAAAAAAAAAAAAAAAAAAADCOPTER!" IN MY EAR! 06:56:06 fantazo: also my inderict threaded forth had a software stack it was using for recursive execution of words defined in terms of other words...i noticed that i was probably using that more than the hardware stack! 06:56:08 --- join: RodgerTheGreat (~rodger@71-13-215-142.dhcp.mrqt.mi.charter.com) joined #forth 06:56:34 fantazo: but this implementation requires no recursion for word execution...because all words get expanded into primitives 06:57:15 ttmrichter: hehe...what are you planning with that? 06:57:30 QUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADCOPTER! maybe? :D 06:57:32 * ttmrichter isn't sure. 06:57:36 ttmrichter: lol 06:57:44 I get these things for free from a friend. 06:58:00 It's not like I go out looking for them. I just ... have them dropped in my lap. 06:58:19 STM8L-Discovery, STM32L-Discovery, STM32F4Discovery and STM32F3Discovery now. 06:58:24 Each one of them is a cool toy. 06:58:33 Too many shinies. Not enough time. :( 06:59:02 Perversely I want to do the STM8 one first. 06:59:20 Because I have a fetish for kit that's tiny and restricted. 07:01:25 which reminds me, a friend of mine was suggesting that Forth would be good for these things: http://www.penny-arcade.com/report/editorial-article/sifteo-cubes-ditch-brute-power-for-engineering-and-present-a-funky-challeng 07:08:45 ttmrichter: two question, 1, is the java version factor still under development? 2, is it easy to port factor on arm device? 07:09:18 to my knowledge the answer to both of those questions is "no" 07:09:28 although historically there *was* an ARM backend 07:09:32 my bad luck 07:09:44 what are you trying to do with Factor? 07:10:05 you'd have somewhat better chances of getting a definitive answer in #concatenative 07:10:06 i have a chromebook from samsung 07:10:16 which is the famous $249 version 07:10:51 ah so you just have an ARM linux machine and want to try to get factor working 07:10:56 RodgerTheGreat: cant speaking in that channel 07:11:11 RodgerTheGreat: yes, working under the develop mode 07:11:45 i have checked factor's library, and found its has many morden library supporting which could fits my needs 07:11:53 well if speed isn't important one option could be to use qemu to run factor I guess 07:11:54 and still its small and stack based 07:12:32 its not speed but the native accessing could avoid my using qemu 07:18:52 jyf: AFAIK the Java version was abandoned years ago and rewritten. 07:19:06 And ... yeah, porting to the ARM would be non-trivial, I htink. 07:19:54 ttmrichter: since its just start from 2003, this project is really a activity one 07:20:07 it depends quite heavily on a JIT compiler which targets x86 07:20:36 * ttmrichter takes a wild shot in the dark and guesses that jyf is 中国人? 07:20:45 And yeah, it's the JIT that's the killer. 07:20:51 Porting that to ARM would be ... ugh. 07:20:56 ttmrichter: i am yunfan's alia, yunfan is a account in my vps :] 07:21:11 Ah. I get it now. :) 07:21:15 ttmrichter: now i am on my home pc so .. 07:21:16 Jiang Yunfan, then? 07:21:17 --- quit: fantazo (Remote host closed the connection) 07:21:33 ttmrichter: yep, i think you have checked my google+ 07:22:08 Did I? 07:22:12 * ttmrichter can't recall. 07:22:17 Did I circle you? 07:22:25 then how did you know my familly name? 07:22:30 * ttmrichter was guessing "Jiang" as the only Chinese family name he can think of that begins with J. :D 07:22:38 oop 07:22:45 nice work 07:23:07 If you're on G+, feel free to circle me, incidentally. 07:23:44 well i do have that account, but i am a heavily user of google reader, i take 2 hours+ a day on that 07:24:16 google plus is massive to me, and damn they are going to shutdown it 07:24:57 ttmrichter: what do you use g+ for? 07:28:11 G+ isn't getting shut down. 07:28:13 GR is. 07:28:30 Oh, never mind. 07:28:32 I misread. 07:28:38 I use G+ mostly to yak. :) 07:29:03 i like to clean the number to zero, what do you call this? 07:29:12 Which number? 07:29:49 like i will check all my GR feeds , reading those i like, and then mark all rest as readed 07:30:06 "Mark as read" is how I call it. :) 07:30:26 like make my unread email in gmail to zero and clean the spam mails 07:30:47 I rarely have more than 10 emails in my inbox at all, read or unread. 07:30:58 Everything else is filtered or deleted. 07:31:05 but seems g+ is not suit that mode, and its loading time is too slow since i need to accessing that via my vps 07:31:47 yes, i also like to setup many filters and tagging those email 07:32:40 ttmrichter: so would you recommend forth relevant article on your g+? 07:33:15 if so, tell me your g+ link 07:34:25 There's a Forth community, but it's pretty dead. 07:34:33 And just look for the only "Michael Richter" in China. :) 07:36:45 well, yesterday when i went to lisp 2013 meetup at beijing, i meet 4 forth lover 07:36:52 in one region :] 07:37:03 wow 07:37:21 That's a pretty radically high number. 07:37:24 :D 07:37:28 Anyway, time for bed. 07:37:30 Chat later. 07:38:23 amazing number , isnt it? 07:39:08 goodnight 07:39:21 seg faults will wait for tomorrow lol 07:39:43 --- quit: protist (Quit: Konversation terminated!) 08:23:34 --- quit: tangentstorm (Ping timeout: 256 seconds) 08:46:08 --- join: kumul (~mool@c-76-26-237-95.hsd1.fl.comcast.net) joined #forth 09:19:29 --- quit: kumul (Ping timeout: 245 seconds) 09:24:12 --- quit: tgunr_ (Read error: Connection reset by peer) 09:25:17 --- join: tgunr_ (~davec@66.249.166.10) joined #forth 09:28:48 --- join: kumul (~mool@c-76-26-237-95.hsd1.fl.comcast.net) joined #forth 09:30:21 --- quit: jdavidboyd (Remote host closed the connection) 09:53:36 --- quit: jyf (Quit: WeeChat 0.3.7) 09:59:26 --- join: jdavidboyd (~user@72.185.97.240) joined #forth 10:25:33 --- join: Onionnion (~ryan@adsl-68-254-161-22.dsl.milwwi.ameritech.net) joined #forth 10:39:49 --- join: _spt_ (~steven@unaffiliated/-spt-/x-5624824) joined #forth 10:57:31 --- join: mark4 (~mark4@71-85-199-221.dhcp.stls.mo.charter.com) joined #forth 10:57:31 --- mode: ChanServ set +o mark4 11:37:28 --- join: dto (~user@pool-96-252-62-13.bstnma.fios.verizon.net) joined #forth 11:40:39 --- part: _spt_ left #forth 12:07:46 --- quit: mark4 (Quit: Leaving) 12:42:48 --- join: I440r (~zhiming@71-85-199-221.dhcp.stls.mo.charter.com) joined #forth 12:42:48 --- mode: ChanServ set +o I440r 12:42:49 --- quit: dto (Remote host closed the connection) 12:59:34 --- join: john_metcalf (~john_metc@123.177.125.91.dyn.plus.net) joined #forth 13:00:46 --- quit: epicmonkey (Ping timeout: 246 seconds) 13:17:13 --- quit: john_metcalf (Ping timeout: 246 seconds) 13:17:34 --- join: john_metcalf (~john_metc@123.177.125.91.dyn.plus.net) joined #forth 14:05:19 --- quit: kumul (Ping timeout: 245 seconds) 14:35:08 --- join: Sgeo (~Sgeo@ool-ad034ea6.dyn.optonline.net) joined #forth 14:52:30 --- join: DocPlatypus (~skquinn@98.195.26.149) joined #forth 14:55:12 --- join: kumul (~mool@c-76-26-237-95.hsd1.fl.comcast.net) joined #forth 14:59:16 --- join: dto (~user@pool-96-252-62-13.bstnma.fios.verizon.net) joined #forth 15:02:55 --- join: Nisstyre-laptop (~yours@oftn/member/Nisstyre) joined #forth 15:59:59 --- quit: JDat () 16:21:49 --- quit: ncv (Remote host closed the connection) 16:35:54 --- join: Orange_Foxes (~foxes@237.177.smarthome.spb.ru) joined #forth 16:36:11 Hi, all! 16:38:47 hello 16:41:14 I have a small question, can you help, please? 16:42:08 I run in gforth 0.7.0 on Debian this code: 16:42:11 include unix/socket.fs 16:42:12 s" localhost" 80 open-socket 16:42:12 dup s\" GET / HTTP/1.0\n\n" rot write-socket 16:42:12 dup pad 8092 read-socket type 16:42:13 close-socket 16:42:39 and have this result: 16:42:48 in file included from *OS command line*:-1 16:42:48 http_test.fs:4: Division by zero 16:42:48 dup pad 8092 >>>read-socket<<< type 16:42:48 Backtrace: 16:42:48 $B7242550 um/mod 16:42:50 $B7242C60 ms@ 16:43:58 What am i doing wrong? 16:52:16 hmm 16:53:06 I'm not sure 16:56:39 Sorry, all right, then I'll go :) Thanks, good luck! 16:56:51 --- quit: Orange_Foxes (Quit: leaving) 17:06:58 well, somewhere, something's getting a zero that shouldn't be 17:07:29 my first thought was maybe s\" was working incorrectly and it was executing / 17:07:43 but the code above seemed right 17:09:46 can't be that, because Gforth would probably gripe about not being able to parse GET as a word 17:10:02 hmm 17:10:10 have to try it myself 17:10:35 it's short and it's a word so it may well be defined in some vocabulary 17:11:16 I mean if I was implementing some sort of record system I might be tempted to use that name 17:11:16 /usr/share/gforth/0.7.0/unix/socket.fs:48: libtool compile failed 17:11:21 so I have to install libtool and try again 17:11:21 welp 17:12:01 a word "GET" is not defined in the gforth manual's word index though 17:12:19 works for me! 17:12:33 I get ... about what I'd expect to get. 17:13:15 --- join: kumool (~mool@c-76-26-237-95.hsd1.fl.comcast.net) joined #forth 17:15:24 --- quit: kumul (Ping timeout: 258 seconds) 17:16:58 DocPlatypus: must be some problem with that guy's gforth installation then 17:17:52 has to be 17:18:12 I bet he has no http server running on port 80 17:19:43 or something like that 18:32:50 --- quit: dto (Remote host closed the connection) 18:39:17 --- join: dto (~user@pool-96-252-62-13.bstnma.fios.verizon.net) joined #forth 18:59:54 --- quit: dto (Remote host closed the connection) 19:15:18 it seems that vmkit is written in forth? 19:43:49 http://vmkit.llvm.org/ <-- this vmkit? 19:45:19 20k LoC per VM 19:45:30 that doesn't sound very forthy. :S 19:55:52 Precise garbage collection. 19:55:56 definately NOT forth 19:56:50 I wrote one of those in forth, silly 19:57:12 as if there's a more convenient language for writing one 19:57:44 garbage collection is just deferred free. lets not do free now, lets wait till we have 387465346593 things we need to free, that way we can impact the system MUCH WORSE than if we just freed the block immediately 19:59:09 yes 19:59:17 I440r: I see you're up to date on research on garbage collection. 19:59:57 is it not forthy to disentangle unrelated concerns in the interest of simplifying code? Garbage collection allows you to write, for example, list manipulation words which are expressed clearly and concisely without having memory management code leak into everything 20:00:10 RodgerTheGreat: and mozilla has a project which is a branch of adobe's avm2, which impl its vm using forth, interesting found 20:00:17 neat 20:00:48 --- join: tangentstorm (~michal@108-218-151-22.lightspeed.rcsntx.sbcglobal.net) joined #forth 20:01:03 yo tangentstorm 20:02:09 I440r here thinks that garbage collection is incompatible with forth programming philosophy. I disagree, saying that sometimes GC can simplify code and centralize memory management concerns. Thoughts? 20:04:24 RodgerTheGreat: I think GC is Forthy in the same way that IO is Forthy. 20:04:27 If you need it, you supply it. 20:04:37 yeah that's what I'm saying 20:04:39 And you supply it in the form that fits your problem domain. 20:04:44 cm would probably think a memory allocator/deallocator is incompatible with forth programming phgilosphy 20:05:11 what, so he's stopped using a dictionary? 20:05:36 thats not allocation/deallocation 20:05:39 thats allotment 20:05:42 thers no deallot 20:06:05 static allocation leads to more wasted space than a managed or unmanaged heap. Sometimes that's acceptable and simpler. Other times it's unacceptable and you should build something more sophisticated. 20:06:06 I don't think GC goes against the Forth philosophy in and of itself 20:06:30 that said I haven't recently written anything which requires GC 20:06:34 neither overengineer nor oversimplify 20:06:40 Since the Forth philosophy, such as it is, is "DIY", surely adding GC yourself qualifies. 20:06:50 RodgerTheGreat, cm would probably think if your solution needed something as complex as dynamic memory allocation you need to rethink your solution :) 20:06:58 fair 20:07:07 im not QUITE that bad 20:07:17 isforth has a dynamic memory module 20:07:30 but if you need gc you need to rethink your solution 20:07:34 * ttmrichter has a conservative GC lying around here somewhere. 20:08:10 right now im writing pic24 code in c 20:08:10 I440r: well, sometimes I write lisp interpreters in forth, and the only alternatives to having a GC are horrific 20:08:11 :/ 20:08:15 a interesting concept, that project itself is a vm build on another tiny vm , which is a forth 20:08:26 RodgerTheGreat, you just PROVED my point :P~ 20:08:28 tybm 20:08:32 tyvm even 20:08:36 Forth isn't a VM, yunfan. It's an abstract machine that is the essence of a VM. :D 20:09:17 im in o'fallon missouri now 20:09:29 tangentstorm: i must say sorry to you that i was planning to wrote my idea this weekend, but i have other things to do 20:09:51 yunfan where are you from? 20:09:59 that sounds like a chinese sounding nicname 20:10:21 yunfan: That reminds me, I got your circling. :) 20:10:23 yunfan: no problem :) 20:10:29 ttmrichter: ok, its abstract machine, but if its token thread, isnt it like a byte code? 20:10:37 hey RodgerTheGreat. What's up? 20:10:43 ^ 20:10:46 I440r: yes i am chinese, what about you? 20:10:47 yunfan yes token threading is sort of like bytecode :) 20:10:52 yunfan: And abstraction of bytecode, yes. :) 20:11:00 no im not chinese, i have delusions of learing to speak it tho :)O 20:11:17 I guess I'm a fan of Garbage Collection. :) 20:11:31 I440r: hard job :] 20:11:32 I440r: as above, it's not like there's a better language for implementing a lisp than Forth anyway. :) 20:11:42 yunfan theres an old OLD game called wizzardry that was written for the Apple IIe in pascal i think 20:12:05 the guy that did the IBM PC port of it did it using a token threaded forth 20:12:28 yunfan i can say ni hao! thats a start :) 20:12:50 and "nali nali" <-- that one seems like an important one :) 20:13:04 I440r: Next step is to say 你好 and 哪里哪里. 20:13:25 Pretty 20:13:58 if i keep watching enough cheezy kung fu movies on youtube.. . .. 20:14:16 i just watched a good one too :P~ but it was dubbed 20:14:17 blah 20:14:27 just like when we study english, we learned" hi, how are you, i am fine thank you and you" 20:14:52 yunfan: You *don't* want to know how I teach that class. :D 20:14:54 i think many foreighner in china would be bored by this times ttmrichter :] 20:15:12 Bah! There's nothing boring about living in China. 20:15:19 i prefer the chinese way of saying hi. not "how are you" which pre-supposes the possibility for being bad... in chinese you say "your good" 20:15:32 chinese have a different way of thinking about these things 20:15:59 I440r: Next time try "have you eaten?": 吃饭了没有? (Chifan le meiyou?) 20:16:26 ttmrichter: you're really familliar with that 20:16:42 I'm in my twelfth year here, yunfan. :) 20:17:07 pinyin does a number on my brain tho 20:17:39 oop, but actually i hope i could born to speak english 20:17:51 yunfan: No, you don't want to. 20:18:02 Anglophones are ... very linguistically narrow-minded. 20:18:05 the language is really a problem for my learning tech 20:18:14 If you want to be a polyglot you want to be a non-Anglo European. 20:18:30 anyway, code sample is always readable 20:18:32 Then you learn English (often better than the natives) *and* you have a better view toward language in general. 20:18:53 that's why i like to see samples not explanations 20:19:22 * ttmrichter likes both. :) 20:30:53 --- quit: Onionnion (Ping timeout: 258 seconds) 20:50:31 --- quit: Eth|cal (Ping timeout: 264 seconds) 21:15:45 --- quit: RodgerTheGreat (Quit: RodgerTheGreat) 21:54:03 --- quit: kumool (Quit: Leaving) 22:01:17 --- quit: jdavidboyd (Remote host closed the connection) 22:07:16 --- join: Eth|cal (~sam@ppp59-167-172-238.static.internode.on.net) joined #forth 22:24:58 --- quit: tangentstorm (Read error: Operation timed out) 22:25:50 --- join: tangentstorm (~michal@108-218-151-22.lightspeed.rcsntx.sbcglobal.net) joined #forth 23:22:18 --- quit: Nisstyre-laptop (Ping timeout: 256 seconds) 23:55:40 --- quit: I440r (Remote host closed the connection) 23:59:59 --- log: ended forth/13.03.17