Quantcast
Channel: Raspberry Pi Forums
Viewing all articles
Browse latest Browse all 5190

General • Re: A Snek port for a Pico ?

$
0
0
Looks like he has a Snekboard with an Atmel ARM MCU. So there should be some kind of HAL to match the Arduino target and the Atmel ARM target.
Snek is a self contained C project so should compile for anything, including the Pi, Linux and Windows. I haven't looked at what HAL there is but it seems to only handle digital output, digital and analogue input, so should be easy enough to get that working on an RP2.
Very nice, but it will be hard to recruit followers.
I am not currently looking to recruit followers, neither developers or users, to Snek. I just want to build it so it works on RP2.

If it proves to be useful, can serve some purpose for RP2 users, then it may become an option that attracts both. But just having it work on RP2 is the current goal.
It likely uses the Arduino RP2040 port by Earl. If it is standard Arduino that should be all it takes
It's a self contained C project, builds for Pi and Atmel chips using 'make' and all I am wanting to do is change from using 'make' to using 'cmake' plus 'make'.
Well, it's going to peter along. Too many empire builders and too few warm bodies to recruit. If the person is not fully committed to empire-building, then it will be a bust. :D This kind of thing really need skilled recruits -- gonna be a tough sell.
I don't think Keith is looking to empire build. He's just offering an option for users, mostly users of Atmel chips. And I'm not looking to recruit people into Snek development, just to make Snek an option available for RP2 users.
Highly targeted STEM initiatives are limited to their niche area. In this case, the original idea seems to be motor-related gizmos in education. Only folks who are truly committed to this STEM education niche will pour their time into it.
Maybe. But I am thinking about how else Snek may be extended beyond Keith's vision and interests, how it could be made useful, or more useful, for RP2 users. If it is useful that may attract interest or maybe not. I'm not recruiting, just pursuing an adventure to see where it leads.
It's not remotely Python compatible, is it, though?
It's very Python-like and Snek code can run under Python 3. That at least gives it advantages over languages very different to what users may be familiar with.
Lots of great projects, but it's becoming a bit like "everyone who codes ends up writing their own Make tool" or "everyone who codes ends up writing their own editor" :D and that leads to "everyone who codes ends up writing their own programming language" and here we have "everyone who codes ends up writing their own embedded platform" :D :D
I have always thought, that if someone really wants to call themselves a Software Engineer, they should have designed their own CPU, invented their own ISA, created a VM, crafted their own programming language, written their own editors and other tools, produced their own SBC design, all those kinds of things.

Such adventures don't have to succeed, or even complete. The journey is more important than the destination. They give a huge insight into why things are as others have done them, the difficulties, challenges, and choices to be made.

I believe "I can do it better than that" is the driving force for advancement, and should be encouraged. If it wasn't for that we would have very little of what we have today, and we need those kind of people to take us forward.

I see the creation of the original Pi as being intended to address a lack of that, the current generation having not got stuck in, not getting their hands as dirty as the home computer generations had.
I think Snek is for much smaller/simpler chips and does not make that much sense on RP2040.
It was intended to run on smaller and constrained chips but I don't believe that means it doesn't make sense on an RP2. Anything which uses less resources hands more resources to the user to exploit. So, for some, it may be the ideal solution.

I have never believed 'doesn't make sense' really comes into it. It's always better to have something than not in my book. It's just an option and choices are always good to have.
Interesting design is that it only has one number type - 32bit float and NaN values are reused for other (non-number) types. So all numeric operations are floating point for type simplicity (not speed). The idea is that integer type is not needed because as long as you use integers that fit into mantissa there are no rounding errors (=you have 23bit integer).
That was what initially made me look at Snek. Now I am intrigued as to how well Snek works in practice, how well it would work on an RP2, whether it has potential uses. But first I have to build it for an RP2.

Anyway, with Sleep Pixie help, I have got the 'posix' port sort of building with 'CMake'. It requires some pre-build which hasn't been integrated into 'CMakeLists.txt', a little hacking, and linking reports some functions missing, but I think I am heading in the right direction.

Statistics: Posted by hippy — Thu Dec 12, 2024 12:10 pm



Viewing all articles
Browse latest Browse all 5190

Trending Articles