Chicken-Egg problem?

112 views
Skip to first unread message

Artjom Kossow

unread,
Dec 29, 2013, 1:02:18 PM12/29/13
to retr...@googlegroups.com
Hi All,

just stumbled upon Retro language, after discarding the Factor and was fascinated by the self compiling kernel. Altough the whole process of step-by-step method replacing and compiling a new image is explained, I was left with another question: how the chicken-egg problem was solved in a first place? :)  I mean, how the first image was compiled and what core functions it had. Could anyone please give a few insights on that topic?

Best Regards,
Artjoms.

John Porubek

unread,
Dec 29, 2013, 3:44:50 PM12/29/13
to retr...@googlegroups.com, facto...@lists.sourceforge.net
Can't enlighten you on the chicken-egg problem. I'll be interested in the response, as well. But, as someone who is also interested in Retro and Factor, I was interested in why you chose to discard Factor. I see it as a matter of what kind of program you want to write. For high-level, multi-os programs I think Factor is superior. However, Retro probably holds the edge for embedded programs. Also, Factor has a steeper learning curve.

Regards,

-John


--
--
--
You received this message because you are RETRO 10 discussion group.
To post to this group, send email to retr...@googlegroups.com
To unsubscribe from this group, send email to retro-10-u...@googlegroups.com
 
---
You received this message because you are subscribed to the Google Groups "retro-language" group.
To unsubscribe from this group and stop receiving emails from it, send an email to retro-10+u...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Artjom Kossow

unread,
Dec 29, 2013, 3:59:00 PM12/29/13
to retr...@googlegroups.com, facto...@lists.sourceforge.net
On the topic of disregarding Factor: I am deeply fascinated by concatenative languages and currently I am trying to compare all existing ones and find the most suited for my goals (I am working on a research topic of introducing ILP to the stack based VMs), and altoough Factor has the widest codebase, it has really steep learning curve and runs on a complex VM. After looking up to Joy (dead and no docs) and Cat (dead, no codebase) I've found RetroForth - all the functional programming goodies are there, AND its written entirely in forth and runs on a very basic and simple VM, which is perfect for my goals :) However, I am missing some basic definitions (like where is "constant" or ":" defined?) because everything is either hidden in the compiled image file or tangled in a complex way in the core file, which compiles itself by some voodoo magic.

Artjoms.

Charles Childers

unread,
Dec 29, 2013, 7:46:56 PM12/29/13
to retr...@googlegroups.com
I've posted an overview of the history and meta compiler to http://forthworks.com/dev/corpse/article/222

The first few releases of 10.x we're not meta compiled, so looking at the 10.2 source (last non meta compiled version) and comparing it to 10.3 would probably be a good starting point. These can be found at http://forthworks.com/retro/prior_releases

Hopefully this helps a little, and if you have any specific questions I'll try to answer them soon.

-- crc
--

Mat

unread,
Jan 6, 2014, 1:29:51 PM1/6/14
to retr...@googlegroups.com, facto...@lists.sourceforge.net
Hello, if you want to share ideas and strategies about ILP in context of stack-based VMs, feel free to contact me, Mat

John Porubek

unread,
Jan 23, 2014, 11:56:27 AM1/23/14
to retr...@googlegroups.com
Sorry about the long time span between the posts and my questions about them.

First, in response to Artjoms. Thanks for the explanation of why Retro instead of Factor. I can't disagree with your premises and your decision makes sense in light of your goals.

Second, in response to Artjoms and Mat, please forgive my ignorance, but does "ILP" stand for "instruction level parallelism"? Wikipedia (http://en.wikipedia.org/wiki/Very_long_instruction_word) talks about instruction level parallelism in the context of Very long instruction word or VLIW architectures. Assuming my guess is right, this sounds very interesting. Even if I'm wrong it's still probably pretty interesting!

Do either of you care to expand just a little?

-John

John Porubek

unread,
Jan 23, 2014, 12:16:02 PM1/23/14
to retr...@googlegroups.com
Charles,

Apologies for the elapsed time, but thanks for the history overview and info on the "chicken and egg" issue. I haven't given the info the time I'd like to yet, but it looks interesting.

I despair of ever being able to fully "grok" Factor the way I was able to understand the early indirect-threaded Forths (I'm fundamentally a hardware guy), but Retro seems like something I may be able to wrap my head around. Thanks for your efforts.

-John

Helmar Wodtke

unread,
Jan 23, 2014, 12:20:14 PM1/23/14
to retr...@googlegroups.com
It all depends on what you want to do. Retro and Factor are comparable only by anchestors. Not by intention. Reva (also a Retro-inspired thing) for examples moves to "object oriented" structures in Forth-like handling. My own Helforth does not develop at the moment. I personally do not know why I should do something. My time is limited.

VLIW is to Retro like BASIC to VAX computers: absolutely unrelated ;)

Regarding the inventor of Retro, I think it's basically focussed on making something simple.
Something people can understand. No technology wars at first place.

Regards,
-Helmar

Reply all
Reply to author
Forward
Message has been deleted
0 new messages