DSLはVisualツールのサポート前提

Slides:



Advertisements
Similar presentations
プログラミング言語論 第3回 BNF 記法について(演習付き) 篠埜 功. 構文の記述 プログラミング言語の構文はどのように定式化できるか? 例1 : for ループの中に for ループが書ける。 for (i=0; i
Advertisements

1 情報基礎 A 第 9 週 プログラミング入門 VBA の基本文法 1 準備・変数・データの入出力 徳山 豪・全 眞嬉 東北大学情報科学研究科 システム情報科学専攻 情報システム評価学分野.
New WorkFriend (AS版・PC版 概要説明) <New WorkFriend とは?> ・ネットワーク環境の上で、データベースを日常業務に活用す る。 ・WindowsのExcelとリンクした、照会・更新・分 析をするツール。 <New WorkFriend の機能> 1.データベースの照会機能.
2002/2/8 ASUG Conference in PAGE 2002 Mac OS X 開発環境と AppleScript MDOnline 編集長 新居雅行.
プログラミング言語論 第10回(演習) 情報工学科 木村昌臣   篠埜 功.
Visual Studio 2010 の新機能 Coded UI Test
TeX で数式を書くための PowerPoint アドイン Ver (2011/06/26) Ver. 0.1 (2007/5/30)
PROCESS 14:一般情報(2) InstallShieldLecture
第3回参考文献発表 PHP言語 岩永逸平.
東京工科大学 コンピュータサイエンス学部 亀田弘之
ChaosなScript 2012/05/05 hole.
1/16 卒業研究中間発表 D2553  佐藤佳代子.
ゲームプログラミング講習 第1章 DXライブラリ入門
背景 我々の研究室で開発しているJavaプログラム解析フレ ームワークでは,解析情報はメモリ上に保持される 問題点
USB2.0対応PICマイコンによる データ取得システムの開発
ホームページづくりに挑戦しよう 常信伊佐夫 スペースバーを押して進めてください.
TeX で数式を書くための PowerPoint アドイン Ver. 0.1 (2007/5/30)
情報理工学部 情報システム工学科 ラシキアゼミ3年 H 岡田 貴大
Microsoft Office 2010 クイックガイド ~Access編~
An empirical comparison of C, C++, Java, Perl, Python, Rexx, and Tcl
Visual Studio インストール インストール時間:約1時間.
情報科学1(G1) 2016年度.
Visual Studio LightSwitchの概要
はじめてのASP.NET 楽しいアプリ制作の会 #1 TWorks.
Perlを用いた 学内専用アップローダの作成
Webを利用した授業支援システムの開発 北海道工業大学 電気電子工学科 H 渋谷 俊彦.
心理学情報処理法Ⅰ コンピュータ言語の歴史.
リファクタリングのための 変更波及解析を利用した テスト支援ツールの提案
TA 高田正法 B10 CPUを作る 2日目 SPIMのコンパイル TA 高田正法
プログラミング言語論 第3回 BNF記法について(演習付き)
MVP for VB が語る C# 入門 初音 玲.
MVP for VB が語る C# 入門 初音 玲.
正則言語 2011/6/27.
暗黙的に型付けされる構造体の Java言語への導入
オブジェクト指向 プログラミング 第二回 知能情報学部 新田直也.
VBA ( Visual BASIC for Application) を使えるようにする方法
オーバレイ構築ツールキットOverlay Weaver
インラインスクリプトに対するデータフロー 解析を用いた XHTML 文書の構文検証
社会シミュレーションのための モデル作成環境
東京工科大学 コンピュータサイエンス学部 亀田弘之
湘南工科大学 2013年10月8日 プログラミング基礎1 湘南工科大学情報工学科 准教授 小林 学.
オープンソース開発支援のための ソースコード及びメールの履歴対応表示システム
Visual Studio 2005の使用方法 新入生セミナー 
音声認識・翻訳 Android アプリケーション制作
平成20年10月5日(月) 東京工科大学 コンピュータサイエンス学部 亀田弘之
物体検出による視覚補助システム T215085 若松大仁 白井研究室.
第5章 計算とプログラム 本章で説明すること ・計算の概観と記述法 ・代表的な計算モデル ・プログラムとプログラム言語.
Java における 先進的リフレクション技術
東京工科大学 コンピュータサイエンス学部 亀田弘之
プログラミングⅠ 平成31年1月7日 森田 彦.
JAVAバイトコードにおける データ依存解析手法の提案と実装
JavaScriptを含んだHTML文書に対する データフロー解析を用いた構文検証手法の提案
高度プログラミング演習 (01).
2013年度 プログラミングⅠ ~ はじめてのプログラミング ~.
情報基礎Ⅱ (第1回) 月曜4限 担当:北川 晃.
TeX で数式を書くための PowerPoint アドイン Ver. 0.1 (2007/5/30)
vc-2. Visual Studio C++ のデバッガー (Visual Studio C++ の実用知識を学ぶシリーズ)
ガイダンス 電子計算機 電気工学科 山本昌志 1E
東京工科大学 コンピュータサイエンス学部 亀田弘之
東京工科大学 コンピュータサイエンス学部 亀田弘之
TeX で数式を書くための PowerPoint アドイン Ver. 0.1 (2007/5/30)
vc-1. Visual Studio C++ の基本操作 (Visual Studio C++ の実用知識を学ぶシリーズ)
プログラム分散化のための アスペクト指向言語
Visual Studio 2013 の起動と プロジェクトの新規作成 (C プログラミング演習,Visual Studio 2019 対応) 金子邦彦.
cp-1. クラスとメソッド (C++ オブジェクト指向プログラミング入門)
プロジェクト演習Ⅳ・Ⅵ インタラクティブゲーム制作
Cp-1. Microsoft Visual Studio 2019 C++ の使い方 (C プログラミング演習,Visual Studio 2019 対応) 金子邦彦.
C#プログラミング実習 第1回.
1.2 言語処理の諸観点 (1)言語処理の利用分野
2012年度 情報数理 ~ 授業紹介 ~.
Presentation transcript:

DSLはVisualツールのサポート前提 ※画像は合成して作ったものです

テキストベースのDSL テキストベース 構文ハイライト付き リアルタイムに構文チェック コードスニペット対応、IntelliSenseも効く

視覚化 DSLを視覚化 テキスト側/視覚化した側の変更を即座に他方に反映

対応するコード 必要に応じてでいいけど、DSLに対応するC#コードを見たかったりすることも

DSL作成・利用フロー 文法定義 視覚化した DSL記述 テキストベースDSL記述 ビルド MSIL Visual Studio 式ツリー 視覚化ツール MEF MEF 凡例 コード (C#など) 実行可能形式 DSL作成者の成果物 DSL利用者の成果物 中間生成物

DSL作成 M Grammarみたいな専用言語でも、C#にPerl 6のgrammar構文みたいなのを足すのでもいいけど とにかく一度MSIL化して、MEFなどでVisual Studioに取り込み 文法定義 視覚化した DSL記述 テキストベースDSL記述 ビルド MSIL Visual Studio 式ツリー 視覚化ツール MEF MEF 凡例 コード (C#など) 実行可能形式 DSL作成者の成果物 DSL利用者の成果物 中間生成物

DSL利用 式ツリーをCodeDOM的に使ってテキスト形式・視覚化形式を橋渡し 必要に応じてコード化もしたり 文法定義 式ツリーをCodeDOM的に使ってテキスト形式・視覚化形式を橋渡し 視覚化した DSL記述 テキストベースDSL記述 ビルド MSIL Visual Studio 式ツリー 視覚化ツール MEF MEF 必要に応じてコード化もしたり partialクラスと合わせての利用も 凡例 コード (C#など) 実行可能形式 DSL作成者の成果物 DSL利用者の成果物 中間生成物

補足 この考え方、Martin Fowlerの言う「言語ワークベンチ」† 的 要は今に始まった話ではないけれども、今なら、ツールやフレームワークが言語ワークベンチに対応できる能力備えてきたんじゃないかと † http://capsctrl.que.jp/kdmsnr/wiki/bliki/?LanguageWorkbench