News! New Code Categories
VonSzarvas
Posts: 3,488
Hello everyone,
Some new CODE categories have been added to the forum.
Feel free to comment in this thread about the structure and possible sub-categories you'd like to see.
Special prize for the first person to make 5 new posts with elaborated and working code examples in any of the categories !
(Moderators decision on the winner and prize is final!)
Comments
I guess I could start the ball rolling... what do we do with the "ForthSpace" category ? It looks a bit left out of the new category fun !!
Do we need to do anything with it ?
Currently it's all things forth, not just code. When it's moved under the code then it should be the code only, nothing else, right ?
In my wiew all that's needed is a bit of thinking ahead and discipline while posting. The post title can be very helpful. Something like PASM/P1 - the rest of the post title goes here or SPIN/P2 - the rest of the post title goes here should be enough.
To me the sole purpose of the categories is to ease up the forum searches by keywords.
As Forth is not only a Language but also an operating system and includes the interpreter, the compiler and the assembler itself, "Code" would only touch a minor part of Forth.
All in all I don't think, that splitting up things too much is very helpful, as the most difficult questions arise around hardware related items, like smart pins. Now you will have to scan all these sub forums to find hints.
As Pasm is used in combination with all languages, it makes nos sense to combine it with SPIN2.
A powerful search function would be very important. I wonder, if this could be improved somehow? For example it does not find anything, if you search for "VAR dim". It does not find https://forums.parallax.com/discussion/174132/flexbasic-tips-and-tricks#latest
Forth is a language.
Tachyon is an operating system written with Forth.
With that in mind, maybe it makes sense to rename "Code" to "Languages" (or more verbosely, "Programming Languages") and then move (and rename) ForthSpace into Languages/Forth. In "Languages/Forth" the directory structure makes it more open to discussing Tachyon and things, meaning you don't need two different categories for Forth things. I can only imagine someone posting to Code/Forth and being very confused why some mod moved their post about Tachyon to some other category.
This would also do a decent job of consolidating the questions about PropGCC/p2gcc/llvm/etc into Code/C/C++ and other tools into their language-specific categories. That being said, I know there are plenty of cross-language tools... but at least the solution proposed above doesn't make things any worse, and it should make things a little better.
One thing that bugs me a little is the lack of connection (or rather distance) from the hardware to code sections.
I'll start by mentioning we are restricted to 2 levels with the current theme (clearly that could be changed, but would take a chunk of time)
Maybe moving the microcontrollers up to root level, and then having the various languages as sub-folders would be clearer.
ie.
Regarding Forth... is all/most the same code re-usable on P1 and P2 ?
If we did this, the old content in "Microcontrollers" would be left hanging in the wind.
Content could be merged to "General Discussion" in a couple clicks. Would that make sense ?
BTW.. This idea is still a work-in-progress. All ideas welcome.
Each option has some annoyances. For example, we can't really have category names the same (such as both P2 and P1 having "C" sub forums). Sure, that could be solved by calling it "C for P1", but that feels like it will get messy too!
Peter remade his Tachyon-Forth for P1 after he had worked out the best way for P2. (word codes) So the latest Tachyon for P1 is quiet similar to P2.
For me it would make sense to have a hardware-near category probably together with PASM (P1 and it's hardware drivers; P2 and it's hardware drivers) and certainly separate for P1 and P2. Of course, if someone has a hardware related question, he will use the language of his choice in his post.
It does not make sense for me to split up the languages for P1 and P2, if there is a separate branch for languages. As far as I know, there are only in SPIN1 and SPIN2 major differences. (Perhaps something to be aligned in future???)
Most tools can compile for both processors, as far as I know?
All Forths for microcontrollers, that I know of, are operating systems with interactive console, compilers, interpreters and assemblers often, as was Forth, when it was born. There is no disruption between the language and the operating system. Only for PCs and similar there are Forths, which use the existing operating system.
Peter named his Forth "Tachyon". Unfortunately he did not value the great benefit for other users, to make it a "Forth, very close to ANS94". - Although the latest versions have come nearer, reimplementing DO-LOOP.
While the pure language Forth might be sensed to be weird, Forth brings the benefit of being a simple but complete interactive, self hosted operating system.
One main plus is interactive debugging.
The benefits of Forth become only relevant, if you use it as more than a language.
OK, we have an update to the order of categories pending. Let's try that out and go from there.
A few notes on adjustments today...
1) Microcontrollers category was merged with General Discussion.
2) Code category renamed to Propeller Code, and now includes all existing language related categories relevant to either Propeller. (We thought about "Propeller Languages", but for non-English speakers, "code" is more obvious a title; and is arguably quicker to read & interpret at a glance).
3) Core microcontrollers are now root categories for general and hardware discussions related to them (ie. Propeller 2, Propeller 1, Basic Stamp and micro:bit).
It had been suggested that languages go as subcategories of Propeller 2. But that would have led to duplication of categories and resources where languages spread both Propeller versions.
Or P1 would not have language subcategories at all, other than PASM/SPIN.
Hopefully this strikes the right balance. Let us know constructively if not
Nice! It's not perfect, but there's no such thing in this scenario. I think you've struck a nice balance.
Can you move the PropWare thread to the C/C++ section? https://forums.parallax.com/discussion/157005/fyi-propware-complete-build-system-and-library-for-propgcc
I think moving @n_ermosh's LLVM thread to C/C++ would be good too: https://forums.parallax.com/discussion/171962/llvm-backend-for-propeller-2/p1
Working on it David.