Parallax Forums
  HomeLog InRegisterCommunity CalendarSearch the ForumHelp
   
Parallax Forums > Public Forums > Propeller Chip > How would you describe Spin as a language?  Forum Quick Jump
 
New Topic Post Reply Printable Version
110 posts in this thread.
Viewing Page :
 1  2  3  4  5 
[ << Previous Thread | Next Thread >> ] | Show Newest Post First ]

Peter Jakacki
thinker tinker



Email Address Not AvailablePersonal Homepage Not AvailablePrivate Messaging Not AvailableAIM Not AvailableICQ Not AvailableY! Not AvailableMSN Not Available
Date Joined Sep 2006
Total Posts : 936
 
   Posted 10/29/2009 4:32 PM (GMT -8)    Quote This PostAlert An Admin About This Post.
Hi guys (n gals),

I was just writing up a new datasheet and I decided to expand on the short description I normally give to the Propeller and in particular the way it is programmed. In a C centric world saying that the Propeller is programmed in Spin is not very helpful. I could say it is Pascal-like maybe? But they may draw the wrong conclusions (them, not me). To me a language is a language, all of them have pro's and con's but how would you describe Spin as language and do so succinctly and positively?


*Peter*

Back to Top
 

Bill Henning
Registered Member



Email Address Not AvailablePersonal Homepage Not AvailablePrivate Messaging Not AvailableAIM Not AvailableICQ Not AvailableY! Not AvailableMSN Not Available
Date Joined Sep 2006
Total Posts : 962
 
   Posted 10/29/2009 4:36 PM (GMT -8)    Quote This PostAlert An Admin About This Post.
Hmm... Spin is closest to Python methinks

Peter Jakacki said...
Hi guys (n gals),

I was just writing up a new datasheet and I decided to expand on the short description I normally give to the Propeller and in particular the way it is programmed. In a C centric world saying that the Propeller is programmed in Spin is not very helpful. I could say it is Pascal-like maybe? But they may draw the wrong conclusions (them, not me). To me a language is a language, all of them have pro's and con's but how would you describe Spin as language and do so succinctly and positively?


www.mikronauts.com Please use mikronauts _at_ gmail _dot_ com to contact me off-forum, my PM is almost totally full
Morpheusdual Prop SBC w/ 512KB kit $119.95, Mem+2MB memory IO board kit $89.95, both kits $189.95
Propteus and Proteus for Propeller prototyping 6.250MHz custom Crystals run Propellers at 100MHz
Las - Large model assembler for the Propeller Largos - a feature full nano operating system for the Propeller

Back to Top
 

Peter Jakacki
thinker tinker



Email Address Not AvailablePersonal Homepage Not AvailablePrivate Messaging Not AvailableAIM Not AvailableICQ Not AvailableY! Not AvailableMSN Not Available
Date Joined Sep 2006
Total Posts : 936
 
   Posted 10/29/2009 4:39 PM (GMT -8)    Quote This PostAlert An Admin About This Post.
How so Bill? I was just mentioning in the datasheet that the Spin runtime execution is a bit like Java byte code execution (actually, I reckon it's more like Forth at this level). But the high level source code could a mix of several languages so in what ways would it be similar to Python?


*Peter*

Back to Top
 

localroger
Registered Member



Email Address Not AvailablePersonal Homepage Not AvailablePrivate Messaging Not AvailableAIM Not AvailableICQ Not AvailableY! Not AvailableMSN Not Available
Date Joined Mar 2009
Total Posts : 417
 
   Posted 10/29/2009 4:52 PM (GMT -8)    Quote This PostAlert An Admin About This Post.
An original language, designed to teach concepts and to be learned easily no matter what previous languages you know. Has even more whitespace awareness than the many variants of BASIC, in an obvious bid to force good indentation practices. C-like in that it uses null terminated strings in fixed-length assigned storage and doesn't enforce data types or array bounds, as well as bracket syntax for array indeces. Python-like with its powerful and sometimes obscure expression evaluator. Forth-like in its bytecode implementation. One of the few languages to truly enforce Djikstra's admonition about GOTO by not implementing it, at all. You cannot find any one language or development tool and say "This is what Spin is a clone of." It truly is a synthesis of the strengths (in a very particular manner of evaluation) of many different approaches.
Back to Top
 

mpark
Registered Member

Email Address Not AvailablePersonal Homepage Not AvailablePrivate Messaging Not AvailableAIM Not AvailableICQ Not AvailableY! Not AvailableMSN Not Available
Date Joined May 2007
Total Posts : 682
 
   Posted 10/29/2009 5:01 PM (GMT -8)    Quote This PostAlert An Admin About This Post.
localroger said...
...
Python-like with its powerful and sometimes obscure expression evaluator.


Example, please? I'm not seeing it.

localroger said...
...
Forth-like in its bytecode implementation.


I don't know about this. The Spin "virtual machine" is stack-based, but it takes more than that to be Forth-like (in particular, I believe most Forth people would say a defining characteristic of Forth is its separate data and return stacks).
Back to Top
 

Peter Jakacki
thinker tinker



Email Address Not AvailablePersonal Homepage Not AvailablePrivate Messaging Not AvailableAIM Not AvailableICQ Not AvailableY! Not AvailableMSN Not Available
Date Joined Sep 2006
Total Posts : 936
 
   Posted 10/29/2009 5:15 PM (GMT -8)    Quote This PostAlert An Admin About This Post.
As a Forth person (though not much recently) and having written various Forths for different processors including a byte-token version. I can say that terminologies asides that the Spin run-time is very Forth-like. Of course Spin uses local variable stacks but such things can be and are implemented in Forth as my versions would also sport a separate loop stack rather than use the return stack etc.

Now, how about a description....


*Peter*

Back to Top
 

Bill Henning
Registered Member



Email Address Not AvailablePersonal Homepage Not AvailablePrivate Messaging Not AvailableAIM Not AvailableICQ Not AvailableY! Not AvailableMSN Not Available
Date Joined Sep 2006
Total Posts : 962
 
   Posted 10/29/2009 5:27 PM (GMT -8)    Quote This PostAlert An Admin About This Post.
As I recall Python also uses indentation to indicate scope, and also compiles to a byte code.

Peter Jakacki said...
How so Bill? I was just mentioning in the datasheet that the Spin runtime execution is a bit like Java byte code execution (actually, I reckon it's more like Forth at this level). But the high level source code could a mix of several languages so in what ways would it be similar to Python?


www.mikronauts.com Please use mikronauts _at_ gmail _dot_ com to contact me off-forum, my PM is almost totally full
Morpheusdual Prop SBC w/ 512KB kit $119.95, Mem+2MB memory IO board kit $89.95, both kits $189.95
Propteus and Proteus for Propeller prototyping 6.250MHz custom Crystals run Propellers at 100MHz
Las - Large model assembler for the Propeller Largos - a feature full nano operating system for the Propeller

Back to Top
 

jazzed
_oOo_(^^)_oOo_

Email Address Not AvailablePersonal Homepage Not AvailablePrivate Messaging Not AvailableAIM Not AvailableICQ Not AvailableY! Not AvailableMSN Not Available
Date Joined Jan 2008
Total Posts : 2114
 
   Posted 10/29/2009 5:34 PM (GMT -8)    Quote This PostAlert An Admin About This Post.
It is an "object.method" language similar in some ways to all the languages you love except for a few extra weird equality operators.
Back to Top
 

waltc
Registered Member

Email Address Not AvailablePersonal Homepage Not AvailablePrivate Messaging Not AvailableAIM Not AvailableICQ Not AvailableY! Not AvailableMSN Not Available
Date Joined Jul 2008
Total Posts : 145
 
   Posted 10/29/2009 6:37 PM (GMT -8)    Quote This PostAlert An Admin About This Post.
Its Basic with just a touch of C and Pascal and a dash of OOP. Not industrial strength OPP like Smalltalk but a smattering.
Back to Top
 

RvnPhnx
Registered Member

Email Address Not AvailablePersonal Homepage Not AvailablePrivate Messaging Not AvailableAIM Not AvailableICQ Not AvailableY! Not AvailableMSN Not Available
Date Joined Dec 2008
Total Posts : 16
 
   Posted 10/30/2009 4:20 AM (GMT -8)    Quote This PostAlert An Admin About This Post.
I'd just say that it's a nearly typeless whitespace-aware programming language with minimalist OOP.


-------------------
--RvnPhnx

Back to Top
 

StefanL38
Registered Member

Email Address Not AvailablePersonal Homepage Not AvailablePrivate Messaging Not AvailableAIM Not AvailableICQ Not AvailableY! Not AvailableMSN Not Available
Date Joined Sep 2006
Total Posts : 958
 
   Posted 10/30/2009 10:02 AM (GMT -8)    Quote This PostAlert An Admin About This Post.
as you would like to invoke interest in it

to professional programmers a description that makes them feel challenged what I should not be able to learn it ?

to newbees a description that gives confidence:
you will learn it almost as quick as basic but if you have learned you are fare above
of what basic-programmers can do. And you are well prepared for other languages

Or to say ot similar like localroger quote "It truly is a synthesis of the strengths (in a very particular manner of evaluation) of many different approaches."

It takes the best from the most popular programming languages and combines them to suit very well to the hardware of the propeller.
As the propeller is a multi-core-microcontroller, start by using a single core. Use a second core as easy as starting a second program on your PC for backround-drivers
to replace easily interrupt-programming.
By the time add more an more cores as you drive up the learning-curve leaving other microcontrollers behind.
Where others are fiddling around to speed up IRQ-subroutines stay relaxed by just starting another core.

In my eyes Chip did a really great job. The architecture, SPIN-syntax, the propeller-IDE everything well developed to work effectivly

best regards

Stefan

Post Edited (StefanL38) : 10/30/2009 10:29:18 PM GMT

Back to Top
 

Nick Mueller
Registered Member

Email Address Not AvailablePersonal Homepage Not AvailablePrivate Messaging Not AvailableAIM Not AvailableICQ Not AvailableY! Not AvailableMSN Not Available
Date Joined Apr 2007
Total Posts : 697
 
   Posted 10/30/2009 2:09 PM (GMT -8)    Quote This PostAlert An Admin About This Post.
Spin is a basic patchwork of different languages. The result is:
* Weird operators that redefined standards set by other languages.
* Bended and blended different meanings into one scope (byte, word, long; whenever I read that, I slam my head; word should be 32 bits on on 32 bit processor).
* Took buzzwords from other languages to make it shine ("objects", but it's not OO).
* Completely untyped and thus not suited for education
* Lacks concepts for save coding
* Designed by someone with no background in language-design

Sorry, had to write that, but its true. And I'm tired of the repeated hurras about SPIN. SPIN is crap, but it works and its a compact language. And only worth learning because it comes along with the processor.


Nick


Never use force, just go for a bigger hammer!

The DIY Digital-Readout for mills, lathes etc.:
YADRO

Back to Top
 

Nick Mueller
Registered Member

Email Address Not AvailablePersonal Homepage Not AvailablePrivate Messaging Not AvailableAIM Not AvailableICQ Not AvailableY! Not AvailableMSN Not Available
Date Joined Apr 2007
Total Posts : 697
 
   Posted 10/30/2009 2:09 PM (GMT -8)    Quote This PostAlert An Admin About This Post.
Spin is a basic patchwork of different languages. The result is:
* Weird operators that redefined standards set by other languages.
* Bended and blended different meanings into one scope (byte, word, long; whenever I read that, I slam my head; word should be 32 bits on on 32 bit processor).
* Took buzzwords from other languages to make it shine ("objects", but it's not OO).
* Completely untyped and thus not suited for education
* Lacks concepts for save coding
* Designed by someone with no background in language-design

Sorry, had to write that, but its true. And I'm tired of the repeated hurras about SPIN. SPIN is crap, but it works and its a compact language. And only worth learning because it comes along with the processor.


Nick


Never use force, just go for a bigger hammer!

The DIY Digital-Readout for mills, lathes etc.:
YADRO

Back to Top
 

potatohead
640 Pixels... :)



Email Address Not AvailablePersonal Homepage Not AvailablePrivate Messaging Not AvailableAIM Not AvailableICQ Not AvailableY! Not AvailableMSN Not Available
Date Joined Sep 2006
Total Posts : 1340
 
   Posted 10/30/2009 2:50 PM (GMT -8)    Quote This PostAlert An Admin About This Post.
LOL!!!

I would describe SPIN as lean, useful, easy to learn, and well matched to the processor hardware attributes. There is nothing else like SPIN + PASM.


Propeller Wiki: Share the coolness!
Chat in real time with other Propellerheads on IRC #propeller @ freenode.net
Safety Tip: Life is as good as YOU think it is!

Back to Top
 

localroger
Registered Member



Email Address Not AvailablePersonal Homepage Not AvailablePrivate Messaging Not AvailableAIM Not AvailableICQ Not AvailableY! Not AvailableMSN Not Available
Date Joined Mar 2009
Total Posts : 417
 
   Posted 10/30/2009 5:22 PM (GMT -8)    Quote This PostAlert An Admin About This Post.

OK, let's have a flame war!  Nick said (twice, just to make sure we got it)...

Spin is a basic patchwork of different languages. The result is:
* Weird operators that redefined standards set by other languages.

With a couple of exceptions (most notably the very efficient but hatedly obscure ~ and ~~ operators) everything in Spin is found somewhere else.  They aren't all found in one language, but are a distillation of what works best and (particularly) is most memory efficient in all of them.  This is not an unreasonable design goal on a platform that is deliberately memory-limited.

* Bended and blended different meanings into one scope (byte, word, long; whenever I read that, I slam my head; word should be 32 bits on on 32 bit processor).

This is as stupid as the Comp Sci teacher I had back in 1981 who insited "byte" meant "any subdivision of a word" instead of "8 bits."  He was wrong then, time having marched on, and you are wrong now.  On embedded platforms in particular a word is 16 bits just as a byte is 8.  "Long" is a reasonable extension to assert 32.  As for using the word length of the machine in any meaningful way, that's been dead since IBM advertised the 8088-based IBM PC as a "16-bit" processor back in 1982.

* Took buzzwords from other languages to make it shine ("objects", but it's not OO).

Only because it doesn't do YOUR VERSION of OO.  In 1970 it would have been considered quite radically OO.  (No GOTO?  No, really, you mean no GOTO at ALL?  And if I need to send some data to the video, and it's in southland object, and I just well you mean I really can't just send it the data from northpark object?  AT ALL?  I mean they're in the SAME MEMORY SPACE man, DO YOU REALIZE HOW CRAZY THAT IS?  /1979 self)

* Completely untyped and thus not suited for education

If by "education" you mean "educating people how to write modern high-level code" then maybe yah.  But if you mean "educating people how the damn computer works and therefore how to write better code in their modern high-level environments" then you fail it.

* Lacks concepts for save coding

I suppose it is an example of my philistinism that I can't even figure out what you are talking about here.  Unless you mistyped "safe" in which case I'd say the first tool in writing safe code is learning the hard way to write safe code in an unsafe environment.  After a few crashes and three day debug fests to find the missing ~ you learn not to depend on the tools, which don't always work.  The tools are great when they do work but when they don't work if you can't do it the old-fashioned way you are teh screwz0r3d, and the Prop is meant to teach you to do it the old-fashioned way.

* Designed by someone with no background in language-design

And by the same criterion I insist to this day Grandma Moses can't possibly be an artist, because nobody ever taught her how to paint right.

Back to Top
 

ericball
Registered Member

Email Address Not AvailablePersonal Homepage Not AvailablePrivate Messaging Not AvailableAIM Not AvailableICQ Not AvailableY! Not AvailableMSN Not Available
Date Joined May 2007
Total Posts : 277
 
   Posted 10/30/2009 5:43 PM (GMT -8)    Quote This PostAlert An Admin About This Post.
Nick Mueller said...
* Weird operators that redefined standards set by other languages.
In other words, not propogating the broken C precedence, and using <= and >= as assignment operators instead of comparisons.
 


Composite NTSC sprite driver: Forum
NTSC & PAL driver templates: ObEx Forum
OnePinTVText driver: ObEx Forum
 

Back to Top
 

jazzed
_oOo_(^^)_oOo_

Email Address Not AvailablePersonal Homepage Not AvailablePrivate Messaging Not AvailableAIM Not AvailableICQ Not AvailableY! Not AvailableMSN Not Available
Date Joined Jan 2008
Total Posts : 2114
 
   Posted 10/30/2009 6:03 PM (GMT -8)    Quote This PostAlert An Admin About This Post.
I *always* forget the redefinition of >= compared to C and it costs me hours of misery. @ericball, maybe some light on the brokenness of the C definition is in order ?

At least "word" is defined by the language as 16 bits which I hope does not change. It is a trap we already fell into once with "int" and hope we don't get a repeat.

Actually method signatures are typed as "long" whether one likes it or not. Of course there is no warning if one accidentally abuses that.

Post Edited (jazzed) : 10/31/2009 2:14:03 AM GMT

Back to Top
 

ElectricAye
Registered Member



Email Address Not AvailablePersonal Homepage Not AvailablePrivate Messaging Not AvailableAIM Not AvailableICQ Not AvailableY! Not AvailableMSN Not Available
Date Joined Jul 2008
Total Posts : 972
 
   Posted 10/30/2009 7:32 PM (GMT -8)    Quote This PostAlert An Admin About This Post.
Nick Mueller said...
....byte, word, long; whenever I read that, I slam my head...


byte, word, long
byte, word, long
byte, word, long
byte, word, long
byte, word, long
byte, word, long
byte, word, long
byte, word, long
byte, word, long
byte, word, long
byte, word, long
byte, word, long
byte, word, long
byte, word, long

Hey, Nick, how does your head feel now? :p
Back to Top
 

Phil Pilgrim (PhiPi)
Registered Member



Email Address Not AvailablePersonal Homepage Not AvailablePrivate Messaging Not AvailableAIM Not AvailableICQ Not AvailableY! Not AvailableMSN Not Available
Date Joined Feb 2006
Total Posts : 6000
 
   Posted 10/30/2009 7:40 PM (GMT -8)    Quote This PostAlert An Admin About This Post.
Just out of curiosity, and not to start anything, has anyone ever used >= and <= for their defined purposes? If so, how and why? They're rather odd in that they change the intrinsic type of a "number" variable to "boolean", which is a strange thing for any modify-and-assign operator to do.

-Phil
Back to Top
 

BradC
Gronk



Email Address Not AvailablePersonal Homepage Not AvailablePrivate Messaging Not AvailableAIM Not AvailableICQ Not AvailableY! Not AvailableMSN Not Available
Date Joined Jul 2007
Total Posts : 1577
 
   Posted 10/30/2009 11:25 PM (GMT -8)    Quote This PostAlert An Admin About This Post.
Phil Pilgrim (PhiPi) said...
Just out of curiosity, and not to start anything, has anyone ever used >= and <= for their defined purposes? If so, how and why? They're rather odd in that they change the intrinsic type of a "number" variable to "boolean", which is a strange thing for any modify-and-assign operator to do.


I initially found a few of the assign operators peculiar, but when you look into the interpreter source and you see how the compiler builds assignments like that I suspect it was almost easier to let all operators that could be assignments be so rather than special case them so they don't. If you get my drift.


If you always do what you always did, you always get what you always got.lt's not particularly silly, is it?

Back to Top
 

localroger
Registered Member



Email Address Not AvailablePersonal Homepage Not AvailablePrivate Messaging Not AvailableAIM Not AvailableICQ Not AvailableY! Not AvailableMSN Not Available
Date Joined Mar 2009
Total Posts : 417
 
   Posted 10/31/2009 4:24 AM (GMT -8)    Quote This PostAlert An Admin About This Post.
Actually, I've used <= and >=, generally when I have a temp var that starts out as a value and ends up as a flag for future reference after the operation. But BradC is right that they probably ended up that way more for consistency than usefulness, and it wouldn't break my heart if Spin did that more like Basic.

One thing I really like about Spin is the way it handles Boolean operations. The usual way of using bitwise operators for Boolean is elegant but when you start using source values other than 0 and -1 it can get tricky. Having the distinct Boolean operators that coerce all nonzero values to -1 is very handy, very readable, and especially useful when you're mixing data types like mad to save RAM and your byte -1 looks like 255 compared to your word -1.
Back to Top
 

Sapieha
Registered Member



Email Address Not AvailablePersonal Homepage Not AvailablePrivate Messaging Not AvailableAIM Not AvailableICQ Not AvailableY! Not AvailableMSN Not Available
Date Joined Sep 2007
Total Posts : 719
 
   Posted 10/31/2009 5:04 AM (GMT -8)    Quote This PostAlert An Admin About This Post.
Hi all.

My litle addition on naming BYTE, WORD, LONG it is most logical.

BUT some assembly languges name it BYTE, WORD, DUBLE Word, and at last 64 bits ... Quad Word.

In my opinion no mather what name is ... Only it that name is understandable.

All "weired" operators that some CALL it ... WHT it is so much discusion on that .... It is not to hard to learn!!!!

What about describing SPIN ...... It is just SPIN Language not mather if it are Like other -- Diference Give it its new possiblites that are needed for Propeller to function.

Istead of time to discus that .... Give it TIME to Learn IT. Then it will be Yours next language.

Ragards
ChJ


Nothing is impossible, there are only different degrees of difficulty.

For every stupid question there is at least one intelligent answer.

Don't guess - ask instead.

If you don't ask you won't know.

If your gonna construct something, make it as simple as possible yet as versatile as posible.

 
Sapieha

Back to Top
 

João Geada
Registered Member



Email Address Not AvailablePersonal Homepage Not AvailablePrivate Messaging Not AvailableAIM Not AvailableICQ Not AvailableY! Not AvailableMSN Not Available
Date Joined Sep 2007
Total Posts : 55
 
   Posted 10/31/2009 7:45 AM (GMT -8)    Quote This PostAlert An Admin About This Post.
I'm with Nick on this. SPIN is a very strange language.
Sure, relatively easy to learn ... *BUT* no easier than many other idiosyncratic dead programming languages.
Very few people coming to this hobby come into it from a vacuum; most everyone here has had some programming
experience and SPIN being so different from everything leverages very little of that experience.

Fundamentally SPIN exists because Chip found it easier/more enjoyable to create a new language than to
understand and do the work to adopt an existing language to the propeller. And I wouldn't discount the
economic point for Parallax to have a captive audience by having a proprietary language.

If SPIN was such a wonderful thing, how come that nobody outside this Propeller community uses or is even aware of SPIN?
How come SPIN has not been adopted by anybody else?
And if SPIN is so wonderful, how come there are so many development efforts here to create alternative compilers/languages?


---
João

Back to Top
 

Sapieha
Registered Member



Email Address Not AvailablePersonal Homepage Not AvailablePrivate Messaging Not AvailableAIM Not AvailableICQ Not AvailableY! Not AvailableMSN Not Available
Date Joined Sep 2007
Total Posts : 719
 
   Posted 10/31/2009 8:00 AM (GMT -8)    Quote This PostAlert An Admin About This Post.
Hi João Geada.

You said...
"If SPIN was such a wonderful thing, how come that nobody outside this Propeller community uses or is even aware of SPIN?
How come SPIN has not been adopted by anybody else?"

It is not true... Look on This Doc ... How near that are Spin programings MODEL

Regards
ChJ


Nothing is impossible, there are only different degrees of difficulty.

For every stupid question there is at least one intelligent answer.

Don't guess - ask instead.

If you don't ask you won't know.

If your gonna construct something, make it as simple as possible yet as versatile as posible.

 
Sapieha



File Attachment :
2.Overview_OpenMP Parallel Programongs model's.pdf   937KB (application/pdf)
This file has been downloaded 15 time(s).
Back to Top
 

waltc
Registered Member

Email Address Not AvailablePersonal Homepage Not AvailablePrivate Messaging Not AvailableAIM Not AvailableICQ Not AvailableY! Not AvailableMSN Not Available
Date Joined Jul 2008
Total Posts : 145
 
   Posted 10/31/2009 8:47 AM (GMT -8)    Quote This PostAlert An Admin About This Post.
Got to agree with Nick on a few points

Spin is totally unsuited to teaching beginners programming or learning about micro-controllers for that matter.

Its saving grace is that Parallax included a bunch of useful objects when it was released and that it came free with the Prop.

I just hope the PropII isn't tied to Spin like the current version is.
Back to Top
 
[ << Previous Thread | Next Thread >> ]
New Topic Post Reply Printable Version
110 posts in this thread.
Viewing Page :
 1  2  3  4  5 
 
Forum Information
Currently it is Saturday, November 21, 2009 11:40 AM (GMT -8)
There are a total of 393,861 posts in 55,536 threads.
In the last 3 days there were 84 new threads and 711 reply posts. View Active Threads
Who's Online
This forum has 17693 registered members. Please welcome our newest member, Fosco.
62 Guest(s), 16 Registered Member(s) are currently online.  Details
heater, Siri, Jay Kickliter, Mike Green, Jim Fouch, JRetSapDoog, Dogg, dMajo, hover1, ErNa, Harley, Sapieha, Electronegativity, Tubular, Toby Seckshund, MicroDirk