[英]Symbolic Manipulation Within .Net
我回想起我的一門計算機科學課程中的一項內容,其中涉及Common Lisp的符號區分。 common lisp的屬性允許您采用方程式並應用符號操作。
我的問題是,.Net框架中是否有任何允許符號操作的庫和編程語言? 我更喜歡使用C#來解決這個問題。 我已經看過此鏈接,但沒有給出具體答案。
讓我更詳細地說明我的情況。
假設我有條件公式,整體為String。 每個名稱1DPZ_XY代表一個整數變量。 這些變量中的每一個都已分配了一個值。
"
{
1DPZ_a2 = (2 OR 3)
AND
(
1DPZ_a6 = 9
OR
1DPZ_b3 = (3 OR 7)
AND
(
1DPZ_b4 = 8
OR
1DPZ_b5 = 2
OR
1DPZ_b6 = (4 OR 2)
)
)
}
"
顯然,此公式將返回true或false。 如何將這個String邏輯轉換為可以與之交互的if語句?
您可以解析字符串並從中構建一個.NET表達式樹 。 然后,您可以操縱該表達式樹以對其進行評估,打印或轉換(通常使用ExpressionVisitor )。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.