Hi Stef 2016-10-19 17:29 GMT-03:00 stepharo <steph...@free.fr>:
> Hernan > > What is the input you take to generate magritte? > Something like this: CGStMagritte uniqueInstance inputClass: ModelClass1; targetClass: ModelClass1; setBooleanAttributes: 'instVar1' label: 'label iVar1' priority: 10; setDateAndTimeAttributes: 'instVar2' label: 'label Date and Time' priority: 20; setDateAttributes: 'instVar3' label: 'label Date' priority: 30; setFileAttributes: 'iVarFile' label: 'label File' priority: 40; setMemoAttributes: 'iVarMemo' label: 'label Memo' priority: 50; setMultiOptionAttributes: 'iVarMultiOption' label: 'label Multi Option' priority: 60; setNumberAttributes: 'iVarInteger' label: 'label Integer' priority: 70; generateMethods. Smalltalk tools browser openOnClass: ModelClass1. self inform: 'Done'. which generates ModelClass1>>descriptionInstVar1 <magitteDescription> | tmp2 | tmp2 := MABooleanDescription new. tmp2 accessor: #instVar1; label: 'label iVar1'; priority: 10. ^ tmp2 yourself ModelClass1>>descriptionInstVar2 <magitteDescription> | tmp2 | tmp2 := MADateAndTimeDescription new. tmp2 accessor: #instVar2; label: 'label Date and Time'; priority: 20. ^ tmp2 yourself and so on. Lionel would like to have a kind of Crud on top of Pharo and it would be > good for business. > Cool, hope he finds useful the code generator > Stef > > Le 18/10/16 à 18:07, Hernán Morales Durand a écrit : > > > 2016-10-18 9:35 GMT-03:00 Lionel Akue <lionela...@gmail.com>: > >> Great! >> >> We had the same idea :) >> >> > Let me know if we can join forces to speed uo things. > > >> The first requirements I wrote was to generate Spec UI directly. But I >> rather chose to make Magritte compatible with Spec. >> >> So from the Magritte description, we could generate Spec, Seaside ... >> >> > The CodeGenerator I wrote already generates Magritte code. If you load it > in Pharo 5 > > Gofer it > smalltalkhubUser: 'hernan' project: 'CodeGenerator'; > configuration; > loadDevelopment. > > Have a look at the usage examples: > > #exampleMagritteDescriptionCreation1 > #exampleMagritteDescriptionCreation2 > #exampleMagritteDescriptionCreation3 > > If you have suggestions I would like to read. > > Hernán > > >> Lionel >> >> 2016-10-18 14:20 GMT+02:00 Peter Uhnak <i.uh...@gmail.com>: >> >>> Hi Hernan, >>> >>> I wrote some time ago two basic code generators (both in Pharo) from >>> UML-ified FAMIX for a particular user (so there are some domain-specific >>> patterns), >>> one for Pharo syntax ( https://github.com/OpenPonk/cl >>> ass-editor/blob/master/docs/code-generation/uml-to-code.md ) >>> and one for VW syntax ( https://github.com/OpenPonk/cl >>> ass-editor/blob/master/docs/vw-code-generation/pim-psm.md ) >>> >>> (the code is here https://github.com/OpenPonk/cl >>> ass-editor/tree/master/repository/DynaCASE-Generator.package and here >>> https://github.com/OpenPonk/class-editor/tree/master/reposit >>> ory/UML-CodeGenerator.package ) >>> >>> The most pain I had was with expressing templateable code to which I >>> could just plug specific data, I wanted to look at QVT but didn't have the >>> time yet. >>> But it would be interesting to see if your generator could address such >>> issues; plus soon I want to iterate on my generators to have more live >>> interaction (so the code is generated on the fly as the model is created, >>> although I am using Pharo Refactoring engine for now, which is also quite >>> powerful.) >>> >>> Addionally, Lionel (in cc) is working on some meta system generating >>> classes with magritte descriptions. >>> >>> So it would be cool if we could have some really cool generator that >>> could do many cool things. :) >>> >>> Peter >>> >>> On Tue, Oct 18, 2016 at 02:24:28AM -0300, Hernán Morales Durand wrote: >>> > Hi guys, >>> > >>> > I am writing a code generator, doing a few iterations right now. >>> > I want your opinion, which most useful thing would you like to be >>> generated >>> > automatically? It could be a pattern, an idiom, another language... >>> > >>> > For example my own wish (roadmap) list: >>> > >>> > - A "settings framework" settings class generator. >>> > - A state machine generator (based in the excellent paper of Trevor P. >>> > Hopkins) >>> > - A Spec UI generator. >>> > >>> > Let me know your thoughts. >>> > >>> > Cheers, >>> > >>> > Hernán >>> >> >> > >