2009-01-12 11 views
6

क्या कोई यहां नियमित रूप से SpeC# का उपयोग करता है? मैं यह जानना चाहता हूं कि यह हर जगह इसका उपयोग शुरू करने से पहले स्थिर और शक्तिशाली है या नहीं। ऐसा लगता है कि सिंटैक्स सी # 4.0 को प्रभावित कर रहा है, जो उम्मीद है कि 4.0 जारी होने के बाद अपग्रेड करना आसान हो जाएगा। विचार?क्या स्पेक # उपयोग करने के लिए पर्याप्त स्थिर है?

+0

हर जगह उपयोग करें? केवल अगर यह दस्तावेज है तो आपको वह मार्ग लेना चाहिए। स्पष्ट रूप से यह मामला नहीं है, जो संकेत करता है कि यह एक प्रयोगात्मक/अनुसंधान उन्मुख इन-हाउस उत्पाद है। स्पेक #, सिंग #, सी-ओमेगा, एफ * इस तरह के कुछ हैं। दूसरी ओर नेमेरल या बू कुछ बेहतर विकल्प होंगे। – nawfal

उत्तर

11

मुझे लगता है कि यह "स्थिर" से आपका क्या मतलब है इस पर निर्भर करता है। इसके दो संभावित व्याख्याएं हैं:

  1. "नहीं दुर्घटनाग्रस्त"
  2. "नहीं बदल रहा है"

मैं # 1 के बारे में पता नहीं है, लेकिन आप # 2, तो, ठीक है, Spec# मतलब अगर को छोड़ दिया गया है और अब विकसित नहीं किया जा रहा है, इसलिए यह संभवतः उतना ही स्थिर है जितना आप प्राप्त करेंगे।

तकनीक और उपकरण है कि Spec# में इस्तेमाल किया गया (Boogie बुलाया स्थिर विश्लेषण उपकरण और प्रमेय prover/बाधा solver Z3) अब Code Contracts for .NET नामक एक नए पुस्तकालय का हिस्सा हैं। लाइब्रेरी होने का अपवाद यह है कि कोड अनुबंध किसी भी .NET भाषा: सी #, वीबी.नेट, एफ #, रूबी, पायथन, जावास्क्रिप्ट, लिस्प, स्मॉलटॉक, बू, के लिए काम करेंगे। नकारात्मकता यह है कि आपको कोई भाषा एकीकरण नहीं मिलता है, इसलिए अनुबंधों के लिए कोई अच्छा वाक्यविन्यास नहीं है।

.NET के लिए कोड अनुबंध .NET 4.0/विजुअल स्टूडियो 2010 का हिस्सा होंगे, लेकिन दुर्भाग्यवश माइक्रोसॉफ्ट की किसी भी भाषा में कोई डीबीसी समर्थन नहीं होगा।

+1

तो आप क्या कहते हैं कि SpeC# को छोड़ दिया गया था? मुझे इसका कोई संदर्भ नहीं मिल रहा है ... – Lucero

+0

मुझे याद नहीं है कि मैंने पॉडकास्ट पर एक चैनल 9 वीडियो या शायद एक ब्लॉग पोस्ट सुना है। असल में, कोई भी SpeC# पर काम नहीं कर रहा है, क्योंकि वे सभी कोड अनुबंधों .NET लाइब्रेरी पर पूर्णकालिक कार्य करते हैं। स्पेक # के लिए बगफिक्स और रखरखाव रिलीज हो सकते हैं, लेकिन कोई भी नहीं होगा ... –

+0

... और विकास, उत्पादन उत्पादन नहीं होगा (वर्तमान में वाणिज्यिक परियोजनाओं के लिए स्पेक # का उपयोग करना अवैध है) और निश्चित रूप से कोई भी सी # 3.0 या सी # 4.0 विशेषताएं नहीं होगी। स्पेक # के लिए विकसित की गई सभी तकनीक अब कोड अनुबंधों में है। –

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