.NET기반의 GNOME?

권순선의 이미지

The Register에 지난주에 실린 기사입니다.

----
How much do you love Microsoft's .NET? Enough to trust your Gnome applications to its APIs in the future?

That's what Gnome leader Miguel de Icaza, believes should happen. Miguel calls .NET the "natural upgrade" for the Gnome platform, and enthused about the technology in an interview with us at LinuxWorld this week. Basing Gnome on the .NET APIs will cut development time significantly,

He also had praise for the new Microsoft security model, dismissed the notion that Redmond was employing embrace and extend to its web services protocols, and put the message that the community should get over its beef with The Beast.

"I'd like to see Gnome applications written in .NET in version 4.0 - no, version 3.0. But Gnome 4.0 should be based on .NET," he told us. "A lot of people just see .NET as a fantastic upgrade for the development platform from Microsoft.

Had anyone, we wondered, told Sun? Sun has decided to adopt Gnome as the replacement to the aging and unloved CDE Desktop for Solaris, and you could see demos of the latest work this week at the large Sun booth.

Miguel of course is leading development on Mono, the project to create an open source version of Microsoft's .NET framework - the C# compiler, run-time and class libraries. Which he says is a lot of fun. It's sponsored by Ximian, the company he founded, but most of the hundreds of contributors are not Ximian employees.

Mono motives
We wondered if the goal of Mono was really technical, as he'd said at the launch of the project, or political? Why not help clone Java?

"I've never worked with the Java community. I was interested in Java the beginning, but the problem with Java is you do have to switch your platform. If you have code in C or C++ you have to jump to full Java: use Java.... http://theregister.co.uk/content/4/23919.html
----

Miguel은 여러가지 이유로 GNOME 4.0(혹은 3.0?)이 .NET 기반이 되어야 한다고 생각하나 봅니다. 이에 대해 Richard Stalllman이 Miguel이 직접 해명하기를 요구하고 있습니다. 역시 The Register의 기사내용 일부를 이곳에 인용합니다.

----
A surprised and dismayed Richard M Stallman says Gnome project founder Miguel de Icaza owes the community an explanation for comments made to The Register, last week, in which de Icaza advocated basing the project on Microsoft.NET APIs.

"I can't believe it's Gnome you're talking about but if it is, I wouldn't like that," Stallman told an audience at the World Social Forum in Porto Alegre, Brazil last week.

Stallman only learned of de Icaza's intentions to slip the Mono project - based on Microsoft's .NET framework - into Gnome as "the natural technology upgrade" when asked by the audience.

Gnome - the GNU Object Model - is the part of the GNU Project, started by Stallman in 1985.

"I didn't know he was doing that, I find that very hard to believe," he said.

"We would like him to come to the free software community and explain himself to us about it."

Brazilian tech site HotBits has more details.... http://www.theregister.co.uk/content/4/23939.html
----

과연 .NET이 GNOME에 채용될런지, 그렇게 될 경우 어떤 결과를 낳게 될런지....

익명 사용자의 이미지

miquel 의 스페인어식 발음은 미겔입니다

미겔이 멕시코사람이기 때문에 자기이름을 스페인어식으로 불러야 좋아하겠죠?

제발 miguel을 미구엘이라는 이상하게 읽지 말아주세요....

괜한 딴지인가요?

익명 사용자의 이미지

멕시코의 스페인식 발음은 '메히꼬'입니다.

일관성 있게만 부른다면 별 문제 없겠군요.

서노의 이미지

괜한 딴지 맞아요!!

익명 사용자의 이미지

아닌데?

익명 사용자의 이미지

걸린 글들 다 안읽고 쓰는 글이라 방정맞을지도...
(술은 먹었고 잠은 안오고, 영어는 읽기 싫고...지송)

저는 미구엘의 입장을 찬성합니다.
미구엘이 원하는 것은 오픈 플랫폼판 닷넷이 아닌
거 같습니다. 미구엘은 강력하고 유연한 개발
환경을 원하는 것으로 생각됩니다.
그렇다면 법적인 문제에서 크게 문제가 없으리라는
대범한 생각도 들고요. -상대가 엠에스인데도?

미구엘이 에볼루션 예를 든 것 같은데요. 이거
한번쯤 겪어 보는 문제인 거 같습니다. C로 거대한
어플을 만들어야 할까요? C는 너무 위험하고 생산성이
낮습니다. 그러면 바인딩을 써야 할까요? 언제
버전업이 될지, 언제 내핑겨쳐 질지 모르는 바인딩,
결국 상용툴로 가는 데는 이유가 있습니다.
(취미 프로젝트가 아니라면 말이죠... 미구엘의 처지
역시 그런 거 같구요.)

왜 하필 엠에스 꺼냐고 물으신다면 대안이 있냐고
되묻겠습니다. 자바라구요? 그렇게 말씀하시는 분도
자바로 어플을 짜지는 않거니와 자바로 짜진
어플은 잘 안쓰려 하실 거 같습니다.

리눅스에도 이제 상용 개발 환경이 밀려 들 겁니다.
어떤 식으로든 변화가 있을 수 밖에 없습니다.
모노 프로젝트는 그러한 변화에 대한 최선의 실험 중
하나일 것이라고 저는 생각합니다.

우리는 이제 모두 등소평주의자가 되어야 하지
않을까요?
(오늘 마우스 헌터 하던데 쥐 잘 잡는 고양이가
최고죠. 그 고양이가 까만색이든 하얀색이든...)

권순선의 이미지

Bill Joy의 .NET 및 C#에 대한 생각입니다.

Microsoft, in particular, has repeatedly plunged forward with a seductively simple yet dangerously powerful idea. In academia it's called "procedural attachment"--letting a program appear in place of data. Why do this? In a nutshell, programs are more versatile than data.

So Microsoft built ActiveX, a technique within Windows for automatically downloading and executing arbitrary programs. And Microsoft put macros into its word processor, along with a technique for automatically executing a macro as soon as a document is opened. And Microsoft made it easy for an e-mail script to do almost anything

But the company didn't worry about security, and guess what? One of the ways in which programs are more powerful than data is that they can be designed to replicate. That's the basic principle behind the computer virus. A Word macro can save itself to other files. An e-mail script can re-mail itself to everyone in your address book.

Microsoft originally built its operating system and applications for the single-user desktop. When the company finally took notice of networking, its programmers designed applications for the isolated office environment, where all the computers are assumed to belong to friendly colleagues, not adversaries. But when the Internet exploded, Microsoft seemed ill-prepared to retrofit adequate security into its shaky software base.

Now we have the proof of that: Microsoft Chairman Bill Gates has issued a directive that, at long last, security shall be more important than getting the next release out the door. Microsoft's system programmers will spend the month of February getting training in computer security. I think they'll find they have a long road ahead of them.

Now, to be fair, Microsoft has hired a lot of smart people. Many of them are friends and colleagues whom I greatly respect, and some of them do already know some things about security. But we're talking about the....

http://news.com.com/2010-1072-831385.html

권순선의 이미지

음...핵심이 되는 내용은 뒷부분에 있습니다. 대충 copy & paste 했더니 중요한 내용은 다 빠져 있군요. 링크를 따라가서 읽어 보시기 바랍니다....

권순선의 이미지

음...다 읽어 보니 ".NET 기반의 GNOME"과는 거의 상관이 없는 내용이네요. 참고만 하세요... 답글 다는 사람이 하도 없어서... :-)

익명 사용자의 이미지

Anders Hejlsberg는 Microsoft Corporation의 개발부에서 근무하는 뛰어난 엔지니어로, C# 언어의 수석 디자이너이며 .NET Framework 개발 책임자. 이전에는 Visual J++ 및 Windows Foundation Classes를 설계했음.

질문: Peter, 4월에 ECMA 모임에 참석하셨죠? 그 모임에서 새로 논의된 부분에 대해 말씀해 주시겠습니까?

Peter Golde: 예. 아시다시피 Microsoft, Intel, HP는 ECMA 프로세스를 통해 표준화에 대한 두 가지 사양을 ECMA에 공동으로 제출한 바 있습니다. 이 두 사양은 C# 언어 및 .NET Framework의 일부인 공통 언어 인프라(CLI)입니다. 우리는 표준화 과정의 일환으로 매월 여러 회사와 모임을 갖고 있습니다. 아직 확실하지는 않지만 ECMA에서 2001년말까지 두 사양에 대한 표준화 작업을 완료할 것으로 기대하고 있습니다

http://www.microsoft.com/Korea/msdn/library/techart/dotNETconvers.htm

설사 이 문제가 법적인 문제로 간다고 해도 다음 답변에는 할말이 없는것 같습니다.
Really, programmer's lives are boring, I wish my life would be
as exciting as other people's life appear to be.

p.s - 미구엘이 중간에 많은 언어들이 쓰일수 있거라고 했지만, 개인적으로나 제 주변사람들 의견으로는 에필이나 헤스켈같은 순수한 언어가 그 프레임웍에 잘 짬뽕되리라고 생각되지 않습니다.(비주얼베이직이 바뀌는 모습을 보십시오.) 닷넷 프레임웍은 시샵과 xml을 위해 있다고 봅니다.

익명 사용자의 이미지

p.s - 미구엘이 중간에 많은 언어들이 쓰일수 있거라고 했지만, 개인적으로나 제 주변사람들 의견으로는 에필이나 헤스켈같은 순수한 언어가 그 프레임웍에 잘 짬뽕되리라고 생각되지 않습니다.(비주얼베이직이 바뀌는 모습을 보십시오.) 닷넷 프레임웍은 시샵과 xml을 위해 있다고 봅니다.

그건 상관없습니다.
자바가 생겼다고 스몰토크가 사라지는 건 아니지 않습니까?

권순선의 이미지

Miguel이 gnome 메일링 리스트에 올린 답변입니다.

Mono and GNOME. The long reply.

From: Miguel de Icaza
To: gnome-hackers gnome org, gnome-devel-list gnome org
Subject: Mono and GNOME. The long reply.
Date: 06 Feb 2002 01:06:50 -0500

Hello everyone,

I am sorry that I have not been able to respond earlier. I would
like to apologize to anyone who might have been confused about my
strategy with Mono and what I am trying to do. Also, I want to thank
everyone on the mailing list that has contributed to the discussion, I
used a lot of your ideas on this email.

Before starting though, I would like to ask my readers to forget
everything they have heard about .NET, because it is a marketing term
used to describe many different Microsoft projects, and there is a lot
of information both correct and incorrect about it floating around.

My goals with Mono are very specific, and I will address those
shortly, but for the sake of getting things done, please forget
everything you have heard about .NET.

* First, the Facts

GNOME is not adopting Mono or .NET as an implementation
technology. The headline from the Register is misleading,
for a number of reasons:

* The headline does not reflect any statements I
made on the interview (if you read the interview
you will notice this).

* The only future plans that have been approved by the
GNOME team (which has 11 voting members on its
board) are found here:

http://developer.gnome.org/dotplan/

* I am not the GNOME foundation or control GNOME like
Linus controls his kernel, I am just its founder and
a contributor.

* GNOME is not built by an individual, its built by
a team of roughly 500 contributors in many areas.

* Decisions in the GNOME world are done by active
contributors and module maintainers. I have given
my maintainership status on every module I
maintained to other members of the GNOME team as
I got more involved with Ximian and later on with
Mono.

So effectively I have no "maintainer" control.

At this point on time, the GNOME team is working on shipping
version 2.0 of the desktop and the development platform, a major
upgrade to the desktop offering, and everyone is quite excited
with this.

* What is Mono?

Mono is an implementation of three pieces of technology:

* A compiler for a new programming language, similar
to Java, called C#.

* A virtual machine for the Common Intermediate
Language (CIL) byte codes.

* A set of libraries that encapsulate useful routines
and classes: from hash tables, to XML manipulation,
to database management, to GUI applications, to web
construction tools.

These are usually referred in the Microsoft world as the `.NET
Framework' as opposed to .NET. When I say `.NET Framework' here,
I am talking about these technologies.

Seasoned industry programmers will notice that the above is
very much like Java and the Java VM. They are right, the above
is just like Java.

The CIL has one feature not found in Java though: it is
byte code representation that is powerful enough to be used as a
target for many languages: from C++, C, Fortran and Eiffel to Lisp
and Haskell including things like Java, C#, JavaScript and Visual
Basic in the mix.

I wish I had the time to go in more detail, but for the sake
of this argument, the above will suffice.

Although Ximian can only finance the work of a C# compiler
(that is all the resource I have at my disposal), I want to
encourage other people to work on free implementations of other
compilers.

I want to encourage other developers to look at targeting
existing compilers and interpreters to the CLI: JavaScript, Basic,
Perl, Python, C++, and maybe even get gcc core to generate CIL
bytecodes.

* The CIL and the promise of language independence:

Bertrand Meyer (the father of Eiffel) wrote an interesting
article that encapsulates my excitement about the possibilities of
the CIL:

http://eiffel.com/doc/manuals/technology/bmarticles/sd/dotnet.html

This technology allows programming languages to be considered
on the basis of how they will perform for a given task, and not
based on the runtime libraries that you will depend. Any software
engineer should read this article:

http://www.fawcette.com/dotnetmag/2001_12/online/online_eprods/bmeyer/default.asp

So no longer should a software engineer pick Fortran, because
that is the only language where his math libraries are available:
he can now pick the right language for the problem at hand.

* Mono and GNOME.

GNOME had always tried to have a good support for multiple
programming languages, because we realize that no matter how much
we loved C as a programming language, there was a large crowd of
people out there that would like to use the GNOME libraries from
their favorite programming language, which might not necessarily be
C.

This strategy has paid off very well. There are healthy and
striving Python, Perl, Guile and Ada communities out there that
use the Gtk+ and Gnome bindings to build applications. From rapid
prototyping to robust applications: we wanted to empower
developers.

Keeping language bindings up to date and shipping them on time
has always been a consuming process, because no matter how
automated this process has turned out to be, there is still a
considerable amount of manual work that needs to be done.

I do go into more details about this at the following places:

http://www.go-mono.com/rationale.html

http://scriptingnews.userland.com/stories/storyReader$1275

* An upgrade to the development platform: Part I.

Microsoft has terrible APIs to code against. Anyone who has
used Win32 and any combination of the various layered cakes that
have been built on top of it has stuck to that platform only
because of the size of the market, but it is one of the most
horrible APIs ever built.

To make things worse, an evolution of APIs, components, memory
management contracts and patched up versions of COM have made the
platform horrible.

Microsoft has injected fresh air into their platform by
building and designing a new programming platform that addresses
all these pains. They have incorporated many ideas from Java, and
they have extended it to address new needs that developers had.
They took where Java left off.

Now, the Unix platform, GNOME included has some of these
problems: our APIs have been evolving. Libraries have been built
by disconnected groups (PNG, JPEG, Gtk+, Xml, Bonobo, CORBA spec
apis, etc) and the end result is that a developer eventually has
to learn more than he wanted to in the course of developing a
large application.

Ximian funded for a long time the work on the Perl bindings,
and we had a lot of work going into Bonobo (more than we do today)
because we believed that this would help us achieve language
independence and empower scripting language developers (that is
why we were so psyched about CORBA/Bonobo support all this time).

When C#, the CLR and the class libraries were launched, we
looked at that, and we saw how they were solving the problem in a
very nice way. At least it appealed to me and others from a
purely technological standpoint. This new platform showed a lot
of promise.

After much researching and debating, we decided that a couple
of developers at Ximian will join me in working on a free
implementation of these specifications. These people came
precisely from the cross-language interoperability area: Dick
Porter had been working before on ORBit and our SOAP
implementation; Dietmar Maurer came from the Bonobo development
world and Paolo Molaro was working on Gtk+/Gnome/Bonobo bindings
for Perl. This is the original Mono developer lineup.

* Evolution, Gnumeric and GNOME.

I have written and maintained many lines of code as part of
my GNOME work. Ximian has developed Evolution which consists of
roughly 750,000 lines of code.

Large software projects expose a set of problems that can be
ignored for smaller projects. Programs that have long life times
have different dynamics when it comes to memory management than
smaller programs.

There is a point in your life when you realize that you have
written enough destructors, and have spent enough time tracking
down a memory leak, and you have spend enough time tracking down
memory corruption, and you have spent enough time using low-level
insecure functions, and you have implemented way too many linked
lists [1]

[1] indeed, GNOME uses Glib which is a massive step up from
the Unixy libc APIs.

The .NET Framework is really about productivity: even if
Microsoft pushes these technologies for creating Web Services, the
major benefit of these is increased programmer productivity.

Evolution took us two years to develop and at its peak had 17
engineers working on the project. I want to be able to deliver
four times as many free software applications with the same
resources, and I believe that this is achievable with these new
technologies.

My experience so far has been positive, and I have first
hands experience on the productivity benefits that these
technologies bring to the table. For instance, our C# compiler is
written in C#. A beautiful piece of code.

It can be argued that I could be wrong, and that these
technologies are too new. But my personal experience and the
experience of some of my friends with this platform has been
amazing. I want to share with others this simplicity. And I
want to empower developers: I want to enable a whole class of
developers to create great desktop applications that integrate
with GNOME.

* Why is Mono related to GNOME?

It is no secret that I have been working on Mono as a new
platform for software development, and it is also not a secret
that I want to help the GNOME project with Mono. This has been
the plan since the project was announced in July.

Mono will use Gtk+, Gnome-Db, Libart, Gnome-Print and other
GNOME technologies as part of its implementation of its class
libraries, because that is what my team and I are familiarized
with.

So when you copy your binary from Windows that was compiled
with the Visual Studio.NET and run it on your Unix platform,
it will just integrate nicely with your GNOME desktop.

We are also exploring a port to MacOS X, and for that
particular case, we will integrate with Aqua, not with Gtk+, but
you get the idea.

* GNU was based on a proprietary technology.

GNU is a free re-implementations of Unix. Linux is a
re-implementation of the Unix kernel. Before the advent of Linux
and the Berkeley Unix, Unix was a proprietary technology, built by
ATT (which back in the day, was a monopoly).

Still, developers took what was good from Unix, and
reimplemented a free version of it. Down to the Unix programming
language: C (which was also invented at ATT). Even C++ was
invented at ATT.

Think of Mono as following the same process: we are bringing
the best technology out there to our beloved free software
platform. And at the same time it serves to be a magnificent
upgrade on the development platform.

* I can not force anyone.

Whether people in GNOME or elsewhere will use Mono is
independent of my opinion. Mono will have to stand on its own
feet, and will have to convince developers on its own merits
before it succeeds.

When I made my comments to the Register reporter, I was
envisioning that in a couple of years Mono would be a really solid
technology: a good JIT engine, good class libraries and would be a
useful platform for innovation: it would allow people to focus
more on the problems at hand and worry less about the low-level
details of the platform.

* Rewriting GNOME.

Havoc brought up an important point recently, an article from
Joel Spolsky:

http://www.joelonsoftware.com/articles/fog0000000348.html

The short story is: rewriting code does not pay off, and I
agree with the thesis of the article. Rewriting GNOME in C# with
the CLR would be a very bad idea, if not the worst possible idea
ever.

But what makes the .NET Framework technologies interesting is
that they are evolutionary technologies:

* The runtime can be linked into an application.

Example:

bash$ cat hello.c
#include
main (int argc, char *argv [])
{
mono_init (argc, argv);
mono_assembly_load ("classes.dll");
mono_ves_execute ("Class.Main");
}

So existing applications can be "extended" with Mono, take
a piece of code like Gnumeric, and write a new chunk of it
using Mono for example.

* There is no language switch required.

You can keep using your fav language, and gradually start
writing new pieces of code in another language that runs
with all the benefits of "managed" execution.

I go into some more detail here:

http://mail.gnome.org/archives/gnome-devel-list/2002-February/msg00021.html

* GNOME 4

As you might realize by now, GNOME 4 is not planned, it is not
possible to know what is in there. So my comments on GNOME 4 only
reflect the fact that I personally believe that people will see
that Mono is an interesting platform to write new applications.

So in the future the applications that will be shipped, very
likely might contain Mono technologies. Whether this is limited
to new applications only, or this is something used in more
fundamental pieces of the system is an entirely different matter.

But for now, GNOME 4 is non-existant project.

* Fighting the System.

The .NET Framework will exist in the Windows world, and
because of this they will be widely deployed. It is a pointless
battle to pretend that boycotting the use of those technologies
will have any kind of effect on their reach.

The .NET Framework stands on its own feet, and developers
in the Windows world love it. Even if this was not the case,
Microsoft is using these technologies and distributing to as many
people as possible. We are witnessing the creation and deployment
of a new standard. Sure, it has a lot of corporate support, but
it will become a widely deployed technology.

* Other uses of Mono

Despite my love for Mono as a tool for writing GNOME
applications and giving developers new tools to write code in less
time, there is an extra advantage in having a free implementation
of the .NET Framework for Unix:

* Windows developers know how to write code for it.

* Lets make it easy to bring developers from the Windows world
into our platform.

* Training materials, tutorials, documentation, tips and
tricks are already available in large quantities, lets
leverage this.

* Mono Financing.

Right now Mono is financed by Ximian because we believe that
this will reduce our cost of development for future applications.
And thats why we are really focused on Mono for the desktop
(amusingly the ASP.NET support in Mono has evolved more rapidly,
because Gaurav and Leen have been very excited about this, and
just have been producing code like crazy).

So even in the Mono world, I do not get to make all the
decisions: people work on what they are interested in developing.

The Mono community is great! Lots of passionate programmers
work with us, and I feel very happy that I have had a chance to
work with all of them.

At this point in time Ximian has only a small team of full
time developers working on Mono (five) and a lot of the work is
being done by contributors on their spare time, or hackers that
want to see the .NET Framework run in other platforms, or
people who share our enthusiasm for the platform, or people who
just like to hack on a particular area and just love to code.

But I would like to hire more full time developers: the open
source development model is great for getting the fun/short things
done, but it is terrible to get the long-haul, boring, repetitive
or dull things done.

I want to be able to bring more people to work full time on
Mono. I would like to offer the services of Ximian as a project
manager to keep driving this project forward, and get cash
infusions to hire developers to work on this project.

The only restriction is that all of our work has to be free
software. But other than that, I am ready to take money from
anyone or listen to any kind of proposals for making this happen.

Some people wonder if we have got a Microsoft investment or
contract (because I like this Microsoft technology). The answer
is no. But I would take one if they wanted to fund my free
software project ;-) Man, I wonder what that would be like!

Implementing the .NET Framework is a massive effort, and I
want to enroll as many contributors as possible.

* API compatibility.

I believe that the `Embrace and Extend' philosophy is bad for
users and developers. Whether its a large corporation doing it,
or ourselves. I want to be as compatible as possible with the
APIs that were published by Microsoft.

This achieves various things:

* Allows developers to move back and forth.

* Reduces training.

* Helps us leverage existing knowledge.

Of course, this should not stop anyone from implementing new
APIs. And I even encourage people to write new classes, APIs and
components that will be reusable both on Unix and on Windows.

* What if we never can keep up?

There is the issue that we might not be able to keep up (right
now, we dont, as .NET Framework 1.0 is already out there, and we
are, well still underway). Also, theoretically there is the risk
of a given API being unimplementable on Unix.

Even if that is the case, we still win, because we would get
this nice programming environment, that althought might not end up
being 100% .NET Framework compatible, it would still be an
improvement and would still help us move forward. So we can reuse
all the research and development done by Microsoft on these ideas,
and use as much as we can.

So far all it seems like everything in .NET can be emulated in
our environment.

* Richard Stallman

I am not sure what people told Richard Stallman about my
plans. Given the confusion surrounding .NET, it is very possible
that people were asking `Miguel wants to depend on Passport' or
something just as bad as that.

My only intention is to write applications using the CLI as a
development platform, which is really not very exciting for a news
paper to report: "Programmer to use new compiler, new garbage
collector, news at 11".

Really, programmer's lives are boring, I wish my life would be
as exciting as other people's life appear to be.

* Further debate.

I have just scratched the surface in this email, I do like a
lot the technology behind the .NET Framework as you might have
noticed from the interviews, no secret there. I can go on for
hours, but I have to set a limit to this email.

I hope this explanation will get us through, feel free to
e-mail me if you believe I have missed something or if you are
interested in contributing to make this vision happen.

PS:

I would like to thank Nat Friedman for providing moral,
technical support all these years and his unconditional
friendship. It has been a fun adventure.

Without Nat I would probably have gone crazy by now.

PS2:

I kind of got sentimental after reading all the nice e-mail on
the GNOME lists. After all, writing software alone is not that
interesting, the most interesting part is interacting with other
developers, and watching how community projects grow.

I would like to thank all the people I have worked over the
years: every GNOME developer past and present, every Mono
developer past and present and all my friends at Ximian who have
created a great place to work.

This community is great, and I have loved working with an
increasing number of people as free software becomes more
popular. I know sometimes I have been unreasonable, but I am
trying to learn from my mistakes. Am just too good at being
mistaken.

Miguel.

http://mail.gnome.org/archives/gnome-hackers/2002-February/msg00031.html

익명 사용자의 이미지

미구엘의 얘기만 보자면
그냥 GNOME의 개발 언어의 하나로 C#을 채용하겠다는 것처럼 보이는데요...
C#이어야 하는 이유를 보면 이미 현재의 자바가 하고 있는 일인데요...
여러개의 언어가 혼재하는 상황에서
각 언어별 바인딩을 만들기 위해 소모적인 작업을 많이 하는 것은 안타까운 일이긴 하지만...
C# VM위에 이펠이나 헤스켈, 혹은 비주얼베이직이나 파이썬을 올리겠다는 건... 글쎄요...
이미 자바VM위에 올라가 있는 언어(class로 컴파일되는 언어)가 얼마나 많습니까?
(적절하지 않을 수 있지만, 쉬운 예를 들면)차라리 AWT의 GTK바인딩(현재는 motif바인딩)을 만드는 것이 더 현실적이고 쉽지 않나요?

차를 새로 만들고 싶은데...
수지타산이 않맞으니 다 새로 만들진 못하겠고~
엔진만 바꿀려고 하는데...
(아직 안만들어진)마이크로소프트의 엔진이
(이미 만들어진)썬의 엔진보다 좋아 보이니..
그걸로 하겠다...
는 얘기는 설득력이 없어 보입니다.

그놈 프로젝트에서 미구엘정도의 영향력을 가진 사람이라면
(물론 본인은 그렇지 않다고 얘기하지만...)
좀 더 조심스럽게 말할 필요가 있네요...
예전부터 지미안 프로젝트에는 MS에서 가져온 기술들이 자주 보입니다만...

전 스톨만의 추종자는 아닙니다만... 스톨만의 얘기가 재미있군요...
프리소프트웨어로 돌아와서 해명하라고...
어떻게 들으면 스톨만은 미구엘을 배신자나 이단으로 보는 것 같다는...-,.-

여하튼, 첨에 글을 보고 황당했었는데...
아직은 먼 얘기 같습니다.

익명 사용자의 이미지

http://www.inf.uos.de/elmar/projects/java-gtk/
가면 awt의 gtk바인딩 구할 수 있습니다.

익명 사용자의 이미지

awt의 gtk바인딩이 아니고
gtk의 자바 바인딩이겠죠^^;
java-gnome.sourceforge.net에 가시면 더 발전된 버젼
(gtk/gnome의 자바 바인딩을 보실 수 있습니다.)
자바로 gtk어플리케이션을 짠다는 측면에서는 비슷하다고 할 수 있겠지만
이렇게되면 자바의 크로스 플랫폼이라는 장점은 없어지죠.
물론 기존의 awt로 작성한 프로그램은 다 새로 짜야 됩니다.
제가 말했던 awt의 gtk바인딩은 기존의 awt코드를 그래로 쓰므로
크로스플랫폼은 유지하면서 motif가 아닌 gtk에 바인딩(좀더 현대적인)하자는 얘기지요.

권순선의 이미지

.NET과 Mono에 대해 처음부터 걱정스러웠던 것은 자칫 Samba의 전례를 밟지 않을까 하는 것이었습니다. .NET 프레임워크(.NET에 통칭되는 패스포트 시스템 등은 포함되지 않습니다. Miguel이 강조하듯 Mono가 지향하는 것은 .NET 프레임워크이지 그에 관련된 패스포트 등은 Mono와 상관이 없습니다. 제가 알기론 패스포트에 대응되는 GNU 쪽의 프로젝트가 dotGNU라고 이미 진행 중인 것으로 압니다.)와 관련된 "모든" 기술 및 방법론들이 Mono와 같은 자유 소프트웨어/오픈소스 소프트웨어 커뮤니티에서 쉽게 차용해도 괜찮을 만큼 법적인 문제가 없을까 하는 겁니다.

Miguel은 Mono가 MS의 .NET 구현을 제대로 따라가지 못한다고 해도 그만큼의 의의가 있고 여전히 효과적인 개발 방법론이라고 주장하고 있는데 MS의 .NET 구현 및 그에 관련된 MS의 핵심 기술들(이미 개발된 것, 개발 중인것 포함)이 추후 특허 등과 관련하여 기술을 차용하고 구현하는데 법적인 문제를 야기하게 될 가능성은 처음부터 존재해 왔습니다. MS가 그런 부문에서 지금까지 해온 일을 생각해 보면 왜 그토록 많은 사람들이 걱정하는지는 더욱 자명해지겠지요.

익명 사용자의 이미지

교올-셔겨
교울-셔겨
69260118
ghreg
9785
gdhf
9855dfh
hgddh
95595
7585

익명 사용자의 이미지

교올-셔겨
교울-셔겨
69260118
ghreg
9785
gdhf
9855dfh
hgddh
95595
7585

익명 사용자의 이미지

모노 스터디 함께 하실 분..
http://gnome.or.kr/mono

익명 사용자의 이미지

흠.. 스톨만도 논의에 끼어들었던 모양이네요. 그놈 개발 메일링에 가입하신 분들은 보셨겠지만, 요 며칠 그놈과 닷넷, 모노에 관한 토론이 이루어지고 있습니다.
해석해가며 보기가 부담스러워서 정독을 한 건 아니지만, 조금 읽은 걸 기억해보면, 닷넷과 모노는 사실상 서로 독립적인 플랫폼이 될 듯합니다. 모노가 '닷넷에 맞추기 위해 바쁘게 쫓아가는' 일은 없을 거라고 하더군요. 닷넷 플랫폼이나 JVM에 호환하는 새로운 VM을 만든 게 그런 이유 때문이라고 하구요. (VM 이름도 나왔는데 까먹었습니다)
그러니까 그놈 4.0이 닷넷에 기반한다는 얘기는 문구 그대로 받아들이기보다는 폭넓은 호환성과 확장성을 확보하기 위해 벌이는 시도라고 이해하는 게 맞을 것 같습니다.

from [ke'izi] : where is [r]?

tcler의 이미지

mono faq:

질문 28: Microsoft 가 규격을 바꿈으로써, Mono 를 쓸모없게 만들게 되는 것에 두려움을 느끼지는 않는가?

아니다. Microsoft 는 CLI 와 C# 을 이용해서 많은 언어가 같이 사용할 수 있는 강력한 기반이 제작가능하다는 것을 보여주었다. 우리도 언제나 그것을 할 것이다.

만일 플랫폼이 백지화 되는 일이 생긴다 해도, 기존의 플랫폼의 가치가 사라지지는 않는다.

익명 사용자의 이미지

그렇다면 mono는 MS의 닷넷 구현을 기반으로 아이디어만 기본적으로 따 오는 개념이란 건가요. 많은 사람들이 걱정하는 건 닷넷이 말로는 운영체제나 랭귀지에 상관없는 통합 개발 환경이 될수 있다고 하지만 실제로 MS가 그렇게 되도록 놔두지 않을 거라는 거지요. 지금까지 걔네들이 해온 일을 봐도 그렇고 닷넷 관련된 "모든" 사항이 자유롭게 이용 가능한 상태로 오픈(법률적으로도 문제가 없을 정도로)되어 있지 않은 상태에서 막연히 쫓아가다가 발목을 잡히는 경우가 생기지 않을까 하는 걱정이 듭니다.

익명 사용자의 이미지

http://www.dt.co.kr/dt_srcview.html?gisaid=2002020502011456588001

‘닷넷 애플리케이션을 자바버추얼머신(JVM)에서 구동하고, 리눅스와 유닉스 환경에 포팅할 수는 없을까’

닷넷(.NET)과 자바(J2EE)의 웹서비스 플랫폼 경쟁이 치열한 가운데, 마이크로소프트의 닷넷을 ‘개방’시켜 다양한 환경에서 개발하고 구동할 수 있게 하려는 프로젝트들이 진행되고 있어 국내외 관련 업체들의 관심을 끌고 있다. 이들 프로젝트는 ‘닷넷 아니면 J2EE’라는 식의 이분법적 틀을 벗어나 ‘웹서비스 통합 개발환경’을 조성하려는 의미있는 시도로 풀이된다.

4일 외신과 관련업계에 따르면, 미국 캘리포니아주 산호세의 ‘핼시온 소프트웨어(www.halcyonsoft.com)’는 최근 MS의 닷넷 웹서비스를 자바로 변환, 자바를 지원하는 모든 환경에서 구동할 수 있게 해주는 SW인 ‘i넷(Instant.Net)’ 시험판을 내놓았다.

MS의 웹서비스 개발툴인 VS.NET으로 닷넷 애플리케이션을 작성하고, 이 소스코드를 중간언어인 MSIL(MS Intermediate Language)로 컴파일하는데, i넷의 ‘IL―자바 변환 도구(IL―to―Java tool)’를 활용하면 MSIL코드를 자바코드로 변환할 수 있는 것이다. 핼시온 소프트웨어는 자바의 구동엔진인 JVM에 해당하는 MS의 CLR(공통언어런타임·Common Language Runtime)을 대체하는 런타임 환경(runtime environment)을 새롭게 개발, MS CLR에 우선해 작동하도록 했다.

핼시온은 2000년 10월부터 90명의 연구진을 동원해 i넷을 개발중이며, MS가 서비스 팩을 내놓아 닷넷 프레임워크의 CLR이나 BCL(기본 클래스 라이브러리) 등에 변화를 가해도, 늦지 않게 새 버전의 i넷을 만들 수 있다고 자신했다. 핼시온은 오는 3월 i넷의 두번째 베타버전을 내놓은 뒤 오는 7월 정식 버전을 출시할 계획이다. 베타버전은 핼시온 홈페이지에서 무료로 내려받을 수 있다.

닷넷을 리눅스와 유닉스 운영체제(OS)에 앉히려는 시도인 ‘모노(Mono)’ 프로젝트는 ‘지미안(Ximian·www.ximian.com)’이란 리눅스 업체가 주도하고 있으며, 올해 들어 인텔과 HP의 리눅스 부서가 모노 프로젝트를 적극 지원하겠다고 밝혀 개발자들의 관심을 끌고 있다. 이 프로젝트의 목적은 리눅스와 유닉스 OS에서 웹서비스 애플리케이션을 개발해 구동할 수 있도록 일종의 ‘오픈소스 닷넷 버전’을 개발하는 것이다.

MS 한국지사 닷넷팀의 홍영준씨는 “닷넷을 리눅스에 포팅하는 속도가 과거 수 년이 걸렸던 자바를 리눅스에 포팅하는 것보다 훨씬 빠를 것”이라고 전망했다. 우상철 리눅스인터내셔날 사장도 “i넷과 모도프로젝트는 개발자가 일관된 개발환경에서 웹서비스 애플리케이션을 개발할 수 있도록 하는 것”이라며 “일관된 개발환경으로 인해 개발 생산성과 속도가 빨라질 것”이라고 말했다.

<박창신기자.박정연기자>