2007年4月30日 星期一

歐式中文、歐化句子

在某村看到某主題後打的文章。


歐式中文?應該是我常聽到的「歐化句子」吧。
例如:
你們正在進行討論嗎?
不要作出攻擊。

「討論」就「討論」,根本不用說「進行討論」,「正在」已經有進行中的意思。
「攻擊」就「攻擊」,根本不用說「作出攻擊」。

「討論」和「攻擊」本身就可以作為動詞使用。

「你們正在進行討論嗎?」甚至可以簡化成「你們在討論嗎?」
「不要攻擊。」的「攻擊」作名詞解還是動詞解,也不會有問題。

詞性問題只是歐化句子其中一部份。
不過這是我看得到最大的害處──累贅的句子非常礙眼/礙耳。
重要的是,這類問題太易察覺,亦容易修正。

可悲的是,可以在大陸的一些電視台,時常聽到充滿歐化句子的正式通知或通告……



關於詞性問題,中文和英文或日文不同。

英文是屈折語,除了生字本身的詞性,還可以透過後綴這種東西改變詞性。

日文是黏着語,比英文更有規律,透過非常有規律的辭尾來改變詞性。

日文和英文都有詞幹(或類似)的概念。

中文是孤立語,沒有詞綴或詞尾這類東西。

在中文中,詞語可以透過在句中的位置來表達詞性。

要指出的是,有人以背誦的方式分類詞性,亦有人以功能分類詞性,這樣就形成關於詞語詞性的兩套系統。

以功能分類詞性就是說,修飾名詞的詞語一律是形容詞,修飾動詞或形容詞的詞語一律是副詞,修飾副詞的詞語也是副詞……











你能從形式感受到以下句子的意思嗎?(只能感受,不能理解。)
1、做完了美麗。
2、麵包了你。
3、他已火炎。

你理解並說明以下句子的意思嗎?
1、大家討論一下討論。
2、我糾正你的糾正。
3、討論討論。
4、糾正糾正。




─────────分隔線──────────────
你說中文難和模糊不清嗎?是的。
對於機器翻譯來說,自然語言之中,最易是像英文這類拉丁語系的語文,其次是日文,最難是中文。
討論這個問題需要點編譯原理(Compiling Principle)的知識。遲些再發blog談談。




似懂非懂度:72.35

2007年4月8日 星期日

回應:关于 Calendar

用 google 搜尋時找到的一篇文章,因為找不到回應的方法,所以在這回應以抒發一下之前的怒惱。
http://topic.csdn.net/t/20020320/08/587524.html
先看看下面的这段代码,我是从DW上抄来的:
先看看下面的这段代码,我是从DW上抄来的:

import java.io.*;
import java.util.*;

public class WhatIsCalendar {

public static void main(String[] args) {
Calendar calendar = Calendar.getInstance();
if (calendar instanceof GregorianCalendar)
System.out.println("It is an instance of GregorianCalendar");
}
}

编译运行通过。
可是小弟就是不明白:
GregorianCalendar 是由 Calendar 派生出来的,也就是说,在写作 Calendar 时,GregorianCalendar 还没有的。那 Calendar.getInstance() 怎么可以生成得到一个子类来返回呢?

如果 Calendar.getInstance() 返回的只是一个 Calendar ,那么 Calendar 是一个abstract class ,又怎么可以实例化呢?



6 楼GFox(小狐)回复于 2002-03-20 09:22:06 得分 0 to ChDw(米):
如果
getInstance()返回的对象为java.util.GregorianCalendar是Calendar的子类。
那么:
GregorianCalendar 是由 Calendar 派生出来的,也就是说,在写作 Calendar 时,GregorianCalendar 还没有的。那 Calendar.getInstance() 怎么可以生成得到一个子类来返回呢?



7 楼GFox(小狐)回复于 2002-03-20 09:23:55 得分 0 to gularess() :

谢谢你,可是,同上,在没有子类的情况下,它怎么可以生成一个子类来返回呢?



之後一大群人在回覆,卻沒有一個答到問題的核心......

較好的回答是:
這就是延遲執行,方法體在被呼叫時才真正被執行,在執行時,其子類一早已被定義了。

其實那個主題的第13樓已經能夠沾到邊邊的了。

延伸資訊:
其實這裡有一個無限循環: Calendar 的 method → GregorianCalendar → Calender → Calendar 的 method → ......
延遲計算是處理無限的一種方法。

維基百科搜尋關鍵字:
自引用、自參考、自我引用、自我參考


P.S. 我之前的怒惱是,看到一個農曆類別的實作,加上一班灌水說強的人,那個「實作」還要被不斷轉載而充斥google搜尋的結果頁,妨礙人家找真正的資訊。
P.S. 這是 JAVA 中農曆的真正實作: http://www.icu-project.org/apiref/icu4j/com/ibm/icu/util/ChineseCalendar.html