# Turkish translation of https://www.gnu.org/gnu/rms-lisp.html # Copyright (C) 2023 Free Software Foundation, Inc. # This file is distributed under the same license as the original article. # M. Gör , 2023. # msgid "" msgstr "" "Project-Id-Version: rms-lisp.html\n" "POT-Creation-Date: 2021-11-02 14:27+0000\n" "PO-Revision-Date: 2023-05-27 13:09+0200\n" "Last-Translator: T. E. Kalayci \n" "Language-Team: Turkish \n" "Language: tr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Generator: Poedit 3.2.2\n" #. type: Content of: msgid "" "My Lisp Experiences and the Development of GNU Emacs - GNU Project - Free " "Software Foundation" msgstr "" "Lisp Deneyimlerim ve GNU Emacs'in Geliştirilmesi - GNU Projesi - Özgür " "Yazılım Vakfı" #. type: Content of: <div><h2> msgid "My Lisp Experiences and the Development of GNU Emacs" msgstr "Lisp Deneyimlerim ve GNU Emacs'in Geliştirilmesi" #. type: Content of: <div><div><p> msgid "" "Transcript of Richard Stallman's speech at the International Lisp " "Conference, 28 Oct 2002." msgstr "" "Richard Stallman'ın Uluslararası Lisp Konferansı'ndaki konuşmasının dökümü, " "28 Ekim 2002." #. type: Content of: <div><p> msgid "" "Since none of my usual speeches have anything to do with Lisp, none of them " "were appropriate for today. So I'm going to have to wing it. Since I've " "done enough things in my career connected with Lisp I should be able to say " "something interesting." msgstr "" "Her zamanki konuşmalarımın hiçbiri Lisp ile ilgili olmadığı için hiçbiri " "bugüne uygun değildi. Bu yüzden bu sefer hazırlıksız konuşacağım. " "Kariyerimde Lisp ile bağlantılı yeterince şey yaptığım için ilginç bir şey " "söyleyebilmeliyim." #. type: Content of: <div><p> msgid "" "My first experience with Lisp was when I read the Lisp 1.5 manual in high " "school. That's when I had my mind blown by the idea that there could be a " "computer language like that. The first time I had a chance to do anything " "with Lisp was when I was a freshman at Harvard and I wrote a Lisp " "interpreter for the <abbr title=\"Programmed Data Processor\">PDP</abbr>-11. " "It was a very small machine—it had something like 8k of memory—" "and I managed to write the interpreter in a thousand instructions. This gave " "me some room for a little bit of data. That was before I got to see what " "real software was like, that did real system jobs." msgstr "" "Lisp ile ilk deneyimim, lisede Lisp 1.5 kılavuzunu okuduğum zamandı. İşte o " "zaman böyle bir bilgisayar dili olabileceği fikriyle aklım başımdan gitti. " "Lisp ile ilk kez bir şey yapma şansım Harvard'da birinci sınıf öğrencisiyken " "<abbr title=\"Programmed Data Processor\">PDP</abbr>-11 için bir Lisp " "yorumlayıcısı yazdığım zamandı. Çok küçük bir makineydi, 8k gibi bir belleğe " "sahipti, ve yorumlayıcıyı bin yönerge ile yazmayı başardım. Bu bana veri " "için biraz yer bıraktı. Bu, gerçek yazılımın nasıl olduğunu, gerçek sistem " "işlerini yapanları görmemden önceydi." #. type: Content of: <div><p> msgid "" "I began doing work on a real Lisp implementation with JonL White once I " "started working at <abbr title=\"Massachusetts Institute of " "Technology\">MIT</abbr>. I got hired at the Artificial Intelligence Lab not " "by JonL, but by Russ Noftsker, which was most ironic considering what was to " "come—he must have really regretted that day." msgstr "" "<abbr title=\"Massachusetts Institute of Technology\">MIT</abbr>'de " "çalışmaya başladığımda JonL White ile gerçek bir Lisp uygulaması üzerinde " "çalışmaya başladım. Yapay Zeka Laboratuvarı'nda JonL tarafından değil, Russ " "Noftsker tarafından işe alındım ki bu, başına gelecekler düşünüldüğünde çok " "ironikti... o gün için gerçekten pişman olmuş olmalı." #. type: Content of: <div><p> msgid "" "During the 1970s, before my life became politicized by horrible events, I " "was just going along making one extension after another for various " "programs, and most of them did not have anything to do with Lisp. But, along " "the way, I wrote a text editor, Emacs. The interesting idea about Emacs was " "that it had a programming language, and the user's editing commands would be " "written in that interpreted programming language, so that you could load new " "commands into your editor while you were editing. You could edit the " "programs you were using and then go on editing with them. So, we had a " "system that was useful for things other than programming, and yet you could " "program it while you were using it. I don't know if it was the first one of " "those, but it certainly was the first editor like that." msgstr "" "1970'lerde, hayatım korkunç olaylarla politikleşmeden önce, çeşitli " "programlar için birbiri ardına uzantılar yapıyordum ve çoğunun Lisp ile " "hiçbir ilgisi yoktu. Ancak bu arada bir metin editörü yazdım, Emacs. Emacs " "ile ilgili ilginç fikir, bir programlama diline sahip olması ve kullanıcının " "düzenleme komutlarının bu yorumlanmış programlama dilinde yazabilmesiydi, " "böylece siz düzenleme yaparken editörünüze yeni komutlar " "yükleyebiliyordunuz. Kullanmakta olduğunuz programları düzenleyebilir ve " "sonra onlarla düzenlemeye devam edebilirdiniz. Böylece, programlama " "dışındaki şeyler için yararlı olan bir sistemimiz vardı ve üstelik onu " "kullanırken programlayabiliyordunuz. Böyle bir şeyin ilk olanı mı bilmiyorum " "ama bu alanda ilk editör olduğu kesindi." #. type: Content of: <div><p> msgid "" "This spirit of building up gigantic, complicated programs to use in your own " "editing, and then exchanging them with other people, fueled the spirit of " "free-wheeling cooperation that we had at the AI Lab then. The idea was that " "you could give a copy of any program you had to someone who wanted a copy of " "it. We shared programs to whomever wanted to use them, they were human " "knowledge. So even though there was no organized political thought relating " "the way we shared software to the design of Emacs, I'm convinced that there " "was a connection between them, an unconscious connection perhaps. I think " "that it's the nature of the way we lived at the AI Lab that led to Emacs and " "made it what it was." msgstr "" "Kendi düzenlemenizde kullanmak üzere devasa, karmaşık programlar oluşturma " "ve ardından bunları diğer insanlarla değiştirme ruhu, o zamanlar AI Lab'de " "sahip olduğumuz özgürlüğe dayanan işbirliği ruhunu besledi. Buradaki fikir, " "sahip olduğunuz herhangi bir programın bir kopyasını, onun bir kopyasını " "isteyen birine verebilmenizdi. Programları kullanmak isteyenlerle paylaştık, " "bunlar insanlığın bilgisiydi. Bu nedenle, Emacs'ın tasarımıyla yazılımı " "paylaşma şeklimiz arasında hiçbir örgütlü siyasi düşünce olmamasına rağmen, " "aralarında bir bağlantı olduğuna ikna oldum, belki de bilinçsiz bir " "bağlantı. Bence Emacs'a yol açan ve onu olduğu gibi yapan AI Laboratuvarında " "yaşama şeklimizin doğasıydı." #. type: Content of: <div><p> msgid "" "The original Emacs did not have Lisp in it. The lower level language, the " "non-interpreted language—was PDP-10 Assembler. The interpreter we " "wrote in that actually wasn't written for Emacs, it was written for <abbr " "title=\"Text Editor and COrrector\">TECO</abbr>. It was our text editor, and " "was an extremely ugly programming language, as ugly as could possibly be. " "The reason was that it wasn't designed to be a programming language, it was " "designed to be an editor and command language. There were commands like " "<code>5l</code>, meaning <code>move five lines</code>, or <code>i</code> and " "then a string and then an ESC to insert that string. You would type a string " "that was a series of commands, which was called a command string. You would " "end it with ESC ESC, and it would get executed." msgstr "" "Özgün Emacs'ta Lisp yoktu. Aşağı düzey bir dil, yorumlanmayan bir dil olan " "PDP-10 Assembler vardı. İçinde yazdığımız yorumlayıcı aslında Emacs için " "yazılmamıştı, <abbr title=\"Text Editor and COrrector\">TECO</abbr> için " "yazılmıştı. Bu bizim metin düzenleyicimizdi ve son derece çirkin bir " "programlama diliydi, olabildiğince çirkin. Nedeni ise programlama dili " "olarak değil editör ve komut dili olarak tasarlanmış olmasıydı. <code>5l</" "code>, yani <code>beş satırı taşı</code> veya <code>i</code> gibi komutlar " "ve ardından bir dize ve ardından bu dizeyi eklemek için bir ESC vardı. Komut " "dizisi adı verilen bir dizi komuttan oluşan bir dize yazabiliyordunuz. ESC " "ESC ile sonlandırırdınız ve program yürütülürdü." #. type: Content of: <div><p> msgid "" "Well, people wanted to extend this language with programming facilities, so " "they added some. For instance, one of the first was a looping construct, " "which was <code>< ></code>. You would put those around things and " "it would loop. There were other cryptic commands that could be used to " "conditionally exit the loop. To make Emacs, we <a " "href=\"#foot-1\">[1]</a> added facilities to have subroutines with names. " "Before that, it was sort of like Basic, and the subroutines could only have " "single letters as their names. That was hard to program big programs with, " "so we added code so they could have longer names. Actually, there were some " "rather sophisticated facilities; I think that Lisp got its unwind-protect " "facility from TECO." msgstr "" "İnsanlar bu dili programlama olanaklarıyla genişletmek istediler, bu yüzden " "bazı eklemeler yaptılar. Örneğin, ilk eklenenlerden biri <code>< >" "</code> şeklindeki bir döngü yapısıydı. Bunları bir şeylerin etrafına " "koyardın ve döngü olurdu. Döngüden koşullu olarak çıkmak için " "kullanılabilecek başka örtük komutlar da vardı. Emacs'i yazabilmek için, " "adları olan alt programlara sahip olmak için özellikler ekledik. Bundan " "önce, bir nevi Basic gibiydi ve alt programların adları olarak yalnızca tek " "tek harfler olabilirdi. Bununla büyük programları programlamak zordu, bu " "yüzden daha uzun adlara sahip olabilmeleri için kod ekledik. Aslında oldukça " "gelişmiş bazı araçlar vardı; Lisp'in çözme koruma aracını TECO'dan aldığını " "düşünüyorum." #. type: Content of: <div><p> msgid "" "We started putting in rather sophisticated facilities, all with the ugliest " "syntax you could ever think of, and it worked—people were able to " "write large programs in it anyway. The obvious lesson was that a language " "like TECO, which wasn't designed to be a programming language, was the wrong " "way to go. The language that you build your extensions on shouldn't be " "thought of as a programming language in afterthought; it should be designed " "as a programming language. In fact, we discovered that the best programming " "language for that purpose was Lisp." msgstr "" "Hepsi de aklınıza gelebilecek en çirkin söz dizimine sahip oldukça karmaşık " "özellikler yerleştirmeye başladık ve işe yaradı, insanlar her durumda içinde " "büyük programlar yazabiliyordu. Bariz ders, TECO gibi bir programlama dili " "olarak tasarlanmamış bir dilin yanlış yol olduğuydu. Uzantılarınızı " "oluşturmak için kullandığınız dil, sonradan bir programlama dili olarak " "düşünülmemelidir; bir programlama dili olarak tasarlanmalıdır. Aslında, bu " "amaç için en iyi programlama dilinin Lisp olduğunu keşfettik." #. type: Content of: <div><p> msgid "" "It was Bernie Greenberg, who discovered that it was <a " "href=\"#foot-2\">[2]</a>. He wrote a version of Emacs in Multics MacLisp, " "and he wrote his commands in MacLisp in a straightforward fashion. The " "editor itself was written entirely in Lisp. Multics Emacs proved to be a " "great success—programming new editing commands was so convenient that " "even the secretaries in his office started learning how to use it. They used " "a manual someone had written which showed how to extend Emacs, but didn't " "say it was a programming. So the secretaries, who believed they couldn't do " "programming, weren't scared off. They read the manual, discovered they could " "do useful things and they learned to program." msgstr "" "Bunun  <a href=\"#foot-2\">[2]</a> olduğunu keşfeden Bernie " "Greenberg'di. Emacs'ın bir sürümünü Multics MacLisp'te yazdı ve komutlarını " "MacLisp'te basit bir şekilde yazdı. Editörün kendisi tamamen Lisp ile " "yazılmıştı. Multics Emacs büyük bir başarı olduğunu kanıtladı, yeni " "düzenleme komutlarını programlamak o kadar kolaydı ki ofisindeki sekreterler " "bile onu nasıl kullanacaklarını öğrenmeye başladı. Emacs'in nasıl " "genişletileceğini gösteren birinin yazdığı bir kılavuzu kullandılar, ancak " "bunun programlama olduğunu söylemediler. Böylece programlama " "yapamayacaklarına inanan sekreterler korkmadılar. Kılavuzu okudular, yararlı " "şeyler yapabileceklerini keşfettiler ve programlamayı öğrendiler." #. type: Content of: <div><p> msgid "" "So Bernie saw that an application—a program that does something useful " "for you—which has Lisp inside it and which you could extend by " "rewriting the Lisp programs, is actually a very good way for people to learn " "programming. It gives them a chance to write small programs that are useful " "for them, which in most arenas you can't possibly do. They can get " "encouragement for their own practical use—at the stage where it's the " "hardest—where they don't believe they can program, until they get to " "the point where they are programmers." msgstr "" "Böylece Bernie, içinde Lisp bulunan ve Lisp programlarını yeniden yazarak " "genişletebileceğiniz, sizin için yararlı bir şeyler yapan bir uygulamanın, " "aslında insanların programlamayı öğrenmesi için çok iyi bir yol olduğunu " "gördü. Onlara, çoğu alanda muhtemelen yapamayacağınız, kendileri için " "yararlı olan küçük programlar yazma şansı vermiş oldu. Programcı olacakları " "noktaya gelene kadar program yazabileceklerine inanmadıkları en zor aşamada " "kendi pratik kullanımları için cesaretlendirilebildiler." #. type: Content of: <div><p> msgid "" "At that point, people began to wonder how they could get something like this " "on a platform where they didn't have full service Lisp implementation. " "Multics MacLisp had a compiler as well as an interpreter—it was a full-" "fledged Lisp system—but people wanted to implement something like that " "on other systems where they had not already written a Lisp compiler. Well, " "if you didn't have the Lisp compiler you couldn't write the whole editor in " "Lisp—it would be too slow, especially redisplay, if it had to run " "interpreted Lisp. So we developed a hybrid technique. The idea was to write " "a Lisp interpreter and the lower level parts of the editor together, so that " "parts of the editor were built-in Lisp facilities. Those would be whatever " "parts we felt we had to optimize. This was a technique that we had already " "consciously practiced in the original Emacs, because there were certain " "fairly high level features which we re-implemented in machine language, " "making them into TECO primitives. For instance, there was a TECO primitive " "to fill a paragraph (actually, to do most of the work of filling a " "paragraph, because some of the less time-consuming parts of the job would be " "done at the higher level by a TECO program). You could do the whole job by " "writing a TECO program, but that was too slow, so we optimized it by putting " "part of it in machine language. We used the same idea here (in the hybrid " "technique), that most of the editor would be written in Lisp, but certain " "parts of it that had to run particularly fast would be written at a lower " "level." msgstr "" "Bu noktada insanlar, tam donanımlı Lisp uygulamalarının olmadığı bir " "platformda böyle bir şeyi nasıl elde edebileceklerini merak etmeye " "başladılar. Multics MacLisp'in bir yorumlayıcısının yanı sıra bir " "derleyicisi vardı, bu tam teşekküllü bir Lisp sistemiydi, ancak insanlar " "buna benzer bir şeyi daha önce bir Lisp derleyicisi yazmamış oldukları diğer " "sistemlerde uygulamak istediler. Eh, eğer Lisp derleyiciniz olmasaydı, tüm " "düzenleyiciyi Lisp'e yazamazdınız; yorumlanmış Lisp'i çalıştırması " "gerekseydi, özellikle yeniden görüntüleme çok yavaş olurdu. Bu yüzden melez " "bir teknik geliştirdik. Fikir, bir Lisp yorumlayıcı ile editörün alt düzey " "kısımlarını birlikte yazmaktı, böylece editörün bazı kısımları yerleşik Lisp " "özellikleri olacaktı. Bunlar, optimize etmemiz gerektiğini düşündüğümüz " "parçalar oldu. Bu, özgün Emacs'ta zaten bilinçli olarak uyguladığımız bir " "teknikti, çünkü makine dilinde yeniden uyguladığımız ve onları TECO " "ilkellerine dönüştürdüğümüz oldukça yüksek seviyeli bazı özellikler vardı. " "Örneğin, bir paragrafı doldurmak için bir TECO ilkeli vardı (aslında bir " "paragrafı doldurma işinin çoğunu yapmak için, çünkü işin daha az zaman alan " "bazı kısımları bir TECO programı tarafından daha yüksek düzeyde " "yapılacaktı). Tüm işi bir TECO programı yazarak yapabilirdiniz, ancak bu çok " "yavaştı, bu yüzden bir kısmını makine dilinde yaparak optimize ettik. Burada " "(melez teknikte) aynı fikri kullandık, editörün çoğu Lisp'te yazılacaktı, " "ancak özellikle hızlı çalışması gereken bazı kısımları daha düşük bir " "seviyede yazılacaktı." #. type: Content of: <div><p> msgid "" "Therefore, when I wrote my second implementation of Emacs, I followed the " "same kind of design. The low level language was not machine language " "anymore, it was C. C was a good, efficient language for portable programs to " "run in a Unix-like operating system. There was a Lisp interpreter, but I " "implemented facilities for special purpose editing jobs directly in C—" "manipulating editor buffers, inserting leading text, reading and writing " "files, redisplaying the buffer on the screen, managing editor windows." msgstr "" "Bu nedenle, ikinci Emacs uygulamamı yazdığımda, aynı türden bir tasarımı " "takip ettim. Düşük seviyeli dil artık makine dili değildi, C'ydi. C, UNIX " "benzeri bir işletim sisteminde çalışan taşınabilir programlar için iyi, " "verimli bir dildi. Bir Lisp yorumlayıcı vardı, ancak editör arabelleklerini " "manipüle etme, önde gelen metni ekleme, dosyaları okuma ve yazma, arabelleği " "ekranda yeniden görüntüleme, editör pencerelerini yönetme gibi özel amaçlı " "düzenleme işlerini tesis etmek için doğrudan C kullandım." #. type: Content of: <div><p> msgid "" "Now, this was not the first Emacs that was written in C and ran on Unix. The " "first was written by James Gosling, and was referred to as GosMacs. A " "strange thing happened with him. In the beginning, he seemed to be " "influenced by the same spirit of sharing and cooperation of the original " "Emacs. I first released the original Emacs to people at MIT. Someone wanted " "to port it to run on Twenex—it originally only ran on the Incompatible " "Timesharing System we used at MIT. They ported it to Twenex, which meant " "that there were a few hundred installations around the world that could " "potentially use it. We started distributing it to them, with the rule that " "“you had to send back all of your improvements” so we could all " "benefit. No one ever tried to enforce that, but as far as I know people did " "cooperate." msgstr "" "Şimdi, bu C ile yazılmış ve UNIX üzerinde çalışan ilk Emacs değildi. İlki " "James Gosling tarafından yazılmıştı ve GosMacs olarak anılıyordu. Onunla " "garip bir şey oldu. Başlangıçta, orijinal Emacs'ın aynı paylaşım ve " "işbirliği ruhundan etkilenmiş gibi görünüyordu. Orijinal Emacs'i ilk önce " "MIT'deki insanlara verdim. Birisi onu Twenex'te çalışacak şekilde taşımak " "istedi; başlangıçta yalnızca MIT'de kullandığımız Uyumsuz Zaman Paylaşımı " "Sisteminde çalışıyordu. Onu Twenex'e taşıdılar, bu da dünya çapında onu " "potansiyel olarak kullanabilecek birkaç yüz kurulum olduğu anlamına " "geliyordu. “Tüm iyileştirmelerinizi geri göndermeniz gerekir” kuralıyla " "onlara dağıtmaya başladık, böylece hepimiz yararlanabilecektik. Hiç kimse " "bunu dayatmaya çalışmadı ama bildiğim kadarıyla insanlar işbirliği yaptı." #. type: Content of: <div><p> msgid "" "Gosling did, at first, seem to participate in this spirit. He wrote in a " "manual that he called the program Emacs hoping that others in the community " "would improve it until it was worthy of that name. That's the right approach " "to take towards a community—to ask them to join in and make the " "program better. But after that he seemed to change the spirit, and sold it " "to a company." msgstr "" "Gosling ilk başta bu ruha katılıyor gibi göründü. Bir kılavuza, topluluktaki " "diğer kişilerin programı bu isme layık olana kadar geliştireceğini umarak " "programa Emacs adını verdiğini yazdı. Bir topluluğa yönelik, katılmalarını " "ve programı daha iyi hale getirmelerini istemek, doğru yaklaşımdı. Ama ondan " "sonra ruhunu değiştirmiş gibi göründü ve onu bir şirkete sattı." #. type: Content of: <div><p> msgid "" "At that time I was working on the GNU system (a free software Unix-like " "operating system that many people erroneously call “Linux”). " "There was no free software Emacs editor that ran on Unix. I did, however, " "have a friend who had participated in developing Gosling's Emacs. Gosling " "had given him, by email, permission to distribute his own version. He " "proposed to me that I use that version. Then I discovered that Gosling's " "Emacs did not have a real Lisp. It had a programming language that was known " "as “mocklisp,” which looks syntactically like Lisp, but didn't " "have the data structures of Lisp. So programs were not data, and vital " "elements of Lisp were missing. Its data structures were strings, numbers " "and a few other specialized things." msgstr "" "O zamanlar GNU sistemi (birçok kişinin yanlışlıkla \"Linux\" dediği Özgür " "Yazılım UNIX benzeri bir işletim sistemi) üzerinde çalışıyordum. UNIX " "üzerinde çalışan özgür yazılım bir Emacs editörü yoktu. Bununla birlikte, " "Gosling'in Emacs'lerinin geliştirilmesine katılan bir arkadaşım vardı. " "Gosling ona e-posta yoluyla kendi sürümünü dağıtması için izin vermişti. " "Bana o sürümü kullanmamı önerdi. Sonra Gosling'in Emacs'lerinin gerçek bir " "Lisp'e sahip olmadığını keşfettim. \"mocklisp\" olarak bilinen bir " "programlama dili vardı; söz dizimi olarak Lisp'e benzeyen, ancak Lisp'in " "veri yapılarına sahip olmayan bir dildi. Yani programlar veri değildi ve " "Lisp'in hayati unsurları eksikti. Veri yapıları karakter dizileri, sayılar " "ve diğer birkaç özel şeye sahipti." #. type: Content of: <div><p> msgid "" "I concluded I couldn't use it and had to replace it all, the first step of " "which was to write an actual Lisp interpreter. I gradually adapted every " "part of the editor based on real Lisp data structures, rather than ad hoc " "data structures, making the data structures of the internals of the editor " "exposable and manipulable by the user's Lisp programs." msgstr "" "Onu kullanamayacağım sonucuna vardım ve hepsini değiştirmek zorunda kaldım, " "bunun ilk adımı gerçek bir Lisp yorumlayıcısı yazmaktı. Düzenleyicinin her " "parçasını, ad hoc veri yapıları yerine gerçek Lisp veri yapılarına dayalı " "olarak kademeli olarak uyarladım ve düzenleyicinin içindekilerin veri " "yapılarını, kullanıcının Lisp programları tarafından açıklanabilir ve " "manipüle edilebilir hale getirdim." #. type: Content of: <div><p> msgid "" "The one exception was redisplay. For a long time, redisplay was sort of an " "alternate world. The editor would enter the world of redisplay and things " "would go on with very special data structures that were not safe for garbage " "collection, not safe for interruption, and you couldn't run any Lisp " "programs during that. We've changed that since—it's now possible to " "run Lisp code during redisplay. It's quite a convenient thing." msgstr "" "Tek istisna, yeniden görüntülemeydi. Uzun bir süre, yeniden görüntüleme bir " "çeşit alternatif dünyaydı. Editör yeniden görüntüleme dünyasına girecek ve " "çöp toplama, kesinti için güvenli olmayan çok özel veri yapılarıyla işler " "devam edecek ve bu sırada herhangi bir Lisp programı çalıştıramayacaktınız. " "Yeniden görüntüleme sırasında Lisp kodunu çalıştırmak artık mümkün " "olduğundan, bunu değiştirdik. Oldukça uygun bir şeydi." #. type: Content of: <div><p> msgid "" "This second Emacs program was “free software” in the modern " "sense of the term—it was part of an explicit political campaign to " "make software free. The essence of this campaign was that everybody should " "be free to do the things we did in the old days at MIT, working together on " "software and working with whomever wanted to work with us. That is the " "basis for the free software movement—the experience I had, the life " "that I've lived at the MIT AI lab—to be working on human knowledge, " "and not be standing in the way of anybody's further using and further " "disseminating human knowledge." msgstr "" "Bu ikinci Emacs programı “Özgür Yazılım”dı; terimin modern " "anlamında. Yazılımı özgür kılmak için açık bir siyasi kampanyanın " "parçasıydı. Bu kampanyanın özü, herkesin eski günlerde MIT'de yaptığımız " "şeyleri yapmakta özgür olması, yazılım üzerinde birlikte çalışması ve " "bizimle çalışmak isteyenlerle birlikte çalışmasıydı. Özgür Yazılım " "hareketinin, MIT AI laboratuvarında yaşadığım deneyimin, insan bilgisi " "üzerinde çalıştığım ve kimsenin insani bilgiyi daha fazla kullanmasına ve " "yaymasına engel olmamasının temeli buydu." #. type: Content of: <div><p> msgid "" "At the time, you could make a computer that was about the same price range " "as other computers that weren't meant for Lisp, except that it would run " "Lisp much faster than they would, and with full type checking in every " "operation as well. Ordinary computers typically forced you to choose between " "execution speed and good typechecking. So yes, you could have a Lisp " "compiler and run your programs fast, but when they tried to take <code>car</" "code> of a number, it got nonsensical results and eventually crashed at some " "point." msgstr "" "O zamanlar, Lisp'i onlardan çok daha hızlı çalıştırması ve her işlemde tam " "tip denetimi yapması dışında, Lisp için tasarlanmamış diğer bilgisayarlarla " "hemen hemen aynı fiyat aralığında bir bilgisayar yapabilirdiniz. Sıradan " "bilgisayarlar genellikle sizi çalışma hızı ile iyi tip denetimi arasında " "seçim yapmaya zorlardı. Yani evet, bir Lisp derleyiciniz olabilir ve " "programlarınızı hızlı bir şekilde çalıştırabilirdiniz, ancak bir sayıdan " "<code>car</code> almaya çalıştıklarında saçma sapan sonuçlar alırdı ve " "sonunda bir noktada çökerdi." #. type: Content of: <div><p> msgid "" "The Lisp machine was able to execute instructions about as fast as those " "other machines, but each instruction—a <code>car</code> instruction " "would do data typechecking—so when you tried to get the <code>car</" "code> of a number in a compiled program, it would give you an immediate " "error. We built the machine and had a Lisp operating system for it. It was " "written almost entirely in Lisp, the only exceptions being parts written in " "the microcode. People became interested in manufacturing them, which meant " "they should start a company." msgstr "" "Lisp makinesi, yönergeleri diğer makineler kadar hızlı yürütebiliyordu, " "ancak her bir yönerge, bir <code>car</code> yönergesi, veri tip kontrolü " "yapardı. Bu nedenle, <code>car</code>'ı almaya çalıştığınızda derlenmiş bir " "programdaki bir sayı, size anında bir hata verirdi. Makineyi yaptık ve bunun " "için bir Lisp işletim sistemine sahip olduk. Neredeyse tamamı Lisp'te " "yazılmıştı, tek istisna mikro kodda yazılan kısımlardı. İnsanlar makineleri " "üretmekle ilgilenmeye başladı, bu da bir şirket kurmaları gerektiği anlamına " "geliyordu." #. type: Content of: <div><p> msgid "" "There were two different ideas about what this company should be like. " "Greenblatt wanted to start what he called a “hacker” company. " "This meant it would be a company run by hackers and would operate in a way " "conducive to hackers. Another goal was to maintain the AI Lab culture " "<a class=\"ftn\" href=\"#foot-3\">[3]</a>. Unfortunately, Greenblatt didn't " "have any business experience, so other people in the Lisp machine group said " "they doubted whether he could succeed. They thought that his plan to avoid " "outside investment wouldn't work." msgstr "" "Bu şirketin nasıl olması gerektiğine dair iki farklı fikir vardı. " "Greenblatt, “üstat”<a href=\"#tn1\">[1]</a> şirketi dediği " "şeyi başlatmak istedi. Bu, üstatlar tarafından yönetilen bir şirket olacağı " "ve üstatlara elverişli bir şekilde çalışacağı anlamına geliyordu. Diğer bir " "hedef ise Yapay Zeka Laboratuvarı kültürünü <a class=\"ftn\" " "href=\"#foot-3\">[3]</a> sürdürmekti. Ne yazık ki Greenblatt'ın herhangi bir " "iş deneyimi yoktu, bu nedenle Lisp makine grubundaki diğer kişiler onun " "başarılı olup olmayacağından şüphe duyduklarını söylediler. Dış yatırımdan " "kaçınma planının işe yaramayacağını düşündüler." #. type: Content of: <div><p> msgid "" "Why did he want to avoid outside investment? Because when a company has " "outside investors, they take control and they don't let you have any " "scruples. And eventually, if you have any scruples, they also replace you as " "the manager." msgstr "" "Neden dış yatırımdan kaçınmak istedi? Çünkü bir şirketin dışarıdan " "yatırımcısı olunca denetimi ele alıyorlar ve size bir tereddüt " "yaşatmıyorlardı. Ve sonunda, herhangi bir tereddütünüz varsa, yönetici " "olarak da sizi değiştirirlerdi." #. type: Content of: <div><p> msgid "" "So Greenblatt had the idea that he would find a customer who would pay in " "advance to buy the parts. They would build machines and deliver them; with " "profits from those parts, they would then be able to buy parts for a few " "more machines, sell those and then buy parts for a larger number of " "machines, and so on. The other people in the group thought that this " "couldn't possibly work." msgstr "" "Greenblatt'ın aklına, parçaları satın almak için peşin ödeme yapacak bir " "müşteri bulacağı fikri geldi. Makineler yapıp teslim edeceklerdi; bu " "parçalardan elde ettikleri kârla, daha sonra birkaç makine için daha parça " "satın alabilecekler, bunları satabilecekler ve ardından daha fazla sayıda " "makine için parça satın alabilecekler ve bu böyle devam edecekti. Gruptaki " "diğer insanlar bunun işe yaramayacağını düşündüler." #. type: Content of: <div><p> msgid "" "Greenblatt then recruited Russell Noftsker, the man who had hired me, who " "had subsequently left the AI Lab and created a successful company. Russell " "was believed to have an aptitude for business. He demonstrated this aptitude " "for business by saying to the other people in the group, “Let's ditch " "Greenblatt, forget his ideas, and we'll make another company.” " "Stabbing in the back, clearly a real businessman. Those people decided they " "would form a company called Symbolics. They would get outside investment, " "not have scruples, and do everything possible to win." msgstr "" "Greenblatt daha sonra, beni işe alan, sonrasında Yapay Zeka Laboratuvarından " "ayrılan ve başarılı bir şirket kuran Russell Noftsker'ı işe aldı. Russell'ın " "iş için bir yeteneği olduğuna inanılıyordu. Gruptaki diğer insanlara “" "Greenblatt'ı bir kenara bırakalım, onun fikirlerini unutalım ve başka bir " "şirket kuralım” diyerek bu iş yeteneğini gösterdi. Arkadan " "hançerliyordu, belli ki gerçek bir iş adamıydı. Bu insanlar Symbolics adında " "bir şirket kurmaya karar verdiler. Dışarıdan yatırım alabilir, çekinmeden " "kazanmak için ellerinden gelen her şeyi yaparlardı." #. type: Content of: <div><p> msgid "" "But Greenblatt didn't give up. He and the few people loyal to him decided to " "start Lisp Machines Inc. anyway and go ahead with their plans. And what do " "you know, they succeeded! They got the first customer and were paid in " "advance. They built machines and sold them, and built more machines and more " "machines. They actually succeeded even though they didn't have the help of " "most of the people in the group. Symbolics also got off to a successful " "start, so you had two competing Lisp machine companies. When Symbolics saw " "that LMI was not going to fall flat on its face, they started looking for " "ways to destroy it." msgstr "" "Ancak Greenblatt pes etmedi. O ve ona sadık birkaç kişi yine de Lisp " "Machines Inc.'i kurmaya ve planlarını sürdürmeye karar verdiler. Ve ne " "dersiniz, başardılar! İlk müşteriyi aldılar ve peşin ödeme aldılar. " "Makineler yapıp sattılar ve daha çok makine, daha çok makine yaptılar. " "Gruptaki çoğu insanın yardımına sahip olmasalar da aslında başardılar. " "Symbolics de başarılı bir başlangıç yaptı, dolayısıyla iki rakip Lisp " "makinesi şirketiniz oldu. Symbolics, LMI'nin başarısız olmayacağını görünce, " "onu yok etmenin yollarını aramaya başladı." #. type: Content of: <div><p> msgid "" "Thus, the abandonment of our lab was followed by “war” in our " "lab. The abandonment happened when Symbolics hired away all the hackers, " "except me and the few who worked at LMI part-time. Then they invoked a rule " "and eliminated people who worked part-time for MIT, so they had to leave " "entirely, which left only me. The AI lab was now helpless. And MIT had made " "a very foolish arrangement with these two companies. It was a three-way " "contract where both companies licensed the use of Lisp machine system " "sources. These companies were required to let MIT use their changes. But it " "didn't say in the contract that MIT was entitled to put them into the MIT " "Lisp machine systems that both companies had licensed. Nobody had envisioned " "that the AI lab's hacker group would be wiped out, but it was." msgstr "" "Böylece laboratuvarımızın terk edilmesinin ardından “savaş” " "geldi. Bizim laboratuvarı terk etmemiz, Symbolics, ben ve LMI'da yarı " "zamanlı çalışan birkaç kişi dışındaki tüm üstatları işe aldığında " "gerçekleşti. Sonra bir kural koydular ve MIT'te yarı zamanlı çalışmayı " "ortadan kaldırdılar, bu yüzden öyle çalışan insanlar tamamen ayrılmak " "zorunda kaldılar ve geriye sadece ben kaldım. AI laboratuvarı artık " "çaresizdi. Ve MIT bu iki şirketle çok aptalca bir anlaşma yapmıştı. Her iki " "şirketin de Lisp makine sistem kaynaklarının kullanımına lisans verdiği üç " "yönlü bir sözleşmeydi. Bu şirketlerin, değişikliklerini MIT'in kullanımına " "izin vermesi gerekiyordu. Ancak sözleşmede, MIT'nin bunları her iki şirketin " "de lisansladığı MIT Lisp makine sistemlerine koymaya yetkili olduğu " "yazmıyordu. AI laboratuvarının üstat grubunun ortadan kaldırılacağını kimse " "tahmin etmemişti ama sonuç buydu." #. type: Content of: <div><p> msgid "" "So Symbolics came up with a plan <a href=\"#foot-4\">[4]</a>. They " "said to the lab, “We will continue making our changes to the system " "available for you to use, but you can't put it into the MIT Lisp machine " "system. Instead, we'll give you access to Symbolics' Lisp machine system, " "and you can run it, but that's all you can do.”" msgstr "" "Bunun üzerine Symbolics bir plan yaptı <a href=\"#foot-4\">[4]</a>. " "Laboratuvara “Sistemdeki değişikliklerimizi sizin kullanımınıza " "sunmaya devam edeceğiz, ancak bunu MIT Lisp makine sistemine koyamazsınız. " "Bunun yerine, Symbolics'in Lisp makine sistemine erişmenizi sağlayacağız ve " "onu çalıştırabileceksiniz, ancak yapabileceğiniz tek şey budur” " "dediler." #. type: Content of: <div><p> msgid "" "This, in effect, meant that they demanded that we had to choose a side, and " "use either the MIT version of the system or the Symbolics version. " "Whichever choice we made determined which system our improvements went to. " "If we worked on and improved the Symbolics version, we would be supporting " "Symbolics alone. If we used and improved the MIT version of the system, we " "would be doing work available to both companies, but Symbolics saw that we " "would be supporting LMI because we would be helping them continue to exist. " "So we were not allowed to be neutral anymore." msgstr "" "Bu, aslında, bir taraf seçmemizi ve sistemin MIT sürümünü veya Symbolics " "sürümünü kullanmamızı talep ettikleri anlamına geliyordu. Hangi seçimi " "yaparsak yapalım, iyileştirmelerimizin hangi sisteme gideceğini belirledik. " "Symbolics sürümü üzerinde çalışıp geliştirseydik, yalnızca Symbolics'i " "destekliyor olurduk. Sistemin MIT sürümünü kullanıp geliştirseydik, her iki " "şirket için de mevcut olan işleri yapıyor olurduk, ancak Symbolics LMI'yi " "destekleyeceğimizi çünkü onların varlığını sürdürmelerine yardımcı " "olacağımızı gördü. Bu yüzden artık tarafsız olmamıza izin verilmedi." #. type: Content of: <div><p> msgid "" "Up until that point, I hadn't taken the side of either company, although it " "made me miserable to see what had happened to our community and the " "software. But now, Symbolics had forced the issue. So, in an effort to " "help keep Lisp Machines Inc. going <a href=\"#foot-5\">[5]</a>—I " "began duplicating all of the improvements Symbolics had made to the Lisp " "machine system. I wrote the equivalent improvements again myself (i.e., the " "code was my own)." msgstr "" "Topluluğumuzun ve yazılımın başına gelenleri görmek beni üzse de, o ana " "kadar her iki şirketin de tarafını tutmamıştım. Ama şimdi, Symbolics konuyla " "yüzleşmeye zorlamıştı. Bu nedenle, Lisp Machines Inc.'in devam etmesine " "yardımcı olma çabasıyla <a href=\"#foot-5\">[5]</a>—Symbolics'in " "Lisp makine sisteminde yer alan yaptığı tüm iyileştirmeleri kopyalamaya " "başladım. Eşdeğer geliştirmeleri yine kendim yazdım (yani kod bana aitti)." #. type: Content of: <div><p> msgid "" "After a while <a href=\"#foot-6\">[6]</a>, I came to the conclusion " "that it would be best if I didn't even look at their code. When they made a " "beta announcement that gave the release notes, I would see what the features " "were and then implement them. By the time they had a real release, I did too." msgstr "" "Bir süre sonra <a href=\"#foot-6\">[6]</a>, kodlarına bakmasam daha " "iyi olacağı sonucuna vardım. Sürüm notlarını veren bir beta duyurusu " "yaptıklarında, özelliklerin ne olduğunu görür ve gerçekleştirirdim. Gerçek " "bir yayın yaptıklarında ben de yaptım." #. type: Content of: <div><p> msgid "" "In this way, for two years, I prevented them from wiping out Lisp Machines " "Incorporated, and the two companies went on. But, I didn't want to spend " "years and years punishing someone, just thwarting an evil deed. I figured " "they had been punished pretty thoroughly because they were stuck with " "competition that was not leaving or going to disappear <a " "href=\"#foot-7\">[7]</a>. Meanwhile, it was time to start building a new " "community to replace the one that their actions and others had wiped out." msgstr "" "Bu şekilde iki yıl boyunca Lisp Machines Incorporated'ı yok etmelerini " "engelledim ve iki şirket devam etti. Ama yıllarımı birini cezalandırmak, " "sadece kötü bir eylemi engellemek için harcamak istemedim. Ayrılmayan veya " "yok olmayacak olan bir rekabete saplanıp kaldıkları için iyice " "cezalandırıldıklarını düşündüm <a href=\"#foot-7\">[7]</a>. Bu arada, " "eylemlerinin ve diğerlerinin yok ettiği topluluğun yerini alacak yeni bir " "topluluk oluşturmaya başlamanın zamanı gelmişti." #. type: Content of: <div><p> msgid "" "The Lisp community in the 70s was not limited to the MIT AI Lab, and the " "hackers were not all at MIT. The war that Symbolics started was what wiped " "out MIT, but there were other events going on then. There were people giving " "up on cooperation, and together this wiped out the community and there " "wasn't much left." msgstr "" "70'lerdeki Lisp topluluğu, MIT Yapay Zeka Laboratuvarı ile sınırlı değildi " "ve üstatların tamamı MIT'de değildi. Symbolics'in başlattığı savaş, MIT'i " "yok eden şeydi ama o sırada başka olaylar da oluyordu. İşbirliğinden " "vazgeçen insanlar vardı ve bu birlikte topluluğu yok etti ve geriye pek bir " "şey kalmadı." #. type: Content of: <div><p> msgid "" "Once I stopped punishing Symbolics, I had to figure out what to do next. I " "had to make a free operating system, that was clear—the only way that " "people could work together and share was with a free operating system." msgstr "" "Symbolics'i cezalandırmayı bıraktığımda, bundan sonra ne yapacağımı bulmam " "gerekiyordu. Özgür bir işletim sistemi yazmak zorundaydım, bu açıktı; " "insanların birlikte çalışıp paylaşabilmelerinin tek yolu özgür bir işletim " "sistemiydi." #. type: Content of: <div><p> msgid "" "At first, I thought of making a Lisp-based system, but I realized that " "wouldn't be a good idea technically. To have something like the Lisp machine " "system, you needed special purpose microcode. That's what made it possible " "to run programs as fast as other computers would run their programs and " "still get the benefit of typechecking. Without that, you would be reduced to " "something like the Lisp compilers for other machines. The programs would be " "faster, but unstable. Now that's okay if you're running one program on a " "timesharing system—if one program crashes, that's not a disaster, " "that's something your program occasionally does. But that didn't make it " "good for writing the operating system in, so I rejected the idea of making a " "system like the Lisp machine." msgstr "" "İlk başta Lisp tabanlı bir sistem yapmayı düşündüm ama bunun teknik olarak " "iyi bir fikir olmayacağını anladım. Lisp makine sistemi gibi bir şeye sahip " "olmak için özel amaçlı mikro koda ihtiyacınız vardı. Bu, programları diğer " "bilgisayarların kendi programlarını çalıştıracağı kadar hızlı çalıştırmayı " "ve yine de tip denetiminden yararlanmayı mümkün kılan şeydi. Bu olmadan, " "diğer makineler için Lisp derleyicileri gibi bir şeye indirgenmiş olurdunuz. " "Programlar daha hızlı, ancak kararsız olacaktı. Şimdi, bir zaman paylaşımlı " "sistemde bir program çalıştırıyorsanız, sorun değil; bir program çökerse, bu " "bir felaket değildi, bu programınızın ara sıra yaptığı bir şeydi. Ancak bu, " "işletim sistemini yazmak için iyi bir şey yapmadı, bu yüzden Lisp makinesi " "gibi bir sistem yapma fikrini reddettim." #. type: Content of: <div><p> msgid "" "I decided instead to make a Unix-like operating system that would have Lisp " "implementations to run as user programs. The kernel wouldn't be written in " "Lisp, but we'd have Lisp. So the development of that operating system, the " "GNU operating system, is what led me to write the GNU Emacs. In doing this, " "I aimed to make the absolute minimal possible Lisp implementation. The size " "of the programs was a tremendous concern." msgstr "" "Bunun yerine, kullanıcı programları olarak çalışacak Lisp uygulamalarına " "sahip UNIX benzeri bir işletim sistemi yazmaya karar verdim. Çekirdek " "Lisp'te yazılamazdı ama bizde Lisp vardı. Bu işletim sisteminin, GNU işletim " "sisteminin, geliştirilmesi beni GNU Emacs'i yazmaya iten şeydi. Bunu " "yaparken, mümkün olan en az sayıda Lisp uygulaması yapmayı amaçladım. " "Programların boyutu muazzam bir endişe kaynağıydı." #. type: Content of: <div><p> msgid "" "There were people in those days, in 1985, who had one-megabyte machines " "without virtual memory. They wanted to be able to use GNU Emacs. This meant " "I had to keep the program as small as possible." msgstr "" "O günlerde, 1985'te sanal belleği olmayan bir megabaytlık makineleri olan " "insanlar vardı. GNU Emacs'ı kullanabilmek istediler. Bu, programı " "olabildiğince küçük tutmam gerektiği anlamına geliyordu." #. type: Content of: <div><p> msgid "" "For instance, at the time the only looping construct was <code>while</code>, " "which was extremely simple. There was no way to break out of the " "<code>while</code> statement, you just had to do a catch and a throw, or " "test a variable that ran the loop. That shows how far I was pushing to keep " "things small. We didn't have <code>caar</code> and <code>cadr</code> and so " "on; “squeeze out everything possible” was the spirit of GNU " "Emacs, the spirit of Emacs Lisp, from the beginning." msgstr "" "Örneğin, o zamanlar tek döngü yapısı son derece basit olan <code>while</" "code> idi. <code>while</code> deyiminden çıkmanın bir yolu yoktu, tek " "yapmanız gereken bir yakalama ve fırlatma işlemi yapmak veya döngüyü " "çalıştıran bir değişkeni test etmekti. Bu, işleri küçük tutmak için ne kadar " "ileri gittiğimi gösteriyor. <code>caar</code> ve <code>cadr</code> vb. " "yoktu; başından beri Emacs Lisp'in ruhu olan “mümkün olan her şeyi " "sıkıştırın” GNU Emacs'ın de ruhuydu." #. type: Content of: <div><p> msgid "" "Obviously, machines are bigger now, and we don't do it that way any more. We " "put in <code>caar</code> and <code>cadr</code> and so on, and we might put " "in another looping construct one of these days. We're willing to extend it " "some now, but we don't want to extend it to the level of common Lisp. I " "implemented Common Lisp once on the Lisp machine, and I'm not all that happy " "with it. One thing I don't like terribly much is keyword arguments <a " "href=\"#foot-8\">[8]</a>. They don't seem quite Lispy to me; I'll do it " "sometimes but I minimize the times when I do that." msgstr "" "Açıkçası, makineler artık daha büyük ve artık bu şekilde yapmıyoruz. " "<code>caar</code> ve <code>cadr</code> vb. koyduk ve bu günlerde başka bir " "döngü yapısı koyabiliriz. Şimdi biraz genişletmek istiyoruz, ancak yaygın " "Lisp düzeyine genişletmek istemiyoruz. Common Lisp'i bir kez Lisp " "makinesinde uyguladım ve bundan o kadar da memnun değildim. Çok fazla " "sevmediğim bir şey de anahtar kelime bağımsız değişkenleri <a " "href=\"#foot-8\">[8]</a>. Bana pek Lisp gibi görünmüyorlardı; Bazen " "yapıyorum ama bunu yaptığım zamanları en aza indiriyorum." #. type: Content of: <div><p> msgid "" "That was not the end of the GNU projects involved with Lisp. Later on around " "1995, we were looking into starting a graphical desktop project. It was " "clear that for the programs on the desktop, we wanted a programming language " "to write a lot of it in to make it easily extensible, like the editor. The " "question was what it should be." msgstr "" "Lisp ile ilgili GNU projelerinin sonu bu değildi. Daha sonra 1995 civarında, " "bir grafik masaüstü projesi başlatmayı düşünüyorduk. Masaüstündeki " "programlar için, düzenleyici gibi kolayca genişletilebilir hale getirmek " "için birçoğunu yazacak bir programlama dili istediğimiz açıktı. Soru, ne " "olması gerektiğiydi." #. type: Content of: <div><p> msgid "" "At the time, <abbr title=\"Tool Command Language\">TCL</abbr> was being " "pushed heavily for this purpose. I had a very low opinion of TCL, basically " "because it wasn't Lisp. It looks a tiny bit like Lisp, but semantically it " "isn't, and it's not as clean. Then someone showed me an ad where Sun was " "trying to hire somebody to work on TCL to make it the “de-facto " "standard extension language” of the world. And I thought, “We've " "got to stop that from happening.” So we started to make Scheme the " "standard extensibility language for GNU. Not Common Lisp, because it was too " "large. The idea was that we would have a Scheme interpreter designed to be " "linked into applications in the same way TCL was linked into applications. " "We would then recommend that as the preferred extensibility package for all " "GNU programs." msgstr "" "O zamanlar <abbr title=\"Tool Command Language\">TCL</abbr> bu amaç için " "yoğun bir şekilde iteleniyordu. Temelde Lisp olmadığı için TCL hakkında çok " "az bir fikrim vardı. Biraz Lisp'e benziyor, ama anlamsal olarak öyle değildi " "ve o kadar temiz değildi. Sonra birisi bana, Sun'ın TCL'yi dünyanın “" "fiilen standart genişletme dili” yapmak için birini işe almaya " "çalıştığı ilanı gösterdi. Ben de “Bunun olmasını engellemeliyiz” " "diye düşündüm. Böylece Scheme'i GNU için standart genişletilebilirlik dili " "yapmaya başladık. Common Lisp değil çünkü çok büyüktü. Buradaki fikir, " "TCL'nin uygulamalara bağlanmasıyla aynı şekilde uygulamalara bağlanmak üzere " "tasarlanmış bir Scheme yorumlayıcımız olmasıydı. O zaman bunu tüm GNU " "programları için tercih edilen genişletilebilirlik paketi olarak öneriyor " "olduk." #. type: Content of: <div><p> msgid "" "There's an interesting benefit you can get from using such a powerful " "language as a version of Lisp as your primary extensibility language. You " "can implement other languages by translating them into your primary " "language. If your primary language is TCL, you can't very easily implement " "Lisp by translating it into TCL. But if your primary language is Lisp, it's " "not that hard to implement other things by translating them. Our idea was " "that if each extensible application supported Scheme, you could write an " "implementation of TCL or Python or Perl in Scheme that translates that " "program into Scheme. Then you could load that into any application and " "customize it in your favorite language and it would work with other " "customizations as well." msgstr "" "Birincil genişletilebilirlik diliniz olarak Lisp'in bir sürümü gibi güçlü " "bir dili kullanmaktan elde edebileceğiniz ilginç bir yarar var. Diğer " "dilleri ana dilinize çevirerek uygulayabilirsiniz. Birincil diliniz TCL ise, " "Lisp'i TCL'ye çevirerek kolayca uygulayamazsınız. Ama ana diliniz Lisp ise " "diğer şeyleri çevirerek uygulamak o kadar da zor değil. Bizim fikrimiz, her " "genişletilebilir uygulama Scheme'i destekliyorsa, Scheme'de bu programı " "Scheme'e çeviren bir TCL veya Python veya Perl uygulaması yazabilmenizdi. " "Ardından, bunu herhangi bir uygulamaya yükleyebilir ve en sevdiğiniz dilde " "özelleştirebilir ve diğer özelleştirmelerle de çalışırdı." #. type: Content of: <div><p> msgid "" "As long as the extensibility languages are weak, the users have to use only " "the language you provided them. Which means that people who love any given " "language have to compete for the choice of the developers of " "applications—saying “Please, application developer, put my " "language into your application, not his language.” Then the users get " "no choices at all—whichever application they're using comes with one " "language and they're stuck with [that language]. But when you have a " "powerful language that can implement others by translating into it, then you " "give the user a choice of language and we don't have to have a language war " "anymore. That's what we're hoping Guile, our scheme interpreter, will do. We " "had a person working last summer finishing up a translator from Python to " "Scheme. I don't know if it's entirely finished yet, but for anyone " "interested in this project, please get in touch. So that's the plan we have " "for the future." msgstr "" "Genişletilebilirlik dilleri zayıf olduğu sürece, kullanıcılar yalnızca sizin " "sağladığınız dili kullanmak zorundadır. Bu, herhangi bir dili seven " "insanların, “Lütfen, uygulama geliştirici, uygulamanıza benim dilimi " "koyun, onun dilini değil” diyerek, uygulama geliştiricilerinin seçimi " "için rekabet etmesi gerektiği anlamına gelir. O zaman kullanıcılara hiçbir " "seçenek sunulmaz; hangi uygulamayı kullanıyor olurlarsa olsunlar, tek bir " "dille gelirler ve [o dilde] takılıp kalırlar. Ancak diğer dilleri ona " "çevirerek uygulayabilen güçlü bir dile sahip olduğunuzda, kullanıcıya bir " "dil seçeneği sunarsınız ve artık bir dil savaşına girmek zorunda kalmayız. " "Scheme yorumlayıcımız olan Guile'nin bunu yapacağını umuyoruz. Geçen yaz " "Python'dan Scheme'e bir çevirmeni bitirmek için çalışan bir kişimiz vardı. " "Henüz tamamen bitti mi bilmiyorum ama bu projeyle ilgilenenler lütfen " "iletişime geçsin. Yani geleceğe ilişkin planımız budur." #. type: Content of: <div><p> msgid "" "I haven't been speaking about free software, but let me briefly tell you a " "little bit about what that means. Free software does not refer to price; it " "doesn't mean that you get it for free. (You may have paid for a copy, or " "gotten a copy gratis.) It means that you have freedom as a user. The crucial " "thing is that you are free to run the program, free to study what it does, " "free to change it to suit your needs, free to redistribute the copies of " "others and free to publish improved, extended versions. This is what free " "software means. If you are using a nonfree program, you have lost crucial " "freedom, so don't ever do that." msgstr "" "Özgür yazılım hakkında konuşmuyorum ama ne anlama geldiğinden kısaca söz " "edeyim. Özgür yazılım ücret hakkında değildir; ücretsiz aldığınız anlamına " "gelmez. (Bir kopya için ödeme yapmış veya bedelsiz bir kopya almış " "olabilirsiniz.) Özgür yazılım, kullanıcı olarak özgür olduğunuz anlamına " "gelir. Önemli olan, programı çalıştırmakta, ne işe yaradığını incelemekte, " "ihtiyaçlarınıza göre değiştirmekte, başkalarının kopyalarını yeniden " "dağıtmakta ve geliştirilmiş, genişletilmiş sürümleri yayınlamakta özgür " "olmanızdır. Özgür yazılımın anlamı budur. Özgür olmayan bir program " "kullanıyorsanız, çok önemli olan özgürlüğünüzü kaybettiğiniz anlamına gelir, " "o yüzden bunu asla yapmayın." #. type: Content of: <div><p> msgid "" "The purpose of the GNU project is to make it easier for people to reject " "freedom-trampling, user-dominating, nonfree software by providing free " "software to replace it. For those who don't have the moral courage to reject " "the nonfree software, when that means some practical inconvenience, what we " "try to do is give a free alternative so that you can move to freedom with " "less of a mess and less of a sacrifice in practical terms. The less " "sacrifice the better. We want to make it easier for you to live in freedom, " "to cooperate." msgstr "" "GNU projesinin amacı, insanların, özgürlüğü ayaklar altına alan, kullanıcıya " "hükmeden, özgür olmayan yazılımları; onların yerini alacak Özgür Yazılımlar " "sağlayarak reddetmelerini kolaylaştırmaktır. Özgür olmayan yazılımı " "reddedecek ahlaki cesarete sahip olmayanlar için, bu bazı pratik " "rahatsızlıklar anlamına geldiğinde, yapmaya çalıştığımız şey özgür bir " "alternatif sunmaktır, böylece pratik anlamda daha az karmaşa ve daha az " "fedakarlık ile özgürlüğe ilerleyebilirsiniz. Ne kadar az fedakarlık o kadar " "iyi. Özgürce yaşamanızı, işbirliği yapmanızı kolaylaştırmak istiyoruz." #. type: Content of: <div><p> msgid "" "This is a matter of the freedom to cooperate. We're used to thinking of " "freedom and cooperation with society as if they are opposites. But here " "they're on the same side. With free software you are free to cooperate with " "other people as well as free to help yourself. With nonfree software, " "somebody is dominating you and keeping people divided. You're not allowed to " "share with them, you're not free to cooperate or help society, anymore than " "you're free to help yourself. Divided and helpless is the state of users " "using nonfree software." msgstr "" "Bu, işbirliği yapma özgürlüğü meselesidir. Özgürlük ve toplumla işbirliğini " "sanki zıt şeylermiş gibi düşünmeye alışkınız. Ama burada aynı taraftalar. " "Özgür yazılımla, diğer insanlarla işbirliği yapmakta ve kendinize yardımcı " "olmakta özgürsünüz. Özgür olmayan yazılımla, birisi size hükmediyor ve " "insanları bölünmüş durumda tutuyor. Onlarla paylaşmanıza izin verilmiyor, " "işbirliği yapmakta veya topluma yardım etmekte özgür değilsiniz, kendinize " "yardımcı olmakta özgür olduğunuz kadar değil. Bölünmüşlük ve çaresizlik, " "özgür olmayan yazılım kullanan kullanıcıların durumudur." #. type: Content of: <div><p> msgid "" "We've produced a tremendous range of free software. We've done what people " "said we could never do; we have two operating systems of free software. We " "have many applications and we obviously have a lot farther to go. So we need " "your help. I would like to ask you to volunteer for the GNU project; help us " "develop free software for more jobs. Take a look at <a href=\"/help/help." "html\">gnu.org/help</a> to find suggestions for how to help. If you want to " "order things, there's a link to that from the home page. If you want to read " "about philosophical issues, look in /philosophy. If you're looking for free " "software to use, look in /directory, which lists about 1900 packages now " "(which is a fraction of all the free software out there). Please write more " "and contribute to us. My book of essays, “Free Software and Free " "Society,” is on sale and can be purchased at www.gnu.org <a " "href=\"#foot-9\">[9]</a>. Happy hacking!" msgstr "" "Muazzam bir Özgür Yazılım yelpazesi ürettik. İnsanların asla " "yapamayacağımızı söylediği şeyi yaptık; iki özgür yazılım işletim sistemimiz " "var. Birçok uygulamamız var ve açıkçası daha gidecek çok yolumuz var. Bu " "yüzden yardımına ihtiyacımız var. Sizden GNU projesi için gönüllü olmanızı " "rica ediyorum; daha fazla iş için özgür yazılım geliştirmemize yardımcı " "olun. Nasıl yardım edebileceğinize ilişkin öneriler bulmak için <a href=\"/" "help/help.html\">gnu.org/help</a> adresine bakın. Bir şeyler sipariş etmek " "isterseniz, ana sayfadan buna bir bağlantı var. Felsefi konular hakkında " "okumak istiyorsanız, /felsefe bölümüne bakın. Kullanılacak Özgür Yazılım " "arıyorsanız, şu anda yaklaşık 1900 paketin listelendiği /directory dizinine " "bakın (bu mevcut tüm Özgür Yazıılımların yalnızca bir kısmıdır). Lütfen daha " "fazla yazın ve bize katkıda bulunun. Deneme kitabım, “Özgür Yazılım " "Özgür Toplum” satıştadır ve www.gnu.org <a href=\"#foot-9\">[9]</" "a> adresinden satın alınabilir. Happy Hacking !" #. type: Content of: <div><h3> msgid "Footnotes" msgstr "Dipnotlar" #. type: Content of: <div><ol><li> msgid "" "Guy Steele designed the original symmetrical Emacs command set; then he and " "I began implementing Emacs (on top of TECO), but after one long joint " "development session, Steele began drifting away, so I finished Emacs. " "Others particularly including Eugene C. Cicciarelli and Mike McMahon " "contributed substantially later on." msgstr "" "Guy Steele orijinal simetrik Emacs komut setini tasarladı; sonra o ve ben " "Emacs'ı (TECO'nun üstüne) uygulamaya başladık, ancak uzun bir ortak " "geliştirme seansından sonra Steele uzaklaşmaya başladı, bu yüzden Emacs'ı " "bitirdim. Özellikle Eugene C. Cicciarelli ve Mike McMahon dahil olmak üzere " "diğerleri daha sonra önemli ölçüde katkıda bulundu." #. type: Content of: <div><ol><li> msgid "" "Bernie Greenberg says that Dan Weinreb's implementation of Emacs for the " "Lisp Machine came before Greenberg's implementation for Multics. I " "apologize for the mistake." msgstr "" "Bernie Greenberg, Dan Weinreb'in Lisp Machine için Emacs uygulamasının " "Greenberg'in Multics uygulamasından önce geldiğini söylüyor. Hata için özür " "dilerim." #. type: Content of: <div><ol><li> msgid "" "Greenblatt's plan, as I understood it, was to hire lab people part time, so " "that they could continue working at the AI Lab. Symbolics hired them full " "time instead, so they stopped working at MIT." msgstr "" "Greenblatt'ın planı, anladığım kadarıyla, yapay zeka laboratuvarında " "çalışmaya devam edebilmeleri için laboratuvar çalışanlarını yarı zamanlı " "olarak işe almaktı. Bunun yerine Symbolics onları tam zamanlı olarak işe " "aldı, bu yüzden MIT'de çalışmayı bıraktılar." #. type: Content of: <div><ol><li> msgid "" "The background of this plan, which I did not state explicitly in the talk, " "is that during an initial period the ex-AI-Lab hackers, whether at Symbolics " "or LMI, continued contributing their changes to the MIT Lisp Machine " "system—even though the contract did not require this. Symbolics' plan " "was to rupture this cooperation unilaterally." msgstr "" "Konuşmada açıkça belirtmediğim bu planın arka planında, bir başlangıç " "döneminde, Symbolics veya LMI'daki eski AI-Lab üstatlarının, MIT Lisp " "Machine sistemindeki— değişikliklerine katkıda bulunmaya devam " "etmeleridir; sözleşme bunu gerektirmedi. Symbolics'in planı, bu işbirliğini " "tek taraflı olarak bozmaktı." #. type: Content of: <div><ol><li> msgid "" "It was not that I cared particularly about the fate of LMI, but rather I did " "not want to let Symbolics gain through its aggression against the AI Lab." msgstr "" "LMI'nin kaderini özellikle umursadığımdan değil, aksine Symbolics'in AI " "Lab'a karşı saldırganlığından kazanç elde etmesine izin vermek istemedim." #. type: Content of: <div><ol><li> msgid "" "This statement has been misconstrued as saying that I never, ever looked at " "Symbolics' code. Actually it says I did look, at first. The Symbolics " "source code was available at MIT, where I was entitled to read it, and at " "first that's how I found out about their changes." msgstr "" "Bu ifade, Symbolics'in koduna asla ama asla bakmadığım şeklinde yanlış " "yorumlanmıştır. Aslında ilk başta baktığımı söyleniyordu. Symbolics kaynak " "kodu MIT'de mevcuttu ve burada onu okumaya hak kazandım ve değişikliklerini " "ilk başta bu şekilde öğrendim." #. type: Content of: <div><ol><li><p> msgid "" "But that meant I had to make a special effort to solve each problem " "differently, in order to avoid copying Symbolics code. After a while, I " "concluded it was better not to even look. That way I could write code in " "whatever way was best, without concern for what might be in Symbolics' code." msgstr "" "Ancak bu, Symbolics kodunu kopyalamaktan kaçınmak için her sorunu farklı " "şekilde çözmek için özel bir çaba göstermem gerektiği anlamına geliyordu. " "Bir süre sonra bakmamanın daha iyi olacağına karar verdim. Bu şekilde, " "Symbolics'in kodunda ne olabileceğiyle ilgilenmeden en iyi şekilde kod " "yazabilirdim." #. type: Content of: <div><ol><li> msgid "" "Symbolics at one point protested to MIT that my work, by thwarting their " "plan, had cost Symbolics a million dollars." msgstr "" "Symbolics bir noktada MIT'ye benim çalışmamın planlarını bozarak Symbolics'e " "bir milyon dolara mal olduğunu söyleyerek itiraz etti." #. type: Content of: <div><ol><li> msgid "" "I don't mind if a very complex and heavyweight function takes keyword " "arguments. What bothers me is making simple basic functions such as “" "member” use them." msgstr "" "Çok karmaşık ve ağır bir işlevin anahtar kelime bağımsız değişkenleri alması " "umurumda değil. Beni rahatsız eden, “üye” gibi basit temel " "işlevlerin onları kullanmasıydı." #. type: Content of: <div><ol><li> msgid "" "In 2021, this book can be purchased from <a href=\"https://shop.fsf.org/" "books-docs/free-software-free-society-selected-essays-richard-m-stallman-3rd-" "edition\"> GNU Press</a>." msgstr "" "2021'de bu kitap <a href=\"https://shop.fsf.org/books-docs/free-software-" "free-society-selected-essays-richard-m-stallman-3rd-edition\">GNU Press</a> " "adresinden alınabilir." #. TRANSLATORS: Use space (SPC) as msgstr if you don't have notes. #. type: Content of: <div> msgid "*GNUN-SLOT: TRANSLATOR'S NOTES*" msgstr "" "<a id=\"tn1\">[1]</a> Burada kullanılan hacker, üstat anlamındadır: teknik " "beceri sahibi, problem çözmeden zevk alan ve sınırları aşan kişiler, belirli " "bir konuda sahip olduğu bilgiyi kullanıp daha fazlasını öğrenmeye meraklı " "kişiler." #. type: Content of: <div><div><p> msgid "" "Please send general FSF & GNU inquiries to <a href=\"mailto:gnu@gnu." "org\"><gnu@gnu.org></a>. There are also <a href=\"/contact/\">other " "ways to contact</a> the FSF. Broken links and other corrections or " "suggestions can be sent to <a href=\"mailto:webmasters@gnu.org\"><" "webmasters@gnu.org></a>." msgstr "" "Lütfen FSF ve GNU ile ilgili sorularınızı <a href=\"mailto:gnu@gnu.org\"><" "gnu@gnu.org></a> adresine iletin. FSF ile iletişim kurmanın <a href=\"/" "contact/\">başka yolları</a> da vardır. Lütfen çalışmayan bağlantıları ve " "başka düzeltmeleri veya önerilerinizi <a href=\"mailto:webmasters@gnu." "org\"><webmasters@gnu.org></a> adresine gönderin." #. TRANSLATORS: Ignore the original text in this paragraph, #. replace it with the translation of these two: #. We work hard and do our best to provide accurate, good quality #. translations. However, we are not exempt from imperfection. #. Please send your comments and general suggestions in this regard #. to <a href="mailto:web-translators@gnu.org"> #. <web-translators@gnu.org></a>.</p> #. <p>For information on coordinating and contributing translations of #. our web pages, see <a #. href="/server/standards/README.translations.html">Translations #. README</a>. #. type: Content of: <div><div><p> msgid "" "Please see the <a href=\"/server/standards/README.translations." "html\">Translations README</a> for information on coordinating and " "contributing translations of this article." msgstr "" "Çevirilerimizde bulmuş olabileceğiniz hataları, aklınızdaki soru ve " "önerilerinizi lütfen <a href=\"mailto:web-translators@gnu.org\">bize " "bildirin</a>.</p><p>Bu yazının çeviri düzenlemesi ve sunuşu ile ilgili bilgi " "için lütfen <a href=\"/server/standards/README.translations.html\">Çeviriler " "BENİOKU</a> sayfasına bakın. Bu sayfanın ve diğer tüm sayfaların Türkçe " "çevirileri gönüllüler tarafından yapılmaktadır; Türkçe niteliği yüksek bir " "<a href=\"/home.html\">www.gnu.org</a> için bize yardımcı olmak " "istiyorsanız, <a href=\"https://savannah.gnu.org/projects/www-" "tr\">çalışma sayfamızı</a> ziyaret edebilirsiniz." #. type: Content of: <div><p> msgid "Copyright © 2003, 2007, 2013, 2021 Free Software Foundation, Inc." msgstr "Copyright © 2003, 2007, 2013, 2021 Free Software Foundation, Inc." #. type: Content of: <div><p> msgid "" "This page is licensed under a <a rel=\"license\" href=\"http://" "creativecommons.org/licenses/by-nd/4.0/\">Creative Commons Attribution-" "NoDerivatives 4.0 International License</a>." msgstr "" "Bu sayfa <a rel=\"license\" href=\"http://creativecommons.org/licenses/by-" "nd/4.0/deed.tr\">Creative Commons Alıntı-Türetilemez 4.0 Uluslararası " "Lisansı</a> altında lisanslanmıştır." #. TRANSLATORS: Use space (SPC) as msgstr if you don't want credits. #. type: Content of: <div><div> msgid "*GNUN-SLOT: TRANSLATOR'S CREDITS*" msgstr "" "<p><strong>Çeviriye katkıda bulunanlar:</strong></p>\n" "<ul>\n" "<li>Mert Gör <a href=\"mailto:mertgor@dismail.de\"><mertgor@dismail.de>" "</a>, 2023.</li>\n" "</ul>" #. timestamp start #. type: Content of: <div><p> msgid "Updated:" msgstr "Son Güncelleme:"