Meta programming can be facilitated by the ability to represent program fragments in concrete syntax instead of abstract syntax. The resulting meta programs are more self-documenting. One caveat in concrete meta progr...
详细信息
ISBN:
(纸本)3540340637
Meta programming can be facilitated by the ability to represent program fragments in concrete syntax instead of abstract syntax. The resulting meta programs are more self-documenting. One caveat in concrete meta programming is the syntactic separation between the meta language and the object language. To solve this problem, many meta programming systems use quoting and anti-quoting to indicate precisely where level switches occur. These "syntactic hedges" can obfuscate the concrete program fragments. This paper describes an algorithm for inferring quotes, such that the meta programmer no longer needs to explicitly indicate transitions between the meta and object languages.
We present results of a grid computer search which enumerated the number of 26-by-26 Costas arrays. Of the 26! possible permutation matrices, only 56 of them satisfy the Costas condition that the N choose 2 line segme...
详细信息
ISBN:
(纸本)1424403499
We present results of a grid computer search which enumerated the number of 26-by-26 Costas arrays. Of the 26! possible permutation matrices, only 56 of them satisfy the Costas condition that the N choose 2 line segments connecting pairs of ones are all distinct. The 56 arrays consist of 6 unique non-symmetric arrays which each generate 8 arrays using rotations and reflections and 2 symmetric arrays which each generate 4 arrays using rotations and reflections (56 = 6x8+2x4). This enumeration result shows the falling number of Costas arrays as a function of size continues from its peak at N = 16 to N = 26. As the known generation techniques produce more than 56 arrays for N = 27, N = 26 is the first local minima in the enumeration sequence. The search was performed on 120 machines over a three month period, and thus took nearly 30 years of CPU time. The details of how the search was performed is presented and some observations on the database of known arrays are made.
A Golomb-Costas array is an arrangement of dots and blanks, defined for each positive integer power of a prime and satisfying certain unusual conditions. A dot occurring in such an array is an even/even position if it...
详细信息
ISBN:
(纸本)1424403499
A Golomb-Costas array is an arrangement of dots and blanks, defined for each positive integer power of a prime and satisfying certain unusual conditions. A dot occurring in such an array is an even/even position if it occurs in the i-th row and j-th column, where i and j are both even integers, and there are similar definitions of odd/odd, even/odd and odd/even positions for dots. When q is a power of an odd prime, we enumerate the number of even/even, odd/odd, even/odd and odd/even positions for dots in a Golomb-Costas array of order q - 2. We show that three of these numbers are equal and they differ by +/- 1 from the fourth. More general Costas arrays do not exhibit this regularity. We also show that if q = r(t), where r is a power of a prime and t is an integer greater than 1, any Golomb-Costas array of order q - 2 contains in a natural way a Colomb-Costas array of order r - 2 which can easily be identified.
New zero correlation window(ZCW) LS(loosely synchronous) codes derived from basic LS codes are constructed. A general scheme for generating these codes is also discussed. It is showed mathematically that these new cod...
详细信息
ISBN:
(纸本)1424404630
New zero correlation window(ZCW) LS(loosely synchronous) codes derived from basic LS codes are constructed. A general scheme for generating these codes is also discussed. It is showed mathematically that these new codes have a uniform ZCW for both aperiodic auto-correlation function (ACF) and cross-correlation function (CCF) within one group. Moreover, the minimum ZCW among different groups is the same as that of basic LS codes. The number of these new codes is more than the basic LS codes, and code efficiency can be greatly enhanced. Finally, the computer simulations verify the validity of new LS codes.
This paper presents an exercise to facilitate refactoring techniques not only on generated code, but also on generator templates by reusing existing refactoring techniques from the target language. Refactoring is part...
详细信息
ISBN:
(纸本)354045778X
This paper presents an exercise to facilitate refactoring techniques not only on generated code, but also on generator templates by reusing existing refactoring techniques from the target language. Refactoring is particularly useful if not only the generated classes but also the template defining the result of the code generator can be adapted in a uniform treatment. We describe a simple demonstration prototype that illustrates our approach. The demonstration is based on the idea to define the templates for code generation themselves as compilable and therefore refactorable source code. However, this limits the directives embedded in the template used for code generation, as we have to embed those as comments. We explore how far this approach carries and where its limits are.
For improving the function of Web services, this paper puts forward a method of formulating Web services composition strategy based on Web services components, framework and workflows. It describes the mapping of the ...
详细信息
ISBN:
(纸本)9781424402199
For improving the function of Web services, this paper puts forward a method of formulating Web services composition strategy based on Web services components, framework and workflows. It describes the mapping of the composition strategies with requests, subrequests, operations and components, and elaborates the pre- and post-operations of Web services. With the method, we can not only formulate the Web services composition strategy, but also control the composition quality detection of Web services.
This paper describes an approach to automatically annotate documents for the Euro-Mediterranean Water Information System. This approach uses the citation links and co-citation measure in order to refine annotations ex...
详细信息
ISBN:
(纸本)3540383298
This paper describes an approach to automatically annotate documents for the Euro-Mediterranean Water Information System. This approach uses the citation links and co-citation measure in order to refine annotations extracted from an indexation method. An experiment of this approach with the CiteSeer database is presented and discussed.
A recent trend in computing are domain-specific program generators, designed to alleviate the effort of porting and reoptimizing libraries for fast-changing and increasingly complex computing platforms. Examples inclu...
详细信息
ISBN:
(纸本)159593264X
A recent trend in computing are domain-specific program generators, designed to alleviate the effort of porting and reoptimizing libraries for fast-changing and increasingly complex computing platforms. Examples include ATLAS, SPIRAL, and the codelet generator in FFTW. Each of these generators produces highly optimized source code directly from a problem specification. In this paper, we extend this list by a program generator for the well-known Floyd-Warshall (FW) algorithm that solves the all-pairs shortest path problem, which is important in a wide range of engineering applications. As the first contribution, we derive variants of the FW algorithm that make it possible to apply many of the optimization techniques developed for matrix-matrix multiplication. The second contribution is the actual program generator, which uses tiling, loop unrolling, and SIMD vectorization combined with a hill climbing search to produce the best code (float or integer) for a given platform. Using the program generator, we demonstrate a speed-up over a straightforward single-precision implementation of up to a factor of 1.3 on Pentium 4 and 1.8 on Athlon 64. Use of 4-way vectorization further improves the performance by another factor of up to 5.7 on Pentium 4 and 3.0 on Athlon 64. For data type short integers, 8-way vectorization provides a speed-up of up to 4.6 on Pentium 4 and 5.0 on Athlon 64 over the best scalar code. Copyright 2006 ACM.
Tree parsing as supported by code generator generators like BEG, burg, iburg, lburg and ml-burg is a popular instruction selection method. There are two existing approaches for implementing tree parsing: dynamic progr...
详细信息
We present a new compilation technique for generating efficient code from synchronous programs. The main idea of our approach consists of computing for each program location an instantaneous statement (called a job) t...
详细信息
ISBN:
(纸本)1424404215
We present a new compilation technique for generating efficient code from synchronous programs. The main idea of our approach consists of computing for each program location an instantaneous statement (called a job) that has to be executed whenever the corresponding program location is active. Given the computed jobs, the overall execution scheme is highly flexible, very efficient, but nevertheless very simple: At each instant, it essentially consists of executing the set of active jobs according to their dynamic dependencies. Besides the required outputs, the execution of the jobs additionally yields the set of active threads for tire next instant. As our translation directly follows the structure of tire source code, the correctness of the translation can be easily checked by theorem provers. Furthermore, our translation scheme offers new potential for multi-processor execution, modular compilation, and multi-language code generation.
暂无评论