Linked by Thom Holwerda on Mon 31st Oct 2011 12:59 UTC, submitted by Martin H Hansen
RISC OS Sometimes, on a rather boring and run-of-the-mill Monday, I get news in the submission queue which just puts a gigantic smile on my face. We've talked about the Raspberry Pi before on OSNews, and other than reporting that everything's on track for a Christmas launch, it has also been announced that the Raspberry Pi will be able to run... RISC OS. A British educational ARM board running RISC OS? We have come full circle. And I couldn't be happier. Update: Theo Markettos emailed me with two corrections - Markettos isn't actually a representative of the Raspberry Pi Foundation, and the quoted bits are transcribed, they're not Markettos' literal words. Thanks for clearing that up!
Thread beginning with comment 495040
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE: Comment by AnythingButVista
by steve_s on Mon 31st Oct 2011 16:57 UTC in reply to "Comment by AnythingButVista"
steve_s
Member since:
2006-01-16

To me, teaching students with RISCOS is like teaching them Latin -- it's not something they are going to actually use in the real world.


I used to be a RISC OS user and programmer, but have since moved on to other things.

Let me be clear - as an OS, technically, RISC OS is a heap of crap. People are indeed not going to use RISC OS in the real world. That is not the point.

This news is a good thing. Not because the Raspberry Pi will run RISC OS, but rather because it means that you'll be able to easily write and run ARM assembler on them. There's no hoops to jump through, no additional software to install, no complicated toolchain to learn - ARM assembler is built into BBC BASIC, which is at the heart of RISC OS.

That is pretty damn useful, and potentially is something that some may eventually have a use for in the real world.

And whilst I was not a fan of Latin lessons at school (I had to take it for three years, and at the time hated it) I do now recognise that there is a big advantage in understanding Latin when it comes to understanding the many other languages it has spawned and influenced.

I'd rather have them learning in Linux, which is a mature OS you can command at will, while still getting to use your computer when you want to actually get things done.

It's like schools teaching students LOGO or BASIC. How many programs you actually use in your job were written in LOGO or BASIC? Even Visual Basic is looked down on by true software developers. I say start students early in Python, C and C++.


Why do you think schools teach LOGO or BASIC?

It's not about learning a specific language dialect.

It's about learning principles of programming.

If you properly understand the programming concepts you were taught in LOGO and BASIC then those are applicable to Python, C, C++, Ruby, JavaScript, and so on.

The advantage in starting with LOGO and BASIC is that those languages are simple. Much simpler than Python or C.

Reply Parent Score: 4

jabjoe Member since:
2009-05-06

Python really isn't much more complicated than BASIC, and >much< more powerful. Where I work many Maya artists have been learning Python as their first language and they love it. It also gives them a spring board out of just Maya scripting. BBC BASIC was where I cut my teeth and I have no doubt a younger me would have equally been able to start with Python. Yes it's about the fundamentals but why not start out with a useful language to start with? BBC BASIC was a useful language on RiscOS after all. If it was just a toy language, it wouldn't have kept me interested. Seamed like everything was done in BBC BASIC and ARM code. Python is a modern day equivalent but is cross platform and used on a scale BBC BASIC never was. If you want to do assembler no doubt there is a module for that. There is a Python module for most things after all. Assembler on native Linux is easy enough anyway.

"
@filename: hw.S

.text
.align 2
.global _start

@ ssize_t sys_write(unsigned int fd, const char * buf, size_t count)
@ r7 r0 r1 r2

_start:
adr r1, msg @ Address
mov r0, #1 @ STDOUT
mov r2, #16 @ Length
mov r7, #4 @ sys_write
svc 0x00000000

@ int sys_exit(int status)
@ r7 r0

mov r0, #0 @ Return code
mov r7, #1 @ sys_exit
svc 0x00000000

.align 2

msg:
.asciz "Hello Android!\n\n"
"

Then:

as -o hw.o hw.S
ld -o hw hw.o
./hw

Reply Parent Score: 3