This paper first analyzes the significance of applying mixed teaching to the“Python Language Programming”course,briefly describes the current state of teaching in“Python Language Programming,”and discusses strateg...This paper first analyzes the significance of applying mixed teaching to the“Python Language Programming”course,briefly describes the current state of teaching in“Python Language Programming,”and discusses strategies for reforming mixed teaching approaches.The goal is to provide a reference for the innovative development of teaching the“Python Language Programming”course.展开更多
From a perspective of theoretical study, there are some faults in the models of the existing object-oriented programming languages. For example, C# does not support metaclasses, the primitive types of Java and C# are ...From a perspective of theoretical study, there are some faults in the models of the existing object-oriented programming languages. For example, C# does not support metaclasses, the primitive types of Java and C# are not objects, etc. So, this paper designs a programming language, Shrek, which integrates many language features and constructions in a compact and consistent model. The Shrek language is a class-based purely object-oriented language. It has a dynamical strong type system, and adopts a single-inheritance mechanism with Mixin as its complement. It has a consistent class instantiation and inheritance structure, and the ability of intercessive structural computational reflection, which enables it to support safe metaclass programming. It also supports multi-thread programming and automatic garbage collection, and enforces its expressive power by adopting a native method mechanism. The prototype system of the Shrek language is implemented and anticipated design goals are achieved.展开更多
Learning programming and using programming languages are the essential aspects of computer science education.Students use programming languages to write their programs.These computer programs(students or practitioners...Learning programming and using programming languages are the essential aspects of computer science education.Students use programming languages to write their programs.These computer programs(students or practitioners written)make computers artificially intelligent and perform the tasks needed by the users.Without these programs,the computer may be visioned as a pointless machine.As the premise of writing programs is situated with specific programming languages,enormous efforts have been made to develop and create programming languages.However,each program-ming language is domain-specific and has its nuances,syntax and seman-tics,with specific pros and cons.These language-specific details,including syntax and semantics,are significant hurdles for novice programmers.Also,the instructors of introductory programming courses find these language specificities as the biggest hurdle in students learning,where more focus is on syntax than logic development and actual implementation of the program.Considering the conceptual difficulty of programming languages and novice students’struggles with the language syntax,this paper describes the design and development of a Context-Free Grammar(CFG)of a programming language for the novice,newcomers and students who do not have computer science as their major.Due to its syntax proximity to daily conversations,this paper hypothesizes that this language will be easy to use and understand by novice programmers.This paper systematically designed the language by identifying themes from various existing programming languages(e.g.,C,Python).Additionally,this paper surveyed computer science experts from industry and academia,where experts self-reported their satisfaction with the newly designed language.The results indicate that 93%of the experts reported satisfaction with the NewBee for novice,newcomer and non-Computer Sci-ence(CS)major students.展开更多
Data are limitless. But those are usually not formed or created in our needs. Most of data providers deliver their data in Microsoft Excel spreadsheet, which is compatible with ArcGIS, the most widely used GIS (Geogr...Data are limitless. But those are usually not formed or created in our needs. Most of data providers deliver their data in Microsoft Excel spreadsheet, which is compatible with ArcGIS, the most widely used GIS (Geographic Information System) software in GIS sector. However, those table data contain much unnecessary information that do not need for a certain project. Using the raw data can increase processing times and reduce performance of geoprocessing tools. This study shows steps of how the raw data are being processed using ArcGIS ModelBuilder and Python script.展开更多
AOPLID is a novel agent oriented programming language whose theoretical framework is the existed situation calculus theory and agent model based on intention driven manner. An AOPLID program is represented in set ma...AOPLID is a novel agent oriented programming language whose theoretical framework is the existed situation calculus theory and agent model based on intention driven manner. An AOPLID program is represented in set manner. In this paper, an off line AOPLID interpreter in Prolog is implemented, based on the off line AOPLID program semantics. At the same time, the set of rules is given which transforms an AOPLID program represented by sets into Prolog clauses so that it can be interpreted by the off line interpreter. Finally, the sound codes of the off line interpreter are listed.展开更多
The current financial education framework has an increasing need to introduce tools that facilitate the application of theoretical models to real-world data and contexts.However,only a limited number of free tools are...The current financial education framework has an increasing need to introduce tools that facilitate the application of theoretical models to real-world data and contexts.However,only a limited number of free tools are available for this purpose.Given this lack of tools,the present study provides two approaches to facilitate the implementa-tion of an event study.The first approach consists of a set of MS Excel files based on the Fama–French five-factor model,which allows the application of the event study methodology in a semi-automatic manner.The second approach is an open-source R-programmed tool through which results can be obtained in the context of an event study without the need for programming knowledge.This tool widens the calculus possibilities provided by the first approach and offers the option to apply not only the Fama–French five-factor model but also other models that are common in the finan-cial literature.It is a user-friendly tool that enables reproducibility of the analysis and ensures that the calculations are free of manipulation errors.Both approaches are freely available and ready-to-use.展开更多
The paper presents an analysis of computer programming languages based on the semiotics of Charles S. Peirce. The author describes how such languages could evolve in order to achieve some of the expressive characteris...The paper presents an analysis of computer programming languages based on the semiotics of Charles S. Peirce. The author describes how such languages could evolve in order to achieve some of the expressive characteristics of natural languages. This description evinces otherwise unnoticed differences between natural languages and programming languages, showing that Peircean semiotics is an efficient analysis tool. This suggests further research on the technical features needed to implement an easier way to program computers.展开更多
This paper analyzes some problems of the current teaching situation in the course High-level Programming Language,such as the lagging content of the course compared with technology development,the emphasis on theory r...This paper analyzes some problems of the current teaching situation in the course High-level Programming Language,such as the lagging content of the course compared with technology development,the emphasis on theory rather than on practice,the low enthusiasm of students for learning,and the weak practical ability of students.In response to the needs of enterprises for talents under the background of New Engineering,especially the cultivation of students’adaptability and practical abilities towards future industries to improve students’knowledge and problemsolving abilities to keep up with the modern technology,this paper proposes the ways and methods to reform and explore the teaching content and teaching methods by integrating industry and education,assisting teaching according to industrial demands,and lowering technology barriers of new technology.The practical effect is evaluated through a survey in class and the follow-up questionnaire after class,and the results show that the effect of the practice is effective.展开更多
<div style="text-align:justify;"> <span style="font-family:Verdana;">Though many different readability metrics have been created, there still is no universal agreement defining readabil...<div style="text-align:justify;"> <span style="font-family:Verdana;">Though many different readability metrics have been created, there still is no universal agreement defining readability of software source code. The lack of a clear agreement of source code readability has ramifications in many areas of the software development life-cycle, not least of which being software maintainability. We propose a measurement based on Linguistic Economy to bridge the gap between mathematical and behavioral aspects. Linguistic Economy describes efficiencies of speech and is generally applied to natural languages. In our study, we create a large corpus of words that are likely to be found in a programmer’s vocabulary, and a corpus of existing identifiers found in a collection of open-source projects. We perform a usage analysis to create a database from both of these corpora. Linguistic Economy suggests that words requiring less effort to speak are used more often than words requiring more effort. This concept is applied to measure how difficult program identifiers are to understand by extracting them from the program source and comparing their usage to the database. Through this process, we can identify source code that programmers find difficult to review. We validate our work using data from a survey where programmers identified unpleasant to review source files. The results indicate that source files identified as unpleasant to review source code have more linguistically complicated identifiers than pleasant programs.</span> </div>展开更多
<span style="font-family:Verdana;">Students face difficulties in programming languages learning (PLL) which encourages many scholars to investigate the factors behind that. Although there a number of p...<span style="font-family:Verdana;">Students face difficulties in programming languages learning (PLL) which encourages many scholars to investigate the factors behind that. Although there a number of positive and negative factors found to be effective in PLL procedure, utilising online tools in PLL were recognized as a positive recommended means. This motivates many researchers to provide solutions and proposals which result in a number of choices and options. However, categorising those efforts and showing what has been done, would provide a better and clear image for future studies. Therefore, this paper aims to conduct a systematic literature review to show what studies have been done and then categorise them based on the type of online tools and the aims of the research. The study follows Kitchenham and Charters guidelines for writing SLR (Systematic Literature Review). The search result reached 1390 publications between 2013-09/2018. After the filtration which has been done through selected criteria, 160 publications were found to be adequate to answer the review questions. The main results of this systematic review are categorizing the aims of the studies in online PLL tools, classifying the tools and finding the current trends of the online PLL tools.</span>展开更多
C Language is a basic programming language and a compulsory foundation course for majors of science and engineering. Subjected to teaching periods,students have no time to do enough concrete integrated exercises. In t...C Language is a basic programming language and a compulsory foundation course for majors of science and engineering. Subjected to teaching periods,students have no time to do enough concrete integrated exercises. In teaching of C programming language design, both teachers and students have some problems. On the one hand teachers should change their teaching ideology, on the other hand,students should spontaneously study and improve their study motivation. In this way, students will improve their programming ability and apply what they learn comprehensively.展开更多
Agent-oriented programming (AOP) is a framework to develop agents, and it aims to link the gap betweentheory and practical in agent research. The core of an AOP framework is its language and semantics. In this paper,w...Agent-oriented programming (AOP) is a framework to develop agents, and it aims to link the gap betweentheory and practical in agent research. The core of an AOP framework is its language and semantics. In this paper,we propose the necessary properties which agents should have, and then give a summary and analysis about differentAOP languages based on these properties.展开更多
PARCS (Parallel Asynchronous Recursive Control System) programming tools that allow unified add-on parallel extensions over traditional programming languages are described. The PARCS model is based on the conception o...PARCS (Parallel Asynchronous Recursive Control System) programming tools that allow unified add-on parallel extensions over traditional programming languages are described. The PARCS model is based on the conception of a control space, which is used to describe parallel interacting processes. Structurally, the control space consists of addressable “points” and “channels”. Executing modules are assigned to points and communicate through channels connecting points. Recursive embeddings of processes are allowed. The effective implementation of PARCS on cloud platforms Microsoft AZURE and Amazon EC2 is also presented.展开更多
Business process execution language(BPEL)is a most recognized standard workflow language.However,it is difficult to be used in the ubiquitous system computing environment because it is difficult to describe the contex...Business process execution language(BPEL)is a most recognized standard workflow language.However,it is difficult to be used in the ubiquitous system computing environment because it is difficult to describe the context information in the selection of the flow through the branch.To solve this problem,we propose a new BPEL workflow system with context-awareness by using aspect-oriented programming(AOP).This system is composed of a BPEL system module and a weaving module using AOP for context-aware.The BPEL system module generates a BPEL workflow program.And the weaving module converts a context-aware mark-up language(CAML)document to the aspect-oriented program that is applied to context-aware code without modification of the existing BPEL document.We also define a new document form that is called CAML,which provides a context-aware that is not available in BPEL.The system can generate a context-aware workflow program.It is developed in a way that inserts context information using AOP to provide context-aware services.展开更多
During the last years, we have developed the FLOPER platform for providing a practical support to the so-called Multi-Adjoint Logic Programming approach (MALP in brief), which represents an extremely flexible framewor...During the last years, we have developed the FLOPER platform for providing a practical support to the so-called Multi-Adjoint Logic Programming approach (MALP in brief), which represents an extremely flexible framework into the Fuzzy Logic Programming arena. Nowadays, FLOPER is useful for compiling (to standard Prolog code), executing and debugging (by drawing execution trees) MALP programs, and it is ready for being extended in the near future with powerful transformation and optimization techniques designed in our research group during the recent past. Our last update consists in the integration of a graphical interface for a comfortable interaction with the system which allows, among other capabilities, the use of projects for packing scripts and auxiliary definitions of fuzzy sets/connectives, together with fuzzy programs and their associated lattices modeling truth-degrees beyond the simpler crisp case ﹛true;false﹜.展开更多
An educational programming language is a programming language that is designed primarily as a learning instrument and not so much as a tool for writing programs for production. Three-dimensional (3D) interactive anima...An educational programming language is a programming language that is designed primarily as a learning instrument and not so much as a tool for writing programs for production. Three-dimensional (3D) interactive animations provide an effective means to engage the attention of the audience to learn programming language. Traditionally, creating 3D games had been difficult as it requires specialized programming skills. However, it had been proven that the state-transition diagram, which is the most fundamental principle for automata, is intuitively so comprehensive that even children can create programs for interactive animations and video games in the two-dimensional world. Islay3D is a programming environment for authoring interactive 3D animations based on this concept. In this paper, the Islay3D animation language is introduced, where a character is modeled as an object, and its behavior is defined in term of a set of state-transition diagrams. The interpretation of the state-transition diagrams to JavaScript is also presented. Finally, the web-based programming environment is introduced. With the web-based platform, the public will be able express their creativity in creating interactive 3D animations and video games easily from within their browser.展开更多
INTRODUCTION Although visual programming is being broadly implemented in other disciplines,it has only relatively recently become an important supplement to three-dimensional modeling programs in the architecture,engi...INTRODUCTION Although visual programming is being broadly implemented in other disciplines,it has only relatively recently become an important supplement to three-dimensional modeling programs in the architecture,engineering,and construction industry.Currently,Grasshopper in conjunction with Rhino is a leading example of a visual programming environment that is strongly supported by a user community that is developing additional functionality,but Grasshopper does not yet work directly with building information modeling(BIM)software.Dynamo is relatively new,but shows considerable promise in becoming a constructive tool to complement BIM,3D modeling,and analysis programs because it includes parametric geom-etries and works with Revit,a leading BIM software program.Three case studies are described:extensibility of Dynamo through the use of a building energy simu-lation package,controlling a virtual model’s response through light level sensors,and interactively updating shading components for a building facade based on solar angles.They demonstrate that one can work directly within building information models(BIM)using a visual programming language through updating component parameters.These case studies demonstrate the feasibility of a workflow for sustain-able design simulations that is different than that more commonly used--having a separation between design and analysis models and using a neutral file format exchange such as IFC or gbXML to transfer data.As visual programming languages are still a bit uncommon in the building industry,a short background is provided to place them within the tool set of other customizable tools that designers have been developing.展开更多
文摘This paper first analyzes the significance of applying mixed teaching to the“Python Language Programming”course,briefly describes the current state of teaching in“Python Language Programming,”and discusses strategies for reforming mixed teaching approaches.The goal is to provide a reference for the innovative development of teaching the“Python Language Programming”course.
基金The National Science Fund for Distinguished Young Scholars (No.60425206)the National Natural Science Foundation of China (No.60633010)the Natural Science Foundation of Jiangsu Province(No.BK2006094)
文摘From a perspective of theoretical study, there are some faults in the models of the existing object-oriented programming languages. For example, C# does not support metaclasses, the primitive types of Java and C# are not objects, etc. So, this paper designs a programming language, Shrek, which integrates many language features and constructions in a compact and consistent model. The Shrek language is a class-based purely object-oriented language. It has a dynamical strong type system, and adopts a single-inheritance mechanism with Mixin as its complement. It has a consistent class instantiation and inheritance structure, and the ability of intercessive structural computational reflection, which enables it to support safe metaclass programming. It also supports multi-thread programming and automatic garbage collection, and enforces its expressive power by adopting a native method mechanism. The prototype system of the Shrek language is implemented and anticipated design goals are achieved.
基金supported by the startup fund provided to Dr.Saira Anwar by Texas A&M University,College Station,USA.Any opinions,findings,conclusion,or recommendations expressed in this material do not necessarily reflect those of Texas A&M University。
文摘Learning programming and using programming languages are the essential aspects of computer science education.Students use programming languages to write their programs.These computer programs(students or practitioners written)make computers artificially intelligent and perform the tasks needed by the users.Without these programs,the computer may be visioned as a pointless machine.As the premise of writing programs is situated with specific programming languages,enormous efforts have been made to develop and create programming languages.However,each program-ming language is domain-specific and has its nuances,syntax and seman-tics,with specific pros and cons.These language-specific details,including syntax and semantics,are significant hurdles for novice programmers.Also,the instructors of introductory programming courses find these language specificities as the biggest hurdle in students learning,where more focus is on syntax than logic development and actual implementation of the program.Considering the conceptual difficulty of programming languages and novice students’struggles with the language syntax,this paper describes the design and development of a Context-Free Grammar(CFG)of a programming language for the novice,newcomers and students who do not have computer science as their major.Due to its syntax proximity to daily conversations,this paper hypothesizes that this language will be easy to use and understand by novice programmers.This paper systematically designed the language by identifying themes from various existing programming languages(e.g.,C,Python).Additionally,this paper surveyed computer science experts from industry and academia,where experts self-reported their satisfaction with the newly designed language.The results indicate that 93%of the experts reported satisfaction with the NewBee for novice,newcomer and non-Computer Sci-ence(CS)major students.
文摘Data are limitless. But those are usually not formed or created in our needs. Most of data providers deliver their data in Microsoft Excel spreadsheet, which is compatible with ArcGIS, the most widely used GIS (Geographic Information System) software in GIS sector. However, those table data contain much unnecessary information that do not need for a certain project. Using the raw data can increase processing times and reduce performance of geoprocessing tools. This study shows steps of how the raw data are being processed using ArcGIS ModelBuilder and Python script.
文摘AOPLID is a novel agent oriented programming language whose theoretical framework is the existed situation calculus theory and agent model based on intention driven manner. An AOPLID program is represented in set manner. In this paper, an off line AOPLID interpreter in Prolog is implemented, based on the off line AOPLID program semantics. At the same time, the set of rules is given which transforms an AOPLID program represented by sets into Prolog clauses so that it can be interpreted by the off line interpreter. Finally, the sound codes of the off line interpreter are listed.
基金the Secretaria d’Universitats i Recerca del Departament d’Empresa i Coneixement of the Catalan government,and to Universitat Ramon Llull for their financial support.The financial support for this work did not influence its outcome.
文摘The current financial education framework has an increasing need to introduce tools that facilitate the application of theoretical models to real-world data and contexts.However,only a limited number of free tools are available for this purpose.Given this lack of tools,the present study provides two approaches to facilitate the implementa-tion of an event study.The first approach consists of a set of MS Excel files based on the Fama–French five-factor model,which allows the application of the event study methodology in a semi-automatic manner.The second approach is an open-source R-programmed tool through which results can be obtained in the context of an event study without the need for programming knowledge.This tool widens the calculus possibilities provided by the first approach and offers the option to apply not only the Fama–French five-factor model but also other models that are common in the finan-cial literature.It is a user-friendly tool that enables reproducibility of the analysis and ensures that the calculations are free of manipulation errors.Both approaches are freely available and ready-to-use.
文摘The paper presents an analysis of computer programming languages based on the semiotics of Charles S. Peirce. The author describes how such languages could evolve in order to achieve some of the expressive characteristics of natural languages. This description evinces otherwise unnoticed differences between natural languages and programming languages, showing that Peircean semiotics is an efficient analysis tool. This suggests further research on the technical features needed to implement an easier way to program computers.
文摘This paper analyzes some problems of the current teaching situation in the course High-level Programming Language,such as the lagging content of the course compared with technology development,the emphasis on theory rather than on practice,the low enthusiasm of students for learning,and the weak practical ability of students.In response to the needs of enterprises for talents under the background of New Engineering,especially the cultivation of students’adaptability and practical abilities towards future industries to improve students’knowledge and problemsolving abilities to keep up with the modern technology,this paper proposes the ways and methods to reform and explore the teaching content and teaching methods by integrating industry and education,assisting teaching according to industrial demands,and lowering technology barriers of new technology.The practical effect is evaluated through a survey in class and the follow-up questionnaire after class,and the results show that the effect of the practice is effective.
文摘<div style="text-align:justify;"> <span style="font-family:Verdana;">Though many different readability metrics have been created, there still is no universal agreement defining readability of software source code. The lack of a clear agreement of source code readability has ramifications in many areas of the software development life-cycle, not least of which being software maintainability. We propose a measurement based on Linguistic Economy to bridge the gap between mathematical and behavioral aspects. Linguistic Economy describes efficiencies of speech and is generally applied to natural languages. In our study, we create a large corpus of words that are likely to be found in a programmer’s vocabulary, and a corpus of existing identifiers found in a collection of open-source projects. We perform a usage analysis to create a database from both of these corpora. Linguistic Economy suggests that words requiring less effort to speak are used more often than words requiring more effort. This concept is applied to measure how difficult program identifiers are to understand by extracting them from the program source and comparing their usage to the database. Through this process, we can identify source code that programmers find difficult to review. We validate our work using data from a survey where programmers identified unpleasant to review source files. The results indicate that source files identified as unpleasant to review source code have more linguistically complicated identifiers than pleasant programs.</span> </div>
文摘<span style="font-family:Verdana;">Students face difficulties in programming languages learning (PLL) which encourages many scholars to investigate the factors behind that. Although there a number of positive and negative factors found to be effective in PLL procedure, utilising online tools in PLL were recognized as a positive recommended means. This motivates many researchers to provide solutions and proposals which result in a number of choices and options. However, categorising those efforts and showing what has been done, would provide a better and clear image for future studies. Therefore, this paper aims to conduct a systematic literature review to show what studies have been done and then categorise them based on the type of online tools and the aims of the research. The study follows Kitchenham and Charters guidelines for writing SLR (Systematic Literature Review). The search result reached 1390 publications between 2013-09/2018. After the filtration which has been done through selected criteria, 160 publications were found to be adequate to answer the review questions. The main results of this systematic review are categorizing the aims of the studies in online PLL tools, classifying the tools and finding the current trends of the online PLL tools.</span>
文摘C Language is a basic programming language and a compulsory foundation course for majors of science and engineering. Subjected to teaching periods,students have no time to do enough concrete integrated exercises. In teaching of C programming language design, both teachers and students have some problems. On the one hand teachers should change their teaching ideology, on the other hand,students should spontaneously study and improve their study motivation. In this way, students will improve their programming ability and apply what they learn comprehensively.
文摘Agent-oriented programming (AOP) is a framework to develop agents, and it aims to link the gap betweentheory and practical in agent research. The core of an AOP framework is its language and semantics. In this paper,we propose the necessary properties which agents should have, and then give a summary and analysis about differentAOP languages based on these properties.
文摘PARCS (Parallel Asynchronous Recursive Control System) programming tools that allow unified add-on parallel extensions over traditional programming languages are described. The PARCS model is based on the conception of a control space, which is used to describe parallel interacting processes. Structurally, the control space consists of addressable “points” and “channels”. Executing modules are assigned to points and communicate through channels connecting points. Recursive embeddings of processes are allowed. The effective implementation of PARCS on cloud platforms Microsoft AZURE and Amazon EC2 is also presented.
基金Basic Science Research Program through the National Research Foundation of Korea(NRF)funded by the Ministry of Education,Science and Technology(No.2010-0025831)
文摘Business process execution language(BPEL)is a most recognized standard workflow language.However,it is difficult to be used in the ubiquitous system computing environment because it is difficult to describe the context information in the selection of the flow through the branch.To solve this problem,we propose a new BPEL workflow system with context-awareness by using aspect-oriented programming(AOP).This system is composed of a BPEL system module and a weaving module using AOP for context-aware.The BPEL system module generates a BPEL workflow program.And the weaving module converts a context-aware mark-up language(CAML)document to the aspect-oriented program that is applied to context-aware code without modification of the existing BPEL document.We also define a new document form that is called CAML,which provides a context-aware that is not available in BPEL.The system can generate a context-aware workflow program.It is developed in a way that inserts context information using AOP to provide context-aware services.
文摘During the last years, we have developed the FLOPER platform for providing a practical support to the so-called Multi-Adjoint Logic Programming approach (MALP in brief), which represents an extremely flexible framework into the Fuzzy Logic Programming arena. Nowadays, FLOPER is useful for compiling (to standard Prolog code), executing and debugging (by drawing execution trees) MALP programs, and it is ready for being extended in the near future with powerful transformation and optimization techniques designed in our research group during the recent past. Our last update consists in the integration of a graphical interface for a comfortable interaction with the system which allows, among other capabilities, the use of projects for packing scripts and auxiliary definitions of fuzzy sets/connectives, together with fuzzy programs and their associated lattices modeling truth-degrees beyond the simpler crisp case ﹛true;false﹜.
文摘An educational programming language is a programming language that is designed primarily as a learning instrument and not so much as a tool for writing programs for production. Three-dimensional (3D) interactive animations provide an effective means to engage the attention of the audience to learn programming language. Traditionally, creating 3D games had been difficult as it requires specialized programming skills. However, it had been proven that the state-transition diagram, which is the most fundamental principle for automata, is intuitively so comprehensive that even children can create programs for interactive animations and video games in the two-dimensional world. Islay3D is a programming environment for authoring interactive 3D animations based on this concept. In this paper, the Islay3D animation language is introduced, where a character is modeled as an object, and its behavior is defined in term of a set of state-transition diagrams. The interpretation of the state-transition diagrams to JavaScript is also presented. Finally, the web-based programming environment is introduced. With the web-based platform, the public will be able express their creativity in creating interactive 3D animations and video games easily from within their browser.
文摘INTRODUCTION Although visual programming is being broadly implemented in other disciplines,it has only relatively recently become an important supplement to three-dimensional modeling programs in the architecture,engineering,and construction industry.Currently,Grasshopper in conjunction with Rhino is a leading example of a visual programming environment that is strongly supported by a user community that is developing additional functionality,but Grasshopper does not yet work directly with building information modeling(BIM)software.Dynamo is relatively new,but shows considerable promise in becoming a constructive tool to complement BIM,3D modeling,and analysis programs because it includes parametric geom-etries and works with Revit,a leading BIM software program.Three case studies are described:extensibility of Dynamo through the use of a building energy simu-lation package,controlling a virtual model’s response through light level sensors,and interactively updating shading components for a building facade based on solar angles.They demonstrate that one can work directly within building information models(BIM)using a visual programming language through updating component parameters.These case studies demonstrate the feasibility of a workflow for sustain-able design simulations that is different than that more commonly used--having a separation between design and analysis models and using a neutral file format exchange such as IFC or gbXML to transfer data.As visual programming languages are still a bit uncommon in the building industry,a short background is provided to place them within the tool set of other customizable tools that designers have been developing.