9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
* [9fans] Go for systems programming
@ 2013-05-17 15:51 lamg
  2013-05-17 16:07 ` Nemo
  2013-05-17 16:31 ` Matthew Veety
  0 siblings, 2 replies; 16+ messages in thread
From: lamg @ 2013-05-17 15:51 UTC (permalink / raw)
  To: 9fans

 Can Go be used for replacing C in Plan9? Could be a kernel be written
in Go? If it is not possible, what about making a C-like Go? Where
C-like Go means having similar syntax, but not channels, garbage
collection, and other fancy 21st century runtime features; but with no
need for makefiles and fast compilation times. Could this be a sort of
plugable compiler, where we could select what features of the language
we would use for being included in the runtime?
 I think it will be nice for Plan9 having such language-compiler, Go
has proved to be an improvement over C in its own niche.



^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [9fans] Go for systems programming
  2013-05-17 15:51 [9fans] Go for systems programming lamg
@ 2013-05-17 16:07 ` Nemo
  2013-05-17 18:45   ` Bakul Shah
  2013-05-17 16:31 ` Matthew Veety
  1 sibling, 1 reply; 16+ messages in thread
From: Nemo @ 2013-05-17 16:07 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

If you remove the features that make go interesting you'd get C without
punctuation symbols.




^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [9fans] Go for systems programming
  2013-05-17 15:51 [9fans] Go for systems programming lamg
  2013-05-17 16:07 ` Nemo
@ 2013-05-17 16:31 ` Matthew Veety
  2013-05-17 16:49   ` erik quanstrom
  2013-05-17 17:28   ` Skip Tavakkolian
  1 sibling, 2 replies; 16+ messages in thread
From: Matthew Veety @ 2013-05-17 16:31 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

On May 17, 2013, at 11:51, lamg <gort.andres000@gmail.com> wrote:

> I think it will be nice for Plan9 having such language-compiler, Go
> has proved to be an improvement over C in its own niche.
> 

In its own niche is the important point here. Just because writing a kernel or system utilities can be done in Go doesn't mean it should be. Go isn't even totally stable or feature complete on Plan 9 at this point. You get the same shit in C on Plan 9 as you do Go plus it's more stable and has better support.
At this point I would say keep using C unless you have some specific need to use Go on Plan 9.

--
Veety


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [9fans] Go for systems programming
  2013-05-17 16:31 ` Matthew Veety
@ 2013-05-17 16:49   ` erik quanstrom
  2013-05-17 17:28   ` Skip Tavakkolian
  1 sibling, 0 replies; 16+ messages in thread
From: erik quanstrom @ 2013-05-17 16:49 UTC (permalink / raw)
  To: 9fans

> In its own niche is the important point here.  Just because writing a
> kernel or system utilities can be done in Go doesn't mean it should
> be.  Go isn't even totally stable or feature complete on Plan 9 at
> this point.  You get the same shit in C on Plan 9 as you do Go plus
> it's more stable and has better support.  At this point I would say
> keep using C unless you have some specific need to use Go on Plan 9.

if you rewrote a kernel in go, i don't think you'd want something that
is exactly plan 9.

- erik



^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [9fans] Go for systems programming
  2013-05-17 16:31 ` Matthew Veety
  2013-05-17 16:49   ` erik quanstrom
@ 2013-05-17 17:28   ` Skip Tavakkolian
  2013-05-17 17:53     ` lamg
  1 sibling, 1 reply; 16+ messages in thread
From: Skip Tavakkolian @ 2013-05-17 17:28 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

[-- Attachment #1: Type: text/plain, Size: 959 bytes --]

Go's is a great language that makes it easy to write applications of all
sizes well, but its greatest benefit to Plan 9 is the plethora of packages
that make it possible to deal with the numerous Web standards.



On Fri, May 17, 2013 at 9:31 AM, Matthew Veety <mveety@gmail.com> wrote:

> On May 17, 2013, at 11:51, lamg <gort.andres000@gmail.com> wrote:
>
> > I think it will be nice for Plan9 having such language-compiler, Go
> > has proved to be an improvement over C in its own niche.
> >
>
> In its own niche is the important point here. Just because writing a
> kernel or system utilities can be done in Go doesn't mean it should be. Go
> isn't even totally stable or feature complete on Plan 9 at this point. You
> get the same shit in C on Plan 9 as you do Go plus it's more stable and has
> better support.
> At this point I would say keep using C unless you have some specific need
> to use Go on Plan 9.
>
> --
> Veety
>

[-- Attachment #2: Type: text/html, Size: 1380 bytes --]

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [9fans] Go for systems programming
  2013-05-17 17:28   ` Skip Tavakkolian
@ 2013-05-17 17:53     ` lamg
  2013-05-17 20:29       ` Charles Forsyth
  0 siblings, 1 reply; 16+ messages in thread
From: lamg @ 2013-05-17 17:53 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

What about lack of makefiles and fast compilation times?, I don´t want
to "remove" that.  The  point is making a more practical C, not a
Go--. Go´s grammar is designed for being easy to parse (and is
different), so it wouldn´t be C without punctuation symbols; and Go´s
package system makes the compilation faster. What about the
preprocessor? Can we get rid of that?
 If think if we can make better our lives, why wouldn´t do we? About
the support, well is difficult to break our links with the past, but
as a parallel long term project changing one thing at the time when it
is ready would be possible to achieve stability and to write programs
more easy.

2013/5/17, Skip Tavakkolian <skip.tavakkolian@gmail.com>:
> Go's is a great language that makes it easy to write applications of all
> sizes well, but its greatest benefit to Plan 9 is the plethora of packages
> that make it possible to deal with the numerous Web standards.
>
>
>
> On Fri, May 17, 2013 at 9:31 AM, Matthew Veety <mveety@gmail.com> wrote:
>
>> On May 17, 2013, at 11:51, lamg <gort.andres000@gmail.com> wrote:
>>
>> > I think it will be nice for Plan9 having such language-compiler, Go
>> > has proved to be an improvement over C in its own niche.
>> >
>>
>> In its own niche is the important point here. Just because writing a
>> kernel or system utilities can be done in Go doesn't mean it should be.
>> Go
>> isn't even totally stable or feature complete on Plan 9 at this point.
>> You
>> get the same shit in C on Plan 9 as you do Go plus it's more stable and
>> has
>> better support.
>> At this point I would say keep using C unless you have some specific need
>> to use Go on Plan 9.
>>
>> --
>> Veety
>>
>



^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [9fans] Go for systems programming
  2013-05-17 16:07 ` Nemo
@ 2013-05-17 18:45   ` Bakul Shah
  2013-05-17 19:23     ` hiro
  2013-05-17 20:31     ` Kurt H Maier
  0 siblings, 2 replies; 16+ messages in thread
From: Bakul Shah @ 2013-05-17 18:45 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

On May 17, 2013, at 9:07 AM, Nemo <nemo.mbox@gmail.com> wrote:

> If you remove the features that make go interesting you'd get C without
> punctuation symbols.

Agreed.

I don't see what's the big deal about doing GC In an OS kernel. And the features that make Go interesting can be useful at the kernel level too.

On the other hand, may be the kernel can be made much more minimal and where most everything is done by user level services. But as Erik says it wouldn't be plan9. In Go it might be more natural to have a syschannel instead of syscalls (actual syscalls might end up being just send and receive).

On the other other hand, to really dethrone C, there needs to be a Go compiler in Go and an OS in Go! We know both can be done but actually doing so can throw up a bunch of surprises.


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [9fans] Go for systems programming
  2013-05-17 18:45   ` Bakul Shah
@ 2013-05-17 19:23     ` hiro
  2013-05-17 20:31     ` Kurt H Maier
  1 sibling, 0 replies; 16+ messages in thread
From: hiro @ 2013-05-17 19:23 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

> On the other other hand, to really dethrone C, there needs to be a Go
> compiler in Go and an OS in Go!

I also want my microwave and wristband to run GO code first.



^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [9fans] Go for systems programming
  2013-05-17 17:53     ` lamg
@ 2013-05-17 20:29       ` Charles Forsyth
  0 siblings, 0 replies; 16+ messages in thread
From: Charles Forsyth @ 2013-05-17 20:29 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

[-- Attachment #1: Type: text/plain, Size: 233 bytes --]

On 17 May 2013 18:53, lamg <gort.andres000@gmail.com> wrote:

> What about the
> preprocessor? Can we get rid of that?
>

The Plan 9 C compiler does the preprocessor actions during lexical
analysis. It isn't a separate pass.

[-- Attachment #2: Type: text/html, Size: 574 bytes --]

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [9fans] Go for systems programming
  2013-05-17 18:45   ` Bakul Shah
  2013-05-17 19:23     ` hiro
@ 2013-05-17 20:31     ` Kurt H Maier
  2013-05-17 20:37       ` erik quanstrom
  2013-05-17 20:42       ` Bakul Shah
  1 sibling, 2 replies; 16+ messages in thread
From: Kurt H Maier @ 2013-05-17 20:31 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

On Fri, May 17, 2013 at 11:45:06AM -0700, Bakul Shah wrote:
>
> I don't see what's the big deal about doing GC In an OS kernel.
>


This is a fantastic troll.

khm



^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [9fans] Go for systems programming
  2013-05-17 20:31     ` Kurt H Maier
@ 2013-05-17 20:37       ` erik quanstrom
  2013-05-17 20:42       ` Bakul Shah
  1 sibling, 0 replies; 16+ messages in thread
From: erik quanstrom @ 2013-05-17 20:37 UTC (permalink / raw)
  To: 9fans

On Fri May 17 16:32:47 EDT 2013, khm-9@intma.in wrote:
> On Fri, May 17, 2013 at 11:45:06AM -0700, Bakul Shah wrote:
> >
> > I don't see what's the big deal about doing GC In an OS kernel.
>
> This is a fantastic troll.

i don't see the troll here.  there is nothing magic about user space.

- erik



^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [9fans] Go for systems programming
  2013-05-17 20:31     ` Kurt H Maier
  2013-05-17 20:37       ` erik quanstrom
@ 2013-05-17 20:42       ` Bakul Shah
  2013-05-17 20:46         ` Matthew Veety
  2013-05-18  3:17         ` erik quanstrom
  1 sibling, 2 replies; 16+ messages in thread
From: Bakul Shah @ 2013-05-17 20:42 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

On Fri, 17 May 2013 16:31:43 EDT Kurt H Maier <khm-9@intma.in> self referentially wrote:
>
> This is a fantastic troll.

In response to
> On Fri, May 17, 2013 at 11:45:06AM -0700, Bakul Shah wrote:
> >
> > I don't see what's the big deal about doing GC In an OS kernel.

See http://en.wikipedia.org/wiki/Genera_(operating_system)
Look under the Features section.



^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [9fans] Go for systems programming
  2013-05-17 20:42       ` Bakul Shah
@ 2013-05-17 20:46         ` Matthew Veety
  2013-05-17 21:05           ` Bakul Shah
  2013-05-18  3:17         ` erik quanstrom
  1 sibling, 1 reply; 16+ messages in thread
From: Matthew Veety @ 2013-05-17 20:46 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

Oh lord this is degenerating to lisp machines.

On May 17, 2013, at 16:42, Bakul Shah <bakul@bitblocks.com> wrote:

> On Fri, 17 May 2013 16:31:43 EDT Kurt H Maier <khm-9@intma.in> self referentially wrote:
>> 
>> This is a fantastic troll.  
> 
> In response to
>> On Fri, May 17, 2013 at 11:45:06AM -0700, Bakul Shah wrote:
>>> 
>>> I don't see what's the big deal about doing GC In an OS kernel.
> 
> See http://en.wikipedia.org/wiki/Genera_(operating_system)
> Look under the Features section.
> 



^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [9fans] Go for systems programming
  2013-05-17 20:46         ` Matthew Veety
@ 2013-05-17 21:05           ` Bakul Shah
  2013-05-17 21:53             ` Kurt H Maier
  0 siblings, 1 reply; 16+ messages in thread
From: Bakul Shah @ 2013-05-17 21:05 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

On Fri, 17 May 2013 16:46:25 EDT Matthew Veety <mveety@gmail.com> wrote:
> Oh lord this is degenerating to lisp machines.

And the problem with that is?



^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [9fans] Go for systems programming
  2013-05-17 21:05           ` Bakul Shah
@ 2013-05-17 21:53             ` Kurt H Maier
  0 siblings, 0 replies; 16+ messages in thread
From: Kurt H Maier @ 2013-05-17 21:53 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

On Fri, May 17, 2013 at 02:05:19PM -0700, Bakul Shah wrote:
> On Fri, 17 May 2013 16:46:25 EDT Matthew Veety <mveety@gmail.com> wrote:
> > Oh lord this is degenerating to lisp machines.
>
> And the problem with that is?
>

you are a master troll this is awesome



^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [9fans] Go for systems programming
  2013-05-17 20:42       ` Bakul Shah
  2013-05-17 20:46         ` Matthew Veety
@ 2013-05-18  3:17         ` erik quanstrom
  1 sibling, 0 replies; 16+ messages in thread
From: erik quanstrom @ 2013-05-18  3:17 UTC (permalink / raw)
  To: 9fans

> See http://en.wikipedia.org/wiki/Genera_(operating_system)
> Look under the Features section.

hey, that's cool.  thanks for the reference.

- erik



^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2013-05-18  3:17 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-05-17 15:51 [9fans] Go for systems programming lamg
2013-05-17 16:07 ` Nemo
2013-05-17 18:45   ` Bakul Shah
2013-05-17 19:23     ` hiro
2013-05-17 20:31     ` Kurt H Maier
2013-05-17 20:37       ` erik quanstrom
2013-05-17 20:42       ` Bakul Shah
2013-05-17 20:46         ` Matthew Veety
2013-05-17 21:05           ` Bakul Shah
2013-05-17 21:53             ` Kurt H Maier
2013-05-18  3:17         ` erik quanstrom
2013-05-17 16:31 ` Matthew Veety
2013-05-17 16:49   ` erik quanstrom
2013-05-17 17:28   ` Skip Tavakkolian
2013-05-17 17:53     ` lamg
2013-05-17 20:29       ` Charles Forsyth

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).