00:00:00 --- log: started retro/12.03.15 00:43:22 --- part: __tthomas__1 left #retro 00:46:15 --- quit: virl (Remote host closed the connection) 04:25:37 --- topic: set to 'Retro Language | http://retroforth.org | Logged @ http://rx-core.org/dev/rancid | Latest Release @ http://s3.retroforth.org/download/11.x/retro-11.3.tar.gz' by crc 04:25:59 --- join: retro-commits (~retro-com@sh1-ext.rs.github.com) joined #retro 04:25:59 [retro-language] crcx pushed 1 new commit to master: http://git.io/K1twqA 04:25:59 [retro-language/master] tag 11.3, update links on www pages - crc 04:25:59 --- part: retro-commits left #retro 07:09:02 --- join: Kumul (~Kumul@66-50-178-117.prtc.net) joined #retro 08:35:04 --- join: __tthomas__1 (~tthomas@slosvr6.aeromecheng.com) joined #retro 09:08:37 --- join: retro-commits (~retro-com@sh2.rs.github.com) joined #retro 09:08:38 [retro-language] crcx pushed 1 new commit to master: http://git.io/iBgzwQ 09:08:38 [retro-language/master] fix some links - crc 09:08:38 --- part: retro-commits left #retro 10:16:26 --- quit: Kumul (Quit: gone) 10:49:03 --- join: Cheery (~cheery@a88-113-48-33.elisa-laajakaista.fi) joined #retro 10:49:13 crc: if you don't have a name for your project.. what do you do? 11:07:28 <__tthomas__1> name? 11:07:37 --- nick: __tthomas__1 -> __tthomas__ 11:37:19 Cheery: see http://rx-core.org/dev/sorrow for some past discussion on this 11:37:30 okay 11:38:49 I choose names based on death, depression, and suffering generally 11:40:40 why? 11:41:02 <__tthomas__> because forth is a dead language.. 11:41:29 I wonder what'd be a language that attempts to be the first usable graphical language ever 11:41:36 --- join: Mat2 (~dambere@91-64-133-197-dynip.superkabel.de) joined #retro 11:42:00 hello everyone 11:42:28 <__tthomas__> you mean like processing.org ? 11:43:09 <__tthomas__> Or something like scratch project from mit? 11:44:08 yes. more like a scratch.. except it's not a language for everyone but just for crazy hackers. 11:45:40 <__tthomas__> You could do it with ngaro pretty easily, only 31 symbols to worry about, with some taking data from following cell, so would need a double cell for lits.. 11:46:57 language for crazy hackers ? Is there a link ? 11:46:59 <__tthomas__> I tried to write something to visualize a vm image, but structure of vm isn't organized in a way that I can tell which cells are data and which are code.. 11:47:35 <__tthomas__> corewars.org 11:47:44 thanks 11:49:20 tthomas: That's the bad aspect of von Neumann designs 11:50:13 <__tthomas__> it is easy to work around though, would just need to set aside region of memory for compiled code, region for variables and region for dictionary.. 11:50:22 but I think it would be possible to visualize within a running retro session 11:51:02 <__tthomas__> mostly yes, but quotes are problematic since you can't look them up in dictionary 11:51:24 a sure, I forgot 11:51:30 Mat2: I don't have a page for the project as it's sort of pet project 11:52:21 <__tthomas__> well, lunch time.. 11:55:17 --- quit: crc (Ping timeout: 272 seconds) 11:56:30 --- join: crc (~crc@li125-93.members.linode.com) joined #retro 12:06:10 I've experimented with maintaining a map of the image in the past, but didn't have a use for it at the time 12:10:26 crc: would it be a huge task for converting ngaro into a Harvard inspred design with seperated address spaces for code and data ? 12:13:09 by the way interpretation on Intel cpu's will profit from it a lot 12:13:14 I've never given consideration to doing separated address spaces 12:13:30 ok 12:15:10 it'd probably not be too difficult to modify ngaro for this, but adapting retro would require more work 12:17:10 this would be woth the time because embedded uses for retro 12:17:18 I mean worth, sorry 12:17:45 how so? 12:19:49 it ease ports for mbed platforms with seperated address ranges for flash, data and code (which are most) 12:20:32 tike boards with 320x cpu's 12:22:18 there would still be writing to both regions though 12:24:07 right, that's why forth systems for these platforms aren't an easy task in my opinion 12:26:16 ibut it would be helpful if segments can be mapped in an easy way, for example to limit storage stress on flash memory 12:32:01 hmm, just study camelforth for the TI MSP-EXP430FR5739 evaulation board 12:33:07 <__tthomas__> I looked into it as well, I don't think it would be that difficult.. The big advantage would be that code is rommable, also you could remove the dictionary completely for applications.. 12:33:59 <__tthomas__> so if you wanted to have two vm's running, they could share the same core code space and just have copies of their own variables and stack.. 12:37:36 <__tthomas__> the zen of eforth is a really good read as well, it has an entire layout of vm and goes into pretty good depth about location of stacks, dictionary, tib, pad and codespace.. 12:39:01 a strict harvard modell is more poblematic because theres no way to write into program memory at all. This limit the interpreter to itc or ttc using only the data-address bus for both code and data (the 8051 is an example for this). 12:39:50 Or the hardware way of overlap both 12:40:09 <__tthomas__> but with a vm that restriction isn't so bad, as you can execute code in ram, just you also have read only memory, so nothing that requires writing can go there.. simplest would be to have high memory vs low memory on image, and then just copy high memory into ram... 12:41:02 yeah, itc and ttc are a horrible slow solution for 8051 12:41:27 but in general that's right of course 12:43:20 <__tthomas__> you can treat it as von newman architecture, you code would just have to be smart enough not to try to write to certain addresses.. mapping it as one continuous address should work.. That is what I was planning to do on my arduino, use eeprom to hold an array of image, and copying part of it to an external spi ram and treating at a single address in ngaro by rewriting push and pop.. 12:44:56 I'm not familar with arduino 12:45:24 <__tthomas__> atmega 328, 32K eeprom for code space, 2K ram, 4K of flash.. 12:45:59 <__tthomas__> I would have to strip the image somewhat, I don't really need string or file facilities on this device.. 12:48:09 I had used a similar procedere you describe for utilizing te 256 16-bit sram of my old ti99/4a, works fine 12:49:14 (I was crazy enough to get one for experimenting with ti9900 cpu design) 12:49:33 and learnd a lot 12:49:52 <__tthomas__> I was thinking of tethering it to retro.. could have retro compile the code and use its dictionary on windows.. Then via serial port have a load - loads stream from memory location, store - stores stream to memory location, run - update program counter to start running at address... 12:52:24 there exist a really old fig forth version for the c128 which use this method (with one exception: the 128 has an MMU which make this an easy task) 12:52:41 probably it is of interesst for you 12:53:21 <__tthomas__> http://pygmy.utoh.org/3ins4th.html I got idea from 3 instruction forth by Frank Sergeant, he is the guy that wrote pygmy forth.. 12:53:57 <__tthomas__> his target only had 192 bytes of ram.. 12:54:42 thanks, nice link I will study it right now 12:55:51 for my own vm I had implemented a harvard design wth seperate code and data segements 12:57:25 (which gains performance as side effect on modern superscalar designs like amd64) 12:57:52 specially PowerPC 12:59:24 <__tthomas__> I am more concerned with memory useage than performance at least in this case, I have two dev boards that I am wanting to play with.. 13:00:25 <__tthomas__> Though I also kind of want to try and write a ray tracer.. 13:01:22 we had 3D modellation in mind so performance is important for me 13:01:43 and parallel processing of course 13:02:49 <__tthomas__> I really want a programming language I can embed for reading configuration data on startup, it needs to use like no memory though.. which is why lua is out... dynamic memory is very bad in this case.. 13:05:09 don't tell this the lua folk, there will cruzify you ;) 13:05:47 <__tthomas__> heh, to be fair they do have the hooks in place so you can write your own memory management, but who wants to do that.. ;) 13:06:43 *lough* 13:07:38 I will spend some time on work now, ciao 13:11:06 --- part: Mat2 left #retro 13:16:37 --- join: virl (~virl__@85-127-158-77.dynamic.xdsl-line.inode.at) joined #retro 14:20:50 --- join: Raystm2 (Raystm2@c-71-196-164-161.hsd1.co.comcast.net) joined #retro 14:31:59 --- part: Raystm2 left #retro 14:31:59 --- join: Kumul (~Kumul@adsl-207-204-177-61.prtc.net) joined #retro 15:24:47 <__tthomas__> hmm.. d.rx seems to be undocumented and I can't get it to load like normal.. 15:41:47 <__tthomas__> : words 2cr last @ [ dup d->name puts space @ dup ] while ; 16:09:02 --- join: virl__ (~virl__@91.119.83.164) joined #retro 16:11:41 --- quit: virl (Ping timeout: 252 seconds) 17:23:52 --- part: __tthomas__ left #retro 17:28:14 --- quit: Cheery (Quit: Lost terminal) 18:40:27 --- join: Raystm2 (Raystm2@c-71-196-164-161.hsd1.co.comcast.net) joined #retro 18:40:53 Callin crc, come in crc. 18:50:06 crc ping 18:51:04 I'm doing about 10 -15 pages of java tutorial daily, which means I still have a few days before I get to the I/O parts. 18:51:14 What I wanted to be sure about is: 18:52:09 Looking over the "complete" listings at the archive, it is the "port" words that access file system that need fleshing out in retroJava? 20:04:10 Gotta go. Nan wants to watch something on the computer. :-) Try back tomorrow. Be well. 20:04:16 --- quit: Raystm2 (Quit: bye!) 21:35:58 --- join: __tthomas__ (~Owner@c-24-23-234-140.hsd1.ca.comcast.net) joined #retro 22:55:57 --- quit: Kumul (Quit: gone) 23:59:59 --- log: ended retro/12.03.15