2010-03-13 8 views
19

मैं Forth सीखना शुरू करना चाहता हूं (जैसे संबंधित स्टैक ओवरफ़्लो प्रश्न Is it practical to learn and use Forth?)। मैं देखता हूं कि many implementations हैं। मैं एकसीखने के लिए उपयोग करने के लिए फर्थ का क्या कार्यान्वयन?

  • ANS 1994 संगत संस्करण का उपयोग करना चाहते हैं (यदि उचित है, लेकिन मानक के लिए चिपके हुए अच्छा हो सकता है)
  • छोटे और कॉम्पैक्ट कार्यान्वयन, मैं एक पूर्ण ओएस नहीं चाहते।
  • विंडोज
  • का उपयोग करने के लिए आसान है, मैं नया हूँ आगे ;-)

क्या विशेष कार्यान्वयन सिफारिश की जा सकती है?

+0

कुछ विश्वविद्यालय के पाठ्यक्रमों gforth (का उपयोग http://www.complang.tuwien.ac.at/forth/gforth /) जो भी शुरू करने के लिए अच्छा है। –

+0

प्रश्न "* क्या सीखना और फर्थ का उपयोग करना व्यावहारिक है? *" दुख से हटा दिया गया है। यदि ओपी या 10k प्रतिष्ठा वाला कोई भी व्यक्ति (हटाए गए पदों को देखने के लिए आवश्यक है) इस पोस्ट तक पहुंच सकता है और उसे कहीं भी कैश/कैश कर सकता है, तो यह बहुत अच्छा होगा - ऐसा लगता है कि यह एक दिलचस्प सवाल होता (हालांकि मैं इसके ऑफटॉपिकनेस/अनूठाता को स्वीकार करता हूं इसलिए)। –

उत्तर

11

Win32Forth वास्तव में ऊपर वर्णित है, जैसा कि वास्तव में शानदार है।इसमें एक अच्छा एकीकृत विकास वातावरण है और यह एक आधुनिक आधुनिक कार्यान्वयन है जो मानकों के साथ-साथ कुछ और प्रयोगात्मक लेकिन व्यापक रूप से स्वीकृत सुविधाओं सहित बहुत अच्छी तरह मेल खाता है।

मैं Gforth का उपयोग करता हूं, लेकिन मैं स्रोत फ़ाइलों को संपादित करने के लिए Vim का भी उपयोग करता हूं। :) Gforth अच्छा है और "क्लासिक" जहां तक ​​यह समर्थन करता है। यह आपको उपयोग करने के लिए अत्यधिक क्विर्की के बिना एक बहुत पुराना "पुराना स्कूल" फर्थ अनुभव देता है। (कुछ मुफ्त फॉर्ड्स अपनी कमांड लाइनों के साथ अजीब चीजें करते हैं और इस तरह - मैं ब्रॉडी के "शुरुआती फर्थ" का उपयोग मॉडल के रूप में कैसे करता हूं, इसका मॉडल मॉडल के रूप में कैसे करना चाहिए।)

मैंने SwiftForth पर देखा, जो एक बहुत अच्छा "उच्च तकनीक है "फर्थ सिस्टम जो भाषा सुविधाओं के संदर्भ में क्लासिक फर्थ ऑफर करता है और वास्तव में आधुनिक प्रोग्रामिंग दुनिया में फर्थ लाता है। यदि आप वास्तव में पेशेवर कार्यक्रमों को पेशेवर रूप से करना चाहते हैं, तो स्विफ्टफर्थ ऐसा लगता है कि यह उस चीज़ के बारे में कुछ भी संभाल सकता है जिसे आप इसके साथ करना चाहते हैं।

+0

हां, सबसे अच्छा शुरू करने के लिए सबसे अच्छा। (प्रकार) आईडीई में सिंटैक्स रंग होता है और विनफर्थ लगभग सभी मेरे कोड को gforth (कुछ कोर्स में) के साथ विकसित किया जाता है। सहायता और शब्द सूचकांक थोड़ा कच्चा है, लेकिन फिर भी उपयोगी है। –

7

कुछ समय पहले मैंने 4tH का मूल्यांकन किया, Forth का कार्यान्वयन। मुझे लगता है कि यह आपकी आवश्यकताओं के सभी से मिलता है। उदाहरण के लिए कंपाइलर केवल 61 केबी है। फ़्लोटिंग पॉइंट नंबरों के लिए भी पूर्ण समर्थन है, यदि आप तकनीकी/वैज्ञानिक उद्देश्यों के लिए इसका उपयोग करने का प्रयास करना चाहते हैं तो महत्वपूर्ण है।

4 MS-DOS, एमएस-विंडोज (दोनों 16 बिट और 32 बिट), लिनक्स, Coherent, AIX, SunOS, BOS, बीएसडी, मैक ओएस एक्स, BeOS, RISC OS, आदि सहित सबसे ऑपरेटिंग सिस्टम, पर चलता है Download (विंडोज इंस्टालर, 1.5 एमबी, मैनुअल शामिल है)। Manual (पीडीएफ, 1.1 एमबी)।

Google समूह 4tH-compiler के आस-पास एक सक्रिय समुदाय केंद्रित है। उदाहरण के लिए आज मुझे दो संदेश प्राप्त हुए।

कृपया ध्यान दें कि 4tH में आप अपने परिभाषित शब्दों को परिभाषित नहीं कर सकते (संकलन समय पर निष्पादित शब्द)। यह एक गंभीर सीमा नहीं है, जब तक कि आप उन्नत फर्थ सुविधाओं को कवर नहीं करना चाहते हैं।


आप आरंभ करने के लिए, स्थापना एक खाली फ़ोल्डर में संकलक, 4th.exe, नकल के बाद, इस निर्देशिका में दो फ़ाइलों बनाने HelloWorld.bat और HelloWorld.4th (जैसा कि इस मैनुअल या इंटरैक्टिव संकलन से स्पष्ट नहीं है) , और चलाने के HelloWorld.bat:

HelloWorld.bat:

4th.exe cx HelloWorld.4th 
    pause 

HelloWorld.4th:

: hello ." Hello from XYZ!" cr cr ; 
    hello 
+0

मुझे एक नज़र थी। चौथा निश्चित रूप से अच्छा लगता है। मुझे इसे एक मौका और देना होगा। –

+0

मैंने कोशिश की। हालांकि यह एएनएस अनुपालन प्रतीत होता है, मैं इसे WinForth या gforth के रूप में आसानी से नहीं चला सका। दस्तावेज स्पष्ट नहीं है कि यह वास्तविक फर्थ है या पोस्टफिक्स कैलक्यूलेटर से विकसित फर्थ के समान कुछ है। –

1

Win32Forth मेरे लिए अच्छा काम किया।

+0

4 वें से बड़ा समुदाय लगता है। धन्यवाद, मैं इसे भी देख लूंगा। –

2

SwiftForth। यह आत्म-जानबूझकर छोटा और कॉम्पैक्ट नहीं है; यह बस होता है। इसका उपयोग करना आसान है (लॉन्च डब्ल्यूएच संपादित करें, सामान्य शब्दों की तुलना में एक अच्छा), दो पुस्तकों के साथ आता है, और एक दशक से अधिक अभिलेखागार के साथ एक उत्कृष्ट मेलिंग सूची है। मूल्यांकन संस्करण आपको टर्नकी ऐप्स या डीएलएल संकलित नहीं करने देगा; यह अभी भी एक छात्र के लिए एक उत्कृष्ट कंसोल प्रदान करता है, और सामान्य तरीकों से स्क्रिप्ट का समर्थन कर सकता है। त्वरित विंडोज उदाहरण:

: sleep-monitor (--) 
    HWND_BROADCAST WM_SYSCOMMAND SC_MONITORPOWER 2 SendMessage drop ; 


library dnsapi.dll 
(... DLL imports, constants ...) 
variable results 
: DnsQuery (z -- res) 
    DNS_TYPE_A 0 NULL results NULL DnsQuery_UTF8 ; 

: resolves? (z -- f) 
    DnsQuery if false exit then 
    results @ DnsRecordListFree true ; 


\ an example use of the dialog compiler 
\ this compiled DSL is an example of something that 4th 
\ precludes with its "not ... serious limitation" 
DIALOG (HELLO-ABOUT) 
[MODELESS " About Hello" 10 10 120 70 
    (FONT 8, MS Sans Serif) ] 
\ [class   text      id x y sx xy ] 

    [CTEXT   " HELLO"     -1 10 10 100 10 ] 
    [CTEXT   " (C) 1997 Forth, Inc."  -1 10 25 100 10 ] 
    [CTEXT   " http://www.forth.com"  -1 10 35 100 10 ] 
    [DEFPUSHBUTTON " OK"      IDOK 35 50 50 14 ] 
END-DIALOG 
+0

वह स्पष्ट रूप से स्क्रीन-आधारित फोर्थ नहीं है, और मैंने डी 85 में बहुत अधिक धारा-चेतना रन-ऑन कोड देखा, जो स्क्रीन-आधारित भी नहीं था। –

2

मुझे एहसास है कि वे आपकी सभी आवश्यकताओं को पूरा नहीं कर सकते हैं लेकिन निम्नलिखित फर्थ जैसी भाषाएं आपको सीखने के परिप्रेक्ष्य से भी रूचि दे सकती हैं।

साथ ही, मैं Re-Factor ब्लॉग पाया है फैक्टर के लिए एक अच्छा परिचय हो।

2

यदि आप फोर्थ इंक के पुराने पॉलीफॉर्थ की एक प्रति पा सकते हैं, और एक पुराना x86 जो इसे चला सकता है, यह भाषा लियो ब्रोडी के मूल "प्रारंभिक फोर्थ" में उपयोग की जाने वाली भाषा है। यह एक साफ और बहुत मजबूत फोर्थ है।

+1

पॉलीफोर्थ, [फर्थ, इंक] (http://forth.com) के निर्माता अभी भी आसपास हैं ... – Mei

+0

और पुराने x86 के बजाय आप [डॉसबॉक्स x86 एमुलेटर] का उपयोग कर सकते हैं (http: //www.dosbox .com/download.php? main = 1) जो कि अधिकांश आधुनिक विंडोज मशीनों पर चलता है - मैंने इसे WinXP और Win7 में सफलतापूर्वक थ्रूगॉग किया है। –

0

पीसी और एंड्रॉइड के लिए Gforth डाउनलोड करें।

यह एक कैलकुलेटर के रूप में उपयोग, सरल समस्याओं को सुलझाने, फाइबोनैचि, द्विघात एबीसी को सुलझाने के साथ

टिंकर, आदि

संबंधित मुद्दे