JP2013516701A5 - - Google Patents
Download PDFInfo
- Publication number
- JP2013516701A5 JP2013516701A5 JP2012548049A JP2012548049A JP2013516701A5 JP 2013516701 A5 JP2013516701 A5 JP 2013516701A5 JP 2012548049 A JP2012548049 A JP 2012548049A JP 2012548049 A JP2012548049 A JP 2012548049A JP 2013516701 A5 JP2013516701 A5 JP 2013516701A5
- Authority
- JP
- Japan
- Prior art keywords
- tree
- node
- pointer
- consumer
- parent
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000000875 corresponding Effects 0.000 claims 6
- 230000004044 response Effects 0.000 claims 5
- 239000002023 wood Substances 0.000 claims 3
- 230000002457 bidirectional Effects 0.000 claims 2
- 238000000034 method Methods 0.000 claims 1
Claims (15)
- プロセッサと、
モジュールを含むメモリであって、前記モジュールは、前記プロセッサに、少なくとも1つのコンシューマがアクセス可能な、ソース・コードの少なくとも1つの文を表現する木を表すデータ構造を生成させるように構成され、前記データ構造は、
前記少なくとも1つのコンシューマが直接にはアクセスできない共有の読取専用の木を表す再利用可能な第1の木であって、前記読取専用の木は単方向のポインタを有するノードを含み、前記第1の木の前記ノードは親ノードへのポインタを有さず、前記読取専用の木に含まれる前記ノードはソース・コードの前記少なくとも1つの文の異なる各要素に対応している、第1の木と、
前記少なくとも1つのコンシューマの前記第1の木へのアクセスを制御する少なくとも1つの根ノードを含む、前記少なくとも1つのコンシューマがアクセス可能な第2の木であって、前記第2の木の前記根ノードは前記第1の木の根ノードへのポインタを含む、第2の木と
を含む、メモリと
を備えたことを特徴とするシステム。 - 前記第1の木の要求されたノードへの経路上にある前記第1の木のノードごとに前記第2の木にノードを生成することにより、前記第2の木を要求に応じて構築し、前記生成されたノードは、前記要求されたノードへの前記経路上にある前記第1の木における次のノードに対応し、前記生成されたノードは、前記第1の木の対応する前記ノードへのポインタ、および前記第2の木の前記生成されたノードの親ノードへのポインタを含むことを特徴とする請求項1に記載のシステム。
- 前記第1の木は、相対的な情報を保持する秘密木であり、前記第2の木は、コンシューマ固有の情報を保持する公開木であることを特徴とする請求項1に記載のシステム。
- 前記木は、解析木、構文木、意味木、または束縛木を含むコンパイラ生成型の木であることを特徴とする請求項1に記載のシステム。
- 前記少なくとも1つのコンシューマから変更した木の要求を受信したことに応答して、新たな公開木および新たな秘密木を生成し、前記新たな秘密木は、前記第1の木の少なくとも1つの部分木を再利用することを特徴とする請求項3に記載のシステム。
- ソフトウェア開発コンピュータのIDEにおいて、コンシューマがアクセス可能なデータ構造を生成するステップであって、前記データ構造は、
読取専用で秘密の、単方向をポイントする第1の木であって、ソース・コードの少なくとも1つの文を表現し、前記第1の木は、少なくとも1つのノードを含み、前記少なくとも1つのノードは、前記第1の木の親ノードから前記第1の木の子ノードへのポインタを含む少なくとも1つの単方向ポインタを含み、前記少なくとも1つのノードは、ソース・コードの前記少なくとも1つの文の少なくとも1つの各要素に対応している、第1の木と、
コンシューマがアクセス可能な第2の木であって、前記第2の木は前記第1の木へのアクセスを制御し、前記第2の木は、少なくとも根ノードを含み、前記第2の木の前記根ノードは前記第1の木の根ノードへのポインタを含む、第2の木と
を表す、生成するステップを備えたことを特徴とする方法。 - 変更した第1の木を表す木の要求を受信したことに応答して、新たな公開木および新たな秘密木を生成するステップをさらに備え、前記新たな秘密木は、少なくとも1つのノードにおいて前記第1の秘密木と異なる木を表し、前記新たな公開木は、少なくとも1つのノードにおいて前記コンシューマがアクセス可能な第2の木と異なる木を表すことを特徴とする請求項6に記載の方法。
- 前記コンシューマが前記第2の木を用いて処理を終了したときに、前記第2の木をガベージ・コレクションするステップをさらに備えたことを特徴とする請求項6に記載の方法。
- 前記第2の木のノードは、前記第2の木の前記ノードから前記第2の木の前記ノードの子ノードへのポインタ、および前記第2の木の前記ノードから前記第2の木の前記ノードの親ノードへのポインタを含む、双方向ポインタを含み、前記第2の木の前記ノードは、前記第2の木の前記ノードから前記第1の木における対応するノードへのポインタを含み、前記第2の木のノードを、前記第1の木のノードへのアクセス要求をコンシューマから受信したことに応答して、要求に応じて生成することを特徴とする請求項6に記載の方法。
- 前記第1の木は秘密木であり、前記第2の木は公開木であることを特徴とする請求項6に記載の方法。
- 実行時に少なくとも1つのプロセッサにソース・コードの少なくとも1つの文を表現する木を表すデータ構造を生成させるコンピュータ実行可能命令を備えたコンピュータ可読記憶媒体であって、前記データ構造は、
コンシューマがアクセスできない読取専用で再利用可能な第1の木であって、前記第1の木は単方向のポインタを有し、前記第1の木の親ノードは、前記親ノードの子ノードへのポインタを含み、前記親ノードは、前記第1の木の前記親ノードの親ノードへのポインタを含まず、前記親ノードおよび前記親ノードの子ノードはソース・コードの前記少なくとも1つの文の異なる要素に対応している、第1の木と、
前記コンシューマがアクセス可能である再利用不能な第2の木であって、前記第2の木は双方向のポインタを有し、前記第2の木の親ノードは前記親ノードの子ノードへのポインタを含み、前記親ノードは前記第2の木の前記親ノードの親ノードへのポインタを含み、前記第2の木は前記第1の木へのコンシューマのアクセスを制御する、第2の木と
を含むことを特徴とするコンピュータ可読記憶媒体。 - 実行時に前記少なくとも1つのプロセッサに前記データ構造を生成させるコンピュータ実行可能命令をさらに備え、前記第2の木を、前記第1の木のノードへの前記コンシューマのアクセス要求に応答して、要求に応じて生成することを特徴とする請求項11に記載のコンピュータ可読記憶媒体。
- 実行時に前記少なくとも1つのプロセッサに前記データ構造を生成させるコンピュータ実行可能命令をさらに備え、前記第1の木は相対的な内容を含み、前記第2の木はコンシューマ固有の内容を含むことを特徴とする請求項11に記載のコンピュータ可読記憶媒体。
- 実行時に前記少なくとも1つのプロセッサに、前記第1の木の前記要求されたノードへの経路上にあるノードごとに前記第2の木にノードを生成することによって、要求に応じて前記第2の木を生成させるコンピュータ実行可能命令をさらに備え、前記生成されたノードは、前記要求されたノードへの前記経路上の前記第1の木における次のノードに対応し、前記第2の木の前記生成されたノードは、前記第1の木の対応するノードへのポインタを含むことを特徴とする請求項12に記載のコンピュータ可読記憶媒体。
- 実行時に前記少なくとも1つのプロセッサに、前記第2の木のノードへのアクセス要求を前記コンシューマから受信したことに応答して、前記第2の木の読取専用で再利用可能なバージョンを含む第3の木を生成させるコンピュータ実行可能命令をさらに備え、前記第3の木は、前記第3の木の親ノードから前記第3の木の前記親ノードの子ノードへの単方向ポインタを有し、前記第3の木への前記コンシューマのアクセスを制御する第4の木を生成し、前記第4の木は、前記コンシューマがアクセス可能な再利用不能な木を含み、前記第4の木は、前記第4の木の親ノードから前記第4の木の前記親ノードの子ノードへのポインタと、前記第4の木の子ノードから前記第4の木の前記子ノードの親ノードへのポインタと、前記第4の木のノードから前記第3の木の対応するノードへのポインタとを含む双方向のポインタを有することを特徴とする請求項11に記載のコンピュータ可読記憶媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/683,445 | 2010-01-07 | ||
US12/683,445 US10564944B2 (en) | 2010-01-07 | 2010-01-07 | Efficient immutable syntax representation with incremental change |
PCT/US2010/062653 WO2011084876A2 (en) | 2010-01-07 | 2010-12-31 | Efficient immutable syntax representation with incremental change |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2013516701A JP2013516701A (ja) | 2013-05-13 |
JP2013516701A5 true JP2013516701A5 (ja) | 2014-03-06 |
JP5734311B2 JP5734311B2 (ja) | 2015-06-17 |
Family
ID=44225340
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012548049A Active JP5734311B2 (ja) | 2010-01-07 | 2010-12-31 | 漸進的変化を伴う効率的な不変構文表現 |
Country Status (8)
Country | Link |
---|---|
US (2) | US10564944B2 (ja) |
EP (1) | EP2521978B1 (ja) |
JP (1) | JP5734311B2 (ja) |
KR (1) | KR101764941B1 (ja) |
CN (1) | CN102696026B (ja) |
CA (1) | CA2786588A1 (ja) |
HK (1) | HK1174708A1 (ja) |
WO (1) | WO2011084876A2 (ja) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9191397B2 (en) * | 2008-06-27 | 2015-11-17 | Microsoft Technology Licensing, Llc | Extension model for improved parsing and describing protocols |
JP5568776B2 (ja) * | 2010-11-05 | 2014-08-13 | 株式会社日立製作所 | 計算機のモニタリングシステム及びモニタリング方法 |
US8825817B1 (en) * | 2012-03-19 | 2014-09-02 | Amazon Technologies, Inc. | Using a template to update a stack of resources |
US9710243B2 (en) * | 2013-11-07 | 2017-07-18 | Eagle Legacy Modernization, LLC | Parser that uses a reflection technique to build a program semantic tree |
US9921769B2 (en) | 2014-06-19 | 2018-03-20 | Cohesity, Inc. | Making more active use of a secondary storage system |
US10614131B2 (en) * | 2016-10-26 | 2020-04-07 | Lookingglass Cyber Solutions, Inc. | Methods and apparatus of an immutable threat intelligence system |
US10402499B2 (en) * | 2016-11-17 | 2019-09-03 | Goldman Sachs & Co. LLC | System and method for coupled detection of syntax and semantics for natural language understanding and generation |
DK3644196T3 (da) * | 2018-10-26 | 2022-08-01 | Tata Consultancy Services Ltd | Systemer og fremgangsmåde til lagring af data i et integreret array og en struktur baseret på en linked-liste |
US10901706B1 (en) * | 2019-08-14 | 2021-01-26 | Business Objects Software Ltd. | Partially immutable model |
US11392356B1 (en) * | 2021-02-26 | 2022-07-19 | Oracle International Corporation | Online machine learning based compilation |
Family Cites Families (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5204958A (en) * | 1991-06-27 | 1993-04-20 | Digital Equipment Corporation | System and method for efficiently indexing and storing a large database with high data insertion frequency |
JP3526595B2 (ja) * | 1993-10-29 | 2004-05-17 | 富士通株式会社 | 情報管理機構 |
US5761511A (en) | 1994-01-28 | 1998-06-02 | Sun Microsystems, Inc. | Method and apparatus for a type-safe framework for dynamically extensible objects |
US5671416A (en) | 1995-02-24 | 1997-09-23 | Elson; David | Apparatus and a method for searching and modifying source code of a computer program |
CA2171570C (en) | 1995-03-29 | 1999-09-21 | Swee Boon Lim | Compiler with generic front end and dynamically loadable back ends |
US5939877A (en) * | 1997-05-27 | 1999-08-17 | Hewlett-Packard Company | Graphical system and method for automatically scaling waveforms in a signal measurement system |
JP4128641B2 (ja) | 1997-10-13 | 2008-07-30 | 株式会社東芝 | データ退避方法 |
US6378126B2 (en) * | 1998-09-29 | 2002-04-23 | International Business Machines Corporation | Compilation of embedded language statements in a source code program |
US6321338B1 (en) * | 1998-11-09 | 2001-11-20 | Sri International | Network surveillance |
JP3390357B2 (ja) | 1999-02-12 | 2003-03-24 | 日本電気株式会社 | 木構造データ編集システムにおける木構造差分出力方法及び装置 |
US20020027909A1 (en) * | 2000-06-30 | 2002-03-07 | Mariner Networks, Inc. | Multientity queue pointer chain technique |
US7035802B1 (en) * | 2000-07-31 | 2006-04-25 | Matsushita Electric Industrial Co., Ltd. | Recognition system using lexical trees |
DE10104831A1 (de) * | 2001-02-01 | 2002-08-08 | Sap Ag | Datenstruktur für Informationssysteme |
US7222132B2 (en) * | 2001-03-20 | 2007-05-22 | Swsoft Holdings, Ltd. | Common template file system tree for virtual environments and virtual servers |
US7203701B1 (en) * | 2002-02-20 | 2007-04-10 | Trilogy Development Group, Inc. | System and method for an interface to provide visualization and navigation of a directed graph |
US6694323B2 (en) * | 2002-04-25 | 2004-02-17 | Sybase, Inc. | System and methodology for providing compact B-Tree |
US6857001B2 (en) | 2002-06-07 | 2005-02-15 | Network Appliance, Inc. | Multiple concurrent active file systems |
US7188340B2 (en) * | 2002-06-28 | 2007-03-06 | Microsoft Corporation | Hybrid tree for mixed user interface elements and sequential data |
US7072904B2 (en) * | 2002-12-02 | 2006-07-04 | Microsoft Corporation | Deletion and compaction using versioned nodes |
US7711545B2 (en) | 2003-07-02 | 2010-05-04 | Language Weaver, Inc. | Empirical methods for splitting compound words with application to machine translation |
US20050010592A1 (en) | 2003-07-08 | 2005-01-13 | John Guthrie | Method and system for taking a data snapshot |
US8060619B1 (en) * | 2003-11-07 | 2011-11-15 | Symantec Operating Corporation | Direct connections to a plurality of storage object replicas in a computer network |
US20060277221A1 (en) * | 2005-06-01 | 2006-12-07 | Green Hills Software, Inc. | Transactional file system with client partitioning |
US20070009713A1 (en) * | 2005-07-05 | 2007-01-11 | Hoeschele Allen H | Scored applique for instrument panels |
US7762076B2 (en) * | 2005-10-20 | 2010-07-27 | United Technologies Corporation | Attachment of a ceramic combustor can |
US7535475B2 (en) * | 2005-11-01 | 2009-05-19 | Adobe Systems Incorporated | Virtual view tree |
US7921367B2 (en) * | 2005-12-20 | 2011-04-05 | Oracle International Corp. | Application generator for data transformation applications |
US7660804B2 (en) * | 2006-08-16 | 2010-02-09 | Microsoft Corporation | Joint optimization of wrapper generation and template detection |
US7769779B2 (en) | 2006-11-02 | 2010-08-03 | Microsoft Corporation | Reverse name mappings in restricted namespace environments |
US7802179B2 (en) | 2006-12-21 | 2010-09-21 | Microsoft Corporation | Synchronizing data between different editor views |
US8072467B2 (en) * | 2007-01-31 | 2011-12-06 | Microsoft Corporation | Request-driven on-demand processing |
US9037613B2 (en) * | 2007-05-23 | 2015-05-19 | Oracle International Corporation | Self-learning data lenses for conversion of information from a source form to a target form |
US9043367B2 (en) * | 2007-05-23 | 2015-05-26 | Oracle International Corporation | Self-learning data lenses for conversion of information from a first form to a second form |
US9063979B2 (en) * | 2007-11-01 | 2015-06-23 | Ebay, Inc. | Analyzing event streams of user sessions |
US20090199090A1 (en) * | 2007-11-23 | 2009-08-06 | Timothy Poston | Method and system for digital file flow management |
US20090254594A1 (en) * | 2008-04-02 | 2009-10-08 | Microsoft Corporation | Techniques to enhance database performance |
-
2010
- 2010-01-07 US US12/683,445 patent/US10564944B2/en active Active
- 2010-12-31 CN CN201080060863.8A patent/CN102696026B/zh active Active
- 2010-12-31 WO PCT/US2010/062653 patent/WO2011084876A2/en active Application Filing
- 2010-12-31 EP EP10842771.7A patent/EP2521978B1/en active Active
- 2010-12-31 KR KR1020127018073A patent/KR101764941B1/ko active IP Right Grant
- 2010-12-31 JP JP2012548049A patent/JP5734311B2/ja active Active
- 2010-12-31 CA CA2786588A patent/CA2786588A1/en not_active Abandoned
-
2013
- 2013-02-08 HK HK13101829.0A patent/HK1174708A1/zh unknown
-
2020
- 2020-02-17 US US16/792,706 patent/US11372630B2/en active Active
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2013516701A5 (ja) | ||
JP5197688B2 (ja) | 統合環境生成器 | |
CN106919434B (zh) | 一种代码生成方法及装置 | |
US10162738B2 (en) | System, method, and computer readable medium for universal software testing | |
Fedosejev | React. js essentials | |
US8997070B2 (en) | Extension mechanism for scripting language compiler | |
KR101154730B1 (ko) | 컴퓨터 프로그램의 구성 방법 | |
US9524279B2 (en) | Help document animated visualization | |
JP2014519630A (ja) | 中間フォーマットを用いた、swfのhtmlへのクロスコンパイル | |
RU2014107726A (ru) | Проецирование собственных интерфейсов прикладного программирования операционной системы в другие языки программирования | |
JP6479184B2 (ja) | コンピュータ実行可能なモデルリバースエンジニアリング方法及び装置 | |
RU2004100525A (ru) | Способ и система для записи макросов в синтаксисе, независимом от языка | |
CN103902269A (zh) | 一种通过xml文件生成mib文件的系统及方法 | |
CN103077038B (zh) | 动态生成和编译.net项目的方法 | |
André et al. | Translating UML state machines to coloured Petri nets using Acceleo: A report | |
CN106484488A (zh) | 一体化云编译方法和系统 | |
JP2008276735A (ja) | プログラムコード変換装置及びプログラムコード変換方法 | |
RU2016147085A (ru) | Осуществление доступа к семантическому контенту в системе разработки | |
IN2013CH05996A (ja) | ||
CN112114794B (zh) | 网站应用程序自动生成方法、装置和计算机存储介质 | |
Herrera et al. | A framework for the generation from UML/MARTE models of IPXACT HW platform descriptions for multi-level performance estimation | |
CN110554867B (zh) | 一种应用程序的处理方法和装置 | |
CN112181398A (zh) | 配置文件处理装置、方法及存储介质 | |
Zschaler | Vml*: A generative infrastructure for variability management languages | |
JP2010152667A (ja) | ソースコード自動生成プログラム |