[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Occam compiler using gcc



Ruth asks for comments:

1. Your initiative is just great!
2. We are still using occam in products, as a matter of fact
   I have even today compiled C freshly generated from occam
   sources!
3. Anything which makes occam more "runnable" is great!
4. I did a "search" in you mail and could find no
   mention of "Linux". Good;-) (I might one day soon thank
   UKC that they did the Linux port! But I presently so miss
   KRoC for Windows..)
5. Wish list:

   SPoC has direct C insertion into occam:
   INT var, reply:
   SEQ
     chan ? var
     #C $reply = c_func (&$var);
   will call c_func with occam int "var" expanded.

   There's also a "#H" C direct code insertion.
   It will move the inserted code in scope before
   all generated C, to use for #include's. SPoC
   ensures that #C may be placed everywhere but #H
   only at top occam level. (Why haven't the world
   discovered SPoC? What's wrong with my evangelizing
   abilities? (Don't tell me!))

   This would make ALL my windows based code (with
   sockets and all) directly portable to your
   new ??oC.

   I would also like flags being set by other
   windows threads ("asynchronous events") to be
   connected to occam channels. I've also done
   this for SPoC (End of DMA interrupt routine
   in C signals the end-of-dma channel (DSP)).
   On the PC I've connected socket input thread
   to a channel, and another C thread's callback
   is connected to an occam channel.

   "It's gotta be simple. It's gotta be tasty."

   It is!
   But it takes one or two context switches too much..

6. I'd be glad to help!
   Not with compiler writing but with ideas, criticisms,
   evaluation etc.
7. By the way, isn't SPoC's scheduler really scheduling
   Green Threads?

\ Øyvind /
/ Oyvind Teig - oyvind.teig@xxxxxxx
\ Kongsberg Maritime Ship Systems, Ship Control (KMSS-SC)
/ 7005 Trondheim Norway
\ 47 73581268 - http://www.kongsberg.com/eng/KM/
/ http://home.no.net/oyvteig/ - Home page