Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.forth > #48379 > unrolled thread
| Started by | endlessboomcapitalism@gmail.com |
|---|---|
| First post | 2016-06-19 22:00 -0700 |
| Last post | 2016-06-22 06:04 -0700 |
| Articles | 20 on this page of 26 — 11 participants |
Back to article view | Back to comp.lang.forth
I am afriad endlessboomcapitalism@gmail.com - 2016-06-19 22:00 -0700
Re: I am afriad Chris Curl <ccurl609@gmail.com> - 2016-06-20 05:29 -0700
Re: I am afriad "Kerr Mudd-John" <admin@127.0.0.1> - 2016-06-20 19:43 -0100
Re: I am afriad endlessboomcapitalism@gmail.com - 2016-06-20 14:42 -0700
Re: I am afriad hughaguilar96@gmail.com - 2016-06-20 19:35 -0700
Re: I am afriad rickman <gnuarm@gmail.com> - 2016-06-20 16:00 -0400
Re: I am afriad Chris Curl <ccurl609@gmail.com> - 2016-06-20 19:03 -0700
Re: I am afriad hughaguilar96@gmail.com - 2016-06-20 19:23 -0700
Re: I am afriad rickman <gnuarm@gmail.com> - 2016-06-20 22:58 -0400
Re: I am afriad rickman <gnuarm@gmail.com> - 2016-06-20 22:51 -0400
Re: I am afriad Chris Curl <ccurl609@gmail.com> - 2016-06-20 20:23 -0700
Re: I am afriad rickman <gnuarm@gmail.com> - 2016-06-20 23:51 -0400
Re: I am afriad Ron Aaron <rambamist@gmail.com> - 2016-06-21 07:04 +0300
Re: I am afriad Chris Curl <ccurl609@gmail.com> - 2016-06-21 05:33 -0700
Re: I am afriad Ron Aaron <rambamist@gmail.com> - 2016-06-21 16:05 +0300
Re: I am afriad anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-06-21 13:30 +0000
Re: I am afriad hughaguilar96@gmail.com - 2016-06-20 21:10 -0700
Re: I am afriad hughaguilar96@gmail.com - 2016-06-20 21:16 -0700
Re: I am afriad Ron Aaron <rambamist@gmail.com> - 2016-06-21 07:41 +0300
Re: I am afriad Mark Wills <markwills1970@gmail.com> - 2016-06-21 05:23 -0700
Re: I am afriad Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-06-21 08:27 -0500
Re: I am afriad Mark Wills <markwills1970@gmail.com> - 2016-06-21 10:47 -0700
Re: I am afriad hughaguilar96@gmail.com - 2016-06-21 22:58 -0700
Re: I am afriad Julian Fondren <julian.fondren@gmail.com> - 2016-06-21 23:51 -0700
Re: I am afriad Mark Wills <markwills1970@gmail.com> - 2016-06-22 08:06 -0700
Re: I am afriad Matthias Trute <matthias.trute@gmail.com> - 2016-06-22 06:04 -0700
Page 1 of 2 [1] 2 Next page →
| From | endlessboomcapitalism@gmail.com |
|---|---|
| Date | 2016-06-19 22:00 -0700 |
| Subject | I am afriad |
| Message-ID | <46707694-6aec-4fc4-a1cb-e4a104b6cd21@googlegroups.com> |
I see starting forth and gforth and thinking forth I have started to learn but stop and have fear I can not make a dynamic website with them. I have done same with lisp and haskell and got stuck. Can if I persist learn this stuff?
[toc] | [next] | [standalone]
| From | Chris Curl <ccurl609@gmail.com> |
|---|---|
| Date | 2016-06-20 05:29 -0700 |
| Message-ID | <10796b24-694d-4913-b363-02ae917fad29@googlegroups.com> |
| In reply to | #48379 |
On Monday, June 20, 2016 at 1:00:09 AM UTC-4, endlessboo...@gmail.com wrote: > I see starting forth and gforth and thinking forth > > I have started to learn but stop and have fear I can not make a dynamic website with them. > > I have done same with lisp and haskell and got stuck. > > Can if I persist learn this stuff? How much experience do you have in programming? Have you written large programs before? Writing a website, or a web browser from scratch is a large undertaking. And since Forth is a bottom up language, it can be a challenge to visualize the final program, because you have to write the lower-level supporting code before you can write the higher level code. I have had times where I had to throw away everything and start over. Other times, I have given up on a project because, I lost interest or decided it wasn't worth the effort. It happens. If are determined enough, and you keep at it, eventually, you will start to see other ways to approach the problem you are trying to solve.
[toc] | [prev] | [next] | [standalone]
| From | "Kerr Mudd-John" <admin@127.0.0.1> |
|---|---|
| Date | 2016-06-20 19:43 -0100 |
| Message-ID | <op.yjdih1dmmsr2db@anyhost.anywhere> |
| In reply to | #48390 |
On Mon, 20 Jun 2016 11:29:58 -0100, Chris Curl <ccurl609@gmail.com> wrote: > On Monday, June 20, 2016 at 1:00:09 AM UTC-4, endlessboo...@gmail.com > wrote: >> I see starting forth and gforth and thinking forth >> >> I have started to learn but stop and have fear I can not make a dynamic >> website with them. >> >> I have done same with lisp and haskell and got stuck. >> >> Can if I persist learn this stuff? > How much experience do you have in programming? Have you written large > programs before? None, it's the Gavino troll. -- Bah, and indeed, Humbug
[toc] | [prev] | [next] | [standalone]
| From | endlessboomcapitalism@gmail.com |
|---|---|
| Date | 2016-06-20 14:42 -0700 |
| Message-ID | <6a2e7449-4f1d-4918-baae-1f9709aae216@googlegroups.com> |
| In reply to | #48393 |
On Monday, June 20, 2016 at 3:40:41 PM UTC-4, Kerr Mudd-John wrote: > On Mon, 20 Jun 2016 11:29:58 -0100, Chris Curl <ccurl609@gmail.com> wrote: > > > On Monday, June 20, 2016 at 1:00:09 AM UTC-4, endlessboo...@gmail.com > > wrote: > >> I see starting forth and gforth and thinking forth > >> > >> I have started to learn but stop and have fear I can not make a dynamic > >> website with them. > >> > >> I have done same with lisp and haskell and got stuck. > >> > >> Can if I persist learn this stuff? > > How much experience do you have in programming? Have you written large > > programs before? > > None, it's the Gavino troll. > > -- > Bah, and indeed, Humbug im no troll
[toc] | [prev] | [next] | [standalone]
| From | hughaguilar96@gmail.com |
|---|---|
| Date | 2016-06-20 19:35 -0700 |
| Message-ID | <c980b752-9f66-4185-9c10-cd8f68a33b48@googlegroups.com> |
| In reply to | #48395 |
On Monday, June 20, 2016 at 2:42:16 PM UTC-7, endlessboo...@gmail.com wrote: > On Monday, June 20, 2016 at 3:40:41 PM UTC-4, Kerr Mudd-John wrote: > > On Mon, 20 Jun 2016 11:29:58 -0100, Chris Curl <ccurl609@gmail.com> wrote: > > > > > On Monday, June 20, 2016 at 1:00:09 AM UTC-4, endlessboo...@gmail.com > > > wrote: > > >> I see starting forth and gforth and thinking forth > > >> > > >> I have started to learn but stop and have fear I can not make a dynamic > > >> website with them. > > >> > > >> I have done same with lisp and haskell and got stuck. > > >> > > >> Can if I persist learn this stuff? > > > How much experience do you have in programming? Have you written large > > > programs before? > > > > None, it's the Gavino troll. > > > > -- > > Bah, and indeed, Humbug > > im no troll I encouraged you to write a program in Forth, and I pretty much designed it for you to make getting started super-easy --- you replied: "fuk u". Now you persist in these idiotic threads on comp.lang.forth about programs that are way beyond ANS-Forth's capability. They might be possible in VFX, but there would have to be some monetary motivation, which there isn't. You're a troll --- I don't think you will ever write a computer program in any language --- fuk u
[toc] | [prev] | [next] | [standalone]
| From | rickman <gnuarm@gmail.com> |
|---|---|
| Date | 2016-06-20 16:00 -0400 |
| Message-ID | <nk9i1f$jc3$1@dont-email.me> |
| In reply to | #48390 |
On 6/20/2016 8:29 AM, Chris Curl wrote: > On Monday, June 20, 2016 at 1:00:09 AM UTC-4, endlessboo...@gmail.com wrote: >> I see starting forth and gforth and thinking forth >> >> I have started to learn but stop and have fear I can not make a dynamic website with them. >> >> I have done same with lisp and haskell and got stuck. >> >> Can if I persist learn this stuff? > How much experience do you have in programming? Have you written large programs before? > > Writing a website, or a web browser from scratch is a large undertaking. > > And since Forth is a bottom up language, it can be a challenge to visualize > the final program, because you have to write the lower-level supporting code > before you can write the higher level code. I think you don't properly understand coding and design. They are two different things. You may choose to combine them, but they are not inherently combined. There is no more reason to start with the lower level code in Forth than any other language. -- Rick C
[toc] | [prev] | [next] | [standalone]
| From | Chris Curl <ccurl609@gmail.com> |
|---|---|
| Date | 2016-06-20 19:03 -0700 |
| Message-ID | <c6cca178-32e2-4515-b65d-3508a444c1d8@googlegroups.com> |
| In reply to | #48394 |
I have been a software developer for 30+ years. Trust me, I know how to design and build very large scale programs. Some languages lend themselves well to a top-down programming style. Forth does not seem to be a language that fits that model very well. Please elaborate how you can write the high level words first, followed by the supporting words. Forth's whole paradigm is to continually extend the vocabulary, creating higher and higher level words from the words that already exist. That is a classic example of bottom up programming. What am I missing?
[toc] | [prev] | [next] | [standalone]
| From | hughaguilar96@gmail.com |
|---|---|
| Date | 2016-06-20 19:23 -0700 |
| Message-ID | <528d7721-99e7-4cfd-9449-322fa5b67cea@googlegroups.com> |
| In reply to | #48407 |
On Monday, June 20, 2016 at 7:03:58 PM UTC-7, Chris Curl wrote: > I have been a software developer for 30+ years. Trust me, I know how to > design and build very large scale programs. > > Some languages lend themselves well to a top-down programming style. Forth > does not seem to be a language that fits that model very well. > > Please elaborate how you can write the high level words first, followed by the > supporting words. Forth's whole paradigm is to continually extend the > vocabulary, creating higher and higher level words from the words that already > exist. That is a classic example of bottom up programming. > > What am I missing? You aren't missing anything --- you understand how Forth development works. Rickman is just a troll, pretending to be an expert and spouting idiotic advice --- he has never posted Forth code on c.l.f. --- I have seen no evidence to indicate that he knows any more about Forth programming than John Passaniti did (another infamous sycophant of Elizabeth Rather who pretended to be an expert and spouted idiotic advice).
[toc] | [prev] | [next] | [standalone]
| From | rickman <gnuarm@gmail.com> |
|---|---|
| Date | 2016-06-20 22:58 -0400 |
| Message-ID | <nkaagh$tad$1@dont-email.me> |
| In reply to | #48409 |
On 6/20/2016 10:23 PM, hughaguilar96@gmail.com wrote: > On Monday, June 20, 2016 at 7:03:58 PM UTC-7, Chris Curl wrote: >> I have been a software developer for 30+ years. Trust me, I know how to >> design and build very large scale programs. >> >> Some languages lend themselves well to a top-down programming style. Forth >> does not seem to be a language that fits that model very well. >> >> Please elaborate how you can write the high level words first, followed by the >> supporting words. Forth's whole paradigm is to continually extend the >> vocabulary, creating higher and higher level words from the words that already >> exist. That is a classic example of bottom up programming. >> >> What am I missing? > > You aren't missing anything --- you understand how Forth development works. > > Rickman is just a troll, pretending to be an expert and spouting idiotic advice --- he has never posted Forth code on c.l.f. --- I have seen no evidence to indicate that he knows any more about Forth programming than John Passaniti did (another infamous sycophant of Elizabeth Rather who pretended to be an expert and spouted idiotic advice). Here's some code. : decompose rot rot rot ; tee hee hee -- Rick C
[toc] | [prev] | [next] | [standalone]
| From | rickman <gnuarm@gmail.com> |
|---|---|
| Date | 2016-06-20 22:51 -0400 |
| Message-ID | <nkaa4b$rr6$1@dont-email.me> |
| In reply to | #48407 |
On 6/20/2016 10:03 PM, Chris Curl wrote: > I have been a software developer for 30+ years. Trust me, I know how to > design and build very large scale programs. > > Some languages lend themselves well to a top-down programming style. Forth > does not seem to be a language that fits that model very well. > > Please elaborate how you can write the high level words first, followed by the > supporting words. Forth's whole paradigm is to continually extend the > vocabulary, creating higher and higher level words from the words that already > exist. That is a classic example of bottom up programming. > > What am I missing? The distinction between code and design... as I said before. How do you do top down design in C or any other language? In Forth you do the same thing. -- Rick C
[toc] | [prev] | [next] | [standalone]
| From | Chris Curl <ccurl609@gmail.com> |
|---|---|
| Date | 2016-06-20 20:23 -0700 |
| Message-ID | <c9692328-7937-4b07-9113-8700ea9ffa4f@googlegroups.com> |
| In reply to | #48411 |
On Monday, June 20, 2016 at 10:51:57 PM UTC-4, rickman wrote: > On 6/20/2016 10:03 PM, Chris Curl wrote: > > I have been a software developer for 30+ years. Trust me, I know how to > > design and build very large scale programs. > > > > Some languages lend themselves well to a top-down programming style. Forth > > does not seem to be a language that fits that model very well. > > > > Please elaborate how you can write the high level words first, followed by the > > supporting words. Forth's whole paradigm is to continually extend the > > vocabulary, creating higher and higher level words from the words that already > > exist. That is a classic example of bottom up programming. > > > > What am I missing? > > The distinction between code and design... as I said before. > > How do you do top down design in C or any other language? In Forth you > do the same thing. > > -- > > Rick C Do you seriously not understand what I am talking about? Sure, you may have a good idea where you want to end up, and what the last words look like and how they behave, but before you can write those words, you have to ALREADY HAVE WRITTEN ALL THE WORDS ON WHICH THOSE WORDS DEPEND. In many other languages, you can write the top level functions first, with stubs for the next level down. You can keep going that way until you have filled in all the supporting code. In my job where they pay me really good money to design and write programs every day, we use C++ and C# primarily, and that is how we write our programs. Show me how you do that in Forth.
[toc] | [prev] | [next] | [standalone]
| From | rickman <gnuarm@gmail.com> |
|---|---|
| Date | 2016-06-20 23:51 -0400 |
| Message-ID | <nkadj7$4ap$1@dont-email.me> |
| In reply to | #48414 |
On 6/20/2016 11:23 PM, Chris Curl wrote: > On Monday, June 20, 2016 at 10:51:57 PM UTC-4, rickman wrote: >> On 6/20/2016 10:03 PM, Chris Curl wrote: >>> I have been a software developer for 30+ years. Trust me, I know how to >>> design and build very large scale programs. >>> >>> Some languages lend themselves well to a top-down programming style. Forth >>> does not seem to be a language that fits that model very well. >>> >>> Please elaborate how you can write the high level words first, followed by the >>> supporting words. Forth's whole paradigm is to continually extend the >>> vocabulary, creating higher and higher level words from the words that already >>> exist. That is a classic example of bottom up programming. >>> >>> What am I missing? >> >> The distinction between code and design... as I said before. >> >> How do you do top down design in C or any other language? In Forth you >> do the same thing. >> >> -- >> >> Rick C > Do you seriously not understand what I am talking about? > > Sure, you may have a good idea where you want to end up, and what the > last words look like and how they behave, but before you can write those > words, you have to ALREADY HAVE WRITTEN ALL THE WORDS ON WHICH THOSE WORDS > DEPEND. > > In many other languages, you can write the top level functions first, with > stubs for the next level down. You can keep going that way until you have > filled in all the supporting code. In my job where they pay me really good > money to design and write programs every day, we use C++ and C# primarily, > and that is how we write our programs. "Stubs"... are they magical features of every language other than Forth??? > Show me how you do that in Forth. : Stub_a ( -- ) ; Or if the stub needs to return a flag... : Stub_b ( -- flag ) FALSE ; Or if the stub takes two arguments and returns one result... : Stub_c ( a b -- c ) drop drop 0 ; Is that really too hard for you to figure out??? (See Hugh, I *can* write code, lol) You show me a stub in C or C++ (well, maybe not C++ since I've not used it) and I'll show you the *exact* same stub in Forth! I have no idea how to even discuss this with you as the issue is so transparent. What sort of road blocks do you have in your mind about the capabilities of Forth??? I actually write Forth programs top down if I don't have a clear idea of the middle layers. I typically know the low level interfaces or some hardware control stuff and I know what it needs to be at the top level. So I start coding the top level so I can then derive my requirements for the middle layers (informally of course). Finally I code the lowest layers to support the middle layers and start testing from the bottom up. Actually, my testing is often done on separate branches from the bottom up. So I design a path down one branch and test it. Then I design another branch and test it. Eventually I've tested the entire body of code together and see if I missed any bugs in the process. If the decomposition is such that there is code that can be tested on the way down, I do that before starting the bottom up testing. That often happens with control loops or various functions that essentially are short branches. But my design and coding process is top down... notice I said "design and coding" as they are very different things that I typically integrate because my stuff is usually not terribly large. If I were designing larger bodies of code I would likely use more formal requirements analysis and design techniques to assure fewer mistakes in the top down design process. I have no idea why you think there are any design and coding methods you can't use with Forth. -- Rick C
[toc] | [prev] | [next] | [standalone]
| From | Ron Aaron <rambamist@gmail.com> |
|---|---|
| Date | 2016-06-21 07:04 +0300 |
| Message-ID | <nkaedb$574$1@dont-email.me> |
| In reply to | #48414 |
On 21/06/2016 06:23, Chris Curl wrote: > In many other languages, you can write the top level functions first, with > stubs for the next level down. You can keep going that way until you have > filled in all the supporting code. In my job where they pay me really good > money to design and write programs every day, we use C++ and C# primarily, > and that is how we write our programs. I generally write that way in 8th (Forth/C++/whatever), as I find it more flexible. I don't understand why you think Forth would be any different in this regard: \ a stub: : dosomething ; \ another stub: : do-something-else ; \ top-level: : main dosomething do-something-else bye ;
[toc] | [prev] | [next] | [standalone]
| From | Chris Curl <ccurl609@gmail.com> |
|---|---|
| Date | 2016-06-21 05:33 -0700 |
| Message-ID | <76cee616-f285-4c93-9adb-2b85c07072da@googlegroups.com> |
| In reply to | #48420 |
On Tuesday, June 21, 2016 at 12:05:00 AM UTC-4, Ron Aaron wrote: > On 21/06/2016 06:23, Chris Curl wrote: > > > In many other languages, you can write the top level functions first, with > > stubs for the next level down. You can keep going that way until you have > > filled in all the supporting code. In my job where they pay me really good > > money to design and write programs every day, we use C++ and C# primarily, > > and that is how we write our programs. > > I generally write that way in 8th (Forth/C++/whatever), as I find it > more flexible. I don't understand why you think Forth would be any > different in this regard: > > \ a stub: > : dosomething ; > > \ another stub: > : do-something-else ; > > \ top-level: > > : main > do-something > do-something-else > bye ; Fair enough I guess. I still think of that as bottom up, because of the fact that the highest level words are defined at the end of the code, not the beginning. To me, that program, written in a more top-down style would be: : main do-something do-something-else bye ; : do-something ; : do-something-else ; It is true that in Forth, you can still define the highest-level words first. It is just that they end up at the END of the code, not at the beginning as they would more normally be in a top-down world. So when trying to understand a Forth program, it would be a good idea to start at the end. Maybe it is just semantics. For people like endlessboo who are apparently programming-challenged, working that way might be too much mental gymnastics.
[toc] | [prev] | [next] | [standalone]
| From | Ron Aaron <rambamist@gmail.com> |
|---|---|
| Date | 2016-06-21 16:05 +0300 |
| Message-ID | <nkbe3c$2ve$1@dont-email.me> |
| In reply to | #48433 |
On 21/06/2016 15:33, Chris Curl wrote: > Fair enough I guess. I still think of that as bottom up, because of the > fact that the highest level words are defined at the end of the code, not > the beginning. To me, that program, written in a more top-down style would be: The usual usage is as Wikipedia has it: https://en.wikipedia.org/wiki/Top-down_and_bottom-up_design
[toc] | [prev] | [next] | [standalone]
| From | anton@mips.complang.tuwien.ac.at (Anton Ertl) |
|---|---|
| Date | 2016-06-21 13:30 +0000 |
| Message-ID | <2016Jun21.153053@mips.complang.tuwien.ac.at> |
| In reply to | #48433 |
Chris Curl <ccurl609@gmail.com> writes:
>: main
> do-something
> do-something-else
> bye ;
>
>: do-something ;
>
>: do-something-else ;
>
>It is true that in Forth, you can still define the highest-level words
>first. It is just that they end up at the END of the code, not at the
>beginning as they would more normally be in a top-down world.
For any editor more sophisticated than (Unix) cat, this is not a
problem.
BTW, many programming languages have this define-before-use
restriction, in particular Pascal, which is often mentioned in
connection with top-down development, and C, which you mentioned.
Note that this has become stricter in C over the years. Now, if you
claim that you only need to declare in C and Pascal before use, and
can define later, you can also do something like that in Forth:
defer do-something
defer do-something-else
: main
do-something
do-something-else
bye ;
:noname ;
is do-something
:noname ;
is do-something-else
>So when
>trying to understand a Forth program, it would be a good idea to start
>at the end.
That would be top-down understanding, not top-down development. I am
not convinced that this is a good approach, but anyway, once the
program is there, any reader can read it in any order they see fit.
- anton
--
M. Anton Ertl http://www.complang.tuwien.ac.at/anton/home.html
comp.lang.forth FAQs: http://www.complang.tuwien.ac.at/forth/faq/toc.html
New standard: http://www.forth200x.org/forth200x.html
EuroForth 2016: http://www.euroforth.org/ef16/
[toc] | [prev] | [next] | [standalone]
| From | hughaguilar96@gmail.com |
|---|---|
| Date | 2016-06-20 21:10 -0700 |
| Message-ID | <dcaec367-6b8d-4513-aaa6-c16ca905536d@googlegroups.com> |
| In reply to | #48414 |
On Monday, June 20, 2016 at 8:23:42 PM UTC-7, Chris Curl wrote: > On Monday, June 20, 2016 at 10:51:57 PM UTC-4, rickman wrote: > > On 6/20/2016 10:03 PM, Chris Curl wrote: > > > I have been a software developer for 30+ years. Trust me, I know how to > > > design and build very large scale programs. > > > > > > Some languages lend themselves well to a top-down programming style. Forth > > > does not seem to be a language that fits that model very well. > > > > > > Please elaborate how you can write the high level words first, followed by the > > > supporting words. Forth's whole paradigm is to continually extend the > > > vocabulary, creating higher and higher level words from the words that already > > > exist. That is a classic example of bottom up programming. > > > > > > What am I missing? > > > > The distinction between code and design... as I said before. > > > > How do you do top down design in C or any other language? In Forth you > > do the same thing. > > > > -- > > > > Rick C > Do you seriously not understand what I am talking about? > > Sure, you may have a good idea where you want to end up, and what the > last words look like and how they behave, but before you can write those > words, you have to ALREADY HAVE WRITTEN ALL THE WORDS ON WHICH THOSE WORDS > DEPEND. > > In many other languages, you can write the top level functions first, with > stubs for the next level down. You can keep going that way until you have > filled in all the supporting code. In my job where they pay me really good > money to design and write programs every day, we use C++ and C# primarily, > and that is how we write our programs. > > Show me how you do that in Forth.
[toc] | [prev] | [next] | [standalone]
| From | hughaguilar96@gmail.com |
|---|---|
| Date | 2016-06-20 21:16 -0700 |
| Message-ID | <a93f8f3a-a0f5-4e86-8f80-38e0ac003f81@googlegroups.com> |
| In reply to | #48414 |
On Monday, June 20, 2016 at 8:23:42 PM UTC-7, Chris Curl wrote: > On Monday, June 20, 2016 at 10:51:57 PM UTC-4, rickman wrote: > > On 6/20/2016 10:03 PM, Chris Curl wrote: > > > I have been a software developer for 30+ years. Trust me, I know how to > > > design and build very large scale programs. > > > > > > Some languages lend themselves well to a top-down programming style. Forth > > > does not seem to be a language that fits that model very well. > > > > > > Please elaborate how you can write the high level words first, followed by the > > > supporting words. Forth's whole paradigm is to continually extend the > > > vocabulary, creating higher and higher level words from the words that already > > > exist. That is a classic example of bottom up programming. > > > > > > What am I missing? > > > > The distinction between code and design... as I said before. > > > > How do you do top down design in C or any other language? In Forth you > > do the same thing. > > > > -- > > > > Rick C > Do you seriously not understand what I am talking about? > > Sure, you may have a good idea where you want to end up, and what the > last words look like and how they behave, but before you can write those > words, you have to ALREADY HAVE WRITTEN ALL THE WORDS ON WHICH THOSE WORDS > DEPEND. > > In many other languages, you can write the top level functions first, with > stubs for the next level down. You can keep going that way until you have > filled in all the supporting code. In my job where they pay me really good > money to design and write programs every day, we use C++ and C# primarily, > and that is how we write our programs. > > Show me how you do that in Forth. It can be done --- it is just a bad idea. The problem with using stubs is that you can't be sure that the low-level functions actually can be written as you are expecting them to be written, or if they can be written that they should be written in that way. Bottom-up programming is generally a good idea because you can test your code as you go. Big programs that work evolve from small programs that work. This is similar to how life on Earth evolved --- we started out with simple life forms, and then over time got more complex ones --- but we always had a working system; there weren't any "stubs." I normally start out by defining my structs that will hold the data used in the program, and then I define the data-structure that the structs will be in, and then I work up from there.
[toc] | [prev] | [next] | [standalone]
| From | Ron Aaron <rambamist@gmail.com> |
|---|---|
| Date | 2016-06-21 07:41 +0300 |
| Message-ID | <nkaghu$be8$1@dont-email.me> |
| In reply to | #48424 |
On 21/06/2016 07:16, hughaguilar96@gmail.com wrote: > It can be done --- it is just a bad idea. No it is not. It is simply a different methodology. > Bottom-up programming is generally a good idea because you can test your code as you go. Big programs that work evolve from small programs that work. You can test your code as you go with top-down iterative as well, as I always do (and have done for 30+ years). The disadvantage of "bottom-up" is that you can get lost in details which may prove to be irrelevant later on.
[toc] | [prev] | [next] | [standalone]
| From | Mark Wills <markwills1970@gmail.com> |
|---|---|
| Date | 2016-06-21 05:23 -0700 |
| Message-ID | <8b189731-a519-4891-9e85-1a56414aa591@googlegroups.com> |
| In reply to | #48379 |
On Monday, 20 June 2016 06:00:09 UTC+1, endlessboo...@gmail.com wrote: > I see starting forth and gforth and thinking forth > > I have started to learn but stop and have fear I can not make a dynamic website with them. > > I have done same with lisp and haskell and got stuck. > > Can if I persist learn this stuff? WTF? Just use a language DESGINED for dynamic websites, like, ooh, I dunno, that's a hard one. Say... maybe, ASP, or ASP.NET, or PHP or Perl, or JSP, or Python, or hell, just use good old fashioned compiled C with the CGI interface. Why make it hard on yourself?
[toc] | [prev] | [next] | [standalone]
Page 1 of 2 [1] 2 Next page →
Back to top | Article view | comp.lang.forth
csiph-web