Searching \ for '[PIC] interesting language aty' in subject line. ()
Make payments with PayPal - it's fast, free and secure! Help us get a faster server
FAQ page:
Search entire site for: 'interesting language aty'.

Exact match. Not showing close matches.
PICList Thread
'[PIC] interesting language aty'
2005\02\14@165702 by James Newton, Host

face picon face
Interesting language.

I assume the "." before the "b" in "byte .b" makes that a local variable
which can be reused by other routines? What do you do if:

       call Proc2

       byte .b
       .b = w

       byte .a
       call Proc2

How does Proc3 allocate .a without having that overwritten by Proc2? Does it
check all the procedures that it calls to find the maximum number of locals
under it? Or does Proc2 check all the procedures that call it?

Is it possible to do things like:
       w = a, + b, - c;

Do I understand that bit variables are placed in "<>" e.g. STATUS<Z>? Would
temp<0> be the low order bit of temp? Why not use the period again? Slightly
different meaning but very close to the same thing. STATUS.Z is the bit
called Z in the scope of STATUS just as OutputWInHex.toHex is the label
called toHex in the scope of OutputWInHex.

Is this compiler available? Open Source? Can I publish it on

James Newton: PICList webmaster/Admin  1-619-652-0593 phone

> {Original Message removed}

2005\02\14@193751 by Michael Park

picon face
Variables are all statically allocated. Proc2.b and Proc3.a are separate
No real local variables, sorry. Atypical is just an assembler that happens
to look
vaguely HLL-like.

>Is it possible to do things like:
>        w = a, + b, - c;

Yup, for sure, as long as each operation is a PIC instruction. This is still
assembly language,
not a compiler. I.e.,
   w = 123          // OK, this is a MOVLW
   STATUS = 123 // No good; no MOVFW instruction

>Do I understand that bit variables are placed in "<>" e.g. STATUS<Z>? Would
>temp<0> be the low order bit of temp?

Yup. I chose <> to mirror the Microchip notation.

I actually mentioned Atypical on the piclist a year or two ago. It was a
little experiment
that worked well for me. I thought I'd write up a doc and put it out there,
but I'm
too lazy (tech writing is my day job!). Plus it's 14-bit only, so I'm not
sure how much
interest there would be.


{Quote hidden}

2005\02\14@204402 by James Newton, Host

face picon face
What is it written in? doesn't say...

The piclist post you made has the expected responses...\2003\05\14\144921a
Several people pulled it apart for no good reason and a few people liked it.

Most importantly, Sergio Masci pointed out that it could be expanded easily
to work with multi-byte values (which is what I was thinking).\2003\05\15\213644a

I'm actually quite interested...


> {Original Message removed}

2005\02\14@212905 by Michael Park

picon face
It's written in C#. Let's take this off-list.

{Quote hidden}

> > {Original Message removed}

2005\02\15@105132 by Walter Banks

picon face
Atypical is similar to a series of languages that were written as a form of structured assemblers. These languages are characterized by fast efficient productive and predicable application development. They require more knowledge of the processor than C.
Most of them either die or evolve. Those that evolve often lose the strength of their roots. Atypical is not unlike B and BCPL in the 70's that led to C

There are some other similar languages that are worth looking at PLs and MISTRAL both originally developed in the late 70's. MISTRAL had a formal grammar developed as a language experiment at Bell Labs and was implemented on quite a few embedded
processors at the time.


Michael Park wrote:

{Quote hidden}

> > > {Original Message removed}

2005\02\15@143212 by James Newtons Massmind

face picon face
Another is terse which is x86 specific.

But Michael doesn't seem comfortable talking about it Atypical here, so I
will make further posts directly to him off list.


> {Original Message removed}

More... (looser matching)
- Last day of these posts
- In 2005 , 2006 only
- Today
- New search...