亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種基于數(shù)據(jù)表的共享智慧的方法與流程

文檔序號:12362860閱讀:197來源:國知局
一種基于數(shù)據(jù)表的共享智慧的方法與流程

本發(fā)明涉及編程領(lǐng)域,更具體的說,涉及一種基于數(shù)據(jù)表的共享智慧的方法。



背景技術(shù):

在流行的編程工具中,大部分是可編譯為機器語言的高級語言,而非人們使用的自然語言,如VB、C、C++、PASCAL、JAVA、C#等語言,其語法是從"機器語言"→"匯編語言"→"高級語言"這樣逐步發(fā)展起來的,用自然語言進行編程國外公司有過嘗試,但終以失敗而告終,究其原因,無非三點:一是來自傳統(tǒng)編程語言的思維定式的抵制;二是因民族、語言、文化、傳統(tǒng)不同而產(chǎn)生的各種沖突:三是技術(shù)上實現(xiàn)較為復(fù)雜和困難。

現(xiàn)有的編程需要固定的編程環(huán)境、格式和符號,不同的編程語言的格式、符號都是不同的,導(dǎo)致普通人學編程非常困難,而且不同語言之間的代碼是不能通用的。再者,每個人編程習慣不一樣,函數(shù)名稱等都是根據(jù)個人喜好自定義,不同編程人員之間的代碼很難共用。

現(xiàn)有的數(shù)據(jù)庫基本上都是關(guān)系型的數(shù)據(jù)庫,需要建立不同的庫,庫里面有很多的表,表的字段名稱和長度都是不一樣的,因此必須在表跟表之間建立復(fù)雜的關(guān)聯(lián)才能實現(xiàn)數(shù)據(jù)的調(diào)用。因此,現(xiàn)有的數(shù)據(jù)庫結(jié)構(gòu)非常不利于智慧的共享。



技術(shù)實現(xiàn)要素:

本發(fā)明所要解決的技術(shù)問題是提供一種降低編程難度、提升編程效率且促進智慧共享的基于數(shù)據(jù)表的共享智慧的方法。

本發(fā)明的目的是通過以下技術(shù)方案來實現(xiàn)的:

一種基于數(shù)據(jù)表的自然語言混合編程方法的共享智慧方法,包括步驟:

獲取用戶社交平臺的身份信息;

獲取用戶輸入的數(shù)據(jù);

將數(shù)據(jù)存儲在廣表中;

根據(jù)廣表指定字段存儲內(nèi)容的第一個最小單位判斷共享范圍,根據(jù)第一個最小單位后面的其他字判斷是否共享;

所述廣表的字段數(shù)量固定不動,所述字段名稱固定不變;除了代表每條記錄唯一編號的字段外,其他字段的數(shù)據(jù)格式為字符串類型。

進一步的,當廣表指定字段存儲內(nèi)容的第一個最小單位為預(yù)設(shè)的第一字(共),則相同群內(nèi)的所有用戶相互共享對應(yīng)記錄的數(shù)據(jù);

進一步的,當廣表指定字段存儲內(nèi)容的第一個最小單位為預(yù)設(shè)的第二字(享),則相同群內(nèi)的好友用戶相互共享對應(yīng)記錄的數(shù)據(jù)。

進一步的,根據(jù)廣表指定字段存儲內(nèi)容的第二個字觸發(fā)同名的功能函數(shù),功能函數(shù)將執(zhí)行結(jié)果反饋回對應(yīng)的用戶。

進一步的,所述數(shù)據(jù)包括自然語言混合文本;

用戶獲取處于共享狀態(tài)的自然語言混合文本;

根據(jù)自然語言混合文本的第一行的第一個最小單位作為函數(shù)名,從本地文件或廣表中獲取編程語言的功能函數(shù);

根據(jù)最小單位的后續(xù)文本從廣表中獲取功能函數(shù)的參數(shù);

編程語言未實現(xiàn)的功能利用接口或套接字調(diào)用不同的編程語言執(zhí)行;

返回執(zhí)行結(jié)果。

進一步的,所述自然語言混合文本需要調(diào)用廣表的數(shù)據(jù)時通過編號進行調(diào)用。

進一步的,所述自然語言混合文本的第一行包括所述編號,當程序執(zhí)行時,先根據(jù)編號從廣表中找到對應(yīng)的記錄;然后根據(jù)自然語言混合文本的第二行的第一個最小單位從本地文件或廣表中調(diào)用相應(yīng)的功能函數(shù),根據(jù)最小單位的后續(xù)文本對相應(yīng)記錄的內(nèi)容進行處理。

進一步的,所述參數(shù)只有一個,當所述編程語言為javascript;所述參數(shù)的數(shù)據(jù)類型為字符串類型;當參數(shù)是整數(shù)類型時,使用parseInt函數(shù)轉(zhuǎn)換,當參數(shù)是浮點類型時,使用parseFloat轉(zhuǎn)換;當參數(shù)是對象、函數(shù)或數(shù)組類型時,用eval動態(tài)轉(zhuǎn)換;當所述編程語言為C#時,使用int.Parse()函數(shù)轉(zhuǎn)換,當參數(shù)是浮點類型時,使用float.Parse()轉(zhuǎn)換。

進一步的,所述功能函數(shù)內(nèi)部設(shè)有優(yōu)先函數(shù),運行功能函數(shù)時,根據(jù)參數(shù)的內(nèi)容優(yōu)先執(zhí)行優(yōu)先函數(shù)。

進一步的,所述用戶預(yù)設(shè)有配置規(guī)則,數(shù)據(jù)共享需要符合配置規(guī)則。

本發(fā)明由于將自然語言的第一行的第一個最小單位作為功能函數(shù),其他的文字作為參數(shù),然后用利用接口或套接字調(diào)用相關(guān)的編程語言執(zhí)行,這樣就實現(xiàn)了自然語言跟編程語言的有效映射,使得自然語言也可以被機器識別運行。自然語言容易理解,無須編程者了解各種編程語言的函數(shù)、語法,答復(fù)降低了編程門檻,使得普通人通過簡單的練習也可以實現(xiàn)復(fù)雜的編程。自然語言編程擺脫了具體編程語言的、運行平臺的限制,通用性更高。具備編程基礎(chǔ)的開發(fā)人員也可以根據(jù)本發(fā)明的方法編寫可執(zhí)行的編程語言語句,實現(xiàn)基礎(chǔ)功能,與自然語言映射,編程的時候直接調(diào)用,可大幅提高編程效率。本發(fā)明限定了最小單位的首字(以漢字為例)作為函數(shù)名,而不是隨意的自然語言,錯的處理在各個函數(shù)的內(nèi)部處理,也會通過預(yù)處理以及后備處理做調(diào)整。由于廣表的數(shù)據(jù)結(jié)構(gòu)簡單,不需要現(xiàn)有的數(shù)據(jù)庫支持都可以實現(xiàn)。廣表除了唯一的編號,其他的數(shù)據(jù)類型都是字符串,不需要用戶重新策劃、增減字段。統(tǒng)一的字段數(shù)和數(shù)據(jù)類型,有利于數(shù)據(jù)之間互通互聯(lián),溝通一致,有助于虛擬現(xiàn)實、增強現(xiàn)實和混合現(xiàn)實的實現(xiàn)。有利于工種獨立,便于實現(xiàn)全棧,便于自然語言編程、模塊化的SQL查詢。有利于共享智慧、實現(xiàn)手機社交編程和教學及數(shù)據(jù)融合。廣表實現(xiàn)數(shù)據(jù)與代碼一體化,有利于nosql的轉(zhuǎn)型,像excel一樣記錄。其自有結(jié)構(gòu)(章、節(jié)、題),群聊天式創(chuàng)作,每條記錄都可定價。且基于自然語言混合編程,表達即為代碼,在運行時運行式繁殖,一條記錄就包含所有運行所需的要素。廣表之間不用聯(lián)表,不用關(guān)系,而關(guān)系型數(shù)據(jù)庫需要建庫、庫里面建表,每個表的字段名稱、數(shù)量也不一樣,表跟表之間要進行數(shù)據(jù)關(guān)聯(lián),數(shù)據(jù)結(jié)構(gòu)非常復(fù)雜。由于數(shù)據(jù)的存儲都是基于廣表,隨著用戶在廣表中積累的數(shù)據(jù)越來越多,計算機會越來越能讀懂用戶,相當于用戶在網(wǎng)絡(luò)世界中逐漸地復(fù)制自我,可以做到想你所想;并且通過在廣表中實現(xiàn)數(shù)據(jù)的共享,計算機可以非常方便地調(diào)用不同用戶的廣表,以便對數(shù)據(jù)進行深入挖掘,實現(xiàn)共享智慧。

附圖說明

圖1是本發(fā)明實施例利用自然語言的混合編程方法的示意圖;

圖2是本發(fā)明實施例利用社交軟件進行自然語言的混合編程的示意圖;

圖3是本發(fā)明實施例在虛擬現(xiàn)實中的應(yīng)用示意圖;

圖4是本發(fā)明實施例基于數(shù)據(jù)表的自然語言混合編程方法的示意圖;

圖5是本發(fā)明實施例基于數(shù)據(jù)表的共享智慧的方法的示意圖;

圖6是本發(fā)明實施例基于后實現(xiàn)的自然語言混合編程方法的示意圖;

圖7是本發(fā)明實施例基于自然語言的混合編程方法的舉例示意圖。

具體實施方式

如圖1所示,本發(fā)明公開了一種利用自然語言的混合編程方法,包括步驟:

S11、獲取自然語言混合文本;

S12、根據(jù)自然語言混合文本每一行的第一個最小單位獲取編程語言的功能函數(shù);

S13、根據(jù)最小單位的后續(xù)文本匹配所述功能函數(shù)的參數(shù);

S14、編程語言未實現(xiàn)的功能利用協(xié)議接口或套接字調(diào)用不同的編程語言執(zhí)行;

S15、返回執(zhí)行結(jié)果。

所述協(xié)議接口包括但不局限于ajax和http協(xié)議;所述套接字包括但不局限于socket和websocket。

ajax即“Asynchronous Javascript And XML”(異步JavaScript和XML),是指一種創(chuàng)建交互式網(wǎng)頁應(yīng)用的網(wǎng)頁開發(fā)技術(shù)。它是一種用于創(chuàng)建快速動態(tài)網(wǎng)頁的技術(shù)。通過在后臺與服務(wù)器進行少量數(shù)據(jù)交換,ajax可以使網(wǎng)頁實現(xiàn)異步更新。這意味著可以在不重新加載整個網(wǎng)頁的情況下,對網(wǎng)頁的某部分進行更新。

http協(xié)議(HyperText Transfer Protocol,超文本傳輸協(xié)議)是用于從WWW服務(wù)器傳輸超文本到本地瀏覽器的傳輸協(xié)議。它可以使瀏覽器更加高效,使網(wǎng)絡(luò)傳輸減少。它不僅保證計算機正確快速地傳輸超文本文檔,還確定傳輸文檔中的哪一部分,以及哪部分內(nèi)容首先顯示(如文本先于圖形)等。http是客戶端瀏覽器或其他程序與Web服務(wù)器之間的應(yīng)用層通信協(xié)議。在Internet上的Web服務(wù)器上存放的都是超文本信息,客戶機需要通過http協(xié)議傳輸所要訪問的超文本信息。http包含命令和傳輸信息,不僅可用于Web訪問,也可以用于其他因特網(wǎng)/內(nèi)聯(lián)網(wǎng)應(yīng)用系統(tǒng)之間的通信,從而實現(xiàn)各類應(yīng)用資源超媒體訪問的集成。

Socket的英文原義是“孔”或“插座”。作為BSD UNIX的進程通信機制,取后一種意思。通常也稱作"套接字",用于描述IP地址和端口,是一個通信鏈的句柄,可以用來實現(xiàn)不同虛擬機或不同計算機之間的通信。在Internet上的主機一般運行了多個服務(wù)軟件,同時提供幾種服務(wù)。每種服務(wù)都打開一個Socket,并綁定到一個端口上,不同的端口對應(yīng)于不同的服務(wù)。

WebSocket是基于HTML5的一種套接字。它實現(xiàn)了瀏覽器與服務(wù)器全雙工通信(full-duplex)。在實現(xiàn)websocket連線過程中,需要通過瀏覽器發(fā)出websocket連線請求,然后服務(wù)器發(fā)出回應(yīng),這個過程通常稱為“握手”,然后,瀏覽器和服務(wù)器之間就形成了一條快速通道。兩者之間就直接可以數(shù)據(jù)互相傳送。

本發(fā)明由于將自然語言混合文本每一行的第一個最小單位作為功能函數(shù),其他的文字作為參數(shù),然后用利用接口或套接字調(diào)用相關(guān)的編程語言執(zhí)行,這樣就實現(xiàn)了自然語言跟編程語言的有效映射,使得自然語言也可以被機器識別運行。自然語言混合文本容易理解,無須編程者了解各種編程語言的函數(shù)、語法及符號要求,大幅降低了編程門檻,使得普通人通過簡單的練習也可以實現(xiàn)復(fù)雜的編程。本發(fā)明擺脫了具體編程語言的、運行平臺的限制,通用性更高。隨著用戶數(shù)量增加和編程數(shù)量的積累,會有越來越多的功能成為現(xiàn)成的功能函數(shù),編程的時候直接調(diào)用即可,因此編程效率會越來越高。

在更加詳細地討論示例性實施例之前應(yīng)當提到的是,一些示例性實施例被描述成作為流程圖描繪的處理或方法。雖然流程圖將各項操作描述成順序的處理,但是其中的許多操作可以被并行地、并發(fā)地或者同時實施。此外,各項操作的順序可以被重新安排。當其操作完成時所述處理可以被終止,但是還可以具有未包括在附圖中的附加步驟。所述處理可以對應(yīng)于方法、函數(shù)、規(guī)程、子例程、子程序等等。

本發(fā)明的技術(shù)方案可以廣泛應(yīng)用于虛擬現(xiàn)實、增強現(xiàn)實、混合現(xiàn)實、AI(人工智能)、移動智能終端(如智能手機、平板電腦、穿戴設(shè)備或智能眼鏡)、計算機、機器人、智能家居設(shè)備或智能工業(yè)控制設(shè)備等等,均可以通過運行預(yù)定程序或指令來執(zhí)行數(shù)值計算和/或邏輯計算等預(yù)定處理過程,其可以包括處理器與存儲器,由處理器執(zhí)行在存儲器中預(yù)存的存續(xù)指令來執(zhí)行預(yù)定處理過程,或是由ASIC、FPGA、DSP等硬件執(zhí)行預(yù)定處理過程,或是由上述二者組合來實現(xiàn)。計算機設(shè)備包括但不限于服務(wù)器、個人電腦、筆記本電腦、平板電腦、智能手機等。

網(wǎng)絡(luò)設(shè)備包括但不限于單個網(wǎng)絡(luò)服務(wù)器、多個網(wǎng)絡(luò)服務(wù)器組成的服務(wù)器組或基于云計算(Cloud Computing)的由大量計算機或網(wǎng)絡(luò)服務(wù)器構(gòu)成的云,其中,云計算是分布式計算的一種,由一群松散耦合的計算機集組成的一個超級虛擬計算機。其中,所述計算機設(shè)備可單獨運行來實現(xiàn)本發(fā)明,也可接入網(wǎng)絡(luò)并通過與網(wǎng)絡(luò)中的其他計算機設(shè)備的交互操作來實現(xiàn)本發(fā)明。其中,所述計算機設(shè)備所處的網(wǎng)絡(luò)包括但不限于互聯(lián)網(wǎng)、廣域網(wǎng)、城域網(wǎng)、局域網(wǎng)、VPN網(wǎng)絡(luò)等。

需要說明的是,所述用戶設(shè)備、網(wǎng)絡(luò)設(shè)備和網(wǎng)絡(luò)等僅為舉例,其他現(xiàn)有的或今后可能出現(xiàn)的計算機設(shè)備或網(wǎng)絡(luò)如可適用于本發(fā)明,也應(yīng)包含在本發(fā)明保護范圍以內(nèi),并以引用方式包含于此。

后面所討論的方法(其中一些通過流程圖示出)可以通過硬件、軟件、固件、中間件、微代碼、硬件描述語言或者其任意組合來實施。當用軟件、固件、中間件或微代碼來實施時,用以實施必要任務(wù)的程序代碼或代碼段可以被存儲在機器或計算機可讀介質(zhì)(比如存儲介質(zhì))中。(一個或多個)處理器可以實施必要的任務(wù)。

這里所公開的具體結(jié)構(gòu)和功能細節(jié)僅僅是代表性的,并且是用于描述本發(fā)明的示例性實施例的目的。但是本發(fā)明可以通過許多替換形式來具體實現(xiàn),并且不應(yīng)當被解釋成僅僅受限于這里所闡述的實施例。

應(yīng)當理解的是,雖然在這里可能使用了術(shù)語“第一”、“第二”等等來描述各個單元,但是這些單元不應(yīng)當受這些術(shù)語限制。使用這些術(shù)語僅僅是為了將一個單元與另一個單元進行區(qū)分。舉例來說,在不背離示例性實施例的范圍的情況下,第一單元可以被稱為第二單元,并且類似地第二單元可以被稱為第一單元。這里所使用的術(shù)語“和/或”包括其中一個或更多所列出的相關(guān)聯(lián)項目的任意和所有組合。

應(yīng)當理解的是,當一個單元被稱為“連接”或“耦合”到另一單元時,其可以直接連接或耦合到所述另一單元,或者可以存在中間單元。與此相對,當一個單元被稱為“直接連接”或“直接耦合”到另一單元時,則不存在中間單元。應(yīng)當按照類似的方式來解釋被用于描述單元之間的關(guān)系的其他詞語(例如“處于...之間”相比于“直接處于...之間”,“與...鄰近”相比于“與...直接鄰近”等等)。

這里所使用的術(shù)語僅僅是為了描述具體實施例而不意圖限制示例性實施例。除非上下文明確地另有所指,否則這里所使用的單數(shù)形式“一個”、“一項”還意圖包括復(fù)數(shù)。還應(yīng)當理解的是,這里所使用的術(shù)語“包括”和/或“包含”規(guī)定所陳述的特征、整數(shù)、步驟、操作、單元和/或組件的存在,而不排除存在或添加一個或更多其他特征、整數(shù)、步驟、操作、單元、組件和/或其組合。

還應(yīng)當提到的是,在一些替換實現(xiàn)方式中,所提到的功能/動作可以按照不同于附圖中標示的順序發(fā)生。舉例來說,取決于所涉及的功能/動作,相繼示出的兩幅圖實際上可以基本上同時執(zhí)行或者有時可以按照相反的順序來執(zhí)行。

下面結(jié)合附圖和較佳的實施例對本發(fā)明作進一步說明。

本發(fā)明所說的“自然語言混合文本”應(yīng)該從廣義的角度進行理解,它代表了一種符合普通人敘事的文本,既可以采用自然語言,也可以采用編程語言,甚至可以混用,表現(xiàn)形式上也不局限于文字,還可以混雜語音和圖像。單純采用語音也是可行的,因為通過現(xiàn)有公知的語言識別技術(shù),語音最終可以轉(zhuǎn)化為文本語言。圖像本身可以作為參數(shù),因此也可以作為自然語言混合文本的一部分。

自然語言混合文本不局限于中文,英語、日語、韓語、德語、法語等任何語言均可。具體語種不同,對應(yīng)的“最小單位”也不一樣,以下為了方便闡述,均以中文為例進行說明,其對應(yīng)的最小單位為單個漢字。如果是采用拼音文字時,最小單位為一個單詞。

由于具體運行的計算機設(shè)備的編程語言各有不同,可以從輸入的內(nèi)容里面抽取內(nèi)容特征,用于識別內(nèi)容類型。比如http代表網(wǎng)頁,html、function、php代表執(zhí)行環(huán)境分別代表html、javascript、php,等等。

自然語言混合文本可以是單行,也可以是多行。對于單行的自然語言混合文本,可以根據(jù)首行的第一個最小單位獲取其對應(yīng)的功能函數(shù),后面的文本統(tǒng)一作為參數(shù),然后利用接口或套接字調(diào)用相關(guān)的編程語言執(zhí)行,返回執(zhí)行結(jié)果即可。

如果自然語言混合文本有多行,除了判斷首行第一個字以外,還需要判斷后面的行的首字是否也是功能函數(shù),如果整個自然語言混合文本包括多個功能函數(shù)的時候,根據(jù)整個語境的邏輯關(guān)系自動選擇執(zhí)行的先后順序。比如,編程人員想演示幻燈片,首行首字以“演”調(diào)用相關(guān)的幻燈片設(shè)計的功能函數(shù),那么后續(xù)各行的自然語言混合文本代表的就是幻燈片里面所要演示的內(nèi)容。再例如,多行文字除首行外,如果有代表優(yōu)先執(zhí)行的“先”字(即優(yōu)先函數(shù)),那么雖然該行靠后,也會優(yōu)先執(zhí)行。

如果首行的第一個字代表純自然語言,其他行的第一個字都是代表功能函數(shù);否則,其他行的內(nèi)容作為混合代碼。

當自然混合文本只有一個字,該字有同名的webapp或虛擬現(xiàn)實應(yīng)用且不屬于核心功能函數(shù)的時候,打開特定功能的webapp或虛擬現(xiàn)實應(yīng)用(網(wǎng)頁應(yīng)用),市面上同一功能的應(yīng)用軟件可能有多種,本發(fā)明的可以跳過不同應(yīng)用軟件的各種操作過程,直接調(diào)用用戶想要的功能。比如用戶想看荒野獵人,只需要輸入“看荒野獵人”,計算機就可以直接打開荒野獵人的電影供用戶觀看,用戶不需要考慮到底用“暴風影音”,還是PPTV來觀看電影,實現(xiàn)了去應(yīng)用、去習慣、去牌子的目的,真正實現(xiàn)“所思即所得”的效果。少數(shù)單字會對應(yīng)核心功能函數(shù),比如“存”子,就代表存儲的功能函數(shù),而不是用于存儲的webapp或虛擬現(xiàn)實應(yīng)用。

本發(fā)明構(gòu)思可以讓不同的編程語言有一套對自然語言理解的統(tǒng)一標準;根據(jù)不同的內(nèi)容類型通過正則表達式替換為目標語言的代碼(比如JS或PHP,替換成目標源碼,然后通過eval執(zhí)行。),實現(xiàn)跨平臺運行。因此,本發(fā)明的所述自然語言混合文本可以通過文本、語音或手勢的方式輸入;所述自然語言混合文本通過移動智能終端、計算機、AI(人工智能)、虛擬現(xiàn)實、增強現(xiàn)實、混合現(xiàn)實、機器人、VR(虛擬現(xiàn)實)、AR(增強現(xiàn)實)、MR(混合現(xiàn)實)、智能家居設(shè)備或智能工業(yè)控制設(shè)備運行;所述自然語言混合文本上傳到云端或本地服務(wù)器,由云端或本地服務(wù)器自動匹配可執(zhí)行的代碼;所述移動智能終端包括但不局限于智能手機、平板電腦、穿戴設(shè)備或智能眼鏡。所述自然語言混合文本上傳到云端或本地服務(wù)器,由云端或本地服務(wù)器自動匹配可執(zhí)行的代碼。

隨著基于本發(fā)明構(gòu)思的開發(fā)者越來越多,同一個漢字對應(yīng)的功能函數(shù)可能有多個,這個時候可以根據(jù)預(yù)設(shè)的規(guī)則調(diào)用最合適的功能函數(shù),比如以創(chuàng)建時間的先后順序、使用頻率、好評率等。

當自然語言混合文本大于或等于兩行,包含參數(shù)不能使用的特殊符時,用描述文字替換該特殊符號作為參數(shù),函數(shù)執(zhí)行時再替換回原先的特殊符號。機器可識別的編程語言跟自然語言的語法是不同的,比如編程語言中回車符號代表另外一行執(zhí)行指令,但自然語言中,回車符號則大多用于排版需要,因此自然語言混合文本執(zhí)行之前必須進行預(yù)處理,將編程語言無法識別的特殊符號(如回車符)轉(zhuǎn)換為可作為參數(shù)的語句,比如用“廣換行”來替換回車符。以便讓上下行的文本能整體被編程語言識別。

另外,編程語言一般要求參數(shù)之間需要分隔,但本發(fā)明除了首字為功能函數(shù),后續(xù)的統(tǒng)一作為一個字符串參數(shù)進行處理,即參數(shù)只有一個,參數(shù)的數(shù)據(jù)類型為字符串類型;當所述編程語言為javascript;所述參數(shù)只有一個,所述參數(shù)的數(shù)據(jù)類型為字符串類型;當參數(shù)是整數(shù)類型時,使用parseInt函數(shù)轉(zhuǎn)換,當參數(shù)是浮點類型時,使用parseFloat轉(zhuǎn)換;當參數(shù)是對象、函數(shù)或數(shù)組類型時,用eval動態(tài)轉(zhuǎn)換;當所述編程語言為C#時,使用int.Parse()函數(shù)轉(zhuǎn)換,當參數(shù)是浮點類型時,使用float.Parse()轉(zhuǎn)換。在函數(shù)運行的時候通過字符串內(nèi)的內(nèi)容去自動分割,如通過逗號、與來分割不同的參數(shù),目的是為了編程更靈活,這樣一來,普通編程人員無需考慮參數(shù)分隔問題,可以自動處理,且在輸入的時候盡量減少符號應(yīng)用,使得編程過程更接近于日常表述,進一步降低編程難度。

當自然語言混合文本對應(yīng)的功能函數(shù)重名的時候,按以下默認優(yōu)先級執(zhí)行:執(zhí)行用戶自己編寫的功能函數(shù);執(zhí)行官方編寫的功能函數(shù)、執(zhí)行好友編寫的功能函數(shù)、執(zhí)行陌生人編寫的功能函數(shù);如果有配置優(yōu)先級則按配置的優(yōu)先級判斷;如果同一個群體也存在同名的函數(shù),則按照配置里指定的函數(shù)執(zhí)行,否則按照最近更新的執(zhí)行。

本發(fā)明可以基于社交平臺進行自然語言混合文本的輸入,通過社交平臺調(diào)用所述自然語言混合文本對應(yīng)的功能函數(shù)或應(yīng)用獲取結(jié)果或執(zhí)行功能。在日常交流中實現(xiàn)編程,結(jié)合社交平臺,不僅符合大部分用戶的使用習慣,比如現(xiàn)在移動互聯(lián)網(wǎng)普及,微信、微博一類的社交平臺幾乎每個用戶每天都會頻繁使用,因此,基于社交平臺更容易被用戶接受,另外,本發(fā)明需要集群體智慧進行開發(fā),開發(fā)的人越多越好用,通過社交平臺的交互屬性,有利于用戶交流編程經(jīng)驗,發(fā)布需求,以及實現(xiàn)用戶編寫的各種功能函數(shù)、參數(shù)的流轉(zhuǎn)。參考圖2,結(jié)合社交平臺進一步產(chǎn)生本發(fā)明的具體過程:

S21、獲取用戶的身份信息;

S22、將社交平臺的編輯界面反饋給用戶;

S23、獲取用戶輸入的自然語言混合文本;

S24、對自然語言混合文本進行預(yù)處理;

S25、判斷自然語言混合文本的語種;

S26、判斷自然語言混合文本的內(nèi)容類型;

S27、調(diào)用編程語言執(zhí)行;

S28、返回執(zhí)行結(jié)果。

更具體的,調(diào)用編程語言執(zhí)行的步驟要先區(qū)分自然語言混合文本是單行還是多行。如果自然語言混合文本為單行,直接利用接口或套接字調(diào)用相關(guān)的編程語言執(zhí)行;返回執(zhí)行結(jié)果;如果自然語言混合文本大于或等于兩行,當所述編程語言為javascript;所述參數(shù)的數(shù)據(jù)類型為字符串類型;當參數(shù)是整數(shù)類型時,使用parseInt函數(shù)轉(zhuǎn)換,當參數(shù)是浮點類型時,使用parseFloat轉(zhuǎn)換;當參數(shù)是對象、函數(shù)或數(shù)組類型時,用eval動態(tài)轉(zhuǎn)換;當所述編程語言為C#時,使用int.Parse()函數(shù)轉(zhuǎn)換,當參數(shù)是浮點類型時,使用float.Parse()轉(zhuǎn)換。當自然語言混合文本除第一行以外的其它行的第一個最小單位代表一個功能函數(shù)且符合預(yù)設(shè)規(guī)則時,優(yōu)先執(zhí)行該功能函數(shù);返回執(zhí)行結(jié)果。

可選的,不同的編程語言通過協(xié)議接口或套接字調(diào)用自然語言混合文本對應(yīng)的功能函數(shù)或應(yīng)用獲取結(jié)果或執(zhí)行功能。比如采用http協(xié)議,瀏覽器幾乎是每個網(wǎng)名高頻使用的一個應(yīng)用,因此采用http協(xié)議來調(diào)用函數(shù)和應(yīng)用也是一種非??扇〉姆绞健>唧w來說,開發(fā)人員開放接口,用戶只要在瀏覽器中輸入某個網(wǎng)址,結(jié)合網(wǎng)址后面的自然語言混合文本,就能獲取結(jié)果或執(zhí)行功能。例如,“diywebapp.com”網(wǎng)站開發(fā)了用戶彈窗的功能函數(shù)并對外開放,那么用戶在瀏覽器中輸入“diywebapp.com/彈你好!”,當前瀏覽器就會彈窗,顯示內(nèi)容為“你好!”。

下面通過一些具體的例子進一步闡述本發(fā)明構(gòu)思。比如用戶想看某個電影,輸入“我要看荒野獵人”,現(xiàn)有技術(shù)需要基于整個文本做語義分析,判斷用戶的意圖,然后調(diào)用跟文本最匹配的函數(shù)執(zhí)行,算法非常復(fù)雜,隨著文本長度的增加,復(fù)雜度會更高。更重要的是,基于語義分析的實現(xiàn)方式,只能適用于單行文字的識別,進行簡單的程序調(diào)用,無法通過多行文字實現(xiàn)編程的目的。采用本發(fā)明的方案,用戶只需要說“看荒野獵人”,第一個字“看”就是函數(shù),直接調(diào)用即可,“荒野獵人”是參數(shù),直接代入“看”的函數(shù)中即可執(zhí)行,整個實現(xiàn)過程簡單直接,不需要高深的編程知識。假設(shè)采用本發(fā)明的構(gòu)思,用戶輸入的也是“我要看荒野獵人”,本發(fā)明也不需要利用語義分析,一樣可以實現(xiàn)用戶的意圖。首先,將“我”作為函數(shù)名,“要看荒野獵人”作為參數(shù)名,“我”函數(shù)里面判斷參數(shù)中,“要”也是一個函數(shù),因此從“我”函數(shù)中進一步調(diào)用“要”函數(shù),把“看荒野獵人”作為參數(shù)名,同理,“看”也是一個函數(shù),再從“要”函數(shù)中調(diào)用“看”函數(shù),然后將“荒野獵人”作為參數(shù)發(fā)現(xiàn)可以直接執(zhí)行,因此,最終執(zhí)行的仍然是“看”函數(shù),達到用戶想要的效果。

基于多行文字實現(xiàn)編程,本發(fā)明也舉例說明。比如對一首古詩進行修改。古詩原文:

遠看山有色,

近聽水無聲。

春去花還在,

人來鳥不驚。

對古詩進行編輯,用戶輸入的文本是:

換山為打印機

刪花

前《畫》王維

后2016年3月15日

運行后產(chǎn)生的效果是:

《畫》王維

遠看打印機有色,

近聽水無聲。

春去還在,

人來鳥不驚。

2016年3月15日

可以看到的,用戶只需要把自己的要求一條條提出來,計算機就能逐條執(zhí)行命令,實現(xiàn)編程效果。其編程的語言更接近于自然語言,不需要用戶使用復(fù)雜的編程語言。

編程不僅有順序結(jié)構(gòu),也有循環(huán)、判斷結(jié)構(gòu),各舉一列說明。

如現(xiàn)在時間不超過12點

彈上午好

如現(xiàn)在時間超過12點

彈下午好

執(zhí)行情況:“如”函數(shù)判斷時間,低于12點,“彈”函數(shù)彈出對話框,顯示“上午好”;如果超過12點,彈”函數(shù)彈出對話框,顯示“下午好”。本例中,“如”函數(shù)代表具備判斷結(jié)構(gòu)的編程思想,說明判斷結(jié)構(gòu)的編程通過本發(fā)明一樣可以實現(xiàn)。

用本發(fā)明技術(shù)方案實現(xiàn)乘法口訣。比如要計算6的乘法口訣,用戶直接輸入“乘6”,自動就可以調(diào)用“乘”函數(shù),然后把6作為參數(shù)代入到函數(shù)當中,輸出運算結(jié)果:“6X6=36;6X7=42;6X8=48;6X9=54”。

自然語言混合文本的參數(shù)只有一個,但實際編程語言執(zhí)行的時候需要多個參數(shù),因此,需要對自然語言混合文本的參數(shù)預(yù)處理,將其分割成多個編程語言可以實現(xiàn)的子參數(shù)。另外,同一個函數(shù),參數(shù)不一樣,對應(yīng)的功能可能完全不一樣。舉例一個“加”函數(shù)的例子來說明。

假設(shè)用戶輸入自然語言混合文本“加1,2”,“加”表示加法之意,“1,2”整體作為一個參數(shù),此時“加”函數(shù)執(zhí)行加法對應(yīng)的子函數(shù)。在執(zhí)行的時候,“加”函數(shù)根據(jù)參數(shù)里面的“,”符號,自動將其拆成兩個子參數(shù)“1”和“2”,這樣編程語言就可以識別,得出1+2=3的運算結(jié)果。

但如果用戶輸入自然語言混合文本“加分割”,此時“加”就不是加法的意思了,而是為了增加內(nèi)容。此時“加”函數(shù)里面會調(diào)用另外一個對應(yīng)的子函數(shù),實現(xiàn)加分割的效果。

本發(fā)明的技術(shù)方案特別適用于虛擬現(xiàn)實領(lǐng)域,虛擬現(xiàn)實的場景可以突破現(xiàn)實世界的各種物理法則的限定,允許開發(fā)者隨意架構(gòu)逼真、夢幻的世界,真正做到言出即法。比如輸入“?!薄ⅰ傍喿印保涂梢猿霈F(xiàn)“?!焙汀傍喿印钡哪P?。在虛擬現(xiàn)實的世界里,會有一個第一人稱代表自己的角色,這時候輸入“走”,那角色就往前走,輸入“飛”,角色就飛起來,打破物理的限制,并且很多命令默認綁定在第一人稱的角色上。

圖3是虛擬現(xiàn)實在教學領(lǐng)域的應(yīng)用,通過自然語言混合編程搭建了一個寬敞的教室,教室內(nèi)的布景可以隨意添加更改,當小朋友對著麥克風說“貓”的時候,教室中間的平臺上就會懸空出現(xiàn)一只貓,這只貓可以在平臺上360度旋轉(zhuǎn),讓小朋友對“貓”這種動物有全方位的了解??蛇x的,用鍵盤直接輸入“貓”也可以達到同樣的效果。自然語言表達又具有一定的隨意性,在現(xiàn)實生活場景可能會因為表達不夠嚴謹,邏輯性存在問題而無法執(zhí)行。但在虛擬現(xiàn)實空間中,其法則可以人為隨意設(shè)定,不需要滿足現(xiàn)實世界的各種物理法則限制,因此特別適用于本發(fā)明的自然語言混合編程方法。

【廣表例子】

作為本發(fā)明的另一實施方式,本實施方式公開了一種基于數(shù)據(jù)表的自然語言混合編程方法,具體來說,包括步驟:

建立廣表;

將數(shù)據(jù)中的自然語言文本存儲到廣表的第一字段中;

所述廣表的字段數(shù)量固定不變,字段名稱固定不變;除了代表每條記錄唯一編號的字段外,其他字段的數(shù)據(jù)格式為字符串類型;所述數(shù)據(jù)包括自然語言混合文本;所述自然語言混合文本的第一個最小單位代表功能函數(shù),最小單位的后續(xù)文本代表參數(shù)。

更具體的,字段名稱采用最小單位的字或單詞命名,所述字段依據(jù)數(shù)據(jù)內(nèi)容、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)標簽、數(shù)據(jù)類型、數(shù)據(jù)交互、數(shù)據(jù)屬性和數(shù)據(jù)所有權(quán)人進行設(shè)定,總計二十六個字段,由于英文字母剛好26個,為了簡化起見,且能被不同語種的人所熟識,字段名稱也可以用26個字母代替。具體舉例如下:

參考圖4,本發(fā)明的廣表尤其適用于前述利用自然語言的混合編程。具體實現(xiàn)方法如下所述:

S41、獲取自然語言混合文本;

S42、將數(shù)據(jù)中的自然語言文本存儲到廣表的第一字段中;

S43、根據(jù)自然語言混合文本每一行的第一個最小單位作為函數(shù)名,從廣表或本地文件中獲取編程語言的功能函數(shù);

S44、根據(jù)最小單位的后續(xù)文本從廣表或本地文件中獲取功能函數(shù)的參數(shù);

S45、編程語言未實現(xiàn)的功能利用協(xié)議接口或套接字調(diào)用不同的編程語言執(zhí)行;

S46、返回執(zhí)行結(jié)果。

可見,自然語言混合文本每行首字對應(yīng)的功能函數(shù)既可以存儲在廣表內(nèi),也可以存儲到本地文件中;相應(yīng)的,功能函數(shù)的參數(shù)既可以存儲在廣表內(nèi),也可以存儲到本地文件中。從自然語言混合編程的理念來看,當廣表的安全保密性能滿足要求時,優(yōu)選將功能函數(shù)和參數(shù)都存儲到廣表中,真正做到廣集天下智慧,實習世界大同的目的。

以實現(xiàn)計算文本長度的方法舉例說明。

待計算的文本存儲在廣表“號”為203的記錄中,該記錄的其他幾個字段內(nèi)容為:“戶”10774,“章”為專,“節(jié)”為文,“題”為畫,“文”的內(nèi)容是:

\畫

遠看山有色

近聽水無聲

春去花還在

人來鳥不驚

而計算文本長度的功能函數(shù)存儲在廣表“號”為2914的記錄中,該記錄的其他幾個字段內(nèi)容為:“戶”10774,“章”為專,“節(jié)”為廣,“題”為長,計算文本長度的功能函數(shù)存儲在“廣”的字段中:

現(xiàn)在,用戶在廣表中新建一條記錄,“號”為2915的記錄中,“戶”為10774,“章”為專,“節(jié)”為例,“題”為長,“廣”字段里面輸入自然語言混合文本:

號203

直接執(zhí)行,將自動返回結(jié)果:33。

可見,用戶不需要知道具體的編程語言,他(她)只需要知道參數(shù)存在哪個位置(號203),然后直接用代表功能函數(shù)的唯一漢字“長”即可實現(xiàn)自動計算文本長度的目的。

由于廣表的數(shù)據(jù)結(jié)構(gòu)簡單,不需要現(xiàn)有的數(shù)據(jù)庫支持都可以實現(xiàn)。廣表除了唯一的編號,其他的數(shù)據(jù)類型都是字符串,不需要用戶重新策劃、增減字段。統(tǒng)一的字段數(shù)和數(shù)據(jù)類型,有利于數(shù)據(jù)之間互通互聯(lián),溝通一致,有助于虛擬現(xiàn)實、增強現(xiàn)實、混合現(xiàn)實、的實現(xiàn)。有利于工種獨立,便于實現(xiàn)全棧,便于自然語言編程、模塊化的SQL查詢。有利于共享智慧、實現(xiàn)手機社交編程和教學及數(shù)據(jù)融合。廣表實現(xiàn)數(shù)據(jù)與代碼一體化,有利于nosql的轉(zhuǎn)型,像excel一樣記錄。其自有結(jié)構(gòu)(章、節(jié)、題),群聊天式創(chuàng)作,每條記錄都可定價。且基于自然語言混合編程,表達即為代碼,在運行時運行式繁殖,一條記錄就包含所有運行所需的要素。廣表之間不用聯(lián)表,不用關(guān)系,而關(guān)系型數(shù)據(jù)庫需要建庫、庫里面建表,每個表的字段名稱、數(shù)量也不一樣,表跟表之間要進行數(shù)據(jù)關(guān)聯(lián),數(shù)據(jù)結(jié)構(gòu)非常復(fù)雜。

作為本發(fā)明的另一實施例,本實施方式還公開一種基于數(shù)據(jù)表的共享智慧的方法,

獲取用戶輸入的數(shù)據(jù);

獲取用戶社交平臺的身份信息;

獲取用戶輸入的數(shù)據(jù);

將數(shù)據(jù)存儲在廣表中;

根據(jù)廣表指定字段存儲內(nèi)容的第一個最小單位判斷共享范圍,根據(jù)第一個最小單位后面的其他字判斷是否共享;

所述廣表的字段數(shù)量固定不動,所述字段名稱固定不變;除了代表每條記錄唯一編號的字段外,其他字段的數(shù)據(jù)格式為字符串類型。

參考圖5,結(jié)合前述自然語言混合編程的方法,可以實現(xiàn)智慧共享,使得每個用戶都能直接調(diào)用其他用戶的功能函數(shù)和參數(shù)運行,無須二次修改、加工。具體來說,所述數(shù)據(jù)包括自然語言混合文本;

S51、用戶獲取處于共享狀態(tài)的自然語言混合文本;

S52、根據(jù)自然語言混合文本的每一行的第一個最小單位作為函數(shù)名,從廣表或本地文件中獲取編程語言的功能函數(shù);

S53、根據(jù)最小單位的后續(xù)文本從廣表中獲取功能函數(shù)的參數(shù);

S54、編程語言未實現(xiàn)的功能利用協(xié)議接口或套接字調(diào)用不同的編程語言執(zhí)行;

S55、返回執(zhí)行結(jié)果。

由于數(shù)據(jù)的存儲都是基于廣表,隨著用戶在廣表中積累的數(shù)據(jù)越來越多,計算機會越來越能讀懂用戶,相當于用戶在網(wǎng)絡(luò)世界中逐漸地復(fù)制自我。這樣自然語言混合文本在運行時調(diào)用多條處于共享狀態(tài)的數(shù)據(jù),可以做到想你所想。

比如:某用戶的廣表的“文”字段經(jīng)常存儲蘋果公司的相關(guān)產(chǎn)品、報道;但未發(fā)現(xiàn)廣表中該用戶有購買過蘋果的手機產(chǎn)品,然后從廣表中查看該用戶的的購物記錄,發(fā)現(xiàn)該用戶的購買能力較弱,那么計算機就可以判斷出該用戶喜歡蘋果手機,但囊中羞澀,消費不起。等某日,某電商在廣表的“文”字段中發(fā)布了一個蘋果手機的最新打折信息;此時就可以自動推送給該用戶。隨著廣表的數(shù)據(jù)越豐富,推送的信息、時機就越匹配。以本例子進一步說明,假設(shè)該用戶發(fā)工資的信息也在廣表中,打折信息甚至可以在發(fā)工資當天推送給用戶。這一切都基于所有的數(shù)據(jù)都存儲在廣表中,而每個人的廣表都是相同的,數(shù)據(jù)之間的流轉(zhuǎn)完全沒有障礙。另外,基于廣語言的編程方式,降低了編程的門檻,每個用戶都可以參與到數(shù)據(jù)的挖掘利用當中,編寫符合各種需求的功能函數(shù),并互相共享,使得互聯(lián)網(wǎng)越來越智能,真正實現(xiàn)共享智慧。

當然,為了保護隱私,用戶可以自主設(shè)置共享的內(nèi)容和范圍,共享智慧一般在同一“群”內(nèi)實現(xiàn),同一個群可以代表了一個產(chǎn)品、一個興趣群組等,因此,同一群內(nèi)的人往往都具有同一目標、同一興趣,有共同溝通的基礎(chǔ)。本實施例中,通過廣表的“廣”的第一個字進行識別,比如“共”代表相同群內(nèi)的所有人都可以看到;“享”代表相同群內(nèi)的指定人共享。還有一類信息可以主動推送,比如通過分析廣表,發(fā)現(xiàn)兩個不同的用戶都喜歡看同一類型的電影,就可以主動將記錄推送給對方,促成氣味相投的雙方溝通交流。主動推送的范圍也是可設(shè)定的,也可以通過“廣”的第一個字進行識別,比如“推”主動推送給所有匹配的用戶;“送”主動推送跟匹配的指定人共享,指定人一般指好友,或者同一工作群的人。

作為本發(fā)明的另一實施例,本發(fā)明還公開一種基于后實現(xiàn)的自然語言的混合編程方法。由于采用了自然語言混合編程、廣表以及共享智慧的方案,使得暫時無法實現(xiàn)的需求可以滯后實現(xiàn)。

參考圖6,基于后實現(xiàn)的自然語言的混合編程方法具體包括以下步驟:

S61、獲取需求方輸入的自然語言混合文本;

S62、無法執(zhí)行本地函數(shù)時查詢廣表,如果找不到可執(zhí)行的功能函數(shù)或參數(shù),詢問需求方是否要請求后實現(xiàn),如果是,將自然語言混合文本另存為第一記錄,并推送給同一群內(nèi)的潛在的處理方;

S63、獲取處理方提供的功能函數(shù)或參數(shù)并反饋回需求方,另存為第二記錄;

所述自然語言混合文本每一行的第一個最小單位獲取對應(yīng)功能函數(shù);最小單位的后續(xù)文本對應(yīng)功能函數(shù)的參數(shù);所述廣表的字段數(shù)量固定不變,除了代表每條記錄唯一編號的字段外,其他字段的數(shù)據(jù)格式為字符串格式。

可選的,提出的需求和反饋的功能函數(shù)或參數(shù)可以記錄在同一條記錄里面,也可以存儲在不同的記錄。由于都是采用自然語言混合編程,所以反饋的功能函數(shù)和參數(shù)是可以直接運行的,這一點跟一般開發(fā)組共享代碼是完全不同的,一般開發(fā)人員解決不了的問題,也會尋求幫助。但一般對方只是把代碼反饋回來,需要嵌入自己的代碼中,利用特定的編程環(huán)境才能執(zhí)行,而且由于每個編程人員的習慣不同,哪怕采用同一編程語言,也無法直接使用,還需要自己二次修改,才能跟自己現(xiàn)有的代碼契合。

由于采用了統(tǒng)一的廣表存儲自然語言混合文本、功能函數(shù)和參數(shù),數(shù)據(jù)的匹配、流轉(zhuǎn)都非常便利。比如需求方寫的自然語言混合文本包括關(guān)鍵字“html5”,自然語言混合文本存儲在廣表的“廣”字段中,然后搜索其他用戶的廣表,如果有用戶廣表的“廣字段”存在大量html5的代碼,那么該用戶就是潛在的處理方。

當然,如果需求方有明確的求助對象,也可以直接發(fā)送給對方。另外,發(fā)送的對象也可以控制權(quán)限,參考前述共享智慧的實施方式,可以根據(jù)特定字段的內(nèi)容來控制推送范圍,是求助所有的用戶還是指定的用戶。

當反饋的功能函數(shù)或參數(shù)有多個時,可以擇一存儲,也可以都存儲到廣表中,但真正執(zhí)行的只能有一個,選擇的規(guī)則有多種,比如執(zhí)行最先反饋的,好評率最高的、優(yōu)先執(zhí)行自己好友的等等。

廣表的每條記錄都有唯一的編號,因此需求方運行自己存儲的自然語言混合文本時候,調(diào)用唯一編號就能調(diào)用反饋回來的功能函數(shù)或參數(shù)。

因此,所述自然語言混合文本的首行包括所述編號,當程序執(zhí)行時,先根據(jù)編號從廣表中找到對應(yīng)的記錄;然后根據(jù)自然語言混合文本的第二行的第一個最小單位從廣表中調(diào)用相應(yīng)的功能函數(shù),根據(jù)最小單位的后續(xù)文本對相應(yīng)記錄的內(nèi)容進行處理?;谇笆鲎匀徽Z言混合編程的實施方案,參數(shù)只有一個,所述參數(shù)的數(shù)據(jù)類型為字符串;執(zhí)行的時候通過字符串內(nèi)的特定字符自動分割成多個可供編程語言識別的子參數(shù)。

后實現(xiàn)中需求方可以通過設(shè)定廣表的特點字段的內(nèi)容來選擇將第一記錄推送給特定范圍的潛在的處理方,同理,處理方編輯產(chǎn)生第二記錄也可以用同樣的方式反饋給需求方以及相關(guān)的其他人。

比如,當需求方確認后實現(xiàn)時,第一記錄指定字段存儲內(nèi)容的第一個最小單位設(shè)為預(yù)設(shè)的第一字(需)時,將該記錄發(fā)送給同一群內(nèi)的所有人;所述潛在處理方產(chǎn)生的第二記錄的指定字段存儲內(nèi)容的第一個最小單位設(shè)為預(yù)設(shè)的第二字(供)時,將該第二記錄返回相應(yīng)的需求方。

當需求方確認后實現(xiàn)時,第一記錄指定字段存儲內(nèi)容的第一個最小單位設(shè)為預(yù)設(shè)的第三字(求)時,將該記錄發(fā)送給同一群內(nèi)的好友;所述潛在處理方產(chǎn)生的第二記錄的指定字段存儲內(nèi)容的第一個最小單位設(shè)為預(yù)設(shè)的第四字(供)時,將該第二記錄返回好友中相應(yīng)的。

當處理方提供的功能函數(shù)或參數(shù)并反饋回需求方時,提醒需求方是否允許,運行結(jié)果符合預(yù)期后再另存為第二記錄。

根據(jù)第二記錄指定字段存儲內(nèi)容的第二個字觸發(fā)同名的功能函數(shù),功能函數(shù)將執(zhí)行結(jié)果反饋回需求方。

如圖7所示,綜合上述實施方式,進一步產(chǎn)生本發(fā)明基于自然語言混合編程的的構(gòu)思。游客先登錄自己的社交平臺,如“虛我”、VR社交平臺等。然后選擇加入“群”,群代表某個虛擬現(xiàn)實的應(yīng)用或游戲。用戶在群里面編輯或打開某個“號”的代碼(即可自然語言混合代碼),進入預(yù)執(zhí)行。

對于單行的代碼,取首字作為函數(shù),其他字作為參數(shù),eval動態(tài)執(zhí)行,對參數(shù)進行分割,然后進行數(shù)據(jù)類型轉(zhuǎn)換得到真實的、機器可識別的真實參數(shù)。數(shù)據(jù)類型轉(zhuǎn)換以后進入函數(shù)調(diào)用階段,依次進行以下條件的判斷:該函數(shù)是否存在?是否有優(yōu)先執(zhí)行的函數(shù)?是否重名函數(shù)?是否可用javascript或C#直接執(zhí)行?如果函數(shù)不存在,參考上述后實現(xiàn)的實施例執(zhí)行。如果不能用javascript或C#直接執(zhí)行,則需要通過接口或套接字執(zhí)行,連接數(shù)據(jù)庫接口,根據(jù)不同的編程語言的接口或套接字選擇,反饋到虛擬現(xiàn)實、增強現(xiàn)實或混合現(xiàn)實的接口。

對于多行的代碼,需要進行預(yù)處理,用javascript或C#整體執(zhí)行。如果不能按整體執(zhí)行,先以換行符或結(jié)束符分割,逐行執(zhí)行函數(shù),最后反饋到AI虛擬現(xiàn)實、增強現(xiàn)實或混合現(xiàn)實的接口。

虛擬現(xiàn)實、增強現(xiàn)實或混合現(xiàn)實的接口輸出返回結(jié)果,進入備處理階段,然后通過VR虛擬現(xiàn)實處理接口、AR增強現(xiàn)實處理接口、MR混合現(xiàn)實處理接口、RR遠程現(xiàn)實處理接口執(zhí)行其他功能接口執(zhí)行或生成結(jié)果,結(jié)束運行。

如果代碼只有一個字,則執(zhí)行單字函數(shù)或該字對應(yīng)的應(yīng)用或游戲。

通過廣表共享智慧的方式可以參考前述實施例,廣表連入數(shù)據(jù)庫接口。

以上內(nèi)容是結(jié)合具體的優(yōu)選實施方式對本發(fā)明所作的進一步詳細說明,不能認定本發(fā)明的具體實施只局限于這些說明。對于本發(fā)明所屬技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干簡單推演或替換,都應(yīng)當視為屬于本發(fā)明的保護范圍。

當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1