-
公开(公告)号:US08713048B2
公开(公告)日:2014-04-29
申请号:US12144670
申请日:2008-06-24
CPC分类号: G06F17/30436
摘要: Queries targeting various data sources are processed in a query processing pipeline that parses the query into a set of operations (e.g., an expression tree or a translated SQL query) using a set of query operators, each handling a particular type of operation. The query operators are often designed in an unspecialized manner, such that each query operator handles one query operation in an atomic, generic manner (e.g., sorting generic data items for an ORDER BY clause.) More efficient queries may be devised by including specialized queries that operate in common but special cases, such as a sorting of a particular data type (e.g., a floating-point number sort) or a sequence of two or more operations that are often performed together (e.g., a WHERE test of an attribute followed by a SELECT of the same attribute.) The use of specialized operators may result in the formulation of more efficient queries.
摘要翻译: 定位各种数据源的查询在查询处理流水线中处理,该查询处理流水线使用一组查询运算符(每个处理特定类型的操作)将查询解析为一组操作(例如,表达式树或翻译的SQL查询)。 查询运算符通常以非特定方式进行设计,使得每个查询运算符以原子,通用方式处理一个查询操作(例如,排序ORDER BY子句的通用数据项)。可以通过包括专门的查询来设计更有效的查询 其在常见但特殊的情况下操作,诸如特定数据类型的排序(例如,浮点数排序)或经常一起执行的两个或更多个操作的序列(例如,跟随的属性的WHERE测试 通过具有相同属性的SELECT)。使用专门的运算符可能会导致更有效的查询的编制。
-
32.
公开(公告)号:US20120324457A1
公开(公告)日:2012-12-20
申请号:US13162328
申请日:2011-06-16
申请人: Stephen Harris Toub , Mads Torgersen , Lucian Jules Wischik , Anders Hejlsberg , Dmitry Lomov , Matthew J. Warren , Robert Eric Lippert
发明人: Stephen Harris Toub , Mads Torgersen , Lucian Jules Wischik , Anders Hejlsberg , Dmitry Lomov , Matthew J. Warren , Robert Eric Lippert
IPC分类号: G06F9/46
CPC分类号: G06F8/45
摘要: The present invention extends to methods, systems, and computer program products for representing various programming elements with compiler-generated tasks. Embodiments of the invention enable access to the future state of a method through a handle to a single and composable task object. For example, an asynchronous method is rewritten to generate and return a handle to an instance of a builder object, which represents one or more future states of the asynchronous method. Information about operation of the asynchronous method is then passed through the handle. Accordingly, state of the asynchronous method is trackable prior to and after completing.
摘要翻译: 本发明扩展到用于用编译器生成的任务表示各种编程元素的方法,系统和计算机程序产品。 本发明的实施例能够通过对单个和可组合任务对象的句柄来访问方法的未来状态。 例如,重写异步方法以生成并返回对构建器对象的实例的句柄,该对象表示异步方法的一个或多个未来状态。 关于异步方法的操作的信息然后通过句柄传递。 因此,异步方法的状态在完成之前和之后是可跟踪的。
-
公开(公告)号:US20100299660A1
公开(公告)日:2010-11-25
申请号:US12469696
申请日:2009-05-21
申请人: Mads Torgersen , Anders Hejlsberg , James J. Hugunin , Matthew J. Warren , Neal Gafter , Lucian Jules Wischik , Robert Eric Lippert , Samuel Y. Ng , Christopher Joseph Burrows , Alex C. Turner
发明人: Mads Torgersen , Anders Hejlsberg , James J. Hugunin , Matthew J. Warren , Neal Gafter , Lucian Jules Wischik , Robert Eric Lippert , Samuel Y. Ng , Christopher Joseph Burrows , Alex C. Turner
CPC分类号: G06F8/54 , G06F9/44521
摘要: A static type, called “dynamic”, is introduced into a statically bound programming language. An expression or subexpression that is defined as a static type called “dynamic” in the source code of a program written in the statically bound programming language, is bound based on its runtime type instead of on its compile time type. Binding can be performed based on a mixture of compile time and runtime types that are based on the specification of types of expressions in source code. This type of binding is called hybrid binding. Operations are bound using the runtime type of constituent expressions (i.e., the runtime type of a receiver, an argument, or an operand) typed as dynamic and the compile time type of static constituents. If any constituent expression of an operation is dynamic, binding occurs at runtime instead of at compile time.
摘要翻译: 称为“动态”的静态类型被引入到静态编程语言中。 在静态编程语言编写的程序的源代码中被定义为静态类型的动态表达式或子表达式是基于其运行时类型而不是编译时类型而绑定的。 可以基于基于源代码中表达式的类型的编译时间和运行时类型的混合来执行绑定。 这种类型的绑定称为混合绑定。 使用类型为动态的组合表达式(即,接收器的运行时类型,参数或操作数)的运行时类型以及静态组件的编译时间类型来绑定操作。 如果操作的任何组成表达式是动态的,则绑定在运行时而不是在编译时发生。
-
公开(公告)号:US20090319499A1
公开(公告)日:2009-12-24
申请号:US12144670
申请日:2008-06-24
IPC分类号: G06F17/30
CPC分类号: G06F17/30436
摘要: Queries targeting various data sources are processed in a query processing pipeline that parses the query into a set of operations (e.g., an expression tree or a translated SQL query) using a set of query operators, each handling a particular type of operation. The query operators are often designed in an unspecialized manner, such that each query operator handles one query operation in an atomic, generic manner (e.g., sorting generic data items for an ORDER BY clause.) More efficient queries may be devised by including specialized queries that operate in common but special cases, such as a sorting of a particular data type (e.g., a floating-point number sort) or a sequence of two or more operations that are often performed together (e.g., a WHERE test of an attribute followed by a SELECT of the same attribute.) The use of specialized operators may result in the formulation of more efficient queries.
摘要翻译: 定位各种数据源的查询在查询处理流水线中处理,该查询处理流水线使用一组查询运算符(每个处理特定类型的操作)将查询解析为一组操作(例如,表达式树或翻译的SQL查询)。 查询运算符通常以非特定方式进行设计,使得每个查询运算符以原子,通用方式处理一个查询操作(例如,排序ORDER BY子句的通用数据项)。可以通过包括专门的查询来设计更有效的查询 其在常见但特殊的情况下操作,诸如特定数据类型的排序(例如,浮点数排序)或经常一起执行的两个或更多个操作的序列(例如,跟随的属性的WHERE测试 通过具有相同属性的SELECT)。使用专门的运算符可能会导致更有效的查询的编制。
-
公开(公告)号:US20090319497A1
公开(公告)日:2009-12-24
申请号:US12144634
申请日:2008-06-24
申请人: Luca Bolognese , Lucas James Hoban , Erik Meijer , Anders Hejlsberg , Matthew J. Warren , Dinesh Chandrakant Kulkarni , Mads Torgersen , John W. Dyer
发明人: Luca Bolognese , Lucas James Hoban , Erik Meijer , Anders Hejlsberg , Matthew J. Warren , Dinesh Chandrakant Kulkarni , Mads Torgersen , John W. Dyer
IPC分类号: G06F17/30
CPC分类号: G06F9/547
摘要: The utilization of data services (such as web services) may involve the invocation of services, which may reduce performance and overburden the server. In some scenarios, the invocation may be specified in a language that does not support batch invocation, but it may not be feasible to re-code the invocations in a language that supports batching. Instead, the service invocations may be automatically translated into a batch logic specified in a batch-capable language and sent to the service as a batch. For example, a local proxy may receive a language-integrated query having two or more service invocations, compile the query into an expression tree including the two or more invocations, and send the expression tree to the service host to achieve the batch processing of the service invocations.
摘要翻译: 数据服务(如Web服务)的使用可能涉及服务的调用,这可能会降低服务器的性能和负担。 在某些情况下,可以使用不支持批量调用的语言来指定调用,但以支持批处理的语言重新编码调用可能不可行。 相反,服务调用可以自动转换为以批处理语言指定的批处理逻辑,并作为批处理发送到服务。 例如,本地代理可以接收具有两个或多个服务调用的语言集成查询,将查询编译成包括两个或更多个调用的表达式树,并将表达式树发送到服务主机以实现批处理 服务调用。
-
36.
公开(公告)号:US08572585B2
公开(公告)日:2013-10-29
申请号:US13162328
申请日:2011-06-16
申请人: Stephen Harris Toub , Mads Torgersen , Lucian Jules Wishchik , Anders Hejlsberg , Dmitry Lomov , Matthew J. Warren , Robert Eric Lippert
发明人: Stephen Harris Toub , Mads Torgersen , Lucian Jules Wishchik , Anders Hejlsberg , Dmitry Lomov , Matthew J. Warren , Robert Eric Lippert
IPC分类号: G06F9/45
CPC分类号: G06F8/45
摘要: The present invention extends to methods, systems, and computer program products for representing various programming elements with compiler-generated tasks. Embodiments of the invention enable access to the future state of a method through a handle to a single and composable task object. For example, an asynchronous method is rewritten to generate and return a handle to an instance of a builder object, which represents one or more future states of the asynchronous method. Information about operation of the asynchronous method is then passed through the handle. Accordingly, state of the asynchronous method is trackable prior to and after completing.
摘要翻译: 本发明扩展到用于用编译器生成的任务表示各种编程元素的方法,系统和计算机程序产品。 本发明的实施例能够通过对单个和可组合任务对象的句柄来访问方法的未来状态。 例如,重写异步方法以生成并返回对构建器对象的实例的句柄,该对象表示异步方法的一个或多个未来状态。 关于异步方法的操作的信息然后通过句柄传递。 因此,异步方法的状态在完成之前和之后是可追踪的。
-
公开(公告)号:US08364750B2
公开(公告)日:2013-01-29
申请号:US12144634
申请日:2008-06-24
申请人: Luca Bolognese , Lucas James Hoban , Erik Meijer , Anders Hejlsberg , Matthew J. Warren , Dinesh Chandrakant Kulkarni , Mads Torgersen , John W. Dyer
发明人: Luca Bolognese , Lucas James Hoban , Erik Meijer , Anders Hejlsberg , Matthew J. Warren , Dinesh Chandrakant Kulkarni , Mads Torgersen , John W. Dyer
IPC分类号: G06F15/16
CPC分类号: G06F9/547
摘要: The utilization of data services (such as web services) may involve the invocation of services, which may reduce performance and overburden the server. In some scenarios, the invocation may be specified in a language that does not support batch invocation, but it may not be feasible to re-code the invocations in a language that supports batching. Instead, the service invocations may be automatically translated into a batch logic specified in a batch-capable language and sent to the service as a batch. For example, a local proxy may receive a language-integrated query having two or more service invocations, compile the query into an expression tree including the two or more invocations, and send the expression tree to the service host to achieve the batch processing of the service invocations.
摘要翻译: 数据服务(如Web服务)的使用可能涉及服务的调用,这可能会降低服务器的性能和负担。 在某些情况下,可以使用不支持批量调用的语言来指定调用,但以支持批处理的语言重新编码调用可能不可行。 相反,服务调用可以自动转换为以批处理语言指定的批处理逻辑,并作为批处理发送到服务。 例如,本地代理可以接收具有两个或多个服务调用的语言集成查询,将查询编译成包括两个或更多个调用的表达式树,并将表达式树发送到服务主机以实现批处理 服务调用。
-
公开(公告)号:US20120324431A1
公开(公告)日:2012-12-20
申请号:US13162288
申请日:2011-06-16
申请人: Stephen Harris Toub , Mads Torgersen , Lucian Jules Wischik , Anders Hejlsberg , Niklas Gustafsson , Dmitry Lomov , Matthew J. Warren
发明人: Stephen Harris Toub , Mads Torgersen , Lucian Jules Wischik , Anders Hejlsberg , Niklas Gustafsson , Dmitry Lomov , Matthew J. Warren
IPC分类号: G06F9/45
CPC分类号: G06F8/456
摘要: The present invention extends to methods, systems, and computer program products for transforming source code to await execution of asynchronous operations. Embodiments of the invention simplify authoring and use of asynchronous methods, by generating statements that use well-defined awaitable objects to await completion of asynchronous operations. For example, a computer system can transform a statement that requests to await the completion of an asynchronous operation into a plurality of statements that use a predefined pattern of members of an awaitable object corresponding the asynchronous operation. The pattern can include one or more members configured to return a completion status of the asynchronous operation, one or more members configured to resume execution of the asynchronous method at a resumption point when the asynchronous operation completes, and one or more members configured to retrieve completion results. Accordingly, the plurality of statements can use these members to await execution of the asynchronous operation.
摘要翻译: 本发明扩展到用于转换源代码以等待执行异步操作的方法,系统和计算机程序产品。 本发明的实施例简化了异步方法的编写和使用,通过生成使用明确定义的等待对象等待完成异步操作的语句。 例如,计算机系统可以将请求等待完成异步操作的语句转换为使用对应于异步操作的可等待对象的成员的预定义模式的多个语句。 该模式可以包括被配置为返回异步操作的完成状态的一个或多个成员,被配置成在异步操作完成时在恢复点恢复异步方法的执行的一个或多个成员以及被配置为检索完成的一个或多个成员 结果。 因此,多个语句可以使用这些成员来等待异步操作的执行。
-
公开(公告)号:US08819046B2
公开(公告)日:2014-08-26
申请号:US12144630
申请日:2008-06-24
IPC分类号: G06F17/30
CPC分类号: G06F17/30451 , G06F17/30427
摘要: Data source queries may be specified in various languages, such as SQL, XQuery, and object-oriented languages, and each language may have various linguistic features that enable different types of queries. It may be advantageous to formulate mixed language queries having portions specified in a first language and portions specified in a second language, and to provide mixed language query evaluation components that can parse portions of queries of different languages. It may also be advantageous to permit the translation of single language queries into multiple languages to be parsed by such mixed language query evaluation components. Such techniques may permit queries to utilize linguistic features and processing techniques of one language that are less efficient, less direct, or simply unavailable in another language.
摘要翻译: 数据源查询可以用各种语言来指定,例如SQL,XQuery和面向对象的语言,并且每个语言可以具有各种各样的语言特征,从而实现不同类型的查询。 制定具有以第一语言指定的部分和以第二语言指定的部分的混合语言查询可能是有利的,并且提供可以解析部分不同语言的查询的混合语言查询评估组件。 允许将单个语言查询转换成由这种混合语言查询评估组件解析的多种语言也是有利的。 这样的技术可以允许查询利用一种语言的语言特征和处理技术,该语言特征和处理技术在另一种语言中效率较低,较不直接或者简单地不可用。
-
公开(公告)号:US20090319496A1
公开(公告)日:2009-12-24
申请号:US12144630
申请日:2008-06-24
CPC分类号: G06F17/30451 , G06F17/30427
摘要: Data source queries may be specified in various languages, such as SQL, XQuery, and object-oriented languages, and each language may have various linguistic features that enable different types of queries. It may be advantageous to formulate mixed language queries having portions specified in a first language and portions specified in a second language, and to provide mixed language query evaluation components that can parse portions of queries of different languages. It may also be advantageous to permit the translation of single language queries into multiple languages to be parsed by such mixed language query evaluation components. Such techniques may permit queries to utilize linguistic features and processing techniques of one language that are less efficient, less direct, or simply unavailable in another language.
摘要翻译: 数据源查询可以用各种语言来指定,例如SQL,XQuery和面向对象的语言,并且每个语言可以具有各种各样的语言特征,从而实现不同类型的查询。 制定具有以第一语言指定的部分和以第二语言指定的部分的混合语言查询可能是有利的,并且提供可以解析部分不同语言的查询的混合语言查询评估组件。 允许将单个语言查询转换成由这种混合语言查询评估组件解析的多种语言也是有利的。 这样的技术可以允许查询利用一种语言的语言特征和处理技术,该语言特征和处理技术在另一种语言中效率较低,较不直接或者简单地不可用。
-
-
-
-
-
-
-
-
-