首页 > 最新文献

Computer Languages最新文献

英文 中文
Simulating multiple inheritance and generics in Java 在Java中模拟多重继承和泛型
Pub Date : 1999-12-01 DOI: 10.1016/S0096-0551(00)00005-9
Krishnaprasad Thirunarayan , Günter Kniesel , Haripriyan Hampapuram

This paper presents Java language from an object-oriented software construction perspective. It explains the implications of banning generics and multiple inheritance of classes, and explores the patterns and the idioms used by the Java designers and programmers to redeem their benefits. The paper also discusses an alternative to multiple inheritance, as incorporated in Lava, which extends Java with constructs for type-safe automatic forwarding.

本文从面向对象的软件构造角度介绍了Java语言。它解释了禁止类的泛型和多重继承的含义,并探讨了Java设计人员和程序员用来弥补其优点的模式和习惯用法。本文还讨论了一种替代多重继承的方法,就像在Lava中所包含的那样,它通过类型安全自动转发的构造扩展了Java。
{"title":"Simulating multiple inheritance and generics in Java","authors":"Krishnaprasad Thirunarayan ,&nbsp;Günter Kniesel ,&nbsp;Haripriyan Hampapuram","doi":"10.1016/S0096-0551(00)00005-9","DOIUrl":"10.1016/S0096-0551(00)00005-9","url":null,"abstract":"<div><p>This paper presents Java language from an object-oriented software construction perspective. It explains the implications of banning generics and multiple inheritance of classes, and explores the patterns and the idioms used by the Java designers and programmers to redeem their benefits. The paper also discusses an alternative to multiple inheritance, as incorporated in Lava, which extends Java with constructs for type-safe automatic forwarding.</p></div>","PeriodicalId":100315,"journal":{"name":"Computer Languages","volume":"25 4","pages":"Pages 189-210"},"PeriodicalIF":0.0,"publicationDate":"1999-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://sci-hub-pdf.com/10.1016/S0096-0551(00)00005-9","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"87417007","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 22
Synchronization abstraction in the BETA programming language 在BETA编程语言中的同步抽象
Pub Date : 1999-10-01 DOI: 10.1016/S0096-0551(00)00004-7
Kasper Østerbye , Wolfgang Kreutzer

This paper argues that synchronization of processes need not be part of the core of a programming language, but that they can just as well be built from existing abstractions — provided these are sufficiently flexible and general. BETA’s notion of patterns meets these requirements and we demonstrate the validity of our claims within this context. While discussing the use of patterns of synchronization and their implementation in BETA, we focus on a number of examples taken from BetaSIM, a high-level framework for discrete event simulation. The paper concludes with a discussion on how these ideas can be applied to other modern object-based programming languages, such as Java or Ada.

本文认为进程的同步不需要成为编程语言核心的一部分,但它们也可以从现有的抽象中构建——只要这些抽象足够灵活和通用。BETA的模式概念满足了这些要求,我们在此上下文中证明了我们声明的有效性。在讨论同步模式的使用及其在BETA中的实现时,我们将重点关注来自BetaSIM的一些示例,BetaSIM是用于离散事件模拟的高级框架。本文最后讨论了如何将这些思想应用于其他现代的基于对象的编程语言,如Java或Ada。
{"title":"Synchronization abstraction in the BETA programming language","authors":"Kasper Østerbye ,&nbsp;Wolfgang Kreutzer","doi":"10.1016/S0096-0551(00)00004-7","DOIUrl":"10.1016/S0096-0551(00)00004-7","url":null,"abstract":"<div><p>This paper argues that synchronization of processes need not be part of the core of a programming language, but that they can just as well be built from existing abstractions — provided these are sufficiently flexible and general. BETA’s notion of patterns meets these requirements and we demonstrate the validity of our claims within this context. While discussing the use of patterns of synchronization and their implementation in BETA, we focus on a number of examples taken from BetaSIM, a high-level framework for discrete event simulation. The paper concludes with a discussion on how these ideas can be applied to other modern object-based programming languages, such as Java or Ada.</p></div>","PeriodicalId":100315,"journal":{"name":"Computer Languages","volume":"25 3","pages":"Pages 165-187"},"PeriodicalIF":0.0,"publicationDate":"1999-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://sci-hub-pdf.com/10.1016/S0096-0551(00)00004-7","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"80885135","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 7
A finest partitioning algorithm for attribute grammars 属性语法的最佳划分算法
Pub Date : 1999-10-01 DOI: 10.1016/S0096-0551(00)00003-5
Wuu Yang

The attribute dependence graph of a syntax tree may be partitioned into disjoint regions. Attribute instances in different regions are independent of one other. The advantages of partitioning the attribute dependence graph include simplifying the attribute grammar conceptually and allowing the possibility of parallel evaluation. We present a static partitioning algorithm for attribute grammars. The algorithm builds the set of all feasible partitions for every production by analyzing the grammar. After the attributed syntax tree is constructed, one of the feasible partitions is chosen for each production instance in the syntax tree. Gluing together the selected partitions for individual production instances results in a partition of the attribute dependence graph of the syntax tree. No further merging or partitioning is needed at evaluation time. In addition to static partitioning, the algorithm always produces the finest partition of every attribute dependence graph. An application of the partitioning technique is the strictness analysis for a simple programming language that contains no higher-order functions.

语法树的属性依赖图可能被分割成不相交的区域。不同区域中的属性实例彼此独立。属性依赖图划分的优点在于从概念上简化了属性语法,并允许并行求值。提出了一种属性语法的静态划分算法。该算法通过分析语法为每个产品构建所有可行分区的集合。构造了属性语法树之后,为语法树中的每个生产实例选择一个可行分区。将各个生产实例的选定分区粘合在一起,生成语法树的属性依赖图的分区。在评估时不需要进一步合并或分区。除了静态划分外,该算法总是对每个属性依赖图产生最优的划分。划分技术的一个应用是对不包含高阶函数的简单编程语言进行严格性分析。
{"title":"A finest partitioning algorithm for attribute grammars","authors":"Wuu Yang","doi":"10.1016/S0096-0551(00)00003-5","DOIUrl":"10.1016/S0096-0551(00)00003-5","url":null,"abstract":"<div><p>The attribute dependence graph of a syntax tree may be partitioned into disjoint regions. Attribute instances in different regions are independent of one other. The advantages of partitioning the attribute dependence graph include simplifying the attribute grammar conceptually and allowing the possibility of parallel evaluation. We present a static partitioning algorithm for attribute grammars. The algorithm builds the set of all feasible partitions for every production by analyzing the grammar. After the attributed syntax tree is constructed, one of the feasible partitions is chosen for each production instance in the syntax tree. Gluing together the selected partitions for individual production instances results in a partition of the attribute dependence graph of the syntax tree. No further merging or partitioning is needed at evaluation time. In addition to static partitioning, the algorithm always produces the finest partition of every attribute dependence graph. An application of the partitioning technique is the strictness analysis for a simple programming language that contains no higher-order functions.</p></div>","PeriodicalId":100315,"journal":{"name":"Computer Languages","volume":"25 3","pages":"Pages 145-164"},"PeriodicalIF":0.0,"publicationDate":"1999-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://sci-hub-pdf.com/10.1016/S0096-0551(00)00003-5","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"75159053","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 4
An execution scheme for interactive problem-solving in concurrent constraint logic programming languages 并发约束逻辑编程语言中交互式问题解决的执行方案
Pub Date : 1999-10-01 DOI: 10.1016/S0096-0551(99)00013-2
Jimmy H.M. Lee, Ho-fung Leung

Van Emden’s incremental queries address the inadequacy of current Prolog-style querying mechanism in most logic programming systems for interactive problem-solving. In the context of constraint logic programming, incremental queries involve adding new constraints or deleting old ones from a query after a solution is found. This paper presents an implementation scheme IQ of incremental queries in Constraint Pandora, which defines a class of non-deterministic concurrent constraint logic programming languages. We use Van Hentenryck and Le Provost’s scheme (VHLP-scheme hereafter), a re-execution approach, as a starting point. Re-execution is costly in concurrent languages, in which process creation and inter-process communications are common operations. The main idea of IQ is that the basic trail unwinding operation used in backtracking is more efficient than re-execution in reaching an execution context along a recorded execution path. We modify the conventional trail-unwinding operation in such a way that constraints are used actively to prune the search space. Analysis shows that the IQ-scheme is at least as efficient as the VHLP-scheme in sequential systems and is much more efficient in concurrent systems. We show the feasibility of our proposal by incorporating the IQ-scheme into IFD-Constraint Pandora, an instance of Constraint Pandora supporting interval and finite domain constraint solving. Our preliminary results agree with that of theoretical analysis.

Van Emden的增量查询解决了当前大多数逻辑编程系统中prolog风格的查询机制在交互式问题解决方面的不足。在约束逻辑编程的上下文中,增量查询涉及在找到解决方案后从查询中添加新约束或删除旧约束。本文提出了一种约束潘多拉中增量查询的实现方案IQ,该方案定义了一类不确定并发约束逻辑编程语言。我们使用Van henenryck和Le Provost的方案(以下简称vhlp方案),一种重新执行的方法,作为起点。在并发语言中,重新执行的代价很高,在并发语言中,进程创建和进程间通信是常见的操作。IQ的主要思想是回溯中使用的基本轨迹展开操作比沿着记录的执行路径到达执行上下文的重新执行更有效。我们修改了传统的尾部展开操作,这样就可以主动使用约束来精简搜索空间。分析表明,iq方案在顺序系统中至少与vhp方案一样高效,而在并发系统中效率更高。我们通过将IQ-scheme结合到IFD-Constraint Pandora(约束Pandora支持区间和有限域约束求解的实例)中来证明了我们的建议的可行性。初步结果与理论分析一致。
{"title":"An execution scheme for interactive problem-solving in concurrent constraint logic programming languages","authors":"Jimmy H.M. Lee,&nbsp;Ho-fung Leung","doi":"10.1016/S0096-0551(99)00013-2","DOIUrl":"10.1016/S0096-0551(99)00013-2","url":null,"abstract":"<div><p>Van Emden’s <em>incremental queries</em> address the inadequacy of current Prolog-style querying mechanism in most logic programming systems for interactive problem-solving. In the context of constraint logic programming, incremental queries involve adding new constraints or deleting old ones from a query after a solution is found. This paper presents an implementation scheme IQ of incremental queries in Constraint Pandora, which defines a class of non-deterministic concurrent constraint logic programming languages. We use Van Hentenryck and Le Provost’s scheme (VHLP-scheme hereafter), a re-execution approach, as a starting point. Re-execution is costly in concurrent languages, in which process creation and inter-process communications are common operations. The main idea of IQ is that the basic trail unwinding operation used in backtracking is more efficient than re-execution in reaching an execution context along a recorded execution path. We modify the conventional trail-unwinding operation in such a way that constraints are used actively to prune the search space. Analysis shows that the IQ-scheme is at least as efficient as the VHLP-scheme in sequential systems and is much more efficient in concurrent systems. We show the feasibility of our proposal by incorporating the IQ-scheme into IFD-Constraint Pandora, an instance of Constraint Pandora supporting interval and finite domain constraint solving. Our preliminary results agree with that of theoretical analysis.</p></div>","PeriodicalId":100315,"journal":{"name":"Computer Languages","volume":"25 3","pages":"Pages 119-144"},"PeriodicalIF":0.0,"publicationDate":"1999-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://sci-hub-pdf.com/10.1016/S0096-0551(99)00013-2","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"90754790","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
Mobile Processing in Distributed and Open Environments; Peter Sapaty. John Wiley and Sons, Inc. ISBN: 0-471-19572-3. 分布式和开放环境下的移动处理彼得Sapaty。约翰威利父子公司ISBN: 0-471-19572-3。
Pub Date : 1999-07-01 DOI: 10.1016/S0096-0551(99)00009-0
R.S Ledley
{"title":"Mobile Processing in Distributed and Open Environments; Peter Sapaty. John Wiley and Sons, Inc. ISBN: 0-471-19572-3.","authors":"R.S Ledley","doi":"10.1016/S0096-0551(99)00009-0","DOIUrl":"https://doi.org/10.1016/S0096-0551(99)00009-0","url":null,"abstract":"","PeriodicalId":100315,"journal":{"name":"Computer Languages","volume":"25 2","pages":"Pages 113-114"},"PeriodicalIF":0.0,"publicationDate":"1999-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://sci-hub-pdf.com/10.1016/S0096-0551(99)00009-0","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"92151046","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Building Microsoft SQL Server 7 Applications with COM; By Sanjiv Purba. John Wiley & Sons, Inc. ISBN: 0-471-19233-3. 用COM构建Microsoft SQL Server 7应用程序作者:Sanjiv Purba约翰威利父子公司ISBN: 0-471-19233-3。
Pub Date : 1999-07-01 DOI: 10.1016/S0096-0551(99)00010-7
R.S Ledley (Dr)
{"title":"Building Microsoft SQL Server 7 Applications with COM; By Sanjiv Purba. John Wiley & Sons, Inc. ISBN: 0-471-19233-3.","authors":"R.S Ledley (Dr)","doi":"10.1016/S0096-0551(99)00010-7","DOIUrl":"10.1016/S0096-0551(99)00010-7","url":null,"abstract":"","PeriodicalId":100315,"journal":{"name":"Computer Languages","volume":"25 2","pages":"Pages 114-115"},"PeriodicalIF":0.0,"publicationDate":"1999-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://sci-hub-pdf.com/10.1016/S0096-0551(99)00010-7","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"89880942","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Compositional Petri net models of advanced tasking in Ada-95 Ada-95中高级任务的成分Petri网模型
Pub Date : 1999-07-01 DOI: 10.1016/S0096-0551(99)00014-4
Ravi K. Gedela, Sol M. Shatz, Haiping Xu

The Ada language has been designed to support development of concurrent and distributed software. While the Ada-83 standard defined the basic mechanisms of rendezvous-based tasking, the Ada-95 standard significantly extended this capability with the introduction of several advanced tasking constructs. We present and discuss formal models of these key tasking constructs using the Petri net model. We also provide some formal evaluation of the models using one particular net-based method, invariant analysis. The constructs considered are the asynchronous transfer of control, the protected object, and the requeue statement. By modeling these advanced Ada tasking constructs with Petri nets, we obtain compositional models of the constructs that are complementary to earlier work in net-based modeling of Ada tasking, both in terms of defining precise behavior for tasking semantics, and also in terms of providing support for automated analysis of concurrent software.

Ada语言旨在支持并发和分布式软件的开发。Ada-83标准定义了基于约会的任务的基本机制,Ada-95标准通过引入几个高级任务结构显著扩展了这一功能。我们使用Petri网模型提出并讨论了这些关键任务结构的正式模型。我们还使用一种特殊的基于网络的方法,不变分析,对模型进行了一些正式的评估。所考虑的构造包括控制的异步传输、受保护对象和队列语句。通过用Petri网对这些高级的Ada任务构造建模,我们获得了这些构造的组合模型,这些模型是对早期基于网络的Ada任务建模工作的补充,无论是在定义任务语义的精确行为方面,还是在为并发软件的自动分析提供支持方面。
{"title":"Compositional Petri net models of advanced tasking in Ada-95","authors":"Ravi K. Gedela,&nbsp;Sol M. Shatz,&nbsp;Haiping Xu","doi":"10.1016/S0096-0551(99)00014-4","DOIUrl":"10.1016/S0096-0551(99)00014-4","url":null,"abstract":"<div><p>The Ada language has been designed to support development of concurrent and distributed software. While the Ada-83 standard defined the basic mechanisms of rendezvous-based tasking, the Ada-95 standard significantly extended this capability with the introduction of several advanced tasking constructs. We present and discuss formal models of these key tasking constructs using the Petri net model. We also provide some formal evaluation of the models using one particular net-based method, invariant analysis. The constructs considered are the asynchronous transfer of control, the protected object, and the requeue statement. By modeling these advanced Ada tasking constructs with Petri nets, we obtain compositional models of the constructs that are complementary to earlier work in net-based modeling of Ada tasking, both in terms of defining precise behavior for tasking semantics, and also in terms of providing support for automated analysis of concurrent software.</p></div>","PeriodicalId":100315,"journal":{"name":"Computer Languages","volume":"25 2","pages":"Pages 55-87"},"PeriodicalIF":0.0,"publicationDate":"1999-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://sci-hub-pdf.com/10.1016/S0096-0551(99)00014-4","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"81879746","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 9
Optimizing floating point operations in Scheme 在Scheme中优化浮点运算
Pub Date : 1999-07-01 DOI: 10.1016/S0096-0551(99)00007-7
W.F. Wong

It is well known that dynamic typing in languages like Lisp is costly in terms of performance. Besides the cost of tag checking, the other major source of inefficiency comes from the need to place and retrieve data from dynamically allocated objects, i.e. boxing and unboxing. This makes it unacceptable in general to write numerical code in Lisp. Such programs involve “tight” loops in which boxing, unboxing and tag checking will dominate the computation time. With advances in the compilation of Lisp programs, it has been suggested that type checking and inference can be used to alleviate the problem. In this paper we shall examine a sub-problem, namely using type inference to aid compilation of numerical intensive Lisp code. A type inference algorithm for floating point operations will be described. This has been implemented in a Scheme compiler. Implementation issues and performance results on fairly large numerical code will also be reported. The results suggest that significant performance gains can be obtained. It is our hope that as an augmentation to other general type inferencing scheme, it will contribute towards the realization of highly optimizing Scheme compilers.

众所周知,像Lisp这样的语言中的动态类型在性能方面代价很高。除了标签检查的成本之外,效率低下的另一个主要来源来自需要从动态分配的对象中放置和检索数据,即装箱和拆箱。这使得在Lisp中编写数字代码通常是不可接受的。这类程序涉及“紧密”循环,其中装箱、拆箱和标签检查将主导计算时间。随着Lisp程序编译的进步,有人建议可以使用类型检查和推断来缓解这个问题。在本文中,我们将研究一个子问题,即使用类型推断来帮助编译数字密集型Lisp代码。本文将描述浮点运算的类型推断算法。这已经在Scheme编译器中实现了。还将报告在相当大的数字代码上的实现问题和性能结果。结果表明,可以获得显著的性能提升。我们希望,作为对其他一般类型推断方案的增强,它将有助于实现高度优化的scheme编译器。
{"title":"Optimizing floating point operations in Scheme","authors":"W.F. Wong","doi":"10.1016/S0096-0551(99)00007-7","DOIUrl":"10.1016/S0096-0551(99)00007-7","url":null,"abstract":"<div><p>It is well known that dynamic typing in languages like Lisp is costly in terms of performance. Besides the cost of tag checking, the other major source of inefficiency comes from the need to place and retrieve data from dynamically allocated objects, i.e. <em>boxing</em> and <em>unboxing</em>. This makes it unacceptable in general to write numerical code in Lisp. Such programs involve “tight” loops in which boxing, unboxing and tag checking will dominate the computation time. With advances in the compilation of Lisp programs, it has been suggested that type checking and inference can be used to alleviate the problem. In this paper we shall examine a sub-problem, namely using type inference to aid compilation of numerical intensive Lisp code. A type inference algorithm for floating point operations will be described. This has been implemented in a Scheme compiler. Implementation issues and performance results on fairly large numerical code will also be reported. The results suggest that significant performance gains can be obtained. It is our hope that as an augmentation to other general type inferencing scheme, it will contribute towards the realization of highly optimizing Scheme compilers.</p></div>","PeriodicalId":100315,"journal":{"name":"Computer Languages","volume":"25 2","pages":"Pages 89-112"},"PeriodicalIF":0.0,"publicationDate":"1999-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://sci-hub-pdf.com/10.1016/S0096-0551(99)00007-7","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"90345024","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 3
3-Tier Client/Server at Work — Revised Edition; By Jeri Edwards. John Wiley & Sons, Inc. ISBN: 0-471-31502-8. 工作中的3层客户机/服务器-修订版;杰瑞·爱德华兹著。约翰威利父子公司ISBN: 0-471-31502-8。
Pub Date : 1999-07-01 DOI: 10.1016/S0096-0551(99)00012-0
R.S Ledley (Dr)
{"title":"3-Tier Client/Server at Work — Revised Edition; By Jeri Edwards. John Wiley & Sons, Inc. ISBN: 0-471-31502-8.","authors":"R.S Ledley (Dr)","doi":"10.1016/S0096-0551(99)00012-0","DOIUrl":"10.1016/S0096-0551(99)00012-0","url":null,"abstract":"","PeriodicalId":100315,"journal":{"name":"Computer Languages","volume":"25 2","pages":"Pages 116-117"},"PeriodicalIF":0.0,"publicationDate":"1999-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://sci-hub-pdf.com/10.1016/S0096-0551(99)00012-0","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"80379985","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Building N-Tier Applications with COM And Visual Basic 6.0; Ash Rofail, Tony Martin. John Wiley & Sons, Inc. ISBN: 0-471-29549-3. 用COM和Visual Basic 6.0构建n层应用程序Ash Rofail, Tony Martin。约翰威利父子公司ISBN: 0-471-29549-3。
Pub Date : 1999-07-01 DOI: 10.1016/S0096-0551(99)00011-9
R.S Ledley
{"title":"Building N-Tier Applications with COM And Visual Basic 6.0; Ash Rofail, Tony Martin. John Wiley & Sons, Inc. ISBN: 0-471-29549-3.","authors":"R.S Ledley","doi":"10.1016/S0096-0551(99)00011-9","DOIUrl":"https://doi.org/10.1016/S0096-0551(99)00011-9","url":null,"abstract":"","PeriodicalId":100315,"journal":{"name":"Computer Languages","volume":"25 2","pages":"Pages 115-116"},"PeriodicalIF":0.0,"publicationDate":"1999-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://sci-hub-pdf.com/10.1016/S0096-0551(99)00011-9","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"92133557","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
期刊
Computer Languages
全部 Acc. Chem. Res. ACS Applied Bio Materials ACS Appl. Electron. Mater. ACS Appl. Energy Mater. ACS Appl. Mater. Interfaces ACS Appl. Nano Mater. ACS Appl. Polym. Mater. ACS BIOMATER-SCI ENG ACS Catal. ACS Cent. Sci. ACS Chem. Biol. ACS Chemical Health & Safety ACS Chem. Neurosci. ACS Comb. Sci. ACS Earth Space Chem. ACS Energy Lett. ACS Infect. Dis. ACS Macro Lett. ACS Mater. Lett. ACS Med. Chem. Lett. ACS Nano ACS Omega ACS Photonics ACS Sens. ACS Sustainable Chem. Eng. ACS Synth. Biol. Anal. Chem. BIOCHEMISTRY-US Bioconjugate Chem. BIOMACROMOLECULES Chem. Res. Toxicol. Chem. Rev. Chem. Mater. CRYST GROWTH DES ENERG FUEL Environ. Sci. Technol. Environ. Sci. Technol. Lett. Eur. J. Inorg. Chem. IND ENG CHEM RES Inorg. Chem. J. Agric. Food. Chem. J. Chem. Eng. Data J. Chem. Educ. J. Chem. Inf. Model. J. Chem. Theory Comput. J. Med. Chem. J. Nat. Prod. J PROTEOME RES J. Am. Chem. Soc. LANGMUIR MACROMOLECULES Mol. Pharmaceutics Nano Lett. Org. Lett. ORG PROCESS RES DEV ORGANOMETALLICS J. Org. Chem. J. Phys. Chem. J. Phys. Chem. A J. Phys. Chem. B J. Phys. Chem. C J. Phys. Chem. Lett. Analyst Anal. Methods Biomater. Sci. Catal. Sci. Technol. Chem. Commun. Chem. Soc. Rev. CHEM EDUC RES PRACT CRYSTENGCOMM Dalton Trans. Energy Environ. Sci. ENVIRON SCI-NANO ENVIRON SCI-PROC IMP ENVIRON SCI-WAT RES Faraday Discuss. Food Funct. Green Chem. Inorg. Chem. Front. Integr. Biol. J. Anal. At. Spectrom. J. Mater. Chem. A J. Mater. Chem. B J. Mater. Chem. C Lab Chip Mater. Chem. Front. Mater. Horiz. MEDCHEMCOMM Metallomics Mol. Biosyst. Mol. Syst. Des. Eng. Nanoscale Nanoscale Horiz. Nat. Prod. Rep. New J. Chem. Org. Biomol. Chem. Org. Chem. Front. PHOTOCH PHOTOBIO SCI PCCP Polym. Chem.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1