在Common Lisp中使用 List Comprehension

 在 Python 和 Haskell中有非常簡潔強大的 List Comprehension 用法: >>> [(x, y) for x in range (1, 4) for y in ["A", "B"]][(1, 'A'), (1, 'B'), (2, 'A'), (2, 'B'), (3, 'A'), (3, 'B')]  在 Common Lisp 中可以用  incf-cl 庫來實現, 通過 quicklisp 安裝很方便:  * (ql:quickload

入手Kindle3 , 開始閱讀

說得好像自己不讀書似的。不過說實話,有了筆記本、ipad、能隨時上網的手機,反而讀書的時間越來越少了。大量的時間都消磨在無意義的網路衝浪和不停的重新整理中了。下狠心,入手了kindle,準備將ipad扔進垃圾筒。今天入手第一天,閱讀記錄一下: k3_1  Jan-10: 《Beating the Averages》, What makes Lisp different   , 外語學習的真實方法 (30%) 在英語那篇知道了

Clozure CL中使用 hunchentoot 及中文編碼的小技巧

由於 Clozure CL 的文檔太糟糕,而且與slime及 cl-fad 之間有些不相容,在載入 hunchentoot 及使用中文時會有些問題。這裡提供一個繞過的辦法: 1. ccl::delete-directory 與 fad的同名函數衝突,因此先執行: (setf *default-file-character-encoding* :utf-8) 2. 中文編碼,先執行下面的語句,設定lisp源檔案的編碼 (setf *default-file-character-encoding*

kindle3 — 第二天: 《淺薄》《經濟史的趣味》

《淺薄》 一書所講的內容,恰好與我遇到的實際問題完全相符: 我發現在網路越來越方便,資訊越來越多的時候,我已經難以專註的閱讀了。資訊變得零碎,在各個關聯的連結中跳來跳去,超過3分鐘不檢查微博或郵件就開始心痒痒。 這是壞事嗎? 或者說這會摧毀“深入”思考的能力嗎?現在說好說壞還很難講,但這就是正在發生的,人類的未來難道就是變成一個超級網路中的“思考電池”嗎? 想起《Matrix》裡的人體電池了。 《經濟史的趣味》 由一堆短篇的文章組成,剛剛讀完序。

關於Lisp的另一則小故事:Lisp在Google的命運

      之前曾經提到過的一個遠端偵錯“深空任務“中的飛行器上Lisp代碼的故事,我找到出處了, http://www.flownet.com/gat/jpl-lisp.html   JPL就是推進動力實驗室,如果沒記錯的話,好像是錢學森參與建立的。      作者在文中提到了他離開JPL,去Google工作的一段經曆, 他想去推廣Lisp的應用,找到主管技術的VP,對話如下: Me: I'd like to talk to you about something...Him: Let

Lisp應用的一點心得

註:最重要的是去用它,Lisp不是學出來的,是用出來的。這裡總結一些我對Lisp實用的心得,與我最初的觀點不同,相信也不是最終的正確觀點,只是階段性的總結。0。Lisp一點都不怪異,也不需要瞭解函數式編程之類的,也不需要遞迴,也不需要研究人工智慧。1. 把Lisp當成Python那樣,去用。2. Emacs + Slime不只是工具,更是一種開發流程,編碼-運行-測試-改進迭代最快速。3。asdf 是庫管理的好工具4。quicklisp 是安裝庫最快捷的方式5。slime +

virtualBox按住CentOS6.3時出現的錯誤提示資訊:磁碟空間不夠

轉自:http://xxlovexx.cn/post/2012-09-25/40039094843虛擬電腦運行發生錯誤! 詳細的錯誤資訊顯示在下面. 你可以試著修複這個描述的錯誤並恢複虛擬電腦的運行.The I/O cache encountered an error while updating data in medium "ahci-0-0" (rc=VERR_DISK_FULL). Make sure there is enough free space on the disk and

Lisp的特性 (評論發不出,只好寫一篇新的)

本來是給 Lisp的給力特性 這篇文章的評論,奈何csdn的blog上無法提交,只好新發一篇:  目前我不知道到底與C++的宏(其實也是一樣的編譯期展開),還有比普通函數的優勢在哪。(原諒我才學Lisp沒有幾天)====Lisp 的Macro 與  C++中 Macro 的區別:  (原諒我N多年沒用過C++)  Lisp的語言本身就是 S運算式, Lisp 的Macro直接巨集指令清單,可以應用全部的Lisp文法工具來將輸入列錶轉換成目標的程式列表。相比較來說 C++的Macro更多隻是替換。

主架構視窗隨子視窗移動

最近,在一個多文檔視圖結構裡面做介面,把標題列,功能表列,工具列隱藏了,然後用對話方塊代替,在對話方塊裡放置所需介面,對話方塊用CDialogBar衍生類別實現。其中關於視窗移動的問題,試了好幾種方法,比如,在對話方塊的OnMove,OnMoving訊息響應中發送訊息到主架構視窗,都不能滿足移動視窗要求,要麼某個方向移動艱難,要不拖動時留著背影殘留,最後,尋找了資料,找到了一個比較好的方法,於是解決了該問題。WM_SYSCOMMAND訊息請參見MSDN文檔。void

Haskell中操作線性代數庫及使用矩陣及gnuplot繪圖的方法

Haskell 原生的資料結構對於大規模的數學運算來說並不高效,如果使用 List 來儲存向量或者矩陣,是比較低效的。好在,Haskell有豐富的第三方庫,可以藉助強大的專業數學庫來完成這部分操作。今天將介紹的就是 hmatrix 這個庫。 一 安裝開發環境: MacOSX 10.51. 安裝依賴庫GSL (GNU Scientific Library),去GNU的官網下載原始碼自己編譯吧。2. 安裝 hmatrix, gnuplot 等,用 cabal install ,不再贅述。  ====

Icesword驅動部分分析

Icesword驅動部分icesword.exe 在執行的時候會放出一個驅動程式 ispubdrv.sys,icesword.exe 裝載這個驅動,這個驅動安裝後就不會卸載。直到系統重新啟動。這可能是因為驅動中調用了PsSetCreateThreadNotifyRoutine 函數.下面是這個函數在 ddk 中的介紹。/////////////////////////////////////////////// PsSetCreateThreadNotifyRoutine registers

把主架構視窗設定為圓角矩形,並改變外圍邊框顏色

最近需要把主架構視窗設定為圓角矩形,並且替換掉邊框顏色。程式中已經隱藏掉標題列,功能表列,工具列,因此邊框不是藍色,而是系統色彩。改變外圍邊框顏色是在void CMainFrame::OnNcPaint()中進行繪製邊框即可。設定主架構視窗為圓角矩形在void CMainFrame::OnSize(UINT nType, int cx, int cy){ CMDIFrameWnd::OnSize(nType, cx, cy); // TODO: 在此處添加訊息處理常式代碼 // 銷毀舊地區 m_

終於比IceSword底層了

{此文轉自zzzevazzz,自己MARK一下,看官請注意原作}                                       IceSword有反調試功能,搞的我想研究一下它的原理都舉步維艱。不過同樣是pjf的作品FileMgr卻沒有設防,正好拿來開刀。     經過IrpMon、IrpTrace、WinObj、NTObjects、WinDbg等工具的左右夾擊,終於發現FileMgr通過直接IoCallDriver(/Device/Ftdisk裝置對象,

侃侃自訂文法DSL的實現

之前一篇blog文章: 《侃侃那些美麗的程式設計語言(上)》裡面談到了 Smalltalk的自訂文法,感覺意猶未盡,特地展開談一下。 上文中已經說過了,Smalltalk 的文法很簡單,只有基本的三四條:一切都是對象,一切都是對象間的訊息。從這一個基礎出發,可以得到這樣的結論:一切文法都是對象和訊息。我們能自訂對象和對象的方法,因此,我們可以自己定義文法。 這一切成為可能的關鍵是:block , 它表示一個代碼塊,這個東西並不稀奇,在 ruby

VC多文檔轉為單文檔後 彈出“建立空文檔失敗”對話方塊——原因及解決方案

同事把一個VC++2003開發的多文檔工程轉化為單文檔工程,按照網上所說,做了修改。但是在BOOL CSDITestApp::InitInstance()中的語句if (!ProcessShellCommand(cmdInfo))

調試VMP1.2的一點技巧

     搞SNDA的加密方式有一個多月的時間了。   由於遊戲選的不好,當初弄千年這個垃圾的時候一個星期搞定離線,但現在不行了,SNDA在驅動裡弄了一定的技巧,使得連ATTCH遊戲進程都不行。  尤其是驅動裡面加了VMP,更難弄了。  儘管逆向的結果很差,弄逆了2周的驅動只得作罷,中間有些技巧MARK一下。   在VM的時候需要選擇函數,然後產生程式搜尋E8,E9等CALL函數,讓它跳到VMP000418679  |. 

將E8 15 69 FF FF 89 44 24 28 68 8C 38 93 D8 9C C7一長條字串換成數組

 //將E8 15 69 FF FF 89 44 24  28 68 8C 38 93 D8 9C C7一長條字串換成數組DWORD StringToHex(unsigned char *strin) {  int i = 0,  length = strlen((char*)strin) - 1;  DWORD irt = 0;   char strtmp[1] = {0};   while(strin[i])  {          switch(strin[i])        {    

動態載入DLL檔案在NtDll內部的流程

     最近在弄傳奇3的動態DLL檔案的時候很惱火~~盛大的遊戲的登陸之前會接受一段代碼,這段代碼邊解密邊執行,中間不過是搜尋KERNEL32的GetMoudleHandle、GetProcAddress、和LoadLibraryEx、SetUnhandleExceptionFilter(這個之後沒怎麼用到),找到這幾個函數之後,進行動態載入。如果在DLL載入進入遊戲之後的話,調試會不起作用,可能覺得裡面有ANTI的代碼,但是確定沒有調用DLL裡面的函數。可能在DLLMAIN裡面就已經執行了,

sysenter 和 sysexit

   在 Ring3 的代碼調用了 sysenter 指令之後,CPU 會做出如下的操作:   1. 將 SYSENTER_CS_MSR 的值裝載到 cs 寄存器   2. 將 SYSENTER_EIP_MSR 的值裝載到 eip 寄存器   3. 將 SYSENTER_CS_MSR 的值加 8(Ring0 的堆棧段描述符)裝載到 ss 寄存器。   4. 將 SYSENTER_ESP_MSR 的值裝載到 esp 寄存器   5. 將特權級切換到 Ring0   6. 如果 EFLAGS

seaside在虛擬機器主機 webfactional 上的部署

seaside 是一個Web開發架構,在《Beyond Java》中有一章專門介紹,目前版本到 3.0 了。seaside 是基於smalltalk的,對這個詞感到匪夷所思的讀者不必繼續了。  這裡記錄下它的部署過程: 1. 準備一個seaside 的運行環境, 下載 squeak, 以及一個可以啟動並執行 seaside image2. 在  webfactional 的 panel 中添加一個 Custom App, 添加完後,在列表中會有它 listening 的連接埠號碼3.

總頁數: 61357 1 .... 20236 20237 20238 20239 20240 .... 61357 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.