2012年12月18日 星期二

新程式語言構想

開發一個新的程式語言,對我來說,是一項很難的任務。
但我有一個構想,
是程式語言中,就有簡單語法支援,所有A() call B()都做某事。
例如,新的語法用control來達成,A() call B() ,而B()再call C()的話,
所有variable t都要+1,寫成:
control(A->B->C:t+1)
{
    ....
    A()
    Test()
    ....
}
就是對於{}內,所有A() call B() ,而B()再call C()的話,
所有variable t都會+1。
目前現有的程式語言,
例如,C/C++,Java,Python,Lisp,Prolog…
要達成上面的目標,似乎都可以,但是都沒有新語言的這種簡單寫法。
希望哪一天,有人開發新語言,達成我要的目標。

Python 使用if的超新手錯誤

最近Python遇到一個錯誤,
但是這個錯誤造成的error,實在不常發生,
就在想,是什麼造成錯誤,
原來錯在if state 的誤用,
當使用
if m:
時,
m在幾種狀態不會執行,一是None type,
第二種,我當時忽略的是,m=0,也不會執行。
第三種,是m=[]
其它也許還有…
如果只是要用在m有value時,
請用
if m != None:
代替 if m:

Codewars: The Baum-Sweet sequence

這題列在7 kyu,我覺得有點難度,應該有6 kyu的程度了。 這題有數學題的感覺,我因為害怕TLE,加上我有感冒, 因此是直接問ChatGPT 4o怎麼解決, 沒想到一開始,ChatGPT是提供TLE的方法, 我再問ChatGPT要如何加快, 才給我夠快的方法, 看了ChatG...