-
X-Received: by 2002:a1f:d142:: with SMTP id i63-v6mr3583211vkg.5.1525549505599; Sat,
05 May 2018 12:45:05 -0700 (PDT)
X-Received: by 2002:a1f:d142:: with SMTP id i63-v6mr3583211vkg.5.1525549505599; Sat,
05 May 2018 12:45:05 -0700 (PDT)
Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!news.unit
0.net!npeer.de.kpn-eurorings.net!npeer-ng0.de.kpn-eurorings.net!peer01.ams1!pee
r.ams1.xlned.com!news.xlned.com!peer01.am4!peer.am4.highwinds-media.com!peer03.
iad!feed-me.highwinds-media.com!news.highwinds-media.com!x25-v6no6633231qto.0!n
ews-out.google.com!p41-v6ni1579qtp.1!nntp.google.com!x25-v6no6633224qto.0!postn
ews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
Newsgroups: pl.comp.programming
Date: Sat, 5 May 2018 12:45:05 -0700 (PDT)
In-Reply-To: <f...@g...com>
Complaints-To: g...@g...com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=213.108.152.51;
posting-account=bMuEOQoAAACUUr_ghL3RBIi5neBZ5w_S
NNTP-Posting-Host: 213.108.152.51
References: <d...@g...com>
<f...@g...com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <6...@g...com>
Subject: Re: Formal Methods Toolkit
From: Maciej Sobczak <s...@g...com>
Injection-Date: Sat, 05 May 2018 19:45:05 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 3981
X-Received-Body-CRC: 3291167577
Xref: news-archive.icm.edu.pl pl.comp.programming:212439
[ ukryj nagłówki ]> Czy to jest po prostu nowy język programowania
Sprawa jest bardziej złożona. Nie jest to zupełnie nowy język, bo wykorzystuje
gramatykę języka Wolfram. Tzn. każda konstrukcja w FMT jest poprawnym wyrażeniem
języka Wolfram, choć z nowym znaczeniem wynikającym z tego, jak dane wyrażenie jest
dalej obrabiane. Nie jest to też po prostu język programowania, bo nacisk jest na
modelowanie systemu na poziomie wymagań niskopoziomowych. W swoim rdzeniu taki model
faktycznie wygląda jak imperatywny kod albo pseudokod, ale nie jest to ograniczenie i
być może język zostanie rozwinięty w stronę bardziej wysokopoziomowych konstrukcji,
niekoniecznie opartych na kodzie w sensie tekstowego formatu. Ostatecznie kod
programu jest generowany na podstawie modelu.
> pozwalający na jakąś formę dowodzenia poprawności?
Tak, ideą jest statyczne dowodzenie różnych wybranych cech modelu.
> Jak on się ma do - coraz popularniejszych, choć wciąż niszowych - języków typu Coq,
Agda, Idris opartych o dependent types?
1. Podstawowym założeniem w FMT jest zdolność do wygenerowania kodu, który w ogóle
nie potrzebuje run-time'u, co ma ułatwić wdrożenie w *prawdziwych* systemach
krytycznych, czyli takich, które podlegają narzuconym z góry przemysłowym standardom.
Czyli żadnej pamięci dynamicznej (nawet niejawnej), itp. Celem jest też generacja
kodu w Adzie lub w C(++), które są standardowymi językami wykorzystywanymi w
przemyśle - po to, żeby można było taki wygenerowany kod użyć w jakimś regularnym i
uznanym obecnie procesie produkcyjnym. Inaczej mówiąc, można użyć FMT w obecnym
procesie, bez technicznych rewolucji, bo z punktu widzenia obecnych procesów jest to
tzw. Model-Based Design z generatorem kodu, czyli coś, co z powodzeniem uprawia się
od dawna (patrz np. Simulink, SCADE, itp.).
O ile zgaduję, takie założenia nie były priorytetem w tych językach, które
wymieniłeś.
2. Co to jest "dependent types"?
W FMT system typów to ścisły podzbiór tego, co można osiągnąć w C albo w Adzie. Ma to
związek z założeniami powyżej.
--
Maciej Sobczak * http://www.inspirel.com
Najnowsze wątki z tej grupy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
Najnowsze wątki
- 2025-02-19 Lista afer
- 2025-02-19 Lista afer
- 2025-02-19 Lista afer PIS
- 2025-02-19 Ogrodzenie dla krów szkockich "Highland"
- 2025-02-19 Gdańsk => System Architect (background deweloperski w Java) <=
- 2025-02-19 Gdańsk => Solution Architect (Java background) <=
- 2025-02-19 Białystok => Data Engineer (Tech Leader) <=
- 2025-02-19 Kraków => Ekspert IT (obszar systemów sieciowych) <=
- 2025-02-19 Warszawa => Architekt rozwiązań (doświadczenie w obszarze Java, AWS
- 2025-02-19 Rzeszów => International Freight Forwarder <=
- 2025-02-19 Poznań => Konsultant wdrożeniowy Comarch XL/Optima (Księgowość i
- 2025-02-19 Chrzanów => Spedytor Międzynarodowy (handel ładunkami/prowadzenie f
- 2025-02-19 Bieruń => Regionalny Kierownik Sprzedaży (OZE) <=
- 2025-02-19 Nigdy
- 2025-02-19 Katowice => Key Account Manager (ERP) <=