SlideShare une entreprise Scribd logo
1  sur  31
Télécharger pour lire hors ligne
2008 (2008/11/8)




 Piece Framework 2.0




                 Piece Project
                               <kubo@iteman.jp>
-1-       Copyright © 2008 ITEMAN, Inc., All rights reserved.
Piece Framework




--




     -2-       Copyright © 2008 ITEMAN, Inc., All rights reserved.
Piece Framework




-3-       Copyright © 2008 ITEMAN, Inc., All rights reserved.
-4-   Copyright © 2008 ITEMAN, Inc., All rights reserved.
-5-   Copyright © 2008 ITEMAN, Inc., All rights reserved.
-6-   Copyright © 2008 ITEMAN, Inc., All rights reserved.
3

1.
2.
3.
--




     -7-       Copyright © 2008 ITEMAN, Inc., All rights reserved.
3

1.




--


     -8-       Copyright © 2008 ITEMAN, Inc., All rights reserved.
3

2.




--




     -9-       Copyright © 2008 ITEMAN, Inc., All rights reserved.
3

3.




--




     - 10 -       Copyright © 2008 ITEMAN, Inc., All rights reserved.
3

1.
2.
3.



     (                          )

         - 11 -       Copyright © 2008 ITEMAN, Inc., All rights reserved.
A

             B

                 C




(                              )



- 12 -               Copyright © 2008 ITEMAN, Inc., All rights reserved.
A   B              C              D




- 13 -   Copyright © 2008 ITEMAN, Inc., All rights reserved.
X          Y                Z
         A         A                 A




- 14 -       Copyright © 2008 ITEMAN, Inc., All rights reserved.
A                 B                     C




             X                 Y                     Z




    1


- 15 -           Copyright © 2008 ITEMAN, Inc., All rights reserved.
Piece_Unity   Piece_ORM             Piece_XXX




Piece Framework


        - 16 -      Copyright © 2008 ITEMAN, Inc., All rights reserved.
--




     - 17 -   Copyright © 2008 ITEMAN, Inc., All rights reserved.
- 18 -   Copyright © 2008 ITEMAN, Inc., All rights reserved.
- 19 -   Copyright © 2008 ITEMAN, Inc., All rights reserved.
- 20 -   Copyright © 2008 ITEMAN, Inc., All rights reserved.
(DSL:Domain
Specific Language)


– http://capsctrl.que.jp/kdmsnr/wiki/bliki/?LanguageWorkbench




                 - 21 -           Copyright © 2008 ITEMAN, Inc., All rights reserved.
DSL




DSL




      - 22 -   Copyright © 2008 ITEMAN, Inc., All rights reserved.
DSL                    -- http://martinfowler.com/bliki/SyntacticNoise.html

events
  doorClosed   D1CL
  drawOpened   D2OP
  lightOn      L1ON
end

commands
  unlockDoor D1UL
  lockPanel   PNLK
end

state idle
  actions {unlockDoor lockPanel}
  doorClosed => active
end

state active
  drawOpened => waitingForLight
  lightOn    => waitingForDraw
end



                      - 23 -              Copyright © 2008 ITEMAN, Inc., All rights reserved.
DSL                 (PHP)
array(array('events' => array('doorClosed' => 'D1CL',
                              'drawOpend' => 'D2OP',
                              'lightOn' => 'L1ON'),
            'commands' => array('unlockDoor' => 'D1UL',
                                'lockPanel' => 'PNLK'),
            'states' => array('idle' =>
                              array('actions' =>
                                    array('unlockDoor' => 'lockPanel'),
                                    'transitions' =>
                                    array('doorClosed' => 'active')),
                              'active' =>
                              array('transitions' =>
                                    array('drawOpened' => 'waitingForLight',
                                          'lightOn' => 'waitingForDraw')))));




                   - 24 -              Copyright © 2008 ITEMAN, Inc., All rights reserved.
DSL




      - 25 -   Copyright © 2008 ITEMAN, Inc., All rights reserved.
DSL
    DSL


●



●



●



            - 26 -   Copyright © 2008 ITEMAN, Inc., All rights reserved.
Intentional Programming
●



Meta Programming System
●



Software Factories
●



Generative Programming
●



Language Workbenches
●



...
●




(Language Oriented Programming)
           - 27 -      Copyright © 2008 ITEMAN, Inc., All rights reserved.
Texual Modeling Framework (TMF)
 Eclipse




           - 28 -   Copyright © 2008 ITEMAN, Inc., All rights reserved.
Piece Framework

Piece_Unity - Web

Piece_ORM –

Piece_Right –

Piece_Flow – Web

Stagehand_FSM –

Stagehand_TestRunner - PHPUnit, SimpleTest, PHPSpec


Piece_IDE - Eclipse           Piece Framework




                 - 29 -     Copyright © 2008 ITEMAN, Inc., All rights reserved.
Piece Framework 2.0

 Eclipse


  PHP
                                   abstract representation
                                                                                DSL
                                                          store

                                                                                                   stored representation


    DSL                                   Piece_IDE with Xtext
                                                                                                generation



                          projection
                                               PDT, The Language Toolkit, ...

                                       Piece Framework Web                            Piece Framework




                                                                                             executable representation
                                               HTML                                    ...

editable representation



                          - 30 -                        Copyright © 2008 ITEMAN, Inc., All rights reserved.
Krzysztof Czarnecki, Ulrich Eisenecker, Generative Programming:
Methods, Tools, and Applications, Addison-Wesley Pub (Sd), 2000, ISBN
978-0201309775
                      2008      ISBN 978-4798113319
http://capsctrl.que.jp/kdmsnr/wiki/bliki/?DomainSpecificLanguage
http://martinfowler.com/bliki/SyntacticNoise.html
http://www.martinfowler.com/articles/languageWorkbench.html
http://capsctrl.que.jp/kdmsnr/wiki/bliki/?LanguageWorkbench




                - 31 -          Copyright © 2008 ITEMAN, Inc., All rights reserved.

Contenu connexe

Similaire à Piece Framework 2.0 Background

Clojure through the eyes of a Java Nut | [Mixed Nuts] at Pramati Technologies
Clojure through the eyes of a Java Nut | [Mixed Nuts] at Pramati TechnologiesClojure through the eyes of a Java Nut | [Mixed Nuts] at Pramati Technologies
Clojure through the eyes of a Java Nut | [Mixed Nuts] at Pramati TechnologiesPramati Technologies
 
MySQL 8.0: What Is New in Optimizer and Executor?
MySQL 8.0: What Is New in Optimizer and Executor?MySQL 8.0: What Is New in Optimizer and Executor?
MySQL 8.0: What Is New in Optimizer and Executor?Norvald Ryeng
 
Grids Clouds Computation Steven Armentrout
Grids Clouds Computation Steven ArmentroutGrids Clouds Computation Steven Armentrout
Grids Clouds Computation Steven ArmentroutGovCloud Network
 
Vdot road ii_stu_trn010260-1-0002
Vdot road ii_stu_trn010260-1-0002Vdot road ii_stu_trn010260-1-0002
Vdot road ii_stu_trn010260-1-0002Barrick Sudamerica
 
Document_format_for_OData_In_A_Nutshell.pdf
Document_format_for_OData_In_A_Nutshell.pdfDocument_format_for_OData_In_A_Nutshell.pdf
Document_format_for_OData_In_A_Nutshell.pdfdavidjpeace
 
SpringOne Platform 2017報告会 メインプロジェクトのアップデート
SpringOne Platform 2017報告会 メインプロジェクトのアップデートSpringOne Platform 2017報告会 メインプロジェクトのアップデート
SpringOne Platform 2017報告会 メインプロジェクトのアップデートTakuya Iwatsuka
 
“Quantum” Performance Effects: beyond the Core
“Quantum” Performance Effects: beyond the Core“Quantum” Performance Effects: beyond the Core
“Quantum” Performance Effects: beyond the CoreC4Media
 
Gettingstartedwithmatlabimageprocessing
GettingstartedwithmatlabimageprocessingGettingstartedwithmatlabimageprocessing
Gettingstartedwithmatlabimageprocessingtvanii
 
SequenceL Auto-Parallelizing Toolset Intro slideshare
SequenceL Auto-Parallelizing Toolset Intro slideshareSequenceL Auto-Parallelizing Toolset Intro slideshare
SequenceL Auto-Parallelizing Toolset Intro slideshareDoug Norton
 
SequenceL intro slideshare
SequenceL intro slideshareSequenceL intro slideshare
SequenceL intro slideshareDoug Norton
 
EclipseCon2008: The Dod, Open Source, and OSGi as Server Infrastructure
EclipseCon2008: The Dod, Open Source, and OSGi as Server InfrastructureEclipseCon2008: The Dod, Open Source, and OSGi as Server Infrastructure
EclipseCon2008: The Dod, Open Source, and OSGi as Server InfrastructureKit Plummer
 
Compile ahead of time. It's fine?
Compile ahead of time. It's fine?Compile ahead of time. It's fine?
Compile ahead of time. It's fine?Dmitry Chuyko
 
Case Study: Large Scale Deployment for Machine Learning with Highspeed Storage
Case Study: Large Scale Deployment for Machine Learning with Highspeed StorageCase Study: Large Scale Deployment for Machine Learning with Highspeed Storage
Case Study: Large Scale Deployment for Machine Learning with Highspeed StorageKota Tsuyuzaki
 
How to make a symbol of Capacitor by LTspice
How to make a symbol of Capacitor by LTspiceHow to make a symbol of Capacitor by LTspice
How to make a symbol of Capacitor by LTspiceTsuyoshi Horigome
 
The Role of Standards in IoT Security
The Role of Standards in IoT SecurityThe Role of Standards in IoT Security
The Role of Standards in IoT SecurityHannes Tschofenig
 
Presentation Presentation Personall Knowledge Networks
Presentation Presentation  Personall Knowledge NetworksPresentation Presentation  Personall Knowledge Networks
Presentation Presentation Personall Knowledge NetworksPersonall SAS
 
Apache MXNet EcoSystem - ACNA2018
Apache MXNet EcoSystem - ACNA2018Apache MXNet EcoSystem - ACNA2018
Apache MXNet EcoSystem - ACNA2018Apache MXNet
 
Applying BDD/TDD practices, using Jasmine.js
Applying BDD/TDD practices, using Jasmine.jsApplying BDD/TDD practices, using Jasmine.js
Applying BDD/TDD practices, using Jasmine.jsAnil Tarte
 

Similaire à Piece Framework 2.0 Background (20)

Clojure through the eyes of a Java Nut | [Mixed Nuts] at Pramati Technologies
Clojure through the eyes of a Java Nut | [Mixed Nuts] at Pramati TechnologiesClojure through the eyes of a Java Nut | [Mixed Nuts] at Pramati Technologies
Clojure through the eyes of a Java Nut | [Mixed Nuts] at Pramati Technologies
 
Zero To Dojo
Zero To DojoZero To Dojo
Zero To Dojo
 
MySQL 8.0: What Is New in Optimizer and Executor?
MySQL 8.0: What Is New in Optimizer and Executor?MySQL 8.0: What Is New in Optimizer and Executor?
MySQL 8.0: What Is New in Optimizer and Executor?
 
Grids Clouds Computation Steven Armentrout
Grids Clouds Computation Steven ArmentroutGrids Clouds Computation Steven Armentrout
Grids Clouds Computation Steven Armentrout
 
Vdot road ii_stu_trn010260-1-0002
Vdot road ii_stu_trn010260-1-0002Vdot road ii_stu_trn010260-1-0002
Vdot road ii_stu_trn010260-1-0002
 
Kommons
KommonsKommons
Kommons
 
Document_format_for_OData_In_A_Nutshell.pdf
Document_format_for_OData_In_A_Nutshell.pdfDocument_format_for_OData_In_A_Nutshell.pdf
Document_format_for_OData_In_A_Nutshell.pdf
 
SpringOne Platform 2017報告会 メインプロジェクトのアップデート
SpringOne Platform 2017報告会 メインプロジェクトのアップデートSpringOne Platform 2017報告会 メインプロジェクトのアップデート
SpringOne Platform 2017報告会 メインプロジェクトのアップデート
 
“Quantum” Performance Effects: beyond the Core
“Quantum” Performance Effects: beyond the Core“Quantum” Performance Effects: beyond the Core
“Quantum” Performance Effects: beyond the Core
 
Gettingstartedwithmatlabimageprocessing
GettingstartedwithmatlabimageprocessingGettingstartedwithmatlabimageprocessing
Gettingstartedwithmatlabimageprocessing
 
SequenceL Auto-Parallelizing Toolset Intro slideshare
SequenceL Auto-Parallelizing Toolset Intro slideshareSequenceL Auto-Parallelizing Toolset Intro slideshare
SequenceL Auto-Parallelizing Toolset Intro slideshare
 
SequenceL intro slideshare
SequenceL intro slideshareSequenceL intro slideshare
SequenceL intro slideshare
 
EclipseCon2008: The Dod, Open Source, and OSGi as Server Infrastructure
EclipseCon2008: The Dod, Open Source, and OSGi as Server InfrastructureEclipseCon2008: The Dod, Open Source, and OSGi as Server Infrastructure
EclipseCon2008: The Dod, Open Source, and OSGi as Server Infrastructure
 
Compile ahead of time. It's fine?
Compile ahead of time. It's fine?Compile ahead of time. It's fine?
Compile ahead of time. It's fine?
 
Case Study: Large Scale Deployment for Machine Learning with Highspeed Storage
Case Study: Large Scale Deployment for Machine Learning with Highspeed StorageCase Study: Large Scale Deployment for Machine Learning with Highspeed Storage
Case Study: Large Scale Deployment for Machine Learning with Highspeed Storage
 
How to make a symbol of Capacitor by LTspice
How to make a symbol of Capacitor by LTspiceHow to make a symbol of Capacitor by LTspice
How to make a symbol of Capacitor by LTspice
 
The Role of Standards in IoT Security
The Role of Standards in IoT SecurityThe Role of Standards in IoT Security
The Role of Standards in IoT Security
 
Presentation Presentation Personall Knowledge Networks
Presentation Presentation  Personall Knowledge NetworksPresentation Presentation  Personall Knowledge Networks
Presentation Presentation Personall Knowledge Networks
 
Apache MXNet EcoSystem - ACNA2018
Apache MXNet EcoSystem - ACNA2018Apache MXNet EcoSystem - ACNA2018
Apache MXNet EcoSystem - ACNA2018
 
Applying BDD/TDD practices, using Jasmine.js
Applying BDD/TDD practices, using Jasmine.jsApplying BDD/TDD practices, using Jasmine.js
Applying BDD/TDD practices, using Jasmine.js
 

Plus de Atsuhiro Kubo

Enaction, Not Design on MPD Osaka Extra 1
Enaction, Not Design on MPD Osaka Extra 1Enaction, Not Design on MPD Osaka Extra 1
Enaction, Not Design on MPD Osaka Extra 1Atsuhiro Kubo
 
Enaction, Not Design on Symfony Meetup Kansai 2
Enaction, Not Design on Symfony Meetup Kansai 2Enaction, Not Design on Symfony Meetup Kansai 2
Enaction, Not Design on Symfony Meetup Kansai 2Atsuhiro Kubo
 
The Birth of FormalBears - A new META for BEAR.Sunday applications
The Birth of FormalBears - A new META for BEAR.Sunday applicationsThe Birth of FormalBears - A new META for BEAR.Sunday applications
The Birth of FormalBears - A new META for BEAR.Sunday applicationsAtsuhiro Kubo
 
Lean Architecture / DCI Evening Report
Lean Architecture / DCI Evening ReportLean Architecture / DCI Evening Report
Lean Architecture / DCI Evening ReportAtsuhiro Kubo
 
Frameworks We Live By: Design by day-to-day framework development: Multi-para...
Frameworks We Live By: Design by day-to-day framework development: Multi-para...Frameworks We Live By: Design by day-to-day framework development: Multi-para...
Frameworks We Live By: Design by day-to-day framework development: Multi-para...Atsuhiro Kubo
 
Frameworks We Live By: Design by day-to-day framework development: Multi-para...
Frameworks We Live By: Design by day-to-day framework development: Multi-para...Frameworks We Live By: Design by day-to-day framework development: Multi-para...
Frameworks We Live By: Design by day-to-day framework development: Multi-para...Atsuhiro Kubo
 
ジェネレーティブプログラミングの世界
ジェネレーティブプログラミングの世界ジェネレーティブプログラミングの世界
ジェネレーティブプログラミングの世界Atsuhiro Kubo
 
意図を表現するプログラミング
意図を表現するプログラミング意図を表現するプログラミング
意図を表現するプログラミングAtsuhiro Kubo
 
Software Development with Symfony
Software Development with SymfonySoftware Development with Symfony
Software Development with SymfonyAtsuhiro Kubo
 
Introduction to Continuous Test Runner MakeGood
Introduction to Continuous Test Runner MakeGoodIntroduction to Continuous Test Runner MakeGood
Introduction to Continuous Test Runner MakeGoodAtsuhiro Kubo
 
Getting Started with Testing using PHPUnit
Getting Started with Testing using PHPUnitGetting Started with Testing using PHPUnit
Getting Started with Testing using PHPUnitAtsuhiro Kubo
 
Introduction to Continuous Testing
Introduction to Continuous TestingIntroduction to Continuous Testing
Introduction to Continuous TestingAtsuhiro Kubo
 
Symfony2でより良いソフトウェアを作るために
Symfony2でより良いソフトウェアを作るためにSymfony2でより良いソフトウェアを作るために
Symfony2でより良いソフトウェアを作るためにAtsuhiro Kubo
 
MakeGoodで快適なテスト駆動開発を
MakeGoodで快適なテスト駆動開発をMakeGoodで快適なテスト駆動開発を
MakeGoodで快適なテスト駆動開発をAtsuhiro Kubo
 
Eclipse PDT + MakeGoodによるPHPコードのテスト
Eclipse PDT + MakeGoodによるPHPコードのテストEclipse PDT + MakeGoodによるPHPコードのテスト
Eclipse PDT + MakeGoodによるPHPコードのテストAtsuhiro Kubo
 
Eclipse PDT + MakeGood による PHP コードのテスト
Eclipse PDT + MakeGood による PHP コードのテストEclipse PDT + MakeGood による PHP コードのテスト
Eclipse PDT + MakeGood による PHP コードのテストAtsuhiro Kubo
 
How To Create Custom DSLs By PHP
How To Create Custom DSLs By PHPHow To Create Custom DSLs By PHP
How To Create Custom DSLs By PHPAtsuhiro Kubo
 

Plus de Atsuhiro Kubo (18)

MPD Osaka Extra 5
MPD Osaka Extra 5MPD Osaka Extra 5
MPD Osaka Extra 5
 
Enaction, Not Design on MPD Osaka Extra 1
Enaction, Not Design on MPD Osaka Extra 1Enaction, Not Design on MPD Osaka Extra 1
Enaction, Not Design on MPD Osaka Extra 1
 
Enaction, Not Design on Symfony Meetup Kansai 2
Enaction, Not Design on Symfony Meetup Kansai 2Enaction, Not Design on Symfony Meetup Kansai 2
Enaction, Not Design on Symfony Meetup Kansai 2
 
The Birth of FormalBears - A new META for BEAR.Sunday applications
The Birth of FormalBears - A new META for BEAR.Sunday applicationsThe Birth of FormalBears - A new META for BEAR.Sunday applications
The Birth of FormalBears - A new META for BEAR.Sunday applications
 
Lean Architecture / DCI Evening Report
Lean Architecture / DCI Evening ReportLean Architecture / DCI Evening Report
Lean Architecture / DCI Evening Report
 
Frameworks We Live By: Design by day-to-day framework development: Multi-para...
Frameworks We Live By: Design by day-to-day framework development: Multi-para...Frameworks We Live By: Design by day-to-day framework development: Multi-para...
Frameworks We Live By: Design by day-to-day framework development: Multi-para...
 
Frameworks We Live By: Design by day-to-day framework development: Multi-para...
Frameworks We Live By: Design by day-to-day framework development: Multi-para...Frameworks We Live By: Design by day-to-day framework development: Multi-para...
Frameworks We Live By: Design by day-to-day framework development: Multi-para...
 
ジェネレーティブプログラミングの世界
ジェネレーティブプログラミングの世界ジェネレーティブプログラミングの世界
ジェネレーティブプログラミングの世界
 
意図を表現するプログラミング
意図を表現するプログラミング意図を表現するプログラミング
意図を表現するプログラミング
 
Software Development with Symfony
Software Development with SymfonySoftware Development with Symfony
Software Development with Symfony
 
Introduction to Continuous Test Runner MakeGood
Introduction to Continuous Test Runner MakeGoodIntroduction to Continuous Test Runner MakeGood
Introduction to Continuous Test Runner MakeGood
 
Getting Started with Testing using PHPUnit
Getting Started with Testing using PHPUnitGetting Started with Testing using PHPUnit
Getting Started with Testing using PHPUnit
 
Introduction to Continuous Testing
Introduction to Continuous TestingIntroduction to Continuous Testing
Introduction to Continuous Testing
 
Symfony2でより良いソフトウェアを作るために
Symfony2でより良いソフトウェアを作るためにSymfony2でより良いソフトウェアを作るために
Symfony2でより良いソフトウェアを作るために
 
MakeGoodで快適なテスト駆動開発を
MakeGoodで快適なテスト駆動開発をMakeGoodで快適なテスト駆動開発を
MakeGoodで快適なテスト駆動開発を
 
Eclipse PDT + MakeGoodによるPHPコードのテスト
Eclipse PDT + MakeGoodによるPHPコードのテストEclipse PDT + MakeGoodによるPHPコードのテスト
Eclipse PDT + MakeGoodによるPHPコードのテスト
 
Eclipse PDT + MakeGood による PHP コードのテスト
Eclipse PDT + MakeGood による PHP コードのテストEclipse PDT + MakeGood による PHP コードのテスト
Eclipse PDT + MakeGood による PHP コードのテスト
 
How To Create Custom DSLs By PHP
How To Create Custom DSLs By PHPHow To Create Custom DSLs By PHP
How To Create Custom DSLs By PHP
 

Dernier

Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 

Dernier (20)

Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 

Piece Framework 2.0 Background

  • 1. 2008 (2008/11/8) Piece Framework 2.0 Piece Project <kubo@iteman.jp> -1- Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 2. Piece Framework -- -2- Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 3. Piece Framework -3- Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 4. -4- Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 5. -5- Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 6. -6- Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 7. 3 1. 2. 3. -- -7- Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 8. 3 1. -- -8- Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 9. 3 2. -- -9- Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 10. 3 3. -- - 10 - Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 11. 3 1. 2. 3. ( ) - 11 - Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 12. A B C ( ) - 12 - Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 13. A B C D - 13 - Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 14. X Y Z A A A - 14 - Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 15. A B C X Y Z 1 - 15 - Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 16. Piece_Unity Piece_ORM Piece_XXX Piece Framework - 16 - Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 17. -- - 17 - Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 18. - 18 - Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 19. - 19 - Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 20. - 20 - Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 21. (DSL:Domain Specific Language) – http://capsctrl.que.jp/kdmsnr/wiki/bliki/?LanguageWorkbench - 21 - Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 22. DSL DSL - 22 - Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 23. DSL -- http://martinfowler.com/bliki/SyntacticNoise.html events doorClosed D1CL drawOpened D2OP lightOn L1ON end commands unlockDoor D1UL lockPanel PNLK end state idle actions {unlockDoor lockPanel} doorClosed => active end state active drawOpened => waitingForLight lightOn => waitingForDraw end - 23 - Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 24. DSL (PHP) array(array('events' => array('doorClosed' => 'D1CL', 'drawOpend' => 'D2OP', 'lightOn' => 'L1ON'), 'commands' => array('unlockDoor' => 'D1UL', 'lockPanel' => 'PNLK'), 'states' => array('idle' => array('actions' => array('unlockDoor' => 'lockPanel'), 'transitions' => array('doorClosed' => 'active')), 'active' => array('transitions' => array('drawOpened' => 'waitingForLight', 'lightOn' => 'waitingForDraw'))))); - 24 - Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 25. DSL - 25 - Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 26. DSL DSL ● ● ● - 26 - Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 27. Intentional Programming ● Meta Programming System ● Software Factories ● Generative Programming ● Language Workbenches ● ... ● (Language Oriented Programming) - 27 - Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 28. Texual Modeling Framework (TMF) Eclipse - 28 - Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 29. Piece Framework Piece_Unity - Web Piece_ORM – Piece_Right – Piece_Flow – Web Stagehand_FSM – Stagehand_TestRunner - PHPUnit, SimpleTest, PHPSpec Piece_IDE - Eclipse Piece Framework - 29 - Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 30. Piece Framework 2.0 Eclipse PHP abstract representation DSL store stored representation DSL Piece_IDE with Xtext generation projection PDT, The Language Toolkit, ... Piece Framework Web Piece Framework executable representation HTML ... editable representation - 30 - Copyright © 2008 ITEMAN, Inc., All rights reserved.
  • 31. Krzysztof Czarnecki, Ulrich Eisenecker, Generative Programming: Methods, Tools, and Applications, Addison-Wesley Pub (Sd), 2000, ISBN 978-0201309775 2008 ISBN 978-4798113319 http://capsctrl.que.jp/kdmsnr/wiki/bliki/?DomainSpecificLanguage http://martinfowler.com/bliki/SyntacticNoise.html http://www.martinfowler.com/articles/languageWorkbench.html http://capsctrl.que.jp/kdmsnr/wiki/bliki/?LanguageWorkbench - 31 - Copyright © 2008 ITEMAN, Inc., All rights reserved.