Browsing projects by Tag(s)

Select a tag to browse associated projects and drill deeper into the tag cloud.

Showing page 1 of 1

Protocol Buffers compiler and implementation written in Common Lisp. Discussion started on the Wiki. Significant progress to coding exists, will be checked in shortly. For Protocol Buffers main implementation and discussion, see Protocol Buffers at http://code.google.com/p/protobuf/

0
 
  0 reviews  |  0 users  |  0 current contributors
 
 

For fun I ported version 3.6.2 of Rogue from C to CL. According to the roguelike development website: Rogue 3.6 was released on or about 06/16/1981 and was the first version of Rogue ever widely released. PlatformsHas been run successfully on Linux, Mac, and Windows using SBCL 1.0.5. ... [More] DependenciesDepends on the CL package CL-NCURSES (version 0.1.4 or higher). On Windows you need the PDCurses library and elsewhere you need the Ncurses library (version 5.6 or higher). StatusRuns from CL's REPL, not the Unix or Windows shells Almost everything works, except: Death screen is wonky Saving works but is a bit hokey Doesn't implement all the encryption stuff meant to avoid hacking save files (kind of pointless nowadays) Doesn't implement shelling out (also not as important nowadays) [Less]

0
 
  0 reviews  |  0 users  |  5,128 lines of code  |  0 current contributors  |  Analyzed about 3 hours ago
 
 

A semi-random collection of Common Lisp, Scheme, and ??? code with an emphasis on illuminated programming.

0
 
  0 reviews  |  0 users  |  10,317 lines of code  |  0 current contributors  |  Analyzed 4 days ago
 
 

trivial-irc is a (very) trivial IRC client library. It has no facilities for CTCP, and only very simple facilities for receiving, handling and sending messages. It might evolve over time, and it's my intention to keep the current API available, and to keep it asdf-installable. It has been ... [More] tested on Allegro 8.1 and SBCL 1.0.18 on Linux. It should work on any system usocket works on. [Less]

0
 
  0 reviews  |  0 users  |  0 current contributors  |  Analyzed 2 days ago
 
 

Genworks Extensions, Utilities, Customizations, Interfaces, and Applications for Genworks GDL. NOTE: Because this is a mixed open-source/closed-source project, we feel that we should probably migrate away from Google Code for hosting the project activities. The subversion repository for the ... [More] codebase is now being hosted by Genworks -- please contact us if you would like access. The Issues List is still here but will probably be migrated elsewhere in the near future. Information on Genworks' commercial GDL product can be found at http://www.genworks.com. Genworks Discussion Group (hosted by Google) at http://groups.google.com/group/genworks. [Less]

0
 
  0 reviews  |  0 users  |  0 current contributors
 
 

cl-op is a partial application and partial evaluation library for Common Lisp inspired by Goo's op function and SRFI 26 (Notation for Specializing Parameters without Currying). Release notes0.7.0: Rewrote code walker in CPS. Better lifting from special forms. Added compiler macro for beta ... [More] reduction. BREAKING CHANGE -- renamed CL-OP-HOF to CL-OP.HOF 0.6.1: Added GENERATOR to CL-OP-HOF. Refactored WALK. 0.6.0: Better invariant lifting of macro forms containing slots. Added compose. BREAKING CHANGE: Moved the utility higher order functions (flip, conjoin, disjoin, compose) to a seperate package cl-op-hof. 0.5.2: Major refactoring. Added conjoin. Exported conjoin and disjoin. 0.5.1: Made environment passing explicit. Added CHANGELOG.txt 0.5.0: BREAKING CHNAGE -- removed papply, papply*, pfuncall, pfuncall*, pmultiple-value-bind, pmultiple-value-bind*, *walker-ignore-list* 0.4.2: added support for nested ops. 0.4.0: made invariant lifting less aggressive but more robust. 0.3.2: minor cleanup. 0.3.1: bugfix: improper handling of lambda macro. 0.3.0: macroexpanding only to determine whether to lift. 0.2.0: BREAKING CHANGE -- op now takes a function name or a lambda expression as the function argument (instead of a function designator as before). Added pfuncall and pmultiple-value-call. 0.1.0: initial release. Installationcl-op is ASDF installable. DocumentationPackage cl-opMacro op, op*Syntax:op fn &rest args+ => function op* fn &rest args+ => functionDescription:op creates an anonymous function with implicitly defined arguments. fn is either a function name or a lambda expression (not a function designator. In this regard op is more akin to function than funcall). Each arg is either a slot for an implicit required parameter _ or rest parameter __ or an s-expression potentially containing further slots or op forms (see below). Non-slot args are evaluated. op* is like op except it defers evaluation of non-slot arguments. It is primarily intended to be used with functions with side-effects. Examples:(mapcar (op / _ 2) '(1 2 4 8 10)) => '(1/2 1 2 4 5) (mapcar (op / (+ _ _)) '(2 3 4) '(2 3 4)) => '(1/4 1/6 1/8) (mapcar (op + _ (random 100)) '(1 1 1 1 1)) => '(26 26 26 26 26) (mapcar (op* + _ (random 100)) '(1 1 1 1 1)) => '(51 51 89 13 99) Notes:op forms can be meaningfully nested. Slots in nested op forms are not added to the surrounding op argument list. Symbols _ and __ can still be used as arguments if quoted: (defun __ (x y) (equal x y)) (mapcar (op subst _ '_ _ :test #'__) '(a b c) '((foo _ bar _ _ baz) (_ _) (1 2 _ d))) => '((FOO A BAR A A BAZ) (B B) (1 2 C D))Function argument as slot can be simulated by using funcall or apply: (mapcar (op funcall _ '(1 2 3 4 5)) (list #'first (op nth 2 _))) => '(1 3)Package cl-op-hofFunction conjoinSyntax:conjoin &rest predicates => functionDescription:conjoin combines predicates by (logical) and. Function disjoinSyntax:disjoin &rest predicates => functionDescription:disjoin combines predicates by (logical) or. Function composeSyntax:compose &rest functions => functionDescription:compose composes functions. Function flipSyntax:flip fn => functionDescription:flip switches the first two arguments of fn. Among other things it somewhat compensates for op's strict left-to-right argument order. Examples:(mapcar (flip #'/) '(2 2 2) (1 2 3)) => '(1/2 1 3/2)Macro generatorSyntax:generator &body body => functionDescription:generator makes an anonymous function with body body that takes any number of arguments (but ignores them). Examples:(mapcar (generator (1- (random 2.0))) '(2 2 2)) => '(-0.864053 0.52210474 -0.8798127)Deprecated[deprecated] Macro papply, papply*, pfuncall, pfuncall*, pmultiple-value-call, pmultiple-value-call*Syntax:papply &rest args+ => function papply* &rest args+ => function pfuncall &rest args+ => function pfuncall* &rest args+ => function pmultiple-value-call &rest args+ => function pmultiple-value-call* &rest args+ => functionDescription:papply, pfuncall and pmultiple-value-call are op equivalents of apply, funcall and multiple-value-call respectively. [deprecated] Special variable *walker-ignore-list*Description:Parser ignores forms starting with a symbol from this list. Used in situations where _ or __ already have an established meaning (e.g. to facilitate op nesting). Related workcurly Alexandria (curry and rcurry) arnesi (L# -- A reader macro for simple lambdas ) F-underscore [Less]

0
 
  0 reviews  |  0 users  |  157 lines of code  |  0 current contributors  |  Analyzed 7 days ago
 
 

cl-gcalc is a Common Lisp wrapper for Google Calculator. Release notes0.1.0: initial release. Installationcl-gcalc is ASDF-installable. It depends on Drakma and cl-ppcre. DocumentationFunction gcalcSyntax:gcalc expression => value, unitsDescriptiongcalc queries Google with expression and ... [More] tries to parse the result. Raises gcalc-invalid-expression if Google Calculator widget is not included in the response form Google. Examples:(gcalc "3^28") => 2.2876793e13 (gcalc "(4+4) m in inch") => 314.96063, "inch" (gcalc "4 + 3 i - (2nd root of -3)") => #C(4.0 1.2679492)Function make-gcalc-closureSyntax:make-gcalc-closure expression => functionDescriptionmake-gcalc-closure creates a callable calculation with parts of expression replaced with arguments to the resulting function. Uses format syntax for directives. Examples:(mapcar (make-gcalc-closure "6th root of ~A") '(12345 -56 453)) => '(4.8074546 #C(1.6939294 0.97799057) 2.7712967)Function gcalc-replSyntax:gcalc-repl => nilDescriptiongcalc-repl establishes an interactive Google Calculator session. Results of previous calculations cam be referenced with #n where n is the n-th result. The symbol # alone is bound to the last result. Examples(gcalc-repl) Google Calculator REPL Type q to quit. > 3+3 #0= 6 > 7-2 #1= 5 > # + #0 #2= 11 > #1^#2 #3= 48828125 >Special variable *api-endpoint*, *result-pattern*DescriptionSince there is no Google Calculator API yet, special variables *api-endpoint*, *result-pattern* are provided as an attempt at future-proofing. *api-endpoint* designates the URL of Google Search. *result-pattern* is the regex used to extract the Google Calculator widget from a Google Search results page. Condition gcalc-invalid-expressionDescriptiongcalc-invalid-expression is raised when Google Calculator widget is not found on the Google Search results page. It is usually caused by Google not recognising the query as a Google Calculator expression. [Less]

0
 
  0 reviews  |  0 users  |  101 lines of code  |  0 current contributors  |  Analyzed 3 days ago
 
 
 
 

Creative Commons License Copyright © 2013 Black Duck Software, Inc. and its contributors, Some Rights Reserved. Unless otherwise marked, this work is licensed under a Creative Commons Attribution 3.0 Unported License . Ohloh ® and the Ohloh logo are trademarks of Black Duck Software, Inc. in the United States and/or other jurisdictions. All other trademarks are the property of their respective holders.