2018-07-01T00:00:02Z kozy quit (Remote host closed the connection) 2018-07-01T00:00:45Z kozy joined #lisp 2018-07-01T00:19:56Z gabiruh joined #lisp 2018-07-01T00:24:37Z gabiruh quit (Ping timeout: 256 seconds) 2018-07-01T00:24:57Z kenster quit (Ping timeout: 240 seconds) 2018-07-01T00:27:27Z dddddd quit (Read error: Connection reset by peer) 2018-07-01T00:29:47Z kajo quit (Ping timeout: 245 seconds) 2018-07-01T00:31:33Z fikka joined #lisp 2018-07-01T00:31:57Z megalography quit (Ping timeout: 240 seconds) 2018-07-01T00:32:40Z gabiruh joined #lisp 2018-07-01T00:35:46Z zachk quit (Quit: Leaving) 2018-07-01T00:36:30Z fikka quit (Ping timeout: 260 seconds) 2018-07-01T00:47:06Z megalography joined #lisp 2018-07-01T00:50:53Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-01T01:05:40Z mathrick quit (Ping timeout: 245 seconds) 2018-07-01T01:17:27Z mathrick joined #lisp 2018-07-01T01:19:22Z pierpal joined #lisp 2018-07-01T01:22:29Z Naergon quit (Ping timeout: 255 seconds) 2018-07-01T01:23:45Z pierpal quit (Ping timeout: 264 seconds) 2018-07-01T01:25:58Z fikka joined #lisp 2018-07-01T01:28:19Z loli quit (Quit: WeeChat 2.1) 2018-07-01T01:29:31Z loli joined #lisp 2018-07-01T01:29:32Z elts quit (Ping timeout: 256 seconds) 2018-07-01T01:30:17Z elts joined #lisp 2018-07-01T01:30:25Z pierpal joined #lisp 2018-07-01T01:30:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-01T01:39:42Z loli quit (Quit: WeeChat 2.1) 2018-07-01T01:40:28Z loli joined #lisp 2018-07-01T01:43:35Z shangul quit (Remote host closed the connection) 2018-07-01T01:44:13Z varjag joined #lisp 2018-07-01T01:48:35Z varjag quit (Ping timeout: 240 seconds) 2018-07-01T01:55:23Z scottj left #lisp 2018-07-01T02:01:55Z markoong quit (Quit: Konversation terminated!) 2018-07-01T02:02:20Z markoong joined #lisp 2018-07-01T02:02:46Z pjb` joined #lisp 2018-07-01T02:03:26Z EvW quit (Ping timeout: 255 seconds) 2018-07-01T02:03:31Z gabiruh quit (Ping timeout: 268 seconds) 2018-07-01T02:04:03Z JuanDaugherty joined #lisp 2018-07-01T02:04:27Z JuanDaugherty quit (Remote host closed the connection) 2018-07-01T02:05:22Z pjb quit (Ping timeout: 256 seconds) 2018-07-01T02:07:27Z markoong quit (Ping timeout: 240 seconds) 2018-07-01T02:11:10Z robotoad quit (Quit: robotoad) 2018-07-01T02:14:02Z buffergn0me joined #lisp 2018-07-01T02:15:53Z slyrus1 quit (Quit: slyrus1) 2018-07-01T02:19:58Z shifty joined #lisp 2018-07-01T02:24:24Z ldb joined #lisp 2018-07-01T02:31:04Z pierp quit (Quit: Page closed) 2018-07-01T02:32:06Z nowhere_man joined #lisp 2018-07-01T02:33:48Z siraben joined #lisp 2018-07-01T02:35:00Z robotoad joined #lisp 2018-07-01T02:40:03Z pjb`` joined #lisp 2018-07-01T02:42:12Z pjb` quit (Ping timeout: 256 seconds) 2018-07-01T02:59:22Z gabiruh joined #lisp 2018-07-01T03:04:36Z milanj quit (Quit: This computer has gone to sleep) 2018-07-01T03:12:57Z loke quit (Remote host closed the connection) 2018-07-01T03:13:57Z fikka joined #lisp 2018-07-01T03:14:09Z loke joined #lisp 2018-07-01T03:18:57Z fikka quit (Ping timeout: 264 seconds) 2018-07-01T03:19:05Z jeosol quit (Ping timeout: 260 seconds) 2018-07-01T03:22:41Z pierpal quit (Quit: Poof) 2018-07-01T03:22:58Z pierpal joined #lisp 2018-07-01T03:23:18Z brendyn joined #lisp 2018-07-01T03:31:24Z smasta joined #lisp 2018-07-01T03:31:37Z slyrus_ quit (Ping timeout: 256 seconds) 2018-07-01T03:32:05Z paule32 quit (Ping timeout: 260 seconds) 2018-07-01T03:43:59Z slyrus_ joined #lisp 2018-07-01T03:46:05Z Khisanth quit (Ping timeout: 240 seconds) 2018-07-01T03:55:29Z beach: Good morning everyone! 2018-07-01T03:57:35Z charh quit (Ping timeout: 240 seconds) 2018-07-01T03:58:26Z FreeBirdLjj joined #lisp 2018-07-01T03:59:29Z Khisanth joined #lisp 2018-07-01T04:10:17Z pjb``` joined #lisp 2018-07-01T04:12:18Z pjb`` quit (Ping timeout: 256 seconds) 2018-07-01T04:15:56Z doesthiswork quit (Quit: Leaving.) 2018-07-01T04:16:46Z Beep-Lord left #lisp 2018-07-01T04:18:24Z shangul joined #lisp 2018-07-01T04:19:17Z fikka joined #lisp 2018-07-01T04:23:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-01T04:25:05Z siraben quit (Ping timeout: 240 seconds) 2018-07-01T04:25:47Z ldb: hello 2018-07-01T04:25:58Z beach: Hello ldb. 2018-07-01T04:26:13Z ldb: how to set print width of a stream 2018-07-01T04:27:29Z beach: I think that kind of functionality is in the pretty printer. 2018-07-01T04:27:37Z beach: The stream itself does not have any fixed width. 2018-07-01T04:28:22Z beach: clhs *print-right-margin* 2018-07-01T04:28:22Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/v_pr_rig.htm 2018-07-01T04:28:38Z ldb: emm, i see 2018-07-01T04:31:03Z paule32 joined #lisp 2018-07-01T04:31:48Z ldb: so I have (format t "(LET ~:<~@{~:<~W ~_~W~:>~^ ~:_~}~:>~_ ...)" 2018-07-01T04:31:49Z ldb: '((x 4) (*print-length* nil) (z 22) (list nil))) 2018-07-01T04:32:33Z ldb: but seems setting either *print-right-margin* or *print-length* 2018-07-01T04:32:56Z ldb: it would always prints one line (LET ((X 4) (*PRINT-LENGTH* NIL) (Z 22) (LIST NIL)) ...) 2018-07-01T04:34:27Z ldb: oh, i should set *print-pretty* to T 2018-07-01T04:36:08Z beach: *PRINT-LENGTH* does not control the width of lines. 2018-07-01T04:37:47Z paule32: hello beach 2018-07-01T04:38:53Z skapata quit (Remote host closed the connection) 2018-07-01T04:39:28Z doesthiswork joined #lisp 2018-07-01T04:40:52Z doesthiswork quit (Client Quit) 2018-07-01T04:42:47Z ldb: CCL provides a method STREAM-LINE-LENGTH, but it's not setfable 2018-07-01T04:43:58Z paule32: hello ldb 2018-07-01T04:44:02Z shangul quit (Quit: sudo rm -rf /usr/*) 2018-07-01T04:45:24Z ldb: paule32: hi 2018-07-01T04:45:44Z pjb``` quit (Ping timeout: 256 seconds) 2018-07-01T04:46:05Z paule32: ldb: have you lisp skill's ? 2018-07-01T04:47:01Z paule32: maybe you read my messages? 2018-07-01T04:47:09Z ldb: paule32: im basically a noob :| 2018-07-01T04:47:29Z paule32: hmm 2018-07-01T04:48:29Z pjb``` joined #lisp 2018-07-01T04:50:50Z smasta quit (Ping timeout: 260 seconds) 2018-07-01T04:51:17Z fikka joined #lisp 2018-07-01T04:52:20Z pjb``` quit (Remote host closed the connection) 2018-07-01T04:54:48Z pjb``` joined #lisp 2018-07-01T04:55:45Z karswell joined #lisp 2018-07-01T04:56:11Z fikka quit (Ping timeout: 268 seconds) 2018-07-01T04:58:10Z _cosmonaut_ joined #lisp 2018-07-01T04:59:30Z pjb``` quit (Remote host closed the connection) 2018-07-01T05:01:25Z pjb``` joined #lisp 2018-07-01T05:02:58Z _cosmonaut_ quit (Ping timeout: 268 seconds) 2018-07-01T05:07:49Z CrazyEddy joined #lisp 2018-07-01T05:07:52Z Bike quit (Quit: Lost terminal) 2018-07-01T05:08:56Z pjb```` joined #lisp 2018-07-01T05:09:58Z ldb quit (Quit: leaving) 2018-07-01T05:10:05Z pjb``` quit (Ping timeout: 260 seconds) 2018-07-01T05:11:33Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-01T05:12:20Z charh joined #lisp 2018-07-01T05:13:32Z pjb```` quit (Ping timeout: 245 seconds) 2018-07-01T05:14:24Z FreeBirdLjj joined #lisp 2018-07-01T05:17:53Z buffergn0me quit (Ping timeout: 248 seconds) 2018-07-01T05:23:38Z varjag joined #lisp 2018-07-01T05:24:00Z fikka joined #lisp 2018-07-01T05:25:03Z nanoz joined #lisp 2018-07-01T05:27:51Z varjag quit (Ping timeout: 240 seconds) 2018-07-01T05:28:34Z fikka quit (Ping timeout: 264 seconds) 2018-07-01T05:32:22Z Pixel_Outlaw quit (Quit: Leaving) 2018-07-01T05:37:38Z pjb```` joined #lisp 2018-07-01T05:46:12Z pjb```` quit (Remote host closed the connection) 2018-07-01T05:47:47Z graphene quit (Remote host closed the connection) 2018-07-01T05:49:01Z graphene joined #lisp 2018-07-01T05:52:29Z brettgilio joined #lisp 2018-07-01T05:54:35Z shka_ joined #lisp 2018-07-01T05:57:09Z brettgilio quit (Remote host closed the connection) 2018-07-01T05:57:29Z pjb```` joined #lisp 2018-07-01T06:00:15Z loli quit (Quit: WeeChat 2.1) 2018-07-01T06:09:06Z fikka joined #lisp 2018-07-01T06:10:13Z nika joined #lisp 2018-07-01T06:10:56Z xrash quit (Ping timeout: 255 seconds) 2018-07-01T06:14:30Z fikka quit (Ping timeout: 268 seconds) 2018-07-01T06:19:09Z loli joined #lisp 2018-07-01T06:26:02Z Smokitch joined #lisp 2018-07-01T06:31:07Z vhost- quit (Read error: Connection reset by peer) 2018-07-01T06:31:13Z vh0st- joined #lisp 2018-07-01T06:32:45Z pjb```` quit (Remote host closed the connection) 2018-07-01T06:35:24Z ebrasca quit (Read error: Connection reset by peer) 2018-07-01T06:35:32Z ebrasca joined #lisp 2018-07-01T06:37:34Z Smokitch quit 2018-07-01T06:39:57Z nanoz quit (Ping timeout: 264 seconds) 2018-07-01T06:40:54Z fikka joined #lisp 2018-07-01T06:42:07Z Murii_ joined #lisp 2018-07-01T06:44:34Z loginoob joined #lisp 2018-07-01T06:49:32Z loginoob left #lisp 2018-07-01T06:49:37Z fikka quit (Ping timeout: 248 seconds) 2018-07-01T06:53:02Z karlosz quit (Quit: karlosz) 2018-07-01T06:56:14Z fikka joined #lisp 2018-07-01T06:58:17Z roybattius2 joined #lisp 2018-07-01T07:00:55Z fikka quit (Ping timeout: 260 seconds) 2018-07-01T07:03:55Z roybattius2 quit (Quit: Leaving) 2018-07-01T07:14:30Z vlatkoB joined #lisp 2018-07-01T07:14:47Z nanoz joined #lisp 2018-07-01T07:16:40Z pjb joined #lisp 2018-07-01T07:30:13Z fikka joined #lisp 2018-07-01T07:34:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-01T07:45:56Z wigust- joined #lisp 2018-07-01T07:46:37Z robotoad quit (Quit: robotoad) 2018-07-01T07:48:00Z mflem quit (Read error: Connection reset by peer) 2018-07-01T07:49:38Z wigust quit (Ping timeout: 276 seconds) 2018-07-01T07:52:43Z nanozz joined #lisp 2018-07-01T07:53:47Z fikka joined #lisp 2018-07-01T07:56:02Z nanoz quit (Ping timeout: 276 seconds) 2018-07-01T07:56:35Z dddddd joined #lisp 2018-07-01T07:58:33Z fikka quit (Ping timeout: 264 seconds) 2018-07-01T08:04:04Z robotoad joined #lisp 2018-07-01T08:10:59Z makomo joined #lisp 2018-07-01T08:27:48Z kushal quit (Remote host closed the connection) 2018-07-01T08:28:01Z kushal joined #lisp 2018-07-01T08:28:17Z fikka joined #lisp 2018-07-01T08:33:08Z fikka quit (Ping timeout: 255 seconds) 2018-07-01T08:42:34Z orivej joined #lisp 2018-07-01T08:42:42Z johnnymacs joined #lisp 2018-07-01T08:45:53Z MoziM joined #lisp 2018-07-01T08:45:56Z vh0st- is now known as vhost- 2018-07-01T08:50:33Z fikka joined #lisp 2018-07-01T08:55:15Z fikka quit (Ping timeout: 260 seconds) 2018-07-01T09:02:15Z pjb quit (Remote host closed the connection) 2018-07-01T09:04:34Z pjb joined #lisp 2018-07-01T09:08:38Z holycow joined #lisp 2018-07-01T09:08:46Z pjb quit (Remote host closed the connection) 2018-07-01T09:09:20Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-01T09:12:45Z fikka joined #lisp 2018-07-01T09:16:34Z Smokitch joined #lisp 2018-07-01T09:17:23Z fckit joined #lisp 2018-07-01T09:17:25Z fikka quit (Ping timeout: 260 seconds) 2018-07-01T09:20:21Z nanozz quit (Ping timeout: 240 seconds) 2018-07-01T09:22:20Z xor-xor joined #lisp 2018-07-01T09:23:22Z xor-xor quit (Client Quit) 2018-07-01T09:24:27Z robotoad quit (Quit: robotoad) 2018-07-01T09:24:36Z random-nick joined #lisp 2018-07-01T09:24:56Z robotoad joined #lisp 2018-07-01T09:29:21Z milanj joined #lisp 2018-07-01T09:34:22Z Naergon joined #lisp 2018-07-01T09:41:45Z makomo quit (Ping timeout: 264 seconds) 2018-07-01T09:42:13Z beach` joined #lisp 2018-07-01T09:45:01Z loginoob joined #lisp 2018-07-01T09:46:13Z fikka joined #lisp 2018-07-01T09:46:30Z beach quit (Ping timeout: 256 seconds) 2018-07-01T09:46:58Z loginoob: While loading slime in emacs by M-x slime I get "End of file during parsing" while loading the history. Continue? (y or n) ... And i have to type y everytime while loading and quitting slime 2018-07-01T09:47:05Z shangul joined #lisp 2018-07-01T09:47:23Z loginoob: If someone can help me with this please let me know 2018-07-01T09:48:22Z Smokitch_ joined #lisp 2018-07-01T09:50:35Z Smokitch quit (Ping timeout: 240 seconds) 2018-07-01T09:50:59Z fikka quit (Ping timeout: 255 seconds) 2018-07-01T09:51:13Z holycow quit (Remote host closed the connection) 2018-07-01T09:54:10Z makomo joined #lisp 2018-07-01T10:08:11Z makomo: anyone know when the ELS 2018 videos will be released? :^( 2018-07-01T10:08:20Z makomo: 2 months have passed 2018-07-01T10:08:45Z varjag joined #lisp 2018-07-01T10:13:05Z varjag quit (Ping timeout: 240 seconds) 2018-07-01T10:13:07Z slyrus_ quit (Ping timeout: 245 seconds) 2018-07-01T10:21:34Z loginoob quit (Quit: Page closed) 2018-07-01T10:21:40Z NeonSquare joined #lisp 2018-07-01T10:24:52Z jackdaniel quit (Ping timeout: 268 seconds) 2018-07-01T10:25:21Z loginoob joined #lisp 2018-07-01T10:25:29Z jackdaniel joined #lisp 2018-07-01T10:25:43Z loginoob quit (Client Quit) 2018-07-01T10:26:08Z NeonSquare left #lisp 2018-07-01T10:26:15Z slyrus_ joined #lisp 2018-07-01T10:29:05Z Ven`` joined #lisp 2018-07-01T10:30:45Z Ukari joined #lisp 2018-07-01T10:31:27Z varjag joined #lisp 2018-07-01T10:33:23Z Ven`` quit (Client Quit) 2018-07-01T10:34:53Z nullniverse joined #lisp 2018-07-01T10:36:03Z gurmble joined #lisp 2018-07-01T10:36:40Z nalik89 joined #lisp 2018-07-01T10:39:01Z DemolitionMan joined #lisp 2018-07-01T10:40:54Z nullniverse quit (Ping timeout: 256 seconds) 2018-07-01T10:42:15Z littlelisper joined #lisp 2018-07-01T10:43:32Z grumble quit (Ping timeout: 600 seconds) 2018-07-01T10:43:32Z littlelisper quit (Read error: Connection reset by peer) 2018-07-01T10:45:53Z littlelisper joined #lisp 2018-07-01T10:46:09Z littlelisper: how do i create a directory? googled it, no help 2018-07-01T10:47:10Z makomo: littlelisper: check out ENSURE-DIRECTORIES-EXIST 2018-07-01T10:47:18Z jackdaniel quit (Quit: ZNC 1.6.6 - http://znc.in) 2018-07-01T10:47:46Z littlelisper: i did, it does not create 2018-07-01T10:48:51Z littlelisper: wait, it did 2018-07-01T10:49:04Z makomo: it worked when i used it. maybe your path is wrong? you should get an error if the creation fails 2018-07-01T10:49:09Z littlelisper: my bad 2018-07-01T10:49:18Z littlelisper: thanks makomo 2018-07-01T10:49:22Z makomo: :-) 2018-07-01T10:51:40Z EvW1 joined #lisp 2018-07-01T10:52:09Z lumm joined #lisp 2018-07-01T10:52:13Z pjb joined #lisp 2018-07-01T10:53:07Z fikka joined #lisp 2018-07-01T10:55:40Z jackdaniel joined #lisp 2018-07-01T10:55:47Z graphene quit (Remote host closed the connection) 2018-07-01T10:56:27Z Misha_B quit (Ping timeout: 260 seconds) 2018-07-01T10:57:05Z graphene joined #lisp 2018-07-01T10:59:00Z littlelisper quit (Quit: leaving) 2018-07-01T10:59:30Z vhost- quit (Ping timeout: 260 seconds) 2018-07-01T10:59:45Z beach` is now known as beach 2018-07-01T10:59:51Z fikka quit (Ping timeout: 256 seconds) 2018-07-01T11:03:58Z pierpal quit (Quit: Poof) 2018-07-01T11:04:18Z pierpal joined #lisp 2018-07-01T11:04:35Z paule32 quit (Ping timeout: 240 seconds) 2018-07-01T11:08:08Z igemnace joined #lisp 2018-07-01T11:08:12Z nika quit (Quit: Leaving...) 2018-07-01T11:08:58Z johnnymacs quit (Ping timeout: 265 seconds) 2018-07-01T11:17:00Z fckit quit (Ping timeout: 260 seconds) 2018-07-01T11:19:24Z markoong joined #lisp 2018-07-01T11:31:14Z paule32 joined #lisp 2018-07-01T11:34:53Z igemnace quit (Remote host closed the connection) 2018-07-01T11:39:19Z fikka joined #lisp 2018-07-01T11:39:24Z gurmble is now known as grumble 2018-07-01T11:40:33Z pjb quit (Remote host closed the connection) 2018-07-01T11:40:39Z lavaflow quit (Ping timeout: 256 seconds) 2018-07-01T11:42:11Z pjb joined #lisp 2018-07-01T11:44:09Z fikka quit (Ping timeout: 264 seconds) 2018-07-01T11:47:05Z pjb quit (Ping timeout: 256 seconds) 2018-07-01T11:59:44Z Bike joined #lisp 2018-07-01T12:01:07Z joh11 joined #lisp 2018-07-01T12:01:14Z milanj quit (Quit: This computer has gone to sleep) 2018-07-01T12:03:28Z Folkol_ joined #lisp 2018-07-01T12:12:02Z _whitelogger quit (Remote host closed the connection) 2018-07-01T12:13:20Z fikka joined #lisp 2018-07-01T12:14:14Z _whitelogger joined #lisp 2018-07-01T12:18:07Z test1600 joined #lisp 2018-07-01T12:20:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-01T12:21:29Z fikka joined #lisp 2018-07-01T12:26:26Z fikka quit (Ping timeout: 256 seconds) 2018-07-01T12:29:57Z oni-on-ion quit (Read error: Connection reset by peer) 2018-07-01T12:36:32Z DemolitionMan quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2018-07-01T12:36:59Z lavaflow joined #lisp 2018-07-01T12:36:59Z nullniverse joined #lisp 2018-07-01T12:41:09Z phenoble joined #lisp 2018-07-01T12:41:23Z nalik89 quit (Ping timeout: 276 seconds) 2018-07-01T12:41:46Z lavaflow quit (Ping timeout: 264 seconds) 2018-07-01T12:44:48Z surya joined #lisp 2018-07-01T12:45:23Z milanj joined #lisp 2018-07-01T12:49:44Z SenasOzys joined #lisp 2018-07-01T12:50:42Z e^i quit (Read error: Connection reset by peer) 2018-07-01T12:50:57Z SenasOzys quit (Remote host closed the connection) 2018-07-01T12:51:16Z SenasOzys joined #lisp 2018-07-01T12:56:47Z graphene quit (Remote host closed the connection) 2018-07-01T12:57:58Z graphene joined #lisp 2018-07-01T12:59:44Z surya quit (Ping timeout: 256 seconds) 2018-07-01T13:00:33Z doesthiswork joined #lisp 2018-07-01T13:04:53Z fikka joined #lisp 2018-07-01T13:08:05Z EvW1 quit (Ping timeout: 255 seconds) 2018-07-01T13:08:26Z EvW joined #lisp 2018-07-01T13:14:25Z fikka quit (Ping timeout: 245 seconds) 2018-07-01T13:15:18Z Baggers joined #lisp 2018-07-01T13:15:19Z pjb joined #lisp 2018-07-01T13:20:29Z FreeBirdLjj joined #lisp 2018-07-01T13:24:03Z fikka joined #lisp 2018-07-01T13:24:21Z littlelisper joined #lisp 2018-07-01T13:31:30Z EvW quit (Ping timeout: 245 seconds) 2018-07-01T13:31:43Z littlelisper: i have a directory path and a path which contains the directory path. i want a slice of path except the directory path. i can do this by length of dir_path and subseq. is there any better way to do it? 2018-07-01T13:38:12Z lavaflow joined #lisp 2018-07-01T13:40:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-01T13:42:51Z lavaflow quit (Ping timeout: 240 seconds) 2018-07-01T13:47:05Z dilated_dinosaur quit (Ping timeout: 240 seconds) 2018-07-01T13:53:00Z fikka joined #lisp 2018-07-01T13:57:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-01T14:01:26Z dilated_dinosaur joined #lisp 2018-07-01T14:01:44Z fikka joined #lisp 2018-07-01T14:04:04Z Xach: littlelisper: hey! i have an idea 2018-07-01T14:04:42Z littlelisper: yes Xach 2018-07-01T14:04:43Z Xach: littlelisper: it requires backing up, though - you mean you have something like "/foo/bar/baz.txt" and "/foo/" and you want to get "bar/baz.txt"? 2018-07-01T14:04:55Z littlelisper: yes 2018-07-01T14:05:13Z Xach: littlelisper: ENOUGH-NAMESTRING will give you something useful in that regard. 2018-07-01T14:05:31Z Xach: (enough-namestring "/foo/bar/baz.txt" "/foo/") -> "bar/baz.txt" 2018-07-01T14:06:02Z littlelisper: wow, thats a lot better 2018-07-01T14:06:08Z littlelisper: thanks Xach 2018-07-01T14:06:24Z Xach: no problem 2018-07-01T14:06:43Z SaganMan joined #lisp 2018-07-01T14:12:58Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-01T14:13:17Z reverse_light joined #lisp 2018-07-01T14:14:44Z nowhere_man joined #lisp 2018-07-01T14:20:12Z dddddd quit (Ping timeout: 256 seconds) 2018-07-01T14:22:07Z montxero joined #lisp 2018-07-01T14:22:14Z acolarh quit (Ping timeout: 276 seconds) 2018-07-01T14:23:25Z EvW1 joined #lisp 2018-07-01T14:32:54Z montxero quit (Quit: leaving) 2018-07-01T14:34:34Z acolarh joined #lisp 2018-07-01T14:35:10Z gabiruh quit (Ping timeout: 264 seconds) 2018-07-01T14:35:52Z gabiruh joined #lisp 2018-07-01T14:37:03Z nalik89 joined #lisp 2018-07-01T14:38:17Z lumm quit (Quit: lumm) 2018-07-01T14:38:54Z lavaflow joined #lisp 2018-07-01T14:39:09Z littlelisper quit (Ping timeout: 256 seconds) 2018-07-01T14:41:10Z nullniverse quit (Ping timeout: 264 seconds) 2018-07-01T14:44:10Z lavaflow quit (Ping timeout: 264 seconds) 2018-07-01T14:49:38Z Beep-Lord joined #lisp 2018-07-01T14:50:30Z ebrasca quit (Read error: Connection reset by peer) 2018-07-01T14:50:42Z ebrasca joined #lisp 2018-07-01T14:51:40Z gabiruh quit (Ping timeout: 260 seconds) 2018-07-01T14:52:46Z nicht joined #lisp 2018-07-01T14:53:35Z phenoble quit (Ping timeout: 245 seconds) 2018-07-01T14:58:41Z skapata joined #lisp 2018-07-01T14:59:50Z joh11 quit (Ping timeout: 276 seconds) 2018-07-01T15:00:40Z shifty quit (Ping timeout: 245 seconds) 2018-07-01T15:01:19Z KongWubba joined #lisp 2018-07-01T15:04:04Z nowhere_man quit (Read error: Connection reset by peer) 2018-07-01T15:08:44Z nowhere_man joined #lisp 2018-07-01T15:09:10Z fikka quit (Ping timeout: 260 seconds) 2018-07-01T15:09:16Z EvW1 quit (Remote host closed the connection) 2018-07-01T15:09:26Z EvW joined #lisp 2018-07-01T15:09:49Z nowhere_man quit (Read error: Connection reset by peer) 2018-07-01T15:10:01Z nowhere_man joined #lisp 2018-07-01T15:12:36Z fikka joined #lisp 2018-07-01T15:16:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-01T15:17:34Z Smokitch_ quit 2018-07-01T15:17:45Z orivej quit (Ping timeout: 264 seconds) 2018-07-01T15:23:59Z EvW quit (Ping timeout: 255 seconds) 2018-07-01T15:24:24Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-01T15:24:26Z shangul quit (Ping timeout: 255 seconds) 2018-07-01T15:25:01Z shangul joined #lisp 2018-07-01T15:25:05Z nicht quit (Remote host closed the connection) 2018-07-01T15:25:46Z kozy quit (Remote host closed the connection) 2018-07-01T15:27:06Z light2yellow joined #lisp 2018-07-01T15:28:19Z nicht joined #lisp 2018-07-01T15:29:01Z FreeBirdLjj joined #lisp 2018-07-01T15:29:22Z pierpal quit (Quit: Poof) 2018-07-01T15:29:29Z thodg quit (Ping timeout: 265 seconds) 2018-07-01T15:29:42Z pierpal joined #lisp 2018-07-01T15:30:45Z gabiruh joined #lisp 2018-07-01T15:31:31Z fikka joined #lisp 2018-07-01T15:32:59Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-01T15:33:18Z FreeBirdLjj joined #lisp 2018-07-01T15:39:40Z lavaflow joined #lisp 2018-07-01T15:42:46Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-01T15:43:25Z kozy joined #lisp 2018-07-01T15:44:21Z lavaflow quit (Ping timeout: 240 seconds) 2018-07-01T15:45:56Z milanj quit (Quit: This computer has gone to sleep) 2018-07-01T16:00:04Z xrash joined #lisp 2018-07-01T16:02:15Z shangul quit (Ping timeout: 260 seconds) 2018-07-01T16:03:10Z shangul joined #lisp 2018-07-01T16:03:30Z milanj joined #lisp 2018-07-01T16:08:57Z lnostdal joined #lisp 2018-07-01T16:08:57Z varjag quit (Ping timeout: 240 seconds) 2018-07-01T16:17:10Z fikka quit (Ping timeout: 264 seconds) 2018-07-01T16:20:56Z varjag joined #lisp 2018-07-01T16:26:17Z Murii_ quit (Remote host closed the connection) 2018-07-01T16:27:02Z caltelt_ joined #lisp 2018-07-01T16:27:14Z caltelt quit (Quit: The Lounge - https://thelounge.github.io) 2018-07-01T16:33:47Z Murii_ joined #lisp 2018-07-01T16:37:30Z nullniverse joined #lisp 2018-07-01T16:40:26Z lavaflow joined #lisp 2018-07-01T16:41:02Z nalik89 quit (Ping timeout: 245 seconds) 2018-07-01T16:41:29Z DeadTrickster joined #lisp 2018-07-01T16:41:41Z DeadTrickster: sup 2018-07-01T16:41:47Z fikka joined #lisp 2018-07-01T16:42:57Z kozy quit (Remote host closed the connection) 2018-07-01T16:44:50Z lavaflow quit (Ping timeout: 245 seconds) 2018-07-01T16:47:29Z kozy joined #lisp 2018-07-01T16:48:57Z KongWubba quit (Remote host closed the connection) 2018-07-01T16:49:03Z brendyn quit (Ping timeout: 268 seconds) 2018-07-01T16:49:48Z fikka quit (Ping timeout: 256 seconds) 2018-07-01T16:51:02Z fikka joined #lisp 2018-07-01T16:53:07Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-01T16:54:03Z scymtym quit (Remote host closed the connection) 2018-07-01T16:56:21Z fikka quit (Ping timeout: 240 seconds) 2018-07-01T16:56:58Z lnostdal quit (Read error: Connection reset by peer) 2018-07-01T16:57:26Z lnostdal joined #lisp 2018-07-01T16:58:58Z eschatologist joined #lisp 2018-07-01T17:00:43Z scymtym joined #lisp 2018-07-01T17:03:31Z nullniverse quit (Read error: Connection reset by peer) 2018-07-01T17:03:46Z light2yellow quit (Quit: light2yellow) 2018-07-01T17:07:17Z vhost- joined #lisp 2018-07-01T17:07:17Z vhost- quit (Changing host) 2018-07-01T17:07:17Z vhost- joined #lisp 2018-07-01T17:25:32Z sushi_ joined #lisp 2018-07-01T17:25:48Z sushi_ left #lisp 2018-07-01T17:27:40Z kozy quit (Remote host closed the connection) 2018-07-01T17:29:29Z drmeister: Has anyone used the Intel Process Counter Monitor PCM library? Especially from C++? 2018-07-01T17:29:32Z fikka joined #lisp 2018-07-01T17:31:26Z anddam joined #lisp 2018-07-01T17:31:34Z anddam: hello 2018-07-01T17:32:35Z orivej joined #lisp 2018-07-01T17:34:32Z slyrus1 joined #lisp 2018-07-01T17:34:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-01T17:36:14Z robotoad quit (Quit: robotoad) 2018-07-01T17:38:06Z orivej quit (Ping timeout: 256 seconds) 2018-07-01T17:40:48Z gabiruh quit (Read error: Connection reset by peer) 2018-07-01T17:41:07Z lavaflow joined #lisp 2018-07-01T17:41:30Z gabiruh joined #lisp 2018-07-01T17:42:34Z kozy joined #lisp 2018-07-01T17:44:52Z mflem joined #lisp 2018-07-01T17:46:53Z lavaflow quit (Ping timeout: 276 seconds) 2018-07-01T17:50:10Z milanj quit (Quit: This computer has gone to sleep) 2018-07-01T17:52:40Z milanj joined #lisp 2018-07-01T17:52:52Z beach: Hello anddam. 2018-07-01T17:54:09Z gabiruh quit (Ping timeout: 248 seconds) 2018-07-01T17:54:39Z megalography quit (Ping timeout: 256 seconds) 2018-07-01T17:56:10Z slyrus_ quit (Ping timeout: 264 seconds) 2018-07-01T17:56:18Z Pixel_Outlaw joined #lisp 2018-07-01T17:59:33Z gabiruh joined #lisp 2018-07-01T17:59:41Z phenoble joined #lisp 2018-07-01T18:01:44Z fikka joined #lisp 2018-07-01T18:07:25Z megalography joined #lisp 2018-07-01T18:08:44Z dddddd joined #lisp 2018-07-01T18:09:35Z fikka quit (Ping timeout: 255 seconds) 2018-07-01T18:15:03Z nowhere_man quit (Read error: Connection reset by peer) 2018-07-01T18:16:48Z nowhere_man joined #lisp 2018-07-01T18:20:15Z smasta joined #lisp 2018-07-01T18:20:40Z askatasuna joined #lisp 2018-07-01T18:21:02Z Misha_B joined #lisp 2018-07-01T18:22:46Z lavaflow joined #lisp 2018-07-01T18:23:01Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-01T18:25:20Z robotoad joined #lisp 2018-07-01T18:26:31Z eschatologist joined #lisp 2018-07-01T18:39:49Z nowhere_man quit (Read error: Connection reset by peer) 2018-07-01T18:40:08Z buffergn0me joined #lisp 2018-07-01T18:43:08Z pierpal quit (Quit: Poof) 2018-07-01T18:43:26Z NoobsEnslaver joined #lisp 2018-07-01T18:43:27Z pierpal joined #lisp 2018-07-01T18:44:12Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-01T18:46:53Z eschatologist joined #lisp 2018-07-01T18:47:52Z nowhere_man joined #lisp 2018-07-01T18:50:40Z fikka joined #lisp 2018-07-01T18:52:38Z eschatologist quit (Ping timeout: 276 seconds) 2018-07-01T18:53:43Z eschatologist joined #lisp 2018-07-01T18:58:47Z graphene quit (Remote host closed the connection) 2018-07-01T19:00:02Z graphene joined #lisp 2018-07-01T19:01:46Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-01T19:03:57Z Naergon quit (Ping timeout: 240 seconds) 2018-07-01T19:06:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-01T19:06:35Z eschatologist joined #lisp 2018-07-01T19:08:34Z blargh_ joined #lisp 2018-07-01T19:09:11Z blargh_: Where can I find the CL standard library, written in CL? 2018-07-01T19:09:47Z graphene quit (Remote host closed the connection) 2018-07-01T19:10:37Z orivej joined #lisp 2018-07-01T19:10:59Z graphene joined #lisp 2018-07-01T19:11:35Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-01T19:12:27Z random-nick quit (Ping timeout: 240 seconds) 2018-07-01T19:13:28Z gabiruh quit (Remote host closed the connection) 2018-07-01T19:13:34Z pierpal quit (Quit: Poof) 2018-07-01T19:14:17Z pierpal joined #lisp 2018-07-01T19:16:30Z eschatologist joined #lisp 2018-07-01T19:17:35Z Bike: many implementations implement large portions in lisp with a few using compiler intrinsics or syscalls 2018-07-01T19:17:38Z Bike: like sbcl or sicl 2018-07-01T19:18:57Z megalography quit (Ping timeout: 240 seconds) 2018-07-01T19:24:57Z charh quit (Ping timeout: 240 seconds) 2018-07-01T19:26:56Z charh joined #lisp 2018-07-01T19:32:41Z megalography joined #lisp 2018-07-01T19:32:50Z nicht quit (Ping timeout: 276 seconds) 2018-07-01T19:45:16Z Murii_ quit (Quit: Leaving) 2018-07-01T19:50:52Z PuercoPop joined #lisp 2018-07-01T19:51:23Z random-nick joined #lisp 2018-07-01T19:52:05Z buffergn0me quit (Ping timeout: 240 seconds) 2018-07-01T19:52:38Z pjb quit (Remote host closed the connection) 2018-07-01T19:52:49Z EvW1 joined #lisp 2018-07-01T19:58:50Z pjb joined #lisp 2018-07-01T19:59:08Z sz0 joined #lisp 2018-07-01T20:00:46Z SenasOzys quit (Ping timeout: 256 seconds) 2018-07-01T20:03:32Z pjb quit (Ping timeout: 245 seconds) 2018-07-01T20:03:41Z Oddity quit 2018-07-01T20:09:52Z kajo joined #lisp 2018-07-01T20:11:24Z SenasOzys joined #lisp 2018-07-01T20:11:35Z slyrus_ joined #lisp 2018-07-01T20:13:25Z joh11 joined #lisp 2018-07-01T20:15:37Z phenoble quit (Quit: WeeChat 1.9.1) 2018-07-01T20:17:12Z attila_lendvai joined #lisp 2018-07-01T20:20:37Z fikka joined #lisp 2018-07-01T20:22:30Z Oddity joined #lisp 2018-07-01T20:25:57Z test1600 quit (Ping timeout: 240 seconds) 2018-07-01T20:26:09Z fikka quit (Ping timeout: 264 seconds) 2018-07-01T20:26:27Z shka_ quit (Ping timeout: 240 seconds) 2018-07-01T20:29:32Z EvW1 quit (Ping timeout: 255 seconds) 2018-07-01T20:31:06Z blargh_ quit (Quit: Page closed) 2018-07-01T20:33:15Z lumm joined #lisp 2018-07-01T20:33:29Z nowhere_man quit (Remote host closed the connection) 2018-07-01T20:33:50Z nowhere_man joined #lisp 2018-07-01T20:34:52Z loli is now known as nymphet 2018-07-01T20:34:54Z nymphet is now known as loli 2018-07-01T20:37:28Z Naergon joined #lisp 2018-07-01T20:37:49Z pierpal quit (Quit: Poof) 2018-07-01T20:38:09Z pierpal joined #lisp 2018-07-01T20:40:58Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-01T20:44:40Z mechanicalfrogs joined #lisp 2018-07-01T20:47:31Z lumm quit (Ping timeout: 265 seconds) 2018-07-01T20:50:37Z mechanicalfrogs quit (Quit: WeeChat 1.4) 2018-07-01T20:50:40Z charh quit (Quit: ...) 2018-07-01T20:51:13Z buffergn0me joined #lisp 2018-07-01T20:53:27Z megalography quit (Ping timeout: 240 seconds) 2018-07-01T20:53:40Z pjb joined #lisp 2018-07-01T20:53:52Z charh joined #lisp 2018-07-01T20:54:51Z nowhere_man quit (Remote host closed the connection) 2018-07-01T20:56:28Z nowhere_man joined #lisp 2018-07-01T21:00:18Z akem_ joined #lisp 2018-07-01T21:02:09Z lumm joined #lisp 2018-07-01T21:03:20Z fikka joined #lisp 2018-07-01T21:04:19Z eschatologist joined #lisp 2018-07-01T21:09:00Z milanj_ joined #lisp 2018-07-01T21:09:14Z megalography joined #lisp 2018-07-01T21:10:27Z zooey quit (Remote host closed the connection) 2018-07-01T21:11:27Z milanj quit (Ping timeout: 245 seconds) 2018-07-01T21:12:24Z NoobsEnslaver quit (Ping timeout: 260 seconds) 2018-07-01T21:12:59Z caltelt_ quit (Ping timeout: 268 seconds) 2018-07-01T21:15:04Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-01T21:16:30Z zooey joined #lisp 2018-07-01T21:18:04Z eschatologist joined #lisp 2018-07-01T21:23:10Z milanj joined #lisp 2018-07-01T21:23:18Z test1600 joined #lisp 2018-07-01T21:23:57Z milanj_ quit (Ping timeout: 240 seconds) 2018-07-01T21:28:42Z nowhere_man quit (Read error: Connection reset by peer) 2018-07-01T21:29:05Z dddddd quit (Ping timeout: 240 seconds) 2018-07-01T21:30:06Z dddddd joined #lisp 2018-07-01T21:30:40Z nowhere_man joined #lisp 2018-07-01T21:33:27Z vlatkoB quit (Remote host closed the connection) 2018-07-01T21:35:05Z Naergon_ joined #lisp 2018-07-01T21:35:57Z Naergon quit (Ping timeout: 240 seconds) 2018-07-01T21:36:19Z DeadTrickster quit (Quit: DeadTrickster) 2018-07-01T21:41:53Z buffergn0me quit (Ping timeout: 256 seconds) 2018-07-01T21:46:35Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-01T21:47:02Z brettgilio joined #lisp 2018-07-01T21:48:20Z random-nick quit (Read error: Connection reset by peer) 2018-07-01T21:49:05Z brettgilio quit (Remote host closed the connection) 2018-07-01T21:49:39Z brettgilio joined #lisp 2018-07-01T21:50:33Z brettgilio quit (Remote host closed the connection) 2018-07-01T21:53:36Z brettgilio joined #lisp 2018-07-01T21:54:19Z brettgilio quit (Remote host closed the connection) 2018-07-01T21:56:17Z brettgilio joined #lisp 2018-07-01T21:56:56Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-01T21:57:50Z nowhere_man joined #lisp 2018-07-01T21:58:06Z brettgilio quit (Remote host closed the connection) 2018-07-01T21:58:37Z brettgilio joined #lisp 2018-07-01T22:00:54Z brettgilio quit (Remote host closed the connection) 2018-07-01T22:01:28Z brettgilio joined #lisp 2018-07-01T22:02:24Z sz0 quit (Quit: Connection closed for inactivity) 2018-07-01T22:03:11Z brettgilio quit (Remote host closed the connection) 2018-07-01T22:03:53Z brettgilio joined #lisp 2018-07-01T22:04:08Z brettgilio quit (Remote host closed the connection) 2018-07-01T22:05:08Z brettgilio joined #lisp 2018-07-01T22:05:38Z buffergn0me joined #lisp 2018-07-01T22:05:43Z brettgilio quit (Client Quit) 2018-07-01T22:06:03Z brettgilio joined #lisp 2018-07-01T22:08:22Z caltelt_ joined #lisp 2018-07-01T22:09:51Z angavrilov quit (Remote host closed the connection) 2018-07-01T22:10:47Z test1600 quit (Ping timeout: 256 seconds) 2018-07-01T22:14:33Z brettgilio quit (Remote host closed the connection) 2018-07-01T22:16:47Z graphene quit (Remote host closed the connection) 2018-07-01T22:17:03Z brettgilio joined #lisp 2018-07-01T22:18:00Z graphene joined #lisp 2018-07-01T22:27:35Z rumbler31 quit (Remote host closed the connection) 2018-07-01T22:30:17Z fikka quit (Ping timeout: 276 seconds) 2018-07-01T22:30:46Z eschatologist joined #lisp 2018-07-01T22:30:52Z nowhere_man quit (Remote host closed the connection) 2018-07-01T22:31:13Z nowhere_man joined #lisp 2018-07-01T22:33:33Z brettgilio quit (Remote host closed the connection) 2018-07-01T22:34:10Z brettgilio joined #lisp 2018-07-01T22:35:09Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-01T22:35:32Z brettgilio quit (Remote host closed the connection) 2018-07-01T22:36:08Z brettgilio joined #lisp 2018-07-01T22:36:53Z Naergon_ quit (Ping timeout: 255 seconds) 2018-07-01T22:42:07Z pierpa joined #lisp 2018-07-01T22:43:09Z brettgilio quit (Remote host closed the connection) 2018-07-01T22:43:41Z brettgilio joined #lisp 2018-07-01T22:45:07Z sz0 joined #lisp 2018-07-01T22:50:14Z shifty joined #lisp 2018-07-01T22:54:06Z pjb quit (Remote host closed the connection) 2018-07-01T22:54:50Z brettgilio quit (Remote host closed the connection) 2018-07-01T22:55:25Z brettgilio joined #lisp 2018-07-01T22:55:59Z pjb joined #lisp 2018-07-01T22:56:23Z eschatologist joined #lisp 2018-07-01T23:01:25Z pjb quit (Remote host closed the connection) 2018-07-01T23:03:57Z Baggers quit (Remote host closed the connection) 2018-07-01T23:05:01Z attila_lendvai quit (Quit: Leaving.) 2018-07-01T23:10:34Z akem_ quit (Quit: Leaving) 2018-07-01T23:11:48Z graphene quit (Remote host closed the connection) 2018-07-01T23:13:00Z graphene joined #lisp 2018-07-01T23:13:08Z brettgilio quit (Remote host closed the connection) 2018-07-01T23:13:29Z slyrus_ quit (Quit: Leaving) 2018-07-01T23:13:41Z brettgilio joined #lisp 2018-07-01T23:15:48Z Kaisyu joined #lisp 2018-07-01T23:18:35Z lumm quit (Ping timeout: 260 seconds) 2018-07-01T23:19:05Z brettgilio quit (Remote host closed the connection) 2018-07-01T23:19:35Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-01T23:19:48Z brettgilio joined #lisp 2018-07-01T23:23:15Z pillton quit (Quit: ERC (IRC client for Emacs 25.3.1)) 2018-07-01T23:23:43Z brettgilio quit (Remote host closed the connection) 2018-07-01T23:24:20Z brettgilio joined #lisp 2018-07-01T23:27:13Z brettgilio quit (Client Quit) 2018-07-01T23:28:00Z milanj quit (Quit: This computer has gone to sleep) 2018-07-01T23:30:11Z brettgilio joined #lisp 2018-07-01T23:30:52Z pillton joined #lisp 2018-07-01T23:33:48Z graphene quit (Remote host closed the connection) 2018-07-01T23:33:54Z Kaisyu7 quit (Quit: ERC (IRC client for Emacs 25.3.2)) 2018-07-01T23:35:01Z graphene joined #lisp 2018-07-01T23:35:45Z buffergn0me quit (Ping timeout: 264 seconds) 2018-07-01T23:41:10Z brettgilio quit (Read error: Connection reset by peer) 2018-07-01T23:47:07Z Kaisyu7 joined #lisp 2018-07-01T23:51:23Z fikka joined #lisp 2018-07-01T23:53:35Z Misha_B quit (Ping timeout: 240 seconds) 2018-07-01T23:56:17Z fikka quit (Ping timeout: 248 seconds) 2018-07-01T23:57:25Z dddddd quit (Remote host closed the connection) 2018-07-01T23:57:41Z Naergon joined #lisp 2018-07-01T23:59:50Z caltelt_ quit (Ping timeout: 245 seconds) 2018-07-02T00:01:02Z makomo quit (Ping timeout: 245 seconds) 2018-07-02T00:01:49Z varjag quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2018-07-02T00:07:56Z MoziM quit (Quit: WeeChat 2.1) 2018-07-02T00:10:02Z orivej quit (Ping timeout: 265 seconds) 2018-07-02T00:10:16Z Pixel_Outlaw quit (Remote host closed the connection) 2018-07-02T00:12:30Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-02T00:14:55Z nowhere_man joined #lisp 2018-07-02T00:18:17Z eschatologist joined #lisp 2018-07-02T00:28:04Z rumbler31 joined #lisp 2018-07-02T00:28:27Z caltelt_ joined #lisp 2018-07-02T00:30:21Z aeth: How do non-SBCL implementations deal with type declarations? 2018-07-02T00:30:35Z aeth: Has someone looked into this in depth? 2018-07-02T00:32:35Z aeth: I use them for performance, static checking, and documentation (although I doubt any current documentation generator supports them) so they're actually a better fit than check-type in most places where I use them. 2018-07-02T00:32:57Z rumbler31 quit (Ping timeout: 240 seconds) 2018-07-02T00:33:04Z Xach: ??? check-type can portably get you those things? 2018-07-02T00:33:07Z aeth: (I do use check-type where I want the type checked more than anything else) 2018-07-02T00:33:51Z aeth: Xach: check-type in SBCL produces functions where the types are all T for the args because you can correct them at runtime 2018-07-02T00:34:12Z FreeBirdLjj joined #lisp 2018-07-02T00:34:16Z aeth: Xach: What I might do is #+sbcl declare and #-sbcl check-type 2018-07-02T00:34:38Z aeth: I do the types in a macro so something like that could work 2018-07-02T00:35:01Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-02T00:36:09Z Xach: aeth: you mean ftype declarations for performance, then? 2018-07-02T00:36:32Z aeth: SBCL sees (defun foo (x) (check-type x single-float) (+ x x)) as a function where its one arg is T, where anything can go in because anything will become single-float at the moment of check-type 2018-07-02T00:36:41Z edgar-rft joined #lisp 2018-07-02T00:37:20Z FreeBirdLjj quit (Read error: Connection reset by peer) 2018-07-02T00:37:22Z aeth: The ftype is shown in describe. I just declare types. It will infer the return type most of the time 2018-07-02T00:38:16Z aeth: (defun foo (x) (declare (single-float x)) (+ x x)) will have a more useful describe in SBCL 2018-07-02T00:38:35Z Xach: ok 2018-07-02T00:39:15Z karlosz joined #lisp 2018-07-02T00:40:46Z aeth: What I could do for my define-function macro is fall back to check-type in implementations where declare is ignored. That might significantly slow some things down, though. Especially in implementations that have unsophisticated compilers. 2018-07-02T00:41:14Z aeth: It would also make type errors correctable everywhere but SBCL 2018-07-02T00:41:47Z ravndal quit (Quit: WeeChat 2.1) 2018-07-02T00:43:24Z ravndal joined #lisp 2018-07-02T00:46:15Z aeth: (defstar is GPL, which kind of justifies my MIT-licensed NIH project a bit more than when I started) 2018-07-02T00:47:55Z fikka joined #lisp 2018-07-02T00:48:56Z brettgilio joined #lisp 2018-07-02T00:50:01Z joh11 quit (Ping timeout: 256 seconds) 2018-07-02T00:52:12Z LdBeth: Morning 2018-07-02T00:52:20Z fikka quit (Ping timeout: 245 seconds) 2018-07-02T00:52:45Z brettgilio: LdBeth: Good morning, how are you? 2018-07-02T00:53:51Z LdBeth: Getting ready for work 2018-07-02T00:54:05Z LdBeth: brettgilio: what about you? 2018-07-02T00:55:10Z eschatologist joined #lisp 2018-07-02T00:57:56Z markoong quit (Read error: Connection reset by peer) 2018-07-02T00:58:26Z markoong joined #lisp 2018-07-02T01:00:06Z brettgilio: LdBeth: Just got home from the lab, thankfully. 2018-07-02T01:01:47Z graphene quit (Remote host closed the connection) 2018-07-02T01:03:01Z graphene joined #lisp 2018-07-02T01:03:08Z slyrus_ joined #lisp 2018-07-02T01:03:35Z markoong quit (Ping timeout: 260 seconds) 2018-07-02T01:19:16Z brettgilio quit (Remote host closed the connection) 2018-07-02T01:19:52Z brettgilio joined #lisp 2018-07-02T01:23:59Z brettgilio quit (Read error: Connection reset by peer) 2018-07-02T01:24:29Z brettgilio joined #lisp 2018-07-02T01:28:38Z fikka joined #lisp 2018-07-02T01:29:24Z Kundry_Wag joined #lisp 2018-07-02T01:33:39Z fikka quit (Ping timeout: 265 seconds) 2018-07-02T01:35:40Z Naergon quit (Ping timeout: 260 seconds) 2018-07-02T01:36:27Z mathZ joined #lisp 2018-07-02T01:42:32Z brettgilio quit (Remote host closed the connection) 2018-07-02T01:42:38Z mathZ` joined #lisp 2018-07-02T01:43:11Z mathZ quit (Ping timeout: 255 seconds) 2018-07-02T01:43:13Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-02T01:44:04Z FreeBirdLjj joined #lisp 2018-07-02T01:46:12Z nicht joined #lisp 2018-07-02T01:46:41Z quazimodo quit (Ping timeout: 256 seconds) 2018-07-02T01:48:35Z FreeBirdLjj quit (Ping timeout: 255 seconds) 2018-07-02T01:50:43Z mathZ` left #lisp 2018-07-02T01:53:16Z eschatologist joined #lisp 2018-07-02T01:53:21Z brettgilio joined #lisp 2018-07-02T01:59:52Z Beep-Lord left #lisp 2018-07-02T02:02:35Z graphene quit (Remote host closed the connection) 2018-07-02T02:03:49Z graphene joined #lisp 2018-07-02T02:03:53Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-02T02:04:10Z robotoad quit (Quit: robotoad) 2018-07-02T02:08:15Z eschatologist joined #lisp 2018-07-02T02:08:27Z graphene quit (Remote host closed the connection) 2018-07-02T02:10:45Z graphene joined #lisp 2018-07-02T02:11:58Z brendyn joined #lisp 2018-07-02T02:14:57Z Kundry_Wag quit (Ping timeout: 248 seconds) 2018-07-02T02:16:02Z alphor quit (Ping timeout: 245 seconds) 2018-07-02T02:16:55Z Kundry_Wag joined #lisp 2018-07-02T02:17:29Z alphor joined #lisp 2018-07-02T02:17:40Z Kundry_Wag quit (Remote host closed the connection) 2018-07-02T02:18:14Z Kundry_Wag joined #lisp 2018-07-02T02:21:59Z loli quit (Quit: WeeChat 2.1) 2018-07-02T02:22:25Z Kundry_Wag quit (Ping timeout: 248 seconds) 2018-07-02T02:22:42Z fikka joined #lisp 2018-07-02T02:23:39Z loli joined #lisp 2018-07-02T02:24:14Z pierpa quit (Quit: Page closed) 2018-07-02T02:24:33Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-02T02:26:23Z blep-on-external: are there any neural networks written in lisp? 2018-07-02T02:26:52Z blep-on-external: (ones which use BLAS would be cool, since those can be optimized the hell out of) 2018-07-02T02:27:29Z fikka quit (Ping timeout: 256 seconds) 2018-07-02T02:27:46Z graphene quit (Remote host closed the connection) 2018-07-02T02:28:09Z brettgilio quit (Remote host closed the connection) 2018-07-02T02:28:58Z graphene joined #lisp 2018-07-02T02:29:23Z rumbler31 joined #lisp 2018-07-02T02:34:51Z rumbler31 quit (Ping timeout: 256 seconds) 2018-07-02T02:35:24Z buffergn0me joined #lisp 2018-07-02T02:36:10Z robotoad joined #lisp 2018-07-02T02:37:32Z Kundry_Wag joined #lisp 2018-07-02T02:38:30Z graphene quit (Remote host closed the connection) 2018-07-02T02:38:33Z AetherWind joined #lisp 2018-07-02T02:38:34Z ebzzry joined #lisp 2018-07-02T02:38:49Z ebzzry: What is a good Java interface library that is available with Quickdocs? 2018-07-02T02:39:06Z ebzzry: I’m looking for the equivalent of http://www.lispworks.com/documentation/lw71/LW/html/lw-113.htm#pgfId-885977 2018-07-02T02:39:42Z graphene joined #lisp 2018-07-02T02:41:35Z housel joined #lisp 2018-07-02T02:46:28Z nickenchuggets joined #lisp 2018-07-02T02:46:29Z nickenchuggets quit (Changing host) 2018-07-02T02:46:29Z nickenchuggets joined #lisp 2018-07-02T02:48:10Z eschatologist joined #lisp 2018-07-02T02:53:01Z beach: Good morning everyone! 2018-07-02T03:00:12Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-02T03:02:52Z fikka joined #lisp 2018-07-02T03:05:01Z quazimodo joined #lisp 2018-07-02T03:07:10Z brettgilio joined #lisp 2018-07-02T03:07:17Z fikka quit (Ping timeout: 245 seconds) 2018-07-02T03:09:22Z brettgilio quit (Remote host closed the connection) 2018-07-02T03:11:26Z brettgilio joined #lisp 2018-07-02T03:14:23Z brettgilio quit (Remote host closed the connection) 2018-07-02T03:17:43Z robotoad quit (Remote host closed the connection) 2018-07-02T03:17:57Z brettgilio joined #lisp 2018-07-02T03:18:16Z robotoad joined #lisp 2018-07-02T03:24:07Z brettgilio quit (Remote host closed the connection) 2018-07-02T03:25:36Z pierpal quit (Quit: Poof) 2018-07-02T03:25:52Z nowhere_man quit (Remote host closed the connection) 2018-07-02T03:25:55Z pierpal joined #lisp 2018-07-02T03:27:19Z brettgilio joined #lisp 2018-07-02T03:27:41Z nowhere_man joined #lisp 2018-07-02T03:28:39Z pillton: aeth: You shouldn't customize your define-function macro according to specific CL implementations. You should write tests which examine the functionality of the current CL implementation and add exported symbols to *features* based on the test results. You then write your define-function macro according to what is in *features*. 2018-07-02T03:32:19Z pillton: aeth: See Rhodes' article Maintaining Portable Lisp Programs: http://jcsu.jesus.cam.ac.uk/~csr21/papers/features.pdf 2018-07-02T03:36:35Z Khisanth quit (Ping timeout: 240 seconds) 2018-07-02T03:37:50Z nowhere_man quit (Read error: Connection reset by peer) 2018-07-02T03:38:03Z Arcaelyx quit (Quit: Textual IRC Client: www.textualapp.com) 2018-07-02T03:38:52Z pierpal quit (Read error: Connection reset by peer) 2018-07-02T03:40:51Z brettgilio quit (Quit: Goodbye!) 2018-07-02T03:41:33Z brettgilio joined #lisp 2018-07-02T03:43:49Z loli quit (Quit: WeeChat 2.1) 2018-07-02T03:44:23Z loli joined #lisp 2018-07-02T03:45:03Z nowhere_man joined #lisp 2018-07-02T03:50:14Z eschatologist joined #lisp 2018-07-02T03:52:12Z Khisanth joined #lisp 2018-07-02T03:57:18Z fikka joined #lisp 2018-07-02T04:02:10Z fikka quit (Ping timeout: 264 seconds) 2018-07-02T04:03:51Z makomo joined #lisp 2018-07-02T04:10:28Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-02T04:13:46Z aeth: pillton: Good point, especially since it's probably not hard to add check-types to functions with type declarations in implementations. (The rest of the functionality is probably a lot harder. Also, SBCL doesn't quite run check-type on it because you cannot specify a replacement value if the type is wrong.) 2018-07-02T04:14:25Z aeth: (And declare within let/etc. would just be equivalent to a the afaik) 2018-07-02T04:16:09Z brettgilio quit (Remote host closed the connection) 2018-07-02T04:17:28Z pierpal joined #lisp 2018-07-02T04:25:45Z Kundry_Wag quit (Remote host closed the connection) 2018-07-02T04:26:19Z Kundry_Wag joined #lisp 2018-07-02T04:31:15Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-02T04:31:57Z shangul quit (Ping timeout: 240 seconds) 2018-07-02T04:34:18Z nicht quit (Ping timeout: 256 seconds) 2018-07-02T04:35:03Z Misha_B joined #lisp 2018-07-02T04:36:43Z brettgilio joined #lisp 2018-07-02T04:37:16Z Arcaelyx joined #lisp 2018-07-02T04:38:46Z Bike quit (Quit: Lost terminal) 2018-07-02T04:45:23Z DGASAU quit (Quit: ERC (IRC client for Emacs 25.3.1)) 2018-07-02T04:46:32Z DGASAU joined #lisp 2018-07-02T04:46:35Z DGASAU quit (Read error: Connection reset by peer) 2018-07-02T04:46:58Z pillton: aeth: You could create two functions where one is a "hidden" function which assumes all of the arguments are correct. The second function is public which just checks the arguments and then calls the hidden function. You could then use a compiler macro to switch between the two when sufficient information is available at compile time. 2018-07-02T04:47:20Z DGASAU joined #lisp 2018-07-02T04:52:21Z fikka joined #lisp 2018-07-02T04:54:47Z makomo quit (Ping timeout: 245 seconds) 2018-07-02T04:55:25Z krwq joined #lisp 2018-07-02T04:57:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-02T05:02:48Z Kundry_Wag joined #lisp 2018-07-02T05:10:29Z makomo joined #lisp 2018-07-02T05:10:47Z fikka joined #lisp 2018-07-02T05:13:07Z shka_ joined #lisp 2018-07-02T05:13:35Z karlosz quit (Ping timeout: 245 seconds) 2018-07-02T05:15:53Z fikka quit (Ping timeout: 276 seconds) 2018-07-02T05:17:18Z Kundry_Wag quit (Remote host closed the connection) 2018-07-02T05:17:31Z Kundry_Wag joined #lisp 2018-07-02T05:18:58Z shifty quit (Ping timeout: 264 seconds) 2018-07-02T05:19:32Z Smokitch joined #lisp 2018-07-02T05:24:08Z nowhere_man quit (Ping timeout: 255 seconds) 2018-07-02T05:28:58Z skapata quit (Remote host closed the connection) 2018-07-02T05:30:49Z milanj joined #lisp 2018-07-02T05:32:37Z igemnace joined #lisp 2018-07-02T05:36:40Z Kundry_Wag quit (Remote host closed the connection) 2018-07-02T05:41:37Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-02T05:42:02Z nickenchuggets joined #lisp 2018-07-02T05:42:03Z nickenchuggets quit (Changing host) 2018-07-02T05:42:03Z nickenchuggets joined #lisp 2018-07-02T05:47:10Z eschatologist joined #lisp 2018-07-02T05:49:27Z lnostdal quit (Ping timeout: 240 seconds) 2018-07-02T05:51:37Z fikka joined #lisp 2018-07-02T05:56:52Z fikka quit (Ping timeout: 245 seconds) 2018-07-02T05:59:55Z robotoad quit (Quit: robotoad) 2018-07-02T06:00:41Z milanj quit (Quit: This computer has gone to sleep) 2018-07-02T06:04:45Z Inline quit (Quit: Leaving) 2018-07-02T06:05:53Z light2yellow joined #lisp 2018-07-02T06:08:06Z vlatkoB joined #lisp 2018-07-02T06:10:14Z robotoad joined #lisp 2018-07-02T06:14:13Z gector quit (Read error: Connection reset by peer) 2018-07-02T06:15:01Z gector joined #lisp 2018-07-02T06:15:51Z shka_ quit (Ping timeout: 256 seconds) 2018-07-02T06:18:17Z brettgilio quit (Remote host closed the connection) 2018-07-02T06:18:27Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-02T06:18:39Z mathZ joined #lisp 2018-07-02T06:19:01Z brettgilio joined #lisp 2018-07-02T06:20:40Z brettgilio quit (Remote host closed the connection) 2018-07-02T06:20:57Z scymtym quit (Ping timeout: 240 seconds) 2018-07-02T06:27:03Z Kundry_Wag joined #lisp 2018-07-02T06:31:49Z shrdlu68 joined #lisp 2018-07-02T06:33:19Z brettgilio joined #lisp 2018-07-02T06:37:36Z AetherWind_GJ joined #lisp 2018-07-02T06:38:38Z AetherWind quit (Disconnected by services) 2018-07-02T06:38:45Z Naergon joined #lisp 2018-07-02T06:38:48Z AetherWind_GJ is now known as AetherWind 2018-07-02T06:39:27Z flamebeard joined #lisp 2018-07-02T06:39:53Z light2yellow quit (Quit: light2yellow) 2018-07-02T06:40:13Z brettgilio quit (Remote host closed the connection) 2018-07-02T06:40:47Z brettgilio joined #lisp 2018-07-02T06:44:23Z eschatologist quit (Ping timeout: 276 seconds) 2018-07-02T06:45:31Z brettgilio quit (Remote host closed the connection) 2018-07-02T06:46:00Z brettgilio joined #lisp 2018-07-02T06:47:11Z eschatologist joined #lisp 2018-07-02T06:49:33Z SaganMan quit (Ping timeout: 264 seconds) 2018-07-02T06:49:40Z littlelisper joined #lisp 2018-07-02T06:51:31Z mathZ: clhs dpb 2018-07-02T06:51:31Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_dpb.htm 2018-07-02T06:51:40Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-02T06:53:10Z varjag joined #lisp 2018-07-02T06:53:59Z eschatologist joined #lisp 2018-07-02T07:00:21Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-02T07:01:11Z caltelt_ quit (Ping timeout: 256 seconds) 2018-07-02T07:03:15Z mathZ quit (Remote host closed the connection) 2018-07-02T07:06:39Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-02T07:07:19Z heisig joined #lisp 2018-07-02T07:07:47Z scymtym joined #lisp 2018-07-02T07:09:01Z eschatologist joined #lisp 2018-07-02T07:12:18Z lemoinem quit (Read error: Connection reset by peer) 2018-07-02T07:14:41Z lemoinem joined #lisp 2018-07-02T07:17:56Z shrdlu68 quit (Ping timeout: 256 seconds) 2018-07-02T07:17:56Z SaganMan joined #lisp 2018-07-02T07:18:16Z pierpal quit (Ping timeout: 265 seconds) 2018-07-02T07:19:17Z loke: Is there a docbook parser for Lisp? 2018-07-02T07:19:41Z shrdlu68 joined #lisp 2018-07-02T07:36:47Z graphene quit (Remote host closed the connection) 2018-07-02T07:37:04Z edgar-rft: loke: What exactly do you want to do? A "docbook parser for Lisp" is something that parses docbook XML files for producing Lisp output, is this what you want? 2018-07-02T07:37:57Z graphene joined #lisp 2018-07-02T07:39:13Z mflem quit (Read error: Connection reset by peer) 2018-07-02T07:41:26Z doesthiswork quit (Quit: Leaving.) 2018-07-02T07:44:15Z CrazyEddy quit (Ping timeout: 256 seconds) 2018-07-02T07:45:38Z deng_cn quit (Quit: deng_cn) 2018-07-02T07:47:37Z beach: Maybe he just wants to create some internal data structure that he can then use in further processing. 2018-07-02T07:47:48Z beach: Like a parse tree. 2018-07-02T07:47:59Z buffergn0me quit (Ping timeout: 276 seconds) 2018-07-02T07:50:27Z Ukari quit (Ping timeout: 240 seconds) 2018-07-02T07:51:03Z edgar-rft: too much speculation 2018-07-02T07:51:49Z Ukari joined #lisp 2018-07-02T07:54:23Z krwq quit (Remote host closed the connection) 2018-07-02T08:00:59Z Misha_B quit (Ping timeout: 276 seconds) 2018-07-02T08:11:22Z Arcaelyx quit (Quit: Textual IRC Client: www.textualapp.com) 2018-07-02T08:11:33Z rumbler31 joined #lisp 2018-07-02T08:11:37Z angavrilov joined #lisp 2018-07-02T08:13:26Z eschatologist quit (Ping timeout: 276 seconds) 2018-07-02T08:14:10Z shrdlu68 quit (Ping timeout: 256 seconds) 2018-07-02T08:14:24Z eschatologist joined #lisp 2018-07-02T08:15:48Z shrdlu68 joined #lisp 2018-07-02T08:16:12Z littlelisper quit (Quit: leaving) 2018-07-02T08:16:33Z rumbler31 quit (Ping timeout: 264 seconds) 2018-07-02T08:21:46Z milanj joined #lisp 2018-07-02T08:21:59Z wigust joined #lisp 2018-07-02T08:22:36Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-02T08:23:14Z nowhere_man joined #lisp 2018-07-02T08:24:38Z thodg joined #lisp 2018-07-02T08:25:07Z eschatologist joined #lisp 2018-07-02T08:25:37Z wigust- quit (Ping timeout: 248 seconds) 2018-07-02T08:25:50Z dddddd joined #lisp 2018-07-02T08:27:37Z MichaelRaskin quit (Quit: MichaelRaskin) 2018-07-02T08:30:21Z brettgilio quit (Remote host closed the connection) 2018-07-02T08:34:39Z hhdave joined #lisp 2018-07-02T08:36:06Z CrazyEddy joined #lisp 2018-07-02T08:36:15Z xrash quit (Ping timeout: 260 seconds) 2018-07-02T08:39:39Z Smokitch quit 2018-07-02T08:46:44Z _cosmonaut_ joined #lisp 2018-07-02T08:51:26Z _cosmonaut_ quit (Ping timeout: 256 seconds) 2018-07-02T08:52:27Z fikka joined #lisp 2018-07-02T08:55:47Z lumm joined #lisp 2018-07-02T08:57:56Z Kundry_Wag joined #lisp 2018-07-02T09:00:08Z fikka quit (Ping timeout: 255 seconds) 2018-07-02T09:01:19Z Krisostoomus joined #lisp 2018-07-02T09:03:52Z pillton quit (Ping timeout: 240 seconds) 2018-07-02T09:04:48Z graphene quit (Remote host closed the connection) 2018-07-02T09:05:17Z fikka joined #lisp 2018-07-02T09:05:33Z attila_lendvai joined #lisp 2018-07-02T09:05:34Z attila_lendvai quit (Changing host) 2018-07-02T09:05:34Z attila_lendvai joined #lisp 2018-07-02T09:05:51Z acolarh quit (Ping timeout: 268 seconds) 2018-07-02T09:05:58Z graphene joined #lisp 2018-07-02T09:06:10Z smasta quit (Ping timeout: 256 seconds) 2018-07-02T09:10:05Z fikka quit (Ping timeout: 260 seconds) 2018-07-02T09:10:31Z _cosmonaut_ joined #lisp 2018-07-02T09:12:53Z random-nick joined #lisp 2018-07-02T09:12:54Z fikka joined #lisp 2018-07-02T09:13:58Z littlelisper joined #lisp 2018-07-02T09:16:33Z m00natic joined #lisp 2018-07-02T09:18:15Z acolarh joined #lisp 2018-07-02T09:18:15Z shrdlu68 quit (Ping timeout: 260 seconds) 2018-07-02T09:19:25Z pierpal joined #lisp 2018-07-02T09:20:01Z shrdlu68 joined #lisp 2018-07-02T09:20:56Z ebzzry quit (Quit: WeeChat 2.1) 2018-07-02T09:22:29Z fikka quit (Ping timeout: 265 seconds) 2018-07-02T09:26:05Z pierpal quit (Ping timeout: 240 seconds) 2018-07-02T09:30:47Z Kundry_Wag quit (Ping timeout: 276 seconds) 2018-07-02T09:31:13Z xificurC joined #lisp 2018-07-02T09:35:34Z Bindler joined #lisp 2018-07-02T09:35:53Z makomo quit (Ping timeout: 256 seconds) 2018-07-02T09:36:39Z fikka joined #lisp 2018-07-02T09:36:58Z Krisostoomus quit (Ping timeout: 264 seconds) 2018-07-02T09:40:34Z ebrasca quit (Ping timeout: 264 seconds) 2018-07-02T09:41:27Z acolarh quit (Ping timeout: 245 seconds) 2018-07-02T09:45:20Z pierpal joined #lisp 2018-07-02T09:47:28Z schweers joined #lisp 2018-07-02T09:49:35Z thodg quit (Read error: Connection reset by peer) 2018-07-02T09:52:43Z jmercouris joined #lisp 2018-07-02T09:53:26Z nowhere_man quit (Ping timeout: 276 seconds) 2018-07-02T09:54:48Z acolarh joined #lisp 2018-07-02T09:55:17Z ogamita joined #lisp 2018-07-02T09:57:10Z quazimod1 joined #lisp 2018-07-02T09:57:22Z quazimodo quit (Ping timeout: 264 seconds) 2018-07-02T09:58:24Z LdBeth: What might be the best approach to strip HTML for indexing ( with Montezuma)? 2018-07-02T09:58:58Z LdBeth: 1. Simply use regexp to remove all html tags 2018-07-02T10:00:05Z LdBeth: 2. Use a HTML parser so URLs can be extracted separately. 2018-07-02T10:02:54Z ogamita quit (Read error: Connection reset by peer) 2018-07-02T10:03:46Z ogamita joined #lisp 2018-07-02T10:09:38Z Bindler quit (Ping timeout: 256 seconds) 2018-07-02T10:10:14Z TMA: LdBeth: regexes tend to do poorly in the corner cases; if you do not mind, they might be simpler 2018-07-02T10:10:21Z loke: edgar-rft: I'll tell you, sorry for being late. 2018-07-02T10:10:28Z loke: I was out of the office for a while. 2018-07-02T10:11:21Z loke: Basically, I have the Maxima documentation in texinfo format on one hand. And in the other hand I have a markup engine that takes Lisp forms and displays them in on a CLIM stream. 2018-07-02T10:11:54Z loke: There is no Texinfo parser in Lisp, and my attempts to write one stopped rather quickly after I realised how complex the texinfo format is. 2018-07-02T10:12:08Z loke: The alternative would be to base it on Docbook, which is more common. 2018-07-02T10:12:20Z rumbler31 joined #lisp 2018-07-02T10:12:23Z scymtym_ joined #lisp 2018-07-02T10:12:30Z smasta joined #lisp 2018-07-02T10:12:33Z loke: So yes, I'd like to be able to load docbook and have some way of processing the content 2018-07-02T10:12:43Z loke: (so that I eventualkly can render it in CLIM) 2018-07-02T10:13:05Z ogamita quit (Ping timeout: 240 seconds) 2018-07-02T10:13:21Z scymtym quit (Ping timeout: 240 seconds) 2018-07-02T10:15:23Z loke: However, I haven't been able to find anything at all that processes Docbook, so I believe it doesn't matter. 2018-07-02T10:15:45Z LdBeth: TMA: thanks for you advice 2018-07-02T10:16:34Z thodg joined #lisp 2018-07-02T10:17:23Z rumbler31 quit (Ping timeout: 268 seconds) 2018-07-02T10:17:34Z smasta quit (Ping timeout: 260 seconds) 2018-07-02T10:17:43Z vlatkoB_ joined #lisp 2018-07-02T10:17:57Z shrdlu68 quit (Ping timeout: 240 seconds) 2018-07-02T10:20:11Z shrdlu68 joined #lisp 2018-07-02T10:20:32Z lieven: loke: can't you use the emacs texinfo stuff to mangle the Maxima documentation. not quite CL but maybe good enough? 2018-07-02T10:20:58Z vlatkoB quit (Ping timeout: 265 seconds) 2018-07-02T10:22:13Z edgar-rft: loke: you want the *entire* manual to be rendered in CLIM or only some online helf for a maxima interface? Most of the reference part of the Maxima manual are just printed Lisp docstrings. I assume using the docstrings would save you a lot of bac-and-forth conversion. 2018-07-02T10:22:24Z edgar-rft: *online help 2018-07-02T10:22:35Z thodg quit (Remote host closed the connection) 2018-07-02T10:23:06Z loke: edgar-rft: I am going render documentation for individual functions in maxima 2018-07-02T10:23:29Z scymtym__ joined #lisp 2018-07-02T10:23:31Z loke: it's a reference, so there will be a list of function (from the index) and a way to pop up documentation for a given function directly from the command completion menu 2018-07-02T10:23:45Z loke: edgar-rft: No. Maxima has a very extensive texinfo manual 2018-07-02T10:23:54Z loke: That's where all the documentation is 2018-07-02T10:23:59Z thodg joined #lisp 2018-07-02T10:24:21Z Younder quit (Remote host closed the connection) 2018-07-02T10:25:05Z scymtym_ quit (Ping timeout: 240 seconds) 2018-07-02T10:27:05Z loke: Maxima has functions to look up entires in the info index actually, which is what I'm using right now. However, it uses the plain text version of the info pages generated by makeinfo. CLIM can do better than that. 2018-07-02T10:27:10Z thodg quit (Read error: Connection reset by peer) 2018-07-02T10:27:23Z loke: Another lanternative is to base it on the HTML output from texinfo 2018-07-02T10:29:53Z slyrus1 quit (Remote host closed the connection) 2018-07-02T10:34:18Z Fare joined #lisp 2018-07-02T10:34:23Z fikka quit (Ping timeout: 276 seconds) 2018-07-02T10:38:09Z lumm_ joined #lisp 2018-07-02T10:40:03Z zigpaw: (and embed chromium into CLIM? ;-)) 2018-07-02T10:41:05Z lumm quit (Ping timeout: 248 seconds) 2018-07-02T10:41:05Z lumm_ is now known as lumm 2018-07-02T10:52:36Z lnostdal joined #lisp 2018-07-02T10:53:44Z graphene quit (Remote host closed the connection) 2018-07-02T10:54:10Z shka: zigpaw: that could be useful :-) 2018-07-02T10:55:37Z m00natic quit (Ping timeout: 245 seconds) 2018-07-02T10:56:30Z graphene joined #lisp 2018-07-02T10:56:43Z m00natic joined #lisp 2018-07-02T10:57:01Z zigpaw: Still plan to use ceramic (electron) on one of my new pet projects, can't find spare time unfortunately. For many people HTML become the next cross platform GUI library. 2018-07-02T10:57:37Z antoszka: Unfortunately so. 2018-07-02T10:57:40Z shka: this is unfortunate 2018-07-02T10:57:50Z antoszka: shka: o/ 2018-07-02T10:57:58Z Kundry_Wag joined #lisp 2018-07-02T10:58:15Z shka: antoszka: hello 2018-07-02T11:00:01Z graphene quit (Remote host closed the connection) 2018-07-02T11:01:12Z flip214: Is there a way to get SWANK-CONTRIB/SWANK-TRACE-DIALOG to get a string representation of arguments and return values at the time of calling/returning? 2018-07-02T11:01:29Z graphene joined #lisp 2018-07-02T11:01:46Z Naergon quit (Ping timeout: 256 seconds) 2018-07-02T11:01:48Z flip214: I've got a use case where a special variable gets filled piecewise, and the trace only records the _instance_ and so shows the same textual representation for all the calls 2018-07-02T11:02:00Z flip214: and not how the data in there gets accumulated in chronological order 2018-07-02T11:03:33Z loke: zigpaw: Rendering simple HTML is trivial. And the output from texinfo is indeed trivial. 2018-07-02T11:03:36Z loke: and simple :-) 2018-07-02T11:04:20Z flip214: of course, storing _only_ a representation means that inspecting objects isn't really useful later on... so it should capture _both 2018-07-02T11:04:22Z loke: And building a GUI using HTML and JS is absolutely terrible, and nto something that should be condoned. 2018-07-02T11:05:35Z _death: what, you don't like having 1000 reinventions of a button widget and syntax to make it happen? 2018-07-02T11:07:24Z loke: _death: Well... When you put it _that_ way. :-) 2018-07-02T11:07:50Z loke: _death: Then again, the web/JS community has reinvented everything _else_ about 1000 times already, so why not? 2018-07-02T11:08:24Z loke: How many build systems are they up to by now? 2018-07-02T11:15:01Z Kundry_Wag quit (Remote host closed the connection) 2018-07-02T11:15:16Z Kundry_Wag joined #lisp 2018-07-02T11:16:06Z jackdaniel: chaos is a great carrier for innovations 2018-07-02T11:16:16Z ogamita joined #lisp 2018-07-02T11:16:16Z Kundry_Wag quit (Remote host closed the connection) 2018-07-02T11:18:27Z shrdlu68 quit (Ping timeout: 256 seconds) 2018-07-02T11:19:50Z robotoad quit (Quit: robotoad) 2018-07-02T11:20:14Z vsync_ is now known as vsync 2018-07-02T11:20:23Z shrdlu68 joined #lisp 2018-07-02T11:20:36Z SaganMan quit (Ping timeout: 256 seconds) 2018-07-02T11:21:32Z pierpal quit (Quit: Poof) 2018-07-02T11:21:52Z pierpal joined #lisp 2018-07-02T11:22:09Z lumm quit (Ping timeout: 248 seconds) 2018-07-02T11:24:30Z igemnace quit (Quit: WeeChat 2.1) 2018-07-02T11:25:26Z orivej joined #lisp 2018-07-02T11:26:29Z AetherWind quit (Quit: Leaving) 2018-07-02T11:28:43Z shka quit (Remote host closed the connection) 2018-07-02T11:29:06Z shka joined #lisp 2018-07-02T11:30:16Z fikka joined #lisp 2018-07-02T11:31:03Z pillton joined #lisp 2018-07-02T11:34:25Z fikka quit (Ping timeout: 248 seconds) 2018-07-02T11:37:57Z nowhere_man joined #lisp 2018-07-02T11:39:56Z jmercouris: anyone familiar with text classification? 2018-07-02T11:40:13Z jmercouris: I'm trying to classify a sentence as either a definition, or a not-definition 2018-07-02T11:40:18Z jmercouris: e.g. does this sentence contain a definition for a term 2018-07-02T11:40:27Z jmercouris: I'm interested in either supervised or unsupervised techniques 2018-07-02T11:40:45Z jmercouris: preferrably online due to my RAM limitations 2018-07-02T11:40:48Z makomo joined #lisp 2018-07-02T11:40:51Z gigetoo joined #lisp 2018-07-02T11:41:06Z Kundry_Wag joined #lisp 2018-07-02T11:42:39Z littlelisper: i am making an rsvp for myself, having trouble with do loop 2018-07-02T11:42:40Z littlelisper: (do* ((n 0 (1+ ch)) 2018-07-02T11:42:40Z littlelisper: (words book (nthcdr ch book))) 2018-07-02T11:42:52Z Kundry_Wag quit (Remote host closed the connection) 2018-07-02T11:43:00Z littlelisper: that was not supposed to. sorry 2018-07-02T11:43:08Z littlelisper: https://pastebin.com/niGjqdAw 2018-07-02T11:44:04Z ogamita: jmercouris: definitions can be subtile… 2018-07-02T11:44:13Z jmercouris: ogamita: yes, it is not an easy problem 2018-07-02T11:44:19Z jmercouris: I can't solve it with some simple heuristic 2018-07-02T11:44:20Z ogamita: littlelisper: what is a rsvp? 2018-07-02T11:44:25Z jmercouris: which is why I'm looking for classification algorithms 2018-07-02T11:44:38Z makomo quit (Client Quit) 2018-07-02T11:44:50Z jmercouris: I know of course of many, they are publicly discussed on the internet, I'm more interested in experiences or maybe someone a lot more knowledegable than me could chime in with some insight 2018-07-02T11:44:51Z ogamita: jmercouris: do you already have some semantics? 2018-07-02T11:44:57Z markoong joined #lisp 2018-07-02T11:45:11Z littlelisper: read without movin your eyes 2018-07-02T11:45:12Z ogamita: I don't have actual practical experience, sorry. 2018-07-02T11:45:13Z jmercouris: ogamita: Not sure what means 2018-07-02T11:46:16Z ogamita: jmercouris: if you have an AI (symbolic or ANN) understanding sentences, then you can start from the meaning to determine if it's a definition or not. Any equivalence can be considered as a definition, if one of the term is "simple". 2018-07-02T11:47:41Z ogamita: littlelisper: ok. So what's your problem with DO? your code seems ok. 2018-07-02T11:48:26Z littlelisper: it keeps printing the second cycle. does not moves ahead 2018-07-02T11:48:37Z nirved: littlelisper: n is first 0 then 1+ch 2018-07-02T11:48:49Z nirved: ch is not modified 2018-07-02T11:49:14Z littlelisper: ch is constant, no of words to display per cycle 2018-07-02T11:49:34Z littlelisper: oops. i got it 2018-07-02T11:49:51Z ogamita: (+ n ch) to increment n! 2018-07-02T11:50:05Z littlelisper: thanks ogamita 2018-07-02T11:51:53Z ogamita: it may be easier to use loop: (loop for n from 0 below book-len by ch for words on book by (lambda (words) (nthcdr ch words)) do (print (subseq words n (min (+ n ch) book-len))) (sleep (wpm-delay wpm))) 2018-07-02T11:52:04Z Ukari: if i write a :version in format v[Major].[Minor].[Patch] in defsystem, is it necessary to update the patch version in defsystem in every git commit ? 2018-07-02T11:52:26Z fikka joined #lisp 2018-07-02T11:52:30Z Ukari: i work directly on master branch 2018-07-02T11:52:31Z ogamita: Yes. and the format is [Major].[Minor].[Patch]. 2018-07-02T11:52:35Z ogamita: no "v". 2018-07-02T11:53:33Z ogamita: Ukari: that said, you could write a pre-commit hook that would increment automatically the Patch number in the asd of the current repo (and even you could check if the modified files are in the depend files of the asd when you have several asd in the repo). 2018-07-02T11:54:10Z ogamita: Ukari: but it may still be better to leave it to the user to increment them, since eg. a change of formatting shouldn't increment even the patch. 2018-07-02T11:55:20Z Ukari: thanks 2018-07-02T11:57:20Z littlelisper quit (Ping timeout: 245 seconds) 2018-07-02T12:00:33Z smasta joined #lisp 2018-07-02T12:01:22Z milanj quit (Quit: This computer has gone to sleep) 2018-07-02T12:02:08Z Fare quit (Ping timeout: 276 seconds) 2018-07-02T12:03:22Z thodg joined #lisp 2018-07-02T12:05:22Z smasta quit (Ping timeout: 265 seconds) 2018-07-02T12:09:10Z ogamita quit (Read error: Connection reset by peer) 2018-07-02T12:10:40Z scymtym__ quit (Ping timeout: 245 seconds) 2018-07-02T12:12:11Z micro quit (Changing host) 2018-07-02T12:12:11Z micro joined #lisp 2018-07-02T12:13:06Z rumbler31 joined #lisp 2018-07-02T12:14:20Z pierpal quit (Quit: Poof) 2018-07-02T12:14:40Z pierpal joined #lisp 2018-07-02T12:15:04Z jmercouris quit (Remote host closed the connection) 2018-07-02T12:15:24Z jkordani joined #lisp 2018-07-02T12:15:40Z thodg quit (Read error: Connection reset by peer) 2018-07-02T12:17:37Z rumbler31 quit (Ping timeout: 248 seconds) 2018-07-02T12:18:41Z shrdlu68 quit (Ping timeout: 248 seconds) 2018-07-02T12:18:41Z Kundry_Wag joined #lisp 2018-07-02T12:20:35Z shrdlu68 joined #lisp 2018-07-02T12:23:28Z igemnace joined #lisp 2018-07-02T12:23:41Z kajo quit (Ping timeout: 276 seconds) 2018-07-02T12:25:07Z Beep-Lord joined #lisp 2018-07-02T12:26:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-02T12:30:10Z lumm joined #lisp 2018-07-02T12:30:45Z SenasOzys quit (Ping timeout: 260 seconds) 2018-07-02T12:34:11Z Bike joined #lisp 2018-07-02T12:34:18Z milanj joined #lisp 2018-07-02T12:39:03Z SenasOzys joined #lisp 2018-07-02T12:46:14Z thodg joined #lisp 2018-07-02T12:46:44Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-02T12:50:08Z Murii_ joined #lisp 2018-07-02T12:51:57Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-02T12:52:27Z FreeBirdLjj joined #lisp 2018-07-02T12:53:08Z Arcaelyx joined #lisp 2018-07-02T12:55:25Z fikka joined #lisp 2018-07-02T13:00:27Z quazimod1 quit (Ping timeout: 240 seconds) 2018-07-02T13:00:53Z doesthiswork joined #lisp 2018-07-02T13:02:45Z quazimodo joined #lisp 2018-07-02T13:03:18Z smasta joined #lisp 2018-07-02T13:03:35Z SenasOzys quit (Remote host closed the connection) 2018-07-02T13:07:42Z Krisostoomus joined #lisp 2018-07-02T13:08:57Z smasta quit (Ping timeout: 256 seconds) 2018-07-02T13:16:40Z flip214: is there a way to find out whether a Copier-function is defined for some argument X? ie. for strings, numbers, (perhaps) structs, etc.? 2018-07-02T13:16:45Z NotSpooky joined #lisp 2018-07-02T13:17:53Z shrdlu68 quit (Ping timeout: 248 seconds) 2018-07-02T13:18:10Z flip214: I found COPY-STRUCTURE, but that still means I need a big CASE around that 2018-07-02T13:18:22Z fikka quit (Ping timeout: 264 seconds) 2018-07-02T13:19:07Z rumbler31 joined #lisp 2018-07-02T13:19:43Z shrdlu68 joined #lisp 2018-07-02T13:19:56Z Kundry_Wag joined #lisp 2018-07-02T13:20:00Z _death: there is no generic way.. like equality, copying is ambiguous 2018-07-02T13:20:40Z Krisostoomus: https://imgur.com/a/2y6cyKy 2018-07-02T13:20:40Z igemnace quit (Quit: WeeChat 2.1) 2018-07-02T13:20:52Z Kundry_Wag_ joined #lisp 2018-07-02T13:21:01Z Bike: yeah, there's deep versus shallow and so on 2018-07-02T13:21:42Z Bike: image is spam 2018-07-02T13:21:52Z Krisostoomus quit (Quit: Leaving) 2018-07-02T13:21:54Z sellout- joined #lisp 2018-07-02T13:22:10Z shka: Bike: thanks for info 2018-07-02T13:22:25Z shka: beach: i read your garbage-collector text 2018-07-02T13:22:30Z shka: excellent, as usual 2018-07-02T13:22:35Z beach: Oh, thank you! 2018-07-02T13:22:46Z beach: In SICL, a heap-allocated object is one of two things, namely a CONS cell or a GENERAL INSTANCE. A CONS cell is two word block and that's it. A general instance has a two-word HEADER, where the first word contains the (pointer to the) CLASS, and the (pointer to the) RACK. 2018-07-02T13:22:47Z beach: Now, CONS cells and two word headers are treated the same in many instances. I am getting tired of typing "A CONS cell or the two-word header of a general instance", so I need a name for it. I was thinking of a "deuce". Any objections? 2018-07-02T13:23:15Z shka: i thank you, i think I learned more about garbage collection reading your articles 2018-07-02T13:23:26Z beach: shka: Great! 2018-07-02T13:23:34Z rumbler31 quit (Ping timeout: 256 seconds) 2018-07-02T13:23:54Z beach: shka: Was it the section on the nursery GC? 2018-07-02T13:23:59Z shka: yes 2018-07-02T13:24:09Z beach: OK, that one I consider fairly complete. 2018-07-02T13:24:16Z Bike: you call it a "header" but it's not contiguous with anything, is it? 2018-07-02T13:24:26Z beach: Correct. 2018-07-02T13:24:33Z loke: beach: Wouldn't that be simply "heap object"? Are there other things that can be on the heap? 2018-07-02T13:24:42Z Bike: i see. that's been tripping me up. kind of an unrelated thought, of course 2018-07-02T13:25:05Z beach: loke: No, because the heap object would be the header PLUS THE RACK if it is a general instance. 2018-07-02T13:25:05Z shka: was thinking the same as loke 2018-07-02T13:25:21Z Kundry_Wag_ quit (Ping timeout: 248 seconds) 2018-07-02T13:25:30Z test1600 joined #lisp 2018-07-02T13:25:37Z Bike: deuce is probably fine. it has a slang meaning but that's probably irrelevant 2018-07-02T13:25:49Z beach: What is the slang meaning? 2018-07-02T13:26:04Z beach: I could look in the urban dictionary I guess. 2018-07-02T13:26:17Z Bike: poop. 2018-07-02T13:26:25Z beach: Oh! Heh. 2018-07-02T13:26:35Z beach: How about "dyad" then? 2018-07-02T13:26:47Z shka: i like dyad better 2018-07-02T13:26:49Z warweasle joined #lisp 2018-07-02T13:26:54Z loke: beach: Aparently it means "poop" (i.e. "number 2") 2018-07-02T13:26:57Z Bike: I've only seen that word in the context of APL, so no problem there 2018-07-02T13:26:57Z sellout- quit (Ping timeout: 248 seconds) 2018-07-02T13:27:09Z beach: OK, dyad it is. 2018-07-02T13:27:21Z loke: In APL I've seen the word "dyadic". I don't think "dyad" is used. 2018-07-02T13:27:30Z fyodost joined #lisp 2018-07-02T13:27:48Z shka: well, it has greek root, probabbly it is used somewhere 2018-07-02T13:27:55Z lieven: think of the PR gains. Haskell has monads but CL has dyads :) 2018-07-02T13:28:07Z shka: but not in computer science i think 2018-07-02T13:28:23Z beach: loke, shka: You are right in that the only heap-allocated objects are CONS cells and general instances, but, again, the general instance is the entire thing. Not just the header. 2018-07-02T13:28:33Z jackdaniel: call it "dyngiel" :-) 2018-07-02T13:28:38Z beach: lieven: Heh, nice one! 2018-07-02T13:28:38Z shka: :D 2018-07-02T13:28:42Z shka: jackdaniel: lol 2018-07-02T13:28:46Z shka: jackdaniel: good one 2018-07-02T13:29:01Z shka: i also recommend tentego 2018-07-02T13:29:24Z shka: all seriously though 2018-07-02T13:29:36Z shka: oh, well, not all seriously at all 2018-07-02T13:29:56Z shka: lieven: and explanation of what dyad is easier to comperhand then what monad is! :D 2018-07-02T13:30:01Z beach: Thanks to everyone. Very helpful as usual. 2018-07-02T13:30:03Z jackdaniel: [ref.: dyngiel in Polish is a word used to describe "a thing to do stuff" or "a thing which is meant for something", probably came from German language because I can't think of any Polish-related etymology] 2018-07-02T13:30:08Z sjl joined #lisp 2018-07-02T13:30:23Z beach: jackdaniel: I was guessing a Polish word. 2018-07-02T13:31:28Z sellout- joined #lisp 2018-07-02T13:32:05Z NotSpooky quit (Ping timeout: 240 seconds) 2018-07-02T13:32:08Z antoszka: jackdaniel: Same as "wichajster", originating from “wie heisst er” and probably „dynks”, too. 2018-07-02T13:32:23Z lieven: shka: a monad is just a monoid in the category of endofunctors. What's your problem? 2018-07-02T13:37:06Z _death: just install monadblock 2018-07-02T13:37:14Z nowhere_man joined #lisp 2018-07-02T13:37:59Z shifty joined #lisp 2018-07-02T13:43:24Z NotSpooky joined #lisp 2018-07-02T13:44:15Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-02T13:44:54Z varjag quit (Quit: ERC (IRC client for Emacs 24.5.1)) 2018-07-02T13:45:14Z rafadc joined #lisp 2018-07-02T13:48:20Z thodg quit (Ping timeout: 260 seconds) 2018-07-02T13:48:33Z shka: antoszka: wichajster maybe difficult to pronounce for non native i guess 2018-07-02T13:48:35Z shka: :D 2018-07-02T13:49:39Z FreeBirdLjj joined #lisp 2018-07-02T13:50:14Z antoszka: :) 2018-07-02T13:52:25Z lnostdal quit (Ping timeout: 260 seconds) 2018-07-02T13:53:10Z shangul joined #lisp 2018-07-02T13:54:51Z charh quit (Remote host closed the connection) 2018-07-02T13:56:42Z nicht joined #lisp 2018-07-02T13:57:44Z LiamH joined #lisp 2018-07-02T13:59:30Z scymtym joined #lisp 2018-07-02T14:00:35Z m00natic quit (Ping timeout: 260 seconds) 2018-07-02T14:05:48Z Inline joined #lisp 2018-07-02T14:06:24Z thodg joined #lisp 2018-07-02T14:17:11Z fikka joined #lisp 2018-07-02T14:18:05Z shrdlu68 quit (Ping timeout: 240 seconds) 2018-07-02T14:19:50Z shrdlu68 joined #lisp 2018-07-02T14:22:06Z fikka quit (Ping timeout: 260 seconds) 2018-07-02T14:25:54Z lumm quit (Ping timeout: 268 seconds) 2018-07-02T14:28:32Z test1600 quit (Ping timeout: 245 seconds) 2018-07-02T14:29:26Z attila_lendvai quit (Quit: Leaving.) 2018-07-02T14:29:30Z test1600 joined #lisp 2018-07-02T14:35:00Z Murii_ quit (Ping timeout: 260 seconds) 2018-07-02T14:38:19Z fyodost_ joined #lisp 2018-07-02T14:39:11Z lumm joined #lisp 2018-07-02T14:40:15Z fyodost quit (Ping timeout: 260 seconds) 2018-07-02T14:41:35Z NotSpooky quit (Quit: Leaving) 2018-07-02T14:41:42Z robotoad joined #lisp 2018-07-02T14:42:24Z Arcaelyx quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-02T14:53:09Z fikka joined #lisp 2018-07-02T14:53:39Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-02T14:58:20Z fikka quit (Ping timeout: 260 seconds) 2018-07-02T15:00:58Z flamebeard quit 2018-07-02T15:01:19Z FreeBirdLjj joined #lisp 2018-07-02T15:01:51Z Kundry_Wag_ joined #lisp 2018-07-02T15:02:17Z shangul quit (Ping timeout: 268 seconds) 2018-07-02T15:03:03Z shangul joined #lisp 2018-07-02T15:03:58Z brettgilio joined #lisp 2018-07-02T15:04:20Z Kundry_Wag quit (Remote host closed the connection) 2018-07-02T15:05:46Z robotoad quit (Quit: robotoad) 2018-07-02T15:06:38Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-02T15:08:04Z housel quit (Remote host closed the connection) 2018-07-02T15:08:27Z Khisanth quit (Ping timeout: 240 seconds) 2018-07-02T15:08:57Z graphene quit (Remote host closed the connection) 2018-07-02T15:09:32Z charh joined #lisp 2018-07-02T15:10:06Z bigblue joined #lisp 2018-07-02T15:10:09Z bigblue: hi 2018-07-02T15:10:19Z beach: Hello bigblue. 2018-07-02T15:10:52Z bigblue: just curious, why does this form actually work: (1- 100) ... i thought all forms started with an operator and that should read: (- 1 100)? 2018-07-02T15:10:55Z bigblue: on sbcl 2018-07-02T15:11:09Z beach: clhs 1- 2018-07-02T15:11:09Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_1pl_1_.htm 2018-07-02T15:11:15Z beach: It is an operator. 2018-07-02T15:11:25Z beach: It is the operator that subtracts 1 from its argument. 2018-07-02T15:11:48Z bigblue: oh! right i should have tested furtehr before wasting yoru time. 2018-07-02T15:11:49Z White_Flame: the function name is 1- specifically so it doesn't read as a number 2018-07-02T15:11:50Z bigblue: thank you kindly 2018-07-02T15:12:05Z bigblue: *nod* thank you very much 2018-07-02T15:12:10Z beach: bigblue: It is equivalent to (- 100 1) and not to (- 1 100) 2018-07-02T15:12:29Z White_Flame: ie, it's not "one minus ..." 2018-07-02T15:12:50Z brettgilio: Hey all, is this channel specifically for Common Lisp, or are other Lisps like Scheme welcome too? 2018-07-02T15:12:57Z beach: Only Common Lisp. 2018-07-02T15:13:08Z beach: There is ##lisp for general Lisp talk. 2018-07-02T15:13:08Z brettgilio: Thank you, beach 2018-07-02T15:13:23Z beach: Sure. 2018-07-02T15:17:36Z Kundry_Wag joined #lisp 2018-07-02T15:18:02Z heisig quit (Quit: Leaving) 2018-07-02T15:18:21Z shrdlu68 quit (Ping timeout: 256 seconds) 2018-07-02T15:19:53Z shrdlu68 joined #lisp 2018-07-02T15:21:49Z Khisanth joined #lisp 2018-07-02T15:22:05Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-02T15:26:54Z robotoad joined #lisp 2018-07-02T15:28:33Z nicht quit (Ping timeout: 256 seconds) 2018-07-02T15:30:33Z jmercouris joined #lisp 2018-07-02T15:31:01Z jmercouris: I can't remember what is the notation (x . y) called for cons cells? 2018-07-02T15:31:37Z jmercouris: dotted pair 2018-07-02T15:31:37Z jmercouris: right 2018-07-02T15:31:55Z jmercouris: I've heard them referred to as ordered pairs as well 2018-07-02T15:31:57Z jmercouris: are both correct? 2018-07-02T15:32:38Z Bike: ordered pair is a more general concept 2018-07-02T15:33:00Z jmercouris: and what is the difference between an ordered pair and a tuple? 2018-07-02T15:33:20Z Bike: an ordered pair is a 2-tuple 2018-07-02T15:33:24Z Kundry_Wag joined #lisp 2018-07-02T15:33:24Z jmercouris: I see 2018-07-02T15:33:40Z jmercouris: I have been living my whole life believing that tuples were always two elements because it sounds like "2" 2018-07-02T15:33:52Z jmercouris: s/believing/beleiving 2018-07-02T15:34:17Z jmercouris: I guess python doesn't help with this notion 2018-07-02T15:34:22Z jmercouris: it reinforced this belief... 2018-07-02T15:34:27Z Bike: the idea is octuple, nonuple, dectuple, etc -> general version is "tuple" 2018-07-02T15:34:38Z jmercouris: how does one specify a tuple of length two? 2018-07-02T15:35:00Z Bike: i'm pretty sure python has tuples of more lengths than two 2018-07-02T15:35:07Z Bike: and lisp doesn't have a structure called 'tuple' 2018-07-02T15:35:10Z pierpal quit (Ping timeout: 264 seconds) 2018-07-02T15:35:18Z eschatologist joined #lisp 2018-07-02T15:35:27Z Kundry_Wag_ quit (Ping timeout: 240 seconds) 2018-07-02T15:35:34Z jmercouris: Bike: I've mostly seen it in reference to two element pairs 2018-07-02T15:35:47Z jmercouris: but you are right, they can be any length 2018-07-02T15:35:54Z bigblue quit (Quit: Lost terminal) 2018-07-02T15:36:24Z White_Flame: I've heard the term "two-tuple" to specifically describe that length 2018-07-02T15:36:30Z _death: "twople" 2018-07-02T15:36:38Z White_Flame: or "2-tuple" 2018-07-02T15:36:47Z Bike: 2-tuple is pretty normal 2018-07-02T15:39:25Z jmercouris: 2-tuple it is 2018-07-02T15:39:44Z jmercouris: what is the difference between a tuple and a set? 2018-07-02T15:39:52Z skapata joined #lisp 2018-07-02T15:40:00Z jmercouris: ah, the ordering 2018-07-02T15:40:05Z beach: Indeed. 2018-07-02T15:40:23Z trittweiler: A tuple may also contain an element twice 2018-07-02T15:40:29Z jmercouris: right, whereas a set may not 2018-07-02T15:40:37Z jmercouris: though I guess in Lisp we can use lists for the set operations 2018-07-02T15:40:40Z jmercouris: so that doesn't really hold true 2018-07-02T15:41:28Z beach: jmercouris: You should make sure your lists don't have duplicate elements if you want to use them to represent sets. 2018-07-02T15:41:41Z jmercouris: beach: How would one do that? 2018-07-02T15:41:56Z eschatologist quit (Ping timeout: 276 seconds) 2018-07-02T15:41:59Z beach: Use a consistent set of operations that preserves this property. 2018-07-02T15:42:02Z jmercouris: I'm also guessing it is undefined behavior if there are duplicates in your set? 2018-07-02T15:42:09Z jmercouris: s/set/list 2018-07-02T15:42:13Z Bike: whether the result has duplicates is undefined 2018-07-02T15:42:21Z beach: I think that depends on the operation. You need to look in each case. 2018-07-02T15:42:32Z Bike: for union and intersection at least 2018-07-02T15:42:42Z nowhere_man quit (Ping timeout: 245 seconds) 2018-07-02T15:42:44Z jmercouris: Ok, I'll keep that in mind 2018-07-02T15:42:54Z jmercouris: I'm not really ever using these operations, I'm just learning them because of this textbook 2018-07-02T15:42:59Z jmercouris: but maybe someday I will find a use for them 2018-07-02T15:43:40Z Bike: lists aren't really an efficient representation of sets, you'll want to work something else out if you're doing anything heavy 2018-07-02T15:43:43Z jmercouris: I guess you could simplify removal of a certain type of element from a list by using something like set-difference rather than iterating the list 2018-07-02T15:44:16Z jmercouris: maybe I'm just going around with a hammer all the time instead of thinking about what else is in the toolbox 2018-07-02T15:44:18Z beach: Sure, but it's the same algorithm anyway. 2018-07-02T15:44:20Z trittweiler: lists are not a good data structure to element sets (if you really need sets); the functions provided by the standard are sometimes handy though, for example when implementing macros and working on a small list of statically-defined keywords. As that list will be small, efficiency doesn't matter 2018-07-02T15:44:46Z shrdlu68 quit (Ping timeout: 264 seconds) 2018-07-02T15:45:04Z jmercouris: true, it will have the same time complexity 2018-07-02T15:45:11Z jmercouris: there is no getting around the amount of comparisons you have to make 2018-07-02T15:45:24Z Bike: yeah there is 2018-07-02T15:45:43Z beach: jmercouris: "number" of comparisons. Amount of stuff, number of things. 2018-07-02T15:46:07Z jmercouris: beach: I'm sorry, english is my first language :D I still can't keep it all straight 2018-07-02T15:46:09Z light2yellow joined #lisp 2018-07-02T15:46:19Z beach: I know what you mean. 2018-07-02T15:48:01Z White_Flame: hash tables are generally going to be what you want for sets in CL. having the value be the same as the key is often a handy way to implement them 2018-07-02T15:48:03Z brettgilio quit (Quit: Goodbye!) 2018-07-02T15:48:45Z beach: White_Flame: Er, that really depends on the domain of the elements. 2018-07-02T15:48:54Z buffergn0me joined #lisp 2018-07-02T15:49:07Z White_Flame: yeah, it's a very nebulous "generally" 2018-07-02T15:49:24Z trittweiler: jmercouris, in languages without multiple-return-values, tuples are often used instead. (Not sure what exactly the context is, just a general remark to the subject) 2018-07-02T15:49:43Z jmercouris: how does one generally imeplement a sparse matrix in CL? 2018-07-02T15:49:48Z jmercouris: a list of lists? 2018-07-02T15:50:10Z White_Flame: I think the problem would be tackled in the same way as any other language 2018-07-02T15:50:11Z jmercouris: trittweiler: I've seen that before, and I generally consider, and believe it to be an antipattern of good programming 2018-07-02T15:50:20Z jmercouris: White_Flame: so, a list of lists then? 2018-07-02T15:50:33Z White_Flame: well, depends on how you want to index them 2018-07-02T15:50:41Z White_Flame: it's certainly a speed/complexity tradeoff 2018-07-02T15:50:42Z jmercouris: e.g. (list (list x y value) (list x2 y2 value2)) 2018-07-02T15:51:20Z White_Flame: for instance, some sort of tree structure which hold begin-end ranges for your sparse indexes 2018-07-02T15:51:24Z trittweiler: I don't think you would do a list of list. maybe a vector of lists but that still required a vector of the full |V| vertices. A hash-table of lists perhaps 2018-07-02T15:51:36Z White_Flame: which may or may not themselves have holes in them 2018-07-02T15:51:47Z beach: jmercouris: As White_Flame points out, you design a data structure by first determining the operations you want, and the desired complexity of those operations. 2018-07-02T15:52:06Z rafadc quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-02T15:52:40Z jmercouris: I guess it would be very domain specific then 2018-07-02T15:52:52Z jmercouris: understanding what characterstics you want your data structure to have, and then designing it around that 2018-07-02T15:52:59Z jmercouris: its an interesting approach 2018-07-02T15:53:16Z jmercouris: I normally consider what data structures I have, and then the algorithm is shaped around the characterstics of the data structure 2018-07-02T15:53:16Z beach: That's how it is always done. 2018-07-02T15:53:28Z beach: First the operations. 2018-07-02T15:53:52Z beach: Because that's what a data structure *IS*, i.e., the set of operations on it and the complexity of those operations. 2018-07-02T15:54:02Z beach: Not necessarily asymptotic complexity of course. 2018-07-02T15:54:05Z jmercouris: data structures, at least non primitive ones, in languages I've used traditionally have always been too heavy for the kind of work that I am doing 2018-07-02T15:54:12Z beach: It could be relative to particular use cases. 2018-07-02T15:54:21Z jmercouris: hence my approach 2018-07-02T15:54:50Z jmercouris: I remember a python program I wrote to analyze digital networks, and so I made a data structure, but it was just way too heavy 2018-07-02T15:54:57Z jmercouris: took too much memory, despite fitting neatly into my algorithm 2018-07-02T15:55:06Z jmercouris: so I ended up rewriting the algorithm and using very primitive structuers 2018-07-02T15:55:12Z jmercouris: s/structuers/structures 2018-07-02T15:55:35Z beach: When I say "complexity", I include things like memory consumption. 2018-07-02T15:55:55Z White_Flame: a great beginning case is to know the API and not have any speed assumptions, to get an initial version working behind a reimplementable interface 2018-07-02T15:56:09Z White_Flame: an initial naive version, that is 2018-07-02T15:56:16Z jmercouris: right, I understand 2018-07-02T15:56:46Z beach: White_Flame: Exactly, and then you can use the simple version for random testing by comparing the result to the two versions. 2018-07-02T15:56:50Z beach: Like I do in Cluffer. 2018-07-02T15:57:19Z jmercouris: I feel like this channel has taught me a lot about programming in other languages 2018-07-02T15:57:35Z beach: I can very well believe that. 2018-07-02T15:57:46Z jmercouris: I always thought people were exaggerating, but I think there is value in every programmer learning lisp 2018-07-02T15:57:57Z beach: Totally. 2018-07-02T15:58:29Z beach: Also, many people who hang out here have knowledge in lots of other domains. I am betting that is not the case for your lambda programming language channel. 2018-07-02T15:58:43Z beach: Or at least, to a lesser degree in those channels. 2018-07-02T15:59:26Z jmercouris: Yeah, that is a huge part of it, the community contains very knowledgable people 2018-07-02T15:59:51Z kozy quit (Remote host closed the connection) 2018-07-02T15:59:57Z jmercouris: I don't want to disparage others, but many other language channels are full of novice programmers, which is great, they are learning, but there is infrequently information I can learn from a first year CS student 2018-07-02T16:00:50Z beach: Right, #lisp is specifically not for newbies. They are tolerated as long as they make progress. 2018-07-02T16:01:31Z _death: a wise man once said, "Common Lisp is a language you graduate into." 2018-07-02T16:01:37Z White_Flame recalls going into javascript channels to ask advanced questions, and enters a thousand yard stare 2018-07-02T16:01:46Z beach: Heh. 2018-07-02T16:02:52Z beach: That reminds me. Who was it the other day that had totally missed the point of #lisp and thought people came here when they are bored? 2018-07-02T16:03:03Z beach: Oh, verisimilitude, wasn't it? 2018-07-02T16:03:15Z beach: So I take it that must be the norm in other channels. 2018-07-02T16:03:29Z jmercouris: It's definitely the norm in #emacs 2018-07-02T16:04:04Z _death: I think the verisimilitude guy is actually quite experienced and had good points 2018-07-02T16:04:10Z Xach: The lifecycle of many IRC channels is to start with a particular topic and change to a social channel for the people who have been discussing things with each other for years 2018-07-02T16:04:32Z kozy joined #lisp 2018-07-02T16:04:51Z schweers quit (Ping timeout: 240 seconds) 2018-07-02T16:05:14Z pierpal joined #lisp 2018-07-02T16:05:57Z jmercouris: _death: Do you have a link still to that gist you wrote for the mini perl interpreter? 2018-07-02T16:08:41Z varjag joined #lisp 2018-07-02T16:10:05Z lumm quit (Quit: lumm) 2018-07-02T16:10:20Z rpg joined #lisp 2018-07-02T16:11:41Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-02T16:11:58Z Folkol_ quit (Ping timeout: 268 seconds) 2018-07-02T16:12:00Z _death: I don't think it was a gist.. maybe on plaster.. also, I wouldn't dare write a "mini perl interpreter" :).. 2018-07-02T16:12:31Z jmercouris: _death: It was a very special case, you wrote it for a broken perl script 2018-07-02T16:13:15Z jmercouris: could somebody theoretically implement a new language entirely using reader macros? 2018-07-02T16:13:30Z jmercouris: just transform some slightly different forms into lisp forms? 2018-07-02T16:13:42Z whartung: of course. 2018-07-02T16:13:56Z _death: yes.. I didn't keep it but maybe #lisp log has a link 2018-07-02T16:14:25Z smasta joined #lisp 2018-07-02T16:14:46Z Xach: haha 2018-07-02T16:15:10Z jmercouris: Xach: are you laughing at me? or are you remember the script? 2018-07-02T16:15:17Z jmercouris: s/remember/remembering 2018-07-02T16:16:06Z Xach: jmercouris: 16 years ago whartung wrote a post about using reader macros to implement a new language to solve a hard problem nicely with lisp and it inspired me a lot. i'm laughing with delight at the memory of the post and the fact that whartung is here to confirm that it can be done. 2018-07-02T16:16:19Z jmercouris: Oh, I see 2018-07-02T16:16:26Z Xach: it was called "guerilla lisp -- the opus" 2018-07-02T16:16:54Z jmercouris: THIS IS IT! 2018-07-02T16:16:59Z jmercouris: I was asking about this essay about a year ago 2018-07-02T16:17:02Z jmercouris: and I couldn't remember it 2018-07-02T16:17:07Z jmercouris: I know it, this is fantastic 2018-07-02T16:17:08Z whartung: kismet! 2018-07-02T16:17:35Z _death: jmercouris: https://plaster.tymoon.eu/view/713#713 2018-07-02T16:18:05Z whartung: It’s funny, because here’s what whartung knows about Lisp: ][, and here’s what Xach knows about Lisp ] [ 2018-07-02T16:18:18Z Xach: Apple ][? 2018-07-02T16:18:32Z brendyn quit (Ping timeout: 256 seconds) 2018-07-02T16:19:18Z jmercouris: _death: ah yes, thank you, that very special piece of code :D 2018-07-02T16:19:48Z jmercouris: I still laugh about it occasionally 2018-07-02T16:21:00Z Bike: oh, i remember that. wasn't it somebody having weird standards for what solvinga problem meant 2018-07-02T16:21:12Z jmercouris: Yes, somebody was trying to decide if they wanted to learn lisp 2018-07-02T16:21:25Z jmercouris: by having somebody reimplement a broken perl script in lisp so they could "see what it looks like" 2018-07-02T16:21:57Z whartung: I guess this is what “Writing Fortran in Lisp” has evolved to 2018-07-02T16:22:51Z _death: why fortran when you can https://plaster.tymoon.eu/view/831#831 2018-07-02T16:23:27Z makomo joined #lisp 2018-07-02T16:23:29Z _death: the UNLESS is a bit silly there though 2018-07-02T16:23:57Z buffergn0me quit (Ping timeout: 240 seconds) 2018-07-02T16:25:21Z Bike: yeah that's the silly bit 2018-07-02T16:26:03Z whartung: I love “when” and “unless”. “unless” is so much more civil that “when not” 2018-07-02T16:26:43Z beach: whartung: But it appears to be hard for non-native speakers of English. 2018-07-02T16:26:59Z beach: It must not exist in many other languages. 2018-07-02T16:27:01Z surya joined #lisp 2018-07-02T16:27:19Z beach: whartung: But I agree with you. 2018-07-02T16:27:29Z Beep-Lord: In ARM, that UNLESS would be less silly. 2018-07-02T16:27:45Z jmercouris quit (Ping timeout: 248 seconds) 2018-07-02T16:27:46Z sjl: I'm a native English speaker and seeing "unless" always makes me pause and mentally translate it to "when not" 2018-07-02T16:28:22Z jmercouris joined #lisp 2018-07-02T16:28:22Z _death: to me sometimes unless is natural and sometimes when not is 2018-07-02T16:28:24Z sjl: The more I force myself to use it the shorter the pause gets, but it's still there a couple of years in. 2018-07-02T16:28:26Z whartung: yea, but I’m from a VAX BASIC background, so learned this kind of stuff early 2018-07-02T16:28:42Z beach: sjl: Interesting. 2018-07-02T16:29:01Z whartung: sum = sum + a(i) unless a(i) > 10 for i = 1 to 10 2018-07-02T16:29:24Z whartung: that reads really well for me 2018-07-02T16:32:25Z sz0 quit (Quit: Connection closed for inactivity) 2018-07-02T16:35:32Z makomo: sjl: same here, every time. 2018-07-02T16:35:33Z test1600 quit (Ping timeout: 265 seconds) 2018-07-02T16:35:51Z hhdave quit (Ping timeout: 240 seconds) 2018-07-02T16:36:05Z makomo: i have to ask again: anyone know when and if at all the ELS 2018 videos will be up? ;_; 2018-07-02T16:37:00Z smasta quit (Ping timeout: 265 seconds) 2018-07-02T16:39:00Z jmercouris: makomo: perhaps ask shinmera 2018-07-02T16:39:12Z jmercouris: he is responsible for the website 2018-07-02T16:39:28Z makomo: jmercouris: i did a while ago, but iirc he said he doesn't know anything about it 2018-07-02T16:39:50Z beach: The local organizer would be a better choice. 2018-07-02T16:40:05Z makomo: they did record it though, right? 2018-07-02T16:40:10Z beach: Yes. 2018-07-02T16:40:41Z makomo: i guess emailing the organizer would be the next step 2018-07-02T16:41:19Z Inline: i automatically translate unless to when-not 2018-07-02T16:41:21Z makomo: it would be a shame for the videos and the content to go to waste. it's interesting stuff and shows that CL is alive and kicking 2018-07-02T16:41:38Z whartung: What was ELS? 2018-07-02T16:41:42Z jmercouris: I'm not sure anyone gets that feeling from the ELS website 2018-07-02T16:41:47Z makomo: especially when newcomers try to look up stuff about CL. it's reassuring to see videos from the current year up there 2018-07-02T16:41:56Z jmercouris: whartung: https://european-lisp-symposium.org 2018-07-02T16:41:56Z Inline: or other-than 2018-07-02T16:42:01Z whartung: ah ty 2018-07-02T16:42:12Z makomo: jmercouris: you don't like the design? 2018-07-02T16:42:37Z rafadc joined #lisp 2018-07-02T16:42:49Z jmercouris: Not even a little bit 2018-07-02T16:42:51Z mfiano: The design looks about 20 years old 2018-07-02T16:43:38Z Inline: prolog-syntax in climacs uses the package drei-syntax and so drei-syntax::update-syntax takes over, the package does not :shadow it, i put the line in the .asd package section now meh.... 2018-07-02T16:43:40Z makomo: it's not that bad imo. it's a little basic but not that horrible 2018-07-02T16:43:41Z jackdaniel: given these flying ads I see everywhere and loads of JS which make my CPU scream in heat I conclude, that 20 years old *is* good 2018-07-02T16:43:59Z shangul quit (Remote host closed the connection) 2018-07-02T16:44:02Z whartung: If it’s not Material Design, how can it be any good? 2018-07-02T16:44:02Z smasta joined #lisp 2018-07-02T16:44:06Z jackdaniel: and moving hamburgers or whatever they're called ;) 2018-07-02T16:44:08Z makomo: whartung: hah, exactly 2018-07-02T16:44:25Z shangul joined #lisp 2018-07-02T16:44:31Z makomo: but in any case, i don't care that much about the aesthetics, i care about the content. 2018-07-02T16:44:45Z jmercouris: modern design doesn't mean JS and hamburgers! 2018-07-02T16:44:48Z Inline: frigging thing, it also uses esa-utils::format-sym and some macrolet fails there because it tries to use format-sym and it's not defined anywhere and the package does not import that symbol either... so i added that too 2018-07-02T16:44:50Z Inline: meh 2018-07-02T16:44:55Z Inline: totally broken 2018-07-02T16:45:01Z jmercouris: here's an example: my blog: http://john.mercouris.online 2018-07-02T16:45:08Z jackdaniel: good design makes content visible, bad design makes content invisible, no design is just content. thus no design is better than no design 2018-07-02T16:45:10Z jmercouris: modern, lightweight, and doesn't look 1000 years old, yet no hamburgers 2018-07-02T16:45:19Z mfiano: Here's mine, no JS: https://www.michaelfiano.com/ 2018-07-02T16:45:28Z jmercouris: jackdaniel: I think you should stick to programming :P 2018-07-02T16:45:42Z jackdaniel: jmercouris: and I don't think that, what now? 2018-07-02T16:45:49Z jmercouris: Well, its a stalemate I guess 2018-07-02T16:46:09Z jmercouris: We each do our own thing as it doesn't hurt each other, and the world continues on :D 2018-07-02T16:46:12Z Inline: and my version of esa-utils did not even have that format-sym defined, i'm using old and new versions of software to cross-compare too.... 2018-07-02T16:46:14Z Inline: meh 2018-07-02T16:46:19Z jackdaniel: not really, because it is my pool to decide what to do (i.e not yours) so I'm at adventage here 2018-07-02T16:46:44Z jackdaniel: Inline: you fight with McCLIM auxilliary libraries? 2018-07-02T16:46:48Z jackdaniel: s/fight/play/ ;-) 2018-07-02T16:47:20Z shka_ joined #lisp 2018-07-02T16:47:35Z Inline: and i found out that even when i define my trees to be taken into account and to be discarded in my asdf layout, as soon as i use quicklisp, it discards all of that 2018-07-02T16:47:57Z Inline: and i get false positives of succeeding compilations 2018-07-02T16:48:19Z Inline: only detecting something is wrong via ql:where-is-system blah 2018-07-02T16:48:39Z carenz joined #lisp 2018-07-02T16:48:43Z Inline: then i see it's referencing a total different mcclim for example.... 2018-07-02T16:48:49Z Inline: not the one i have in local-projects 2018-07-02T16:49:01Z carenz quit (Read error: Connection reset by peer) 2018-07-02T16:49:09Z Inline: rather the one in quicklisp/dists/quicklisp/software 2018-07-02T16:49:42Z Inline: only way was to change all forma of ql:quickload to asdf:load-system 2018-07-02T16:49:47Z Inline: in my init-file 2018-07-02T16:49:50Z jmercouris quit (Remote host closed the connection) 2018-07-02T16:49:56Z Inline: at least that way i get consistent results 2018-07-02T16:50:23Z Xach: If a project is accessible via asdf, it takes precedence over the quicklisp-provided one. 2018-07-02T16:50:30Z shrdlu68 joined #lisp 2018-07-02T16:50:49Z Xach: If you configure asdf so it sees quicklisp/ as a tree, the results will not be great 2018-07-02T16:50:56Z Xach: quicklisp/software, even 2018-07-02T16:51:00Z Kaisyu quit (Quit: Connection closed for inactivity) 2018-07-02T16:51:02Z Inline: yah 2018-07-02T16:51:10Z Inline: i think that was my problem 2018-07-02T16:51:26Z Inline: but on the other hand i have dependencies of say mcclim which live in quicklisp/software 2018-07-02T16:51:38Z Inline: so it's rather messy to not include it 2018-07-02T16:51:46Z Inline: and messy via including either 2018-07-02T16:51:49Z Inline: lol 2018-07-02T16:52:08Z Xach: Inline: quicklisp bundles might help there? but maybe not. 2018-07-02T16:52:22Z Inline: it either would force me to move all of relevant deps out of software into local-projects or so 2018-07-02T16:52:32Z Inline: or force me to use asdf:load-system just 2018-07-02T16:52:44Z Inline: no idea Xach 2018-07-02T16:52:59Z Inline: i've read the docs but quciklisp does not give into it's details much 2018-07-02T16:53:23Z Inline: and i'm not sure i have the time to grok it all from the sources for now 2018-07-02T16:53:29Z Inline: :) anyway 2018-07-02T16:53:52Z Xach: Sorry about that 2018-07-02T16:53:52Z Inline: at least one thing got clearer on the way from all of this mess 2018-07-02T16:54:08Z Inline: that i have to be careful 2018-07-02T16:54:19Z Xach: I think it would be good to make it easy to use quicklisp libraries without loading quicklisp itself, but the process is tricky. 2018-07-02T16:54:37Z Inline: yah i can imagine 2018-07-02T16:55:04Z Xach: You can get quicklisp to dump out a list of paths to systems in an index file, but making asdf use that index file is some code. (Not a lot, but more than nothing.) 2018-07-02T16:55:47Z Inline: arright, thank you for the info, i'll come back to you again because of those system.cdb files and what not 2018-07-02T16:56:31Z nowhere_man joined #lisp 2018-07-02T16:57:19Z brettgilio joined #lisp 2018-07-02T17:00:28Z smasta quit (Ping timeout: 256 seconds) 2018-07-02T17:04:52Z eschatologist joined #lisp 2018-07-02T17:08:43Z nickenchuggets joined #lisp 2018-07-02T17:08:44Z nickenchuggets quit (Changing host) 2018-07-02T17:08:44Z nickenchuggets joined #lisp 2018-07-02T17:12:00Z pjb joined #lisp 2018-07-02T17:12:11Z jxy quit (Quit: leaving) 2018-07-02T17:13:44Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-02T17:14:02Z lnostdal joined #lisp 2018-07-02T17:15:27Z thodg quit (Ping timeout: 256 seconds) 2018-07-02T17:17:00Z surya quit (Remote host closed the connection) 2018-07-02T17:17:20Z rpg quit (Ping timeout: 268 seconds) 2018-07-02T17:20:38Z rumbler31 joined #lisp 2018-07-02T17:21:40Z habamax joined #lisp 2018-07-02T17:24:51Z rumbler31 quit (Ping timeout: 240 seconds) 2018-07-02T17:25:06Z jxy joined #lisp 2018-07-02T17:27:29Z littlelisper joined #lisp 2018-07-02T17:27:38Z eschatologist joined #lisp 2018-07-02T17:29:06Z shangul quit (Quit: sudo rm -rf /usr/*) 2018-07-02T17:30:23Z megalography quit (Ping timeout: 276 seconds) 2018-07-02T17:32:18Z littlelisper quit (Read error: Connection reset by peer) 2018-07-02T17:32:18Z littleli1per joined #lisp 2018-07-02T17:32:29Z Kundry_Wag_ joined #lisp 2018-07-02T17:34:59Z rpg joined #lisp 2018-07-02T17:36:20Z rpg: SLIME question -- something has happened recently so that my SLIME REPL processes no longer inherit my bash environment, meaning that lots of stuff that uses RUN-PROGRAM and RUN-SHELL-COMMAND no longer work. Any suggestions about diagnosing that? 2018-07-02T17:37:17Z rpg: My guess is that it has something to do with how the subsidiary CL runtime is launched, but I don't claim to understand SLIME that well. However, this problem does NOT occur with emacs shell mode, so it seems to be a distinctly SLIME problem. 2018-07-02T17:38:00Z rpg: mmmm..... or not. emacs-shell isn't working either. So I guess it's emacs, not SLIME. 2018-07-02T17:39:17Z test1600 joined #lisp 2018-07-02T17:41:41Z MichaelRaskin joined #lisp 2018-07-02T17:44:46Z Oddity quit (Read error: Connection reset by peer) 2018-07-02T17:47:46Z cage_ joined #lisp 2018-07-02T17:48:29Z pjb: rpg: it may be rather linked to how you start emacs. 2018-07-02T17:48:52Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-02T17:48:53Z pjb: If you start it from the terminal: emacs & disown, you will inherit from a different environment than if you start it from the dock! 2018-07-02T17:49:26Z pjb: Now, run-shell-command runs the command thru the shell, so it's up to you to set up correctly your shell rc files. 2018-07-02T17:49:41Z White_Flame: or if you start it from the gui startmenu thingy, who knows what you'll get 2018-07-02T17:50:38Z rpg: pjb: I think that's right. I added (exec-path-from-shell-initialize) into my init.el, and maybe that will fix this. 2018-07-02T17:50:45Z White_Flame: I never start it consistently, and always issue magic stuff to init my environment 2018-07-02T17:50:55Z pjb: For run-program, implementation dependent, you usually have a :env parameter, or a :use-shell parameter to go back to the run-shell-command case. UIOP:run-program has force-shell. 2018-07-02T17:50:59Z Murii_ joined #lisp 2018-07-02T17:51:06Z megalography joined #lisp 2018-07-02T17:52:06Z pjb: rpg: You could have a bunch of setenv forms in your ~/.emacs for inferior processes. 2018-07-02T17:52:33Z rpg: Yes, exec-path-from-shell-initialize fixes the problem, thanks. 2018-07-02T17:52:42Z pjb: If you keep your environment variables in a simple ~/.bash_env, you could even parse it and define the environment variables in emacs lisp from their shell syntax. 2018-07-02T17:52:58Z eschatologist joined #lisp 2018-07-02T17:53:25Z pjb: I don't have symbol in my emacs-version "25.1.1". 2018-07-02T17:53:30Z pjb: this 2018-07-02T17:53:57Z shifty quit (Ping timeout: 245 seconds) 2018-07-02T17:54:38Z light2yellow quit (Quit: light2yellow) 2018-07-02T17:55:01Z Oddity joined #lisp 2018-07-02T17:56:11Z paule32 quit (Read error: Connection reset by peer) 2018-07-02T17:56:17Z brettgilio quit (Read error: Connection reset by peer) 2018-07-02T17:56:44Z milanj quit (Quit: This computer has gone to sleep) 2018-07-02T17:59:05Z _cosmonaut_ quit (Ping timeout: 256 seconds) 2018-07-02T18:00:35Z CrazyEddy quit (Remote host closed the connection) 2018-07-02T18:01:48Z graphene joined #lisp 2018-07-02T18:02:22Z megalography quit (Ping timeout: 260 seconds) 2018-07-02T18:02:22Z fikka joined #lisp 2018-07-02T18:04:49Z Kundry_Wag_ quit (Ping timeout: 248 seconds) 2018-07-02T18:06:14Z eschatologist quit (Ping timeout: 276 seconds) 2018-07-02T18:06:46Z fikka quit (Ping timeout: 256 seconds) 2018-07-02T18:08:00Z brettgilio joined #lisp 2018-07-02T18:11:44Z paule32 joined #lisp 2018-07-02T18:14:06Z terpri quit (Ping timeout: 255 seconds) 2018-07-02T18:18:00Z littleli1per quit (Read error: Connection reset by peer) 2018-07-02T18:18:08Z littlelisper joined #lisp 2018-07-02T18:22:30Z random-nick quit (Ping timeout: 260 seconds) 2018-07-02T18:22:52Z eschatologist joined #lisp 2018-07-02T18:26:35Z eschatologist quit (Client Quit) 2018-07-02T18:27:32Z eschatologist joined #lisp 2018-07-02T18:27:40Z sauvin quit (Read error: Connection reset by peer) 2018-07-02T18:28:13Z mflem joined #lisp 2018-07-02T18:28:31Z rpg: pjb: It seems that inheriting the right environment when starting from a GUI is a common enough problem that there's a library for it. exec-path-from-shell is available in the usual package sites. 2018-07-02T18:28:51Z rpg: I'll shut up about this now, because it turns out to be an emacs problem, not a slime problem. 2018-07-02T18:29:07Z pjb: ok. Thanks. 2018-07-02T18:30:34Z smasta joined #lisp 2018-07-02T18:32:14Z eschatologist quit (Ping timeout: 276 seconds) 2018-07-02T18:33:38Z Kundry_Wag quit (Remote host closed the connection) 2018-07-02T18:34:32Z trittweiler quit (Remote host closed the connection) 2018-07-02T18:34:48Z graphene quit (Remote host closed the connection) 2018-07-02T18:36:20Z graphene joined #lisp 2018-07-02T18:36:21Z littlelisper quit (Read error: Connection reset by peer) 2018-07-02T18:36:33Z Kundry_Wag joined #lisp 2018-07-02T18:36:36Z littlelisper joined #lisp 2018-07-02T18:37:24Z escapist joined #lisp 2018-07-02T18:37:33Z habamax quit (Ping timeout: 264 seconds) 2018-07-02T18:39:29Z shrdlu68 quit (Ping timeout: 248 seconds) 2018-07-02T18:40:28Z zachk joined #lisp 2018-07-02T18:40:28Z zachk quit (Changing host) 2018-07-02T18:40:28Z zachk joined #lisp 2018-07-02T18:40:49Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-02T18:40:58Z megalography joined #lisp 2018-07-02T18:41:13Z nickenchuggets joined #lisp 2018-07-02T18:41:13Z nickenchuggets quit (Changing host) 2018-07-02T18:41:14Z nickenchuggets joined #lisp 2018-07-02T18:41:36Z eschatologist joined #lisp 2018-07-02T18:42:06Z Arcaelyx joined #lisp 2018-07-02T18:45:01Z iridioid joined #lisp 2018-07-02T18:45:15Z test1600 quit (Ping timeout: 260 seconds) 2018-07-02T18:45:17Z littlelisper quit (Read error: Connection reset by peer) 2018-07-02T18:45:42Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-02T18:46:16Z littlelisper joined #lisp 2018-07-02T18:46:57Z smasta quit (Ping timeout: 248 seconds) 2018-07-02T18:48:18Z eschatologist joined #lisp 2018-07-02T18:49:01Z lumm joined #lisp 2018-07-02T18:51:03Z kajo joined #lisp 2018-07-02T18:57:43Z Yaargh joined #lisp 2018-07-02T18:57:44Z wildbartty quit (Remote host closed the connection) 2018-07-02T18:57:52Z wildbartty joined #lisp 2018-07-02T18:58:43Z random-nick joined #lisp 2018-07-02T18:58:58Z smaster joined #lisp 2018-07-02T19:00:57Z iridioid quit (Ping timeout: 240 seconds) 2018-07-02T19:01:10Z littlelisper quit (Quit: leaving) 2018-07-02T19:03:27Z stacksmith joined #lisp 2018-07-02T19:05:12Z stacksmith: Good morning everyone. 2018-07-02T19:06:53Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-02T19:09:01Z ebrasca joined #lisp 2018-07-02T19:09:52Z trittweiler joined #lisp 2018-07-02T19:09:54Z eschatologist joined #lisp 2018-07-02T19:12:37Z stacksmith: Q: Does the spec address how tagbody treats symbol-macrolet? Empirically, SBCL does not seem to expand these and treats them as tags. CLHS says "If a statement is a macro form and its macro expansion is an atom, that atom is treated as a statement, not a tag." Is this implementation-dependent? 2018-07-02T19:13:21Z Bike: "The determination of which elements of the body are tags and which are statements is made prior to any macro expansion of that element. " 2018-07-02T19:13:47Z Bike: what that's saying is that if a macro form, as in a cons where the car names a macro, expands into an atom, it's still treated as a statement. 2018-07-02T19:14:38Z Bike: you can of course hack it by putting in (progn symbol-macro-symbol) 2018-07-02T19:14:46Z stacksmith: Yeah. 2018-07-02T19:15:09Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-02T19:16:01Z stacksmith: Is CLHS saying that any symbol is considered a tag, prior to macroexpansion (in which case things deemed as tags do not get symbol-macroexpanded?) 2018-07-02T19:16:08Z Bike: yes. 2018-07-02T19:16:55Z stacksmith: In other words, inside tagbody, symbol-macrolet is effectively disabled. 2018-07-02T19:17:24Z Bike: for just bare symbols. it's still normal in compound forms. 2018-07-02T19:18:37Z smaster quit (Ping timeout: 256 seconds) 2018-07-02T19:19:28Z stacksmith: Right. All bare symbols are considered tags. Is that why tagbody always returns nil? There is no way to place a bare value prior to return, unless it is returned by the last compound form, which would probably be confusing. 2018-07-02T19:20:32Z trittweiler: yeah 2018-07-02T19:20:34Z Bike: (tagbody (+ 2 2) (go end) end) returns what? 2018-07-02T19:21:12Z stacksmith: nil 2018-07-02T19:21:41Z Bike: but the last form that returns a value to be executed is the addition. 2018-07-02T19:21:54Z dlowe: it returns nil by definition in the spec 2018-07-02T19:21:59Z Bike: yes, obviously. 2018-07-02T19:22:13Z Bike: i'm being all hypo-thetical here. 2018-07-02T19:22:18Z dlowe: because execution passes to END, and then there are no remaining statements 2018-07-02T19:22:28Z stacksmith: The statements in a tagbody are evaluated in order from left to right, and their values are discarded. If at any time there are no remaining statements, tagbody returns nil. 2018-07-02T19:22:41Z pjb: stacksmith: you can always wrap your "toplevel" symbol-macrolets in a progn. 2018-07-02T19:22:55Z pjb: (tagbody foo (progn foo) (go foo)) 2018-07-02T19:22:58Z Bike: i mean fundamentally tagbody always returns nil because it's about weird control flow and loops and stuff. 2018-07-02T19:23:10Z eschatologist joined #lisp 2018-07-02T19:23:18Z Bike: you can use prog if you want to return a value easily, and for the maximal fortran experience 2018-07-02T19:24:08Z smaster joined #lisp 2018-07-02T19:24:18Z pjb: (symbol-macrolet ((foo (if (zerop (random 2)) (return) (print 'foo)))) (block nil (tagbody foo (progn foo) (go foo)))) ; will print a random number of foos. 2018-07-02T19:25:00Z stacksmith: PROG still requires an explicit return. That bit me once. 2018-07-02T19:27:16Z trittweiler: PROG is a favorite of mine! A handy tool to implement macros expressing iteration. You can often use it to ensure that you deal with declarations correctly (without having to use PARSE-DECLARATIONS, which isn't part of the standard) 2018-07-02T19:28:04Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-02T19:28:13Z trittweiler: declarations, implicit tagbody and implicit anonymous block. The gritty-details of a good macro expansion. :) 2018-07-02T19:29:10Z cage_ quit (Quit: Leaving) 2018-07-02T19:29:55Z Kundry_Wag quit (Remote host closed the connection) 2018-07-02T19:30:19Z eschatologist joined #lisp 2018-07-02T19:31:49Z warweasle quit (Quit: rcirc on GNU Emacs 24.4.1) 2018-07-02T19:32:01Z Kundry_Wag joined #lisp 2018-07-02T19:32:06Z aeth: I usually use do for iteration macros (do has an implicit tagbody) 2018-07-02T19:32:20Z stacksmith: Is there a case where declarations are not handled correctly by let or some variant that establishes bindings? 2018-07-02T19:33:48Z trittweiler: stacksmith, Consider if you were to expand to `(let ((x ...)) (block nil (tagbody ... ,@body))) and body had a (declare (fixnum x)) 2018-07-02T19:35:17Z eschatologist quit (Ping timeout: 276 seconds) 2018-07-02T19:35:23Z stacksmith: I see what you mean. By combining let, block and tagbody any declarations wind up in the right place, as opposed to several forms deeper than expected. 2018-07-02T19:36:31Z trittweiler: Yep 2018-07-02T19:36:58Z brettgilio quit (Ping timeout: 264 seconds) 2018-07-02T19:37:45Z paule32 quit (Ping timeout: 260 seconds) 2018-07-02T19:39:02Z stacksmith: Enlightening as always. Thank you, amigos. 2018-07-02T19:40:49Z eschatologist joined #lisp 2018-07-02T19:41:23Z peccu4 quit (Ping timeout: 255 seconds) 2018-07-02T19:41:55Z dtornabene joined #lisp 2018-07-02T19:42:59Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-02T19:49:43Z paule32 joined #lisp 2018-07-02T19:49:57Z peccu4 joined #lisp 2018-07-02T19:50:37Z fikka joined #lisp 2018-07-02T19:52:52Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-02T19:52:59Z bexx quit (Ping timeout: 256 seconds) 2018-07-02T19:55:12Z eschatologist joined #lisp 2018-07-02T19:55:15Z fikka quit (Ping timeout: 256 seconds) 2018-07-02T19:59:55Z rpg quit (Ping timeout: 260 seconds) 2018-07-02T20:01:55Z pagnol joined #lisp 2018-07-02T20:02:21Z Kundry_Wag_ joined #lisp 2018-07-02T20:03:54Z megalography quit (Remote host closed the connection) 2018-07-02T20:08:00Z rpg joined #lisp 2018-07-02T20:11:18Z terpri joined #lisp 2018-07-02T20:14:33Z milanj joined #lisp 2018-07-02T20:15:05Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-02T20:15:13Z graphene quit (Remote host closed the connection) 2018-07-02T20:15:24Z jmercouris joined #lisp 2018-07-02T20:16:32Z graphene joined #lisp 2018-07-02T20:17:15Z test1600 joined #lisp 2018-07-02T20:19:37Z peccu4 quit (Ping timeout: 256 seconds) 2018-07-02T20:19:52Z shka_ quit (Ping timeout: 268 seconds) 2018-07-02T20:19:54Z eschatologist joined #lisp 2018-07-02T20:20:19Z peccu4 joined #lisp 2018-07-02T20:20:40Z lumm quit (Read error: Connection reset by peer) 2018-07-02T20:21:08Z lumm joined #lisp 2018-07-02T20:23:01Z igemnace joined #lisp 2018-07-02T20:24:47Z graphene quit (Remote host closed the connection) 2018-07-02T20:26:06Z graphene joined #lisp 2018-07-02T20:27:16Z hhdave joined #lisp 2018-07-02T20:27:33Z jmercouris: anyone written any scripts to bundle an executable created by SBCL on OSX? 2018-07-02T20:27:52Z sjl: jmercouris: shinmera's deploy library can create a .app 2018-07-02T20:29:19Z Kundry_Wag quit (Remote host closed the connection) 2018-07-02T20:29:28Z jmercouris: sjl: any other tools you know of? 2018-07-02T20:29:42Z sjl: nope, that's the only one I've used to create a .app 2018-07-02T20:30:07Z sjl: I seem to remember a really old blog post about it, but who knows if that still works N years later 2018-07-02T20:30:25Z jmercouris: maybe I'll just do some operations in a makefile 2018-07-02T20:30:30Z Kundry_Wag joined #lisp 2018-07-02T20:30:56Z sjl: http://elfga.com/articles/mac-app-bundle-generation-for-sbcl-executables/ is the one I was thinking of 2018-07-02T20:31:32Z shka_ joined #lisp 2018-07-02T20:32:44Z jmercouris: sjl: that looks good, thank ou 2018-07-02T20:32:47Z jmercouris: s/ou/you 2018-07-02T20:33:20Z rafadc quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-02T20:33:21Z kajo quit (Ping timeout: 265 seconds) 2018-07-02T20:35:41Z Kundry_Wag_ quit (Ping timeout: 256 seconds) 2018-07-02T20:37:15Z bexx_ joined #lisp 2018-07-02T20:40:12Z sz0 joined #lisp 2018-07-02T20:40:39Z jmercouris: interesting, seems you only need to create the App folder and it just works 2018-07-02T20:40:44Z jmercouris: no need to add plists or anything 2018-07-02T20:41:41Z brettgilio joined #lisp 2018-07-02T20:42:52Z fikka joined #lisp 2018-07-02T20:47:46Z Murii_ quit (Remote host closed the connection) 2018-07-02T20:55:06Z scymtym quit (Ping timeout: 265 seconds) 2018-07-02T20:55:42Z kajo joined #lisp 2018-07-02T20:56:50Z xrash joined #lisp 2018-07-02T20:57:26Z jmercouris: so, I'm having some interesting behavior here 2018-07-02T20:57:31Z jmercouris: I enter (asdf:make :system) 2018-07-02T20:57:38Z jmercouris: and it returns T, but doesn't close out of the REPL or anything 2018-07-02T20:57:50Z jmercouris: why could that be? maybe it is making the binaries but I don't know where they are? 2018-07-02T20:59:23Z Beep-Lord: Are you expecting it to close out? 2018-07-02T20:59:37Z skapata quit (Remote host closed the connection) 2018-07-02T21:00:10Z brettgilio quit (Ping timeout: 256 seconds) 2018-07-02T21:00:11Z jmercouris: well, yeah 2018-07-02T21:00:20Z jmercouris: (asdf:make :system) usually builds and then quits 2018-07-02T21:00:26Z jmercouris: but I see no binary despite T 2018-07-02T21:00:50Z jmercouris: maybe I should include an absolute path in my build-pathname in my asdf 2018-07-02T21:02:59Z jmercouris: something strange going on with lisp, I'm going to restart my machine 2018-07-02T21:03:10Z smaster quit (Ping timeout: 245 seconds) 2018-07-02T21:03:34Z jmercouris quit (Remote host closed the connection) 2018-07-02T21:03:57Z hhdave quit (Ping timeout: 240 seconds) 2018-07-02T21:04:54Z igemnace quit (Quit: WeeChat 2.1) 2018-07-02T21:09:13Z karlosz joined #lisp 2018-07-02T21:12:27Z shka_ quit (Ping timeout: 240 seconds) 2018-07-02T21:13:52Z Kundry_Wag quit (Remote host closed the connection) 2018-07-02T21:15:47Z Arcaelyx quit (Quit: Textual IRC Client: www.textualapp.com) 2018-07-02T21:16:50Z sauvin joined #lisp 2018-07-02T21:21:24Z Bike quit (Ping timeout: 260 seconds) 2018-07-02T21:22:04Z rumbler31 joined #lisp 2018-07-02T21:22:33Z Kundry_Wag joined #lisp 2018-07-02T21:23:30Z scymtym joined #lisp 2018-07-02T21:26:28Z rumbler31 quit (Ping timeout: 268 seconds) 2018-07-02T21:31:30Z sjl quit (Ping timeout: 245 seconds) 2018-07-02T21:32:21Z escapist quit (Ping timeout: 240 seconds) 2018-07-02T21:34:15Z lavaflow quit (Ping timeout: 265 seconds) 2018-07-02T21:35:16Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-02T21:35:42Z nickenchuggets joined #lisp 2018-07-02T21:35:42Z nickenchuggets quit (Changing host) 2018-07-02T21:35:42Z nickenchuggets joined #lisp 2018-07-02T21:36:04Z nowhere_man joined #lisp 2018-07-02T21:43:16Z lavaflow joined #lisp 2018-07-02T21:43:40Z test1600 quit (Read error: Connection reset by peer) 2018-07-02T21:46:33Z Jesin joined #lisp 2018-07-02T21:48:30Z test1600 joined #lisp 2018-07-02T21:48:47Z hhdave joined #lisp 2018-07-02T21:51:09Z rpg: jmercouris: did you get things working? 2018-07-02T21:51:39Z vhost- is now known as vhost-remote 2018-07-02T21:51:40Z test1600_ joined #lisp 2018-07-02T21:52:05Z vhost-remote is now known as vhost-_remote 2018-07-02T21:53:34Z random-nick quit (Read error: Connection reset by peer) 2018-07-02T21:53:44Z eschatologist quit (Ping timeout: 276 seconds) 2018-07-02T21:54:42Z makomo quit (Ping timeout: 256 seconds) 2018-07-02T21:54:59Z eschatologist joined #lisp 2018-07-02T21:55:34Z test1600 quit (Ping timeout: 264 seconds) 2018-07-02T21:59:24Z lumm quit (Read error: Connection reset by peer) 2018-07-02T21:59:24Z fyodost_ quit (Quit: Leaving) 2018-07-02T22:02:27Z vlatkoB_ quit (Remote host closed the connection) 2018-07-02T22:03:32Z test1600_ quit (Ping timeout: 245 seconds) 2018-07-02T22:05:30Z hhdave quit (Quit: hhdave) 2018-07-02T22:06:16Z aeth: Alright. Now I support both type declarations and check-type directly within define-function. https://gitlab.com/zombie-raptor/zombie-raptor/blob/master/util/util.lisp#L32-155 2018-07-02T22:07:03Z aeth: I think that the easiest way to handle things is to simply change the default value of check-type in the destructuring-bind that handles the options depending on the implementation. 2018-07-02T22:07:22Z aeth: A manual specification of :check-type will override the implementation-specific default. 2018-07-02T22:07:51Z pierpal quit (Ping timeout: 256 seconds) 2018-07-02T22:08:10Z aeth: I can make similar macros for let and wherever else declare might be used. 2018-07-02T22:08:18Z rafadc joined #lisp 2018-07-02T22:08:41Z whartung: can you show an example of what the define-function foo example expands in to? 2018-07-02T22:09:14Z aeth: (It only took 98 lines.) 2018-07-02T22:09:59Z pjb quit (Remote host closed the connection) 2018-07-02T22:10:10Z aeth: whartung: running macroexpand-1 I get: (defun foo (x y &optional (z 42)) (declare (single-float x) (double-float y) (fixnum z)) (+ x y z)) 2018-07-02T22:10:30Z whartung: ok, that’s what I thought you were doing. Very nice. 2018-07-02T22:10:40Z aeth: The check-type version is: (defun foo (x y &optional (z 42)) (declare) (check-type x single-float) (check-type y double-float) (check-type z fixnum) (+ x y z)) 2018-07-02T22:11:11Z pjb joined #lisp 2018-07-02T22:11:15Z aeth: Since they're both supported in the same macro, I could set the default value to check-type to T on implementations that ignore type declarations. 2018-07-02T22:11:21Z Bike joined #lisp 2018-07-02T22:12:05Z aeth: Getting rid of the empty (declare) in the check-type version probably isn't worth it. It'll just be ignored. 2018-07-02T22:13:47Z pjb quit (Remote host closed the connection) 2018-07-02T22:14:29Z aeth: Internal bindings that could have a declare are a bit trickier. There's let, let*, do, do*, dotimes, dolist, lambda, multiple-value-bind, destructuring-bind, and probably a few that I'm forgetting. And then there's some I add like destructuring-lambda and do-destructuring-bind. 2018-07-02T22:15:05Z aeth: Oh, I should have used a parmanent link because the highlighted lines will almost certainly change, perhaps even today. https://gitlab.com/zombie-raptor/zombie-raptor/blob/1e5c9b3c2b0a621f48646292fbaa4d5cd4e0cda6/util/util.lisp#L32-155 2018-07-02T22:16:28Z loli quit (Quit: WeeChat 2.1) 2018-07-02T22:16:29Z eschatologist quit (Ping timeout: 276 seconds) 2018-07-02T22:18:14Z Kundry_Wag: Consider a function `foo` that accepts a function `bar` as argument and applies it. If `bar` produces side effects, is `foo` considered pure? Does it depend on its input? 2018-07-02T22:19:03Z whartung: well, what’s the point of a “pure” function that’s creating side effects? What does the label or measure of “pureness” matter? 2018-07-02T22:19:58Z eschatologist joined #lisp 2018-07-02T22:20:06Z caltelt_ joined #lisp 2018-07-02T22:20:19Z rpg quit (Quit: Textual IRC Client: www.textualapp.com) 2018-07-02T22:21:04Z Bike: it would help a compiler to know "pure, but calls this argument" 2018-07-02T22:21:41Z Bike: i think this is how sbcl's database works 2018-07-02T22:22:06Z aeth: More concretely, is map pure if it takes in an impure lambda? It kind of is. It's known that it won't modify the sequence(s). And it kind of isn't, because there's an impact on the outside world. 2018-07-02T22:22:07Z whartung: so, having a “pure” function with a “volatile” argument, so it can work around it? 2018-07-02T22:22:08Z Kundry_Wag: whartung: I don't know, I was just discussing with my colleagues. I abstracted a function that used side effects to a `pure` one that applies a function given as argument (and does other pure stuff) 2018-07-02T22:22:23Z loli joined #lisp 2018-07-02T22:22:24Z LiamH quit (Quit: Leaving.) 2018-07-02T22:23:22Z whartung: because, yea, there are assumptions that can be made for “pure” functions. For idempotent functions. For (my pooh brain lost the word for data objects that can’t change…)… 2018-07-02T22:23:38Z whartung: I would say that “no”, such a funciton is not pure. 2018-07-02T22:24:14Z Bike: if you know that it's pure but calls an argument you can make those assumptions when they're valid (like you know what function is being called, and that it's pure) and not make them when they're not 2018-07-02T22:24:26Z whartung: because by definition, any function with side effects is not pure, no matter how they manifest. Now, if you can declare the “unpure” parts, then that helps. 2018-07-02T22:25:06Z Kundry_Wag quit (Remote host closed the connection) 2018-07-02T22:25:25Z aeth: whartung: But it can be better than something that makes no guarantees at all. MAPHASH is faster than looping over a hash table in LOOP because MAPHASH is less powerful than LOOP. I think this holds even if the lambda in MAPHASH has side effects. 2018-07-02T22:25:48Z Bike: what? why would maphash be faster 2018-07-02T22:26:34Z aeth: It's noticably faster. mfiano (iirc) pointed this out, we benchmarked it, and I moved my do-hash-table over from loop to maphash. 2018-07-02T22:26:53Z aeth: At least in SBCL. 2018-07-02T22:27:11Z Bike: but how is loop "more powerful" 2018-07-02T22:27:30Z whartung: Obviuosly LOOP isn’t smart enough to compile to a maphash form... 2018-07-02T22:27:31Z aeth: maphash *just* iterates over a hash table's keys and values. 2018-07-02T22:27:53Z aeth: whartung: Yes, I guess in theory a simple hash table iteration in LOOP could do so 2018-07-02T22:27:58Z Bike: what else does a loop do? 2018-07-02T22:28:19Z whartung: he’s talking the LOOP macro Bike 2018-07-02T22:28:23Z Bike: i know 2018-07-02T22:28:34Z Bike: i assume we're talking about a loop that just iterates over a hash table's keys and values 2018-07-02T22:28:42Z aeth: LOOP *could* do way more, so it's harder to optimize. 2018-07-02T22:28:51Z aeth: I guess even in the case where it doesn't 2018-07-02T22:28:56Z rafadc quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-02T22:29:04Z loli quit (Quit: WeeChat 2.1) 2018-07-02T22:29:08Z megalography joined #lisp 2018-07-02T22:30:29Z Bike: sbcl looping over a hash table uses with-hash-table-iterator, which in sbcl involves a closure, so calling it repeatedly might be slower. but i don't think that's a deep fact about loop. 2018-07-02T22:31:12Z whartung: right, it’s an implemetaiton detail of this loop, not a limitation of LOOP in the large. 2018-07-02T22:31:46Z kajo quit (Ping timeout: 265 seconds) 2018-07-02T22:32:00Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-02T22:32:23Z aeth: Bike: Is LOOP able to modify the hash-table while iterating over it? 2018-07-02T22:32:49Z Bike: not any more than maphash can, i don't think 2018-07-02T22:33:15Z Kundry_Wag joined #lisp 2018-07-02T22:34:29Z aeth: Iirc, that was the speculation last time this came up, but it could be wrong. 2018-07-02T22:35:05Z Bike: clhs 6.1.1.8 2018-07-02T22:35:05Z specbot: Restrictions on Side-Effects: http://www.lispworks.com/reference/HyperSpec/Body/06_aah.htm 2018-07-02T22:35:20Z Bike: so it's the same 2018-07-02T22:36:00Z aeth: It's not the same. "For hash table traversal operations, new elements may not be added or deleted except that the element corresponding to the current hash key may be changed or removed." 2018-07-02T22:36:12Z aeth: I don't think you can change or remove the current value in maphash 2018-07-02T22:36:25Z Bike: you can 2018-07-02T22:36:51Z Bike: it says so specifically in the description of the function 2018-07-02T22:37:04Z aeth: Ah, you're right. That's weird. 2018-07-02T22:38:17Z aeth: Well, I'm glad you're here to clear things up. You know the spec well. 2018-07-02T22:38:32Z Bike: i just know how to navigate it 2018-07-02T22:39:47Z megalography quit (Quit: Leaving.) 2018-07-02T22:40:57Z kajo joined #lisp 2018-07-02T22:43:10Z aeth: Bike: What do you think about my define-function macro? 2018-07-02T22:43:25Z megalography joined #lisp 2018-07-02T22:43:32Z aeth: It's one of several very large macros that I've written for this game engine 2018-07-02T22:43:40Z Bike: haven't been paying attention but i'm automatically skeptical of replacements for built in things 2018-07-02T22:44:54Z aeth: It puts the type with the variable name, which basically every reader of my code has wanted. 2018-07-02T22:47:00Z aeth: Type declarations aren't very readable. It also does inlining. declaim inline is a source of errors because you have to type the name twice. declaim inline also makes M-. harder to navigate because in SLIME it makes you choose between the declaim and the defun instead of taking you to the defun when you M-. on an inline function, unless it's automatically inlined by a macro like define-function 2018-07-02T22:48:35Z Ukari quit (Ping timeout: 255 seconds) 2018-07-02T22:49:40Z caltelt_ quit (Ping timeout: 260 seconds) 2018-07-02T22:49:58Z aeth: The syntax of (name :inline t) even simplifies macros that generate inline functions because now it's just (,name :inline t) and there's no need for an outer progn in that macro unless there's more than one function being generated. 2018-07-02T22:52:10Z aeth: In general, I *prefer* macros that replace built-in things. Simpler, shorter code with fewer errors and the reader should be able to understand it without much trouble. e.g. I have a with-accessors* macro that simply expands (foo bar (baz quux)) to ((foo foo) (bar bar) (baz quux)) 2018-07-02T22:53:24Z nopf joined #lisp 2018-07-02T22:53:29Z aeth: Anything that annoys me in dozens of places mercilessly gets replaced with a macro. That's the whole point of using Lisp. 2018-07-02T22:56:02Z Kundry_W_ joined #lisp 2018-07-02T23:00:17Z Kundry_W_ quit (Ping timeout: 248 seconds) 2018-07-02T23:02:08Z robotoad quit (Quit: robotoad) 2018-07-02T23:03:56Z fikka quit (Ping timeout: 276 seconds) 2018-07-02T23:04:48Z Ukari joined #lisp 2018-07-02T23:06:00Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-02T23:13:03Z graphene quit (Read error: Connection reset by peer) 2018-07-02T23:14:24Z graphene joined #lisp 2018-07-02T23:15:04Z caltelt_ joined #lisp 2018-07-02T23:19:21Z Kundry_Wag joined #lisp 2018-07-02T23:19:45Z rpg joined #lisp 2018-07-02T23:20:08Z kajo quit (Ping timeout: 256 seconds) 2018-07-02T23:20:19Z Jesin quit (Quit: Leaving) 2018-07-02T23:21:41Z aeth: Bike: What do you use macros for? That's my approach but I'm curious what you do 2018-07-02T23:22:19Z kajo joined #lisp 2018-07-02T23:24:21Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-02T23:24:23Z Bike: not replacing built in things. 2018-07-02T23:24:25Z Kaisyu7 quit (Quit: ERC (IRC client for Emacs 25.3.2)) 2018-07-02T23:24:36Z Bike: i have my issues with standard macros and stuff, but uniformity has its advantages nonetheless. 2018-07-02T23:26:10Z varjag quit (Ping timeout: 264 seconds) 2018-07-02T23:26:11Z Kaisyu joined #lisp 2018-07-02T23:26:51Z Jesin joined #lisp 2018-07-02T23:28:29Z Arcaelyx joined #lisp 2018-07-02T23:29:30Z escapist joined #lisp 2018-07-02T23:31:14Z fikka joined #lisp 2018-07-02T23:33:08Z aeth: I personally think it depends on the size of the application. If it's small, it should be as close to vanilla as possible. If it's large, the gain in conciseness could be a massive maintenance advantage and the macros aren't surprising if they're all over the code. 2018-07-02T23:34:07Z caltelt_: I just downloaded the latest version of sbcl and when trying to look at function definitions in slime, it looks like it's trying to use the dir structure when sbcl is built. 2018-07-02T23:34:23Z aeth: It has always been like that for me. 2018-07-02T23:34:24Z caltelt_: Anyone know how to setup slime to point to my local sbcl? 2018-07-02T23:35:21Z terpri quit (Ping timeout: 268 seconds) 2018-07-02T23:36:35Z fikka quit (Ping timeout: 268 seconds) 2018-07-02T23:36:40Z caltelt_: nevermind, I think this is what I'm looking for? https://stackoverflow.com/a/7703322/2743625 2018-07-02T23:37:11Z varjag joined #lisp 2018-07-02T23:41:27Z varjag quit (Ping timeout: 240 seconds) 2018-07-02T23:43:10Z jack_rabbit joined #lisp 2018-07-02T23:45:29Z slyrus_ quit (Quit: Leaving) 2018-07-02T23:45:47Z slyrus_ joined #lisp 2018-07-02T23:46:27Z pagnol quit (Ping timeout: 256 seconds) 2018-07-02T23:46:36Z pillton: caltelt_: It is in the SBCL manual as well: http://www.sbcl.org/manual/#The-SYS-Logical-Pathname-Host 2018-07-02T23:47:59Z milanj quit (Quit: This computer has gone to sleep) 2018-07-03T00:08:04Z mfiano: maphash cannot be faster than loop as they are only specifications for implemention. however sbcl does behave significantly faster with maphash than loop 2018-07-03T00:11:20Z caltelt_: pillton: thanks for the link, I'll have to see what other goodies are in there I might be missing out on 2018-07-03T00:12:32Z skapata joined #lisp 2018-07-03T00:14:35Z FreeBirdLjj joined #lisp 2018-07-03T00:18:06Z Xach: NO 2018-07-03T00:18:21Z Bike: no? 2018-07-03T00:18:22Z Xach: try sb-ext:set-sbcl-source-location 2018-07-03T00:18:50Z Xach: oh i see it in small print 2018-07-03T00:18:52Z Bike: pillton has already maintained your honor 2018-07-03T00:19:04Z FreeBirdLjj quit (Ping timeout: 256 seconds) 2018-07-03T00:20:12Z pillton: I find the SBCL manual hard to read now. I must be old. 2018-07-03T00:21:05Z Beep-Lord: I have a DEFINE-SETF-EXPANDER that takes two CFFI C variables. When I get the store variables for both of the places, the evaluate to the same GENSYM'd symbol. Is this intended behavior? 2018-07-03T00:21:26Z Beep-Lord: s/the evaluate/they evaluate/ 2018-07-03T00:21:39Z Bike: store variables are usually gensyms. i'm not sure i understand the question though. 2018-07-03T00:21:57Z Bike: You mean the store variables returned by (get-setf-expansion [some cffi place])? 2018-07-03T00:22:02Z Beep-Lord: I have two separate CFFI vars that have the same gensym'd symbol 2018-07-03T00:22:07Z sz0 quit (Quit: Connection closed for inactivity) 2018-07-03T00:22:26Z Beep-Lord: Yeah, by that function 2018-07-03T00:22:54Z pillton: Beep-Lord: Are you using cffi:mem-ref or cffi:mem-aref ? What do you mean by CFFI C variables? 2018-07-03T00:23:07Z Beep-Lord: CFFI:DEFCVAR 2018-07-03T00:23:17Z Bike: so you get back like (#:G19) and (#:G19), and they're actually eq symbols? 2018-07-03T00:23:28Z Beep-Lord: That's what the macroexpansion says 2018-07-03T00:24:19Z Bike: macroexpansion? 2018-07-03T00:24:30Z Beep-Lord: C-c RET in SLIME. 2018-07-03T00:24:38Z Bike: macroexpansion of what? 2018-07-03T00:24:50Z Beep-Lord: Of a (SETF FOO) 2018-07-03T00:25:48Z Bike: what is foo... maybe you should just paste some code. 2018-07-03T00:26:26Z Beep-Lord: Give me a second. 2018-07-03T00:26:28Z Kaisyu7 joined #lisp 2018-07-03T00:28:07Z Beep-Lord: https://gitlab.com/nathanielchanning/emulator/blob/lisp-test/test/registers.lisp 2018-07-03T00:28:51Z Bike: so you're saying (eq temp-store-1 temp-store-2) => T? 2018-07-03T00:28:56Z Beep-Lord: Yes 2018-07-03T00:29:23Z Beep-Lord: I could set them both separately, but this behavior seems weird to me. 2018-07-03T00:30:25Z Bike: it is strange. 2018-07-03T00:30:35Z Bike: incidentally, what is the point of your store? That seems messed up. 2018-07-03T00:30:57Z caltelt_ quit (Ping timeout: 240 seconds) 2018-07-03T00:31:05Z megalography quit (Ping timeout: 240 seconds) 2018-07-03T00:32:04Z Bike: defcvar apparently makes the variables symbol macros for a function call, including a setf function 2018-07-03T00:32:40Z Beep-Lord: Yeah, it does 2018-07-03T00:33:08Z Beep-Lord: But I have a mess for parsing the registers and I'm working around it until I think of a better way to refactor it. 2018-07-03T00:33:24Z Oladon quit (Read error: Connection reset by peer) 2018-07-03T00:34:18Z Kundry_Wag joined #lisp 2018-07-03T00:34:29Z Bike: on my sbcl, with basic setf function accessors i get two distinct symbols that happen to have the same name 2018-07-03T00:34:29Z Oladon joined #lisp 2018-07-03T00:34:32Z eschatologist joined #lisp 2018-07-03T00:34:50Z Beep-Lord: What version are you on? 2018-07-03T00:35:08Z Bike: 1.3.15. lil old. 2018-07-03T00:35:22Z Beep-Lord: I'm on 1.3.14 on Debian 2018-07-03T00:35:38Z Bike: are you sure that they're eq and not just named the same? 2018-07-03T00:35:57Z Beep-Lord: No, they set the same place though. 2018-07-03T00:36:12Z Bike: ...huh?? 2018-07-03T00:36:23Z Bike: they're just variables. they don't set anything 2018-07-03T00:36:35Z Tordek quit (Ping timeout: 255 seconds) 2018-07-03T00:36:57Z Beep-Lord: If I set the second variable, it sets the first too. 2018-07-03T00:36:58Z vert2 quit (Ping timeout: 264 seconds) 2018-07-03T00:37:35Z vert2 joined #lisp 2018-07-03T00:38:19Z Bike: i think you might be confused about how setf works. 2018-07-03T00:38:26Z caltelt joined #lisp 2018-07-03T00:38:45Z Bike: you don't set the variables. setf does. they're just the variables used by the storing form. 2018-07-03T00:38:50Z bend3r quit (Ping timeout: 255 seconds) 2018-07-03T00:39:00Z Bike: this is why i asked you about your 'store' symbol. i don't think this setf expansion is sensible. 2018-07-03T00:39:23Z Beep-Lord: What would be a better way? 2018-07-03T00:39:29Z Kundry_Wag quit (Ping timeout: 276 seconds) 2018-07-03T00:39:49Z Bike: let me see if i understand what you want to do. reg1 and reg2 are places holding 8 bit unsigned integers. (pair reg2 reg1) is the sixteen bit integer that is their concatenation. 2018-07-03T00:40:10Z Beep-Lord: Yes 2018-07-03T00:40:14Z Bike: (setf (pair reg1 reg2) one-value), where one-value is a sixteen bit integer, results in reg1 being set to the high byte of one-value and reg2 to the low byte of one-value. 2018-07-03T00:40:31Z fikka joined #lisp 2018-07-03T00:42:36Z vert2 quit (Remote host closed the connection) 2018-07-03T00:44:37Z Bike: setting two places based on one value.... lil weird. I think I would do, uh 2018-07-03T00:45:45Z megalography joined #lisp 2018-07-03T00:45:45Z fikka quit (Ping timeout: 260 seconds) 2018-07-03T00:46:12Z aeth: You don't need define-setf-expander for that. defsetf will work and is simpler 2018-07-03T00:46:32Z Beep-Lord: clhs defsetf 2018-07-03T00:46:33Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/m_defset.htm 2018-07-03T00:47:32Z aeth: At least, I manage to be able to use defsetf for all of my advanced setfs. Not sure if I'm missing a subtle thing that makes that impossible 2018-07-03T00:47:34Z Beep-Lord: It evaluates all of its arguments 2018-07-03T00:47:48Z Beep-Lord: So it would pass the value instead of the symbol. 2018-07-03T00:49:55Z aeth: what final API do you want? 2018-07-03T00:50:22Z Bike: i think, basically, i would have the store form just do setf on the two places 2018-07-03T00:50:34Z Bike: rather than dealing with their setf expansions at all 2018-07-03T00:50:38Z Bike: but i'm not super confident in that. 2018-07-03T00:51:16Z Beep-Lord: I'll just set them separately; it works that way. 2018-07-03T00:51:28Z Beep-Lord: I was just bringing it up since the behavior was weird. 2018-07-03T00:51:39Z Beep-Lord: Probably just because of my SBCL version. 2018-07-03T00:51:48Z Bike: if the symbols aren't actually eq there's no weirdness 2018-07-03T00:52:18Z Beep-Lord: When I expand it, they are both #:new1 2018-07-03T00:52:29Z Bike: you can have two symbols with the same name that are not eq. 2018-07-03T00:52:38Z Bike: have i not gotten this across 2018-07-03T00:53:01Z Beep-Lord: Evidently not 2018-07-03T00:53:11Z Beep-Lord: Why do they evaluate to the same value? 2018-07-03T00:53:14Z vert2 joined #lisp 2018-07-03T00:53:14Z Bike: they don't 2018-07-03T00:53:17Z Bike: they just print the same 2018-07-03T00:53:42Z Bike: (let ((s1 (make-symbol "X")) (s2 (make-symbol "X"))) (values s1 s2 (eq s1 s2))) => #:X, #:X, NIL 2018-07-03T00:53:44Z Beep-Lord: Well, both the upper and lower byte end up being the same value. 2018-07-03T00:54:21Z Beep-Lord: I just assumed they were eq because of that, I guess 2018-07-03T00:54:53Z Bike: your expansion ignores the value it's actually passed, so it has screwy behavior of some kind 2018-07-03T00:56:08Z edgar-rft quit (Quit: edgar-rft) 2018-07-03T00:56:21Z Tordek joined #lisp 2018-07-03T00:57:24Z bend3r joined #lisp 2018-07-03T01:00:12Z Beep-Lord quit (Ping timeout: 245 seconds) 2018-07-03T01:00:49Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-03T01:01:13Z nickenchuggets joined #lisp 2018-07-03T01:01:13Z nickenchuggets quit (Changing host) 2018-07-03T01:01:13Z nickenchuggets joined #lisp 2018-07-03T01:03:07Z Kundry_Wag_ joined #lisp 2018-07-03T01:03:39Z Beep-Lord joined #lisp 2018-07-03T01:07:33Z quazimodo quit (Ping timeout: 264 seconds) 2018-07-03T01:07:54Z dddddd quit (Remote host closed the connection) 2018-07-03T01:09:01Z quazimodo joined #lisp 2018-07-03T01:09:58Z megalography quit (Ping timeout: 264 seconds) 2018-07-03T01:12:15Z zachk quit (Quit: Leaving) 2018-07-03T01:13:04Z Kundry_Wag_ quit (Remote host closed the connection) 2018-07-03T01:13:20Z Kundry_Wag joined #lisp 2018-07-03T01:16:39Z pierpa joined #lisp 2018-07-03T01:18:49Z acolarh quit (Ping timeout: 256 seconds) 2018-07-03T01:19:47Z graphene quit (Remote host closed the connection) 2018-07-03T01:20:48Z markoong quit (Ping timeout: 268 seconds) 2018-07-03T01:21:03Z graphene joined #lisp 2018-07-03T01:22:17Z housel joined #lisp 2018-07-03T01:23:42Z megalography joined #lisp 2018-07-03T01:24:51Z Beep-Lord: Bike, I've got it sorted out now. Thanks. 2018-07-03T01:24:57Z Bike: great 2018-07-03T01:25:15Z Beep-Lord: I was ignoring the value I was passed just as you said. 2018-07-03T01:28:14Z CrazyEddy joined #lisp 2018-07-03T01:30:33Z acolarh joined #lisp 2018-07-03T01:30:47Z graphene quit (Remote host closed the connection) 2018-07-03T01:31:32Z shifty joined #lisp 2018-07-03T01:32:01Z graphene joined #lisp 2018-07-03T01:32:25Z terpri joined #lisp 2018-07-03T01:34:41Z robotoad joined #lisp 2018-07-03T01:34:59Z fikka joined #lisp 2018-07-03T01:36:43Z karlosz quit (Quit: karlosz) 2018-07-03T01:36:57Z karlosz joined #lisp 2018-07-03T01:40:00Z fikka quit (Ping timeout: 260 seconds) 2018-07-03T01:43:08Z mathZ joined #lisp 2018-07-03T01:50:59Z eschatologist quit (Ping timeout: 276 seconds) 2018-07-03T01:53:43Z brettgilio joined #lisp 2018-07-03T02:00:35Z buffergn0me joined #lisp 2018-07-03T02:01:59Z Kundry_Wag quit (Remote host closed the connection) 2018-07-03T02:02:16Z robotoad quit (Remote host closed the connection) 2018-07-03T02:02:30Z Pixel_Outlaw joined #lisp 2018-07-03T02:02:35Z Kundry_Wag joined #lisp 2018-07-03T02:04:53Z Jesin quit (Quit: Leaving) 2018-07-03T02:05:07Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-03T02:05:16Z graphene quit (Remote host closed the connection) 2018-07-03T02:06:35Z graphene joined #lisp 2018-07-03T02:07:20Z Kundry_Wag quit (Ping timeout: 265 seconds) 2018-07-03T02:08:22Z Jesin joined #lisp 2018-07-03T02:10:49Z Kundry_Wag joined #lisp 2018-07-03T02:13:11Z Kundry_Wag_ joined #lisp 2018-07-03T02:15:14Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-03T02:20:01Z Lord_Nightmare quit (Ping timeout: 256 seconds) 2018-07-03T02:24:27Z rpg joined #lisp 2018-07-03T02:29:10Z fikka joined #lisp 2018-07-03T02:31:14Z nicht joined #lisp 2018-07-03T02:31:15Z nicht quit (Max SendQ exceeded) 2018-07-03T02:32:03Z Kundry_Wag_ quit (Remote host closed the connection) 2018-07-03T02:32:39Z Kundry_Wag joined #lisp 2018-07-03T02:33:58Z fikka quit (Ping timeout: 264 seconds) 2018-07-03T02:36:52Z Kundry_Wag quit (Ping timeout: 245 seconds) 2018-07-03T02:41:25Z Lord_Nightmare joined #lisp 2018-07-03T02:45:04Z smaster joined #lisp 2018-07-03T02:45:20Z Beep-Lord left #lisp 2018-07-03T02:45:27Z graphene quit (Remote host closed the connection) 2018-07-03T02:46:44Z graphene joined #lisp 2018-07-03T02:48:07Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-03T02:49:57Z ealfonso joined #lisp 2018-07-03T02:51:50Z ealfonso: how do I make a lisp text file executable? When I use !#/usr/bin/sbcl --script, the quicklisp user file is not loaded and I get "package ASDF does not exist." 2018-07-03T02:52:56Z ealfonso: can I avoid hard-coding the location of the user init file? 2018-07-03T02:53:22Z Bike: the --script option turns off the init files 2018-07-03T02:55:11Z ealfonso: yeah. so I want exactly the script option, but without turning off the init files, and something that is a single argument so it can be used in the interpeter line 2018-07-03T02:55:41Z ealfonso: I guess this is not possible 2018-07-03T02:56:02Z AetherWind joined #lisp 2018-07-03T02:56:19Z ealfonso: I wanted to avoid either wrapping this script in a shell script, or hard-coding the location of the user init file 2018-07-03T02:57:11Z ealfonso: I guess I can manually load ~/.sbclrc and still use --script 2018-07-03T02:58:06Z Bike: the manpage explains what options --script implies 2018-07-03T02:58:17Z Bike: so you can just put those sans the ones abrogating initialization 2018-07-03T02:58:34Z ealfonso: yes, but can I use more than one argument in an interpreter line 2018-07-03T03:00:04Z ealfonso: another problem is that this exits when threads are still alive (e.g. http server handler threads) 2018-07-03T03:03:44Z brettgilio quit (Remote host closed the connection) 2018-07-03T03:04:33Z krid quit (Ping timeout: 248 seconds) 2018-07-03T03:07:14Z White_Flame: you should be able to (require 'asdf) from inside --script as well 2018-07-03T03:07:43Z White_Flame: plus, if you have quicklisp installed in your .sbclrc, that's only 1 or 2 lines to copy in if you want to init quicklisp, however it's a hardcoded path 2018-07-03T03:07:47Z Kundry_Wag joined #lisp 2018-07-03T03:07:55Z eschatologist joined #lisp 2018-07-03T03:08:53Z White_Flame: the commandline & parameters are in sb-ext:*posix-argv*, which is in the sbcl manual as well 2018-07-03T03:09:27Z White_Flame: so you should browse through the various sections on commandline args, creating executable images, and OS extensions 2018-07-03T03:09:35Z smaster quit (Ping timeout: 255 seconds) 2018-07-03T03:10:17Z White_Flame: there are also small portability libraries that help you access OS specifics like that; UIOP is one and is part of ASDF, so it should be readily available 2018-07-03T03:10:18Z ealfonso: White_Flame hardcoded path may work for me in one machine but may break. also (require 'ql) doesn't work. I've used buildapp, I was looking for a simple, somewhat "portable" way to create a script from a lisp source text 2018-07-03T03:10:18Z Kundry_W_ joined #lisp 2018-07-03T03:10:39Z White_Flame: REQUIRE from a raw --script only sees implementation built in stuff 2018-07-03T03:11:14Z White_Flame: QL isn't loaded that way. If you look at your sbclrc, you'll see how it's loaded, by specifically pulling in a .lisp file from your ql directory 2018-07-03T03:11:59Z ealfonso: White_Flame yes, but it seems very system-specific 2018-07-03T03:12:07Z White_Flame: well, you were asking about sbcl :) 2018-07-03T03:12:48Z White_Flame: there are toos like cl-launch for shell scripting lisp a bit easier, but I'm not sure what the latest & greatest of those is currently 2018-07-03T03:13:26Z ealfonso: yeah. I can take a python script and just run it. I don't need to worry about interpreter line, or about the paths of user init files, etc... I wish this was possible with sbcl 2018-07-03T03:13:27Z skapata quit (Read error: Connection reset by peer) 2018-07-03T03:13:41Z White_Flame: it's the same thing 2018-07-03T03:13:48Z White_Flame: if you want it "with SBCL" you can certainly do that 2018-07-03T03:14:09Z White_Flame: and Python has its own environment variables, executables on the path, and other things that it needs, too 2018-07-03T03:14:19Z White_Flame: especially once you get into pip and venv 2018-07-03T03:14:47Z White_Flame: and the whole python2 vs python3 separtion 2018-07-03T03:14:58Z White_Flame: python is a real pain to run varieties of scripts from 2018-07-03T03:15:30Z Kundry_W_ quit (Ping timeout: 268 seconds) 2018-07-03T03:16:00Z White_Flame: if you hardcode it to your own personal directory, then it's easy 2018-07-03T03:16:31Z ealfonso: yeah. I still wish I could take a run.lisp script and add a simple interpreter line and just run it, even if sbcl specific, and be able to send this run.lisp to a collage without relying on them having anything in their personal directories or init files 2018-07-03T03:16:47Z ealfonso: colleage 2018-07-03T03:16:54Z brendyn joined #lisp 2018-07-03T03:17:18Z White_Flame: again, it's just as painful as if you send them a .py file that wanted a bunch of dependencies 2018-07-03T03:17:22Z ealfonso: colleague 2018-07-03T03:18:42Z ealfonso: White_Flame with setuptools they can simply clone a repo, and issue "python setup.py --install" 2018-07-03T03:18:56Z White_Flame: ....right 2018-07-03T03:19:27Z pillton: How did we go from sending a single file to cloning repos? 2018-07-03T03:19:54Z White_Flame: at least with QL, a single launch can pull down everything needed wthout a separate step 2018-07-03T03:20:50Z ealfonso: White_Flame yes. I guess maybe I just wish QL was officially supported to remove the burden of loading ql 2018-07-03T03:20:58Z ealfonso: from the scripts 2018-07-03T03:21:13Z White_Flame: right, the --script option in sbcl is older than quicklisp 2018-07-03T03:21:23Z pillton: Just create an executable containing quicklisp. 2018-07-03T03:21:38Z smaster joined #lisp 2018-07-03T03:23:07Z pillton: ealfonso: sbcl --no-userinit --load ~/quicklisp/setup.lisp --eval '(sb-ext:save-lisp-and-die "sbcl-ql" :executable t)' 2018-07-03T03:23:54Z White_Flame: actually, looking at the ql init stuff from my .sbclrc, it's not a hardcoded path. It reads from (user-homedir-pathname), so it's safe to deploy unless they did weird customization to their QL install 2018-07-03T03:23:54Z rumbler31 joined #lisp 2018-07-03T03:24:19Z White_Flame: just copy those lines out into your script if you want QL 2018-07-03T03:24:20Z ealfonso: pillton I appreciate it, but my goal is not just to create an executable, but to simulate the ease with which python and bash can define executable scripts as text files 2018-07-03T03:24:47Z pillton: sbcl-ql is just SBCL with QL already loaded. You can invoke it the same way you invoke SBCL. 2018-07-03T03:24:48Z ealfonso: not just for me, but especially for others who may just want to execute a simple text file 2018-07-03T03:25:40Z White_Flame: (load (merge-pathnames "quicklisp/setup.lisp" (user-homedir-pathname))) to reduce it to its minimum 2018-07-03T03:27:00Z White_Flame: but still, python is NOT easy to define executable scripts 2018-07-03T03:27:14Z White_Flame: there's a ton of environmental baggage 2018-07-03T03:27:20Z Bike quit (Ping timeout: 260 seconds) 2018-07-03T03:27:28Z ealfonso: White_Flame yeah, I could do that. but it is really a hard-coded path, and doesn't feel right to make assumptions about where/how ql has been installed on a system 2018-07-03T03:28:05Z ealfonso: White_Flame and I agree about the python 2 vs 3, especially with some OS package managers, but for the most part, I can take a python file and execute it 2018-07-03T03:28:33Z White_Flame: I've written a bunch of python utilities that are called from Lisp and other launchers. Deployment is always a nightmare 2018-07-03T03:28:54Z rumbler31 quit (Ping timeout: 256 seconds) 2018-07-03T03:29:02Z White_Flame: ensuring all the envvars are intact, ensuring it's in the right venv container, ensuring libraries are already installed, etc 2018-07-03T03:29:18Z White_Flame: lisp is much more self-contained. of course, it has a heritage as an OS 2018-07-03T03:32:02Z ealfonso: yeah, I do like that. But maybe I look forward to ql or something similar being officially supported like asdf is. or at least to be able to write "#!/usr/bin/sbcl --script" and get the expected behavior, including the script not exiting when there are live daemon threads 2018-07-03T03:33:38Z White_Flame: hmm, does sbcl even make a distinction between daemon and non-daemon threads? 2018-07-03T03:33:58Z White_Flame: also, organized user shutdown barriers are a good thing in general with multithreaded programs 2018-07-03T03:35:54Z pierpa quit (Quit: Page closed) 2018-07-03T03:36:18Z ealfonso: I was basically trying to replace a bash-script wrapper of a single sbcl command to basically load an .asd file and start a hunchentoot service, with a lisp file. But even after loading ~/.sbclrc explicitly, it didn't work because the script exited right away 2018-07-03T03:37:26Z ealfonso: I'm assuming it is one of the implications of --script, I don't understand which one. In the end, I gave up and returned to the bash script wrapper 2018-07-03T03:37:26Z ealfonso: 2018-07-03T03:38:10Z White_Flame: "Causes the system to load the specified file instead of entering the read-eval-print-loop, and exit afterwards. " 2018-07-03T03:38:45Z White_Flame: how would you expect/wish to shut down your server, Ctrl-C? 2018-07-03T03:39:18Z rpg joined #lisp 2018-07-03T03:40:28Z ealfonso: I guess I don't really expect to shut it down and I expect the http service to run "forever", but I expect to be able to kill the process like any other or interrupt the foreground job on the terminal, etc 2018-07-03T03:40:47Z Kundry_Wag quit (Ping timeout: 268 seconds) 2018-07-03T03:41:22Z rpg quit (Client Quit) 2018-07-03T03:42:53Z shifty quit (Ping timeout: 255 seconds) 2018-07-03T03:44:23Z robotoad joined #lisp 2018-07-03T03:44:43Z White_Flame: a simple (loop do (sleep 1)) is breakable via Ctrl-C from a --script launch 2018-07-03T03:45:41Z White_Flame: but any actual server/daemon should ideally have a proper shutdown request mechanism 2018-07-03T03:46:30Z White_Flame: (though I'm pretty sure you can intercept SIGINT to trigger that, too) 2018-07-03T03:50:17Z ealfonso: yeah, I was thinking of that but I didn't try it, it does work, but it feels like another hack, just like manual ql loading via hard-coded path. I know my coworkers, who don't know anything about lisp, will be skeptical if I ask them to run a script containing (let ((quicklisp-init (merge-pathnames "quicklisp/setup.lisp" (user-homedir-pathname)))) (when (probe-file quicklisp-init) (load quicklisp-init))) 2018-07-03T03:51:40Z White_Flame: if they didn't know python, would they be comfortable running a bunch of pip install or python setup.py steps beforehand? 2018-07-03T03:51:43Z ealfonso: I guess I could support providing quicklisp/setup.lisp path via env var, but it feels like it's something that sbcl itself should handle eventually 2018-07-03T03:52:06Z White_Flame: especially if sudo is involved 2018-07-03T03:53:41Z White_Flame: also, if you have a long-running .py script, Ctrl-C also dumps out a stack trace, too 2018-07-03T03:54:45Z ealfonso: well, there are options for the end-user to configure pip, and the developers don't have the burden of figuring out where in the system are the init files 2018-07-03T03:55:23Z ealfonso: I don't mind the stack trace, but I don't need to introduce an infinite loop in a python script that runs a rest service 2018-07-03T03:55:28Z White_Flame: ql is in a well-known place 2018-07-03T03:55:38Z White_Flame: it's not somethign that floats around like pip and venv 2018-07-03T03:56:00Z White_Flame: as a general theme, python makes the easy easy 2018-07-03T03:56:06Z White_Flame: that's why it got so popular 2018-07-03T03:57:01Z White_Flame: but at some point, it just turns into whining that something isn't exactly python, and things "should" magically hbe 2018-07-03T03:57:02Z White_Flame: *be 2018-07-03T03:57:07Z ealfonso: maybe CL would be more popular if it was easy to write scripts and distribute them 2018-07-03T03:57:32Z White_Flame: CL hasn't historically focused on cmdline scripting 2018-07-03T03:57:38Z White_Flame: it's REPL-oriented 2018-07-03T03:58:05Z White_Flame: consequently, a Lisp user has a bajillion complaints about the utter weaknesses of python's repl and how you can't do half the things in it that you can from python files, so it sucks 2018-07-03T03:58:28Z White_Flame: why can't it do what lisp can? 2018-07-03T03:58:34Z SeinfeldS07E22 joined #lisp 2018-07-03T03:59:05Z White_Flame: also, where are the pointers? as a C programmer, this language sucks 2018-07-03T03:59:08Z White_Flame: etc 2018-07-03T03:59:40Z fikka joined #lisp 2018-07-03T04:01:03Z ealfonso: I don't see cmdline vs REPL as a conflict, an end-user could run an executable script, and possibly fall-back into REPL if trouble arises. I see no inherent reason why a simple script couldn't be written in CL like python/bash scripts are. 2018-07-03T04:01:24Z White_Flame: the "lisp way" is to start your lisp, then load in your script 2018-07-03T04:01:33Z White_Flame: that's what end-users do 2018-07-03T04:01:40Z White_Flame: and all the environment is there 2018-07-03T04:01:58Z White_Flame: python isn't REPL oriented. As you say, it's just a fallback and a bit of a testing playground 2018-07-03T04:02:37Z White_Flame: and yeah, there's SBCL --script, there's cl-launch, deploying executables, and all other manners of getting Lisp running on a deployment 2018-07-03T04:02:40Z ealfonso: just like a python program may be a small single-file script, or it may be a large package, either one is supported. yeah, but I don't see being REPL-oriented as an impediment to being script-friendly 2018-07-03T04:02:44Z White_Flame: it's just different to what you're used to 2018-07-03T04:03:27Z White_Flame: nothing in python should be an impediment to being REPL-friendly, but it's not REPL friendly nonetheless 2018-07-03T04:03:28Z ealfonso: it is different to what I'm used to and from what most people are used to, and it is not as convenient 2018-07-03T04:03:50Z White_Flame: the convenience is all there, and it's more convenient than python 2018-07-03T04:03:54Z White_Flame: by literal example here 2018-07-03T04:04:09Z White_Flame: you're just used to the inconveniences of python s simply being the cost of doing business there and don't see it 2018-07-03T04:04:34Z fikka quit (Ping timeout: 264 seconds) 2018-07-03T04:04:52Z Pixel_Outlaw quit (Quit: Leaving) 2018-07-03T04:05:02Z ealfonso: All I can say is that I wish I could write a single-file script in CL as easily as I do in bash or python 2018-07-03T04:05:14Z White_Flame: you can 2018-07-03T04:05:21Z White_Flame: and without all the massive environmental setup that python requires 2018-07-03T04:05:43Z White_Flame: literally the only idffernece is that you're used to the massive python machine that you're blind to its configuration complexity 2018-07-03T04:06:01Z White_Flame: so the differences to lisp happen to stick out to you more 2018-07-03T04:06:44Z ealfonso: as a user, all I see is ./script.py, and as a developer, all I see is chmod +x ./script.py and adding !#/usr/bin/env python as the first line 2018-07-03T04:07:05Z ealfonso: the same for bash 2018-07-03T04:07:13Z White_Flame: also, if your shared work environment with the people you're sending scripts to is already established, then you already have a sunk cost invested in settling on a very specific configuration that lets you "just launch a script" because all the prepwork is already done and assumed to exist in the environment 2018-07-03T04:07:45Z White_Flame: how does running a ./script.py pull in dependencies that are not installed in your system? 2018-07-03T04:07:55Z White_Flame: I mean, I'm not super familiar with python admin, so there might be a way 2018-07-03T04:08:03Z White_Flame: but I do know that QL will do that 2018-07-03T04:08:33Z White_Flame: it's a very basic scenario 2018-07-03T04:08:45Z White_Flame: especially when you're focusing on literally a single script file 2018-07-03T04:09:39Z ealfonso: I was comparing single-file script in python, where I can import some standard libraries like re, etc, whereas in CL I probably need to load QL to then load cl-pccre, etc 2018-07-03T04:09:58Z White_Flame: yes, python has a larger stdlib 2018-07-03T04:10:09Z White_Flame: but you often need to reach outside of it, even for single-file scripts 2018-07-03T04:10:13Z ealfonso: even with non-standard dependencies, I can still simply ask users to issue python setup.py --install 2018-07-03T04:10:18Z White_Flame: ah, exactly 2018-07-03T04:10:29Z White_Flame: externalized sunk cost infrastrctural complexity that you assume is already part of the environment 2018-07-03T04:10:55Z White_Flame: and if it's setup.py scripts, then it's not even integrated with the environment like pip 2018-07-03T04:11:09Z White_Flame: but anyway, yes, the user needs a bit of stuff installed 2018-07-03T04:11:30Z White_Flame: lisp seems to offer less complexity, but you have to literally add in one short line to load QL 2018-07-03T04:12:12Z White_Flame: QL is relatively new to the ecosystem, and didn't come from the implementations 2018-07-03T04:12:26Z White_Flame: Python is also a dictatorship model, not a distributed industry 2018-07-03T04:12:42Z White_Flame: but none of these really matter to the issue; you find offense in one particular nit to pick 2018-07-03T04:13:06Z White_Flame: so whatever, if your preferences preclude you from using lisp for such a small thing, I'm not going to sit and try to convince you 2018-07-03T04:13:10Z charh quit (Ping timeout: 245 seconds) 2018-07-03T04:13:21Z ealfonso: setuptools it is built-in and bundled with python, whereas I would need to ask users to install QL, and then I may need to make assumptions about where it was installed and just hope the assumption is right, all while adding extra code to every script 2018-07-03T04:13:34Z jinkies joined #lisp 2018-07-03T04:13:38Z White_Flame: and that's inflating the problem 2018-07-03T04:13:47Z White_Flame: if I don't have a current python, you'd expect me to upgrade a bunch of stuff 2018-07-03T04:14:01Z White_Flame: you're waging a religious war at this point. The specifics are negligible 2018-07-03T04:14:15Z White_Flame: and it's merely the specifics and pragmatics I wished to communicate 2018-07-03T04:15:42Z ealfonso: I've never had to upgrade python. I appreciate your points, but I still look forward to a future where there is less overhead and less guessing, it doesn't have to be dictatorial, but let's be honest, everyone uses QL 2018-07-03T04:15:46Z nsrahmad joined #lisp 2018-07-03T04:15:54Z nsrahmad quit (Read error: Connection reset by peer) 2018-07-03T04:16:05Z White_Flame: and everyone uses QL in the default location that QL installs to 2018-07-03T04:16:13Z White_Flame: it's a standard load/init process 2018-07-03T04:16:45Z White_Flame: the one place that differs is local-projects, but that's under user control anyway 2018-07-03T04:17:18Z pillton: Couldn't you just ship the setup.lisp that QL offers? 2018-07-03T04:17:39Z charh joined #lisp 2018-07-03T04:18:04Z pillton: Sorry. This one: https://beta.quicklisp.org/quicklisp.lisp 2018-07-03T04:18:42Z ealfonso: I really dislike having to make an assumption that something exists on a hard-coded path in an unknown system, and having my script fail it that assumption fails 2018-07-03T04:19:05Z ealfonso: pillton maybe, but that's adding more overhead to me as a developer 2018-07-03T04:19:07Z White_Flame: python breaks on the assumptiuon that dependencies are installed, too, unless the user runs some external configuration 2018-07-03T04:19:53Z pillton: What about /usr/bin/env? 2018-07-03T04:21:14Z White_Flame: I don't think either python or QL use that. I do see node stuff in mine, though 2018-07-03T04:21:39Z White_Flame: then again, our python usage is through venv, as it's a nightmare without 2018-07-03T04:21:57Z White_Flame: (and a hairball of complexity with) 2018-07-03T04:22:17Z pillton: I'm sure python stuff hardcode links to shared libraries like some libraries in QL do. 2018-07-03T04:22:42Z White_Flame: you start venv relative to some known directory, and it has .venv/ or something it drops its things into 2018-07-03T04:23:00Z White_Flame: however, I believe venv, pip, and python have "default" global system-wide isntallations as well. It's just dangerous to do that 2018-07-03T04:23:26Z White_Flame: It smells like ealfonso is in that sort of scenario, though, where there's a very fixed assumption of what "python" is and means on their installed machines 2018-07-03T04:23:31Z shka_ joined #lisp 2018-07-03T04:24:22Z ealfonso: most of this could be solved if sbcl had a flag similar to --script respected the user-init. at that point, it is the user's responsbility to have installed QL, which is supposed to add lines to user-init, and not the script's author 2018-07-03T04:24:35Z ealfonso: s/respected/that respected 2018-07-03T04:24:48Z ealfonso: s/it is the/it would be the/ 2018-07-03T04:24:59Z White_Flame: even if --script pulled in .sbclrc, if they hadn't installed QL, it would still fail (unless you bundle in quicklisp.lisp as pillton mentioned, which doesn't make it a "simple" script anymore) 2018-07-03T04:25:19Z SeinfeldS07E22 quit (Quit: Leaving) 2018-07-03T04:25:28Z White_Flame: certainly having a baseline environment is expected. But at least the expectation is only QL, not the individual packages it installs 2018-07-03T04:25:58Z White_Flame: ie, no external apt get, pip install, setup.py, npm install, etc is necessary before launch. QL will lazily do it 2018-07-03T04:26:13Z ealfonso: White_Flame yeah, but at that point it would be the user's fault if they haven't installed QL 2018-07-03T04:26:14Z orivej quit (Ping timeout: 276 seconds) 2018-07-03T04:26:21Z White_Flame: just like everything else 2018-07-03T04:26:37Z White_Flame: I really dont' understand the argument anymore 2018-07-03T04:27:00Z White_Flame: as I said before, I'm interested in communicating the specifics & pragmatics so you know how to launch things and how it compares technically to launches in other langauges 2018-07-03T04:27:01Z ealfonso: loading ~/quicklisp/setup.lisp manually on every script is basically to duplicate part of the quicklisp installation process. 2018-07-03T04:27:22Z White_Flame: no, that's the QL startup, not the installation 2018-07-03T04:27:35Z White_Flame: it's equivalent to (require 'asdf) or import foo 2018-07-03T04:28:54Z ealfonso: White_Flame that's fair. but as the final step of installation, QL knows where it has been installed better than any script that doesn't know anything about the system 2018-07-03T04:29:13Z ealfonso: and offers an option to automatically add some lines to user-init 2018-07-03T04:29:53Z ealfonso: my whole point is that finding and loading QL should be a burden of the user, not of the scripts 2018-07-03T04:30:37Z pillton: Can't you just require your users to use an executable with QL bundled in? 2018-07-03T04:30:41Z pierpal joined #lisp 2018-07-03T04:32:42Z ealfonso: pillton so now on my README it is not just, "obtain sbcl: http://www.sbcl.org/", but something probably more complicated and less standard 2018-07-03T04:33:18Z White_Flame: "obtain sbcl & quicklisp: http://www.sbcl.org/ http://quicklisp.org/" 2018-07-03T04:34:35Z ealfonso: relevant: https://stackoverflow.com/questions/25858237/ 2018-07-03T04:35:20Z White_Flame: of course, that's what you originally asked about and were answered 2018-07-03T04:35:49Z beach: Good morning everyone! 2018-07-03T04:36:22Z White_Flame: and again, the 2nd answer points to cl-launch as a solution for simplifying shell scripting if you're not working with REPL users 2018-07-03T04:36:30Z ealfonso: White_Flame basically loading ql via ~/quicklisp/setup.lisp is not acceptable to me, even if I had to ask users to install quickload. (require 'ql) would be 2018-07-03T04:36:45Z White_Flame: again, that's a religious war. If it's too offensive to you, I won't try to convince you 2018-07-03T04:36:53Z White_Flame: use cl-launch 2018-07-03T04:37:05Z pillton: ealfonso: You could alsoe use a logical pathname. 2018-07-03T04:37:09Z White_Flame: QL is much newer than Lisp, which has huge industrial legacy 2018-07-03T04:38:31Z White_Flame: hence, modifications into the standardized ecosystem are rare 2018-07-03T04:38:58Z White_Flame: I often equate it to C before C99 and other extensions finally came about 2018-07-03T04:39:23Z White_Flame: the language was fixed and the ecosystem built around it 2018-07-03T04:40:24Z White_Flame: and heck, C isn't meant to be scriptable as ./foo.c either, and that was never considered a problem even though it *originated* in Unix! 2018-07-03T04:41:09Z White_Flame: so again, religious wars on "it's not python" aren't useful. There are tools to do what you want that are simply different to what you're used to 2018-07-03T04:41:28Z fikka joined #lisp 2018-07-03T04:42:25Z ealfonso: yeah, C isn't scriptable like bash/python, and there's a lot of complexity to build on a given system. But SBCL could easily be made easily scriptable 2018-07-03T04:42:33Z White_Flame: sure, and it is 2018-07-03T04:42:41Z White_Flame: if you want external, non-standard libraries, you have to pull them in yourself 2018-07-03T04:42:48Z White_Flame: and/or expect them to be preinstalled by the user 2018-07-03T04:42:51Z Inline quit (Quit: Leaving) 2018-07-03T04:42:54Z White_Flame: same as every single other language, 2018-07-03T04:42:57Z White_Flame: . 2018-07-03T04:43:31Z White_Flame: also, there's nothing preventing C from being a scriptable language, either 2018-07-03T04:43:36Z White_Flame: and there are C interpreters 2018-07-03T04:46:05Z fikka quit (Ping timeout: 260 seconds) 2018-07-03T04:46:37Z ealfonso: I'm going to finish this work and leave my co-workers a POC written in lisp in my last week and then go home... White_Flame pillton thanks for the discussion 2018-07-03T04:47:30Z jinkies quit (Remote host closed the connection) 2018-07-03T04:47:42Z fikka joined #lisp 2018-07-03T04:50:09Z maarhart joined #lisp 2018-07-03T04:51:47Z White_Flame: ealfonso: btw, REQUIRE is officially deprecated, so (require 'ql) would not be newly supported at any point 2018-07-03T04:52:26Z maarhart quit (Client Quit) 2018-07-03T04:52:56Z fikka quit (Ping timeout: 268 seconds) 2018-07-03T04:55:23Z SaganMan joined #lisp 2018-07-03T04:57:42Z jinkies joined #lisp 2018-07-03T05:00:18Z Kundry_Wag joined #lisp 2018-07-03T05:04:47Z Kundry_Wag quit (Ping timeout: 245 seconds) 2018-07-03T05:06:57Z smaster quit (Ping timeout: 264 seconds) 2018-07-03T05:14:04Z xrash quit (Read error: Connection reset by peer) 2018-07-03T05:14:44Z jackdaniel: will be removed in a next version of the standard (snh snh) 2018-07-03T05:16:06Z Guest34814 quit (Read error: Connection reset by peer) 2018-07-03T05:16:06Z itruslove quit (Remote host closed the connection) 2018-07-03T05:17:35Z Kundry_Wag joined #lisp 2018-07-03T05:18:54Z loke actually has a rather difficult problem of trying to figure out how to distribute Climaxima to regular Maxima users. 2018-07-03T05:18:59Z eschatologist quit (Ping timeout: 276 seconds) 2018-07-03T05:21:04Z jackdaniel: can't you distribute lisp image with all systems loaded and the entry function being run-frame-top-level ? 2018-07-03T05:21:17Z jackdaniel: or having this call after some sanity checks 2018-07-03T05:23:16Z loke: jackdaniel: Possibly. I'm not sure what problems can be had when underlying libraries change, and things like that. 2018-07-03T05:23:31Z loke: Perhaps bundle a massive binary package that contains everything. 2018-07-03T05:27:00Z eschatologist joined #lisp 2018-07-03T05:28:55Z ealfonso: got "don't know how to load ASDF" on sbcl on macos. also tried to install quicklisp behind commpany proxy and failed 2018-07-03T05:30:11Z ealfonso: had to install quicklisp but remove (require 'asd) 2018-07-03T05:31:10Z giraffe joined #lisp 2018-07-03T05:31:25Z giraffe is now known as Guest56583 2018-07-03T05:34:40Z itruslove joined #lisp 2018-07-03T05:34:52Z hph^ joined #lisp 2018-07-03T05:37:17Z fikka joined #lisp 2018-07-03T05:38:45Z _death: why would you want to use quicklisp in that scenario.. it just creates more potential for failure.. better to have all dependencies available locally 2018-07-03T05:39:15Z mindCrime joined #lisp 2018-07-03T05:41:56Z fikka quit (Ping timeout: 265 seconds) 2018-07-03T05:51:08Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-03T05:55:11Z ealfonso: _death not sure what that means. obviously I can't bundle every dependency in my repo 2018-07-03T05:58:42Z _death: actually, you can.. but if you're talking about a "repo" (for development purposes) then you can just provide it as other quicklisp projects? 2018-07-03T05:59:10Z caltelt quit (Ping timeout: 264 seconds) 2018-07-03T06:02:34Z vlatkoB joined #lisp 2018-07-03T06:03:06Z jackdaniel: loke: if you have a system image, libraries are already loaded in it 2018-07-03T06:03:19Z jackdaniel: there is no risk of mismatch after you confirm it works 2018-07-03T06:03:26Z jackdaniel: think of it as of static linking 2018-07-03T06:03:41Z jackdaniel: (ECL allows dynamic linking with compiled libraries, but this is irrevelant here) 2018-07-03T06:07:49Z buffergn0me quit (Ping timeout: 256 seconds) 2018-07-03T06:09:31Z habamax joined #lisp 2018-07-03T06:11:17Z fikka joined #lisp 2018-07-03T06:13:21Z montxero joined #lisp 2018-07-03T06:15:12Z gector quit (Read error: Connection reset by peer) 2018-07-03T06:15:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-03T06:15:53Z gector joined #lisp 2018-07-03T06:17:35Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-03T06:20:16Z flamebeard joined #lisp 2018-07-03T06:24:25Z MichaelRaskin quit (Quit: MichaelRaskin) 2018-07-03T06:25:29Z shifty joined #lisp 2018-07-03T06:26:49Z zaquest quit (Remote host closed the connection) 2018-07-03T06:30:24Z fikka joined #lisp 2018-07-03T06:31:19Z habamax quit (Remote host closed the connection) 2018-07-03T06:32:11Z lnostdal quit (Ping timeout: 256 seconds) 2018-07-03T06:32:36Z shrdlu68 joined #lisp 2018-07-03T06:33:35Z bigfondue quit (Ping timeout: 245 seconds) 2018-07-03T06:34:53Z Kundry_Wag joined #lisp 2018-07-03T06:36:22Z ealfonso quit (Ping timeout: 264 seconds) 2018-07-03T06:39:27Z Kundry_Wag quit (Ping timeout: 265 seconds) 2018-07-03T06:41:10Z brettgilio joined #lisp 2018-07-03T06:47:31Z makomo joined #lisp 2018-07-03T06:50:08Z aeth: Does anyone define uint8 as (unsigned-byte 8), int32 as (signed-byte 32), etc.? For a shorter name and to match CFFI. I wonder how unusual it would seem to a reader. This would be in files that have to deal with the CFFI so an exact name match int32 with :int32 probably won't be confusing. 2018-07-03T06:50:43Z pillton: Some people use octet for (unsigned-byte 8). 2018-07-03T06:51:10Z ebzzry joined #lisp 2018-07-03T06:51:50Z ebzzry: with the risk of sounding like a broken record, what is currently the community-recommended way with interfacing to java? 2018-07-03T06:52:19Z pillton: Sockets? 2018-07-03T06:52:33Z pillton: Or using ABCL. 2018-07-03T06:52:57Z mathZ quit (Remote host closed the connection) 2018-07-03T06:53:07Z Folkol_ joined #lisp 2018-07-03T06:53:08Z ebzzry: using sbcl 2018-07-03T06:53:27Z pillton: Sockets then. 2018-07-03T06:53:30Z bigfondue joined #lisp 2018-07-03T06:53:41Z pillton: Or files. 2018-07-03T06:53:45Z ebzzry: pillton: sockets as in usocket? 2018-07-03T06:54:23Z ebzzry: i'm looking for something like the one in lispworks http://www.lispworks.com/documentation/lw71/LW/html/lw-113.htm#pgfId-885977 2018-07-03T06:54:28Z aeth: pillton: What I'll probably do is have a util/types and provide a bunch of shortcuts all in one place. You're right that I should probably use "octet" in some contexts instead of "int8", but both are probably valid, just in different contexts. 2018-07-03T06:54:30Z pillton: ebzzry: Yeah one of usocket, iolib, cl-async, (or basic-binary-ipc). 2018-07-03T06:55:10Z shrdlu68 quit (Ping timeout: 256 seconds) 2018-07-03T06:55:17Z aeth: (If I'm making a byte vector, octet probably makes more sense. If I'm making a struct to store data directly copied from CFFI, int8 would probably make sense if that's the foreign type.) 2018-07-03T06:55:25Z LdBeth: ebzzry (IRC): CL+J 2018-07-03T06:55:33Z ebzzry: pillton: ok. is there something open source like that. 2018-07-03T06:55:39Z ebzzry: LdBeth: hm. i'll look into that. 2018-07-03T06:55:44Z pillton: aeth: I personally prefer using the convention outlined at https://en.cppreference.com/w/c/types/integer . 2018-07-03T06:56:23Z ebzzry: LdBeth: is it available on quicklisp? 2018-07-03T06:56:30Z ebzzry: LdBeth: i couldn't find the name. 2018-07-03T06:56:36Z shrdlu68 joined #lisp 2018-07-03T06:56:52Z aeth: s/int8/uint8/ 2018-07-03T06:57:16Z pillton: aeth: You can drop the suffix _t if you like. 2018-07-03T06:57:24Z aeth: pillton: I think I'm going to at least have int8/int16/int32/int64 and unit8/uint16/unit32/unit64 to match https://github.com/cffi/cffi/blob/8a2bd25505de055967cbf13dfec279cf232dc0ae/src/types.lisp#L1043-L1051 2018-07-03T06:57:42Z aeth: CFFI doesn't use the _t (or -t) so I wouldn't, either 2018-07-03T06:57:49Z pillton: ebzzry: I suspect the runtime of Lispworks can run alongside the runtime of Java i.e. in the same process. 2018-07-03T06:58:05Z pillton: ebzzry: I don't think SBCL can do that. 2018-07-03T06:58:24Z aeth: pillton: I guess I'll also have octet. Are any others common? 2018-07-03T06:58:43Z ebzzry: pillton: yes. i think so, too. however, i'm looking for a solution that i can use with sbcl, at least. 2018-07-03T06:58:58Z LdBeth: ebzzry (IRC): just put into quicklisp’s local project path and quickload it 2018-07-03T07:00:30Z ebzzry: LdBeth: ok. what name should i use? 2018-07-03T07:00:43Z milanj joined #lisp 2018-07-03T07:02:25Z pillton: ebzzry: Good luck. It would be great if you came in here periodically (and other forums) and jumped up and down about how communities make run-times that don't compose. 2018-07-03T07:02:31Z ebzzry: LdBeth: did you mean to say that it is currently not distributed with quicklisp, and that the tarball should be downloaded manually?L 2018-07-03T07:02:52Z ebzzry: pillton: i may need to that. 2018-07-03T07:03:09Z LdBeth: ebzzry: yes 2018-07-03T07:05:10Z ebzzry: is lispforum.com a good forum to frequent? 2018-07-03T07:08:39Z varjag joined #lisp 2018-07-03T07:11:00Z loke: jackdaniel: are you sure that's the case in SBCL? I was pretty sure it reloads the native libraries when an image is restored 2018-07-03T07:11:07Z loke: I guess I need to test 2018-07-03T07:11:12Z pillton: aeth: I don't know of any others. 2018-07-03T07:11:22Z pillton: loke: Yes it does. It is such a pain. 2018-07-03T07:11:23Z loke: Or perhaps I should distribute with ECL, where these things are easier to control. 2018-07-03T07:12:42Z fikka quit (Ping timeout: 245 seconds) 2018-07-03T07:13:32Z shrdlu68 quit (Ping timeout: 268 seconds) 2018-07-03T07:13:58Z shrdlu68 joined #lisp 2018-07-03T07:14:25Z robotoad quit (Quit: robotoad) 2018-07-03T07:15:18Z fikka joined #lisp 2018-07-03T07:20:09Z fikka quit (Client Quit) 2018-07-03T07:20:25Z fikka joined #lisp 2018-07-03T07:20:47Z SaganMan: Morning Peeps 2018-07-03T07:20:52Z pillton: loke: Use (sb-alien:load-shared-object my-shared-object-path :dont-save nil) or (setf sb-align:*shared-objects* nil). 2018-07-03T07:20:56Z Kundry_Wag joined #lisp 2018-07-03T07:21:01Z pillton: loke: sb-alien sorry. 2018-07-03T07:21:56Z pillton is off home. 2018-07-03T07:22:01Z loke: pillton: thanmks! 2018-07-03T07:25:15Z Kundry_Wag quit (Ping timeout: 245 seconds) 2018-07-03T07:30:04Z pillton: loke: BTW I got the argument to :dont-save wrong. 2018-07-03T07:30:15Z White_Flame: everything will eventually converge into something docker-like (which would hopefully actually work) 2018-07-03T07:33:11Z mooshmoosh joined #lisp 2018-07-03T07:36:41Z jinkies quit (Ping timeout: 276 seconds) 2018-07-03T07:37:34Z shka_ quit (Ping timeout: 264 seconds) 2018-07-03T07:37:43Z loke: pillton: How so? 2018-07-03T07:38:03Z jackdaniel: loke: I thought you talk about lisp libraries 2018-07-03T07:38:24Z jackdaniel: in case of sbcl you need to unload them when you dump the image and load the back again when you start it 2018-07-03T07:38:29Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-03T07:38:35Z jackdaniel: that way you'll avoid problems due to mismatches on different systems 2018-07-03T07:38:58Z loke: jackdaniel: No. I was talking about dynamic native libraries. 2018-07-03T07:44:40Z brettgilio quit (Remote host closed the connection) 2018-07-03T07:48:09Z Kundry_Wag joined #lisp 2018-07-03T07:48:35Z edgar-rft joined #lisp 2018-07-03T07:53:37Z quazimodo quit (Ping timeout: 268 seconds) 2018-07-03T07:55:08Z quazimodo joined #lisp 2018-07-03T07:55:15Z heisig joined #lisp 2018-07-03T07:59:02Z _cosmonaut_ joined #lisp 2018-07-03T08:05:46Z doesthiswork quit (Quit: Leaving.) 2018-07-03T08:06:33Z lnostdal joined #lisp 2018-07-03T08:07:54Z hhdave joined #lisp 2018-07-03T08:09:33Z MoziM joined #lisp 2018-07-03T08:13:04Z pagnol joined #lisp 2018-07-03T08:13:05Z hhdave quit (Ping timeout: 276 seconds) 2018-07-03T08:13:16Z merodix joined #lisp 2018-07-03T08:13:34Z swflint quit (Ping timeout: 264 seconds) 2018-07-03T08:14:10Z shenghi quit (Ping timeout: 264 seconds) 2018-07-03T08:14:46Z ym quit (Ping timeout: 264 seconds) 2018-07-03T08:15:10Z ym joined #lisp 2018-07-03T08:15:18Z swflint joined #lisp 2018-07-03T08:15:48Z shenghi joined #lisp 2018-07-03T08:15:55Z schweers joined #lisp 2018-07-03T08:17:01Z dddddd joined #lisp 2018-07-03T08:17:02Z ebzzry: Is there a foundation or something equivalent that supports Quicklisp? 2018-07-03T08:17:34Z beach: The Common Lisp foundation supported it once, but it is not regular. 2018-07-03T08:17:47Z beach: So you need to make a donation to Xach. 2018-07-03T08:19:47Z littlelisper joined #lisp 2018-07-03T08:20:04Z ebzzry: beach: OK. Has there been an informal discussion about what to do, in the event that Xach will no longer be able to maintain it, for example he dies. 2018-07-03T08:20:14Z mflem quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2018-07-03T08:20:23Z beach: No, but I would welcome such a discussion. 2018-07-03T08:20:44Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-03T08:21:55Z ebzzry: beach: it may be wrong to assume, that at least one person knows the internals of quicklisp very well, other than xach himself. 2018-07-03T08:22:19Z svillemot quit (Ping timeout: 256 seconds) 2018-07-03T08:22:26Z beach: Indeed, maybe nobody does. 2018-07-03T08:22:43Z ebzzry: unless forced 2018-07-03T08:23:06Z ebzzry: is quicklisp 100% open? 2018-07-03T08:23:21Z beach: I would hope so. 2018-07-03T08:23:32Z ebzzry: hm. ok. 2018-07-03T08:23:44Z beach: Ask Xach. 2018-07-03T08:24:41Z ebzzry: beach: yup. i will. 2018-07-03T08:24:52Z ebzzry: xach: ping me when you get back. 2018-07-03T08:26:41Z beach: The situation might not be as bad as you might fear. I think I have understood in the past that there are a few people running independent Quicklisp servers. But I don't remember the details. 2018-07-03T08:28:12Z svillemot joined #lisp 2018-07-03T08:28:37Z shka: Shinmera has it's own server for his own stuff 2018-07-03T08:28:56Z rafadc joined #lisp 2018-07-03T08:31:29Z montxero quit (Ping timeout: 248 seconds) 2018-07-03T08:34:48Z kajo quit (Remote host closed the connection) 2018-07-03T08:35:40Z kajo joined #lisp 2018-07-03T08:36:27Z jackdaniel: quicklisp and quicklisp-controller are both open source, codebase is quite readble as well 2018-07-03T08:36:58Z wigust- joined #lisp 2018-07-03T08:37:09Z jackdaniel: but software is very little, main adventage of QL is cuartion and trust build by Xach 2018-07-03T08:37:21Z _death: you can always go back to asdf-install ;) ;) ;) 2018-07-03T08:37:28Z jackdaniel: ASDF-install could be considered QL without human 2018-07-03T08:37:31Z jackdaniel: exactly 2018-07-03T08:40:16Z nowhere_man joined #lisp 2018-07-03T08:40:35Z wigust quit (Ping timeout: 260 seconds) 2018-07-03T08:41:09Z kajo quit (Remote host closed the connection) 2018-07-03T08:41:35Z lnostdal quit (Ping timeout: 240 seconds) 2018-07-03T08:42:01Z kajo joined #lisp 2018-07-03T08:45:13Z karswell quit (Read error: Connection reset by peer) 2018-07-03T08:45:29Z karswell_ joined #lisp 2018-07-03T08:49:11Z rafadc quit (Read error: Connection reset by peer) 2018-07-03T08:51:30Z kajo quit (Remote host closed the connection) 2018-07-03T08:52:25Z kajo joined #lisp 2018-07-03T08:52:50Z schweers: I just noticed that one can use MAKE-INSTANCE on a DEFSTRUCT name. I assume this is because SBCL implements structs as classes? Is it portable to rely on this? My guess is, that it is not, but I’d like to know if I’m wrong. 2018-07-03T08:53:05Z nowhere_man quit (Remote host closed the connection) 2018-07-03T08:53:11Z beach: I don't think that is portable. 2018-07-03T08:53:33Z nowhere_man joined #lisp 2018-07-03T08:54:11Z random-nick joined #lisp 2018-07-03T08:55:20Z beach: clhs make-instance 2018-07-03T08:55:20Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_mk_ins.htm 2018-07-03T08:56:19Z beach: schweers: As you can see, there are two methods, one specialized to STANDARD-CLASS and one to SYMBOL. 2018-07-03T08:57:47Z schweers: sorry, I don’t follow. what exactly does that tell me? That I can pass a symbol (for instance a quoted literal) or a class-object? 2018-07-03T08:58:15Z schweers: oh, it even says so in clhs. 2018-07-03T08:58:25Z schweers: the second form invokes FIND-CLASS 2018-07-03T08:58:31Z Kundry_Wag joined #lisp 2018-07-03T08:58:48Z schweers: so this boils down to: are structs (necessarily) classes? 2018-07-03T08:58:56Z hph^ quit 2018-07-03T08:58:59Z schweers: I thought they were not, at least not in general 2018-07-03T08:59:42Z beach: No, that is not what it boils down to. Even if FIND-CLASS return a class, it would not be a STANDARD-CLASS for the name of a structure. 2018-07-03T08:59:55Z schweers: ahhh 2018-07-03T08:59:59Z schweers: now I understand! 2018-07-03T09:00:00Z schweers: thanks! 2018-07-03T09:00:04Z beach: Sure. 2018-07-03T09:01:11Z beach: schweers: Every object in Common Lisp is the instance of some class. 2018-07-03T09:01:23Z schweers: but not necessarily standard-class? 2018-07-03T09:01:28Z beach: Correct. 2018-07-03T09:01:55Z schweers: wait a minute ... isn’t STANDARD-CLASS MOP terminology? I thought MOP was not part of the standard? how come it is mentioned in the hyperspec? 2018-07-03T09:02:07Z beach: clhs standard-class 2018-07-03T09:02:07Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/t_std_cl.htm 2018-07-03T09:02:17Z beach: It is part of the standard. 2018-07-03T09:02:56Z beach: Anyway, try (defstruct foo) (class-of (make-foo)) and you will see that even struct instances are instances of some class. 2018-07-03T09:03:20Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-03T09:05:46Z schweers: so a STRUCTURE-CLASS is not a STANDARD-CLASS, so using MAKE-INSTANCE on a struct is probably not-portable 2018-07-03T09:05:56Z beach: Right. 2018-07-03T09:06:05Z attila_lendvai joined #lisp 2018-07-03T09:06:05Z attila_lendvai quit (Changing host) 2018-07-03T09:06:05Z attila_lendvai joined #lisp 2018-07-03T09:06:24Z schweers: thanks for helping me understand this. 2018-07-03T09:06:34Z lima4_ joined #lisp 2018-07-03T09:06:35Z _cosmonaut_ quit (Ping timeout: 240 seconds) 2018-07-03T09:08:15Z lima4_ quit (Client Quit) 2018-07-03T09:08:26Z beach: Anytime. 2018-07-03T09:08:27Z attila_lendvai quit (Read error: Connection reset by peer) 2018-07-03T09:09:50Z attila_lendvai joined #lisp 2018-07-03T09:09:50Z attila_lendvai quit (Changing host) 2018-07-03T09:09:50Z attila_lendvai joined #lisp 2018-07-03T09:13:34Z flamebeard_ joined #lisp 2018-07-03T09:14:54Z flamebea_ joined #lisp 2018-07-03T09:14:54Z flamebeard_ quit (Read error: Connection reset by peer) 2018-07-03T09:16:35Z flamebeard quit (Ping timeout: 240 seconds) 2018-07-03T09:17:06Z flamebea_ is now known as flamebeard 2018-07-03T09:19:18Z thodg joined #lisp 2018-07-03T09:20:47Z dmiles quit (Ping timeout: 276 seconds) 2018-07-03T09:25:45Z _cosmonaut_ joined #lisp 2018-07-03T09:26:06Z dmiles joined #lisp 2018-07-03T09:34:35Z vap1 quit (Ping timeout: 240 seconds) 2018-07-03T09:35:36Z attila_lendvai quit (Read error: No route to host) 2018-07-03T09:35:56Z orivej joined #lisp 2018-07-03T09:36:35Z attila_lendvai joined #lisp 2018-07-03T09:36:36Z attila_lendvai quit (Changing host) 2018-07-03T09:36:36Z attila_lendvai joined #lisp 2018-07-03T09:40:01Z flip214: beach: when you've got a version of the GC doc including the thread interaction and locking logic, please alert me - best way would be an email. I'd love to read your thoughts! 2018-07-03T09:41:39Z anddam left #lisp 2018-07-03T09:46:07Z beach: Will do. I am currently working on the details of the global collector. 2018-07-03T09:57:02Z _whitelogger quit (Remote host closed the connection) 2018-07-03T09:57:20Z pagnol quit (Ping timeout: 245 seconds) 2018-07-03T09:58:05Z pagnol joined #lisp 2018-07-03T09:59:15Z _whitelogger joined #lisp 2018-07-03T10:02:55Z schweers: How do I best check for two objects of my class to be equal? equalp does not seem to work 2018-07-03T10:03:30Z beach: schweers: There is nothing built in, for the simple reason that equality is defined by the application. 2018-07-03T10:03:48Z schweers: so there is no generic function on which to define a method? 2018-07-03T10:03:53Z beach: schweers: For example, the phone company thinks me and my wife are equal, because we have the same phone number. 2018-07-03T10:04:27Z schweers: true 2018-07-03T10:04:32Z schweers: also, cool example ;) 2018-07-03T10:04:32Z beach: schweers: Correct, there isn't. Such a function would have to take a third argument, namely some representation of the application. 2018-07-03T10:04:57Z beach: http://www.nhplace.com/kent/PS/EQUAL.html 2018-07-03T10:05:08Z beach: It is all explained in that article. 2018-07-03T10:05:09Z schweers: good point. So I’ll have to devise my own. Fair enough. Thanks for the info. 2018-07-03T10:05:24Z flip214: beach: equality is built-in in France ;) liberte, >>egality<<, fraternite or so, right? 2018-07-03T10:05:32Z schweers: I have to go for a while, I’ll look into it. thank you for the pointer. 2018-07-03T10:05:35Z beach: schweers: Anytime. 2018-07-03T10:05:52Z beach: flip214: Only for people. :) 2018-07-03T10:08:05Z orivej quit (Ping timeout: 260 seconds) 2018-07-03T10:08:52Z attila_lendvai quit (Quit: Leaving.) 2018-07-03T10:11:31Z kuribas joined #lisp 2018-07-03T10:12:05Z kuribas: is it possible to define a generic method on a type? 2018-07-03T10:13:23Z jkordani quit (Read error: Connection reset by peer) 2018-07-03T10:14:46Z Kaisyu quit (Quit: Connection closed for inactivity) 2018-07-03T10:15:00Z patrix joined #lisp 2018-07-03T10:15:37Z kuribas: or only on classes? 2018-07-03T10:15:51Z loke: kuribas: Every Lisp object is a class. 2018-07-03T10:16:03Z kuribas: so if I define a type, it's also a class? 2018-07-03T10:16:09Z loke: kuribas: And you're probably asking about specialising a method on a generic function. 2018-07-03T10:16:15Z kuribas: yes 2018-07-03T10:16:19Z loke: kuribas: You mean using DEFTYPE? No. 2018-07-03T10:16:37Z karlosz quit (Quit: karlosz) 2018-07-03T10:16:45Z loke: There are built-in classes (such as integer, string, cons, etc...) and there are cutom classes defined using DEFCLASS 2018-07-03T10:16:51Z gorgor_ quit (Ping timeout: 240 seconds) 2018-07-03T10:16:52Z karlosz joined #lisp 2018-07-03T10:17:04Z loke: you can also specialise on object identity (using EQL qualifiers) 2018-07-03T10:17:10Z patrix is now known as patrixl 2018-07-03T10:17:14Z knobo quit (Ping timeout: 260 seconds) 2018-07-03T10:17:21Z loke: (and MEMBER qualifiers, which is just an extension of the EQL one) 2018-07-03T10:17:27Z kuribas: what's the class of a deftype'd object? 2018-07-03T10:17:31Z antoszka: EQL or EQ? 2018-07-03T10:17:37Z shaftoe_ quit (Ping timeout: 248 seconds) 2018-07-03T10:17:41Z loke: EQL 2018-07-03T10:17:55Z m00natic joined #lisp 2018-07-03T10:17:58Z loke: kuribas: None. Deftype does not create classes. 2018-07-03T10:18:20Z kuribas: loke: you just said every lisp object is a class 2018-07-03T10:18:23Z jackdaniel: type system is separate from class system in Common Lisp 2018-07-03T10:18:31Z jackdaniel: you may associate arbitrary predicate with a type 2018-07-03T10:18:37Z loke: kuribas: Correct. But a deftype definition is not an object 2018-07-03T10:19:00Z kuribas: loke: if I create an object of such type, it's an object? 2018-07-03T10:19:02Z jackdaniel: for instance number 3 is of class integer while its type could be positive-integer or integer-less-than-four 2018-07-03T10:19:12Z jackdaniel: (both in principle) 2018-07-03T10:19:39Z kuribas: hmm 2018-07-03T10:19:50Z loke: jackdaniel: Or even more specific: the number 1 is simultaneously of type BIT, INTEGER and FIXNUM. 2018-07-03T10:19:58Z kuribas: what about defstruct? 2018-07-03T10:20:06Z kuribas: does it define a class? 2018-07-03T10:20:18Z loke: kuribas: According the the spec, no. In prcatice, yes. 2018-07-03T10:20:34Z jackdaniel: loke: rather class fixnum and integer (and also type of course), but bit? hmm 2018-07-03T10:20:39Z loke: I believe all common Lisp implementations allow you to specialise on a struct. 2018-07-03T10:20:51Z jackdaniel: kuribas: defstruct defines class, but it is not a standard-class 2018-07-03T10:21:00Z loke: (typep 1 'bit) → T 2018-07-03T10:21:04Z jackdaniel: you may specialize on objects which are not of class tandard-class 2018-07-03T10:21:18Z jackdaniel: loke: (typep 3 'bit) -> nil 2018-07-03T10:21:25Z jackdaniel: ah, you've changed the number 2018-07-03T10:21:29Z loke: jackdaniel: Yes. :-) 2018-07-03T10:21:41Z thodg quit (Ping timeout: 256 seconds) 2018-07-03T10:21:44Z kuribas: so I could write a generic method on a type? 2018-07-03T10:21:50Z loke: kuribas: No. 2018-07-03T10:21:51Z jackdaniel: kuribas: you may specialize on any class, but you can't specialize on a type 2018-07-03T10:22:16Z jackdaniel: you may use filtered-functions library to wrap something of your own (it adds some preprocessor step for dispatch) 2018-07-03T10:23:03Z kuribas: is it possible to create a unique value? Like a symbol, but unique 2018-07-03T10:23:33Z jackdaniel: gensym creates symbol which is not interned 2018-07-03T10:23:36Z Xach: kuribas: make-symbol will make a new symbol 2018-07-03T10:25:19Z kuribas: okay, thanks 2018-07-03T10:26:28Z loke: to be very specific: (eq (make-symbol "FOO") (make-symbol "FOO")) → NIL 2018-07-03T10:27:13Z patrixl quit (Remote host closed the connection) 2018-07-03T10:27:16Z shka: hmmm 2018-07-03T10:28:16Z jackdaniel: 2018-07-03T10:29:59Z bjorkintosh joined #lisp 2018-07-03T10:30:05Z scymtym quit (Ping timeout: 240 seconds) 2018-07-03T10:30:14Z kuribas: what's the use for deftype then? 2018-07-03T10:30:30Z kuribas: typechecks? 2018-07-03T10:31:08Z karlosz quit (Quit: karlosz) 2018-07-03T10:31:19Z jackdaniel: types are useful for many things, typechecks is one, code branch dispatch (for optimization or else) is another 2018-07-03T10:31:26Z karlosz joined #lisp 2018-07-03T10:31:50Z jackdaniel: classes are just a subset of possible types, some types are even not decidable 2018-07-03T10:33:54Z Xach: deftype gives you type abstraction 2018-07-03T10:34:11Z Xach: you can change the details of the underlying type without changing the name you use everywhere 2018-07-03T10:34:16Z kuribas: is that like a type synonym in haskell? 2018-07-03T10:34:25Z Xach: i don't know anything about haskell, sorry. 2018-07-03T10:34:41Z jackdaniel: kuribas: type may be associated with *any* predicate which is a function 2018-07-03T10:34:55Z jackdaniel: in degenerated case you could put call to random in this function and see world burning 2018-07-03T10:35:10Z bjorkintosh quit (Ping timeout: 256 seconds) 2018-07-03T10:36:32Z AetherWind quit (Quit: Leaving) 2018-07-03T10:36:48Z jackdaniel: or something like `(solves x^3 - 2x^1 = 0) ; of course you would have to code the method to find the solution 2018-07-03T10:37:41Z patrixl joined #lisp 2018-07-03T10:40:42Z kuribas: ah cool 2018-07-03T10:40:42Z jackdaniel: kuribas: I wouldn't concern with types very much for now if I were you, just stick to classes. think of a type system as of some generalization which you don't need (until you'll need it) – class names are also type names so work on that level (check-type and other will work with it) 2018-07-03T10:41:07Z kuribas: jackdaniel: I am trying to make lazy streams for sbcl 2018-07-03T10:41:11Z kuribas: as subclass of sequence 2018-07-03T10:41:37Z karlosz quit (Quit: karlosz) 2018-07-03T10:41:51Z karlosz joined #lisp 2018-07-03T10:42:08Z jackdaniel: delimited continuations would definetely help you with that 2018-07-03T10:42:18Z flip214: kuribas: (incf *counter*) should be "unique" as well 2018-07-03T10:43:53Z kuribas: jackdaniel: how? 2018-07-03T10:43:55Z jackdaniel: (don't take that lead – delemited continuations are not implemented in any CL implementation afaik, nor they are part of the standard) 2018-07-03T10:44:19Z kuribas: I now just have a thunk structure which encapsulates a lambda 2018-07-03T10:44:54Z kuribas: so "evaluating" the thunk just calls the lambda, then replaces the thunk by its value. 2018-07-03T10:45:00Z paule32 quit (Read error: Connection reset by peer) 2018-07-03T10:45:03Z kuribas: simple but effective. 2018-07-03T10:45:09Z kuribas: probably not efficient though 2018-07-03T10:45:09Z jackdaniel: OK 2018-07-03T10:45:30Z kuribas: but the idea of lazyness is convenience, not performance 2018-07-03T10:46:01Z shka: kuribas: it can be surprisingly effective 2018-07-03T10:46:16Z shka: i use similar approach, it works great 2018-07-03T10:46:24Z jackdaniel: kuribas: have you heard about library `clazy'? 2018-07-03T10:46:41Z shka: the only issue is that i have to explicitly maintain stack of cons cells 2018-07-03T10:46:49Z shka: sometimes 2018-07-03T10:46:56Z shka: but i can deal with it 2018-07-03T10:46:58Z kuribas: jackdaniel: yeah. It's not a sequence though, or is it? 2018-07-03T10:47:24Z fikka quit (Ping timeout: 265 seconds) 2018-07-03T10:47:28Z loke: flip214: You'd need a mutex to ensure uniqueness :-) 2018-07-03T10:47:50Z loke: kuribas: Yiou might also want to look at the SERIES library, which implements that. 2018-07-03T10:47:56Z shka: kuribas: anyway, take a look at that https://github.com/sirherrbatka/cl-data-structures/blob/68139f5330a2df4644b7daca72b3c2b6803ed4fa/src/api/expression-wrapper.lisp#L41 2018-07-03T10:47:59Z kuribas: I'll put it on github, if anyone else is interested. 2018-07-03T10:48:04Z kuribas: loke: thanks, I will 2018-07-03T10:48:39Z shka: can be used like this 2018-07-03T10:48:40Z shka: https://github.com/sirherrbatka/cl-data-structures/blob/68139f5330a2df4644b7daca72b3c2b6803ed4fa/src/api/expression-tests.lisp#L9 2018-07-03T10:49:27Z kuribas: loke: oh, that looks quite nice 2018-07-03T10:51:17Z loke: With SERIES you can do: 2018-07-03T10:51:19Z loke: (let ((s (series:scan-fn 'integer (constantly 0) #'1+))) 2018-07-03T10:51:19Z loke: (series:subseries s 40 50)) 2018-07-03T10:51:27Z loke: Which yields #Z(40 41 42 43 44 45 46 47 48 49) 2018-07-03T10:53:15Z littlelisper quit (Quit: leaving) 2018-07-03T10:56:07Z karlosz quit (Quit: karlosz) 2018-07-03T11:00:17Z nowhere_man quit (Ping timeout: 255 seconds) 2018-07-03T11:08:05Z kuribas: hmm, I could use foldr build fusion instead of thunk to eliminate intermediate lists. 2018-07-03T11:08:49Z kuribas: then (reduce #'+ (enum-from-to 1 100)) would run in constant space. 2018-07-03T11:09:20Z _cosmonaut_ quit (Ping timeout: 260 seconds) 2018-07-03T11:09:35Z papachan quit (Ping timeout: 240 seconds) 2018-07-03T11:09:35Z papachan_ is now known as papachan 2018-07-03T11:11:29Z markoong joined #lisp 2018-07-03T11:11:36Z paule32 joined #lisp 2018-07-03T11:11:36Z nowhere_man joined #lisp 2018-07-03T11:11:39Z thodg joined #lisp 2018-07-03T11:16:34Z fikka joined #lisp 2018-07-03T11:16:52Z flip214: loke: (sb-thread:atomic-incf *counter*) 2018-07-03T11:19:26Z pierpal quit (Read error: Connection reset by peer) 2018-07-03T11:24:37Z loke: kuribas: You probably want: (series:collect-sum (series:scan-range :from 0 :upto 100)) 2018-07-03T11:25:05Z lnostdal joined #lisp 2018-07-03T11:25:11Z kuribas: does (declaim (inline ...)) work outside a package? 2018-07-03T11:25:18Z _cosmonaut_ joined #lisp 2018-07-03T11:25:22Z kuribas: will the function be inlined when importing the package? 2018-07-03T11:25:39Z beach: kuribas: Packages are only about symbols. 2018-07-03T11:25:41Z shka: kuribas: it should work 2018-07-03T11:26:07Z beach: kuribas: Only the reader cares about packages. 2018-07-03T11:26:44Z shka: kuribas: but you probabbly should think twice before doing something like this 2018-07-03T11:27:30Z shka: because compiler will attempt to inline this function everywhere from now 2018-07-03T11:27:32Z milanj quit (Quit: This computer has gone to sleep) 2018-07-03T11:27:40Z kuribas: shka: that's what I want :) 2018-07-03T11:27:51Z thodg quit (Read error: Connection reset by peer) 2018-07-03T11:27:52Z shka: so basicly if your project is a library 2018-07-03T11:28:16Z shka: you will change behavior of other library for all your clients 2018-07-03T11:28:25Z shka: and this is not what you should be doing 2018-07-03T11:28:45Z shka: as for thunk vs stream fusion 2018-07-03T11:28:51Z shka: i personally prefer thunks 2018-07-03T11:30:02Z kuribas: shka: stream fusion can eliminate intermediate structures, so put less stress on the GC. 2018-07-03T11:30:10Z kuribas: thunks are easier 2018-07-03T11:30:55Z shka: well, thunks can do the same thing, without magical keywords 2018-07-03T11:31:04Z shka: or at least with less magical words 2018-07-03T11:31:23Z kuribas: yes, semantically it's the same 2018-07-03T11:31:42Z kuribas: but each thunk needs to be garbage collected 2018-07-03T11:32:03Z kuribas: anyway I could try both and compare the performance 2018-07-03T11:32:13Z shka: well, that's acceptable cost 2018-07-03T11:32:17Z shka: IMHO 2018-07-03T11:32:29Z shka: unless you want to go real time 2018-07-03T11:33:37Z kuribas: well, it's just an experiment now 2018-07-03T11:34:00Z kuribas: coming from haskell I find streams very handy 2018-07-03T11:35:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-03T11:36:42Z beach: Does anybody know how the object sets (white, gray, black) in a tri-color tracing garbage collector are typically represented? 2018-07-03T11:36:56Z ebrasca quit (Read error: Connection reset by peer) 2018-07-03T11:36:56Z knobo joined #lisp 2018-07-03T11:37:03Z ebrasca joined #lisp 2018-07-03T11:37:22Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-03T11:38:16Z flip214: beach: ISTR that black=01 white =10 gray=11 so that a simple bit-IOR makes gray 2018-07-03T11:38:34Z flip214: or am I misunderstanding the question in some way? 2018-07-03T11:38:40Z beach: Ah, I should have explained my problem a bit more... 2018-07-03T11:38:51Z beach: How do I find an arbitrary gray object. 2018-07-03T11:38:52Z beach: ? 2018-07-03T11:39:29Z flip214: if you don't have a list of gray objects, by exhaustive search?! 2018-07-03T11:39:42Z flip214: or you store _a_ gray object when it's marked as such 2018-07-03T11:39:44Z beach: I can't very well scan the bitmap in each iteration. 2018-07-03T11:41:32Z flip214: I thought you walk the object headers in a well-defined order... wouldn't traversing them show a gray object or none? 2018-07-03T11:42:10Z beach: I don't understand. 2018-07-03T11:42:22Z beach: I could have a small set of gray objects, but that set can't be too big. 2018-07-03T11:43:02Z acolarh quit (Ping timeout: 255 seconds) 2018-07-03T11:44:56Z beach: flip214: When a gray object is being processed, the white objects that it refers to are colored gray and then the object itself is colored black. 2018-07-03T11:45:30Z beach: So, sure, I can set the bits for the gray objects and clear the bit for the object itself. But how do I select the next gray object to process? 2018-07-03T11:45:53Z flip214: well, wikipedia says "The grey set is kept as a separate list or using another bit." ;) 2018-07-03T11:45:54Z shka: ok, so basicly you want to have some sort of index 2018-07-03T11:46:06Z nowhere_man joined #lisp 2018-07-03T11:46:29Z lumm joined #lisp 2018-07-03T11:47:28Z beach: flip214: Very informative. Where do I get the additional space for a list? 2018-07-03T11:47:46Z flip214: (CONS ) .... sorry, but you had that one coming ;) 2018-07-03T11:47:46Z beach: shka: Yes, something like that. I considered a multi-level bitmap. 2018-07-03T11:48:07Z beach: flip214: What Wikipedia article are you reading? 2018-07-03T11:48:46Z flip214: https://en.wikipedia.org/wiki/Tracing_garbage_collection#Tri-color_marking 2018-07-03T11:50:21Z beach: Ah, now I see it. Thanks. 2018-07-03T11:50:38Z Kaisyu joined #lisp 2018-07-03T11:53:22Z pierpal joined #lisp 2018-07-03T11:53:53Z orivej joined #lisp 2018-07-03T11:54:00Z beach: Does the x86-64 have an instruction for finding the first bit set in a 64-bit word? 2018-07-03T11:54:19Z beach: Or 128-bit word is even better. 2018-07-03T11:56:33Z acolarh joined #lisp 2018-07-03T11:57:20Z flip214: beach: https://en.wikipedia.org/wiki/Find_first_set 2018-07-03T11:57:30Z flip214: 128 will need SSE or similar, I believe 2018-07-03T11:57:42Z flip214: __builtin_ffs in GCC 2018-07-03T11:58:11Z flip214: but the question is.... "first" as in "first in printed representation (MSB)" or as in "lowest set bit"? ;) 2018-07-03T11:58:57Z fikka joined #lisp 2018-07-03T11:59:23Z beach: Excellent! Thanks. 2018-07-03T12:00:36Z rpg joined #lisp 2018-07-03T12:00:46Z shangul joined #lisp 2018-07-03T12:01:38Z EvW joined #lisp 2018-07-03T12:02:15Z milanj joined #lisp 2018-07-03T12:02:23Z beach: So, using a multi-level index, as shka suggested, I could have a bitmap covering the entire heap, and then a secondary bitmap with one bit for every 64 bits in the primary bitmap, etc, until there is a single word left. 2018-07-03T12:04:37Z beach: The number of levels would have to vary, but there would rarely be more than 5 or so. 2018-07-03T12:05:54Z kajo quit (Remote host closed the connection) 2018-07-03T12:06:33Z beach: flip214: It doesn't matter. I can use any bit that is set. 2018-07-03T12:06:48Z kajo joined #lisp 2018-07-03T12:07:36Z beach: OK, this technique could be pretty fast. 2018-07-03T12:09:11Z thodg joined #lisp 2018-07-03T12:09:34Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-03T12:10:22Z scymtym joined #lisp 2018-07-03T12:11:02Z wildbartty quit (Remote host closed the connection) 2018-07-03T12:14:10Z beach: To mark an object as gray, compute the 64-bit word containing the gray bit for that object. Check and remember whether this word is zero before setting any bits. Set the bit corresponding to the object. If the word was zero before, move to the next level of bitmaps and repeat. If the word was not zero before, stop. 2018-07-03T12:15:04Z beach: To remove a gray object from the set, compute the 64-bit word containing the gray bit for that object. Clear the bit corresponding to the object. If the word is now zero, move to the next level of bitmaps and repeat. 2018-07-03T12:15:06Z Myon joined #lisp 2018-07-03T12:15:22Z Kundry_Wag joined #lisp 2018-07-03T12:15:47Z beach: In general to find an arbitrary gray object, start from the top bitmap, find the first bit set, move one level down and repeat until the lowest level is reached. 2018-07-03T12:18:03Z beach: shka: Something like that? 2018-07-03T12:18:15Z thodg quit (Read error: Connection reset by peer) 2018-07-03T12:18:57Z shaftoe_ joined #lisp 2018-07-03T12:19:23Z beach: Nothing prevents us from combining this scheme with a small cache of gray objects, of course. 2018-07-03T12:19:52Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-03T12:20:37Z beach: But it might not be worth it. 2018-07-03T12:21:14Z shka: beach: sorry been AFK 2018-07-03T12:21:33Z beach: shka: Sure, no problem. 2018-07-03T12:28:14Z shka: beach: multilevel bitmap sounds like clever solution, but i am wondering if anyone else does it this way 2018-07-03T12:28:22Z shka: MPS for instance 2018-07-03T12:28:43Z beach: I don't know. Most GC systems are not concurrent and parallel anyway. 2018-07-03T12:29:04Z shka: that is true 2018-07-03T12:29:34Z shka: well, anyway, it may be unusual, but very well may be efficient 2018-07-03T12:29:56Z shka: honestly, i don't think anyone can be certain before prototype 2018-07-03T12:30:18Z beach: Yes, of course. GC performance is notoriously hard to predict. 2018-07-03T12:31:14Z graphene quit (Remote host closed the connection) 2018-07-03T12:31:34Z Kundry_Wag joined #lisp 2018-07-03T12:32:41Z graphene joined #lisp 2018-07-03T12:33:31Z Kundry_Wag quit (Remote host closed the connection) 2018-07-03T12:37:34Z nowhere_man quit (Ping timeout: 264 seconds) 2018-07-03T12:39:07Z LdBeth: What’s gray object by definition? 2018-07-03T12:39:40Z beach: A live object that may refer to untraced (white) objects. 2018-07-03T12:40:32Z pierpal quit (Read error: Connection reset by peer) 2018-07-03T12:40:43Z thodg joined #lisp 2018-07-03T12:44:10Z flip214: beach: ain't it good enough to have one bitmap bit per 4KB of data? do you really want to go down to a per-word granularity? sounds overkill to me. 2018-07-03T12:45:24Z beach: Well, if I have one word granularity, I can find a gray object in 5 or so iterations. If I have one bit per 4KB, I would have to search hundreds of words to find one. 2018-07-03T12:45:45Z beach: And the extra space for my suggested technique is very modest. 2018-07-03T12:46:42Z beach: flip214: Or am I missing something with your suggestion? 2018-07-03T12:49:04Z LdBeth: Looks like GPU accelerated GC 2018-07-03T12:49:54Z flip214: beach: no, you're right. but I thought your smallest object is 2 words (object header) anyway, so at least 16 bytes, that means 256 objects per 4kB page 2018-07-03T12:50:27Z flip214: 256 objects == 32 bytes bitmap 2018-07-03T12:50:38Z flip214: for 4GB heap == 32MB bitmap, if I'm not mistaken 2018-07-03T12:50:49Z flip214: these 32MB could be used for better purposes IMO 2018-07-03T12:52:32Z pagnol quit (Read error: Connection reset by peer) 2018-07-03T12:56:04Z jkordani joined #lisp 2018-07-03T12:57:47Z beach: 32MB is almost nothing. Time is more critical. 2018-07-03T12:58:14Z beach: Also, are you saying no additional levels of bitmaps? 2018-07-03T12:58:17Z beach: That won't fly. 2018-07-03T12:58:38Z beach: You may have to search an arbitrary number of pages before you find a gray object then. 2018-07-03T12:58:58Z beach: Anyway, I am off for an appointment. 2018-07-03T12:59:10Z lnostdal quit (Ping timeout: 264 seconds) 2018-07-03T12:59:12Z beach: I'll be back in a few hours. 2018-07-03T13:00:56Z doesthiswork joined #lisp 2018-07-03T13:01:01Z Bike joined #lisp 2018-07-03T13:01:20Z LdBeth: A tri-color bitmap could be compressed to two array of x y coordinates 2018-07-03T13:01:22Z flip214: beach: No, I was just talking about the lowest, per-word level of the bitmap tree. This I would avoid. And as I estimated only _one_ 4KB page with at most 256 objects needs to be looked at to find "the" gray object in there. 2018-07-03T13:01:41Z flip214: LdBeth: and stored as JPEG in memory? 2018-07-03T13:02:07Z LiamH joined #lisp 2018-07-03T13:04:56Z kajo quit (Ping timeout: 276 seconds) 2018-07-03T13:06:11Z kajo joined #lisp 2018-07-03T13:06:59Z eschatologist quit (Ping timeout: 276 seconds) 2018-07-03T13:07:23Z LdBeth: Ha, arrays enable multiple threads processing 2018-07-03T13:11:18Z eschatologist joined #lisp 2018-07-03T13:15:48Z kerframil joined #lisp 2018-07-03T13:16:06Z g_SG joined #lisp 2018-07-03T13:19:05Z g_SG quit (Client Quit) 2018-07-03T13:21:34Z nowhere_man joined #lisp 2018-07-03T13:28:47Z escapist quit (Ping timeout: 255 seconds) 2018-07-03T13:29:48Z graphene quit (Remote host closed the connection) 2018-07-03T13:30:43Z sjl joined #lisp 2018-07-03T13:31:03Z graphene joined #lisp 2018-07-03T13:34:33Z Murii quit (Remote host closed the connection) 2018-07-03T13:36:42Z warweasle joined #lisp 2018-07-03T13:38:58Z sendai_ joined #lisp 2018-07-03T13:40:47Z fikka quit (Ping timeout: 276 seconds) 2018-07-03T13:41:38Z fikka joined #lisp 2018-07-03T13:42:14Z Kundry_Wag joined #lisp 2018-07-03T13:42:44Z azimut quit (Ping timeout: 255 seconds) 2018-07-03T13:43:11Z attila_lendvai joined #lisp 2018-07-03T13:43:11Z attila_lendvai quit (Changing host) 2018-07-03T13:43:11Z attila_lendvai joined #lisp 2018-07-03T13:46:00Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-03T13:49:24Z escapist joined #lisp 2018-07-03T13:49:30Z escapist quit (Client Quit) 2018-07-03T13:54:43Z nowhere_man joined #lisp 2018-07-03T13:57:38Z thodg quit (Read error: Connection reset by peer) 2018-07-03T14:04:34Z jack_rabbit quit (Ping timeout: 264 seconds) 2018-07-03T14:04:47Z Kaisyu quit (Quit: Connection closed for inactivity) 2018-07-03T14:05:42Z cage_ joined #lisp 2018-07-03T14:05:42Z attila_lendvai quit (Read error: Connection reset by peer) 2018-07-03T14:06:41Z kajo quit (Remote host closed the connection) 2018-07-03T14:07:33Z kajo joined #lisp 2018-07-03T14:09:15Z skapata joined #lisp 2018-07-03T14:13:18Z mangul joined #lisp 2018-07-03T14:13:35Z shangul quit (Ping timeout: 240 seconds) 2018-07-03T14:13:36Z Kundry_Wag quit (Remote host closed the connection) 2018-07-03T14:14:46Z Zhivago quit (Read error: Connection reset by peer) 2018-07-03T14:16:41Z Kundry_Wag joined #lisp 2018-07-03T14:16:49Z milanj quit (Quit: This computer has gone to sleep) 2018-07-03T14:24:24Z samla joined #lisp 2018-07-03T14:26:27Z Younder joined #lisp 2018-07-03T14:26:51Z nxtr` joined #lisp 2018-07-03T14:27:30Z shka: if anything, i would love GC that can semi-efficiently handle very large heaps 2018-07-03T14:27:50Z shka: because that's what i am dealing with most of the time 2018-07-03T14:28:20Z dlowe: I would love a GC with managed arenas 2018-07-03T14:29:31Z karswell_ quit (Ping timeout: 268 seconds) 2018-07-03T14:29:45Z Younder: so you want clasp? 2018-07-03T14:30:25Z Younder: https://github.com/clasp-developers/clasp 2018-07-03T14:30:29Z samla quit (Quit: Mutter: www.mutterirc.com) 2018-07-03T14:30:30Z dlowe: I'm aware of clasp 2018-07-03T14:31:03Z Younder: Who isn't. But do you have experience with it. 2018-07-03T14:31:06Z nowhereman_ joined #lisp 2018-07-03T14:31:29Z nowhere_man quit (Ping timeout: 276 seconds) 2018-07-03T14:32:17Z dlowe: No. 2018-07-03T14:33:53Z Younder: Their virtual machine with compile on load is enticing. (LLVM) It adaps the code to the machine you install it on. 2018-07-03T14:34:59Z Zhivago joined #lisp 2018-07-03T14:35:12Z robotoad joined #lisp 2018-07-03T14:35:19Z sz0 joined #lisp 2018-07-03T14:35:21Z heisig quit (Quit: Leaving) 2018-07-03T14:36:29Z cage_ quit (Remote host closed the connection) 2018-07-03T14:36:47Z cage_ joined #lisp 2018-07-03T14:37:42Z fikka quit (Ping timeout: 256 seconds) 2018-07-03T14:38:47Z shka: i don't know what clasp current status is 2018-07-03T14:38:57Z jackdaniel: it is under development 2018-07-03T14:39:08Z shka: i'm sure i could enjoy more blogpost 2018-07-03T14:39:17Z jackdaniel: more curious question is: which CL compiler doesn't adapt the code to the machine you install it on? :) 2018-07-03T14:39:55Z jackdaniel: you know, this fishy step called compilation 2018-07-03T14:40:00Z Bike: younder what the hell are you talking about 2018-07-03T14:41:05Z quazimodo quit (Ping timeout: 240 seconds) 2018-07-03T14:41:12Z rpg joined #lisp 2018-07-03T14:42:50Z Kundry_Wag quit (Read error: Connection reset by peer) 2018-07-03T14:43:24Z graphene quit (Remote host closed the connection) 2018-07-03T14:43:27Z quazimodo joined #lisp 2018-07-03T14:44:09Z pfdietz joined #lisp 2018-07-03T14:45:30Z graphene joined #lisp 2018-07-03T14:46:00Z Younder: Bike: https://llvm.org/ 2018-07-03T14:46:26Z scymtym quit (Ping timeout: 276 seconds) 2018-07-03T14:46:43Z shka: jackdaniel: well, fortunatly many lisp implementations are under development 2018-07-03T14:46:52Z Bike: i'm a clasp developer. there's no "compile on load" and at the moment we only support x64. don't lie on our behalf. 2018-07-03T14:46:58Z shka: but i am wondering how usable clasp is 2018-07-03T14:47:14Z jackdaniel: shka: I mean – it is under heavy development, that is features are added actively 2018-07-03T14:47:39Z shka: yes, there are commits on git daily 2018-07-03T14:47:43Z FreeBirdLjj joined #lisp 2018-07-03T14:47:45Z jackdaniel: recently compilation time was cut noticeably afaik 2018-07-03T14:47:57Z shka: that's nice 2018-07-03T14:48:03Z Younder: Bike. I know and I don't intentionally lie, at least not in this case. 2018-07-03T14:48:24Z jackdaniel: shka: then what metric of "current status" are you asking for? 2018-07-03T14:48:33Z fikka joined #lisp 2018-07-03T14:48:39Z shka: well, that's a good question i guess 2018-07-03T14:48:41Z nxtr` quit (Remote host closed the connection) 2018-07-03T14:49:26Z shka: anyway, I am trying to track development on git but it is not that easy if you lack expertise in compilers 2018-07-03T14:50:14Z Bike: we haven't made major changes to the compiler lately. mainly trying to clean up the runtime 2018-07-03T14:50:20Z shka: still, fascinating stuff 2018-07-03T14:50:29Z Younder: Bike, Anyhow 32 bit is pretty much dead. The key is to support GPU's and other support chips say FPGA's. 2018-07-03T14:50:44Z shka: Younder: that does not make any sense 2018-07-03T14:50:53Z Bike: it really doesn't 2018-07-03T14:51:22Z jackdaniel: but is a buzzword™ compliant, so pay attention 2018-07-03T14:52:15Z Younder: Two lib's one for GPU one for CPU. you pick and balance at runtime and adapt to the machine you are running on. That doesn't make sense to you? 2018-07-03T14:52:25Z shka: Younder: no 2018-07-03T14:52:57Z shka: not on the lisp implementation level anyway 2018-07-03T14:53:32Z Younder: Well If you are developing form a supercomputer from a laptop and you wan't to debug you code you would want a slower bur runnable version. 2018-07-03T14:53:37Z Younder: for 2018-07-03T14:53:39Z shka: Bike: well, since you are around, how work on clasp is going? 2018-07-03T14:53:44Z shka: any interesting problems lately? 2018-07-03T14:54:01Z Bike: many problems of various levels of interest 2018-07-03T14:54:22Z Bike: nothing too flashy lately, i don't think 2018-07-03T14:54:37Z Bike: we've been working on getting source tracking with dwarf info and beach's cst library 2018-07-03T14:54:46Z shka: oh 2018-07-03T14:54:52Z shka: i seen cst library 2018-07-03T14:55:00Z shka: it will be added to ql probabbly soon 2018-07-03T14:55:27Z Bike: right, people were using it for non compiler things 2018-07-03T14:55:37Z Inline joined #lisp 2018-07-03T14:56:33Z shka: yes, it is useful all around library 2018-07-03T14:56:47Z lumm_ joined #lisp 2018-07-03T14:57:44Z hhdave joined #lisp 2018-07-03T15:00:29Z lumm quit (Ping timeout: 256 seconds) 2018-07-03T15:00:29Z lumm_ is now known as lumm 2018-07-03T15:03:56Z wheelsucker joined #lisp 2018-07-03T15:04:38Z wheelsucker quit (Remote host closed the connection) 2018-07-03T15:05:19Z robotoad quit (Quit: robotoad) 2018-07-03T15:06:08Z lumm quit (Read error: Connection reset by peer) 2018-07-03T15:06:23Z wheelsucker joined #lisp 2018-07-03T15:06:34Z surya joined #lisp 2018-07-03T15:07:50Z shangul joined #lisp 2018-07-03T15:07:55Z mangul quit (Ping timeout: 260 seconds) 2018-07-03T15:08:32Z lumm joined #lisp 2018-07-03T15:08:50Z graphene quit (Remote host closed the connection) 2018-07-03T15:08:57Z fikka quit (Ping timeout: 245 seconds) 2018-07-03T15:10:40Z graphene joined #lisp 2018-07-03T15:12:16Z shrdlu68 quit (Ping timeout: 265 seconds) 2018-07-03T15:13:50Z thodg joined #lisp 2018-07-03T15:14:50Z robotoad joined #lisp 2018-07-03T15:15:25Z fikka joined #lisp 2018-07-03T15:15:45Z orivej quit (Ping timeout: 248 seconds) 2018-07-03T15:16:40Z lumm quit (Ping timeout: 260 seconds) 2018-07-03T15:17:50Z Kundry_Wag joined #lisp 2018-07-03T15:17:57Z al-damiri joined #lisp 2018-07-03T15:18:20Z nanoz joined #lisp 2018-07-03T15:20:05Z fikka quit (Ping timeout: 268 seconds) 2018-07-03T15:22:33Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-03T15:22:44Z littlelisper joined #lisp 2018-07-03T15:23:05Z beach: flip214: Yes the lowest level bitmap has one bit for each dyad (CONS cell or header). I don't think I have suggested anything different for the global collector. 2018-07-03T15:23:53Z beach: shka: The GC I am planning would handle very large heaps. 2018-07-03T15:23:53Z Satou joined #lisp 2018-07-03T15:24:49Z Satou: Hello, I have a question regarding quickloading caveman2, it seems that I cannot, I get an "Error while trying to load definition for system static-vectors from pathname" 2018-07-03T15:25:03Z fikka joined #lisp 2018-07-03T15:25:49Z Satou: I'm on Debian stretch, I've tried installing sbcl and cl-asdf from testing, but that doesn't seem to work. 2018-07-03T15:26:47Z shka: beach: i would love that 2018-07-03T15:27:01Z littlelisper quit (Read error: Connection reset by peer) 2018-07-03T15:27:01Z jackdaniel: Satou: standard Debian packaging and SBCL doesn't play well usually. you may try downloading sbcl from sbcl.org 2018-07-03T15:27:08Z shka: as i am one of the foolish few that attempt to handle large ammounts of data in lisp 2018-07-03T15:27:09Z jackdaniel: prebuilt binary should have asdf compiled 2018-07-03T15:27:22Z Satou: thanks jackdaniel. 2018-07-03T15:27:43Z beach: shka: That is not foolish. Sorry that existing implementations let you down. 2018-07-03T15:27:50Z jackdaniel: shka: how is lisp unsuitable now for handling big quantities of data? i'm curious about problems you have encountered 2018-07-03T15:27:55Z shka: works mostly great but GC in sbcl is substandard 2018-07-03T15:28:22Z jackdaniel: in what regard? 2018-07-03T15:28:25Z shka: jackdaniel: lisp as a language is fine, sbcl as implementation is also MOSTLY fine 2018-07-03T15:28:36Z shka: GC is the only problem 2018-07-03T15:28:54Z jackdaniel: in what regard its gc is substandard? is it too slow? 2018-07-03T15:29:01Z beach: How does the problem manifest itself? 2018-07-03T15:29:50Z ealfonso joined #lisp 2018-07-03T15:30:32Z fikka quit (Ping timeout: 276 seconds) 2018-07-03T15:30:59Z shka: jackdaniel: first of, it is slow 2018-07-03T15:31:05Z shka: or at least 2018-07-03T15:31:07Z shka: not very fast 2018-07-03T15:31:15Z shka: not java fast at least 2018-07-03T15:31:18Z beach: Do you see long pauses? 2018-07-03T15:31:33Z shka: beach: yeah, but oddly enough i am mostly fine with that part 2018-07-03T15:31:50Z shka: it does not add all that much time 2018-07-03T15:31:58Z shka: problem is different 2018-07-03T15:32:11Z shka: when it pauses, everything pauses 2018-07-03T15:32:25Z shka: all my 24 threads munching data 2018-07-03T15:32:36Z jackdaniel: "not java fast" doesn't tell me much, sorry 2018-07-03T15:32:45Z shka: so it bottlenecks whole process 2018-07-03T15:33:13Z shka: jackdaniel: i don't have benchmarks at the moment unfortunatly 2018-07-03T15:33:20Z shka: sorry 2018-07-03T15:33:41Z jackdaniel: as of pausing world – is your GC going to avoid that somehow beach ? 2018-07-03T15:33:42Z shka: otherwise, i find sbcl to be very good tool for the task 2018-07-03T15:33:55Z beach: jackdaniel: Of course. :) 2018-07-03T15:34:03Z jackdaniel: shka: java gc stops the world afaik 2018-07-03T15:34:32Z jackdaniel: beach: do you follow some existing algorithm to do that, or you have rolled up your own? 2018-07-03T15:34:44Z jackdaniel: I think that XCL developer had a presentation about such algorithm 2018-07-03T15:34:48Z beach: jackdaniel: A bit of both. 2018-07-03T15:35:44Z jackdaniel: uhm 2018-07-03T15:35:49Z shka: jackdaniel: not exactly stop the world 2018-07-03T15:35:50Z beach: jackdaniel: I am using an old compacting algorithm for the nursery, except that I improved it so that it is much more efficient. 2018-07-03T15:35:58Z beach: jackdaniel: The nursery collector should take only a few milliseconds. That is a requirement for handling things like sound processing. 2018-07-03T15:36:18Z shka: you can say many things about jvm, but GC is the strong point 2018-07-03T15:36:50Z beach: jackdaniel: http://metamodular.com/sliding-gc.pdf 2018-07-03T15:37:13Z jackdaniel: I'm confused, are we talking about java or jvm? I find the latter very appealing (to a limited extent I know about jvm) 2018-07-03T15:37:21Z beach: jackdaniel: And the global collector is parallel and concurrent with the application threads. 2018-07-03T15:37:22Z jackdaniel: either way JVM's GC stops the world 2018-07-03T15:37:30Z jackdaniel: beach: thanks 2018-07-03T15:38:26Z Smokitch joined #lisp 2018-07-03T15:38:44Z shka: jackdaniel: it has to, obviously 2018-07-03T15:39:29Z shka: anyway, i'm feeling like i am ranting at this point 2018-07-03T15:39:36Z shka: in a very non constructive way 2018-07-03T15:39:59Z beach: shka: "has to"? Why? 2018-07-03T15:40:10Z jackdaniel: well, "Java is better than Lisp" is a common complaint ,p 2018-07-03T15:40:16Z shka: SBCL is very good, and THE ONLY major practical shortcoming i encountered is GC 2018-07-03T15:40:39Z beach: jackdaniel: I am not doing anything magic. All those algorithms already exist. For the global collector, I do take advantage of the fact that all SICL heap-allocated objects are either 2 words, or have a 2-word header. That way I can use a mark-and-sweep collector for the global heap. 2018-07-03T15:41:06Z beach: shka: Are you saying that the GC has to stop all the application threads? 2018-07-03T15:41:23Z shka: for such complex piece of software as lisp implementation it is a excelent score 2018-07-03T15:41:32Z varjag quit (Quit: ERC (IRC client for Emacs 24.5.1)) 2018-07-03T15:42:00Z jackdaniel: beach: I'm afraid I don't know enough about garbage collecting to understand the implication here, but I'll take your word for that :) and maybe after reading this article I'll know more 2018-07-03T15:42:05Z shka: beach: as for JVM, it has more then one algorithm 2018-07-03T15:42:20Z EvW quit (Ping timeout: 276 seconds) 2018-07-03T15:42:24Z shka: and new version should have yet another GC that i don't know much about 2018-07-03T15:42:27Z Bike: yeah i thought the azure jvm didn't stop the world 2018-07-03T15:42:33Z shka: but at least by default java stops the world 2018-07-03T15:42:49Z shka: Bike: azure is special ;-) 2018-07-03T15:43:28Z merodix quit (Remote host closed the connection) 2018-07-03T15:43:38Z beach: jackdaniel: OK. I do recommend starting with Paul Wilson's survey paper: https://www3.nd.edu/~dthain/courses/cse40243/spring2006/gc-survey.pdf 2018-07-03T15:44:04Z jackdaniel: beach: thank you for the pointer 2018-07-03T15:44:09Z beach: Sure. 2018-07-03T15:44:28Z beach: Paul is a better writer than Jones. That's why I recommend starting with that one. 2018-07-03T15:44:30Z flamebeard quit 2018-07-03T15:44:41Z ealfonso quit (Ping timeout: 255 seconds) 2018-07-03T15:45:18Z fikka joined #lisp 2018-07-03T15:46:25Z lnostdal joined #lisp 2018-07-03T15:48:05Z shka: beach: btw, from what i googled java is switching to so called G1GC 2018-07-03T15:48:08Z shka: by default 2018-07-03T15:49:25Z beach: I see. 2018-07-03T15:50:05Z shka: there is rather lenghty discussion on the mailing list discussing merrits of it 2018-07-03T15:50:10Z fikka quit (Ping timeout: 264 seconds) 2018-07-03T15:50:41Z shka: unfortunatly it is way beyond my level 2018-07-03T15:51:36Z kushal quit (Remote host closed the connection) 2018-07-03T15:51:53Z kushal joined #lisp 2018-07-03T15:52:03Z shka: from what i understand G1GC is expected to have limited real time guaranteens 2018-07-03T15:52:07Z scymtym joined #lisp 2018-07-03T15:53:57Z _cosmonaut_ quit (Ping timeout: 240 seconds) 2018-07-03T15:54:00Z beach: Great! 2018-07-03T15:54:29Z beach: I wonder how they avoid scanning an arbitrarily big stack. 2018-07-03T15:54:43Z beach: But I don't wonder enough to go find out. 2018-07-03T15:55:01Z attila_lendvai joined #lisp 2018-07-03T15:55:01Z attila_lendvai quit (Changing host) 2018-07-03T15:55:01Z attila_lendvai joined #lisp 2018-07-03T15:57:28Z brendyn quit (Ping timeout: 256 seconds) 2018-07-03T15:58:02Z josemanuel joined #lisp 2018-07-03T16:01:30Z pfdietz quit (Ping timeout: 245 seconds) 2018-07-03T16:01:47Z pfdietz joined #lisp 2018-07-03T16:02:37Z shka: beach: majority of people would prefer overall shorter pauses over real time guaranteense anyway 2018-07-03T16:02:42Z shifty quit (Ping timeout: 245 seconds) 2018-07-03T16:04:30Z shka: though #lisp-games may disagree 2018-07-03T16:05:07Z shka: sicl is interesting concept in few ways anyway 2018-07-03T16:05:19Z shka: the only drawback is that I can't run it :D 2018-07-03T16:05:40Z fikka joined #lisp 2018-07-03T16:06:33Z Satou quit (Quit: exit();) 2018-07-03T16:08:38Z Arcaelyx quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-03T16:08:51Z Kundry_Wag joined #lisp 2018-07-03T16:09:52Z graphene quit (Read error: Connection reset by peer) 2018-07-03T16:10:15Z fikka quit (Ping timeout: 245 seconds) 2018-07-03T16:10:49Z TMA: shka: it really depends on the use case -- realtime requirements are not ubiquitous, but they are surprisingly common -- playing sound, having consistent gui response, ... 2018-07-03T16:11:13Z shka: yes, it is true 2018-07-03T16:11:13Z graphene joined #lisp 2018-07-03T16:11:36Z shka: i should leave my box more often 2018-07-03T16:12:01Z TMA: even a SLA for a web service makes your system bound by realtime guarantees 2018-07-03T16:12:21Z igemnace joined #lisp 2018-07-03T16:13:56Z buffergn0me joined #lisp 2018-07-03T16:14:02Z edgar-rft quit (Quit: edgar-rft) 2018-07-03T16:14:54Z milanj joined #lisp 2018-07-03T16:16:08Z fikka joined #lisp 2018-07-03T16:16:42Z andrei-n joined #lisp 2018-07-03T16:19:02Z shrdlu68 joined #lisp 2018-07-03T16:20:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-03T16:24:28Z pierpal joined #lisp 2018-07-03T16:26:12Z fikka joined #lisp 2018-07-03T16:26:13Z beach: shka: Yeah. Sorry about that. I am making progress, but not nearly fast enough. 2018-07-03T16:27:52Z Kundry_Wag quit (Remote host closed the connection) 2018-07-03T16:28:18Z shka: beach: nobody can blame you 2018-07-03T16:28:58Z shka: besides, parts of SICL bleed into CLASP already 2018-07-03T16:29:03Z beach: True. 2018-07-03T16:29:10Z beach: And CLISP now as well. 2018-07-03T16:29:21Z shka: CLISP? 2018-07-03T16:29:26Z shka: which part? 2018-07-03T16:29:33Z shka: cleavier? 2018-07-03T16:29:36Z Kundry_Wag joined #lisp 2018-07-03T16:29:40Z beach: Yes, karlosz is writing a Cleavir-based compiler for CLISP. 2018-07-03T16:29:54Z shka: oh 2018-07-03T16:29:58Z shka: this is cool 2018-07-03T16:30:07Z shka: so CLISP will become compiled language 2018-07-03T16:30:10Z beach: And, perhaps jackdaniel will use some stuff as well. 2018-07-03T16:30:12Z shka: *implementaiton 2018-07-03T16:30:30Z beach: shka: Nah, he is still generating code for the bytcode interpreter. 2018-07-03T16:30:37Z shka: btw, what about using Cleavir for something that is not common lisp? 2018-07-03T16:30:51Z shka: how viable would that be? 2018-07-03T16:30:56Z beach: I haven't given it much thought, but it ought to work. 2018-07-03T16:31:03Z shka: hmmm 2018-07-03T16:31:03Z fikka quit (Ping timeout: 265 seconds) 2018-07-03T16:31:06Z Bike: you'd have to basically replace cst-to-ast 2018-07-03T16:31:07Z shka: ok:-) 2018-07-03T16:31:44Z shka: Bike: and what if i want to still use lisp syntax? 2018-07-03T16:32:17Z Bike: i assumed you meant something like scheme 2018-07-03T16:32:24Z shka: ok 2018-07-03T16:32:43Z shka: does not sound all that bad i think 2018-07-03T16:32:48Z shka: ok, i got to go 2018-07-03T16:32:55Z shka: see ya all! 2018-07-03T16:33:07Z megalography quit (Ping timeout: 245 seconds) 2018-07-03T16:36:22Z fikka joined #lisp 2018-07-03T16:36:32Z pjb joined #lisp 2018-07-03T16:36:57Z nxtr joined #lisp 2018-07-03T16:39:18Z littlelisper joined #lisp 2018-07-03T16:39:32Z buffergn0me quit (Ping timeout: 256 seconds) 2018-07-03T16:40:12Z hhdave quit (Ping timeout: 245 seconds) 2018-07-03T16:41:05Z fikka quit (Ping timeout: 248 seconds) 2018-07-03T16:41:46Z Baggers joined #lisp 2018-07-03T16:43:27Z sz0 quit (Quit: Connection closed for inactivity) 2018-07-03T16:43:44Z housel quit (Read error: Connection reset by peer) 2018-07-03T16:44:07Z housel joined #lisp 2018-07-03T16:47:07Z buffergn0me joined #lisp 2018-07-03T16:48:40Z megalography joined #lisp 2018-07-03T16:49:21Z rippa joined #lisp 2018-07-03T16:49:31Z Lauven joined #lisp 2018-07-03T16:52:17Z surya quit (Ping timeout: 248 seconds) 2018-07-03T16:53:59Z littlelisper quit (Ping timeout: 255 seconds) 2018-07-03T16:54:10Z eli_oat joined #lisp 2018-07-03T16:56:24Z fikka joined #lisp 2018-07-03T16:57:32Z quazimodo quit (Ping timeout: 256 seconds) 2018-07-03T16:57:51Z shangul quit (Quit: sudo rm -rf /usr/*) 2018-07-03T16:59:25Z quazimodo joined #lisp 2018-07-03T17:01:05Z fikka quit (Ping timeout: 260 seconds) 2018-07-03T17:03:32Z megalography quit (Ping timeout: 245 seconds) 2018-07-03T17:04:40Z Ukari quit (Remote host closed the connection) 2018-07-03T17:05:25Z Ukari joined #lisp 2018-07-03T17:06:57Z fikka joined #lisp 2018-07-03T17:08:46Z lumm joined #lisp 2018-07-03T17:11:46Z fikka quit (Ping timeout: 264 seconds) 2018-07-03T17:12:00Z m00natic quit (Remote host closed the connection) 2018-07-03T17:14:23Z mflem joined #lisp 2018-07-03T17:15:23Z nxtr quit (Remote host closed the connection) 2018-07-03T17:16:16Z oni-on-ion joined #lisp 2018-07-03T17:16:27Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-03T17:16:38Z buffergn0me quit (Ping timeout: 268 seconds) 2018-07-03T17:16:54Z eli_oat quit (Quit: Leaving.) 2018-07-03T17:17:30Z lumm quit (Ping timeout: 256 seconds) 2018-07-03T17:20:51Z megalography joined #lisp 2018-07-03T17:22:15Z milanj quit (Quit: This computer has gone to sleep) 2018-07-03T17:23:52Z shka_ joined #lisp 2018-07-03T17:24:38Z orivej joined #lisp 2018-07-03T17:26:56Z fikka joined #lisp 2018-07-03T17:28:21Z thodg quit (Ping timeout: 268 seconds) 2018-07-03T17:28:26Z EvW1 joined #lisp 2018-07-03T17:31:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-03T17:37:25Z fikka joined #lisp 2018-07-03T17:37:56Z nanoz quit (Ping timeout: 276 seconds) 2018-07-03T17:41:55Z fikka quit (Ping timeout: 245 seconds) 2018-07-03T17:43:51Z schweers quit (Ping timeout: 240 seconds) 2018-07-03T17:44:08Z lumm joined #lisp 2018-07-03T17:47:27Z fikka joined #lisp 2018-07-03T17:52:11Z fikka quit (Ping timeout: 256 seconds) 2018-07-03T17:55:28Z sctb joined #lisp 2018-07-03T17:55:48Z Domaldel joined #lisp 2018-07-03T17:57:17Z zaquest joined #lisp 2018-07-03T17:57:42Z fikka joined #lisp 2018-07-03T17:57:47Z pierpal quit (Quit: Poof) 2018-07-03T17:58:04Z pierpal joined #lisp 2018-07-03T17:59:49Z patrixl quit (Read error: Connection reset by peer) 2018-07-03T18:02:21Z fikka quit (Ping timeout: 240 seconds) 2018-07-03T18:05:08Z makomo quit (Quit: WeeChat 2.0.1) 2018-07-03T18:06:19Z MichaelRaskin joined #lisp 2018-07-03T18:06:47Z dtornabene quit (Remote host closed the connection) 2018-07-03T18:06:53Z jackdaniel: shka: clisp is and was a compiler for a long time 2018-07-03T18:07:34Z jackdaniel: if not from the beginning. compiling to bytecode is also compilation. what's more, it has JIT to native assembly via library called GNU Lightning 2018-07-03T18:07:50Z fikka joined #lisp 2018-07-03T18:12:14Z Ukari quit (Remote host closed the connection) 2018-07-03T18:12:14Z _death: ls 2018-07-03T18:12:19Z _death: oops 2018-07-03T18:12:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-03T18:12:40Z _death: I've 3 keyboards in front of me atm.. wrong one ;) 2018-07-03T18:13:59Z jackdaniel: Desktop/ Documents/ Downloads/ xxx.lisp holiday.png 2018-07-03T18:14:04Z jackdaniel: oops: no such file or directory 2018-07-03T18:14:05Z EvW1 quit (Ping timeout: 255 seconds) 2018-07-03T18:14:28Z jackdaniel: quote> 2018-07-03T18:15:25Z vap1 joined #lisp 2018-07-03T18:15:25Z vaporatorius joined #lisp 2018-07-03T18:15:29Z gector quit (Read error: Connection reset by peer) 2018-07-03T18:15:37Z nickenchuggets joined #lisp 2018-07-03T18:15:38Z nickenchuggets quit (Changing host) 2018-07-03T18:15:38Z nickenchuggets joined #lisp 2018-07-03T18:16:31Z gector joined #lisp 2018-07-03T18:17:57Z fikka joined #lisp 2018-07-03T18:18:22Z ealfonso joined #lisp 2018-07-03T18:18:56Z _death: sbcl --load xxx.lisp --end-toplevel-options holiday.png 2018-07-03T18:19:14Z jackdaniel: quote> 2018-07-03T18:20:14Z cage_ quit (Quit: Leaving) 2018-07-03T18:20:36Z Ukari joined #lisp 2018-07-03T18:20:43Z megalography quit (Ping timeout: 256 seconds) 2018-07-03T18:21:03Z _death: (dwim) 2018-07-03T18:21:40Z jackdaniel: NIL 2018-07-03T18:22:00Z jackdaniel stops introducing noise, sorry (I had fun though :) 2018-07-03T18:22:47Z fikka quit (Ping timeout: 256 seconds) 2018-07-03T18:25:03Z shka_: gnu Lightning? 2018-07-03T18:25:10Z shka_: isn't that new thing? 2018-07-03T18:25:23Z smaster joined #lisp 2018-07-03T18:27:00Z Bike: as of 2001 2018-07-03T18:27:08Z Bike: though the version 2 was only 2013, i see 2018-07-03T18:28:13Z fikka joined #lisp 2018-07-03T18:28:17Z vap1 quit (Quit: Leaving) 2018-07-03T18:28:20Z shka_: so not that new 2018-07-03T18:28:22Z shka_: ok 2018-07-03T18:30:04Z sauvin quit (Read error: Connection reset by peer) 2018-07-03T18:30:50Z andrei-n quit (Quit: Leaving) 2018-07-03T18:33:22Z fikka quit (Ping timeout: 264 seconds) 2018-07-03T18:35:34Z dim: if anybody is interested, we have a build failure of lparallel on armhf architecture in the debian buildfarm at https://buildd.debian.org/status/fetch.php?pkg=pgloader&arch=armhf&ver=3.5.2-1&stamp=1530634253&raw=0 2018-07-03T18:35:42Z dim: (in the context of compiling pgloader with SBCL) 2018-07-03T18:35:52Z megalography joined #lisp 2018-07-03T18:38:58Z akkad: dim: you still doing active development on that? nice 2018-07-03T18:40:31Z dim: yeah pgloader is my little project, I've been maintaining/improving it for > 10 years now, maybe 13 years or something 2018-07-03T18:46:46Z sctb quit (Quit: rcirc on GNU Emacs 26.1) 2018-07-03T18:47:00Z attila_lendvai quit (Remote host closed the connection) 2018-07-03T18:49:08Z fikka joined #lisp 2018-07-03T18:49:49Z rpg joined #lisp 2018-07-03T18:52:34Z kerframil quit (Quit: Leaving) 2018-07-03T18:52:53Z EvW joined #lisp 2018-07-03T18:53:21Z jibanes quit (Ping timeout: 248 seconds) 2018-07-03T18:54:07Z fikka quit (Ping timeout: 265 seconds) 2018-07-03T18:54:59Z jibanes joined #lisp 2018-07-03T18:57:37Z akkad: hmm MACRO DEFPARAMETER expects between 2 and 3 arguments. It was given 4 arguments. uiop/utility 2018-07-03T18:57:37Z akkad: 2018-07-03T18:59:16Z pierpal quit (Read error: Connection reset by peer) 2018-07-03T18:59:29Z fikka joined #lisp 2018-07-03T19:00:31Z pierpal joined #lisp 2018-07-03T19:03:37Z rpg: akkad: Context? 2018-07-03T19:04:10Z fikka quit (Ping timeout: 260 seconds) 2018-07-03T19:04:12Z warweasle quit (Quit: rcirc on GNU Emacs 24.4.1) 2018-07-03T19:04:17Z akkad: quickloading pgloader 2018-07-03T19:04:28Z akkad: seems an sbclism got in there 2018-07-03T19:04:49Z rpg: what implementation are you using? 2018-07-03T19:05:39Z rpg: holy crap! That loads a LOT of dependencies!! 2018-07-03T19:05:58Z dim: akkad: in pgloader code or uiop/utility? I'm using CCL on a daily basis, so well I'd be surprised if I had SBCL only code in there 2018-07-03T19:06:13Z dim: rpg: yeah it does, I had to make a debian package for each of those, believe me I know 2018-07-03T19:06:25Z lumm quit (Ping timeout: 256 seconds) 2018-07-03T19:06:34Z rpg: akkad: Fails for me with "Attempt to take the value of the unbound variable iterate::*loop-step* on Allegro. 2018-07-03T19:06:53Z rpg: cl-csv doesn't load successfully for me. 2018-07-03T19:07:48Z dim: I tried once on either LispWorks or Allegor (or maybe both) free edition, and failed to load pgloader given the limitations for being free 2018-07-03T19:07:52Z flip214: but ITERATE should be working on all implementations, AFAIR 2018-07-03T19:08:20Z rpg: dim, flip214: I'm using Allegro paid. ITERATE is barfing because there's a COMPILER-LET, which it does not know how to walk.; 2018-07-03T19:09:33Z rpg: I'll try CCL now. 2018-07-03T19:10:28Z pierpal quit (Quit: Poof) 2018-07-03T19:10:34Z Lauven quit (Quit: leaving) 2018-07-03T19:10:40Z Myon: dim: (opening another can of worms) the pgloader build fails on travis with ccl, but work with sbcl 2018-07-03T19:10:46Z pierpal joined #lisp 2018-07-03T19:11:10Z dim: travis is its own can of worms indeed 2018-07-03T19:11:32Z dim: I can't keep up with the changes they make on the setting they offer, so the CI keeps failing and I just don't care anymore :/ 2018-07-03T19:11:36Z rpg: CCL barfs in ironclad ccl-opt x86oid-vm.lisp -- "Unknown X86 instruction (CCL::RETQ)" 2018-07-03T19:11:37Z cpt_nemo quit (Ping timeout: 260 seconds) 2018-07-03T19:11:51Z dim: rpg: on what arch is that? 2018-07-03T19:12:03Z rpg: dim: Mac OS 64-bit 2018-07-03T19:12:23Z cpt_nemo joined #lisp 2018-07-03T19:12:30Z Myon: so maybe we should disable the ccl half then 2018-07-03T19:12:48Z dim: rpg: works here for me both with CCL and SBCL... 2018-07-03T19:13:00Z Bike: whoa, compiler-let? old school 2018-07-03T19:13:07Z rpg: dim: Any chance you have a 32-bit build chain installed? I don't. 2018-07-03T19:13:27Z dim: "Version 1.11-r16635 (DarwinX8664)" 2018-07-03T19:13:28Z rpg: Bike: Looks like maybe the Allegro compiler inserts one. I dunno. 2018-07-03T19:13:56Z rpg: dim: whoops! I still have 1.9. I guess I should get with the program. 2018-07-03T19:14:07Z rpg: Installing it is such a pain, though. 2018-07-03T19:14:15Z dim: rpg: maybe git clone https://github.com/dimitri/pgloader.git ~/quicklisp/local-projects/ and then again? 2018-07-03T19:14:34Z akkad: rpg: allegro here too 2018-07-03T19:14:36Z rpg: dim: I'm just trying to help see if there's really a UIOP bug. 2018-07-03T19:14:44Z Xach: installing ccl is mostly git clone now 2018-07-03T19:14:45Z dim: rpg: brew install clozure-cl 2018-07-03T19:15:04Z dim: thanks for having a look, appreciated 2018-07-03T19:15:13Z rpg: Xach: My problem is that it doesn't have a nice "make install" -- or at least it didn't last time I checked. 2018-07-03T19:15:39Z dim: the build process of CCL is strange and makes it unavailable in debian :/ 2018-07-03T19:15:52Z akkad: rpg: 10.1? 2018-07-03T19:15:59Z rpg: akkad: Yes. 2018-07-03T19:16:25Z rpg: I know there are definitely limits to ITERATE's code-walking. 2018-07-03T19:17:24Z rpg: Hm. Looks like maybe I should be on CCL 1.12 2018-07-03T19:18:00Z flip214: but ITERATE is built to be expanded -- tell it to ignore the COMPILER-LET? (and push the fix upstream)? 2018-07-03T19:18:05Z lumm joined #lisp 2018-07-03T19:19:09Z rpg: flip214: I don't know if the compiler-let is in the source code, or if it is introduced by Franz's compiler. And, given that I was just trying to check for an unrelated UIOP issue, I'm going to ignore this. 2018-07-03T19:19:33Z fikka joined #lisp 2018-07-03T19:19:55Z megalography quit (Ping timeout: 260 seconds) 2018-07-03T19:20:48Z flip214: rpg: ask the vendor to push a fix for ITERATE upstream, please - it would make sense and helps everybody. 2018-07-03T19:21:51Z cpt_nemo quit (Ping timeout: 240 seconds) 2018-07-03T19:21:57Z rpg: flip214: I don't really want to get into debugging cl-csv, TBH. 2018-07-03T19:24:11Z fikka quit (Ping timeout: 256 seconds) 2018-07-03T19:24:49Z xrash joined #lisp 2018-07-03T19:26:57Z grumble quit (Ping timeout: 600 seconds) 2018-07-03T19:27:29Z grumble joined #lisp 2018-07-03T19:27:43Z jmercouris joined #lisp 2018-07-03T19:29:11Z bhyde joined #lisp 2018-07-03T19:29:32Z cpt_nemo joined #lisp 2018-07-03T19:30:00Z fikka joined #lisp 2018-07-03T19:32:25Z rpg: So the CCL page has instructions about how to build the lisp kernel, but not how to rebuild the heap image.... Any pointer? 2018-07-03T19:33:51Z jmercouris: rpg: maybe ask on #ccl 2018-07-03T19:33:53Z rpg: My heap image is too new (I was running with the bleeding edge instead of release). 2018-07-03T19:34:25Z fikka quit (Ping timeout: 248 seconds) 2018-07-03T19:35:26Z megalography joined #lisp 2018-07-03T19:35:43Z varjag joined #lisp 2018-07-03T19:40:27Z fikka joined #lisp 2018-07-03T19:45:21Z fikka quit (Ping timeout: 264 seconds) 2018-07-03T19:49:42Z mindCrime quit (Ping timeout: 265 seconds) 2018-07-03T19:49:57Z Smokitch quit 2018-07-03T19:50:01Z fikka joined #lisp 2018-07-03T19:54:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-03T19:54:44Z vlatkoB quit (Remote host closed the connection) 2018-07-03T19:57:30Z random-nick quit (Read error: Connection reset by peer) 2018-07-03T19:58:21Z josemanuel quit (Quit: leaving) 2018-07-03T19:59:10Z rippa quit (Read error: Connection reset by peer) 2018-07-03T20:00:30Z fikka joined #lisp 2018-07-03T20:01:35Z ealfonso quit (Ping timeout: 276 seconds) 2018-07-03T20:02:01Z Kundry_Wag quit (Remote host closed the connection) 2018-07-03T20:04:09Z Kundry_Wag joined #lisp 2018-07-03T20:04:19Z shka_ quit (Quit: Konversation terminated!) 2018-07-03T20:04:37Z shka_ joined #lisp 2018-07-03T20:04:47Z fikka quit (Ping timeout: 245 seconds) 2018-07-03T20:04:57Z shrdlu68 quit (Ping timeout: 240 seconds) 2018-07-03T20:05:05Z mlf|2 joined #lisp 2018-07-03T20:06:02Z mflem quit (Ping timeout: 245 seconds) 2018-07-03T20:06:14Z Baggers left #lisp 2018-07-03T20:09:19Z shka_ quit (Ping timeout: 256 seconds) 2018-07-03T20:10:42Z fikka joined #lisp 2018-07-03T20:11:08Z thodg joined #lisp 2018-07-03T20:14:00Z pseudonymous quit (Remote host closed the connection) 2018-07-03T20:14:53Z zachk joined #lisp 2018-07-03T20:14:53Z zachk quit (Changing host) 2018-07-03T20:14:53Z zachk joined #lisp 2018-07-03T20:15:22Z fikka quit (Ping timeout: 264 seconds) 2018-07-03T20:18:46Z housel quit (Read error: Connection reset by peer) 2018-07-03T20:19:48Z housel joined #lisp 2018-07-03T20:20:59Z fikka joined #lisp 2018-07-03T20:22:23Z lumm quit (Ping timeout: 276 seconds) 2018-07-03T20:22:30Z thodg quit (Ping timeout: 260 seconds) 2018-07-03T20:22:53Z pierpa joined #lisp 2018-07-03T20:25:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-03T20:28:27Z random-nick joined #lisp 2018-07-03T20:28:49Z Arcaelyx joined #lisp 2018-07-03T20:34:42Z mindCrime joined #lisp 2018-07-03T20:37:21Z pseudonymous joined #lisp 2018-07-03T20:40:47Z fikka joined #lisp 2018-07-03T20:43:13Z kuribas quit (Remote host closed the connection) 2018-07-03T20:44:19Z wigust- quit (Ping timeout: 265 seconds) 2018-07-03T20:45:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-03T20:46:49Z fikka joined #lisp 2018-07-03T20:48:13Z housel quit (Read error: Connection reset by peer) 2018-07-03T20:49:21Z pseudonymous quit (Remote host closed the connection) 2018-07-03T20:49:39Z housel joined #lisp 2018-07-03T20:53:03Z raynold joined #lisp 2018-07-03T20:56:37Z graphene quit (Read error: Connection reset by peer) 2018-07-03T20:56:52Z mfiano: pillton: Hello 2018-07-03T20:57:05Z bjorkintosh joined #lisp 2018-07-03T20:57:33Z mfiano: pillton: How can I change a defstore's lambda list without restarting my image? 2018-07-03T20:58:21Z graphene joined #lisp 2018-07-03T21:10:48Z graphene quit (Remote host closed the connection) 2018-07-03T21:12:12Z graphene joined #lisp 2018-07-03T21:14:02Z hhdave joined #lisp 2018-07-03T21:18:40Z moei quit (Quit: Leaving...) 2018-07-03T21:19:13Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-03T21:19:34Z lnostdal quit (Ping timeout: 264 seconds) 2018-07-03T21:19:40Z nickenchuggets joined #lisp 2018-07-03T21:19:40Z nickenchuggets quit (Changing host) 2018-07-03T21:19:40Z nickenchuggets joined #lisp 2018-07-03T21:25:47Z Naergon joined #lisp 2018-07-03T21:25:57Z Bike quit (Ping timeout: 252 seconds) 2018-07-03T21:28:09Z random-nick is now known as alpha-nick 2018-07-03T21:28:45Z graphene quit (Remote host closed the connection) 2018-07-03T21:28:53Z edgar-rft joined #lisp 2018-07-03T21:30:09Z graphene joined #lisp 2018-07-03T21:34:06Z EvW quit (Ping timeout: 265 seconds) 2018-07-03T21:38:00Z sjl quit (Quit: WeeChat 2.2-dev) 2018-07-03T21:38:33Z hhdave quit (Read error: Connection reset by peer) 2018-07-03T21:38:51Z alpha-nick is now known as random-nick 2018-07-03T21:38:53Z jack_rabbit joined #lisp 2018-07-03T21:38:57Z hhdave joined #lisp 2018-07-03T21:39:50Z milanj joined #lisp 2018-07-03T21:45:08Z LiamH quit (Quit: Leaving.) 2018-07-03T21:46:09Z graphene quit (Remote host closed the connection) 2018-07-03T21:47:33Z graphene joined #lisp 2018-07-03T21:48:43Z anon___ quit (Read error: Connection reset by peer) 2018-07-03T21:51:06Z graphene quit (Read error: Connection reset by peer) 2018-07-03T21:52:28Z paule32 quit (Read error: Connection reset by peer) 2018-07-03T21:52:30Z graphene joined #lisp 2018-07-03T21:52:41Z jmercouris quit (Remote host closed the connection) 2018-07-03T21:53:13Z paul0 joined #lisp 2018-07-03T21:56:59Z hhdave quit (Ping timeout: 256 seconds) 2018-07-03T21:57:23Z pfdietz quit (Ping timeout: 276 seconds) 2018-07-03T22:00:46Z hhdave joined #lisp 2018-07-03T22:03:13Z sjl joined #lisp 2018-07-03T22:06:14Z hhdave quit (Read error: Connection reset by peer) 2018-07-03T22:06:44Z loli joined #lisp 2018-07-03T22:06:49Z hhdave joined #lisp 2018-07-03T22:07:25Z makomo joined #lisp 2018-07-03T22:11:54Z FreeBird_ joined #lisp 2018-07-03T22:12:44Z paule32 joined #lisp 2018-07-03T22:14:26Z FreeBirdLjj quit (Ping timeout: 256 seconds) 2018-07-03T22:18:30Z random-nick quit (Read error: Connection reset by peer) 2018-07-03T22:20:39Z loginoob joined #lisp 2018-07-03T22:24:15Z hhdave quit (Ping timeout: 260 seconds) 2018-07-03T22:24:41Z robotoad quit (Quit: robotoad) 2018-07-03T22:26:20Z nowhereman_ quit (Ping timeout: 256 seconds) 2018-07-03T22:28:06Z moei joined #lisp 2018-07-03T22:29:07Z akkad: anything special required to get sbcl to honor http_proxy env var? 2018-07-03T22:32:07Z robotoad joined #lisp 2018-07-03T22:32:17Z loginoob quit (Remote host closed the connection) 2018-07-03T22:34:57Z pillton: mfiano: make-store-unbound 2018-07-03T22:35:24Z mfiano: pillton: thanks. I'm trying to debug something else with specialization-store right now. 2018-07-03T22:37:21Z mfiano: strangely it seems to be treating an ecase as a case with regard to type inference 2018-07-03T22:38:14Z megalography quit (Ping timeout: 255 seconds) 2018-07-03T22:38:19Z mindCrime quit (Excess Flood) 2018-07-03T22:38:48Z mindCrime joined #lisp 2018-07-03T22:38:56Z pillton: mfiano: Do you have something I can see? 2018-07-03T22:39:10Z mfiano: With the following code, the CLAMP specialization returns a type uncertainty note under SBCL. I can get rid of it be changing (vec4) to (the vec4 (vec4)). The same code works in a defun with the proper ftype declaration. I'm unsure why it's not inferring the type of the 0 case. https://gist.github.com/mfiano/13c533f190c1a12dfe84da143a960fed 2018-07-03T22:39:41Z mooshmoosh quit (Ping timeout: 256 seconds) 2018-07-03T22:40:25Z akkad: music note? 2018-07-03T22:41:03Z mooshmoosh joined #lisp 2018-07-03T22:42:14Z nowhereman_ joined #lisp 2018-07-03T22:42:16Z pillton: mfiano: Specialization store doesn't integrate with type inference. 2018-07-03T22:42:24Z Bike joined #lisp 2018-07-03T22:42:56Z pillton: mfiano: It uses the CLtL2 API to query the environment and is capable of understanding THE forms. 2018-07-03T22:43:33Z patlv joined #lisp 2018-07-03T22:43:35Z pillton: mfiano: I can't compile this example to see what is going on. 2018-07-03T22:43:39Z mfiano: Ah I assume it uses introspect-environment for the few impls it supports? 2018-07-03T22:43:40Z sjl quit (Quit: WeeChat 2.2-dev) 2018-07-03T22:43:48Z pillton: Yes. 2018-07-03T22:44:26Z pillton: mfiano: https://github.com/markcox80/specialization-store/blob/master/src/common.lisp#L25 2018-07-03T22:45:00Z bjorkintosh quit (Quit: Leaving) 2018-07-03T22:45:07Z mfiano: I see. 2018-07-03T22:46:53Z varjag quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2018-07-03T22:47:15Z mfiano: I see. (vec4) is just allocating a zero'd vec4, and determines the return type of the clamp! function. So the type uncertainty is because the specialization declares the return type to be vec4, but since clamp! is going through the specialization protocol, it doesn't know the type without using THE 2018-07-03T22:47:27Z mfiano: No problem. I get it now 2018-07-03T22:47:30Z mfiano: Thanks 2018-07-03T22:52:17Z patlv quit (Ping timeout: 248 seconds) 2018-07-03T22:53:36Z megalography joined #lisp 2018-07-03T22:55:44Z pillton: mfiano: You are welcome. 2018-07-03T22:56:12Z mfiano: pillton: Great job on this library. I tried understanding template-function, but that's too dense for me. 2018-07-03T22:58:51Z pillton: mfiano: Thanks. It took me four years to get it where it is. 2018-07-03T22:59:34Z edgar-rft quit (Quit: edgar-rft) 2018-07-03T22:59:45Z mfiano: I'm trying to use it to rewrite a math library of mine that took me 4 years to get it where it is :) 2018-07-03T23:05:36Z jmarciano joined #lisp 2018-07-03T23:06:30Z fikka quit (Ping timeout: 245 seconds) 2018-07-03T23:06:50Z pillton: mfiano: Send me an email about where you get lost in template-function. 2018-07-03T23:07:22Z pillton: mfiano: I'll see if I can update the documentation to help. 2018-07-03T23:07:38Z mfiano: Ok, I'll re-read it in my free time and let you know. 2018-07-03T23:07:51Z Kundry_Wag quit (Remote host closed the connection) 2018-07-03T23:08:38Z pillton: I tried to pick a problem where the usual response of "just implement a compiler macro" doesn't scale. 2018-07-03T23:10:21Z lavaflow quit (Ping timeout: 240 seconds) 2018-07-03T23:10:31Z pillton: The problem with the problem I picked is that it is only relatable to a small number of people. 2018-07-03T23:11:01Z EvW1 joined #lisp 2018-07-03T23:11:16Z mfiano: Yeah. I think part of the problem was I wasn't sure when to use it over specialization-store directly. It's sort of hard to tell from the documentation where one library ends and the other begins 2018-07-03T23:11:35Z mfiano: But I'll re-read it again and come up with some questions for you 2018-07-03T23:11:37Z fikka joined #lisp 2018-07-03T23:11:39Z lavaflow joined #lisp 2018-07-03T23:12:10Z pillton: Great. 2018-07-03T23:13:17Z brettgilio joined #lisp 2018-07-03T23:16:45Z fikka quit (Ping timeout: 260 seconds) 2018-07-03T23:16:46Z Naergon quit (Ping timeout: 268 seconds) 2018-07-03T23:22:05Z fikka joined #lisp 2018-07-03T23:26:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-03T23:26:50Z makomo quit (Ping timeout: 255 seconds) 2018-07-03T23:29:23Z dim: oh wow, it seems like the errors in travis (for pgloader) are actual errors/regressions 2018-07-03T23:32:07Z fikka joined #lisp 2018-07-03T23:36:43Z fikka quit (Ping timeout: 256 seconds) 2018-07-03T23:37:24Z dim: hehe, CCL build is green again (https://travis-ci.org/dimitri/pgloader/builds/399808445) 2018-07-03T23:37:39Z dim: so I shouldn't have said bad things about travis earlier today it seems, karma and all 2018-07-03T23:38:26Z Kundry_Wag joined #lisp 2018-07-03T23:42:25Z fikka joined #lisp 2018-07-03T23:43:00Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-03T23:44:22Z brettgilio quit (Remote host closed the connection) 2018-07-03T23:44:58Z pillton: Do people investigate the automatic serialization of objects? Are there books on the subject that are language agnostic? 2018-07-03T23:45:41Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-03T23:46:07Z nickenchuggets joined #lisp 2018-07-03T23:47:10Z fikka quit (Ping timeout: 264 seconds) 2018-07-03T23:49:39Z jmarciano left #lisp 2018-07-03T23:50:19Z nicht joined #lisp 2018-07-03T23:51:06Z nicht quit (Remote host closed the connection) 2018-07-03T23:51:30Z nicht joined #lisp 2018-07-03T23:52:42Z fikka joined #lisp 2018-07-03T23:56:18Z nicht quit (Remote host closed the connection) 2018-07-03T23:56:42Z nicht joined #lisp 2018-07-03T23:56:43Z nicht quit (Max SendQ exceeded) 2018-07-03T23:56:46Z graphene quit (Remote host closed the connection) 2018-07-03T23:57:17Z fikka quit (Ping timeout: 245 seconds) 2018-07-03T23:58:11Z graphene joined #lisp 2018-07-03T23:58:22Z smaster quit (Quit: WeeChat 2.1) 2018-07-03T23:58:23Z shifty joined #lisp 2018-07-04T00:02:25Z fikka joined #lisp 2018-07-04T00:07:34Z fikka quit (Ping timeout: 264 seconds) 2018-07-04T00:09:52Z Kundry_Wag joined #lisp 2018-07-04T00:11:09Z Mezzie joined #lisp 2018-07-04T00:11:37Z rpg quit (Quit: Textual IRC Client: www.textualapp.com) 2018-07-04T00:15:09Z Jesin quit (Quit: Leaving) 2018-07-04T00:16:24Z test1600 joined #lisp 2018-07-04T00:22:30Z vitali joined #lisp 2018-07-04T00:22:40Z mindCrime quit (Ping timeout: 260 seconds) 2018-07-04T00:22:42Z fikka joined #lisp 2018-07-04T00:24:09Z vitali quit (Client Quit) 2018-07-04T00:24:14Z Pixel_Outlaw joined #lisp 2018-07-04T00:24:18Z Jesin joined #lisp 2018-07-04T00:24:40Z lima4_ joined #lisp 2018-07-04T00:24:55Z jack_rabbit is now known as knusbaum 2018-07-04T00:27:41Z fikka quit (Ping timeout: 268 seconds) 2018-07-04T00:28:28Z brendyn joined #lisp 2018-07-04T00:29:17Z lima4_ left #lisp 2018-07-04T00:31:27Z aeth quit (Ping timeout: 245 seconds) 2018-07-04T00:32:47Z knusbaum1 quit (Quit: die) 2018-07-04T00:33:38Z aeth joined #lisp 2018-07-04T00:35:29Z markoong quit (Read error: Connection reset by peer) 2018-07-04T00:35:48Z markoong joined #lisp 2018-07-04T00:36:36Z patlv joined #lisp 2018-07-04T00:37:31Z knusbaum is now known as jack_rabbit 2018-07-04T00:38:48Z graphene quit (Remote host closed the connection) 2018-07-04T00:40:08Z graphene joined #lisp 2018-07-04T00:42:27Z markoong quit (Ping timeout: 256 seconds) 2018-07-04T00:43:35Z fikka joined #lisp 2018-07-04T00:48:20Z fikka quit (Ping timeout: 260 seconds) 2018-07-04T00:50:51Z montxero joined #lisp 2018-07-04T00:54:00Z fikka joined #lisp 2018-07-04T00:58:50Z fikka quit (Ping timeout: 260 seconds) 2018-07-04T01:02:46Z patlv quit (Ping timeout: 264 seconds) 2018-07-04T01:04:04Z fikka joined #lisp 2018-07-04T01:09:02Z fikka quit (Ping timeout: 276 seconds) 2018-07-04T01:09:43Z patlv joined #lisp 2018-07-04T01:12:54Z milanj quit (Quit: This computer has gone to sleep) 2018-07-04T01:14:33Z patlv quit (Ping timeout: 268 seconds) 2018-07-04T01:15:08Z thodg joined #lisp 2018-07-04T01:16:37Z Oddity quit 2018-07-04T01:19:20Z EvW1 quit (Ping timeout: 265 seconds) 2018-07-04T01:23:53Z brettgilio joined #lisp 2018-07-04T01:24:14Z fikka joined #lisp 2018-07-04T01:29:05Z fikka quit (Ping timeout: 248 seconds) 2018-07-04T01:32:26Z thodg quit (Ping timeout: 268 seconds) 2018-07-04T01:33:55Z zachk quit (Quit: Leaving) 2018-07-04T01:40:40Z brettgilio quit (Ping timeout: 245 seconds) 2018-07-04T01:42:36Z pjb` joined #lisp 2018-07-04T01:43:57Z pjb quit (Ping timeout: 245 seconds) 2018-07-04T01:44:31Z fikka joined #lisp 2018-07-04T01:44:36Z siraben joined #lisp 2018-07-04T01:45:15Z mindCrime joined #lisp 2018-07-04T01:45:35Z megalography quit (Ping timeout: 240 seconds) 2018-07-04T01:46:35Z pjb`` joined #lisp 2018-07-04T01:47:42Z pjb` quit (Ping timeout: 245 seconds) 2018-07-04T01:48:28Z test1600 quit (Ping timeout: 268 seconds) 2018-07-04T01:48:34Z brettgilio joined #lisp 2018-07-04T01:48:49Z kajo quit (Ping timeout: 265 seconds) 2018-07-04T01:49:18Z Kundry_Wag quit (Remote host closed the connection) 2018-07-04T01:49:26Z patlv joined #lisp 2018-07-04T01:49:32Z balavir joined #lisp 2018-07-04T01:49:38Z fikka quit (Ping timeout: 260 seconds) 2018-07-04T01:49:40Z buffergn0me joined #lisp 2018-07-04T01:49:52Z kajo joined #lisp 2018-07-04T01:51:16Z mathZ joined #lisp 2018-07-04T01:52:34Z brettgilio quit (Remote host closed the connection) 2018-07-04T01:53:15Z pjb``` joined #lisp 2018-07-04T01:54:47Z pjb`` quit (Ping timeout: 245 seconds) 2018-07-04T01:55:37Z mathZ: In maxima, how can i expand cos(a+b) to cos(a)*cos(b) - sin(a)*sin(b) ? 2018-07-04T01:55:50Z mooshmoosh quit (Remote host closed the connection) 2018-07-04T01:56:25Z pjb```` joined #lisp 2018-07-04T01:56:29Z graphene quit (Remote host closed the connection) 2018-07-04T01:56:34Z Kundry_Wag joined #lisp 2018-07-04T01:56:54Z Xach: mathZ: not many (any?) maxima people here, sorry. 2018-07-04T01:57:37Z mathZ: ok 2018-07-04T01:57:48Z graphene joined #lisp 2018-07-04T01:58:16Z pjb``` quit (Ping timeout: 256 seconds) 2018-07-04T01:59:26Z nanoz joined #lisp 2018-07-04T01:59:35Z pjb````` joined #lisp 2018-07-04T01:59:45Z patlv quit (Ping timeout: 264 seconds) 2018-07-04T02:00:01Z ioa quit (Quit: ZNC 1.6.3+deb1 - http://znc.in) 2018-07-04T02:00:02Z Guest67885 quit (Quit: ZNC 1.6.3+deb1 - http://znc.in) 2018-07-04T02:00:08Z megalography joined #lisp 2018-07-04T02:01:10Z ioa joined #lisp 2018-07-04T02:01:40Z mrottenkolber joined #lisp 2018-07-04T02:01:40Z pjb```` quit (Ping timeout: 256 seconds) 2018-07-04T02:01:50Z bjorkintosh joined #lisp 2018-07-04T02:02:04Z mrottenkolber is now known as Guest16746 2018-07-04T02:03:22Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-04T02:04:48Z fikka joined #lisp 2018-07-04T02:05:03Z pjb`````` joined #lisp 2018-07-04T02:06:46Z pjb````` quit (Ping timeout: 256 seconds) 2018-07-04T02:06:48Z graphene quit (Remote host closed the connection) 2018-07-04T02:07:27Z shifty quit (Ping timeout: 240 seconds) 2018-07-04T02:08:11Z graphene joined #lisp 2018-07-04T02:09:02Z robotoad quit (Quit: robotoad) 2018-07-04T02:09:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-04T02:09:38Z thodg joined #lisp 2018-07-04T02:11:10Z megalography quit (Ping timeout: 256 seconds) 2018-07-04T02:15:14Z fikka joined #lisp 2018-07-04T02:15:15Z dddddd quit (Read error: Connection reset by peer) 2018-07-04T02:15:18Z balavir: mathZ: try trigexpad(cos(a+b)) 2018-07-04T02:15:36Z Kundry_Wag joined #lisp 2018-07-04T02:17:32Z pjb`````` quit (Ping timeout: 256 seconds) 2018-07-04T02:19:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-04T02:20:22Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-04T02:22:38Z robotoad joined #lisp 2018-07-04T02:25:18Z fikka joined #lisp 2018-07-04T02:25:41Z Kundry_Wag joined #lisp 2018-07-04T02:25:48Z ebzzry: Xach: will you be able to accept donations? 2018-07-04T02:27:05Z megalography joined #lisp 2018-07-04T02:29:35Z Kundry_Wag_ joined #lisp 2018-07-04T02:30:15Z Kundry_Wag quit (Ping timeout: 245 seconds) 2018-07-04T02:30:25Z fikka quit (Ping timeout: 260 seconds) 2018-07-04T02:31:39Z patlv joined #lisp 2018-07-04T02:34:32Z mathZ: balavir: sorry, just come back. trigexpad(cos(a+b)) => (%o1) trigexpad(cos(b + a)) ? 2018-07-04T02:34:34Z patlv quit (Remote host closed the connection) 2018-07-04T02:34:56Z patlv joined #lisp 2018-07-04T02:35:34Z fikka joined #lisp 2018-07-04T02:36:44Z megalography quit (Ping timeout: 255 seconds) 2018-07-04T02:37:06Z balavir: mathZ: typo, s/tripexpad/trigexpand/ 2018-07-04T02:38:24Z mathZ: balavir: works, thx! 2018-07-04T02:39:07Z AetherWind joined #lisp 2018-07-04T02:39:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-04T02:41:47Z pierpa quit (Quit: Page closed) 2018-07-04T02:41:53Z beach: Good morning everyone! 2018-07-04T02:42:21Z mathZ: morning! 2018-07-04T02:45:37Z fikka joined #lisp 2018-07-04T02:45:56Z Kundry_Wag_ quit (Remote host closed the connection) 2018-07-04T02:46:28Z Kundry_Wag joined #lisp 2018-07-04T02:48:35Z igemnace quit (Ping timeout: 240 seconds) 2018-07-04T02:50:31Z fikka quit (Ping timeout: 256 seconds) 2018-07-04T02:50:41Z kajo quit (Ping timeout: 265 seconds) 2018-07-04T02:50:57Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-04T02:51:08Z megalography joined #lisp 2018-07-04T02:51:41Z kajo joined #lisp 2018-07-04T02:55:51Z fikka joined #lisp 2018-07-04T02:56:24Z nanozz joined #lisp 2018-07-04T02:56:35Z orivej quit (Ping timeout: 240 seconds) 2018-07-04T02:58:42Z shka_ joined #lisp 2018-07-04T02:58:43Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-04T02:58:51Z LdBeth: Good afternoon 2018-07-04T02:59:01Z erratic quit (Ping timeout: 256 seconds) 2018-07-04T02:59:09Z nickenchuggets joined #lisp 2018-07-04T02:59:15Z nickenchuggets quit (Changing host) 2018-07-04T02:59:16Z nickenchuggets joined #lisp 2018-07-04T02:59:45Z nanoz quit (Ping timeout: 264 seconds) 2018-07-04T03:00:28Z fikka quit (Ping timeout: 256 seconds) 2018-07-04T03:02:57Z patlv quit (Ping timeout: 240 seconds) 2018-07-04T03:05:59Z fikka joined #lisp 2018-07-04T03:07:16Z JuanDaugherty joined #lisp 2018-07-04T03:09:43Z pierpal quit (Quit: Poof) 2018-07-04T03:10:06Z pierpal joined #lisp 2018-07-04T03:10:33Z mfiano: pillton: Is it normal for stores with &key to have a &rest gensym in their signature? 2018-07-04T03:10:57Z fikka quit (Ping timeout: 248 seconds) 2018-07-04T03:15:30Z thodg quit (Read error: Connection reset by peer) 2018-07-04T03:18:44Z MoziM quit (Ping timeout: 256 seconds) 2018-07-04T03:20:08Z MoziM joined #lisp 2018-07-04T03:21:21Z Oddity joined #lisp 2018-07-04T03:22:08Z Kundry_Wag joined #lisp 2018-07-04T03:26:06Z fikka joined #lisp 2018-07-04T03:26:27Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-04T03:27:06Z buffergn0me quit (Ping timeout: 256 seconds) 2018-07-04T03:31:12Z fikka quit (Ping timeout: 256 seconds) 2018-07-04T03:32:48Z brendarn joined #lisp 2018-07-04T03:32:52Z pillton: mfiano: Yes. 2018-07-04T03:33:18Z brendyn quit (Ping timeout: 268 seconds) 2018-07-04T03:33:31Z mfiano: pillton: If you got a second, I could use some help writing a specialization 2018-07-04T03:33:37Z pillton: Sure. 2018-07-04T03:34:45Z mfiano: I have this specialization, which is the addition of 2 4-component vectors, writing the result to an existing allocation as to not cons. https://gist.github.com/mfiano/b2f97f175b16dc53f6b812500b49b994 2018-07-04T03:35:06Z mfiano: I'm trying to figure out how to write the last specialization to take an arbitrary number of arguments which calls the first one 2018-07-04T03:36:00Z pierpal quit (Read error: Connection reset by peer) 2018-07-04T03:36:16Z pillton: (defspecialization (+! :inline t) ((out vec4) (in1 vec4) (in2 vec4) (in3 vec4) &rest (more vec4)) vec4) 2018-07-04T03:36:30Z fikka joined #lisp 2018-07-04T03:36:37Z mfiano: and what would the body look like? 2018-07-04T03:36:56Z mfiano: I am getting compiler notes and incorrect functionality with everything i try 2018-07-04T03:39:00Z anon_ joined #lisp 2018-07-04T03:41:46Z fikka quit (Ping timeout: 264 seconds) 2018-07-04T03:41:51Z pillton: (+! out in1 in2) (apply #'+! out in3 more) 2018-07-04T03:42:55Z mfiano: That's not correct 2018-07-04T03:43:56Z pillton: Why isn't it? 2018-07-04T03:44:24Z nanozz quit (Ping timeout: 268 seconds) 2018-07-04T03:44:32Z mfiano: https://gist.github.com/mfiano/25e2c3b3eaf63e20d2ed69bbddfd9a38 2018-07-04T03:44:48Z mfiano: 2nd 2 are not expected 2018-07-04T03:45:05Z mfiano: last 2 i mean 2018-07-04T03:45:47Z graphene quit (Remote host closed the connection) 2018-07-04T03:47:07Z graphene joined #lisp 2018-07-04T03:48:00Z pillton: Because there is no arity 2 specialization. 2018-07-04T03:50:16Z mfiano: Hmm 2018-07-04T03:50:26Z mfiano: I'm getting confused. Might need a break 2018-07-04T03:51:12Z mfiano: But there shouldn't be an arity 2. smallest arity should be 3, since it's non-consing 2018-07-04T03:53:10Z pillton: The problem is the way you have defined the first specialization. You should make it out = out + in1 + in2. Then the problem goes away. 2018-07-04T03:54:04Z pillton: Or alternatively process the rest arguments of the second specialization such that it makes sense. 2018-07-04T03:54:23Z mfiano: Hmm 2018-07-04T03:55:21Z pillton: mfiano: I added an example which works. 2018-07-04T03:56:24Z mfiano: Reading, thanks. 2018-07-04T03:56:32Z fikka joined #lisp 2018-07-04T03:56:47Z graphene quit (Remote host closed the connection) 2018-07-04T03:58:09Z graphene joined #lisp 2018-07-04T03:59:24Z pillton: mfiano: I added a second example which implements the original API you wrote. 2018-07-04T04:00:17Z megalography quit (Ping timeout: 265 seconds) 2018-07-04T04:00:39Z mfiano: Still not quite what I was looking for 2018-07-04T04:01:02Z fikka quit (Ping timeout: 245 seconds) 2018-07-04T04:01:04Z pillton: You haven't explained what you were looking for. 2018-07-04T04:01:39Z mfiano: If I do: (let ((v (vec4 1 1 1 1))) (+! v v v)) I expect v + v to be written to v, so v has a final value of #(2 2 2 2). Instead it has #(4 4 4 4) 2018-07-04T04:01:57Z mfiano: That's how my existing library works anyway 2018-07-04T04:03:16Z pillton: Oh right. That is easy to fix. 2018-07-04T04:04:20Z skapata quit (Remote host closed the connection) 2018-07-04T04:04:41Z milanj joined #lisp 2018-07-04T04:06:06Z pillton: The &rest specialization won't be non consing because you have to allocate a temporary to store the addition. 2018-07-04T04:06:54Z mfiano: Hmm 2018-07-04T04:07:01Z fikka joined #lisp 2018-07-04T04:08:26Z pillton: Oh wait. 2018-07-04T04:09:00Z LdBeth: Why not use REDUCE? 2018-07-04T04:09:40Z aeth: Reduce for operations on a short vector of known length? The problem is no compiler afaik loop unrolls here. 2018-07-04T04:09:55Z shka_: sbcl? 2018-07-04T04:10:03Z aeth: Using reduce will provide a shorter disassembly, but slightly slower code. Even in SBCL. 2018-07-04T04:10:10Z aeth: Unless that got patched in the past year. 2018-07-04T04:10:13Z doesthiswork quit (Quit: Leaving.) 2018-07-04T04:10:16Z shka_: well ok 2018-07-04T04:10:29Z aeth: It'll loop over vectors of length 3 and 4 with known length. 2018-07-04T04:10:43Z shka_: ok, good to know 2018-07-04T04:10:56Z aeth: I'm not sure what the optimal length is for loop unrolling if you want speed over compactness, but I don't think SBCL tries. 2018-07-04T04:11:04Z mfiano: pillton: ok 2018-07-04T04:11:09Z pillton: mfiano: There you go. 2018-07-04T04:11:17Z pillton: mfiano: Third comment. 2018-07-04T04:11:45Z fikka quit (Ping timeout: 248 seconds) 2018-07-04T04:12:14Z littlelisper joined #lisp 2018-07-04T04:12:18Z pillton: I stuffed it again. 2018-07-04T04:12:36Z mfiano: Thanks 2018-07-04T04:12:40Z mfiano: Reading 2018-07-04T04:12:46Z doesthiswork joined #lisp 2018-07-04T04:13:28Z aeth: What I personally do is have a custom setf taking in multiple values that becomes a psetf for lengths 2, 3, and 4 and then I use reduce for longer ones. 2018-07-04T04:14:22Z pillton: mfiano: Ok I fixed it. 2018-07-04T04:16:27Z pillton: This interface doesn't make sense in my opinion. 2018-07-04T04:16:42Z mfiano: Oh? 2018-07-04T04:18:21Z wigust joined #lisp 2018-07-04T04:20:45Z Domaldel quit (Quit: Leaving) 2018-07-04T04:20:58Z mfiano: Yeah that method is not going to scale well to quaternions and matrices. 2018-07-04T04:21:04Z mfiano: and dual quaternions 2018-07-04T04:21:10Z pillton: You require the introduction of a temporary variable to store the addition of the arguments. I avoided having to allocate a new vec4 by looping over each element and using a lexical variable to store the summation. 2018-07-04T04:22:13Z pillton: You are going to get a performance hit since you are not captialising on locality of reference. 2018-07-04T04:22:42Z mfiano: Looks like I should just forget about variadic arithmetic, which was my whole use-case for trying this library. 2018-07-04T04:23:06Z pillton: So you either cons and captialise on locality of reference, or not cons and do not. 2018-07-04T04:24:53Z littlelisper quit (Quit: leaving) 2018-07-04T04:25:16Z pierpal joined #lisp 2018-07-04T04:25:31Z JuanDaugherty quit (Quit: Exeunt) 2018-07-04T04:26:34Z pillton: You still need a library like specialization store to do what you are doing. Consider the axpy operation in BLAS i.e. Y := aX + Y. It is defined for vectors of numbers but you need specializations to make it fast for subtypes of the NUMBER type like single floats and double floats. 2018-07-04T04:27:00Z fikka joined #lisp 2018-07-04T04:27:35Z mfiano: Oh, this library will only be for aggregates of single-floats 2018-07-04T04:32:05Z pierpal quit (Ping timeout: 240 seconds) 2018-07-04T04:32:10Z fikka quit (Ping timeout: 264 seconds) 2018-07-04T04:33:54Z nopf quit (Remote host closed the connection) 2018-07-04T04:34:00Z fikka joined #lisp 2018-07-04T04:34:50Z pillton: Then there is no real need for you to use it then. 2018-07-04T04:35:25Z mfiano: The other reason was so that I could have the same package/symbol for different aggregate types, like vec3, mat4x4, etc 2018-07-04T04:35:59Z mfiano: The problem there though is that mat2x2 and vec4 are the same type 2018-07-04T04:38:23Z erratic joined #lisp 2018-07-04T04:38:45Z fikka quit (Ping timeout: 264 seconds) 2018-07-04T04:43:29Z cpape quit (Ping timeout: 256 seconds) 2018-07-04T04:46:59Z Bike quit (Quit: Lost terminal) 2018-07-04T04:47:06Z Marumarsu joined #lisp 2018-07-04T04:48:13Z shangul joined #lisp 2018-07-04T04:50:12Z al-damiri quit (Quit: Connection closed for inactivity) 2018-07-04T04:51:29Z Marumarsu quit (Read error: Connection reset by peer) 2018-07-04T04:54:19Z fikka joined #lisp 2018-07-04T04:54:22Z MoziM quit (Ping timeout: 264 seconds) 2018-07-04T04:56:12Z sabrac joined #lisp 2018-07-04T04:56:36Z MoziM joined #lisp 2018-07-04T04:56:50Z shangul quit (Ping timeout: 260 seconds) 2018-07-04T04:59:02Z fikka quit (Ping timeout: 256 seconds) 2018-07-04T04:59:53Z doesthiswork quit (Quit: Leaving.) 2018-07-04T05:00:47Z pillton: I suggest not making them the same type. 2018-07-04T05:01:23Z mfiano: Well that's a problem in itself 2018-07-04T05:01:51Z mfiano: This library is designed for cl-opengl, where these types are passed wholesale as flat arrays 2018-07-04T05:02:06Z vlatkoB joined #lisp 2018-07-04T05:02:30Z khrbt quit (Quit: ZNC 1.6.5 - http://znc.in) 2018-07-04T05:02:31Z pillton: Then restrict that to the interface between your code and cl-opengl. 2018-07-04T05:02:37Z khrbt joined #lisp 2018-07-04T05:03:41Z aeth: pillton: Generally I solve the cons vs. no-cons dilemma by implementing both and leaving it up to the user. 2018-07-04T05:04:41Z fikka joined #lisp 2018-07-04T05:04:55Z pillton: aeth: That is what I do as well. 2018-07-04T05:09:53Z fikka quit (Ping timeout: 265 seconds) 2018-07-04T05:13:46Z graphene quit (Remote host closed the connection) 2018-07-04T05:14:50Z fikka joined #lisp 2018-07-04T05:15:07Z graphene joined #lisp 2018-07-04T05:19:52Z fikka quit (Ping timeout: 256 seconds) 2018-07-04T05:20:28Z shangul joined #lisp 2018-07-04T05:25:03Z fikka joined #lisp 2018-07-04T05:29:06Z sauvin joined #lisp 2018-07-04T05:29:37Z fikka quit (Ping timeout: 248 seconds) 2018-07-04T05:30:40Z Mezzie quit (Ping timeout: 260 seconds) 2018-07-04T05:35:27Z mfiano: pillton: I ran into a problem 2018-07-04T05:35:57Z Inline quit (Quit: Leaving) 2018-07-04T05:36:06Z Pixel_Outlaw quit (Quit: Leaving) 2018-07-04T05:40:48Z mfiano: pillton: The first one should be destructive. The second one should just allocate a new zero vector. I'm not sure why the firist specialization is not being called: https://gist.github.com/mfiano/15c233d147f7e9c4b08aee4beedc176a 2018-07-04T05:40:54Z Kundry_Wag joined #lisp 2018-07-04T05:43:11Z pillton: What does it do with ((out null)) instead of (out)? 2018-07-04T05:43:18Z SaganMan: Morning Peeps 2018-07-04T05:43:28Z nickenchuggets quit (Quit: Leaving) 2018-07-04T05:43:56Z mfiano: pillton: the null one is always dispatched 2018-07-04T05:44:03Z mfiano: the problem is the vec4 specialization is never called 2018-07-04T05:45:05Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-04T05:45:08Z fikka joined #lisp 2018-07-04T05:46:34Z mfiano: pillton: This is only a problem when there are only optional arguments. I cannot reproduce if i make the store function have a required parameter first 2018-07-04T05:46:36Z mfiano: maybe a bug? 2018-07-04T05:47:48Z shangul quit (Quit: sudo rm -rf /usr/*) 2018-07-04T05:50:29Z fikka quit (Ping timeout: 276 seconds) 2018-07-04T05:51:01Z lavaflow quit (Quit: WeeChat 2.1) 2018-07-04T05:51:33Z buffergn0me joined #lisp 2018-07-04T05:51:56Z pillton: Ah. It has to be ((out null)). 2018-07-04T05:52:09Z pillton: You need to delete the specialization that was (out). 2018-07-04T05:52:33Z mfiano: How do I do that, just make the store unbound? 2018-07-04T05:53:36Z lnostdal joined #lisp 2018-07-04T05:53:47Z pillton: That will do. There is a way to do it, but it would take me longer to type. 2018-07-04T05:54:11Z flamebeard joined #lisp 2018-07-04T05:54:26Z dcluna quit (Ping timeout: 256 seconds) 2018-07-04T05:54:42Z fifi-v joined #lisp 2018-07-04T05:54:44Z pillton: The specialization with (out) is equivalent to ((out t)). When the let form is compiled, the store compiler macro determines that the argument is of type T and inlines the call. 2018-07-04T05:55:23Z mfiano: Ah that makes sense. 2018-07-04T05:55:26Z mfiano: Thank you. 2018-07-04T05:56:10Z dcluna joined #lisp 2018-07-04T05:56:20Z pillton: In the future, can you please paste me code that I can run. 2018-07-04T05:56:31Z mfiano: Sure. 2018-07-04T05:56:44Z pillton: You are making me work too hard. 2018-07-04T05:56:53Z fifi-v left #lisp 2018-07-04T06:00:11Z johnnymacs joined #lisp 2018-07-04T06:03:48Z mindCrime_ joined #lisp 2018-07-04T06:04:04Z pillton: :) 2018-07-04T06:05:31Z fikka joined #lisp 2018-07-04T06:10:30Z fikka quit (Ping timeout: 260 seconds) 2018-07-04T06:11:10Z igemnace joined #lisp 2018-07-04T06:16:01Z gector quit (Read error: Connection reset by peer) 2018-07-04T06:16:45Z gector joined #lisp 2018-07-04T06:19:30Z pillton: mfiano: You can see the specializations for a given function using (store-specializations (find-store 'zero)). 2018-07-04T06:19:59Z mfiano: Thanks. 2018-07-04T06:21:50Z MoziM: are elisp questions allowed here? 2018-07-04T06:22:25Z pillton: MoziM: You should try in #emacs. This channel is about common lisp. 2018-07-04T06:22:54Z pillton: I think elisp questions are tolerated if they are to do with SLIME though. 2018-07-04T06:23:01Z mfiano: I'm really having fun with this library. I'm sort of mixing functionality of specialization-store and trivia pattern matching to do some nice things. 2018-07-04T06:25:27Z MoziM: pillton: err nvm... i just figured it out, what i thought was an elisp + 2018-07-04T06:25:46Z fikka joined #lisp 2018-07-04T06:25:54Z MoziM: err part of elisp like '+' or '-' was just a stupid local variable name... 2018-07-04T06:25:58Z mindCrime_ quit (Ping timeout: 268 seconds) 2018-07-04T06:26:06Z MoziM: (dotimes (_ (if (numberp NUM) (abs NUM) 5 )) 2018-07-04T06:26:18Z MoziM: the '_' threw me off 2018-07-04T06:26:50Z johnnymacs quit (Ping timeout: 260 seconds) 2018-07-04T06:30:17Z scymtym quit (Ping timeout: 268 seconds) 2018-07-04T06:30:21Z fikka quit (Ping timeout: 240 seconds) 2018-07-04T06:33:04Z MichaelRaskin quit (Quit: MichaelRaskin) 2018-07-04T06:34:46Z FreeBird_ quit (Remote host closed the connection) 2018-07-04T06:34:57Z siraben quit (Ping timeout: 240 seconds) 2018-07-04T06:36:21Z fikka joined #lisp 2018-07-04T06:36:49Z bjorkintosh quit (Ping timeout: 248 seconds) 2018-07-04T06:37:25Z shrdlu68 joined #lisp 2018-07-04T06:39:10Z montxero quit (Quit: leaving) 2018-07-04T06:39:12Z EvW joined #lisp 2018-07-04T06:40:35Z lnostdal quit (Ping timeout: 240 seconds) 2018-07-04T06:40:47Z wheelsucker quit (Ping timeout: 256 seconds) 2018-07-04T06:40:51Z fikka quit (Ping timeout: 240 seconds) 2018-07-04T06:43:21Z merodix joined #lisp 2018-07-04T06:47:05Z deng_cn joined #lisp 2018-07-04T06:53:59Z mathZ quit (Remote host closed the connection) 2018-07-04T06:54:00Z mlf|2 quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2018-07-04T06:54:04Z shrdlu68 quit (Ping timeout: 256 seconds) 2018-07-04T06:54:45Z Smokitch joined #lisp 2018-07-04T06:56:06Z Murii joined #lisp 2018-07-04T07:01:03Z Deathspe11 left #lisp 2018-07-04T07:02:51Z makomo joined #lisp 2018-07-04T07:04:02Z EvW quit (Ping timeout: 255 seconds) 2018-07-04T07:04:05Z Murii is now known as Murii_ 2018-07-04T07:04:25Z schweers joined #lisp 2018-07-04T07:07:11Z ebrasca quit (Ping timeout: 255 seconds) 2018-07-04T07:07:24Z ebrasca joined #lisp 2018-07-04T07:07:28Z nanoz joined #lisp 2018-07-04T07:11:30Z vertigo quit (Ping timeout: 256 seconds) 2018-07-04T07:14:03Z vertigo joined #lisp 2018-07-04T07:17:33Z fikka joined #lisp 2018-07-04T07:20:50Z scymtym joined #lisp 2018-07-04T07:21:51Z fikka quit (Ping timeout: 240 seconds) 2018-07-04T07:25:21Z shka_ quit (Ping timeout: 256 seconds) 2018-07-04T07:27:10Z fikka joined #lisp 2018-07-04T07:28:57Z SaganMan quit (Ping timeout: 240 seconds) 2018-07-04T07:31:56Z fikka quit (Ping timeout: 255 seconds) 2018-07-04T07:33:12Z shrdlu68 joined #lisp 2018-07-04T07:35:20Z fikka joined #lisp 2018-07-04T07:35:56Z dddddd joined #lisp 2018-07-04T07:42:30Z matchray is now known as meowray 2018-07-04T07:45:17Z Demosthenex joined #lisp 2018-07-04T07:45:42Z Demosthenex: hrm. i was looking at cl-ncurses, cl-charms, and croatoan, and none seem to provide a link to the ncurses forms library. is there an alternative? 2018-07-04T07:46:12Z nowhereman_ quit (Ping timeout: 256 seconds) 2018-07-04T07:48:12Z Demosthenex: i'm setting up my cl environment again, i missed slime. ;] found great instructions for running ncurses apps in another terminal and linking into emacs for testing 2018-07-04T07:53:11Z jackdaniel: Demosthenex: forms bindings are not written in cl-charms 2018-07-04T07:53:17Z jackdaniel: nor lpanel and the third one 2018-07-04T07:53:43Z jackdaniel: I've written samll "crash course" for cl-charms if you are interested: http://turtleware.eu/posts/cl-charms-crash-course.html 2018-07-04T07:54:07Z spiaggia joined #lisp 2018-07-04T07:56:50Z Demosthenex: jackdaniel: i had just read that =] 2018-07-04T07:57:09Z Demosthenex: thing is, i just want to get some personal best practices for writing fast TUI CRUDs... 2018-07-04T07:58:30Z heisig joined #lisp 2018-07-04T08:04:48Z milanj quit (Quit: This computer has gone to sleep) 2018-07-04T08:05:53Z xrash quit (Ping timeout: 248 seconds) 2018-07-04T08:12:47Z kristof joined #lisp 2018-07-04T08:14:33Z kristof: I have just learned that you can capture a go tag in a closure, pass that closure into a function, and still execute that function which will "jump" to the go tag, even though the go tag is not in lexical scope (because the tag has dynamic extent. This at least works on clisp. 2018-07-04T08:15:10Z kristof: Does anyone know of anything cool you could do with that? 2018-07-04T08:15:35Z buffergn0me quit (Ping timeout: 240 seconds) 2018-07-04T08:15:35Z loke: kristof: Yes. as long as it still is within its dynamic extent 2018-07-04T08:16:07Z kristof: Seems like it might be interesting for factoring out (and composing separate) state machines.. 2018-07-04T08:16:30Z loke: kristof: it's one way of doing it, sure. :-) 2018-07-04T08:17:03Z loke: More common is to simply have the state machine being a huge ECASE form. 2018-07-04T08:17:15Z kristof: Yes, probably. 2018-07-04T08:17:29Z kristof: I have no idea why I would want to capture a go tag then, haha. 2018-07-04T08:20:21Z jackdaniel: kristof: it is not portable 2018-07-04T08:20:27Z jackdaniel: you may be interested in reading http://www.lispworks.com/documentation/HyperSpec/Issues/iss152_w.htm 2018-07-04T08:20:42Z jackdaniel: nice cleanup issue about exit-extent 2018-07-04T08:21:04Z jackdaniel: most (if not all) CL systems implement medium-extent afaik, but minimal-extent would be also conforming 2018-07-04T08:21:30Z Demosthenex: jackdaniel: seems a shame to reimplement forms functionality if ncurses has it already ;] 2018-07-04T08:22:18Z jackdaniel: Demosthenex: yes, given enought time™ I've wanted to make a contribution to cl-charms adding bindings in question 2018-07-04T08:22:30Z Demosthenex: jackdaniel: know an alternative? 2018-07-04T08:22:32Z spiaggia: kristof: The go tag *is* in lexical scope. Otherwise the code won't compile. 2018-07-04T08:22:41Z Demosthenex: i'm a newb a the lib scene :P 2018-07-04T08:22:43Z jackdaniel: but I'm time deprived unfortunately, I still have some PR to review and other things 2018-07-04T08:23:00Z jackdaniel: Demosthenex: the easiest road would be providing bindings to cl-charms/ll via cffi 2018-07-04T08:23:06Z kristof: Interesting, thanks jackdaniel 2018-07-04T08:23:08Z jackdaniel: there isn't that many functions to add 2018-07-04T08:23:16Z Demosthenex: i wouldn't ask more time, and i like the tutorial. just looking for whats available instead of reinventing 2018-07-04T08:23:41Z spiaggia: jackdaniel: It *is* portable as long as the tag has not been abandoned. 2018-07-04T08:23:54Z jackdaniel: Demosthenex: as I said, making contribution to cl-charms library with bindings to form/panel (as an optional system to load) is the best course of action 9imho) 2018-07-04T08:24:13Z Demosthenex: jackdaniel: guess its a better use of time to learn a bit about cffi than reinventing ;] 2018-07-04T08:24:16Z Demosthenex: i'll look at it 2018-07-04T08:24:20Z jackdaniel: spiaggia: what do you mean by "abandoned" in this context? 2018-07-04T08:24:55Z jackdaniel: ah, the term is explained in the writeup 2018-07-04T08:25:20Z spiaggia: Yeah. 2018-07-04T08:26:02Z spiaggia: But kristof used some strange terminology. The tag is still in the lexical scope. 2018-07-04T08:26:06Z nowhereman_ joined #lisp 2018-07-04T08:26:54Z varjag joined #lisp 2018-07-04T08:27:25Z kristof: That was in error, what I meant was that the invocation of the closure occurs in a place where the go tag is not in lexical scope, which is sort of a trivial thing to say when it relates to the capture of variables, but for a go tag that behavior is quite surprising. 2018-07-04T08:27:41Z shrdlu68 quit (Ping timeout: 256 seconds) 2018-07-04T08:29:02Z kristof: Some of these examples are quite interesting, especially the ones with unwind-protect. I hadn't ever considered these kinds of situations before. 2018-07-04T08:29:15Z MoziM quit (Quit: WeeChat 2.1) 2018-07-04T08:30:33Z aeth: I'd try running your test case on as many implementations as possible (roswell is good for this) 2018-07-04T08:31:24Z loke: aeth: I'm pretty sure the precise usae case noted by kristof is documented in the CLHS 2018-07-04T08:31:41Z spiaggia: kristof: If the go tag is not in lexical scope, your program won't compile, like I said. 2018-07-04T08:31:49Z robotoad quit (Quit: robotoad) 2018-07-04T08:32:28Z spiaggia: kristof: Lexical scope is a static thing. You can determine it by looking at the code of your program. 2018-07-04T08:32:53Z loke: spiaggia: what he is surprised about is the fact that you can leave lexical scope, and then return to it, and even is such case the GO works. 2018-07-04T08:33:26Z spiaggia: YOU CAN'T LEAVE THE LEXICAL SCOPE. IT IS STATICALLY DEFINED. 2018-07-04T08:33:37Z kristof: Now, now. No need to get testy. 2018-07-04T08:34:04Z loke: spiaggia: You can: (let ((x ...)) (im-leaving-the-scope-now)) 2018-07-04T08:34:17Z loke: (defun im-leaving-the-scope-now () (im not in scope of X now)) 2018-07-04T08:34:32Z jackdaniel: loke: function definition was never in lexical scope you have mentioned 2018-07-04T08:34:44Z jackdaniel: so it has never left it 2018-07-04T08:34:55Z shka: yup 2018-07-04T08:35:01Z loke: jackdaniel: Right, but the execution has moves to part of the code that is not in the lexical scope 2018-07-04T08:35:09Z spiaggia: loke: Fine. But then the program won't compile, because the tag would be referred to in the (im not in...) 2018-07-04T08:35:14Z shka: loke: lexical scope is mostly compilation thing 2018-07-04T08:35:19Z shka: not runtime thing 2018-07-04T08:35:27Z jackdaniel: I think that you mix up terminology what is highly confusing 2018-07-04T08:35:38Z jackdaniel: (to me at least) 2018-07-04T08:35:58Z loke: spiaggia: right, but what he does is this: (tagbody (labels ((foo () (go X))) (leaving #'foo) ...) 2018-07-04T08:36:11Z loke: then you can do (defun leaving (fn) (funcall fn)) 2018-07-04T08:36:15Z spiaggia: kristof: I think what you mean is that the tag has been "abandoned" by the fact that the invocation that created it is no longer active. 2018-07-04T08:36:27Z milanj joined #lisp 2018-07-04T08:37:07Z jackdaniel: kristof: if I understand correctly you are amused, that closure defined in a lexical scope of a tag, executed in a dynamic extent of this tag works, while when closure leaves this dynamic extent – it ceases working 2018-07-04T08:37:13Z spiaggia: loke: I think he means that CLISP allows him to GO to a label, even though, as an exit point, it has been abandoned. 2018-07-04T08:37:24Z kristof: I think that's what I meant to say, right. 2018-07-04T08:37:40Z kristof: loke's code is what I was referring to. 2018-07-04T08:37:40Z loke: I see. I had no idea there was any Lisp that allowed that. 2018-07-04T08:37:43Z spiaggia: kristof: That is NOT portable. It is undefined behavior. 2018-07-04T08:37:51Z loke: My code is allowed 2018-07-04T08:37:56Z spiaggia: Sure. 2018-07-04T08:38:15Z spiaggia: I just wanted to set kristof straight, so that we can all understand what he is doing. 2018-07-04T08:38:15Z loke: But if you try to call that closure outside, after the tagbody ias abanodnded, you should get an error 2018-07-04T08:38:24Z loke: (it's undefined behaviour if I'm not mistaken) 2018-07-04T08:38:37Z spiaggia: loke: Yes, so no error required. 2018-07-04T08:39:38Z loke: spiaggia: I'm not too familiar with Scheme, but I believe that if one really wants to do that, you need to use call-with-current-continuation 2018-07-04T08:39:49Z spiaggia: Indeed. 2018-07-04T08:39:50Z loke: In Scheme, not CL 2018-07-04T08:40:33Z robotoad joined #lisp 2018-07-04T08:41:07Z housel quit (Remote host closed the connection) 2018-07-04T08:41:16Z random-nick joined #lisp 2018-07-04T08:42:07Z shka: if you need to do stuff like that, just use functions 2018-07-04T08:42:22Z jackdaniel: what do you mean? 2018-07-04T08:43:24Z shka: go from closure to outer env 2018-07-04T08:43:54Z shka: you can enclose multiple functions over each other with labels 2018-07-04T08:44:38Z shka: it is not exactly the same thing, but it can fullfill the same purpose 2018-07-04T08:45:01Z jackdaniel: I think that kristof has said explicitly, that he find it amusing but can't find a practical purpose for such practice 2018-07-04T08:45:14Z shka: oh, ok 2018-07-04T08:45:35Z jackdaniel: so it was mostly backlog passage about exit-extent, scopes and terminology 2018-07-04T08:45:44Z _cosmonaut_ joined #lisp 2018-07-04T08:46:13Z shka: i see 2018-07-04T08:46:57Z shka: i was going to point toward pandoric macros, but i guess it is irrelevant 2018-07-04T08:46:57Z kristof: I'm not sure how the compiler even keeps track of it. Is there runtime information associated with gotags that are active? 2018-07-04T08:47:16Z xantoz quit (Ping timeout: 256 seconds) 2018-07-04T08:49:31Z johnnymacs joined #lisp 2018-07-04T08:49:33Z xantoz joined #lisp 2018-07-04T08:49:38Z spiaggia: kristof: In a Common Lisp implementation that tries to signal an error when a go tag is abandoned, yes, such information is kept. 2018-07-04T08:49:58Z kristof: If go tags are non-escaping then (go tag) is a mere branch but if it is escaping, then you kind of need a complicated bureaucracy to keep track of when it's valid to jump or not... 2018-07-04T08:50:16Z kristof: I see. Well, I'll be sure to not write code that bizarre. :P 2018-07-04T08:51:30Z spiaggia: Even if they are not escaping, and they are nested inside another function, the GO is not trivial. All intervening stack frames must be popped, and UNWIND-PROTECTs must be executed. 2018-07-04T08:52:06Z wigust- joined #lisp 2018-07-04T08:54:19Z spiaggia: kristof: As in (tagbody label ... (flet ((fun (...) (go label))) (fun ...))) 2018-07-04T08:54:47Z spiaggia: kristof: Here, FUN is not escaping. It is only called. 2018-07-04T08:55:09Z kristof: You're right, I spoke too soon. 2018-07-04T08:55:33Z wigust quit (Ping timeout: 264 seconds) 2018-07-04T08:56:18Z spiaggia: kristof: The best way of learning this stuff is to work on some implementation. 2018-07-04T08:56:39Z kristof: Do you work on one? 2018-07-04T08:59:26Z rippa joined #lisp 2018-07-04T09:00:26Z xificurC quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2018-07-04T09:00:45Z dmiles quit (Ping timeout: 256 seconds) 2018-07-04T09:03:20Z nanoz quit (Ping timeout: 265 seconds) 2018-07-04T09:04:33Z logicmoo joined #lisp 2018-07-04T09:06:42Z spiaggia: Er, yes. Lo] 2018-07-04T09:06:45Z spiaggia: sorry 2018-07-04T09:07:00Z spiaggia: look up "spiaggia" in your Italian-English dictionary. 2018-07-04T09:07:06Z pierpal joined #lisp 2018-07-04T09:07:54Z TMA: spiaggia: Spiaggia is a restaurant in Chicago on North Michigan Avenue. 2018-07-04T09:07:54Z loke: Or in a Swedish dictionary 2018-07-04T09:08:27Z spiaggia: TMA: Oh, nice! Italian, I presume? 2018-07-04T09:08:42Z lumm joined #lisp 2018-07-04T09:08:58Z MoziM joined #lisp 2018-07-04T09:09:10Z spiaggia: minion: Please tell kristof about SICL. 2018-07-04T09:09:10Z minion: kristof: SICL: SICL is a (perhaps futile) attempt to re-implement Common Lisp from scratch, hopefully using improved programming and bootstrapping techniques. See https://github.com/robert-strandh/SICL 2018-07-04T09:10:29Z kristof: Oh, haha. I did not recognize the nick. 2018-07-04T09:10:49Z spiaggia: I have a new computer, so I needed a second nick. 2018-07-04T09:10:56Z kristof: I apologize for calling you testy earlier, and for being imprecise with my vocabulary. 2018-07-04T09:11:05Z xificurC joined #lisp 2018-07-04T09:11:06Z spiaggia: No worries. 2018-07-04T09:11:11Z kristof: To a compiler writer that would be very annoying indeed. 2018-07-04T09:12:09Z spiaggia: I think one of the strong points of #lisp is that we can avoid many meaningless discussions by using accepted terminology. 2018-07-04T09:12:15Z nanoz joined #lisp 2018-07-04T09:13:01Z jackdaniel: this may be considered as disadventage, because newcomers may be frequently bashed and disheartened to carry on after a short period of time 2018-07-04T09:13:14Z kristof: I have no excuse, I'm not so new. 2018-07-04T09:13:16Z jackdaniel: (and since they are newcomers it is hard to expect of them to know the correct terminology right of the bat) 2018-07-04T09:13:44Z spiaggia: jackdaniel: Well, we try to use a soft tone of voice when we explain it to them. 2018-07-04T09:13:57Z _cosmonaut_ quit (Ping timeout: 245 seconds) 2018-07-04T09:14:13Z cpape joined #lisp 2018-07-04T09:14:14Z spiaggia: jackdaniel: I think it would be worse NOT TO explain it to them. 2018-07-04T09:15:16Z jackdaniel: in contrast to "we", there is a reasonable amount of "they" who do not use a soft tone. also many new terms (which are estabilished in Lisp community, but not in, say C# community) confuse even further. I'm not saying that using correct terminology is not an adventage 2018-07-04T09:15:28Z jackdaniel: I'm just saying that it is a disadventage *at the same time* 2018-07-04T09:15:36Z spiaggia: Got it. 2018-07-04T09:16:15Z spiaggia: kristof: So let me know when you feel ready to help out with SICL. :) 2018-07-04T09:16:21Z jackdaniel: [if enforced, and enforcement is necessary to keep discussion using "correct" terminology] 2018-07-04T09:16:24Z kristof: Lol 2018-07-04T09:16:57Z spiaggia was only half joking. 2018-07-04T09:16:59Z kristof: Well, spiaggia, I was rereading my book on compilers lately. And I was thinking that this new fangled web assembly business is interesting... 2018-07-04T09:17:27Z spiaggia: Interesting that you should mention that. 2018-07-04T09:17:29Z kristof: Is SICL still your one man show? 2018-07-04T09:17:38Z spiaggia: Not really, no. 2018-07-04T09:18:06Z kristof: A lot of contributors, then? 2018-07-04T09:18:09Z spiaggia: Bike is doing work on the compiler framework (Cleavir) and so is karlosz who is writing a Cleavir-based compiler for SICL. 2018-07-04T09:18:27Z spiaggia: And heisig is working on some aspects of Cleavir as well. 2018-07-04T09:18:44Z spiaggia: Not "a lot of". I think that sums it up. 2018-07-04T09:19:10Z kristof: Oh, I've been meaning to ask what the difference between Cleavir and Sicl is... 2018-07-04T09:19:16Z spiaggia: Er, sorry, karlosz is writing a Cleavir-based compiler for CLISP, not SICL. 2018-07-04T09:19:28Z spiaggia: minion: Please tell kristof about Cleavir. 2018-07-04T09:19:28Z minion: kristof: Cleavir: A project to create an implementation-independent compilation framework for Common Lisp. Currently Cleavir is part of SICL, but that might change in the future 2018-07-04T09:20:10Z kristof: Well Cleavir is also used by Clasp, right? 2018-07-04T09:20:11Z spiaggia: kristof: I try to extract independent repositories whenever practical. 2018-07-04T09:20:23Z spiaggia: kristof: Yes, that's why Bike is working on it. 2018-07-04T09:20:40Z kristof: I see. Does Dr. Meister still pop in over here? 2018-07-04T09:20:46Z spiaggia: kristof: So the reader has been extracted and become Eclector which scymtym is maintaining. 2018-07-04T09:21:00Z kristof: All these funny names... :p 2018-07-04T09:21:06Z spiaggia: He does, but mostly to ask questions. Otherwise, he is in #clasp. 2018-07-04T09:21:34Z spiaggia: kristof: And I extracted the code for concrete syntax trees to a separate repository as well. 2018-07-04T09:22:10Z kristof: Sounds like you're all very busy. That's cool, I'm glad to hear it. 2018-07-04T09:22:39Z kristof: I'm a dilettante so I doubt I would be any real help :P 2018-07-04T09:23:17Z spiaggia: Aww! 2018-07-04T09:23:57Z joh11 joined #lisp 2018-07-04T09:24:50Z jackdaniel: if you think about it, it is easier to shift from dilettante to expert than the other way around 2018-07-04T09:25:01Z jackdaniel: so you are in quite a good position, you may strive to whatever goal you want 2018-07-04T09:29:18Z shka: https://badmagicplayer.files.wordpress.com/2012/03/one-with-nothing.jpg 2018-07-04T09:32:39Z Arcaelyx quit (Quit: Textual IRC Client: www.textualapp.com) 2018-07-04T09:45:17Z ebrasca quit (Read error: Connection reset by peer) 2018-07-04T09:45:34Z ebrasca joined #lisp 2018-07-04T09:49:32Z Smokitch_ joined #lisp 2018-07-04T09:50:04Z kuribas joined #lisp 2018-07-04T09:51:24Z robotoad quit (Quit: robotoad) 2018-07-04T09:52:26Z Smokitch quit (Ping timeout: 256 seconds) 2018-07-04T10:01:29Z johnnymacs quit (Ping timeout: 276 seconds) 2018-07-04T10:07:57Z thodg joined #lisp 2018-07-04T10:08:01Z paule32 quit (Read error: Connection reset by peer) 2018-07-04T10:10:23Z _cosmonaut_ joined #lisp 2018-07-04T10:10:33Z oni-on-ion quit (Ping timeout: 264 seconds) 2018-07-04T10:11:45Z Bike joined #lisp 2018-07-04T10:13:39Z fikka quit (Ping timeout: 256 seconds) 2018-07-04T10:16:10Z graphene quit (Remote host closed the connection) 2018-07-04T10:16:40Z jmercouris joined #lisp 2018-07-04T10:16:42Z fikka joined #lisp 2018-07-04T10:17:15Z jmercouris: can someone explain this? https://gist.github.com/d14e554d21b0a18fb4ffb9b09b401f9b 2018-07-04T10:17:20Z m00natic joined #lisp 2018-07-04T10:17:23Z jmercouris: why does my list sometimes appear horizonal and sometimes vertical 2018-07-04T10:17:30Z jmercouris: when does it decide to indent? 2018-07-04T10:17:31Z graphene joined #lisp 2018-07-04T10:17:55Z ecraven: something with pretty printing 2018-07-04T10:18:15Z jackdaniel: *print-right-margin* is one of deciding factors 2018-07-04T10:18:20Z jackdaniel: basically what ecraven said 2018-07-04T10:18:35Z jmercouris: Okay 2018-07-04T10:18:35Z ecraven: jackdaniel: well, mine was a bit more hand-wavey 2018-07-04T10:18:44Z trittweiler: jmercouris, the pretty-printer treats a list with symbol IF specially 2018-07-04T10:18:46Z jmercouris: I guess it doesn't matter 2018-07-04T10:18:47Z jmercouris: just curious 2018-07-04T10:18:57Z jmercouris: oh, that would make sense actually 2018-07-04T10:19:04Z jmercouris: does it do that with other reserved keywords? 2018-07-04T10:19:17Z trittweiler: you can disable that by not using the default *pretty-print-dispatch* 2018-07-04T10:19:22Z jackdaniel: I'm glad I could answer your question which didn't hold any matter in it :) 2018-07-04T10:19:41Z jackdaniel: what are reserved keywords? 2018-07-04T10:20:08Z joh11: empirically it also does the same thing with let and let* 2018-07-04T10:20:08Z jackdaniel: (most notably: what are they in this context, but I'm curious about general meaning too) 2018-07-04T10:20:14Z trittweiler: it's up to the implementation I would guess. (this knowledge is paged out of my memory,it's been years) 2018-07-04T10:20:19Z jmercouris: symbols defined/reserved by the common lisp standard 2018-07-04T10:20:39Z trittweiler: you can invoke the inspector on *pretty-print-dispatch* and have a look 2018-07-04T10:20:39Z jackdaniel: I don't think any symbol in keyword package is reserved 2018-07-04T10:21:01Z jmercouris: usually the term "reserved keywords" is used in other languages 2018-07-04T10:21:20Z jmercouris: not in the keyword package 2018-07-04T10:21:24Z ecraven: trittweiler: cl-user does not contain that symbol on my sbl 2018-07-04T10:21:25Z jackdaniel: I've heard "reserved word" 2018-07-04T10:21:26Z ecraven: sbcl 2018-07-04T10:21:32Z jackdaniel: eventually "reserved identifier" 2018-07-04T10:21:34Z joh11 quit (Quit: Leaving) 2018-07-04T10:22:01Z trittweiler: ecraven: It's *print-pprint-dispatch* 2018-07-04T10:22:20Z jmercouris: "https://en.wikipedia.org/wiki/Reserved_word" --> The terms "reserved word" and "keyword" are often used interchangeably – one may say that a reserved word is "reserved for use as a keyword" – and formal use varies from language to language; for this article we distinguish as above. 2018-07-04T10:22:41Z jmercouris: I understand symbols don't work that way 2018-07-04T10:22:45Z jackdaniel: jmercouris: so you have provided a hybrid, *reserved* keyword :) 2018-07-04T10:22:49Z jmercouris: but I was trying to convey the concept, I can't think of another way to call them 2018-07-04T10:23:07Z jmercouris: I think I may be a little bit dyslexic :D 2018-07-04T10:25:14Z milanj quit (Quit: This computer has gone to sleep) 2018-07-04T10:25:51Z jmercouris: is there a doubly linked list implementation built into CL? 2018-07-04T10:26:30Z shka: not in the standard 2018-07-04T10:26:45Z shka: double linked lists are moderatly useful anyway 2018-07-04T10:27:15Z LdBeth: defstruct 2018-07-04T10:27:20Z LdBeth: one. 2018-07-04T10:28:02Z jmercouris: I don't see how defstruct is a built in doubly linked list, of course you could make any structure using structs 2018-07-04T10:28:20Z jmercouris: I could say the same thing about any data structure 2018-07-04T10:28:25Z jmercouris: "are trees built into lisp?" 2018-07-04T10:28:32Z jmercouris: defstruct one. 2018-07-04T10:29:11Z ecraven: it's trivial to construct trees from conses 2018-07-04T10:29:18Z jmercouris: it was just an example, but yes 2018-07-04T10:29:44Z jmercouris: I actually prefer to work with trees as composed of structs rather than lists, mentally it is much easier for me 2018-07-04T10:30:57Z LdBeth: What’s any difference between builtin and user defined? 2018-07-04T10:31:12Z Bike: only one involves me writing a defstruct 2018-07-04T10:32:19Z shka: i think you may find double linked lists on quicklisp 2018-07-04T10:32:21Z jmercouris: (if (built-in-p desired-functionality) (save-time) (waste-time)) 2018-07-04T10:32:32Z shka: probabbly multiple linked lists actually ;] 2018-07-04T10:32:56Z paule32 joined #lisp 2018-07-04T10:33:07Z jmercouris: Is there a list of data structures built in that I can refer to? 2018-07-04T10:33:29Z Bike: the clhs chapter index, basically. 2018-07-04T10:33:36Z flip214: varjag: re A tiny Lisp bytecode interpreter in Z-80 assembly: "erorr" => "error", and (C) 2017 in the bottom.... ;) 2018-07-04T10:35:05Z lumm quit (Ping timeout: 240 seconds) 2018-07-04T10:38:27Z paule32 quit (Ping timeout: 240 seconds) 2018-07-04T10:38:40Z varjag: flip214: heh thanks :) 2018-07-04T10:39:15Z thodg quit (Ping timeout: 260 seconds) 2018-07-04T10:40:04Z varjag: mark&speep too.. i either had too much coffee, or too little 2018-07-04T10:41:40Z flip214: oh, and I missed that? I'm getting old... 2018-07-04T10:42:59Z flip214: ah, perhaps because there were no spaces around &, that made me skip that non-whitespace-sequence 2018-07-04T10:44:25Z orivej joined #lisp 2018-07-04T10:44:27Z nanoz quit (Ping timeout: 240 seconds) 2018-07-04T10:50:10Z paule32 joined #lisp 2018-07-04T10:50:17Z SaganMan joined #lisp 2018-07-04T10:51:54Z Xach: ebzzry: sure 2018-07-04T10:57:05Z makomo quit (Ping timeout: 248 seconds) 2018-07-04T10:57:38Z makomo joined #lisp 2018-07-04T11:02:20Z JuanDaugherty joined #lisp 2018-07-04T11:05:31Z ogamita joined #lisp 2018-07-04T11:12:57Z ogamita quit (Read error: No route to host) 2018-07-04T11:17:57Z Kundry_Wag joined #lisp 2018-07-04T11:18:51Z markoong joined #lisp 2018-07-04T11:21:25Z kerframil joined #lisp 2018-07-04T11:22:04Z milanj joined #lisp 2018-07-04T11:22:20Z Kundry_Wag quit (Ping timeout: 255 seconds) 2018-07-04T11:24:57Z lumm joined #lisp 2018-07-04T11:25:48Z ogamita joined #lisp 2018-07-04T11:31:25Z JuanDaugherty quit (Quit: Exeunt) 2018-07-04T11:39:35Z Ukari quit (Remote host closed the connection) 2018-07-04T11:40:05Z brendarn quit (Ping timeout: 240 seconds) 2018-07-04T11:42:47Z jmercouris quit (Remote host closed the connection) 2018-07-04T11:43:55Z thodg joined #lisp 2018-07-04T11:44:12Z Ukari joined #lisp 2018-07-04T11:44:16Z Ukari quit (Changing host) 2018-07-04T11:44:16Z Ukari joined #lisp 2018-07-04T11:44:46Z AetherWind quit (Quit: Leaving) 2018-07-04T11:44:57Z thodg quit (Read error: Connection reset by peer) 2018-07-04T11:48:07Z dilated_dinosaur quit (Remote host closed the connection) 2018-07-04T11:49:18Z lumm quit (Ping timeout: 256 seconds) 2018-07-04T11:52:45Z thodg joined #lisp 2018-07-04T11:53:50Z scymtym quit (Read error: Connection reset by peer) 2018-07-04T11:55:50Z attila_lendvai joined #lisp 2018-07-04T11:59:28Z bjorkintosh joined #lisp 2018-07-04T12:00:01Z kuribas: doesn't defclass create an initialization function? 2018-07-04T12:00:20Z kuribas: I am getting "There is no applicable method for the generic function #" 2018-07-04T12:02:13Z kuribas: this is my class definition: (defclass lazy-stream (sequence) ((list :initarg :list :accessor stream-list))) 2018-07-04T12:03:02Z shka: cl:sequence ? 2018-07-04T12:03:29Z kuribas: yes 2018-07-04T12:04:00Z shka: i don't think you are supposed to do that, but anyway 2018-07-04T12:04:29Z shka: generated initialize-instance contains call-next-method 2018-07-04T12:04:45Z shka: and i don't think that cl:sequence is required to have initialize-instance 2018-07-04T12:05:03Z kuribas: sbcl lets me subclass it 2018-07-04T12:05:08Z shka: you may need to roll your own initialize-instance if you want to do that 2018-07-04T12:05:19Z kuribas: hmm, strange 2018-07-04T12:05:25Z shka: however, i advice against it because, well, there is no benefits 2018-07-04T12:05:50Z shka: although sbcl sequence protocol is extendable, it is not portable 2018-07-04T12:05:52Z scymtym joined #lisp 2018-07-04T12:06:09Z kuribas: shka: I don't need it to be portable 2018-07-04T12:06:28Z shka: well, in that case, have fun 2018-07-04T12:06:43Z shka: anyway, i think that replacing default initialize-instance method should work 2018-07-04T12:07:20Z ogamita: kuribas: sequence is an abstract class, so you cannot (make-instance 'sequence) or (initialize-instance (make-instance 'sequence)). 2018-07-04T12:07:36Z ogamita: this is why you need to implement your own initialize-instance, and not (call-next-method). 2018-07-04T12:07:43Z kuribas: ah ok, thanks 2018-07-04T12:09:58Z fikka quit (Ping timeout: 264 seconds) 2018-07-04T12:11:39Z kuribas: that seems to work 2018-07-04T12:12:52Z shangul joined #lisp 2018-07-04T12:12:55Z kuribas: how can I reload a defconstant? 2018-07-04T12:16:27Z kajo quit (Ping timeout: 245 seconds) 2018-07-04T12:17:04Z ogamita: you can only if the new value is the same as the old, same being the technical term defined in the glossary of clhs. 2018-07-04T12:17:08Z ogamita: ie. basically, EQL. 2018-07-04T12:17:36Z ogamita: Which means that the only values you can meaningfully define as constants are numbers, characters and symbols. 2018-07-04T12:17:40Z kuribas: is a defconstant dynamic? 2018-07-04T12:17:59Z ogamita: Nope. But since it cannot be rebound, it doesn't matter. 2018-07-04T12:18:06Z kuribas: I want to define a global lexical scoped variable 2018-07-04T12:18:11Z ogamita: (defconstant +foo+ 42) (let ((+foo+ is invalid. 2018-07-04T12:18:19Z kuribas: right 2018-07-04T12:18:40Z ogamita: this doesn't exist in CL. BUt you can implement it with define-symbol-macro, since symbol-macros are global lexical bindings. 2018-07-04T12:18:55Z ogamita: kuribas: check defglobal or deflex in various libraries. 2018-07-04T12:19:15Z kuribas: doesn't seem like a sensible default 2018-07-04T12:19:33Z ogamita: find ~/quicklisp -name \*.lisp -exec grep -nHi -e 'defglobal\|deflex' {} + 2018-07-04T12:20:15Z ogamita: for example, in deflex in repl-utilities. 2018-07-04T12:23:18Z kristof quit (Read error: No route to host) 2018-07-04T12:23:27Z kristof joined #lisp 2018-07-04T12:23:49Z kristof quit (Client Quit) 2018-07-04T12:25:14Z fikka joined #lisp 2018-07-04T12:32:48Z _cosmonaut_ quit (Ping timeout: 256 seconds) 2018-07-04T12:34:09Z makomo quit (Ping timeout: 248 seconds) 2018-07-04T12:35:28Z thodg quit (Read error: Connection reset by peer) 2018-07-04T12:36:49Z heisig quit (Quit: Leaving) 2018-07-04T12:38:47Z Kundry_Wag joined #lisp 2018-07-04T12:40:17Z ogamita quit (Ping timeout: 268 seconds) 2018-07-04T12:40:21Z attila_lendvai quit (Quit: Leaving.) 2018-07-04T12:42:27Z attila_lendvai joined #lisp 2018-07-04T12:42:27Z attila_lendvai quit (Changing host) 2018-07-04T12:42:27Z attila_lendvai joined #lisp 2018-07-04T12:42:31Z attila_lendvai quit (Client Quit) 2018-07-04T12:42:57Z nowhereman_ quit (Ping timeout: 240 seconds) 2018-07-04T12:43:15Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-04T12:45:10Z graphene quit (Read error: Connection reset by peer) 2018-07-04T12:45:37Z shangul quit (Remote host closed the connection) 2018-07-04T12:46:33Z graphene joined #lisp 2018-07-04T12:47:43Z EvW joined #lisp 2018-07-04T12:48:51Z ogamita joined #lisp 2018-07-04T12:49:44Z thodg joined #lisp 2018-07-04T12:50:58Z Kundry_Wag joined #lisp 2018-07-04T12:51:50Z shangul joined #lisp 2018-07-04T12:56:05Z ogamita quit (Ping timeout: 245 seconds) 2018-07-04T12:56:53Z dddddd quit (Ping timeout: 276 seconds) 2018-07-04T12:57:49Z dddddd joined #lisp 2018-07-04T12:58:21Z Kundry_Wag quit (Remote host closed the connection) 2018-07-04T12:58:56Z Kundry_Wag joined #lisp 2018-07-04T13:00:21Z skapata joined #lisp 2018-07-04T13:00:31Z doesthiswork joined #lisp 2018-07-04T13:02:55Z Kundry_Wag quit (Remote host closed the connection) 2018-07-04T13:03:13Z Kundry_Wag joined #lisp 2018-07-04T13:03:47Z Kundry_Wag quit (Remote host closed the connection) 2018-07-04T13:04:21Z Kundry_Wag joined #lisp 2018-07-04T13:08:45Z pierpal quit (Quit: Poof) 2018-07-04T13:08:51Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-04T13:09:02Z pierpal joined #lisp 2018-07-04T13:09:50Z thodg quit (Ping timeout: 265 seconds) 2018-07-04T13:10:39Z dddddd quit (Ping timeout: 256 seconds) 2018-07-04T13:11:37Z dddddd joined #lisp 2018-07-04T13:19:59Z makomo joined #lisp 2018-07-04T13:22:43Z patlv joined #lisp 2018-07-04T13:27:18Z _cosmonaut_ joined #lisp 2018-07-04T13:29:37Z attila_lendvai joined #lisp 2018-07-04T13:29:37Z attila_lendvai quit (Changing host) 2018-07-04T13:29:37Z attila_lendvai joined #lisp 2018-07-04T13:30:26Z housel joined #lisp 2018-07-04T13:31:46Z vlad_ joined #lisp 2018-07-04T13:36:14Z Kundry_Wag joined #lisp 2018-07-04T13:36:52Z rumbler31 joined #lisp 2018-07-04T13:37:30Z patlv quit (Remote host closed the connection) 2018-07-04T13:37:53Z patlv joined #lisp 2018-07-04T13:41:44Z rumbler31 quit (Ping timeout: 276 seconds) 2018-07-04T13:41:51Z deng_cn quit (Quit: deng_cn) 2018-07-04T13:45:08Z kuribas: is it not possible to have optional and keyword arguments? 2018-07-04T13:45:37Z kuribas: I have (defun enum-from (start &optional end &key (step 1)) ... ) 2018-07-04T13:45:53Z kuribas: but (enum-from 1 :step 2) gives an error 2018-07-04T13:46:41Z TMA: kuribas: it is possible. you need to supply all the optionals before any keyword arguments 2018-07-04T13:46:42Z attila_lendvai quit (Read error: Connection reset by peer) 2018-07-04T13:46:55Z kuribas: I did... 2018-07-04T13:47:19Z kuribas: I still get "odd number of &key arguments" 2018-07-04T13:47:44Z shangul quit (Quit: sudo rm -rf /usr/*) 2018-07-04T13:48:20Z TMA: kuribas: no, you didn't. you need (enum-from 1 100 :step 2) 2018-07-04T13:48:22Z attila_lendvai joined #lisp 2018-07-04T13:48:23Z attila_lendvai quit (Changing host) 2018-07-04T13:48:23Z attila_lendvai joined #lisp 2018-07-04T13:48:30Z trittweiler: (enum-from 1), (enum-from 1 10), (enum-from 1 10 :step 2) 2018-07-04T13:48:31Z attila_lendvai quit (Read error: Connection reset by peer) 2018-07-04T13:48:38Z kuribas: TMA: I want to omit end 2018-07-04T13:48:51Z TMA: kuribas: make it keyword argument too, then 2018-07-04T13:48:53Z trittweiler: (enum-from 1 nil :step 2) 2018-07-04T13:49:34Z kuribas: hmm, ok 2018-07-04T13:49:51Z kajo joined #lisp 2018-07-04T13:50:48Z Kundry_W_ joined #lisp 2018-07-04T13:50:49Z kuribas: I also read that keyword arguments are very inefficient, is that true? 2018-07-04T13:51:12Z attila_lendvai joined #lisp 2018-07-04T13:51:12Z attila_lendvai quit (Changing host) 2018-07-04T13:51:12Z attila_lendvai joined #lisp 2018-07-04T13:51:34Z TMA: it might be, for suitable definitions ov very and inefficient 2018-07-04T13:53:21Z TMA: kuribas: but then it might not, because in most cases the inefficiencies can be optimized away; you need to profile your code to discover real bottlenecks 2018-07-04T13:54:01Z spiaggia: kuribas: If you care about performance with keyword arguments, you might write a compiler macro that turns the all into one with only required arguments. Or you can hope that the author of the function did. 2018-07-04T13:54:19Z spiaggia: Modulo bad grammar on my part, that is. 2018-07-04T13:54:32Z spiaggia: "turns the call" 2018-07-04T13:54:44Z kuribas: TMA: I read it in paradigms of AI, which is quite old 2018-07-04T13:54:57Z Kundry_W_ quit (Ping timeout: 240 seconds) 2018-07-04T13:55:12Z spiaggia: Hmm, maybe compiler macros were introduced later? 2018-07-04T13:55:23Z TMA: spiaggia: I think it is permissible for the compiler to perform this kind of optimization even without a compiler macro, am I right? 2018-07-04T13:55:50Z spiaggia: TMA: I don't see how it could do that. 2018-07-04T13:56:35Z patlv quit (Ping timeout: 240 seconds) 2018-07-04T13:57:08Z patlv joined #lisp 2018-07-04T13:57:13Z edgar-rft joined #lisp 2018-07-04T13:57:31Z spiaggia: TMA: The compiler must account for the possibility that the definition of the callee changes after the call site has been compiled. 2018-07-04T13:57:35Z TMA: spiaggia: if the compiler knows the called function lambda list, it can perform the equivalent of the macro. moreover for each function, the compiler can produce two entry points, one with the arguments being required 2018-07-04T13:57:53Z fikka quit (Ping timeout: 248 seconds) 2018-07-04T13:58:24Z TMA: spiaggia: even for functions declaimed inline in the same translation unit? 2018-07-04T13:58:33Z spiaggia: OK, that's different. 2018-07-04T13:58:40Z spiaggia: That might be possible, yes. 2018-07-04T14:00:21Z TMA might be mistaken, it has been way too long since last reading of the relevant hyperspec parts 2018-07-04T14:00:48Z spiaggia: I think you are right. For functions in the same compilation unit, all kinds of tricks are possible. 2018-07-04T14:01:02Z spiaggia: Uh oh. Bad thunderstorm on the way. 2018-07-04T14:01:45Z kuribas: is this the right way to implement elt? (defmethod elt ((stream lazy-stream) index) .. ) 2018-07-04T14:01:58Z kuribas: I am getting: "ELT already names an ordinary function or a macro." 2018-07-04T14:02:14Z spiaggia: kuribas: ELT is not a generic function. 2018-07-04T14:02:20Z spiaggia: So you can't add methods on it. 2018-07-04T14:02:28Z kuribas: spiaggia: the documentation says otherwise 2018-07-04T14:02:34Z spiaggia: Oh? 2018-07-04T14:02:38Z spiaggia: clhs elt 2018-07-04T14:02:38Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_elt.htm 2018-07-04T14:02:38Z attila_lendvai quit (Read error: Connection reset by peer) 2018-07-04T14:02:54Z spiaggia: It says "accessor". 2018-07-04T14:03:02Z kuribas: http://www.sbcl.org/manual/#Extensible-Sequences 2018-07-04T14:03:38Z dilated_dinosaur joined #lisp 2018-07-04T14:03:49Z spiaggia: kuribas: That's the function named by sb-sequence:elt, not cl:elt. 2018-07-04T14:04:07Z spiaggia: kuribas: It gives that package name after the function name. 2018-07-04T14:04:36Z kuribas: they are different? 2018-07-04T14:04:48Z attila_lendvai joined #lisp 2018-07-04T14:04:48Z attila_lendvai quit (Changing host) 2018-07-04T14:04:48Z attila_lendvai joined #lisp 2018-07-04T14:04:53Z spiaggia: Yes, because cl:elt is not a generic function in general. 2018-07-04T14:05:42Z kuribas: ah, sb-sequence:elt works. 2018-07-04T14:05:43Z kuribas: thanks 2018-07-04T14:06:13Z spiaggia: kuribas: I think SBCL implements this extension by doing what a standard implementation would do, and then call the generic function if the type turns out to be something other than list or vector. 2018-07-04T14:06:27Z Xof: that's right 2018-07-04T14:06:31Z muyinliu joined #lisp 2018-07-04T14:06:36Z spiaggia: kuribas: If they didn't do it that way, they would slow down these functions for ordinary use. 2018-07-04T14:07:03Z Xof: it does also implement sb-sequence:elt on list and vector, just in case a user decides to call that explicitly rather than cl:Elt 2018-07-04T14:07:20Z spiaggia: OK, that's good. 2018-07-04T14:07:40Z kuribas: spiaggia: right 2018-07-04T14:08:33Z Kundry_W_ joined #lisp 2018-07-04T14:08:33Z attila_lendvai quit (Read error: Connection reset by peer) 2018-07-04T14:08:42Z muyinliu quit (Client Quit) 2018-07-04T14:09:22Z Kundry_Wag quit (Ping timeout: 245 seconds) 2018-07-04T14:10:12Z attila_lendvai joined #lisp 2018-07-04T14:10:13Z attila_lendvai quit (Changing host) 2018-07-04T14:10:13Z attila_lendvai joined #lisp 2018-07-04T14:11:13Z Xof: and yes, one of the design goals of this extension was that the cost of having but not using it should be unmeasurable 2018-07-04T14:11:13Z attila_lendvai quit (Read error: Connection reset by peer) 2018-07-04T14:11:53Z spiaggia: Quite reasonable. 2018-07-04T14:13:17Z Inline joined #lisp 2018-07-04T14:13:33Z attila_lendvai joined #lisp 2018-07-04T14:13:34Z attila_lendvai quit (Changing host) 2018-07-04T14:13:34Z attila_lendvai joined #lisp 2018-07-04T14:13:46Z fikka joined #lisp 2018-07-04T14:13:55Z patlv quit (Ping timeout: 256 seconds) 2018-07-04T14:16:31Z attila_lendvai quit (Client Quit) 2018-07-04T14:18:39Z fikka quit (Ping timeout: 256 seconds) 2018-07-04T14:19:27Z thodg joined #lisp 2018-07-04T14:22:53Z FreeBirdLjj joined #lisp 2018-07-04T14:24:14Z fikka joined #lisp 2018-07-04T14:24:35Z hhdave joined #lisp 2018-07-04T14:24:43Z igemnace quit (Quit: WeeChat 2.1) 2018-07-04T14:28:57Z fikka quit (Ping timeout: 245 seconds) 2018-07-04T14:29:09Z _cosmonaut_ quit (Ping timeout: 264 seconds) 2018-07-04T14:30:49Z SenasOzys joined #lisp 2018-07-04T14:31:02Z thodg quit (Read error: Connection reset by peer) 2018-07-04T14:31:40Z SenasOzys quit (Remote host closed the connection) 2018-07-04T14:32:01Z SenasOzys joined #lisp 2018-07-04T14:32:16Z kuribas: lol (sb-sequence:make-sequence-like "abc" 5 :initial-element #\Space :initial-contents "hello") gives error "foo" 2018-07-04T14:32:16Z raynold quit (Quit: Connection closed for inactivity) 2018-07-04T14:32:21Z kuribas: :-) 2018-07-04T14:32:43Z jackdaniel: sounds reasonable, definetely looks like a foo 2018-07-04T14:34:02Z EvW quit (Ping timeout: 255 seconds) 2018-07-04T14:34:14Z fikka joined #lisp 2018-07-04T14:35:10Z Xof: wait, really? 2018-07-04T14:35:29Z jackdaniel: yes, I can confirm that 2018-07-04T14:35:42Z jackdaniel: method calls (error "supplied both ~S and ~S to ~S" :initial-element :initial-contents 'make-sequence-like) 2018-07-04T14:35:43Z Xof: so it does 2018-07-04T14:35:46Z jackdaniel: so it is confusing, that it shows foo 2018-07-04T14:35:53Z Xof: that is also why I am confused 2018-07-04T14:35:55Z Xof: nice bug 2018-07-04T14:36:02Z Xof: report it to launchpad if you want some karma 2018-07-04T14:36:34Z jackdaniel: Xof: it is most likely something caused by sbcl bootstrap, when I recompile the generic function correct error is reported 2018-07-04T14:38:03Z Xof: there is no instance of the string "foo" anywhere in sbcl lisp sources 2018-07-04T14:38:11Z Xof: well this is going to be a fun mystery to unravel 2018-07-04T14:38:50Z jackdaniel: well, there is lose("foo"); but it is only on sunos 2018-07-04T14:38:57Z fikka quit (Ping timeout: 245 seconds) 2018-07-04T14:39:02Z pjb joined #lisp 2018-07-04T14:39:06Z jackdaniel: and a lot of "foo"s in tests/ 2018-07-04T14:39:27Z varjag quit (Quit: ERC (IRC client for Emacs 24.5.1)) 2018-07-04T14:39:54Z housel quit (Remote host closed the connection) 2018-07-04T14:40:01Z oni-on-ion joined #lisp 2018-07-04T14:40:21Z housel joined #lisp 2018-07-04T14:41:57Z subroot joined #lisp 2018-07-04T14:42:50Z flamebeard quit 2018-07-04T14:43:50Z Xof: wow, I actually have no idea how this is happening 2018-07-04T14:43:51Z Xof: thank you! 2018-07-04T14:44:32Z fikka joined #lisp 2018-07-04T14:46:43Z Xof: ok, the answer is: it's not happening in current sources 2018-07-04T14:46:59Z Xof: and I remember someone merging a fix for this, come to think of it 2018-07-04T14:47:24Z Xof: 1st February. Your SBCL is too old. 2018-07-04T14:49:03Z jackdaniel: do you happen to remember what caused the mysterious "foo" appearance? 2018-07-04T14:49:18Z jackdaniel: and why foo given there is no such string in relevant sources? 2018-07-04T14:49:59Z fikka quit (Ping timeout: 276 seconds) 2018-07-04T14:50:54Z spiaggia: jackdaniel: I guess foo was in there before the fix. 2018-07-04T14:51:41Z beach quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2018-07-04T14:51:52Z patlv joined #lisp 2018-07-04T14:51:59Z jackdaniel: in that case I have wrong sources installed with my sbcl binary 2018-07-04T14:52:01Z spiaggia is now known as beach 2018-07-04T14:52:21Z beach: Hmm. 2018-07-04T14:52:36Z jackdaniel: but yes, that's most likely the case, because I see the commit 2018-07-04T14:52:37Z thodg joined #lisp 2018-07-04T14:52:49Z jackdaniel: these error calls indeed had "foo" and "bar" strings instead of an informative error message 2018-07-04T14:52:52Z jackdaniel: s 2018-07-04T14:54:21Z jackdaniel: hm, my fault. it seems I have hand-built sbcl in my PATH (from git) from quite some time ago, but I had to pull from the repository later 2018-07-04T14:54:37Z jackdaniel: without rebuilding 2018-07-04T14:55:16Z attila_lendvai joined #lisp 2018-07-04T14:55:16Z attila_lendvai quit (Changing host) 2018-07-04T14:55:16Z attila_lendvai joined #lisp 2018-07-04T14:57:23Z attila_lendvai quit (Read error: Connection reset by peer) 2018-07-04T14:57:28Z Kundry_W_ quit (Remote host closed the connection) 2018-07-04T14:57:38Z ogamita joined #lisp 2018-07-04T14:57:54Z benny quit (Quit: ZNC - http://znc.in) 2018-07-04T14:58:17Z EvW1 joined #lisp 2018-07-04T14:59:10Z lumm joined #lisp 2018-07-04T14:59:46Z pierpal quit (Quit: Poof) 2018-07-04T15:00:05Z pierpal joined #lisp 2018-07-04T15:00:07Z attila_lendvai joined #lisp 2018-07-04T15:00:08Z attila_lendvai quit (Changing host) 2018-07-04T15:00:08Z attila_lendvai joined #lisp 2018-07-04T15:00:43Z benny joined #lisp 2018-07-04T15:01:08Z benny is now known as Guest33773 2018-07-04T15:04:29Z attila_lendvai quit (Read error: Connection reset by peer) 2018-07-04T15:04:32Z fikka joined #lisp 2018-07-04T15:04:34Z Xof: everyone is a winner! 2018-07-04T15:05:42Z Guest33773 is now known as benny 2018-07-04T15:06:36Z attila_lendvai joined #lisp 2018-07-04T15:06:36Z attila_lendvai quit (Changing host) 2018-07-04T15:06:36Z attila_lendvai joined #lisp 2018-07-04T15:06:53Z attila_lendvai quit (Read error: Connection reset by peer) 2018-07-04T15:07:47Z EvW1 quit (Ping timeout: 255 seconds) 2018-07-04T15:09:20Z nowhereman_ joined #lisp 2018-07-04T15:09:27Z fikka quit (Ping timeout: 256 seconds) 2018-07-04T15:09:29Z attila_lendvai joined #lisp 2018-07-04T15:09:29Z attila_lendvai quit (Changing host) 2018-07-04T15:09:29Z attila_lendvai joined #lisp 2018-07-04T15:10:45Z cage_ joined #lisp 2018-07-04T15:11:03Z vlad_ is now known as _Murii 2018-07-04T15:11:26Z patlv quit (Ping timeout: 276 seconds) 2018-07-04T15:12:04Z edgar-rft quit (Quit: edgar-rft) 2018-07-04T15:14:59Z fikka joined #lisp 2018-07-04T15:15:14Z kuribas: Xof: I used apt get 2018-07-04T15:15:30Z kuribas: Xof: 1.3.1 Debian 2018-07-04T15:16:58Z kuribas: Xof: are you a sbcl maintainer? 2018-07-04T15:19:59Z fikka quit (Ping timeout: 276 seconds) 2018-07-04T15:20:34Z Kundry_Wag joined #lisp 2018-07-04T15:20:37Z beach: kuribas: Usually, you need to go to the sourceforge site and download a binary. 2018-07-04T15:20:44Z beach: kuribas: Or you can compile it yourself. 2018-07-04T15:21:04Z beach: kuribas: As I understand it, the OS-supplied packages are typically very old. 2018-07-04T15:21:16Z kuribas: that's true in general 2018-07-04T15:21:34Z Xof: kuribas: I am an sbcl maintainer 2018-07-04T15:22:14Z attila_lendvai quit (Read error: Connection reset by peer) 2018-07-04T15:23:29Z nickenchuggets joined #lisp 2018-07-04T15:23:29Z nickenchuggets quit (Changing host) 2018-07-04T15:23:29Z nickenchuggets joined #lisp 2018-07-04T15:25:05Z fikka joined #lisp 2018-07-04T15:25:09Z cage_: FWIW, the SBCL version in debian testing is near to the latest official release 2018-07-04T15:25:50Z Kundry_Wag quit (Ping timeout: 276 seconds) 2018-07-04T15:26:07Z attila_lendvai joined #lisp 2018-07-04T15:26:07Z attila_lendvai quit (Changing host) 2018-07-04T15:26:07Z attila_lendvai joined #lisp 2018-07-04T15:27:02Z _Murii quit (Ping timeout: 276 seconds) 2018-07-04T15:28:37Z milanj quit (Quit: This computer has gone to sleep) 2018-07-04T15:29:47Z fikka quit (Ping timeout: 245 seconds) 2018-07-04T15:30:52Z ogamita quit (Ping timeout: 256 seconds) 2018-07-04T15:32:44Z xrash joined #lisp 2018-07-04T15:34:50Z kjeldahl_ quit (Ping timeout: 245 seconds) 2018-07-04T15:35:21Z fikka joined #lisp 2018-07-04T15:36:33Z subroot quit (Read error: Connection reset by peer) 2018-07-04T15:37:40Z rumbler31 joined #lisp 2018-07-04T15:37:40Z attila_lendvai quit (Read error: Connection reset by peer) 2018-07-04T15:37:44Z kajo quit (Ping timeout: 265 seconds) 2018-07-04T15:39:01Z attila_lendvai joined #lisp 2018-07-04T15:39:02Z attila_lendvai quit (Changing host) 2018-07-04T15:39:02Z attila_lendvai joined #lisp 2018-07-04T15:39:56Z fikka quit (Ping timeout: 256 seconds) 2018-07-04T15:42:22Z rumbler31 quit (Ping timeout: 264 seconds) 2018-07-04T15:43:20Z attila_lendvai quit (Ping timeout: 255 seconds) 2018-07-04T15:45:25Z fikka joined #lisp 2018-07-04T15:48:03Z Pixel_Outlaw joined #lisp 2018-07-04T15:48:21Z vxe joined #lisp 2018-07-04T15:50:10Z vxe quit (Quit: Mutter: www.mutterirc.com) 2018-07-04T15:50:18Z fikka quit (Ping timeout: 265 seconds) 2018-07-04T15:50:55Z kuribas: can you define a let binding, where the binding is used in the definition? 2018-07-04T15:50:58Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-04T15:51:06Z beach: What? 2018-07-04T15:51:14Z kuribas: like (let ((rec (lambda (x) (rec ...)))) (rec ..)) 2018-07-04T15:51:26Z Bike: no. 2018-07-04T15:51:27Z beach: Nope. 2018-07-04T15:51:32Z kuribas: letrec in scheme 2018-07-04T15:51:40Z beach: kuribas: Try LABELS. 2018-07-04T15:52:11Z beach: kuribas: That thing would not have worked anyway, since LET is in the variable namespace, but (rec ...) refers to the function namespace. 2018-07-04T15:52:23Z pjb: kuribas: yes, if it's a dynamic binding and if you call it during the dynamic scope. 2018-07-04T15:52:40Z kuribas: isn't labels only for function definitions? 2018-07-04T15:52:49Z beach: kuribas: (labels ((rec (x) ... (rec ...))) (rec ...)) 2018-07-04T15:52:49Z kuribas: I want to define a value, not a function 2018-07-04T15:52:54Z vxe joined #lisp 2018-07-04T15:52:59Z pjb: (locally (declare (special rec)) (let ((rec (lambda (x) (funcall #|this is common-lisp!|# rec ...)))) (funcall rec ...))) 2018-07-04T15:53:10Z Bike: pjb do you just enjoy answering as unhelpfully as possible 2018-07-04T15:53:27Z eschatologist joined #lisp 2018-07-04T15:53:31Z beach: kuribas: You need the Y combinator then. 2018-07-04T15:53:39Z _death: you can write your own LETREC... or (let (rec) (setq rec ...)) 2018-07-04T15:53:52Z Bike: kuribas: even in scheme, defining a recursive structure with letrec doesn't work 2018-07-04T15:54:10Z kuribas: obviously I could do just (let ((x)) (setq x ...)) 2018-07-04T15:54:16Z kuribas: it's a bit ugly 2018-07-04T15:54:24Z Bike: it's not obvious 2018-07-04T15:54:37Z Bike: if you did (let (x) (setq x (list x x))) you'd end up with (NIL NIL), not a recursive structure 2018-07-04T15:55:10Z Kundry_Wag joined #lisp 2018-07-04T15:55:18Z kuribas: I have a lambda hidding in a macro 2018-07-04T15:55:30Z fikka joined #lisp 2018-07-04T15:55:37Z merodix quit (Remote host closed the connection) 2018-07-04T15:56:18Z pjb: Well, implementation give an unbound variable rec in (locally (declare (special rec)) (let ((rec (lambda (x) (declare (special rec)) (if (zerop x) 1 (* x (funcall rec (- x 1))))))) (funcall rec 42))) but IMO it should not. 2018-07-04T15:56:44Z pjb: There is no wherer the special variable rec is used while being unbound in this expression! 2018-07-04T15:56:57Z pjb: Notice that I should not have to declare rec special inside lambda either! 2018-07-04T15:57:17Z Bike: it's because since rec is only declared locally special, the let makes a lexical binding, probably 2018-07-04T15:57:40Z pjb: It works if you write: (declaim (special rec)) (let ((rec (lambda (x) (if (zerop x) 1 (* x (funcall rec (- x 1))))))) (funcall rec 42)) 2018-07-04T15:57:50Z pjb: the lambda is local to the locally form! 2018-07-04T15:58:04Z Bike: yes, but i mean, the let makes a lexical binding. 2018-07-04T15:58:09Z Bike: so it's not the one the lambda refers to. 2018-07-04T15:58:13Z pjb: Oh, right. 2018-07-04T15:58:25Z pjb: (let ((rec (lambda (x) (if (zerop x) 1 (* x (funcall rec (- x 1))))))) (declare (special rec)) (funcall rec 42)) #| --> 1405006117752879898543142606244511569936384000000000 |# 2018-07-04T15:58:26Z Bike: if you do (let ((rec ...)) (declare (special rec)) ...) it's fine. 2018-07-04T15:58:27Z pjb: There. 2018-07-04T15:58:41Z pjb: and even: (let ((rec (lambda (x) (if (zerop x) 1 (* x (funcall rec (- x 1))))))) (funcall rec 42)) #| --> 1405006117752879898543142606244511569936384000000000 |# 2018-07-04T15:59:51Z trittweiler: kuribas: Consider (let ((x (flet ((f (a b &aux c) (incf c (+ a b)))) #'f)) ..body..) 2018-07-04T15:59:52Z pjb: Oops, it's the old rec. 2018-07-04T15:59:53Z pjb: (let ((foo (lambda (x) (declare (special foo)) (if (zerop x) 1 (* x (funcall foo (- x 1))))))) (declare (special foo)) (funcall foo 42)) 2018-07-04T16:00:27Z fikka quit (Ping timeout: 265 seconds) 2018-07-04T16:00:55Z pjb: One can understand why dynamic binding was so praised in early lisps… :-) 2018-07-04T16:01:34Z Arcaelyx joined #lisp 2018-07-04T16:01:41Z trittweiler: kuribas: Though it depends on what you really want to achieve. If you want to really modify X (the outer binding), this won't work. But &AUX can be a concise way to get a closure 2018-07-04T16:01:41Z vxe quit (Quit: Mutter: www.mutterirc.com) 2018-07-04T16:02:00Z kuribas: so you can only make a circular list with mutation? 2018-07-04T16:02:21Z Bike: basically. you can also use the ## reader macro. 2018-07-04T16:02:48Z beach: kuribas: How else would you do it? 2018-07-04T16:03:04Z trittweiler: (Actually ignore what I was saying. Brain fart. The &aux will be internally to F. Sorry for the noise) 2018-07-04T16:03:13Z patlv joined #lisp 2018-07-04T16:03:58Z kuribas: beach: idk, in haskell you can do "ones = 1 : ones" 2018-07-04T16:03:59Z pjb: kuribas: yes. But you can use a different representation for a circular list (or structure in general) that doesn't involve mutation (and of course, that is not really circular, in terms of pointers in the processor memory. 2018-07-04T16:04:30Z Bike: kuribas: that's because they have lazy evaluation. you can do similar things in lisp by keeping things in functions. 2018-07-04T16:04:37Z beach: kuribas: But there has got to be some mutation underneath. You can't refer to a CONS cell before it is created. 2018-07-04T16:04:48Z schweers quit (Ping timeout: 265 seconds) 2018-07-04T16:04:53Z kuribas: Bike: yeah, that's what I am doing now 2018-07-04T16:05:23Z pjb: functions can be "referenced" before (space) they're defined (but not "called" before (time) being defined). 2018-07-04T16:05:44Z fikka joined #lisp 2018-07-04T16:06:05Z pjb: This is because of those different "before" that we have to use dynamic binding when you want to use variables to refer the functions (instead of function names). 2018-07-04T16:06:54Z Kundry_Wag_ joined #lisp 2018-07-04T16:07:15Z SenasOzys quit (Ping timeout: 256 seconds) 2018-07-04T16:08:08Z nowhereman_ quit (Ping timeout: 256 seconds) 2018-07-04T16:09:42Z kuribas: right, it's impossible without lazy evaluation 2018-07-04T16:09:49Z kuribas: (or mutation) 2018-07-04T16:10:35Z fikka quit (Ping timeout: 260 seconds) 2018-07-04T16:11:10Z loli: one often uses mutation to implement lazy structures, a controlled impurity 2018-07-04T16:13:01Z Khisanth quit (Ping timeout: 265 seconds) 2018-07-04T16:13:17Z shka: loli: 1+ 2018-07-04T16:13:34Z shka: nobody has to know that you are dirty inside 2018-07-04T16:14:27Z shka: in fact large portion of charm of lazy evaluation in the context of purely functional data structures is that you can perform destructive operations in batch 2018-07-04T16:14:35Z shka: and present user with functional interface 2018-07-04T16:14:45Z varjag joined #lisp 2018-07-04T16:14:55Z shka: which may improve performance and reduce memory allocations 2018-07-04T16:15:34Z shka: you may need to somehow mark internal nodes that are safe to mutate though 2018-07-04T16:16:02Z fikka joined #lisp 2018-07-04T16:17:52Z graphene quit (Remote host closed the connection) 2018-07-04T16:18:00Z kuribas: lazyness is great for dynamic programming 2018-07-04T16:18:10Z kuribas: for example fibonacci series 2018-07-04T16:19:11Z shka: personally i simply stick ownership tag into each node that is supposed to be mutated in lazy manner 2018-07-04T16:19:19Z shka: simple, and works just fine 2018-07-04T16:19:29Z graphene joined #lisp 2018-07-04T16:20:49Z fikka quit (Ping timeout: 248 seconds) 2018-07-04T16:25:15Z patlv quit (Ping timeout: 245 seconds) 2018-07-04T16:28:26Z Khisanth joined #lisp 2018-07-04T16:29:54Z scymtym: i think what haskell does is similar to https://techfak.de/~jmoringe/lazy-list.lisp 2018-07-04T16:31:24Z varjag quit (Remote host closed the connection) 2018-07-04T16:32:13Z varjag joined #lisp 2018-07-04T16:36:07Z fikka joined #lisp 2018-07-04T16:38:32Z kuribas: what's the clean way to signal an error in a macro? 2018-07-04T16:39:11Z _death: clhs error 2018-07-04T16:39:11Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/a_error.htm 2018-07-04T16:40:34Z Kundry_Wag_ quit (Ping timeout: 264 seconds) 2018-07-04T16:41:15Z fikka quit (Ping timeout: 256 seconds) 2018-07-04T16:44:59Z kajo joined #lisp 2018-07-04T16:45:47Z hhdave quit (Ping timeout: 256 seconds) 2018-07-04T16:46:32Z fikka joined #lisp 2018-07-04T16:47:15Z nowhereman_ joined #lisp 2018-07-04T16:51:12Z fikka quit (Ping timeout: 256 seconds) 2018-07-04T16:56:37Z fikka joined #lisp 2018-07-04T16:58:40Z Oladon quit (Read error: Connection reset by peer) 2018-07-04T17:01:39Z fikka quit (Ping timeout: 256 seconds) 2018-07-04T17:06:21Z robotoad joined #lisp 2018-07-04T17:06:40Z fikka joined #lisp 2018-07-04T17:08:47Z m00natic quit (Remote host closed the connection) 2018-07-04T17:09:57Z MoziM quit (Ping timeout: 240 seconds) 2018-07-04T17:10:15Z Kundry_Wag_ joined #lisp 2018-07-04T17:11:47Z fikka quit (Ping timeout: 276 seconds) 2018-07-04T17:16:01Z pagnol joined #lisp 2018-07-04T17:19:37Z shka_ joined #lisp 2018-07-04T17:23:11Z lumm quit (Ping timeout: 256 seconds) 2018-07-04T17:25:32Z Kundry_Wag quit (Remote host closed the connection) 2018-07-04T17:27:29Z fikka joined #lisp 2018-07-04T17:31:06Z SenasOzys joined #lisp 2018-07-04T17:32:46Z fikka quit (Ping timeout: 264 seconds) 2018-07-04T17:33:28Z kjeldahl_ joined #lisp 2018-07-04T17:33:47Z thodg quit (Ping timeout: 276 seconds) 2018-07-04T17:36:55Z scymtym quit (Read error: Connection reset by peer) 2018-07-04T17:37:12Z scymtym joined #lisp 2018-07-04T17:38:25Z rumbler31 joined #lisp 2018-07-04T17:39:12Z patlv joined #lisp 2018-07-04T17:40:48Z Kundry_Wag joined #lisp 2018-07-04T17:42:25Z Folkol_ quit (Ping timeout: 248 seconds) 2018-07-04T17:42:45Z Kundry_Wag_ quit (Ping timeout: 260 seconds) 2018-07-04T17:43:04Z megalography joined #lisp 2018-07-04T17:43:32Z rumbler31 quit (Ping timeout: 276 seconds) 2018-07-04T17:44:25Z sjl joined #lisp 2018-07-04T17:45:28Z pseudonymous joined #lisp 2018-07-04T17:45:40Z kjeldahl_ quit (Ping timeout: 245 seconds) 2018-07-04T17:45:58Z mfiano: So, I've been thinking hard about an API problem in one of my projects, and the only good solution is a _very_ bad one. Please convince me not to use keyword symbols for a few function names. :) 2018-07-04T17:47:20Z Kundry_Wag quit (Remote host closed the connection) 2018-07-04T17:47:36Z Kundry_Wag joined #lisp 2018-07-04T17:47:44Z fikka joined #lisp 2018-07-04T17:50:13Z lumm joined #lisp 2018-07-04T17:50:20Z pjb: mfiano: is this for your own use at the REPL (or one of your end-user programs), or is it to put in a library? 2018-07-04T17:50:42Z mfiano: I'm writing a math library that does type dispatching using specialization-store. It shadows some CL symbols like `*`, `abs`, etc, in order to be concise, and because no other name really makes sense given that its functionality depends on the types of arguments. This means users will be unable to `use-package` this library's package, and prefixing every operation with `some-math-library:` will get old fast for 2018-07-04T17:50:44Z mfiano: long, nested, operations. A solution that was recommended to me was to use keyword symbols, and I am hating myself for considering them. 2018-07-04T17:50:49Z pjb: mfiano: if it's to put in a library, then definitely don't do that. Because if anybody else does the same, there will be a collision! 2018-07-04T17:51:47Z _Murii joined #lisp 2018-07-04T17:51:51Z pjb: mfiano: what you can do, is: 1- shadow them but make them compatible with CL. ie. (your-math:* matrix matrix) --> matrix, but (your-math:* number number) --> number. 2018-07-04T17:52:12Z pseudonymous quit (Remote host closed the connection) 2018-07-04T17:52:35Z pjb: and 2- define a cl-with-your-math package that re-exports your exported symbols, and the remaining of the CL package. 2018-07-04T17:52:40Z fikka quit (Ping timeout: 260 seconds) 2018-07-04T17:53:00Z pjb: then clients can (defpackage "FOO" (:use "CL-WITH-YOUR-MATH")…) instead of (:use "CL"). 2018-07-04T17:53:40Z mfiano: The important bit is not to mess with the performance of CL's functions, and type dispatching would hurt that 2018-07-04T17:53:58Z mfiano: Unless I'm misunderstanding you 2018-07-04T17:54:19Z pjb: Then let the user choose. 2018-07-04T17:54:25Z pseudonymous joined #lisp 2018-07-04T17:54:54Z sjl: mfiano: you could use a compiler macro to replace your special * with cl:* if the arguments are all known at compile time to be numbers 2018-07-04T17:54:55Z pjb: Notice that on your own symbol, you can define a compiler macro that can dispatch to the CL function if the arguments are known at compilation-time to be numbers. 2018-07-04T17:55:09Z pjb: But it's kind a special case, if you don't have type inference. 2018-07-04T17:55:42Z pjb: mfiano: notice that (cl:* 1 2) is short. 2018-07-04T17:56:00Z pjb: so the user can shadow-import your symbols, and still use cl functions with this short cl: prefix. 2018-07-04T17:56:47Z mfiano: These are all the symbols I am shadowing https://gist.github.com/mfiano/0ba68732ab49b128120a8443e1e796d9 2018-07-04T17:56:54Z pjb: it's easier than doing the other way. You shouldn't provide short package names or nicknames. Only the final user can add short nicknames. So he may write (mat:* (cl:* 3 pi) mat) 2018-07-04T17:57:52Z pjb: but another user would want to use m: instead of mat: since he would have a "MAT" package about floorwear… 2018-07-04T17:57:57Z patlv quit (Ping timeout: 264 seconds) 2018-07-04T17:58:07Z fikka joined #lisp 2018-07-04T17:58:40Z pjb: (actually he would have a com.informatimago.augmented-reality.furniture.mat package, that, as a final user, he would nickname mat). 2018-07-04T17:59:01Z pjb: Of course your math pachage would have to be nicknamed m and used to compute the 3D AR stuff… 2018-07-04T17:59:26Z pjb: cf. com.informatimago.common-lisp.cesarum.package:add-nickname 2018-07-04T17:59:29Z mfiano: Right. I'm trying to avoid any PLN in a library...that's for the user 2018-07-04T18:00:11Z pjb: mfiano: that said, if you avoid variadic operators, you can use generic functions, and then dispatching is fast enough. 2018-07-04T18:00:32Z mfiano: The very nature of this library is variadic unfortunately 2018-07-04T18:00:32Z pjb: (calling a generic function is amortized to only the double time of a function call). 2018-07-04T18:01:20Z igemnace joined #lisp 2018-07-04T18:01:44Z _death: g* instead of * isn't so bad 2018-07-04T18:02:07Z pjb: alternatively, you may use ×. 2018-07-04T18:02:11Z pjb: ie. unicode. 2018-07-04T18:02:12Z mfiano: gabs is pretty bad :/ 2018-07-04T18:02:28Z pjb: It's time we start using unicode, at least those simple characters… 2018-07-04T18:02:45Z fikka quit (Ping timeout: 245 seconds) 2018-07-04T18:03:05Z pjb: But again, you would provide unicode names only as an alternative to the real g* symbols. 2018-07-04T18:03:27Z sjl: (defun .* (x y) (* x y)) 2018-07-04T18:03:34Z pjb: (defalias × g*) (defalias ÷ g/) 2018-07-04T18:03:36Z mfiano: .* has a special meaning in math 2018-07-04T18:03:43Z mfiano: I considered it and shot down pretty fast 2018-07-04T18:03:44Z littlelisper joined #lisp 2018-07-04T18:03:52Z sjl: _*, etc etc 2018-07-04T18:04:07Z sjl: anything but :* 2018-07-04T18:04:23Z pjb: I mean if they can use shit characters, why couldn't we use mathematical symbols? 2018-07-04T18:05:20Z mfiano: primarily easy of use. if it's not ascii, it's not as easily typed for some people. 2018-07-04T18:05:23Z _death: I don't think gabs is particularly bad 2018-07-04T18:05:24Z mfiano: ease* 2018-07-04T18:05:48Z pjb: yes, this is why it should be aliases. 2018-07-04T18:06:27Z pjb: But you know, with emacs C-x 8 RET multiply sign RET is not hard to type, and you can also provide emacs keyboard macros or bindings. 2018-07-04T18:07:13Z sjl quit (Quit: WeeChat 2.2-dev) 2018-07-04T18:08:10Z fikka joined #lisp 2018-07-04T18:09:14Z mfiano: Well thanks for the suggestions everyone. I'll have to think a bit 2018-07-04T18:12:01Z sjl joined #lisp 2018-07-04T18:12:49Z fikka quit (Ping timeout: 248 seconds) 2018-07-04T18:14:39Z buffergn0me joined #lisp 2018-07-04T18:14:53Z cage_ quit (Quit: Leaving) 2018-07-04T18:17:44Z sjl quit (Quit: WeeChat 2.2-dev) 2018-07-04T18:18:45Z patlv joined #lisp 2018-07-04T18:21:28Z pjb: mfiano: there's an alternative. 2018-07-04T18:21:52Z pjb: mfiano: define a macro that will substitute the symbols. This macro will be able to do the code walking you need. 2018-07-04T18:21:56Z kjeldahl_ joined #lisp 2018-07-04T18:23:26Z pjb: (with-math (let ((x (identity-matrix 3)) (y (lower-triangle-matrix 3 42))) (/ (* 3 x y) (* 2 pi)))) would expand to: (let ((x (identity-matrix 3)) (y (lower-triangle-matrix 3 42))) (matrix:scalar/ (matrix:scalar* 3 (matrix:* x y)) (cl:* 2 pi))) 2018-07-04T18:24:19Z sjl joined #lisp 2018-07-04T18:28:17Z littlelisper quit (Ping timeout: 248 seconds) 2018-07-04T18:28:23Z fikka joined #lisp 2018-07-04T18:32:04Z kjeldahl_ quit (Ping timeout: 240 seconds) 2018-07-04T18:33:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-04T18:38:06Z Folkol quit (Ping timeout: 260 seconds) 2018-07-04T18:38:47Z fikka joined #lisp 2018-07-04T18:39:57Z patlv quit (Ping timeout: 240 seconds) 2018-07-04T18:43:34Z fikka quit (Ping timeout: 264 seconds) 2018-07-04T18:46:07Z kajo quit (Ping timeout: 256 seconds) 2018-07-04T18:46:21Z kerframil quit (Quit: Leaving) 2018-07-04T18:49:25Z sellout- quit (Ping timeout: 245 seconds) 2018-07-04T18:49:37Z nowhereman_ quit (Ping timeout: 248 seconds) 2018-07-04T18:50:17Z sellout- joined #lisp 2018-07-04T18:58:52Z fikka joined #lisp 2018-07-04T19:03:29Z fikka quit (Ping timeout: 256 seconds) 2018-07-04T19:06:47Z lnostdal joined #lisp 2018-07-04T19:09:17Z fikka joined #lisp 2018-07-04T19:10:27Z kajo joined #lisp 2018-07-04T19:13:46Z kjeldahl_ joined #lisp 2018-07-04T19:14:09Z fikka quit (Ping timeout: 264 seconds) 2018-07-04T19:19:31Z lnostdal quit (Read error: Connection reset by peer) 2018-07-04T19:19:49Z lnostdal joined #lisp 2018-07-04T19:22:29Z milanj joined #lisp 2018-07-04T19:25:03Z j0ni joined #lisp 2018-07-04T19:26:09Z igemnace quit (Remote host closed the connection) 2018-07-04T19:27:55Z EvW joined #lisp 2018-07-04T19:29:20Z fikka joined #lisp 2018-07-04T19:29:28Z zachk joined #lisp 2018-07-04T19:29:29Z zachk quit (Changing host) 2018-07-04T19:29:29Z zachk joined #lisp 2018-07-04T19:30:08Z Khisanth quit (Ping timeout: 276 seconds) 2018-07-04T19:30:40Z pierpal quit (Ping timeout: 260 seconds) 2018-07-04T19:31:00Z pierpal joined #lisp 2018-07-04T19:34:10Z fikka quit (Ping timeout: 260 seconds) 2018-07-04T19:39:07Z rumbler31 joined #lisp 2018-07-04T19:40:03Z fikka joined #lisp 2018-07-04T19:40:05Z Kundry_Wag_ joined #lisp 2018-07-04T19:41:23Z jmercouris joined #lisp 2018-07-04T19:42:29Z Khisanth joined #lisp 2018-07-04T19:43:35Z rumbler31 quit (Ping timeout: 245 seconds) 2018-07-04T19:44:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-04T19:44:36Z EvW quit (Ping timeout: 256 seconds) 2018-07-04T19:50:14Z fikka joined #lisp 2018-07-04T19:52:13Z shka_ quit (Ping timeout: 256 seconds) 2018-07-04T19:52:58Z ft quit (Remote host closed the connection) 2018-07-04T19:53:59Z scymtym quit (Ping timeout: 255 seconds) 2018-07-04T19:58:13Z vlatkoB quit (Remote host closed the connection) 2018-07-04T19:58:59Z payphone joined #lisp 2018-07-04T20:00:19Z EvW1 joined #lisp 2018-07-04T20:04:15Z lnostdal quit (Read error: Connection reset by peer) 2018-07-04T20:04:33Z lnostdal joined #lisp 2018-07-04T20:08:53Z kajo quit (Ping timeout: 265 seconds) 2018-07-04T20:09:27Z Kundry_Wag quit (Remote host closed the connection) 2018-07-04T20:10:49Z Kundry_Wag joined #lisp 2018-07-04T20:11:57Z pierpal quit (Quit: Poof) 2018-07-04T20:12:18Z pierpal joined #lisp 2018-07-04T20:12:25Z johnnymacs joined #lisp 2018-07-04T20:12:57Z Kundry_Wag_ quit (Ping timeout: 264 seconds) 2018-07-04T20:17:25Z samla joined #lisp 2018-07-04T20:19:34Z Kundry_Wag quit (Remote host closed the connection) 2018-07-04T20:20:23Z Kundry_Wag joined #lisp 2018-07-04T20:20:25Z samla quit (Client Quit) 2018-07-04T20:21:51Z lumm quit (Ping timeout: 240 seconds) 2018-07-04T20:22:24Z Kundry_Wag quit (Remote host closed the connection) 2018-07-04T20:22:51Z scymtym joined #lisp 2018-07-04T20:23:46Z Kundry_Wag joined #lisp 2018-07-04T20:23:54Z pierpa joined #lisp 2018-07-04T20:25:48Z graphene quit (Remote host closed the connection) 2018-07-04T20:26:22Z al-damiri joined #lisp 2018-07-04T20:27:11Z graphene joined #lisp 2018-07-04T20:27:42Z patlv joined #lisp 2018-07-04T20:29:37Z kajo joined #lisp 2018-07-04T20:30:09Z lumm joined #lisp 2018-07-04T20:30:58Z kuribas quit (Quit: ERC (IRC client for Emacs 24.5.1)) 2018-07-04T20:32:12Z angavrilov quit (Remote host closed the connection) 2018-07-04T20:32:32Z jmercouris quit (Remote host closed the connection) 2018-07-04T20:33:17Z attila_lendvai joined #lisp 2018-07-04T20:34:33Z bjorkintosh quit (Ping timeout: 264 seconds) 2018-07-04T20:36:27Z j0ni quit (Remote host closed the connection) 2018-07-04T20:43:46Z _Murii quit (Quit: Leaving) 2018-07-04T20:47:38Z nowhereman_ joined #lisp 2018-07-04T20:52:25Z kristof_ joined #lisp 2018-07-04T20:52:27Z kristof joined #lisp 2018-07-04T20:54:05Z johnnymacs quit (Ping timeout: 276 seconds) 2018-07-04T21:07:20Z attila_lendvai quit (Quit: Leaving.) 2018-07-04T21:12:07Z patlv quit (Ping timeout: 268 seconds) 2018-07-04T21:19:00Z Demosthenex: hey, i was reading about a new CL editing mode for emacs, it wasn't smartparens or electric-parens, it had a whole website. but now i can't find it. something Paren? 2018-07-04T21:19:41Z gabiruh joined #lisp 2018-07-04T21:19:48Z didi joined #lisp 2018-07-04T21:20:09Z didi: I wonder why PUSH wasn't extended to work with vectors too. 2018-07-04T21:20:22Z didi: Seems like a useful thing to do. 2018-07-04T21:20:52Z didi: Maybe there would be discussion about extending the vector or not while using PUSH. 2018-07-04T21:20:57Z thodg joined #lisp 2018-07-04T21:22:07Z Kundry_Wag quit (Remote host closed the connection) 2018-07-04T21:22:26Z Kundry_Wag joined #lisp 2018-07-04T21:25:45Z Kundry_Wag quit (Remote host closed the connection) 2018-07-04T21:26:01Z Kundry_Wag joined #lisp 2018-07-04T21:26:48Z kristof: didi: the interface is different. push returns the new list, vector-push returns the index or nil. 2018-07-04T21:27:03Z didi: kristof: Ah, true. 2018-07-04T21:27:47Z kristof: Now that begs the question why the interface couldn't be the same, but I think vector-push's is more useful for that type, and likewise for [list] push. 2018-07-04T21:28:35Z kristof: Actually, in other languages I have often wanted a kind of try-push-without-realloc, so the fact that vector-push behaves that way is... Nice. 2018-07-04T21:29:39Z didi: Interesting. I'm yet to use VECTOR-PUSH, tho I've used VECTOR-PUSH-EXTEND. 2018-07-04T21:30:25Z kristof: Yeah, that's a well designed function, too. 2018-07-04T21:31:15Z didi: In fact, I've tried using vectors, instead of lists, to decrease my garbage production, but I failed. Maybe I should control how the vectors are enlarged, I a realloc fewer of them. 2018-07-04T21:31:31Z kristof: How do you know you failed? 2018-07-04T21:31:58Z didi: kristof: Because after implementing it, the GC blows off at every run of my program. 2018-07-04T21:31:58Z kristof: The lists actually make compaction much easier (because conses are all the same size). 2018-07-04T21:32:41Z kristof: Oh, that's unfortunate. Have you thought about using a fixed size for the length and pooling them? 2018-07-04T21:32:59Z kristof: I dunno if that will help. 2018-07-04T21:33:02Z didi: My reasoning was that vectors would use less memory because they don't need to hold pointers to the next element, but I guess I didn't reach the right trade-off. 2018-07-04T21:33:25Z kristof: Well, there are other concerns, too, like finding memory segments large enough 2018-07-04T21:33:27Z didi: kristof: How do you mean? 2018-07-04T21:34:24Z kristof: How large are these vectors? 2018-07-04T21:34:31Z didi: My usual problem is having too much garbage for the GC, so it doubles the allocated memory and exhaust the heap. 2018-07-04T21:34:55Z Kundry_Wag quit (Remote host closed the connection) 2018-07-04T21:35:10Z didi: kristof: I dunno. I can compute the usual size, but they can grow during the execution of the program. 2018-07-04T21:35:12Z Kundry_Wag joined #lisp 2018-07-04T21:35:42Z kristof: Which implementation? 2018-07-04T21:35:47Z didi: kristof: SBCL. 2018-07-04T21:35:48Z Kundry_Wag quit (Remote host closed the connection) 2018-07-04T21:36:02Z kristof shrugs. 2018-07-04T21:36:14Z didi: kristof: What implementation do you have in mind? 2018-07-04T21:36:43Z kristof: I didnt have any, but by you saying which it is, maybe someone else will have a better idea of how to keep the GC happy. 2018-07-04T21:37:05Z didi: I am all earls. And eager. :-) 2018-07-04T21:39:56Z rumbler31 joined #lisp 2018-07-04T21:42:27Z didi: My last strategy is running, from the REPL, (dotimes (i 6) (sb-ext:gc :gen i)) from time to time. A full run of gc usually exhaust the heap. 2018-07-04T21:42:47Z graphene quit (Remote host closed the connection) 2018-07-04T21:44:09Z graphene joined #lisp 2018-07-04T21:44:33Z rumbler31 quit (Ping timeout: 248 seconds) 2018-07-04T21:45:47Z markoong quit (Quit: Konversation terminated!) 2018-07-04T21:46:06Z markoong joined #lisp 2018-07-04T21:50:45Z markoong quit (Ping timeout: 264 seconds) 2018-07-04T21:51:25Z Demosthenex: http://shaunlebron.github.io/parinfer/ , its not an emacs mode. :P 2018-07-04T21:54:02Z aeth: didi: Have you tried manually implementing your data structure on top of vectors instead of using vector-push or vector-push-extend? 2018-07-04T21:54:29Z didi: aeth: I didn't, but how would I do that? 2018-07-04T21:54:32Z attila_lendvai joined #lisp 2018-07-04T21:55:03Z didi: What I need is something to hold keys and values. 2018-07-04T21:55:25Z aeth: What are the keys and what are the values? 2018-07-04T21:56:26Z didi: The keys are anything that can be compared using EQ, EQL, EQUAL, and EQUALP. The value is a list of natural numbers. 2018-07-04T21:56:53Z random-nick quit (Read error: Connection reset by peer) 2018-07-04T21:57:20Z nowhereman_ quit (Ping timeout: 256 seconds) 2018-07-04T21:57:50Z nowhere_man joined #lisp 2018-07-04T21:58:57Z aeth: didi: How are you putting these in vectors? 2018-07-04T21:58:59Z fikka quit (Ping timeout: 268 seconds) 2018-07-04T21:59:59Z didi: aeth: I'm not using vectors anymore, but when I was, I used this function: https://paste.debian.net/hidden/7f14071b 2018-07-04T22:00:13Z rpg joined #lisp 2018-07-04T22:01:02Z EvW1 quit (Ping timeout: 276 seconds) 2018-07-04T22:01:15Z EvW joined #lisp 2018-07-04T22:01:34Z didi: I was treating a vector as an alist, that is, each element was a cons (KEY . VALUE). 2018-07-04T22:01:43Z aeth: ahah 2018-07-04T22:01:57Z didi: :-P 2018-07-04T22:03:16Z didi: aeth: Maybe two vectors would be better? I didn't think so, at the time. 2018-07-04T22:03:35Z aeth: Perhaps try having two vectors, one for keys and one for values, and put them both in a struct with each slot given a :type so SBCL doesn't lose the type information 2018-07-04T22:04:18Z aeth: (That's my main use of structs. Implementations respect its :type more than CLOS objects) 2018-07-04T22:04:37Z didi: aeth: I might try that. Tho I might no be able to specify the vector's element type. 2018-07-04T22:05:02Z aeth: Right, if you're willing to restrict the number to a certain kind of number so you can get a specialized array via :element-type that would help, at least for the value (not for the key) 2018-07-04T22:05:16Z didi: Indeed. 2018-07-04T22:05:25Z didi: Worth a shot, thank you. 2018-07-04T22:05:46Z aeth: Unfortunately, :element-type can only work on single-float, double-float, bit, character, and various integer sizes (with only bit and character guaranteed and octet de facto guaranteed) 2018-07-04T22:05:51Z aeth: Because otherwise that would be perfect. 2018-07-04T22:06:10Z aeth: (It would also be nice to have :element-type work on boolean and symbol. Then you could restrict your key to symbol.) 2018-07-04T22:06:41Z Kundry_Wag joined #lisp 2018-07-04T22:09:49Z aeth: It's possible that someone in #sbcl knows some potentially-unportable SBCL-specific tricks that could help 2018-07-04T22:09:54Z Kundry_Wag_ joined #lisp 2018-07-04T22:11:05Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-04T22:11:50Z didi: Yeah. If think if I were to restrict the type of keys, I would go full FIXNUM, so I can drop the hash-table that I'm using too. But I'm not prepared to drop the convenience of having strings as keys. 2018-07-04T22:12:07Z didi: *I think if I were... 2018-07-04T22:12:25Z patlv joined #lisp 2018-07-04T22:12:53Z aeth: I usually convert strings to symbols when I'm using them as keys 2018-07-04T22:12:55Z didi: aeth: I asked in #sbcl, thank you. 2018-07-04T22:13:09Z didi: aeth: Hum... 2018-07-04T22:13:23Z didi: aeth: Another idea. Thank you. I might try that. 2018-07-04T22:13:38Z aeth: I think one of the few major flaws in the HyperSpec is having specialized arrays but not having specialized hash tables (at least for the values if not the keys... but restricting keys to symbols could also work) 2018-07-04T22:14:24Z aeth: Associating a symbol with a small integer seems like a common enough thing for hash-tables. 2018-07-04T22:15:05Z aeth: (I suppose being able to directly access the symbol fixnum value would be another thing if used in a portable way, but that's going too far imo.) 2018-07-04T22:15:10Z fikka joined #lisp 2018-07-04T22:15:48Z graphene quit (Remote host closed the connection) 2018-07-04T22:16:25Z didi: I thought of a FIXNUM as a key because it maps directly to the position of a vector. 2018-07-04T22:17:12Z graphene joined #lisp 2018-07-04T22:17:13Z vtomole joined #lisp 2018-07-04T22:17:24Z bjorkintosh joined #lisp 2018-07-04T22:18:51Z didi: And there isn't much value of having a vector larger than MOST-POSITIVE-FIXNUM. At least, not in my environment. 2018-07-04T22:19:01Z cgore joined #lisp 2018-07-04T22:19:52Z aeth: didi: So you're saying that there's a key fixnum vector? So this? (aref value-vector (aref key-vector 42)) 2018-07-04T22:20:03Z cgore quit (Remote host closed the connection) 2018-07-04T22:20:09Z fikka quit (Ping timeout: 264 seconds) 2018-07-04T22:21:43Z didi: aeth: Oh yes. My data structure is a classic graph using an adjacent list. So it's a hash-table with keys as the vertices, and the values as adjacent lists, where each element is (VERTEX . NATURALS). 2018-07-04T22:24:45Z aeth: If you want to represent all numbers and not just use floating point or some restricted integer size, it might be fastest to store two fixnums, the numerator and the denominator. 2018-07-04T22:25:56Z didi: aeth: Thank you. But my NATURALS are 0, 1, 2, ..., so no fraction. 2018-07-04T22:26:09Z aeth: just naturals is easier, store fixnums? 2018-07-04T22:26:27Z aeth: sorry, I guess my mind parsed "naturals" as "numbers" for some reason 2018-07-04T22:27:05Z patlv quit (Ping timeout: 240 seconds) 2018-07-04T22:27:09Z didi: aeth: I can. But a list for NATURALS seem to be ideal. There isn't many of them inside each list, tho they are millions in total. 2018-07-04T22:28:20Z aeth: Afaik, an array of (unsigned-byte 64) (even though some of those will be bignums) should be faster than using conses to store them, just based on how modern computer architectures work. 2018-07-04T22:28:49Z didi: aeth: Thank you. I might try it. Tho my problem right now isn't with time, but memory. 2018-07-04T22:29:18Z aeth: How large can they go? 2018-07-04T22:30:15Z didi: No no. Not the naturals. They can't go too high, anyway. But with the total of memory that my program uses, the garbage is produces, and the heap exhaustion by the GC. 2018-07-04T22:30:37Z aeth: I think the array approach will be 1/2 in memory just with (unsigned-byte 64) because you're going to be storing N elements, not N elements and N pointers. If you restrict it to (unsigned-byte 32) that'd be 1/4. 2018-07-04T22:30:52Z didi: aeth: Nice, thank you. 2018-07-04T22:31:38Z didi: I /think/ the constant extension of vectors produced too much garbage, but it's just a hunch. 2018-07-04T22:32:24Z aeth: Since you're using an adjustable vector, it could in the worst case be almost double (if it's doing the whole doubling thing). As long as you're not adjusting it too often. 2018-07-04T22:32:53Z lnostdal quit (Ping timeout: 276 seconds) 2018-07-04T22:33:26Z didi: Yeah. I might try to tweak how the vectors are adjusted (I read something about it somewhere). 2018-07-04T22:34:01Z aeth: But what's strange is that it would be almost double of half the size. 2018-07-04T22:34:26Z aeth: (Unless one of my assumptions is wrong?) 2018-07-04T22:34:35Z didi: I dunno. 2018-07-04T22:35:21Z fikka joined #lisp 2018-07-04T22:35:31Z varjag quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2018-07-04T22:36:13Z Jesin quit (Quit: Leaving) 2018-07-04T22:36:54Z didi` joined #lisp 2018-07-04T22:37:10Z _paul0 joined #lisp 2018-07-04T22:37:25Z _paul0 quit (Remote host closed the connection) 2018-07-04T22:39:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-04T22:40:39Z didi quit (Ping timeout: 265 seconds) 2018-07-04T22:40:40Z didi` is now known as didi 2018-07-04T22:40:43Z paul0 quit (Ping timeout: 256 seconds) 2018-07-04T22:43:05Z Kundry_Wag_ quit (Ping timeout: 240 seconds) 2018-07-04T22:44:16Z pioneer42 joined #lisp 2018-07-04T22:45:54Z pseudonymous quit (Ping timeout: 260 seconds) 2018-07-04T22:45:55Z fikka joined #lisp 2018-07-04T22:47:11Z Ukari quit (Ping timeout: 276 seconds) 2018-07-04T22:50:07Z bjorkintosh quit (Remote host closed the connection) 2018-07-04T22:50:27Z bjorkintosh joined #lisp 2018-07-04T22:50:46Z fikka quit (Ping timeout: 264 seconds) 2018-07-04T22:56:17Z fikka joined #lisp 2018-07-04T22:57:10Z pagnol quit (Ping timeout: 260 seconds) 2018-07-04T22:58:18Z pagnol joined #lisp 2018-07-04T23:00:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-04T23:00:51Z Ukari joined #lisp 2018-07-04T23:05:54Z fikka joined #lisp 2018-07-04T23:06:39Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-04T23:07:06Z nickenchuggets joined #lisp 2018-07-04T23:07:06Z nickenchuggets quit (Changing host) 2018-07-04T23:07:06Z nickenchuggets joined #lisp 2018-07-04T23:10:25Z fikka quit (Ping timeout: 248 seconds) 2018-07-04T23:11:38Z Kundry_Wag joined #lisp 2018-07-04T23:13:23Z pioneer42 quit (Quit: Leaving.) 2018-07-04T23:15:57Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-04T23:16:37Z Kundry_Wag joined #lisp 2018-07-04T23:18:46Z ealfonso joined #lisp 2018-07-04T23:24:43Z Kaisyu joined #lisp 2018-07-04T23:26:12Z fikka joined #lisp 2018-07-04T23:27:49Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2018-07-04T23:30:13Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-04T23:31:00Z fikka quit (Ping timeout: 260 seconds) 2018-07-04T23:36:37Z fikka joined #lisp 2018-07-04T23:37:13Z bjorkintosh quit (Remote host closed the connection) 2018-07-04T23:40:37Z rumbler31 joined #lisp 2018-07-04T23:41:36Z fikka quit (Ping timeout: 256 seconds) 2018-07-04T23:45:05Z rumbler31 quit (Ping timeout: 248 seconds) 2018-07-04T23:45:23Z kobain joined #lisp 2018-07-04T23:46:21Z vtomole: Is it possible to export all symbols in defpackage instead of exporting each symbol individually? 2018-07-04T23:46:39Z fikka joined #lisp 2018-07-04T23:48:35Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-04T23:49:05Z thodg quit (Ping timeout: 240 seconds) 2018-07-04T23:51:25Z fikka quit (Ping timeout: 260 seconds) 2018-07-04T23:54:53Z lumm quit (Quit: lumm) 2018-07-04T23:56:59Z fikka joined #lisp 2018-07-04T23:58:53Z mflem joined #lisp 2018-07-04T23:59:34Z Bike: "all symbols" meaning what 2018-07-05T00:00:35Z Bike: if you write (defun iota (n) (loop for i below n collect i)) there will be symbols I, N, FOR, BELOW, COLLECT in the package 2018-07-05T00:01:37Z fikka quit (Ping timeout: 248 seconds) 2018-07-05T00:04:45Z pjb quit (Ping timeout: 265 seconds) 2018-07-05T00:06:20Z graphene quit (Remote host closed the connection) 2018-07-05T00:07:19Z fikka joined #lisp 2018-07-05T00:07:41Z graphene joined #lisp 2018-07-05T00:11:29Z vtomole: Bike: Sorry I meant all symbols that I define IN that package. 2018-07-05T00:11:50Z fikka quit (Ping timeout: 260 seconds) 2018-07-05T00:11:56Z Bike: those are symbols in that package 2018-07-05T00:12:05Z buffergn0me quit (Ping timeout: 240 seconds) 2018-07-05T00:13:05Z vtomole: Ah okay I see. Thanks. 2018-07-05T00:17:00Z fikka joined #lisp 2018-07-05T00:19:56Z kristof: vtomole: do-symbols and call export? 2018-07-05T00:21:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-05T00:24:16Z Kundry_Wag joined #lisp 2018-07-05T00:27:27Z fikka joined #lisp 2018-07-05T00:27:57Z Khisanth quit (Ping timeout: 240 seconds) 2018-07-05T00:29:02Z paul0 joined #lisp 2018-07-05T00:32:09Z fikka quit (Ping timeout: 256 seconds) 2018-07-05T00:32:15Z terpri quit (Ping timeout: 260 seconds) 2018-07-05T00:32:33Z zachk quit (Quit: Leaving) 2018-07-05T00:37:18Z vtomole: kristof: i'll look into it. Thank you. 2018-07-05T00:37:30Z fikka joined #lisp 2018-07-05T00:41:19Z dddddd quit (Remote host closed the connection) 2018-07-05T00:41:27Z Khisanth joined #lisp 2018-07-05T00:41:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-05T00:43:50Z eli_oat joined #lisp 2018-07-05T00:45:31Z Kundry_W_ joined #lisp 2018-07-05T00:47:37Z fikka joined #lisp 2018-07-05T00:50:35Z Kundry_W_ quit (Ping timeout: 276 seconds) 2018-07-05T00:52:17Z fikka quit (Ping timeout: 248 seconds) 2018-07-05T00:52:20Z Kundry_Wag_ joined #lisp 2018-07-05T00:53:53Z Kundry_Wag quit (Ping timeout: 248 seconds) 2018-07-05T01:01:43Z eli_oat quit (Quit: Leaving.) 2018-07-05T01:07:48Z fikka joined #lisp 2018-07-05T01:12:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-05T01:18:14Z fikka joined #lisp 2018-07-05T01:18:59Z mathZ joined #lisp 2018-07-05T01:23:06Z fikka quit (Ping timeout: 268 seconds) 2018-07-05T01:25:21Z mathZ` joined #lisp 2018-07-05T01:26:15Z mathZ quit (Remote host closed the connection) 2018-07-05T01:27:05Z al-damiri quit (Quit: Connection closed for inactivity) 2018-07-05T01:28:45Z eli_oat joined #lisp 2018-07-05T01:33:35Z skapata quit (Remote host closed the connection) 2018-07-05T01:34:02Z Kundry_Wag_ quit (Remote host closed the connection) 2018-07-05T01:38:18Z fikka joined #lisp 2018-07-05T01:40:04Z Smokitch_ quit 2018-07-05T01:40:24Z Oddity quit 2018-07-05T01:41:31Z rumbler31 joined #lisp 2018-07-05T01:41:57Z shifty joined #lisp 2018-07-05T01:42:22Z attila_lendvai quit (Ping timeout: 264 seconds) 2018-07-05T01:42:45Z milanj quit (Quit: This computer has gone to sleep) 2018-07-05T01:42:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-05T01:44:57Z xrash quit (Ping timeout: 240 seconds) 2018-07-05T01:45:05Z logicmoo quit (Ping timeout: 248 seconds) 2018-07-05T01:45:57Z rumbler31 quit (Ping timeout: 264 seconds) 2018-07-05T01:46:56Z xrash joined #lisp 2018-07-05T01:48:09Z Kundry_Wag joined #lisp 2018-07-05T01:48:21Z EvW quit (Ping timeout: 240 seconds) 2018-07-05T01:48:26Z dmiles joined #lisp 2018-07-05T01:48:43Z fikka joined #lisp 2018-07-05T01:49:37Z Pixel_Outlaw quit (Quit: Leaving) 2018-07-05T01:52:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-05T01:58:44Z fikka joined #lisp 2018-07-05T01:59:34Z rpg joined #lisp 2018-07-05T01:59:50Z PuercoPop quit (Ping timeout: 245 seconds) 2018-07-05T02:03:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-05T02:06:20Z subroot joined #lisp 2018-07-05T02:09:00Z fikka joined #lisp 2018-07-05T02:09:01Z eli_oat quit (Quit: Leaving.) 2018-07-05T02:10:41Z robotoad quit (Quit: robotoad) 2018-07-05T02:11:17Z Kundry_W_ joined #lisp 2018-07-05T02:12:26Z anewuser joined #lisp 2018-07-05T02:13:32Z fikka quit (Ping timeout: 245 seconds) 2018-07-05T02:15:44Z Kundry_W_ quit (Ping timeout: 256 seconds) 2018-07-05T02:19:08Z fikka joined #lisp 2018-07-05T02:24:21Z fikka quit (Ping timeout: 264 seconds) 2018-07-05T02:24:48Z balavir quit (Quit: leaving) 2018-07-05T02:25:38Z AetherWind joined #lisp 2018-07-05T02:27:12Z eli_oat joined #lisp 2018-07-05T02:28:25Z terpri joined #lisp 2018-07-05T02:31:06Z pierpa quit (Quit: Page closed) 2018-07-05T02:34:29Z robotoad joined #lisp 2018-07-05T02:38:35Z makomo quit (Ping timeout: 276 seconds) 2018-07-05T02:39:13Z fikka joined #lisp 2018-07-05T02:40:24Z Kundry_W_ joined #lisp 2018-07-05T02:44:03Z Kundry_Wag quit (Remote host closed the connection) 2018-07-05T02:44:30Z fikka quit (Ping timeout: 268 seconds) 2018-07-05T02:45:07Z Kundry_W_ quit (Ping timeout: 268 seconds) 2018-07-05T02:45:17Z EvW joined #lisp 2018-07-05T02:47:21Z pierpal quit (Read error: Connection reset by peer) 2018-07-05T02:47:34Z pierpal joined #lisp 2018-07-05T02:48:31Z subroot quit (Read error: Connection reset by peer) 2018-07-05T02:52:45Z pierpal quit (Read error: Connection reset by peer) 2018-07-05T02:53:14Z pierpal joined #lisp 2018-07-05T02:54:59Z beach: Good morning everyone! 2018-07-05T02:59:29Z fikka joined #lisp 2018-07-05T03:04:01Z fikka quit (Ping timeout: 248 seconds) 2018-07-05T03:09:21Z didi quit (Remote host closed the connection) 2018-07-05T03:09:41Z didi joined #lisp 2018-07-05T03:10:25Z Kundry_Wag joined #lisp 2018-07-05T03:11:23Z shifty quit (Ping timeout: 256 seconds) 2018-07-05T03:12:22Z pagnol_ joined #lisp 2018-07-05T03:12:44Z patlv joined #lisp 2018-07-05T03:14:57Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-05T03:15:58Z pagnol quit (Ping timeout: 264 seconds) 2018-07-05T03:19:50Z fikka joined #lisp 2018-07-05T03:20:18Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-05T03:24:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-05T03:26:00Z kobain quit (Ping timeout: 256 seconds) 2018-07-05T03:27:08Z patlv quit (Ping timeout: 256 seconds) 2018-07-05T03:28:04Z anewuser quit (Quit: anewuser) 2018-07-05T03:28:34Z eli_oat quit (Quit: Leaving.) 2018-07-05T03:30:14Z fikka joined #lisp 2018-07-05T03:31:50Z patlv joined #lisp 2018-07-05T03:34:47Z fikka quit (Ping timeout: 245 seconds) 2018-07-05T03:36:52Z patlv quit (Ping timeout: 245 seconds) 2018-07-05T03:38:59Z Bike quit (Quit: Lost terminal) 2018-07-05T03:40:22Z fikka joined #lisp 2018-07-05T03:42:39Z Oddity joined #lisp 2018-07-05T03:43:36Z Ukari quit (Remote host closed the connection) 2018-07-05T03:44:51Z fikka quit (Ping timeout: 240 seconds) 2018-07-05T03:45:00Z k4rtik joined #lisp 2018-07-05T03:50:32Z fikka joined #lisp 2018-07-05T03:51:05Z EvW quit (Ping timeout: 245 seconds) 2018-07-05T03:54:51Z fikka quit (Ping timeout: 240 seconds) 2018-07-05T03:54:51Z ebrasca quit (Read error: Connection reset by peer) 2018-07-05T03:55:46Z ebrasca joined #lisp 2018-07-05T03:57:08Z Khisanth quit (Ping timeout: 276 seconds) 2018-07-05T04:00:40Z fikka joined #lisp 2018-07-05T04:03:24Z MoziM joined #lisp 2018-07-05T04:05:34Z fikka quit (Ping timeout: 260 seconds) 2018-07-05T04:07:17Z patlv joined #lisp 2018-07-05T04:09:02Z oni-on-ion: morning beach if still is so 2018-07-05T04:09:18Z Khisanth joined #lisp 2018-07-05T04:10:01Z doesthiswork quit (Quit: Leaving.) 2018-07-05T04:10:28Z beach: It is. Thanks. 2018-07-05T04:10:57Z robotoad quit (Read error: Connection reset by peer) 2018-07-05T04:12:26Z robotoad joined #lisp 2018-07-05T04:17:38Z beach: Today, I'll again work on the specification of the SICL global garbage collector. 2018-07-05T04:19:16Z littlelisper joined #lisp 2018-07-05T04:20:47Z fikka joined #lisp 2018-07-05T04:21:11Z littlelisper quit (Client Quit) 2018-07-05T04:24:22Z oni-on-ion quit (Ping timeout: 264 seconds) 2018-07-05T04:26:52Z fikka quit (Ping timeout: 268 seconds) 2018-07-05T04:26:57Z jasom quit (Quit: WeeChat 1.9.1) 2018-07-05T04:30:12Z oni-on-ion joined #lisp 2018-07-05T04:31:27Z jasom joined #lisp 2018-07-05T04:31:27Z fikka joined #lisp 2018-07-05T04:36:26Z fikka quit (Ping timeout: 255 seconds) 2018-07-05T04:41:41Z shachaf quit (Ping timeout: 256 seconds) 2018-07-05T04:41:52Z fikka joined #lisp 2018-07-05T04:42:32Z shachaf joined #lisp 2018-07-05T04:43:23Z robotoad quit (Quit: robotoad) 2018-07-05T04:45:20Z froggey quit (Ping timeout: 276 seconds) 2018-07-05T04:46:35Z fikka quit (Ping timeout: 256 seconds) 2018-07-05T04:46:56Z froggey joined #lisp 2018-07-05T04:49:02Z vlatkoB joined #lisp 2018-07-05T04:49:53Z igemnace joined #lisp 2018-07-05T04:52:08Z fikka joined #lisp 2018-07-05T04:54:03Z shka_ joined #lisp 2018-07-05T04:55:23Z evilbot23 joined #lisp 2018-07-05T04:56:47Z fikka quit (Ping timeout: 256 seconds) 2018-07-05T04:58:41Z Folkol joined #lisp 2018-07-05T04:59:23Z mathrick quit (Ping timeout: 255 seconds) 2018-07-05T05:02:11Z fikka joined #lisp 2018-07-05T05:03:20Z Folkol quit (Ping timeout: 256 seconds) 2018-07-05T05:04:25Z mlf|2 joined #lisp 2018-07-05T05:06:27Z mflem quit (Ping timeout: 245 seconds) 2018-07-05T05:07:10Z LdBeth: CL-HTTP is harder to setup than I expected. 2018-07-05T05:07:18Z fikka quit (Ping timeout: 256 seconds) 2018-07-05T05:08:10Z Zhivago: How hard did you expect it to be to set up? 2018-07-05T05:10:15Z wigust- quit (Quit: ZNC 1.7.0 - https://znc.in) 2018-07-05T05:12:10Z fikka joined #lisp 2018-07-05T05:12:59Z robotoad joined #lisp 2018-07-05T05:14:22Z mathrick joined #lisp 2018-07-05T05:14:38Z ealfonso quit (Read error: Connection reset by peer) 2018-07-05T05:14:56Z ealfonso joined #lisp 2018-07-05T05:17:08Z pierpal quit (Quit: Poof) 2018-07-05T05:17:09Z fikka quit (Ping timeout: 264 seconds) 2018-07-05T05:17:25Z pierpal joined #lisp 2018-07-05T05:23:35Z patlv quit (Ping timeout: 245 seconds) 2018-07-05T05:32:27Z shka_ quit (Ping timeout: 240 seconds) 2018-07-05T05:32:28Z fikka joined #lisp 2018-07-05T05:37:12Z Inline quit (Quit: Leaving) 2018-07-05T05:37:17Z fikka quit (Ping timeout: 245 seconds) 2018-07-05T05:41:24Z vtomole quit (Ping timeout: 252 seconds) 2018-07-05T05:42:55Z fikka joined #lisp 2018-07-05T05:42:58Z rumbler31 joined #lisp 2018-07-05T05:43:29Z k4rtik quit (Ping timeout: 248 seconds) 2018-07-05T05:43:50Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-05T05:47:10Z EvW joined #lisp 2018-07-05T05:47:25Z rumbler31 quit (Ping timeout: 256 seconds) 2018-07-05T05:47:45Z fikka quit (Ping timeout: 248 seconds) 2018-07-05T05:48:21Z pierpal quit (Ping timeout: 264 seconds) 2018-07-05T05:51:25Z shifty joined #lisp 2018-07-05T05:52:02Z flamebeard joined #lisp 2018-07-05T05:52:09Z eschatologist joined #lisp 2018-07-05T05:54:31Z Folkol joined #lisp 2018-07-05T05:56:32Z EvW quit (Ping timeout: 255 seconds) 2018-07-05T05:57:27Z libre-man quit (Ping timeout: 240 seconds) 2018-07-05T06:00:57Z pagnol_ quit (Ping timeout: 240 seconds) 2018-07-05T06:02:57Z fikka joined #lisp 2018-07-05T06:03:22Z Arcaelyx quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-05T06:07:06Z flip214: is that newer or older than hunchentoot? 2018-07-05T06:08:00Z fikka quit (Ping timeout: 268 seconds) 2018-07-05T06:09:35Z didi left #lisp 2018-07-05T06:09:43Z doesthiswork joined #lisp 2018-07-05T06:10:34Z Kundry_Wag joined #lisp 2018-07-05T06:10:39Z EvW joined #lisp 2018-07-05T06:11:55Z EvW quit (Client Quit) 2018-07-05T06:15:15Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-05T06:19:12Z pillton: It depends on how you observe it. 2018-07-05T06:19:52Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-05T06:22:51Z kerframil joined #lisp 2018-07-05T06:23:12Z fikka joined #lisp 2018-07-05T06:24:22Z oni-on-ion quit (Ping timeout: 264 seconds) 2018-07-05T06:26:02Z robotoad quit (Quit: robotoad) 2018-07-05T06:27:05Z brettgilio joined #lisp 2018-07-05T06:28:01Z fikka quit (Ping timeout: 256 seconds) 2018-07-05T06:31:45Z flip214: pillton: well, I believe that the reference system "Earth" is good enough for a common time axis ... 2018-07-05T06:33:42Z fikka joined #lisp 2018-07-05T06:34:36Z LdBeth: flip214: it’s the oldest 2018-07-05T06:35:28Z Kundry_Wag joined #lisp 2018-07-05T06:35:48Z Folkol_ joined #lisp 2018-07-05T06:35:56Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-05T06:36:37Z Smokitch joined #lisp 2018-07-05T06:37:13Z LdBeth: I just want hosting some static pages 2018-07-05T06:37:21Z merodix joined #lisp 2018-07-05T06:38:32Z fikka quit (Ping timeout: 256 seconds) 2018-07-05T06:38:59Z deng_cn joined #lisp 2018-07-05T06:38:59Z pillton: Once you start sentences with "I just want" it is time to step away and revisit your expectations. 2018-07-05T06:39:16Z fikka joined #lisp 2018-07-05T06:39:51Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-05T06:40:11Z jackdaniel: LdBeth: use coleslaw to generate content and nginx for serving pages 2018-07-05T06:41:56Z graphene quit (Remote host closed the connection) 2018-07-05T06:42:56Z light2yellow joined #lisp 2018-07-05T06:43:18Z graphene joined #lisp 2018-07-05T06:44:31Z mathZ` quit (Remote host closed the connection) 2018-07-05T06:48:14Z lnostdal joined #lisp 2018-07-05T06:51:51Z brettgilio quit (Ping timeout: 240 seconds) 2018-07-05T06:54:10Z lnostdal quit (Read error: Connection reset by peer) 2018-07-05T06:54:31Z lnostdal joined #lisp 2018-07-05T07:00:10Z brettgilio joined #lisp 2018-07-05T07:03:16Z varjag joined #lisp 2018-07-05T07:03:43Z brettgilio quit (Remote host closed the connection) 2018-07-05T07:04:54Z wigust joined #lisp 2018-07-05T07:05:45Z lnostdal quit (Read error: Connection reset by peer) 2018-07-05T07:05:59Z lnostdal joined #lisp 2018-07-05T07:09:56Z brettgilio joined #lisp 2018-07-05T07:13:06Z rotty quit (Ping timeout: 256 seconds) 2018-07-05T07:17:48Z buffergn0me joined #lisp 2018-07-05T07:18:32Z Kundry_Wag joined #lisp 2018-07-05T07:19:14Z brettgilio quit (Quit: Goodbye!) 2018-07-05T07:20:40Z lnostdal quit (Ping timeout: 245 seconds) 2018-07-05T07:23:45Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-05T07:25:44Z rotty joined #lisp 2018-07-05T07:31:32Z shrdlu68 joined #lisp 2018-07-05T07:31:34Z littlelisper joined #lisp 2018-07-05T07:44:17Z milanj joined #lisp 2018-07-05T07:51:22Z Oddity quit (Ping timeout: 264 seconds) 2018-07-05T07:53:25Z shka: there are multiple ways to generate html in cl 2018-07-05T07:53:47Z LdBeth: Since I finally figured out, and CL-HTTP can be deployed as a single executable, I would not touch nginx anyway. 2018-07-05T07:54:48Z doesthiswork quit (Quit: Leaving.) 2018-07-05T07:56:45Z charh quit (Ping timeout: 264 seconds) 2018-07-05T07:58:48Z graphene quit (Remote host closed the connection) 2018-07-05T08:00:12Z graphene joined #lisp 2018-07-05T08:05:54Z schweers joined #lisp 2018-07-05T08:11:02Z ealfonso quit (Ping timeout: 260 seconds) 2018-07-05T08:13:14Z buffergn0me quit (Ping timeout: 276 seconds) 2018-07-05T08:14:22Z nowhere_man quit (Ping timeout: 245 seconds) 2018-07-05T08:16:12Z pagnol_ joined #lisp 2018-07-05T08:17:16Z pagnol_ quit (Remote host closed the connection) 2018-07-05T08:17:30Z fikka quit (Ping timeout: 268 seconds) 2018-07-05T08:26:42Z fikka joined #lisp 2018-07-05T08:29:04Z pchrist quit (Quit: leaving) 2018-07-05T08:29:22Z Folkol_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-05T08:29:55Z pchrist joined #lisp 2018-07-05T08:32:14Z Folkol_ joined #lisp 2018-07-05T08:34:31Z mlf|2 quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2018-07-05T08:37:41Z _cosmonaut_ joined #lisp 2018-07-05T08:40:25Z ebrasca quit (Remote host closed the connection) 2018-07-05T08:41:47Z Folkol_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-05T08:47:08Z Folkol_ joined #lisp 2018-07-05T08:48:05Z shrdlu68 quit (Ping timeout: 240 seconds) 2018-07-05T08:48:48Z shrdlu68 joined #lisp 2018-07-05T08:49:15Z xrash quit (Ping timeout: 260 seconds) 2018-07-05T08:52:38Z Folkol_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-05T08:53:15Z nowhere_man joined #lisp 2018-07-05T08:53:58Z littlelisper quit (Ping timeout: 260 seconds) 2018-07-05T08:59:43Z Folkol_ joined #lisp 2018-07-05T09:01:37Z Demosthenex left #lisp 2018-07-05T09:03:12Z edgar-rft joined #lisp 2018-07-05T09:06:17Z random-nick joined #lisp 2018-07-05T09:06:53Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-05T09:07:19Z wigust- joined #lisp 2018-07-05T09:10:17Z wigust quit (Ping timeout: 256 seconds) 2018-07-05T09:13:58Z deng_cn quit (Quit: deng_cn) 2018-07-05T09:14:56Z Folkol_ is now known as Folkol_work 2018-07-05T09:16:09Z deng_cn joined #lisp 2018-07-05T09:17:27Z rippa joined #lisp 2018-07-05T09:19:02Z schweers quit (Remote host closed the connection) 2018-07-05T09:24:38Z schweers joined #lisp 2018-07-05T09:25:50Z m00natic joined #lisp 2018-07-05T09:40:02Z deng_cn quit (Remote host closed the connection) 2018-07-05T09:40:26Z deng_cn joined #lisp 2018-07-05T09:44:31Z rumbler31 joined #lisp 2018-07-05T09:45:13Z fikka quit (Ping timeout: 256 seconds) 2018-07-05T09:48:56Z jackdaniel: easy task recommended for beginners! https://github.com/sharplispers/log4cl/issues/26 [pick me] :-) 2018-07-05T09:49:26Z rumbler31 quit (Ping timeout: 276 seconds) 2018-07-05T09:50:57Z fikka joined #lisp 2018-07-05T09:56:10Z fikka quit (Ping timeout: 268 seconds) 2018-07-05T10:02:06Z shrdlu68 quit (Ping timeout: 256 seconds) 2018-07-05T10:02:45Z nowhere_man quit (Ping timeout: 245 seconds) 2018-07-05T10:02:54Z shrdlu68 joined #lisp 2018-07-05T10:07:09Z kuribas joined #lisp 2018-07-05T10:08:32Z fikka joined #lisp 2018-07-05T10:10:37Z Kaisyu quit (Quit: Connection closed for inactivity) 2018-07-05T10:15:08Z shka: i need name 2018-07-05T10:16:12Z shka: my issue is that i have a macro that basicly establishes variables and macrolet that expands to let 2018-07-05T10:16:31Z shka: i need it in the context of lparallel 2018-07-05T10:17:16Z shka: because i am writing stuf like (let ((tmp-dynamic *dynamic*)) (future (let ((*dynamic* tmp-dynamic)) do-some-stuff)))) 2018-07-05T10:17:42Z shka: and it would be nicer to have macro that minimizes this boilerplate 2018-07-05T10:18:01Z shka: i have troubles imaging good name, though 2018-07-05T10:18:31Z shka: any suggestions? 2018-07-05T10:18:36Z jackdaniel: slv-let 2018-07-05T10:18:43Z jackdaniel: scope-local-variable-let 2018-07-05T10:19:05Z jackdaniel: can't you do just (let ((*dynamic *dynamic*)) …) though? 2018-07-05T10:19:24Z jackdaniel: I've missed the star there 2018-07-05T10:20:34Z _death: within-future 2018-07-05T10:21:38Z shka: jackdaniel: I can but i found it to be annoying enough to not 2018-07-05T10:21:51Z shka: it is just error prone 2018-07-05T10:22:29Z jackdaniel: let me confirm: you find (let ((foo *foo*)) (something (let ((*foo* foo)) …)) less cumbersome than (something (let ((*foo* *foo*)) …) ? 2018-07-05T10:24:35Z shka: i find something like (slv-let (*foo* *bar* *baz*) (future (+ *foo* *bar* *baz*)) less cumborsome 2018-07-05T10:24:48Z jackdaniel: sure, but this is not my question 2018-07-05T10:24:51Z shka: then let over future over let over body 2018-07-05T10:25:15Z AetherWind quit (Quit: Leaving) 2018-07-05T10:25:47Z shka: your question is not relevant to the topic then 2018-07-05T10:26:01Z fikka quit (Ping timeout: 256 seconds) 2018-07-05T10:27:21Z _death: jackdaniel: I don't think rebinding the special var directly would work.. since by then it will already be in the future 2018-07-05T10:27:22Z jackdaniel looks at the topic which states: Common Lisp; also looks at the snippet - seems relevant; also decides, that pursuing answer is not worth it, later 2018-07-05T10:28:14Z shka: _death: yup 2018-07-05T10:28:30Z makomo joined #lisp 2018-07-05T10:29:36Z jackdaniel: _death: maybe I miss some piece of knowledge about futures in this library, but using tmp-dynamic in let inside the future indicates, that future has access to lexical scope it is defined in 2018-07-05T10:30:01Z jackdaniel: hence it should have access to *dynamic* as well 2018-07-05T10:31:34Z milanj quit (Quit: This computer has gone to sleep) 2018-07-05T10:31:42Z _death: it has access to the lexical bindings, but the dynamic ones may be different since it runs in a different thread 2018-07-05T10:31:56Z fikka joined #lisp 2018-07-05T10:32:40Z dddddd joined #lisp 2018-07-05T10:32:56Z jackdaniel: uhm, makes sense. thank you 2018-07-05T10:36:59Z fikka quit (Ping timeout: 256 seconds) 2018-07-05T10:38:50Z jackdaniel: as of name, that practice reasembles lolol macro (let over lambda over let), so lofol sounds appropriate 2018-07-05T10:40:25Z shka: lofol 2018-07-05T10:40:34Z shka: i love it 2018-07-05T10:40:53Z shka: though it sounds cryptic 2018-07-05T10:41:57Z _death: I see the rebinding as just a particular preparatory step for evaluating the body in the future.. hence my name suggestion.. of course you may want it to be a bit more specific, within-this-kind-of-a-future 2018-07-05T10:41:59Z fikka joined #lisp 2018-07-05T10:43:36Z shka: _death: yeah, i see your point 2018-07-05T10:44:00Z hhdave joined #lisp 2018-07-05T10:44:16Z shka: i wrote generic purpose macro called with-rebind, now i will write with-lparallel-future 2018-07-05T10:45:06Z kuribas: in sbcl, make-sequence-iterator returns a lot of objects. The step function takes an iterator object, but which one is it? I thought it was "iterator state", but that doesn't work. 2018-07-05T10:46:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-05T10:46:45Z nowhere_man joined #lisp 2018-07-05T10:46:59Z Tordek quit (Ping timeout: 256 seconds) 2018-07-05T10:47:40Z _death: it is the iterator state.. it also takes more arguments 2018-07-05T10:48:34Z kuribas: strange it didn't work then... 2018-07-05T10:48:43Z kuribas: maybe I had the order wrong? 2018-07-05T10:48:49Z _death: maybe 2018-07-05T10:50:01Z Oddity joined #lisp 2018-07-05T10:51:14Z kuribas: I'll try it again 2018-07-05T10:52:06Z fikka joined #lisp 2018-07-05T10:52:32Z Tordek joined #lisp 2018-07-05T11:16:06Z fikka quit (Ping timeout: 265 seconds) 2018-07-05T11:21:53Z scymtym quit (Ping timeout: 268 seconds) 2018-07-05T11:21:55Z fikka joined #lisp 2018-07-05T11:24:55Z merodix quit (Quit: merodix) 2018-07-05T11:25:20Z kuribas: _death: I tried again. I am getting "The value (5) is not of type NUMBER when binding SB-KERNEL::X" 2018-07-05T11:25:31Z chrnok joined #lisp 2018-07-05T11:25:34Z shrdlu68 quit (Ping timeout: 264 seconds) 2018-07-05T11:25:40Z kuribas: with (funcall itstep l itstate t) 2018-07-05T11:25:58Z shrdlu68 joined #lisp 2018-07-05T11:26:23Z nowhere_man quit (Ping timeout: 276 seconds) 2018-07-05T11:26:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-05T11:26:58Z makomo quit (Ping timeout: 256 seconds) 2018-07-05T11:27:34Z _death: it may help if you nopaste your code 2018-07-05T11:27:59Z skapata joined #lisp 2018-07-05T11:28:16Z pierpal joined #lisp 2018-07-05T11:30:39Z eli_oat joined #lisp 2018-07-05T11:30:51Z kuribas: _death: https://nopaste.xyz/ 2018-07-05T11:30:57Z nowhere_man joined #lisp 2018-07-05T11:31:43Z _death: I recommend http://plaster.tymoon.eu/ since it doesn't require javascript to show text 2018-07-05T11:31:45Z shrdlu68 quit (Ping timeout: 268 seconds) 2018-07-05T11:31:54Z fikka joined #lisp 2018-07-05T11:31:54Z pierpal quit (Client Quit) 2018-07-05T11:32:07Z shrdlu68 joined #lisp 2018-07-05T11:32:11Z pierpal joined #lisp 2018-07-05T11:32:18Z eli_oat quit (Client Quit) 2018-07-05T11:33:18Z libre-man joined #lisp 2018-07-05T11:34:17Z _death: in any case, the sb-sequence code does seem buggy 2018-07-05T11:34:40Z pierpal quit (Read error: Connection reset by peer) 2018-07-05T11:35:24Z _death: in particular (1+ iterator) in the list iterator step function, where iterate state is represented as a sublist 2018-07-05T11:35:37Z kobain joined #lisp 2018-07-05T11:36:30Z fikka quit (Ping timeout: 245 seconds) 2018-07-05T11:36:56Z kerframil quit (Quit: Leaving) 2018-07-05T11:37:20Z pierpal joined #lisp 2018-07-05T11:37:31Z _death: deleting that form should solve the issue 2018-07-05T11:38:54Z kuribas: so basically it doesn't work? 2018-07-05T11:39:21Z kuribas: then it uses other code for list and vector? 2018-07-05T11:40:08Z kuribas: deleting it in the sbcl code? 2018-07-05T11:40:54Z _death: https://github.com/sbcl/sbcl/blob/master/src/pcl/sequence.lisp#L220 is the culprit 2018-07-05T11:41:29Z _death: if removed, the correct value will be returned 2018-07-05T11:42:14Z fikka joined #lisp 2018-07-05T11:42:29Z EvW joined #lisp 2018-07-05T11:44:23Z shrdlu68 quit (Ping timeout: 255 seconds) 2018-07-05T11:45:04Z shrdlu68 joined #lisp 2018-07-05T11:45:42Z ebzzry: jfli or foil? 2018-07-05T11:45:46Z kuribas: strange that it doesn't affect list sequence functions 2018-07-05T11:46:41Z fikka quit (Ping timeout: 248 seconds) 2018-07-05T11:47:09Z _death: kuribas: usually those have optimized variants 2018-07-05T11:47:24Z _death: could add a test to https://github.com/sbcl/sbcl/blob/master/tests/seq.impure.lisp and a patch and send to the sbcl mailing list 2018-07-05T11:50:25Z shrdlu68 quit (Ping timeout: 248 seconds) 2018-07-05T11:51:15Z shrdlu68 joined #lisp 2018-07-05T11:52:40Z scymtym joined #lisp 2018-07-05T11:53:02Z _death: a simple (sb-sequence:position 'a '(a b c d) :from-end t) demonstrates the issue 2018-07-05T11:53:48Z nowhere_man quit (Read error: Connection reset by peer) 2018-07-05T11:53:49Z nowhereman_ joined #lisp 2018-07-05T11:54:08Z metallicus joined #lisp 2018-07-05T11:54:11Z metallicus left #lisp 2018-07-05T11:54:47Z fikka joined #lisp 2018-07-05T12:00:10Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2018-07-05T12:00:23Z rpg joined #lisp 2018-07-05T12:07:20Z kobain quit (Ping timeout: 256 seconds) 2018-07-05T12:07:22Z k4rtik joined #lisp 2018-07-05T12:08:08Z Kundry_Wag joined #lisp 2018-07-05T12:10:47Z surya joined #lisp 2018-07-05T12:12:13Z Kundry_Wag quit (Remote host closed the connection) 2018-07-05T12:14:52Z Kundry_Wag joined #lisp 2018-07-05T12:15:22Z Kundry_Wag quit (Remote host closed the connection) 2018-07-05T12:15:36Z Kundry_Wag joined #lisp 2018-07-05T12:15:37Z patlv joined #lisp 2018-07-05T12:16:48Z igemnace quit (Read error: Connection reset by peer) 2018-07-05T12:16:49Z igemnace_ joined #lisp 2018-07-05T12:17:08Z milanj joined #lisp 2018-07-05T12:20:09Z Kundry_Wag quit (Remote host closed the connection) 2018-07-05T12:21:08Z Kundry_Wag joined #lisp 2018-07-05T12:21:37Z Smokitch quit 2018-07-05T12:25:20Z Xof: I wish I had written a "you have used a generic sequence function with :from-end t on a built-in sequence; congratulations!" error message 2018-07-05T12:25:34Z Xof: (no, this mistake was not intentional) 2018-07-05T12:26:02Z EvW quit (Ping timeout: 245 seconds) 2018-07-05T12:26:05Z Xof: please report / send patch 2018-07-05T12:27:12Z surya quit (Remote host closed the connection) 2018-07-05T12:29:16Z housel quit (Read error: Connection reset by peer) 2018-07-05T12:31:14Z jdz: Xof: nowadays it would be more like "Achievement unlocked: used a generic sequence function...". 2018-07-05T12:31:49Z k4rtik quit (Ping timeout: 256 seconds) 2018-07-05T12:33:12Z EvW joined #lisp 2018-07-05T12:35:05Z SenasOzys quit (Ping timeout: 240 seconds) 2018-07-05T12:40:29Z shrdlu68 quit (Ping timeout: 276 seconds) 2018-07-05T12:40:48Z SenasOzys joined #lisp 2018-07-05T12:40:53Z shrdlu68 joined #lisp 2018-07-05T12:41:38Z Bike joined #lisp 2018-07-05T12:43:05Z fikka quit (Ping timeout: 276 seconds) 2018-07-05T12:46:09Z k4rtik joined #lisp 2018-07-05T12:46:31Z fikka joined #lisp 2018-07-05T12:48:04Z lumm joined #lisp 2018-07-05T12:50:11Z johnnymacs joined #lisp 2018-07-05T12:51:32Z vlad_ joined #lisp 2018-07-05T12:53:12Z JuanDaugherty joined #lisp 2018-07-05T13:00:06Z pierpal quit (Quit: Poof) 2018-07-05T13:00:23Z pierpal joined #lisp 2018-07-05T13:03:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-05T13:03:21Z makomo joined #lisp 2018-07-05T13:08:32Z EvW quit (Ping timeout: 255 seconds) 2018-07-05T13:12:06Z warweasle joined #lisp 2018-07-05T13:14:50Z johnnymacs quit (Ping timeout: 245 seconds) 2018-07-05T13:16:48Z fikka joined #lisp 2018-07-05T13:17:29Z eli_oat joined #lisp 2018-07-05T13:18:22Z Inline joined #lisp 2018-07-05T13:21:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-05T13:26:57Z patlv quit (Ping timeout: 248 seconds) 2018-07-05T13:27:18Z fikka joined #lisp 2018-07-05T13:27:54Z patlv joined #lisp 2018-07-05T13:29:58Z LiamH joined #lisp 2018-07-05T13:32:06Z fikka quit (Ping timeout: 260 seconds) 2018-07-05T13:32:38Z fermion joined #lisp 2018-07-05T13:33:00Z fermion left #lisp 2018-07-05T13:33:23Z sjl: /quit 2018-07-05T13:33:26Z sjl: welp 2018-07-05T13:33:27Z sjl quit (Quit: WeeChat 2.2-dev) 2018-07-05T13:35:15Z sjl joined #lisp 2018-07-05T13:37:53Z fermion joined #lisp 2018-07-05T13:38:10Z fermion quit (Remote host closed the connection) 2018-07-05T13:44:39Z flamebeard quit 2018-07-05T13:44:46Z eli_oat quit (Quit: Leaving.) 2018-07-05T13:45:56Z rumbler31 joined #lisp 2018-07-05T13:46:41Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-05T13:47:23Z fikka joined #lisp 2018-07-05T13:47:43Z eli_oat joined #lisp 2018-07-05T13:50:23Z rumbler31 quit (Ping timeout: 255 seconds) 2018-07-05T13:52:12Z enrico-fermi joined #lisp 2018-07-05T13:52:35Z fikka quit (Ping timeout: 260 seconds) 2018-07-05T13:53:33Z graphene quit (Remote host closed the connection) 2018-07-05T13:54:51Z graphene joined #lisp 2018-07-05T13:57:33Z lnostdal joined #lisp 2018-07-05T13:57:46Z fikka joined #lisp 2018-07-05T13:59:48Z pierpal quit (Quit: Poof) 2018-07-05T14:00:09Z pierpal joined #lisp 2018-07-05T14:00:59Z dyelar joined #lisp 2018-07-05T14:01:17Z wheelsucker joined #lisp 2018-07-05T14:02:46Z fikka quit (Ping timeout: 264 seconds) 2018-07-05T14:02:54Z patlv quit (Ping timeout: 260 seconds) 2018-07-05T14:03:33Z patlv joined #lisp 2018-07-05T14:05:23Z BitPuffin joined #lisp 2018-07-05T14:05:45Z k4rtik quit (Ping timeout: 265 seconds) 2018-07-05T14:07:38Z dyelar quit (Quit: Leaving.) 2018-07-05T14:15:37Z sauvin quit (Ping timeout: 245 seconds) 2018-07-05T14:17:04Z EvW joined #lisp 2018-07-05T14:17:35Z rpg joined #lisp 2018-07-05T14:17:35Z skapata quit (Ping timeout: 240 seconds) 2018-07-05T14:17:46Z fikka joined #lisp 2018-07-05T14:19:56Z skapata joined #lisp 2018-07-05T14:22:18Z enrico-fermi quit (Quit: ERC (IRC client for Emacs 26.1)) 2018-07-05T14:22:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-05T14:23:00Z Kundry_Wag quit (Remote host closed the connection) 2018-07-05T14:24:24Z doesthiswork joined #lisp 2018-07-05T14:25:21Z Kundry_W_ joined #lisp 2018-07-05T14:27:35Z skapata quit (Ping timeout: 260 seconds) 2018-07-05T14:28:17Z fikka joined #lisp 2018-07-05T14:28:46Z Kundry_W_ quit (Remote host closed the connection) 2018-07-05T14:29:00Z Kundry_Wag joined #lisp 2018-07-05T14:29:01Z JuanDaugherty: roch has one thing going for it 2018-07-05T14:30:49Z patlv quit (Ping timeout: 256 seconds) 2018-07-05T14:30:52Z eli_oat quit (Quit: Leaving.) 2018-07-05T14:32:03Z patlv joined #lisp 2018-07-05T14:33:03Z fikka quit (Ping timeout: 268 seconds) 2018-07-05T14:33:14Z lumm_ joined #lisp 2018-07-05T14:33:57Z beach: What is it, and what does it have going for it? 2018-07-05T14:35:40Z lumm quit (Ping timeout: 245 seconds) 2018-07-05T14:35:41Z lumm_ is now known as lumm 2018-07-05T14:36:23Z optikalmouse joined #lisp 2018-07-05T14:38:33Z fikka joined #lisp 2018-07-05T14:40:44Z lumm quit (Read error: Connection reset by peer) 2018-07-05T14:41:24Z lumm joined #lisp 2018-07-05T14:43:13Z fikka quit (Ping timeout: 248 seconds) 2018-07-05T14:43:15Z skapata joined #lisp 2018-07-05T14:44:10Z lnostdal quit (Ping timeout: 256 seconds) 2018-07-05T14:44:44Z cage_ joined #lisp 2018-07-05T14:48:43Z housel joined #lisp 2018-07-05T14:48:52Z fikka joined #lisp 2018-07-05T14:48:56Z kpenc joined #lisp 2018-07-05T14:49:06Z Folkol quit (Read error: Connection reset by peer) 2018-07-05T14:49:30Z robotoad joined #lisp 2018-07-05T14:50:03Z Folkol joined #lisp 2018-07-05T14:52:44Z markoong joined #lisp 2018-07-05T14:53:29Z fikka quit (Ping timeout: 256 seconds) 2018-07-05T14:53:41Z varjag quit (Quit: ERC (IRC client for Emacs 24.5.1)) 2018-07-05T14:54:07Z fikka joined #lisp 2018-07-05T14:54:47Z ebzzry: Has anyone tried cl+j on SBCL? 2018-07-05T14:56:09Z rpg: according to the web page, it "does NOT work reliably on SBCL..." 2018-07-05T14:58:17Z rpg: My experience is that trying to have the JVM or .NET VMs share a process space with any lisp is fraught. You're better off invoking java across a process boundary. Less efficient, but many CL implementations are effectively VMs, and don't share well with the JVM. In particular, we have found that both like to use signals in ways that cause confusion. 2018-07-05T14:58:35Z rpg: This is necessarily inefficient :-) 2018-07-05T14:58:47Z rpg: s/:-)/:-(/ 2018-07-05T14:59:41Z rpg pretty much hates programming language VMs... 2018-07-05T14:59:51Z JuanDaugherty: beach, it's a city in western ny state, I may have mistaken sjl for somebody else 2018-07-05T15:00:14Z sjl: oh, yeah, roch == rochester, ny 2018-07-05T15:00:28Z rpg: Rich Hickey has an old, orphaned, JVM interface that might work better if you can bring it back to life or Allegro has a proprietary one. 2018-07-05T15:00:44Z sjl: still haven't set up an irc bouncer so I guess my ISP shows on join, ha 2018-07-05T15:00:46Z Kundry_Wag quit (Remote host closed the connection) 2018-07-05T15:01:03Z JuanDaugherty: and it's that it isn't buffalo 2018-07-05T15:01:15Z rawste joined #lisp 2018-07-05T15:01:53Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-05T15:02:44Z rpg joined #lisp 2018-07-05T15:03:02Z JuanDaugherty: and no, it musta been another channel, you are apparently running off an EC2 instance now 2018-07-05T15:03:11Z rpg quit (Client Quit) 2018-07-05T15:04:01Z rpg joined #lisp 2018-07-05T15:04:28Z rpg quit (Client Quit) 2018-07-05T15:06:03Z JuanDaugherty: anybody use gbbopen? wondering how well its custom threading thing works 2018-07-05T15:07:19Z sjl: Oh, right, work VPN 2018-07-05T15:08:06Z kajo quit (Ping timeout: 256 seconds) 2018-07-05T15:08:31Z moei quit (Read error: Connection reset by peer) 2018-07-05T15:08:58Z FreeBirdLjj joined #lisp 2018-07-05T15:09:03Z moei joined #lisp 2018-07-05T15:09:53Z kini quit (Remote host closed the connection) 2018-07-05T15:12:51Z SenasOzys quit (Read error: Connection reset by peer) 2018-07-05T15:13:06Z SenasOzys joined #lisp 2018-07-05T15:14:07Z chrnok quit (Remote host closed the connection) 2018-07-05T15:16:18Z beach: So, in SICL, I plan to use Doug Lea's technique for memory allocation in order to allocate racks in the global heap. But, Doug Lea's own description of it is a bit skimpy on the details. Plus, I need to adapt it a bit and make certain choices. I think the best thing to do is to include a complete description of what I want to do in the relevant chapter of the SICL specification. 2018-07-05T15:17:30Z beach: Doing so would be consistent with my own negative reaction to documentation referring to other documentation, and where the reader has to do some serious mapping of concepts in order to make that other documentation understandable in the context of the first. 2018-07-05T15:17:36Z kini joined #lisp 2018-07-05T15:18:24Z jonh left #lisp 2018-07-05T15:19:20Z sword quit (Remote host closed the connection) 2018-07-05T15:19:25Z _whitelogger quit (Ping timeout: 245 seconds) 2018-07-05T15:20:32Z sword joined #lisp 2018-07-05T15:21:41Z _whitelogger joined #lisp 2018-07-05T15:24:24Z shrdlu68 quit (Ping timeout: 256 seconds) 2018-07-05T15:24:45Z eli_oat joined #lisp 2018-07-05T15:25:03Z robotoad quit (Quit: robotoad) 2018-07-05T15:31:27Z Kundry_Wag joined #lisp 2018-07-05T15:31:34Z nickenchuggets joined #lisp 2018-07-05T15:31:34Z nickenchuggets quit (Changing host) 2018-07-05T15:31:34Z nickenchuggets joined #lisp 2018-07-05T15:31:52Z robotoad joined #lisp 2018-07-05T15:33:43Z lumm quit (Ping timeout: 265 seconds) 2018-07-05T15:35:51Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-05T15:39:10Z vlad_ quit (Remote host closed the connection) 2018-07-05T15:39:39Z patlv quit (Ping timeout: 268 seconds) 2018-07-05T15:43:23Z patlv joined #lisp 2018-07-05T15:45:57Z lumm joined #lisp 2018-07-05T15:46:39Z rumbler31 joined #lisp 2018-07-05T15:49:33Z beach: Hmm. I don't think there is anything preventing me from having things like nursery heaps, blocks of dyads in the global collector, or even thread stacks, implemented as first-class object with racks managed by the global collector. Doing it this way would simplify introspection tools a lot. 2018-07-05T15:50:28Z beach: If I am right, at the very lowest level of all memory management, there would be a heap managed by Doug Lea's technique. 2018-07-05T15:50:35Z k4rtik joined #lisp 2018-07-05T15:51:22Z rumbler31 quit (Ping timeout: 268 seconds) 2018-07-05T15:51:39Z shka: beach: well, your joy is my joy 2018-07-05T15:53:04Z beach: Thanks! I am mainly thinking out loud. But, of course, if anyone sees any objections, I am willing to reconsider. 2018-07-05T15:53:27Z _cosmonaut_ quit (Ping timeout: 240 seconds) 2018-07-05T15:53:57Z shka: you won't get any objections from me, it is way above my level ;-) 2018-07-05T15:54:09Z shka: anyway, i can't wait to see this in action 2018-07-05T15:54:27Z patlv quit (Ping timeout: 268 seconds) 2018-07-05T15:56:09Z beach: Yeah, well, don't hold your breath. It will take some time. 2018-07-05T15:56:23Z cage_ quit (Ping timeout: 255 seconds) 2018-07-05T15:56:32Z shka: beach: i would guess so 2018-07-05T15:57:03Z patlv joined #lisp 2018-07-05T15:58:17Z cage_ joined #lisp 2018-07-05T15:58:51Z fikka quit (Ping timeout: 265 seconds) 2018-07-05T16:01:31Z Kundry_Wag joined #lisp 2018-07-05T16:02:41Z rpg joined #lisp 2018-07-05T16:05:07Z fikka joined #lisp 2018-07-05T16:07:21Z jeosol joined #lisp 2018-07-05T16:09:06Z _cosmonaut_ joined #lisp 2018-07-05T16:10:02Z pjb joined #lisp 2018-07-05T16:10:12Z flazh quit (Ping timeout: 245 seconds) 2018-07-05T16:10:43Z JuanDaugherty quit (Quit: Exeunt) 2018-07-05T16:11:02Z jeosol: morning guys, and hope we are still having fun hacking CL 2018-07-05T16:11:32Z patlv quit (Remote host closed the connection) 2018-07-05T16:11:41Z beach: Hello jeosol. 2018-07-05T16:11:58Z patlv joined #lisp 2018-07-05T16:12:16Z jeosol: Hello beach. 2018-07-05T16:12:56Z jeosol: Been a while. Took some time off, some training and continuing ed, and back working on that challenge project. 2018-07-05T16:14:10Z cage_ quit (Remote host closed the connection) 2018-07-05T16:14:29Z cage_ joined #lisp 2018-07-05T16:14:31Z beach: Welcome back. 2018-07-05T16:17:57Z cage_ quit (Read error: Connection reset by peer) 2018-07-05T16:20:01Z cage_ joined #lisp 2018-07-05T16:21:35Z fikka quit (Ping timeout: 255 seconds) 2018-07-05T16:24:24Z jeosol: Thanks beach. 2018-07-05T16:27:02Z charh joined #lisp 2018-07-05T16:28:32Z schweers quit (Ping timeout: 276 seconds) 2018-07-05T16:35:41Z EvW quit (Ping timeout: 276 seconds) 2018-07-05T16:37:59Z eli_oat quit (Quit: Leaving.) 2018-07-05T16:40:47Z fikka joined #lisp 2018-07-05T16:41:35Z eli_oat joined #lisp 2018-07-05T16:43:29Z gousuto joined #lisp 2018-07-05T16:43:29Z gousuto quit (Changing host) 2018-07-05T16:43:29Z gousuto joined #lisp 2018-07-05T16:43:30Z sauvin_ joined #lisp 2018-07-05T16:44:05Z hhdave quit (Ping timeout: 260 seconds) 2018-07-05T16:44:17Z nickenchuggets quit (Ping timeout: 265 seconds) 2018-07-05T16:45:45Z sauvin_ quit (Read error: Connection reset by peer) 2018-07-05T16:49:05Z _cosmonaut_ quit (Ping timeout: 248 seconds) 2018-07-05T16:49:57Z charh quit (Ping timeout: 268 seconds) 2018-07-05T16:55:36Z charh joined #lisp 2018-07-05T16:55:54Z graphene quit (Remote host closed the connection) 2018-07-05T16:56:39Z m00natic quit (Read error: Connection reset by peer) 2018-07-05T16:57:00Z m00natic joined #lisp 2018-07-05T16:57:12Z graphene joined #lisp 2018-07-05T16:57:13Z optikalmouse quit (Quit: optikalmouse) 2018-07-05T16:58:02Z fikka quit (Ping timeout: 256 seconds) 2018-07-05T17:01:03Z SenasOzys quit (Ping timeout: 268 seconds) 2018-07-05T17:04:42Z al-damiri joined #lisp 2018-07-05T17:04:57Z patlv quit (Ping timeout: 256 seconds) 2018-07-05T17:05:49Z flazh joined #lisp 2018-07-05T17:07:54Z flazh quit (Client Quit) 2018-07-05T17:08:03Z flazh joined #lisp 2018-07-05T17:10:31Z Kundry_Wag quit (Remote host closed the connection) 2018-07-05T17:11:07Z Kundry_Wag joined #lisp 2018-07-05T17:16:12Z patlv joined #lisp 2018-07-05T17:17:13Z varjag joined #lisp 2018-07-05T17:17:33Z shka_ joined #lisp 2018-07-05T17:22:50Z m00natic quit (Remote host closed the connection) 2018-07-05T17:22:57Z robotoad quit (Ping timeout: 265 seconds) 2018-07-05T17:23:13Z fikka joined #lisp 2018-07-05T17:27:14Z robotoad joined #lisp 2018-07-05T17:29:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-05T17:29:48Z graphene quit (Remote host closed the connection) 2018-07-05T17:30:53Z fluke` joined #lisp 2018-07-05T17:31:07Z graphene joined #lisp 2018-07-05T17:31:32Z scymtym quit (Remote host closed the connection) 2018-07-05T17:32:59Z nowhereman_ quit (Ping timeout: 276 seconds) 2018-07-05T17:36:02Z NoNumber joined #lisp 2018-07-05T17:38:12Z hhdave joined #lisp 2018-07-05T17:39:26Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-05T17:41:50Z ebrasca joined #lisp 2018-07-05T17:42:45Z rpg joined #lisp 2018-07-05T17:43:02Z mflem joined #lisp 2018-07-05T17:47:28Z rumbler31 joined #lisp 2018-07-05T17:47:58Z lnostdal joined #lisp 2018-07-05T17:49:06Z oni-on-ion joined #lisp 2018-07-05T17:49:30Z hhdave quit (Quit: hhdave) 2018-07-05T17:52:01Z rumbler31 quit (Ping timeout: 248 seconds) 2018-07-05T17:52:11Z nirved quit (Ping timeout: 256 seconds) 2018-07-05T17:52:30Z fikka joined #lisp 2018-07-05T17:58:06Z fikka quit (Ping timeout: 256 seconds) 2018-07-05T17:59:18Z fikka joined #lisp 2018-07-05T18:00:12Z lumm quit (Quit: lumm) 2018-07-05T18:02:41Z lumm_ joined #lisp 2018-07-05T18:04:51Z Arcaelyx joined #lisp 2018-07-05T18:06:17Z nowhereman_ joined #lisp 2018-07-05T18:07:00Z Smokitch joined #lisp 2018-07-05T18:07:27Z slyrus_ quit (Ping timeout: 240 seconds) 2018-07-05T18:07:43Z kobain joined #lisp 2018-07-05T18:09:17Z nirved joined #lisp 2018-07-05T18:09:46Z mfiano: beach: Do you intend to use CL to implement the GC too? 2018-07-05T18:10:27Z dmiles quit (Ping timeout: 240 seconds) 2018-07-05T18:10:46Z nowhere_man joined #lisp 2018-07-05T18:11:42Z nowhereman_ quit (Ping timeout: 256 seconds) 2018-07-05T18:12:13Z logicmoo joined #lisp 2018-07-05T18:12:35Z patlv quit (Ping timeout: 256 seconds) 2018-07-05T18:18:34Z slyrus_ joined #lisp 2018-07-05T18:20:52Z phenoble joined #lisp 2018-07-05T18:21:03Z phenoble quit (Client Quit) 2018-07-05T18:21:08Z zachk joined #lisp 2018-07-05T18:21:30Z phenoble joined #lisp 2018-07-05T18:21:35Z phenoble left #lisp 2018-07-05T18:21:38Z Patternmaster quit (Ping timeout: 276 seconds) 2018-07-05T18:22:11Z zachk quit (Changing host) 2018-07-05T18:22:11Z zachk joined #lisp 2018-07-05T18:22:40Z lumm_ quit (Ping timeout: 260 seconds) 2018-07-05T18:24:29Z vxe joined #lisp 2018-07-05T18:28:09Z vxe quit (Client Quit) 2018-07-05T18:31:21Z vxe joined #lisp 2018-07-05T18:33:22Z NoNumber quit (Quit: ERC (IRC client for Emacs 25.2.2)) 2018-07-05T18:33:35Z xrash joined #lisp 2018-07-05T18:34:02Z vxe quit (Read error: Connection reset by peer) 2018-07-05T18:36:01Z akkad left #lisp 2018-07-05T18:37:18Z kjeldahl_ quit (Quit: WeeChat 1.2) 2018-07-05T18:37:44Z kjeldahl joined #lisp 2018-07-05T18:37:58Z klltkr joined #lisp 2018-07-05T18:38:07Z patlv joined #lisp 2018-07-05T18:38:28Z milanj quit (Quit: This computer has gone to sleep) 2018-07-05T18:42:00Z vap1 joined #lisp 2018-07-05T18:42:05Z vaporatorius quit (Ping timeout: 240 seconds) 2018-07-05T18:46:16Z kobain quit (Ping timeout: 256 seconds) 2018-07-05T18:46:44Z vxe joined #lisp 2018-07-05T18:53:10Z karswell_ joined #lisp 2018-07-05T18:53:14Z vxe quit (Ping timeout: 255 seconds) 2018-07-05T18:54:47Z vlad_ joined #lisp 2018-07-05T18:55:45Z edgar-rft quit (Quit: edgar-rft) 2018-07-05T18:55:51Z random-nick quit (Ping timeout: 240 seconds) 2018-07-05T18:56:15Z cage_ quit (Quit: Leaving) 2018-07-05T19:01:35Z EvW joined #lisp 2018-07-05T19:02:39Z cozachk joined #lisp 2018-07-05T19:03:04Z sakalli quit (Quit: leaving) 2018-07-05T19:03:06Z karswell_ is now known as karswell 2018-07-05T19:03:38Z sakalli joined #lisp 2018-07-05T19:03:46Z jeosol: hi guys 2018-07-05T19:03:51Z patlv quit (Remote host closed the connection) 2018-07-05T19:04:18Z patlv joined #lisp 2018-07-05T19:04:42Z jeosol: Has anyone had to convert CL CLOS code to C++, and how much functionality where you table to retain and how painful. Been a while since I worked C++, and I hear there are new variants 98, 11, 17, etc. 2018-07-05T19:04:55Z sakalli quit (Client Quit) 2018-07-05T19:05:33Z jeosol: There is a guy who is asking me to implement some code, developed similar functionality in CL (SBCL mostly) but they use only C++. 2018-07-05T19:05:37Z zachk quit (Ping timeout: 245 seconds) 2018-07-05T19:08:10Z sakalli joined #lisp 2018-07-05T19:08:51Z sakalli quit (Client Quit) 2018-07-05T19:10:36Z pseudonymous joined #lisp 2018-07-05T19:11:30Z TMA: jeosol: forget about generic functions being specialized on anything but the first argument; forget about anything MOP-related; forget about anything related to upgrading instances/changing class 2018-07-05T19:12:00Z kajo joined #lisp 2018-07-05T19:13:01Z TMA: jeosol: it's not that it cannot be done, after all, you can implement a common lisp in c++, but it is not natural there 2018-07-05T19:13:12Z sakalli joined #lisp 2018-07-05T19:13:45Z jeosol: I did move from C++ to CL after grad school. I agree with the one argument specialization and other things mentioned. it will be such a pain to go back given all time invested working with CLOS 2018-07-05T19:14:42Z jeosol: I am not sure of cross-language implementation (ala build new module in C++) they will freak out since I will be the only one that knows how to work the code. And this new module will grow in size. 2018-07-05T19:15:39Z jeosol: Was thinking the recent improvements in C++ would have done more better changes. I recall, I wasn't as productive and it may be a pain overall. 2018-07-05T19:15:46Z jeosol: Thanks for the inputs TMA. 2018-07-05T19:17:11Z patlv quit (Ping timeout: 256 seconds) 2018-07-05T19:19:42Z lumm joined #lisp 2018-07-05T19:19:45Z random-nick joined #lisp 2018-07-05T19:20:56Z lumm quit (Read error: Connection reset by peer) 2018-07-05T19:22:02Z k4rtik quit (Ping timeout: 255 seconds) 2018-07-05T19:22:34Z lumm joined #lisp 2018-07-05T19:23:53Z flip214: jeosol: perhaps you can do CL and provide a C library to use via ECL? 2018-07-05T19:25:02Z lumm quit (Read error: Connection reset by peer) 2018-07-05T19:25:29Z lumm joined #lisp 2018-07-05T19:27:04Z lumm quit (Client Quit) 2018-07-05T19:27:32Z lumm joined #lisp 2018-07-05T19:33:13Z shka_ quit (Read error: Connection reset by peer) 2018-07-05T19:33:23Z shka_ joined #lisp 2018-07-05T19:35:31Z jeosol: flip214: That's an interesting option. 2018-07-05T19:36:16Z jeosol: I can also expose the tool I bit that way I suppose. 2018-07-05T19:37:14Z jeosol: There is still the whole CL implementation issue when they want to extend etc.We'll see tomorrow. 2018-07-05T19:37:19Z jeosol: thanks Flip214 2018-07-05T19:38:54Z milanj joined #lisp 2018-07-05T19:39:11Z vlatkoB quit (Remote host closed the connection) 2018-07-05T19:39:42Z k-hos quit (Read error: Connection reset by peer) 2018-07-05T19:39:51Z fikka quit (Ping timeout: 240 seconds) 2018-07-05T19:41:20Z TCZ joined #lisp 2018-07-05T19:42:40Z patlv joined #lisp 2018-07-05T19:45:16Z eli_oat quit (Quit: Leaving.) 2018-07-05T19:45:48Z eli_oat joined #lisp 2018-07-05T19:46:37Z k-hos joined #lisp 2018-07-05T19:48:02Z patlv quit (Ping timeout: 256 seconds) 2018-07-05T19:51:18Z patlv joined #lisp 2018-07-05T19:52:26Z shka_ quit (Ping timeout: 256 seconds) 2018-07-05T19:53:10Z megalography quit (Ping timeout: 264 seconds) 2018-07-05T19:53:32Z EvW quit (Ping timeout: 255 seconds) 2018-07-05T19:54:17Z Kundry_Wag quit (Remote host closed the connection) 2018-07-05T19:54:51Z scymtym joined #lisp 2018-07-05T19:59:23Z eli_oat quit (Quit: Leaving.) 2018-07-05T20:04:06Z eli_oat joined #lisp 2018-07-05T20:04:14Z pierpal quit (Quit: Poof) 2018-07-05T20:04:32Z pierpal joined #lisp 2018-07-05T20:06:03Z igemnace_ quit (Quit: WeeChat 2.1) 2018-07-05T20:06:17Z patlv quit (Ping timeout: 256 seconds) 2018-07-05T20:06:51Z phenoble joined #lisp 2018-07-05T20:07:07Z megalography joined #lisp 2018-07-05T20:07:15Z dvdmuckle quit (Quit: Bouncer Surgery) 2018-07-05T20:08:25Z fikka joined #lisp 2018-07-05T20:08:37Z dvdmuckle joined #lisp 2018-07-05T20:12:51Z TCZ quit (Quit: Leaving) 2018-07-05T20:13:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-05T20:14:09Z megalography quit (Ping timeout: 264 seconds) 2018-07-05T20:14:50Z kajo quit (Ping timeout: 276 seconds) 2018-07-05T20:17:15Z Kundry_Wag joined #lisp 2018-07-05T20:17:39Z fikka joined #lisp 2018-07-05T20:18:19Z eli_oat quit (Quit: Leaving.) 2018-07-05T20:18:33Z kushal quit (Ping timeout: 250 seconds) 2018-07-05T20:19:31Z kushal joined #lisp 2018-07-05T20:20:05Z l1x quit (Quit: Connection closed for inactivity) 2018-07-05T20:23:17Z fikka quit (Ping timeout: 276 seconds) 2018-07-05T20:26:52Z kajo joined #lisp 2018-07-05T20:27:56Z charh quit (Quit: leaving) 2018-07-05T20:28:03Z ft joined #lisp 2018-07-05T20:28:20Z megalography joined #lisp 2018-07-05T20:30:15Z pjb quit (Remote host closed the connection) 2018-07-05T20:30:20Z quazimodo quit (Ping timeout: 276 seconds) 2018-07-05T20:30:31Z fikka joined #lisp 2018-07-05T20:31:14Z edgar-rft joined #lisp 2018-07-05T20:31:46Z quazimodo joined #lisp 2018-07-05T20:33:57Z pjb joined #lisp 2018-07-05T20:35:59Z pagnol joined #lisp 2018-07-05T20:36:00Z p_l: jeosol: another option might be to do RPC? 2018-07-05T20:36:43Z pjb quit (Read error: Connection reset by peer) 2018-07-05T20:37:40Z vlad_ quit (Remote host closed the connection) 2018-07-05T20:37:45Z nickenchuggets joined #lisp 2018-07-05T20:37:45Z nickenchuggets quit (Changing host) 2018-07-05T20:37:45Z nickenchuggets joined #lisp 2018-07-05T20:37:49Z nickenchuggets quit (Client Quit) 2018-07-05T20:40:35Z fikka quit (Ping timeout: 268 seconds) 2018-07-05T20:42:23Z jeosol: @p_l: what is RPC? 2018-07-05T20:44:41Z jeosol: to add some more context: the problem of going back to C++ is that most of what I was able to do is because of features in CL (and CLOS), I may need to dumb down offerings or not have a feature-for-feature match moving to C++. 2018-07-05T20:44:43Z p_l: remote procedure calls, essentially package the lisp code as a server 2018-07-05T20:45:16Z jeosol: @p_l: I see, thanks for that. 2018-07-05T20:45:31Z megalography quit (Ping timeout: 268 seconds) 2018-07-05T20:48:12Z kuribas quit (Quit: ERC (IRC client for Emacs 24.5.1)) 2018-07-05T20:48:35Z fikka joined #lisp 2018-07-05T20:51:11Z phenoble quit (Remote host closed the connection) 2018-07-05T20:51:51Z pagnol quit (Quit: Ex-Chat) 2018-07-05T20:52:21Z pagnol joined #lisp 2018-07-05T20:54:06Z pagnol quit (Client Quit) 2018-07-05T20:56:00Z EvW joined #lisp 2018-07-05T20:59:35Z BitPuffin quit (Remote host closed the connection) 2018-07-05T20:59:51Z kajo quit (Ping timeout: 240 seconds) 2018-07-05T21:00:27Z sakalli quit (Quit: leaving) 2018-07-05T21:01:56Z rawste quit (Quit: Sleep....) 2018-07-05T21:02:43Z sakalli joined #lisp 2018-07-05T21:03:39Z Bike: Hello, it's time for another obscure standards lawyer question from me 2018-07-05T21:04:06Z Bike: CLHS gives the example (adjoin '(new-test-item 1) '((test-item 1)) :key #'cadr) => ((test-item 1)) 2018-07-05T21:04:24Z Bike: This implies that the key is also called on the item being adjoined 2018-07-05T21:04:51Z Bike: The actual description of ADJOIN, however, says it works by the usual two-argument test rules, which include the key not being called on the item 2018-07-05T21:05:15Z _death: why do you think it implies that 2018-07-05T21:05:44Z _death: ah, I misread the code 2018-07-05T21:05:46Z Bike: Because otherwise it would be doing (eql '(new-test-item 1) (cadr '(test-item 1))), which is false, so the result would be ((new-test-item 1) (test-item 1)) 2018-07-05T21:06:01Z _death: right 2018-07-05T21:06:09Z Bike: The example implementation of ADJOIN in terms of MEMBER explicitly calls the key on the item because MEMBER doesn't 2018-07-05T21:06:31Z k4rtik joined #lisp 2018-07-05T21:06:50Z Bike: https://www.cliki.net/Issue%20ADJOIN-SPECIFICATION oh, someone else noticed 2018-07-05T21:07:27Z Bike: So I guess consensus is that the description of ADJOIN is wrong 2018-07-05T21:08:44Z _death: looks like it 2018-07-05T21:10:53Z sakalli_ joined #lisp 2018-07-05T21:11:23Z sjl: clhs pushnew 2018-07-05T21:11:23Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/m_pshnew.htm 2018-07-05T21:11:25Z sjl: > If :key is supplied, it is used to extract the part to be tested from both item and the list element, as for adjoin. 2018-07-05T21:11:40Z sjl: the standard agrees that the standard is wrong :) 2018-07-05T21:12:21Z Bike: yeah, that's mentioned on the page, and is a good enough reason for me 2018-07-05T21:14:30Z iskander joined #lisp 2018-07-05T21:16:57Z Bike quit (Ping timeout: 252 seconds) 2018-07-05T21:18:57Z pierpal quit (Ping timeout: 240 seconds) 2018-07-05T21:20:09Z shifty quit (Ping timeout: 256 seconds) 2018-07-05T21:20:10Z Penetre joined #lisp 2018-07-05T21:21:07Z logicmoo quit (Read error: Connection reset by peer) 2018-07-05T21:24:07Z sakalli_ quit (Quit: Mutter: www.mutterirc.com) 2018-07-05T21:24:18Z hhdave joined #lisp 2018-07-05T21:24:29Z sakalli_ joined #lisp 2018-07-05T21:26:58Z Penetre quit (Quit: Mutter: www.mutterirc.com) 2018-07-05T21:27:34Z dmiles joined #lisp 2018-07-05T21:27:59Z kobain joined #lisp 2018-07-05T21:30:18Z pjb joined #lisp 2018-07-05T21:34:38Z mindCrime quit (Ping timeout: 260 seconds) 2018-07-05T21:37:55Z sakalli_ quit (Quit: Mutter: www.mutterirc.com) 2018-07-05T21:43:02Z sakalli_ joined #lisp 2018-07-05T21:43:27Z lnostdal quit (Ping timeout: 240 seconds) 2018-07-05T21:49:00Z rumbler31 joined #lisp 2018-07-05T21:49:15Z sakalli_ quit (Quit: Mutter: www.mutterirc.com) 2018-07-05T21:50:48Z wheelsucker quit (Quit: Client Quit) 2018-07-05T21:52:00Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-05T21:52:51Z Denommus joined #lisp 2018-07-05T21:52:57Z kajo joined #lisp 2018-07-05T21:53:19Z vxe joined #lisp 2018-07-05T21:53:21Z vxe quit (Client Quit) 2018-07-05T21:53:43Z vxe joined #lisp 2018-07-05T21:53:46Z rumbler31 quit (Ping timeout: 264 seconds) 2018-07-05T21:56:42Z kobain quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2018-07-05T21:59:01Z rpg joined #lisp 2018-07-05T22:00:06Z rpg quit (Client Quit) 2018-07-05T22:00:36Z sjl quit (Quit: WeeChat 2.2-dev) 2018-07-05T22:01:24Z iskander left #lisp 2018-07-05T22:01:29Z sjl joined #lisp 2018-07-05T22:02:07Z megalography joined #lisp 2018-07-05T22:03:04Z hhdave_ joined #lisp 2018-07-05T22:03:13Z hhdave quit (Ping timeout: 268 seconds) 2018-07-05T22:03:14Z hhdave_ is now known as hhdave 2018-07-05T22:04:56Z vxe quit (Read error: Connection reset by peer) 2018-07-05T22:07:27Z LiamH quit (Quit: Leaving.) 2018-07-05T22:10:26Z mindCrime joined #lisp 2018-07-05T22:14:48Z graphene quit (Remote host closed the connection) 2018-07-05T22:16:14Z graphene joined #lisp 2018-07-05T22:18:30Z Denommus quit (Remote host closed the connection) 2018-07-05T22:19:00Z jfb4 joined #lisp 2018-07-05T22:19:39Z orivej quit (Ping timeout: 256 seconds) 2018-07-05T22:21:08Z random-nick quit (Ping timeout: 255 seconds) 2018-07-05T22:21:21Z varjag quit (Ping timeout: 256 seconds) 2018-07-05T22:22:40Z pierpal joined #lisp 2018-07-05T22:24:00Z hhdave quit (Quit: hhdave) 2018-07-05T22:25:38Z pierpal quit (Client Quit) 2018-07-05T22:25:59Z pierpal joined #lisp 2018-07-05T22:26:58Z mfiano: Doesn't the standard also mention that examples are not part of the standard? :) 2018-07-05T22:28:22Z bjorkintosh joined #lisp 2018-07-05T22:30:08Z kilgore joined #lisp 2018-07-05T22:31:13Z kilgore quit (Remote host closed the connection) 2018-07-05T22:32:25Z kristof: That's cheating. 2018-07-05T22:32:29Z pierpal quit (Ping timeout: 256 seconds) 2018-07-05T22:32:57Z pillton: The definition of pushnew could do with an update as well. 2018-07-05T22:33:34Z mfiano: The same with a few others that are just plain wrong, like prog2 and case 2018-07-05T22:33:36Z kristof: Especially when half of Kent Pitman's examples will have a return value of "IMPLEMENTATION DEFINED" 2018-07-05T22:33:46Z Smokitch quit 2018-07-05T22:35:46Z k4rtik quit (Ping timeout: 260 seconds) 2018-07-05T22:37:09Z jasmith joined #lisp 2018-07-05T22:40:21Z ted_wroclaw joined #lisp 2018-07-05T22:43:31Z lumm quit (Quit: lumm) 2018-07-05T22:43:58Z pillton: Bike: Do you disagree with PJB and Barry Margolin on the behaviour of adjoin? 2018-07-05T22:44:25Z pillton: Sorry... the clarified behaviour of adjoin. 2018-07-05T22:45:46Z varjag joined #lisp 2018-07-05T22:49:41Z pjb quit (Ping timeout: 256 seconds) 2018-07-05T22:49:57Z varjag quit (Ping timeout: 240 seconds) 2018-07-05T22:50:17Z ted_wroclaw quit (Quit: Textual IRC Client: www.textualapp.com) 2018-07-05T22:51:23Z raynold joined #lisp 2018-07-05T22:53:04Z pjb joined #lisp 2018-07-05T22:54:18Z pierpa joined #lisp 2018-07-05T22:56:33Z pjb quit (Remote host closed the connection) 2018-07-05T22:59:00Z pierpal joined #lisp 2018-07-05T23:00:30Z Beep-Lord joined #lisp 2018-07-05T23:03:26Z k4rtik joined #lisp 2018-07-05T23:09:47Z graphene quit (Read error: Connection reset by peer) 2018-07-05T23:11:07Z graphene joined #lisp 2018-07-05T23:14:22Z mange joined #lisp 2018-07-05T23:17:21Z Kaisyu joined #lisp 2018-07-05T23:17:36Z Bike joined #lisp 2018-07-05T23:23:31Z brettgilio joined #lisp 2018-07-05T23:24:27Z k4rtik quit (Ping timeout: 240 seconds) 2018-07-05T23:28:27Z markoong quit (Ping timeout: 240 seconds) 2018-07-05T23:33:11Z fikka quit (Ping timeout: 265 seconds) 2018-07-05T23:34:17Z Oddity quit 2018-07-05T23:35:03Z attila_lendvai joined #lisp 2018-07-05T23:35:03Z attila_lendvai quit (Changing host) 2018-07-05T23:35:03Z attila_lendvai joined #lisp 2018-07-05T23:36:39Z sjl quit (Quit: WeeChat 2.2-dev) 2018-07-05T23:40:49Z attila_lendvai quit (Ping timeout: 248 seconds) 2018-07-05T23:43:05Z brettgilio quit (Quit: Goodbye!) 2018-07-05T23:43:57Z SaganMan quit (Ping timeout: 245 seconds) 2018-07-05T23:45:02Z dddddd quit (Remote host closed the connection) 2018-07-05T23:46:57Z pioneer42 joined #lisp 2018-07-05T23:51:49Z brettgilio joined #lisp 2018-07-05T23:52:16Z brettgilio quit (Client Quit) 2018-07-05T23:52:38Z brettgilio joined #lisp 2018-07-05T23:52:47Z brettgilio quit (Remote host closed the connection) 2018-07-05T23:53:08Z brettgilio joined #lisp 2018-07-05T23:53:25Z brettgilio quit (Remote host closed the connection) 2018-07-05T23:53:46Z brettgilio joined #lisp 2018-07-05T23:54:19Z brettgilio quit (Client Quit) 2018-07-05T23:55:36Z brettgilio joined #lisp 2018-07-05T23:55:43Z brettgilio quit (Remote host closed the connection) 2018-07-05T23:56:34Z brettgilio joined #lisp 2018-07-05T23:56:36Z brettgilio quit (Remote host closed the connection) 2018-07-05T23:58:06Z brettgilio joined #lisp 2018-07-05T23:58:11Z SaganMan joined #lisp 2018-07-05T23:58:37Z attila_lendvai joined #lisp 2018-07-05T23:58:37Z attila_lendvai quit (Changing host) 2018-07-05T23:58:38Z attila_lendvai joined #lisp 2018-07-05T23:58:49Z earl-ducaine_ quit (Remote host closed the connection) 2018-07-06T00:00:46Z megalography quit (Ping timeout: 256 seconds) 2018-07-06T00:03:15Z brettgilio quit (Remote host closed the connection) 2018-07-06T00:06:28Z attila_lendvai quit (Quit: Leaving.) 2018-07-06T00:08:56Z fikka joined #lisp 2018-07-06T00:11:29Z mflem quit (Read error: Connection reset by peer) 2018-07-06T00:12:41Z mflem joined #lisp 2018-07-06T00:13:48Z Kundry_Wag quit (Remote host closed the connection) 2018-07-06T00:14:09Z fikka quit (Ping timeout: 264 seconds) 2018-07-06T00:14:28Z mindCrime_ joined #lisp 2018-07-06T00:14:35Z mindCrime quit (Ping timeout: 240 seconds) 2018-07-06T00:15:14Z megalography joined #lisp 2018-07-06T00:19:50Z cozachk quit (Quit: Leaving) 2018-07-06T00:23:09Z earl-ducaine joined #lisp 2018-07-06T00:23:30Z patlv joined #lisp 2018-07-06T00:26:06Z Oddity joined #lisp 2018-07-06T00:30:35Z loli quit (Quit: WeeChat 2.1) 2018-07-06T00:32:19Z loli joined #lisp 2018-07-06T00:32:59Z patlv quit (Ping timeout: 255 seconds) 2018-07-06T00:35:17Z Kundry_Wag joined #lisp 2018-07-06T00:37:33Z mindCrime_ quit (Ping timeout: 264 seconds) 2018-07-06T00:38:19Z lavaflow joined #lisp 2018-07-06T00:39:59Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-06T00:41:22Z troydm quit (Quit: What is Hope? That all of your wishes and all of your dreams come true? To turn back time because things were not supposed to happen like that (C) Rau Le Creuset) 2018-07-06T00:52:12Z eli_oat joined #lisp 2018-07-06T00:53:35Z tessier quit (Ping timeout: 256 seconds) 2018-07-06T00:54:41Z eli_oat quit (Client Quit) 2018-07-06T01:03:03Z brettgilio joined #lisp 2018-07-06T01:05:51Z eli_oat joined #lisp 2018-07-06T01:15:42Z patlv joined #lisp 2018-07-06T01:15:47Z kerframil joined #lisp 2018-07-06T01:21:16Z doesthiswork1 joined #lisp 2018-07-06T01:21:16Z doesthiswork quit (Read error: Connection reset by peer) 2018-07-06T01:26:03Z charh joined #lisp 2018-07-06T01:26:53Z fikka joined #lisp 2018-07-06T01:26:58Z brettgilio quit (Quit: Leaving) 2018-07-06T01:27:18Z brettgilio joined #lisp 2018-07-06T01:28:20Z brettgilio quit (Client Quit) 2018-07-06T01:28:39Z brettgilio joined #lisp 2018-07-06T01:29:02Z brettgilio quit (Client Quit) 2018-07-06T01:29:24Z brettgilio joined #lisp 2018-07-06T01:31:02Z patlv quit (Ping timeout: 268 seconds) 2018-07-06T01:31:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-06T01:33:29Z kmurphy4 joined #lisp 2018-07-06T01:33:42Z keggsmurph21 joined #lisp 2018-07-06T01:34:30Z keggsmurph21 quit (Remote host closed the connection) 2018-07-06T01:34:30Z kmurphy4 quit (Remote host closed the connection) 2018-07-06T01:35:59Z kmurphy4 joined #lisp 2018-07-06T01:36:12Z kmurphy4 quit (Remote host closed the connection) 2018-07-06T01:42:07Z Kundry_Wag joined #lisp 2018-07-06T01:43:01Z bjorkintosh quit (Quit: Leaving) 2018-07-06T01:46:35Z jibanes quit (Ping timeout: 265 seconds) 2018-07-06T01:46:51Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-06T01:48:19Z jibanes joined #lisp 2018-07-06T01:54:36Z raynold quit (Quit: Connection closed for inactivity) 2018-07-06T01:55:06Z sjl joined #lisp 2018-07-06T01:56:22Z Guest1958 joined #lisp 2018-07-06T01:57:42Z Guest1958 is now known as PuercoPop 2018-07-06T02:00:27Z rumbler31 joined #lisp 2018-07-06T02:02:19Z mathZ joined #lisp 2018-07-06T02:03:32Z optikalmouse joined #lisp 2018-07-06T02:03:54Z k4rtik joined #lisp 2018-07-06T02:09:17Z Kundry_Wag joined #lisp 2018-07-06T02:09:51Z EvW quit (Ping timeout: 240 seconds) 2018-07-06T02:10:02Z brettgilio quit (Remote host closed the connection) 2018-07-06T02:13:57Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-06T02:16:15Z Kundry_Wag joined #lisp 2018-07-06T02:16:48Z graphene quit (Remote host closed the connection) 2018-07-06T02:18:03Z graphene joined #lisp 2018-07-06T02:18:19Z raynold joined #lisp 2018-07-06T02:18:23Z patlv joined #lisp 2018-07-06T02:21:54Z light2yellow quit (Quit: light2yellow) 2018-07-06T02:22:50Z mathZ left #lisp 2018-07-06T02:22:59Z buffergn0me joined #lisp 2018-07-06T02:23:53Z robotoad quit (Ping timeout: 256 seconds) 2018-07-06T02:27:05Z nowhere_man quit (Ping timeout: 240 seconds) 2018-07-06T02:32:43Z beach: Good morning everyone! 2018-07-06T02:33:16Z beach: mfiano: Yes, I intend to implement the GC in Common Lisp. Not in portable Common Lisp obviously. Some primitives for accessing memory are needed. 2018-07-06T02:34:20Z beach: Bike: I think Cliki has a place where issues with the Common Lisp HyperSpec are listed. It would be good to add this issue to that list. 2018-07-06T02:34:29Z Bike: it's already on there 2018-07-06T02:34:37Z beach: Oh, OK. Good. 2018-07-06T02:36:11Z parjanya joined #lisp 2018-07-06T02:37:12Z parjanya quit (Remote host closed the connection) 2018-07-06T02:37:46Z parjanya joined #lisp 2018-07-06T02:38:06Z nowhere_man joined #lisp 2018-07-06T02:39:31Z Kundry_W_ joined #lisp 2018-07-06T02:40:13Z robotoad joined #lisp 2018-07-06T02:42:09Z SaganMan quit (Ping timeout: 248 seconds) 2018-07-06T02:42:30Z Kundry_Wag quit (Remote host closed the connection) 2018-07-06T02:42:51Z fikka joined #lisp 2018-07-06T02:43:20Z AetherWind joined #lisp 2018-07-06T02:43:37Z AetherWind quit (Remote host closed the connection) 2018-07-06T02:44:06Z Kundry_W_ quit (Ping timeout: 265 seconds) 2018-07-06T02:44:34Z AetherWind joined #lisp 2018-07-06T02:45:30Z AetherWind quit (Client Quit) 2018-07-06T02:46:57Z parjanya quit (Read error: Connection reset by peer) 2018-07-06T02:47:18Z AetherWind joined #lisp 2018-07-06T02:48:05Z fikka quit (Ping timeout: 276 seconds) 2018-07-06T02:48:05Z parjanya joined #lisp 2018-07-06T02:52:00Z deng_cn quit (Read error: Connection reset by peer) 2018-07-06T02:52:10Z mooshmoosh joined #lisp 2018-07-06T02:52:25Z deng_cn joined #lisp 2018-07-06T02:53:57Z megalography quit (Ping timeout: 240 seconds) 2018-07-06T02:53:58Z parjanya quit (Read error: Connection reset by peer) 2018-07-06T02:55:11Z rumbler31 quit (Remote host closed the connection) 2018-07-06T02:55:47Z Kundry_Wag joined #lisp 2018-07-06T03:01:27Z SaganMan joined #lisp 2018-07-06T03:02:10Z klltkr_ joined #lisp 2018-07-06T03:03:05Z klltkr quit (Ping timeout: 240 seconds) 2018-07-06T03:03:56Z Pixel_Outlaw joined #lisp 2018-07-06T03:06:11Z patlv quit (Ping timeout: 256 seconds) 2018-07-06T03:09:00Z kruhft joined #lisp 2018-07-06T03:11:28Z parjanya joined #lisp 2018-07-06T03:11:37Z eli_oat quit (Quit: Leaving.) 2018-07-06T03:12:29Z robotoad quit (Quit: robotoad) 2018-07-06T03:13:04Z robotoad joined #lisp 2018-07-06T03:13:32Z mindCrime_ joined #lisp 2018-07-06T03:14:39Z robotoad quit (Client Quit) 2018-07-06T03:15:10Z robotoad joined #lisp 2018-07-06T03:15:25Z robotoad quit (Client Quit) 2018-07-06T03:15:53Z robotoad joined #lisp 2018-07-06T03:16:11Z robotoad quit (Client Quit) 2018-07-06T03:16:17Z megalography joined #lisp 2018-07-06T03:16:39Z robotoad joined #lisp 2018-07-06T03:16:57Z robotoad quit (Client Quit) 2018-07-06T03:17:23Z robotoad joined #lisp 2018-07-06T03:17:43Z robotoad quit (Client Quit) 2018-07-06T03:18:20Z robotoad joined #lisp 2018-07-06T03:18:29Z robotoad quit (Client Quit) 2018-07-06T03:18:46Z pierpa quit (Quit: Page closed) 2018-07-06T03:18:50Z eli_oat joined #lisp 2018-07-06T03:19:05Z robotoad joined #lisp 2018-07-06T03:19:15Z robotoad quit (Client Quit) 2018-07-06T03:19:52Z parjanya quit (Read error: Connection reset by peer) 2018-07-06T03:22:25Z robotoad joined #lisp 2018-07-06T03:22:29Z Bike quit (Quit: Lost terminal) 2018-07-06T03:31:57Z Kundry_Wag quit (Remote host closed the connection) 2018-07-06T03:36:05Z vap1 quit (Ping timeout: 240 seconds) 2018-07-06T03:36:21Z vtomole joined #lisp 2018-07-06T03:37:18Z fikka joined #lisp 2018-07-06T03:38:25Z pierpal quit (Quit: Poof) 2018-07-06T03:38:45Z pierpal joined #lisp 2018-07-06T03:40:05Z kristof quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com )) 2018-07-06T03:40:06Z kristof_ quit (Remote host closed the connection) 2018-07-06T03:42:53Z fikka quit (Ping timeout: 255 seconds) 2018-07-06T03:50:10Z beach: Suppose I want to implement a memory allocator using the technique of Doug Lea. That technique uses a sequence of "bins" sorted by chunk size. In general, having a large number (like 512 or more) of bins is advantageous for performance. 2018-07-06T03:50:16Z skapata quit (Remote host closed the connection) 2018-07-06T03:50:18Z beach: However, there is a case that might need particular attention, namely searching for the first (i.e. best fit) bin that has at least one chunk that is greater or equal to a particular size that is being allocated. Finding the first potential bin can be done with binary search, and that would be cheap no matter how many bins there are. 2018-07-06T03:50:25Z beach: But that first potential bin might have no chunks in it. So one would have to find the first non-empty bin starting with the first potential bin. It would seem that a sequential search is called for here. 2018-07-06T03:50:26Z beach: But suppose I maintain a global bitmap of non-empty bins, and a bitmap for each bin with all zeros below the position for this bin and all ones for positions greater than or equal to this position. I can then AND the global bitmap and the bitmap for this bin and search for the first bit position that is set in the resulting bitmap. 2018-07-06T03:55:44Z rumbler31 joined #lisp 2018-07-06T03:58:06Z beach: Even better: Given a number N between 0 and 64, how can I generate 64-bit bitmap with the N least significant bits set and the others cleared? 2018-07-06T03:58:24Z beach: Then I don't need to store any bitmaps other than the global one. 2018-07-06T03:59:13Z beach: I guess can take a bitmap with all bits set, and shift it right by 64-N positions. 2018-07-06T04:00:01Z beach: Easy. 2018-07-06T04:00:33Z rumbler31 quit (Ping timeout: 248 seconds) 2018-07-06T04:02:57Z kruhft: I'm working on trying to design a basic switch using propagator techniques. 2018-07-06T04:03:14Z kruhft: I think I'll have to pull out SICP, I don't think i can do it from memory. 2018-07-06T04:03:17Z eli_oat quit (Quit: Leaving.) 2018-07-06T04:03:23Z mfiano: pillton: How can I specialize a single parameter as multiple types using OR? 2018-07-06T04:04:59Z beach: kruhft: What is a "switch using propagator techniques"? 2018-07-06T04:05:18Z Patternmaster joined #lisp 2018-07-06T04:05:42Z kruhft: a switch, like a transistor 2018-07-06T04:06:03Z beach: Ah, OK. 2018-07-06T04:06:04Z kruhft: and propagator techniques like message passing like Sussman does in SICP for his logic system 2018-07-06T04:06:10Z beach: I see. 2018-07-06T04:06:12Z kruhft: i'm trying to design a processor 2018-07-06T04:06:19Z kruhft: well architect one 2018-07-06T04:06:41Z kruhft: and i'm building the lowest level system part, the switch 2018-07-06T04:06:41Z Pixel_Outlaw quit (Quit: Leaving) 2018-07-06T04:06:44Z kruhft: that i want to design at 2018-07-06T04:07:04Z kruhft: and then hopefully some sort of switch to silicon compiler comes around to fill in the details 2018-07-06T04:07:13Z kruhft: i'm not really a hardware person 2018-07-06T04:07:14Z al-damiri quit (Quit: Connection closed for inactivity) 2018-07-06T04:07:35Z kruhft: but i want to design this processor 2018-07-06T04:07:44Z kruhft: i was pretty good at computer architecture back in the day 2018-07-06T04:08:30Z kruhft: beach: you're writing clasp right? 2018-07-06T04:09:06Z jasom: beach: is it necessary to use bins with a compacting GC? 2018-07-06T04:09:19Z beach: kruhft: No, I am not writing Clasp. drmeister is. 2018-07-06T04:09:32Z beach: jasom: No. 2018-07-06T04:10:11Z kruhft: oh yeah 2018-07-06T04:10:22Z kruhft: haven't been in here for a while, forgot who is doing what 2018-07-06T04:10:24Z jasom: kruhft: beach is writing SICL and Cleavir, the latter of which is used by clasp. 2018-07-06T04:10:46Z kruhft: SICL is the userspace Common Lisp implementation library for clasp? 2018-07-06T04:11:03Z optikalmouse quit (Quit: optikalmouse) 2018-07-06T04:11:10Z beach: minion: Please tell kruhft about SICL. 2018-07-06T04:11:10Z minion: kruhft: SICL: SICL is a (perhaps futile) attempt to re-implement Common Lisp from scratch, hopefully using improved programming and bootstrapping techniques. See https://github.com/robert-strandh/SICL 2018-07-06T04:11:16Z beach: minion: Please tell kruhft about Cleavir. 2018-07-06T04:11:16Z minion: kruhft: Cleavir: A project to create an implementation-independent compilation framework for Common Lisp. Currently Cleavir is part of SICL, but that might change in the future 2018-07-06T04:11:32Z kruhft: cool, i remember those projects 2018-07-06T04:11:50Z jasom: I also saw on the clisp mailing lisp that someone got cleavir working with clisp, targeting clisp bytecode. 2018-07-06T04:12:10Z beach: kruhft: Clasp is using Cleavir, but also a few techniques that I designed specifically for SICL, namely fast generic dispatch and some more. 2018-07-06T04:12:11Z zooey quit (Ping timeout: 250 seconds) 2018-07-06T04:12:23Z Kundry_Wag joined #lisp 2018-07-06T04:12:36Z beach: jasom: Yes, karlosz is writing a Cleavir-based compiler for CLISP. 2018-07-06T04:12:45Z jasom: does the fast generic dispatch require first class global environments? 2018-07-06T04:12:50Z beach: No. 2018-07-06T04:13:03Z jasom: beach: have a paper handy on how it works? 2018-07-06T04:13:12Z beach: I do. Hold on... 2018-07-06T04:13:17Z brettgilio joined #lisp 2018-07-06T04:13:38Z beach: http://metamodular.com/generic-dispatch.pdf 2018-07-06T04:13:45Z jasom: thanks! 2018-07-06T04:13:59Z vtomole: kruhft: Are you trying to write a CPU simulator in Lisp? 2018-07-06T04:14:01Z beach: jasom: Nothing magic. Just taking advantage of how processors have evolved. 2018-07-06T04:14:18Z kruhft: vtomole: yes, that is the plan 2018-07-06T04:14:28Z kruhft: vtomole: for an architecture i want to try out 2018-07-06T04:15:02Z vtomole: Funny. I'm currently doing the same thing. What's your plan? 2018-07-06T04:15:06Z kruhft: vtomole: this is an implementation of the cpu i want to architect: https://github.com/burtonsamograd/explain 2018-07-06T04:15:14Z kruhft: or at least a game to learn how to program it 2018-07-06T04:17:01Z vtomole: I'm starting from ground up. I've just defined my and/or/not gates :) 2018-07-06T04:17:08Z vtomole: It's going to take a while.. 2018-07-06T04:17:44Z vtomole: While on this subject. Does anyone know what the "simplest" CPU is? 2018-07-06T04:17:48Z graphene quit (Remote host closed the connection) 2018-07-06T04:17:48Z zooey joined #lisp 2018-07-06T04:18:18Z kruhft: i don't think there could be a 'simplest' cpu, but a SISC (single instruction set computer) would probably qualify 2018-07-06T04:18:34Z kruhft: something like Decriment and Branch if Zero would be a pretty simple computer implementation 2018-07-06T04:19:03Z graphene joined #lisp 2018-07-06T04:19:13Z kruhft: vtomole: if you're interested in working at the gate level in C++, you might find this library of mine interesting: https://github.com/burtonsamograd/anser 2018-07-06T04:20:12Z kruhft: it does gate level network creation at the equation level 2018-07-06T04:20:18Z kruhft: i haven't found much of a use for it yet personally 2018-07-06T04:20:28Z vtomole: Wow. One-insturction set is Turing complete. You learn new things every day :) 2018-07-06T04:20:29Z kruhft: but i thought it was intersting enough to write down a while back 2018-07-06T04:21:01Z beach: jasom: I deliberately did not design a compacting GC for the global heap in SICL. 2018-07-06T04:22:55Z jasom: beach: is that to make FFI interop simpler, or just to explore a less used corner of the GC search space? 2018-07-06T04:23:56Z beach: jasom: It turns out that it makes FFI simpler, but that's not the main reason. It especially makes it easier to use a concurrent and parallel collector. Application threads don't have to be informed about objects that moved. 2018-07-06T04:25:15Z vtomole: kruhft: Could a one instruction set also just be "(nand bit0 bit1)" ? 2018-07-06T04:28:23Z jasom: beach: yeah, I've been experimenting with an incremental collector (that might be possible to turn into a concrrent collector) that is just a simple semi-space that protects the FROM space with the MMU, but even then you end up complicating things like EQL. 2018-07-06T04:28:56Z jasom: also it's a terrible hit to throughput because segfaults are expensive. 2018-07-06T04:28:58Z beach: jasom: I completely understand. 2018-07-06T04:29:00Z Beep-Lord quit (Ping timeout: 245 seconds) 2018-07-06T04:29:10Z kruhft: vtomole: i'm note sure exactly. there was a lot of research into it back when it was found out...like in the 50's or something 2018-07-06T04:29:21Z kruhft: the wikipedia page has a list of them, i just remember that one specifically 2018-07-06T04:32:10Z sito joined #lisp 2018-07-06T04:33:11Z brettgilio quit (Quit: Leaving) 2018-07-06T04:33:27Z beach: jasom: When I made that decision, it was based on my being convinced about the results by Wilson: http://www.cs.northwestern.edu/~pdinda/ics-s05/doc/dsa.pdf page 14. 2018-07-06T04:33:31Z brettgilio joined #lisp 2018-07-06T04:33:49Z jasom: beach: to randomly switch back topics to the GF dispatch, what is the rack used for (other than the stamp, which is clear)? 2018-07-06T04:34:05Z beach: All the data. 2018-07-06T04:34:14Z beach: The header is just a class pointer and a rack pointer. 2018-07-06T04:36:28Z jasom: oh 2018-07-06T04:38:44Z jasom: After experimenting with my GC, it occurs to me that (other than fragmentation avoidance) the main advantage of a compacting collector is improving throughput, since allocation is a single pointer addition, and for copying collectors, nursery collections are often very fast. For concurrent collectors I think the costs to throughput of managing moving pointers may be greater than the savings in allocation 2018-07-06T04:38:46Z jasom: overhead. 2018-07-06T04:39:52Z beach: Let me contemplate that for a minute... 2018-07-06T04:40:22Z beach: You may be right. 2018-07-06T04:40:33Z jasom: SBCL's allocator is significantly higher throughput than most malloc/free implementations on real-world workloads. The latency is what gets you though 2018-07-06T04:40:45Z beach: I see. 2018-07-06T04:40:59Z beach: I am using a sliding collector for the per-thread nursery with no back pointers to manage. 2018-07-06T04:41:34Z beach: Only the global collector keeps objects in a fixed place. 2018-07-06T04:42:04Z beach: By "latency", do you mean the time it takes to run the collector? 2018-07-06T04:42:05Z jasom: do objects get promoted to the global space when they age-out of the nursery? 2018-07-06T04:42:12Z beach: Yes. 2018-07-06T04:42:28Z beach: And also when a pointer might be created form the global heap to the nursery. 2018-07-06T04:42:29Z jasom: beach: yes, basically the maximum time that the mutator is blocked by memory allocation. 2018-07-06T04:42:35Z beach: I see. 2018-07-06T04:43:02Z sakalli_ joined #lisp 2018-07-06T04:43:10Z Kundry_W_ joined #lisp 2018-07-06T04:44:08Z beach: In my scheme, the application threads are only paused for a nursery collection. Allocation is usually done in the per-thread heap, which is just bumping a pointer. 2018-07-06T04:44:30Z beach: Of course, I am only at the specification level. None of this stuff has been tested. 2018-07-06T04:45:35Z jasom: sounds interesting 2018-07-06T04:45:38Z brettgilio quit (Quit: Leaving) 2018-07-06T04:45:48Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-06T04:46:00Z brettgilio joined #lisp 2018-07-06T04:46:05Z nowhere_man quit (Read error: Connection reset by peer) 2018-07-06T04:46:15Z sakalli_ quit (Client Quit) 2018-07-06T04:46:25Z k4rtik quit (Ping timeout: 248 seconds) 2018-07-06T04:46:29Z beach: Also, by using a sliding collector for the nursery, I have a very precise idea of the relative age of objects. 2018-07-06T04:46:30Z beach: A traditional copying collector, i.e., one that promotes objects based on whether they survive the GC, runs the risk of promoting objects that have just been allocated and that will die soon. The sliding collector minimizes that risk. 2018-07-06T04:46:52Z brettgilio quit (Remote host closed the connection) 2018-07-06T04:47:17Z Zhivago: You can simplify the process by having short lived processes where nothing survives the first generation. :) 2018-07-06T04:47:18Z brettgilio joined #lisp 2018-07-06T04:47:30Z jasom: if you make a pointer from the global heap to the head of a largish list in the nursery, will that require the entire list to be copied at once? 2018-07-06T04:47:35Z Kundry_W_ quit (Ping timeout: 240 seconds) 2018-07-06T04:47:39Z beach: Yes. 2018-07-06T04:47:51Z brettgilio quit (Remote host closed the connection) 2018-07-06T04:48:00Z beach: But the nursery is small, so that won't take more time than a GC would. 2018-07-06T04:48:12Z beach: My estimate is a few ms. 2018-07-06T04:48:16Z fikka joined #lisp 2018-07-06T04:48:31Z beach: I wanted it to be good enough for application that process sound. 2018-07-06T04:48:51Z jasom: Zhivago: you joke, but I've seen C compilers that never free memory because they will exit after compiling a single file. 2018-07-06T04:49:03Z Zhivago: I'm not joking. 2018-07-06T04:49:13Z Zhivago: And I think that's a reasonable strategy. 2018-07-06T04:49:55Z jasom: It's a reasonable strategy up to the point where more complex optimizations are added that require significant temporary space, and then half the compiler needs to be rewritten :( 2018-07-06T04:49:56Z Zhivago: If your computations are algorithmic, then space is bounded by the size of the current inputs, which means that given sufficient resources collection can always be avoided. 2018-07-06T04:50:20Z nowhere_man joined #lisp 2018-07-06T04:50:39Z Zhivago: Then you break it up into multiple processes, and collection is replaced by output emission. 2018-07-06T04:51:14Z jasom: or a customer generated a function with 100k lines of code and OOMs 2018-07-06T04:51:59Z fe[nl]ix: jasom: one of the main reasons for Unix processes was garbage collection 2018-07-06T04:52:41Z Zhivago: The main difficulty with GC is when there's no notion of consumer or justification for data to exist, which means that everything that might be used by anything needs to be maintained. 2018-07-06T04:53:18Z fikka quit (Ping timeout: 268 seconds) 2018-07-06T04:53:25Z beach: fe[nl]ix: Can you elaborate on that? 2018-07-06T04:53:40Z Zhivago: Once you say, "we are producing output for A, B, and C, from X" then it becomes much simpler. 2018-07-06T04:53:54Z igemnace joined #lisp 2018-07-06T04:53:58Z jasom: Well this is where you see languages that disallow arbitrary graphs of pointers in order to allow all deallocations to be statically computed. 2018-07-06T04:57:37Z fe[nl]ix: beach: the original Unix machines were memory constrained and using lots of tiny processes reduces heap fragmentation across the whole machine because exit() is a garbage collection 2018-07-06T04:58:31Z beach: fe[nl]ix: I see. I don't think I have ever seen that as an explicit reason for processes. 2018-07-06T04:58:57Z beach: fe[nl]ix: If I can find the source of that information, I'll cite it in my LispOS paper. :) 2018-07-06T04:59:07Z fe[nl]ix: I believe that originally there weren't even daemons, and a typical machine would have the init process and one shell per user 2018-07-06T04:59:15Z isospin joined #lisp 2018-07-06T04:59:37Z beach: That's what Multics does, so it seems likely that they tried to copy that idea. 2018-07-06T05:00:43Z fe[nl]ix: I'm not a good scholar, I don't keep track of references :) 2018-07-06T05:01:09Z beach: No problem. If you recall, then please let me know. 2018-07-06T05:01:27Z fe[nl]ix: and the concept of a unix process as a separate and isolated address space came before Unix 2018-07-06T05:01:40Z beach: Absolutely. 2018-07-06T05:01:47Z fe[nl]ix: and they were called "virtual machines" before Unix 2018-07-06T05:01:51Z fe[nl]ix: which I find so funny 2018-07-06T05:01:51Z rumbler31 joined #lisp 2018-07-06T05:02:07Z beach: The name makes sense. 2018-07-06T05:02:29Z beach: It creates the illusion of having the entire machine at the disposal. 2018-07-06T05:02:57Z fe[nl]ix: exactly, coming from batch systems with no virtual memory 2018-07-06T05:04:02Z isospin quit (Client Quit) 2018-07-06T05:07:39Z rumbler31 quit (Ping timeout: 265 seconds) 2018-07-06T05:08:47Z pierpal quit (Read error: Connection reset by peer) 2018-07-06T05:08:47Z isospin joined #lisp 2018-07-06T05:11:45Z isospin left #lisp 2018-07-06T05:12:03Z isospin joined #lisp 2018-07-06T05:16:12Z isospin quit (Client Quit) 2018-07-06T05:16:33Z isospin joined #lisp 2018-07-06T05:17:34Z sauvin joined #lisp 2018-07-06T05:18:05Z Kundry_Wag joined #lisp 2018-07-06T05:19:58Z isospin quit (Client Quit) 2018-07-06T05:20:24Z vtomole quit (Ping timeout: 252 seconds) 2018-07-06T05:21:27Z mooshmoosh quit (Quit: Quit) 2018-07-06T05:25:15Z beach: jasom: I am working on a fairly detailed specification of the planned SICL garbage collector(s). Would you be interested in reading it once I am done? 2018-07-06T05:25:39Z eschatologist joined #lisp 2018-07-06T05:25:44Z jasom: beach: yes, I've enjoyed pretty much all of the SICL papers I've read so far 2018-07-06T05:26:10Z beach: Excellent. It is not imminent. There are a lot of details to work out. But I'll keep you in mind. Thanks. 2018-07-06T05:26:58Z shifty joined #lisp 2018-07-06T05:29:34Z fikka joined #lisp 2018-07-06T05:39:11Z gousuto quit (Quit: Leaving) 2018-07-06T05:42:04Z milanj quit (Quit: This computer has gone to sleep) 2018-07-06T05:45:12Z vlatkoB joined #lisp 2018-07-06T05:48:26Z copec quit (Ping timeout: 244 seconds) 2018-07-06T05:49:34Z drmeister: Is it a reasonable optimization to bind the function slot of symbols that are not fboundp to a function that prints that the function slot is unbound? 2018-07-06T05:50:23Z drmeister: I seem to recall that being something that is done. 2018-07-06T05:50:46Z Inline quit (Quit: Leaving) 2018-07-06T05:51:35Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-06T05:51:53Z fikka quit (Ping timeout: 268 seconds) 2018-07-06T05:53:06Z copec joined #lisp 2018-07-06T05:53:36Z beach: I do that in SICL. 2018-07-06T05:54:09Z beach: It doesn't print it. It signals an error. 2018-07-06T05:54:24Z beach vanishes for a while. 2018-07-06T05:56:28Z fikka joined #lisp 2018-07-06T05:59:13Z tessier joined #lisp 2018-07-06T05:59:24Z tessier quit (Changing host) 2018-07-06T05:59:24Z tessier joined #lisp 2018-07-06T06:00:13Z shka_ joined #lisp 2018-07-06T06:01:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-06T06:01:29Z drmeister: Right - it should signal an error - how do you pass the name of the function to the error? Do you bind a closure that is closed over the name of the symbol? 2018-07-06T06:06:20Z fikka joined #lisp 2018-07-06T06:06:23Z parjanya joined #lisp 2018-07-06T06:06:27Z erratic quit (Ping timeout: 240 seconds) 2018-07-06T06:06:32Z parjanya quit (Client Quit) 2018-07-06T06:08:05Z igemnace quit (Read error: Connection reset by peer) 2018-07-06T06:09:10Z igemnace joined #lisp 2018-07-06T06:10:54Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-06T06:11:19Z ebrasca quit (Remote host closed the connection) 2018-07-06T06:11:32Z FreeBirdLjj joined #lisp 2018-07-06T06:14:31Z ebrasca joined #lisp 2018-07-06T06:16:13Z FreeBirdLjj quit (Ping timeout: 256 seconds) 2018-07-06T06:18:29Z fikka quit (Ping timeout: 256 seconds) 2018-07-06T06:21:11Z milanj joined #lisp 2018-07-06T06:21:51Z fikka joined #lisp 2018-07-06T06:22:59Z jgkamat joined #lisp 2018-07-06T06:23:26Z flamebeard joined #lisp 2018-07-06T06:23:47Z Kundry_Wag joined #lisp 2018-07-06T06:24:19Z jgkamat: hi, I currently have a server app I'm developing in CL, I can reload updates to it just fine when I'm using slime, but how would I go about doing it on the server (to have zero downtime) 2018-07-06T06:25:37Z jackdaniel: jgkamat: you can tunnel swank port so you can connect remotely 2018-07-06T06:25:52Z jackdaniel: I'd be careful with that for security reasons (that's why I mention tunneling) 2018-07-06T06:26:33Z jgkamat: I'd rather not do that, I was hoping for some lisp that I could run (I could make a server command that runs it) to reload all the files. Maybe I could (ql:quickload :my-project) again? Would that do what I want? :P 2018-07-06T06:26:35Z fikka quit (Ping timeout: 260 seconds) 2018-07-06T06:26:48Z jackdaniel: so you make swank to listen for connection from localhost and tunnel your connection so it is done from localhost indeed 2018-07-06T06:26:54Z jgkamat: Disclaimer: I'm really bad at asdf and quicklisp in general 2018-07-06T06:27:11Z jackdaniel: well, that's what swank gives you: remote repl 2018-07-06T06:27:35Z jackdaniel: but sure, you may create an endpoint which called reloads everything 2018-07-06T06:27:50Z jackdaniel: but I'd take care of security for that too 2018-07-06T06:28:04Z jgkamat: ah that makes sense, I'll look into it. I was planning on SSHing in, attaching to the tmux of the running session and reloading like that 2018-07-06T06:28:16Z chrnok joined #lisp 2018-07-06T06:28:20Z jgkamat: (I have a cli as part of my server) 2018-07-06T06:28:25Z jackdaniel: ah 2018-07-06T06:35:15Z pierpal joined #lisp 2018-07-06T06:36:20Z deng_cn1 joined #lisp 2018-07-06T06:36:20Z ebrasca quit (Read error: Connection reset by peer) 2018-07-06T06:36:41Z ebrasca joined #lisp 2018-07-06T06:39:00Z deng_cn quit (Ping timeout: 256 seconds) 2018-07-06T06:39:00Z deng_cn1 is now known as deng_cn 2018-07-06T06:39:52Z Kundry_W_ joined #lisp 2018-07-06T06:40:01Z pseudonymous quit (Ping timeout: 256 seconds) 2018-07-06T06:40:05Z buffergn0me quit (Ping timeout: 240 seconds) 2018-07-06T06:40:52Z robotoad quit (Quit: robotoad) 2018-07-06T06:42:15Z isospin joined #lisp 2018-07-06T06:43:20Z fikka joined #lisp 2018-07-06T06:44:21Z Kundry_W_ quit (Ping timeout: 256 seconds) 2018-07-06T06:48:22Z fikka quit (Ping timeout: 264 seconds) 2018-07-06T06:54:03Z fikka joined #lisp 2018-07-06T06:56:22Z pillton: mfiano: Did you solve your problem? 2018-07-06T06:56:23Z Kundry_Wag quit (Ping timeout: 255 seconds) 2018-07-06T06:57:51Z terpri quit (Ping timeout: 240 seconds) 2018-07-06T06:59:05Z shrdlu68 joined #lisp 2018-07-06T06:59:37Z pillton: mfiano: Here is an example https://hastebin.com/yelodizebu.lisp . 2018-07-06T07:00:07Z jgkamat: another unrelated question, I have an error caught in a handler-case, how do I print the stacktrace of the error. I can print the type of error with format. 2018-07-06T07:03:04Z pillton: (apropos "backtrace") on SBCL shows a number of functions. e.g. (sb-debug:print-backtrace). 2018-07-06T07:03:45Z rumbler31 joined #lisp 2018-07-06T07:03:47Z aeth: apropos? wow 2018-07-06T07:04:00Z pillton: What? 2018-07-06T07:04:10Z aeth: I've always just found things with SLIME tab completion, which breaks down at the hyphens 2018-07-06T07:04:16Z robotoad joined #lisp 2018-07-06T07:04:24Z pillton: Oh. I thought you were making fun of my answer. 2018-07-06T07:05:07Z pillton: I only wish apropos would print the fully qualified symbol name. 2018-07-06T07:06:28Z pillton: (quicklisp:system-apropos "backtrace") shows that there is a trivial-backtrace system as well. I have never used it though. 2018-07-06T07:06:38Z jdz: SLIME also has slime-apropos function. 2018-07-06T07:06:45Z doesthiswork1 quit (Quit: Leaving.) 2018-07-06T07:08:10Z rumbler31 quit (Ping timeout: 260 seconds) 2018-07-06T07:09:25Z jackdaniel: jgkamat: trivial-backtrace is decent, but you don't want handler-case – you already lost backtrace by this time 2018-07-06T07:10:05Z scymtym quit (Ping timeout: 240 seconds) 2018-07-06T07:10:24Z jackdaniel: use handler-bind before stack is unwound (I remember there were some discussion about technical details why claiming that is incorrect, I don't remember the details though) - from practical perspective if you print backtrace from handler-bind you'll get backtrace of where error occured 2018-07-06T07:10:24Z jgkamat: hmm, my use case is essentially sending errors within a function somewhere else (in addition to the top level). Ie: logging errors to a file. Is there a better way to do that jackdaniel? 2018-07-06T07:10:45Z jackdaniel: when you print backtrace from handler-case you'll see backtrace of stack where handler-case is put 2018-07-06T07:11:01Z jgkamat: ah, I'll try handler-bind, thanks for the pointer 2018-07-06T07:11:15Z orivej joined #lisp 2018-07-06T07:11:18Z jackdaniel: jgkamat: for printing errors you may use log4cl and configure it properly 2018-07-06T07:11:43Z jackdaniel: it has log:error ; log:info etc, it may be configured to use syslog, a file, console and other appenders simultanouesly 2018-07-06T07:11:57Z jackdaniel: I'm sure I've mispelled the last word, checking in the dictionary :-) 2018-07-06T07:12:09Z jgkamat: oh wow this look really nice, I'm assuming it catches lisp errors too? 2018-07-06T07:12:21Z jackdaniel: log4cl does not catch anything 2018-07-06T07:12:27Z jackdaniel: you may use it to print things 2018-07-06T07:12:27Z jgkamat: er, logs them, I mean 2018-07-06T07:12:44Z Smokitch joined #lisp 2018-07-06T07:12:47Z jackdaniel: yes, you may log anything, errors, warnings, info, debug, trace and configure level of verbosity 2018-07-06T07:12:53Z jackdaniel: by default debug messages won't be appended 2018-07-06T07:13:03Z jgkamat: perfect, thanks, I think this is exactly what I needed :) 2018-07-06T07:13:06Z jackdaniel: simultaneously* 2018-07-06T07:13:23Z jackdaniel: ↑ this word is weird 2018-07-06T07:13:28Z jackdaniel: (spelling-wise) 2018-07-06T07:13:42Z pierpal quit (Ping timeout: 256 seconds) 2018-07-06T07:14:41Z shrdlu68: English is just weird, I happen to speak a language that's written phonetically. 2018-07-06T07:14:47Z jackdaniel: jgkamat: one more thing – keep in mind that handler-bind won't handle the error by default – if it returns normally you'll still have an error 2018-07-06T07:15:33Z jackdaniel: one way around that is using (block nil (handler-bind … (return nil) …)) or writing custom handler-case* macro which expands into that 2018-07-06T07:15:34Z jgkamat: yah, that makes sense, that's actually what I want, so I might choose handler-bind if I'm too lazy for log4cl :P 2018-07-06T07:16:37Z jackdaniel: I usually call log4cl's error logging from the said handler-case* appropriate handler body 2018-07-06T07:20:34Z jackdaniel: (because logging and error handling are two orthogonal things if you think about it) 2018-07-06T07:26:08Z varjag joined #lisp 2018-07-06T07:28:58Z shrdlu68: Slightly off-topic question: does Clojure owe its popularity to integration with the Java ecosystem? Why hasn't ABCL seen the same level of success? 2018-07-06T07:29:54Z aeth: There's a mismatch between the JVM and CL. 2018-07-06T07:30:37Z pierpal joined #lisp 2018-07-06T07:30:47Z shrdlu68: Meaning that ABCL couldn't fill Clojure's niche? 2018-07-06T07:31:21Z jackdaniel: shrdlu68: my personal opinion is that Clojure hooked into many trendy topics: functional programming, JVM ecosystem etc. so it felt fresh 2018-07-06T07:31:54Z jackdaniel: ABCL on the other hand is traditional CL which doesn't have recpies how you should program (you have dozen of tools for that) – also CL has some historical heritage what may be not appealing to everyone 2018-07-06T07:32:40Z jackdaniel: so (once again – IMO!) Clojure is more popular because it had more appeal – "modern" language for "alternative" programmers 2018-07-06T07:32:56Z jackdaniel: of course after initial traction many other aspects came into play - i.e more contributors 2018-07-06T07:33:20Z shrdlu68: Does someone have a link to a certain work that someone created in CL, something to do with an implementation of a purely functional "framework" in CL? 2018-07-06T07:33:35Z shka_ quit (Ping timeout: 240 seconds) 2018-07-06T07:34:50Z jackdaniel: shrdlu68: fset is one of such libraries 2018-07-06T07:35:06Z pierpal quit (Ping timeout: 256 seconds) 2018-07-06T07:35:21Z jackdaniel: for good distributed/parallel programming you can look at lfarm and lparallel 2018-07-06T07:35:29Z jackdaniel: for laziness you may look at clazy 2018-07-06T07:35:48Z graphene quit (Remote host closed the connection) 2018-07-06T07:35:58Z beach: drmeister: Yes, it contains a closure that closes over the name. 2018-07-06T07:35:59Z jackdaniel: (I mention lparallel/lfarm/clazy because these are libraries tackling other "trendy" topics) 2018-07-06T07:36:46Z pierpal joined #lisp 2018-07-06T07:37:20Z graphene joined #lisp 2018-07-06T07:37:47Z surya joined #lisp 2018-07-06T07:38:30Z housel quit (Read error: Connection reset by peer) 2018-07-06T07:40:57Z pierpal quit (Ping timeout: 240 seconds) 2018-07-06T07:42:28Z shrdlu68: jackdaniel: Thanks for your insight, and these links. 2018-07-06T07:43:16Z EvW joined #lisp 2018-07-06T07:43:48Z pierpal joined #lisp 2018-07-06T07:46:23Z pierpal quit (Read error: Connection reset by peer) 2018-07-06T07:46:36Z jackdaniel: sure, hopefully you'll find them useful :-) 2018-07-06T07:47:40Z BitPuffin joined #lisp 2018-07-06T07:48:56Z xificurC quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2018-07-06T07:49:06Z xificurC joined #lisp 2018-07-06T07:49:26Z xificurC quit (Client Quit) 2018-07-06T07:50:00Z xificurC joined #lisp 2018-07-06T07:50:43Z pierpal joined #lisp 2018-07-06T07:52:09Z mange quit (Remote host closed the connection) 2018-07-06T07:59:11Z lnostdal joined #lisp 2018-07-06T07:59:43Z pierpal quit (Ping timeout: 256 seconds) 2018-07-06T08:00:50Z schweers joined #lisp 2018-07-06T08:01:42Z pierpal joined #lisp 2018-07-06T08:02:01Z scymtym joined #lisp 2018-07-06T08:03:01Z megalography quit (Quit: Leaving.) 2018-07-06T08:04:29Z hhdave joined #lisp 2018-07-06T08:05:26Z pierpal quit (Read error: Connection reset by peer) 2018-07-06T08:06:55Z fikka quit (Ping timeout: 260 seconds) 2018-07-06T08:09:43Z fikka joined #lisp 2018-07-06T08:12:07Z pierpal joined #lisp 2018-07-06T08:12:20Z xificurC quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2018-07-06T08:13:30Z hhdave quit (Ping timeout: 260 seconds) 2018-07-06T08:14:39Z pierpal quit (Read error: Connection reset by peer) 2018-07-06T08:14:58Z pierpal joined #lisp 2018-07-06T08:15:11Z Khisanth quit (Ping timeout: 265 seconds) 2018-07-06T08:16:27Z nyaray joined #lisp 2018-07-06T08:16:46Z graphene quit (Remote host closed the connection) 2018-07-06T08:17:18Z kushal quit (Remote host closed the connection) 2018-07-06T08:17:33Z kushal joined #lisp 2018-07-06T08:17:59Z graphene joined #lisp 2018-07-06T08:18:00Z shrdlu68 quit (Ping timeout: 260 seconds) 2018-07-06T08:18:49Z shrdlu68 joined #lisp 2018-07-06T08:19:11Z hph^ joined #lisp 2018-07-06T08:20:47Z pierpal quit (Read error: Connection reset by peer) 2018-07-06T08:20:59Z pierpal joined #lisp 2018-07-06T08:21:13Z beach: drmeister: I don't do it for every symbol since symbols don't have a function cell. I do it in the first-class global environment when code is loaded (what I call "tied") into that environment that refers might call the function with that name. 2018-07-06T08:24:05Z shrdlu68 quit (Ping timeout: 240 seconds) 2018-07-06T08:24:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-06T08:24:07Z m00natic joined #lisp 2018-07-06T08:24:25Z EvW quit (Ping timeout: 245 seconds) 2018-07-06T08:24:59Z shrdlu68 joined #lisp 2018-07-06T08:25:02Z fikka joined #lisp 2018-07-06T08:25:26Z pierpal quit (Ping timeout: 268 seconds) 2018-07-06T08:27:55Z dddddd joined #lisp 2018-07-06T08:28:07Z Khisanth joined #lisp 2018-07-06T08:29:39Z kerframil quit (Quit: Leaving) 2018-07-06T08:32:35Z lnostdal quit (Ping timeout: 276 seconds) 2018-07-06T08:35:23Z random-nick joined #lisp 2018-07-06T08:37:34Z nowhere_man quit (Remote host closed the connection) 2018-07-06T08:37:55Z nowhere_man joined #lisp 2018-07-06T08:40:31Z fikka quit (Ping timeout: 256 seconds) 2018-07-06T08:42:06Z scymtym_ joined #lisp 2018-07-06T08:44:07Z Kundry_Wag joined #lisp 2018-07-06T08:46:05Z scymtym quit (Ping timeout: 245 seconds) 2018-07-06T08:48:51Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-06T08:50:29Z graphene quit (Read error: Connection reset by peer) 2018-07-06T08:51:39Z mflem quit (Read error: Connection reset by peer) 2018-07-06T08:51:50Z graphene joined #lisp 2018-07-06T08:53:38Z Kundry_Wag joined #lisp 2018-07-06T08:54:40Z terpri joined #lisp 2018-07-06T09:00:02Z lumm joined #lisp 2018-07-06T09:04:38Z shrdlu68 quit (Ping timeout: 256 seconds) 2018-07-06T09:05:08Z shrdlu68 joined #lisp 2018-07-06T09:05:40Z isospin quit (Ping timeout: 245 seconds) 2018-07-06T09:06:08Z xantoz quit (Ping timeout: 268 seconds) 2018-07-06T09:06:31Z fikka joined #lisp 2018-07-06T09:06:43Z rann quit 2018-07-06T09:07:04Z rann joined #lisp 2018-07-06T09:09:20Z xantoz joined #lisp 2018-07-06T09:09:34Z drmeister: beach: Thank you 2018-07-06T09:10:25Z shrdlu68 quit (Ping timeout: 248 seconds) 2018-07-06T09:11:18Z shrdlu68 joined #lisp 2018-07-06T09:11:22Z fikka quit (Ping timeout: 260 seconds) 2018-07-06T09:11:27Z kpenc quit (Ping timeout: 240 seconds) 2018-07-06T09:19:26Z rawste joined #lisp 2018-07-06T09:20:51Z fikka joined #lisp 2018-07-06T09:20:51Z beach: drmeister: Can't sleep? 2018-07-06T09:21:19Z drmeister: No - I just realized what time it is - I better get to sleep 2018-07-06T09:22:20Z lumm quit (Read error: Connection reset by peer) 2018-07-06T09:22:25Z wigust joined #lisp 2018-07-06T09:23:15Z lumm joined #lisp 2018-07-06T09:24:51Z wigust- quit (Ping timeout: 240 seconds) 2018-07-06T09:24:54Z ebzzry: Is there a portable library for java interfacing? 2018-07-06T09:25:42Z lnostdal joined #lisp 2018-07-06T09:26:13Z jackdaniel: ebzzry: there is https://common-lisp.net/project/cl-plus-j/ using JNI (via CFFI); note that I've never used it, so I have no idea about its pros/cons and whenever it works at all 2018-07-06T09:26:15Z rippa joined #lisp 2018-07-06T09:27:25Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-06T09:27:49Z ebzzry: jackdaniel: I’ve been trying to get it to work on SBCL, however, it segfaults. 2018-07-06T09:27:57Z ebzzry: jackdaniel: I’ll try with other implementations. 2018-07-06T09:29:18Z pierpal joined #lisp 2018-07-06T09:32:10Z _cosmonaut_ joined #lisp 2018-07-06T09:36:06Z pierpal quit (Read error: Connection reset by peer) 2018-07-06T09:36:19Z pierpal joined #lisp 2018-07-06T09:40:49Z xrash quit (Ping timeout: 248 seconds) 2018-07-06T09:42:08Z pierpal quit (Read error: Connection reset by peer) 2018-07-06T09:44:01Z pierpal joined #lisp 2018-07-06T09:44:59Z _cosmonaut_ quit (Ping timeout: 268 seconds) 2018-07-06T09:52:41Z mishoo joined #lisp 2018-07-06T09:56:49Z pierpal quit (Ping timeout: 248 seconds) 2018-07-06T09:59:30Z lumm quit (Quit: lumm) 2018-07-06T09:59:43Z pierpal joined #lisp 2018-07-06T09:59:50Z fikka quit (Ping timeout: 245 seconds) 2018-07-06T09:59:51Z lumm joined #lisp 2018-07-06T10:00:35Z AetherWind quit (Quit: Leaving) 2018-07-06T10:00:36Z devon joined #lisp 2018-07-06T10:05:10Z rumbler31 joined #lisp 2018-07-06T10:07:45Z lnostdal quit (Quit: https://www.Quanto.ga/) 2018-07-06T10:08:50Z _cosmonaut_ joined #lisp 2018-07-06T10:09:52Z rumbler31 quit (Ping timeout: 260 seconds) 2018-07-06T10:11:33Z Kaisyu quit (Quit: Connection closed for inactivity) 2018-07-06T10:12:34Z isospin joined #lisp 2018-07-06T10:16:57Z pierpal quit (Ping timeout: 240 seconds) 2018-07-06T10:20:17Z vlatkoB_ joined #lisp 2018-07-06T10:22:14Z ChanServ has set mode +o p_l 2018-07-06T10:22:33Z devon quit (Ping timeout: 264 seconds) 2018-07-06T10:23:05Z vlatkoB quit (Ping timeout: 256 seconds) 2018-07-06T10:23:47Z capisce quit (Read error: Connection reset by peer) 2018-07-06T10:23:54Z capisce joined #lisp 2018-07-06T10:28:11Z mishoo quit (Quit: (save-lisp-and-die)) 2018-07-06T10:28:30Z terrorjack quit 2018-07-06T10:29:31Z terrorjack joined #lisp 2018-07-06T10:30:40Z charh quit (Remote host closed the connection) 2018-07-06T10:32:42Z exit70 quit 2018-07-06T10:33:28Z exit70 joined #lisp 2018-07-06T10:33:59Z devon joined #lisp 2018-07-06T10:34:44Z lumm quit (Ping timeout: 256 seconds) 2018-07-06T10:35:09Z dim: ebzzry: what about ABCL? 2018-07-06T10:35:32Z dim: https://common-lisp.net/project/armedbear/ 2018-07-06T10:41:10Z _cosmonaut_ quit (Ping timeout: 264 seconds) 2018-07-06T10:45:11Z _cosmonaut_ joined #lisp 2018-07-06T10:45:47Z ebzzry: In principle, I can use tat. 2018-07-06T10:45:49Z ebzzry: *that 2018-07-06T10:45:57Z ebzzry: However, the other devs are already using SBCL. 2018-07-06T10:48:36Z fikka joined #lisp 2018-07-06T10:49:03Z antoszka: Guys, do you know if cl-syslog can log to a syslog daemon over tcp/udp on a nonstandard port? I have a separate logging daemon that I'm trying to test and it does not expose a standard unix socket for logging. 2018-07-06T10:52:34Z orivej quit (Ping timeout: 264 seconds) 2018-07-06T10:53:18Z starman_jr quit 2018-07-06T10:53:35Z starman_jr joined #lisp 2018-07-06T10:53:59Z shka: alexandria has a couple of function with &key start end where start and end are bounds of sequence, end if is not present will be replaced with total length of sequence, lambda list usually looks like this &key (start 0) end 2018-07-06T10:54:02Z shka: my question 2018-07-06T10:54:19Z shka: why not &key (start 0) (end (length sequence)) 2018-07-06T10:54:48Z shka: other then perhaps cryptic error message in case of passing something other then sequence 2018-07-06T10:56:52Z fikka quit (Ping timeout: 245 seconds) 2018-07-06T10:57:56Z jackdaniel: (length sequence) in case of a list may lead to unnecessary traversal before calling the function 2018-07-06T10:58:16Z Arcaelyx quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-06T10:58:39Z jackdaniel: antoszka: did you try it? cl-syslog has udp subsystem 2018-07-06T10:59:19Z devon: (syslog.udp::udp-logger "localhost") => # 2018-07-06T10:59:35Z jackdaniel: shka: so assuming that NIL means "until end" avoid unnecessary computation 2018-07-06T11:01:33Z LdBeth: Is there any possibility to write context aware macros? 2018-07-06T11:02:28Z jackdaniel: context awareness is a vague term 2018-07-06T11:02:41Z Arcaelyx joined #lisp 2018-07-06T11:02:55Z jackdaniel: (defmacro foo (&body body) `(progn (if *context!* (progn ,@body) (error "no context!")))) 2018-07-06T11:02:57Z oni-on-ion quit (Ping timeout: 248 seconds) 2018-07-06T11:03:27Z antoszka: jackdaniel, devon, thanks, I missed that. 2018-07-06T11:04:43Z LdBeth: like in (funcall FOO) FOO has aware it is called by symbol “funcall” 2018-07-06T11:05:10Z jackdaniel: LdBeth: I don't understand you 2018-07-06T11:06:10Z kpenc joined #lisp 2018-07-06T11:07:21Z makomo quit (Ping timeout: 240 seconds) 2018-07-06T11:08:26Z devon: LdBeth: (apropos "backtrace") might show you some debugging capabilities of your implementation 2018-07-06T11:10:25Z jackdaniel: ah, that. LdBeth you may pair your macros with invoke-with-foo functions 2018-07-06T11:10:34Z jackdaniel: then you expand body to a lambda passed to invoke-with-foo 2018-07-06T11:10:53Z jackdaniel: then invoke-with-foo will appear in the backtrace 2018-07-06T11:11:20Z jackdaniel: (defun invoke-with-foo (cont) (funcall cont)) (defmacro foo (&body body) `(invoke-with-foo (lambda () ,@body))) 2018-07-06T11:14:37Z LdBeth: Okay. I got the idea 2018-07-06T11:14:42Z shka: so arguments are evaluated even if proper value was supplied? 2018-07-06T11:16:01Z jackdaniel: try it and see! 2018-07-06T11:16:06Z jackdaniel: (defun xxx (&key (a (progn (print "Hi!") 3))) a) 2018-07-06T11:16:10Z isospin quit (Remote host closed the connection) 2018-07-06T11:17:20Z shka: jackdaniel: it does not evaluate if i supply :a 2018-07-06T11:18:20Z jackdaniel: good you have tried it! 2018-07-06T11:18:25Z shka: oddly enough, alexandria in shuffle will (end (or end (proper-list-length sequence))) anyway 2018-07-06T11:18:42Z shka: so it will traverse whole sequence anyway 2018-07-06T11:19:00Z shka: well, it may be just alexandria gimmick 2018-07-06T11:19:44Z _death: shka: OR is short-circuiting 2018-07-06T11:20:15Z shka: _death: but &key already does that 2018-07-06T11:20:20Z _death: does what? 2018-07-06T11:20:48Z shka: if &key (end (length seq)) and i will supply end it won't call length 2018-07-06T11:21:06Z _death: right.. what if you supplie :end nil 2018-07-06T11:21:10Z _death: *supplied 2018-07-06T11:21:38Z shka: that's just error on my part 2018-07-06T11:21:59Z shka: i can supply nil as :start and it will have the exact same effect 2018-07-06T11:22:19Z _death: SHUFFLE makes it a non-error.. so you can use a simplistic :end end in the caller function instead of building up an arglist 2018-07-06T11:23:18Z Kundry_Wag joined #lisp 2018-07-06T11:23:20Z shka: uh, i guess 2018-07-06T11:23:25Z shka: still, i don't like it 2018-07-06T11:23:57Z _death: long default value forms just clutter the arglist 2018-07-06T11:24:07Z pioneer42 left #lisp 2018-07-06T11:24:51Z pierpal joined #lisp 2018-07-06T11:25:36Z _death: and in SHUFFLE's case, you can see that it uses different forms to initialize END depending on the sequence type.. so it'll be even longer than (end (length sequence)) 2018-07-06T11:25:58Z _death: though you could of course extract that to its own function 2018-07-06T11:27:11Z NoNumber joined #lisp 2018-07-06T11:27:26Z devon quit (Ping timeout: 256 seconds) 2018-07-06T11:27:58Z shka: well, i like to see default in the key portion of default so i guess i don't matter clutter 2018-07-06T11:28:00Z vxe joined #lisp 2018-07-06T11:28:13Z shka: *i do not care about the clutter 2018-07-06T11:28:26Z pierpal quit (Client Quit) 2018-07-06T11:29:11Z shka: i can't speak english today 2018-07-06T11:29:16Z shka: how words even work 2018-07-06T11:30:31Z _death: sure, I can appreciate that 2018-07-06T11:31:15Z pierpal joined #lisp 2018-07-06T11:33:27Z nowhere_man quit (Read error: Connection reset by peer) 2018-07-06T11:33:52Z nowhere_man joined #lisp 2018-07-06T11:35:34Z pierpal quit (Ping timeout: 260 seconds) 2018-07-06T11:37:00Z edgar-rft quit (Quit: edgar-rft) 2018-07-06T11:40:51Z milanj quit (Quit: This computer has gone to sleep) 2018-07-06T11:41:01Z Xof: this is the moment for &aux to shine 2018-07-06T11:41:15Z Xof: &key end &aux (end (or end (length sequence))) 2018-07-06T11:41:21Z shifty quit (Ping timeout: 248 seconds) 2018-07-06T11:46:32Z markoong joined #lisp 2018-07-06T11:56:19Z Arcaelyx quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-06T11:57:02Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-06T11:59:21Z shka: Xof: isn't it effectivly the same as just &key ? 2018-07-06T12:00:46Z milanj joined #lisp 2018-07-06T12:00:50Z jackdaniel: no, &aux variables won't be part of function-lambda-list 2018-07-06T12:01:19Z jackdaniel: &aux is effectively the same sa wrapping whole body in one big let 2018-07-06T12:05:51Z rumbler31 joined #lisp 2018-07-06T12:06:05Z beach: It's debatable though, whether the parameters in the lambda list are considered to be bound as with LET or as with LET*. 2018-07-06T12:06:22Z beach: The required parameters are like LET which is fine. 2018-07-06T12:07:08Z beach: But the initialization forms of the others are evaluated in an environment where all previous parameters are in scope. 2018-07-06T12:07:17Z beach: So that looks more like LET* to me. 2018-07-06T12:07:47Z jackdaniel: according to this: http://www.lispworks.com/documentation/HyperSpec/Body/03_dae.htm it is LET* indeed 2018-07-06T12:10:09Z rumbler31 quit (Ping timeout: 248 seconds) 2018-07-06T12:11:04Z beach: Yes, but that's not what I meant. 2018-07-06T12:11:31Z beach: (defun f (x &key (x (f x))) ...) 2018-07-06T12:12:02Z beach: But I can't find the place in the Common Lisp HyperSpec now where it says that the init-form of a parameter is in a scope including all previous parameters. 2018-07-06T12:12:10Z beach: I could have made it up, of course. 2018-07-06T12:12:30Z Inline joined #lisp 2018-07-06T12:12:51Z beach: Ah. 2018-07-06T12:12:56Z beach: clhs 3.4.1 2018-07-06T12:12:56Z specbot: Ordinary Lambda Lists: http://www.lispworks.com/reference/HyperSpec/Body/03_da.htm 2018-07-06T12:13:59Z surya quit (Remote host closed the connection) 2018-07-06T12:14:10Z beach: It seems to me that if (defun f (x &key (y (f x))) ...) is allowed, then (defun f (x &key (x (f x))) ...) ought to be allowed as well. 2018-07-06T12:14:40Z beach: And certainly the END keyword parameter could refer to the SEQUENCE parameter. 2018-07-06T12:15:10Z flip214: beach: you're using "x" twice, that's not allowed 2018-07-06T12:15:15Z beach: Says who? 2018-07-06T12:15:21Z flip214: but with different names you may reference earlier arguments 2018-07-06T12:15:27Z skapata joined #lisp 2018-07-06T12:15:42Z beach: So (defun f (sequence &key (start 0) (end (length sequence)) ...) is certainly allowed. 2018-07-06T12:15:42Z fikka joined #lisp 2018-07-06T12:16:41Z flip214: yes, that is allowed. 2018-07-06T12:16:49Z flip214: but with two 'x eg SBCL says The variable X occurs more than once in the lambda list. 2018-07-06T12:17:01Z beach: flip214: I am more interested in where in the Common Lisp HyperSpec it says it. 2018-07-06T12:17:10Z beach: ... because I haven't found that place. 2018-07-06T12:17:14Z Kundry_Wag joined #lisp 2018-07-06T12:17:57Z beach: flip214: I mean, you could be right, of course. 2018-07-06T12:18:20Z beach: flip214: All I am saying is that, since the init-forms can refer to previous parameters, it smells like a LET* to me. 2018-07-06T12:18:46Z beach: And certainly, (let* ((x ...) (x (f x))) ...) is allowed. 2018-07-06T12:18:52Z flip214: looking right now 2018-07-06T12:19:08Z Kundry_Wag quit (Remote host closed the connection) 2018-07-06T12:20:42Z brendyn joined #lisp 2018-07-06T12:21:00Z fikka quit (Ping timeout: 268 seconds) 2018-07-06T12:21:28Z jackdaniel: you may find this passage relevant: https://common-lisp.net/project/ecl/static/manual/ch05.html#ansi.let-behavior 2018-07-06T12:21:40Z jackdaniel: it is not forbidden in the spec 2018-07-06T12:21:49Z jackdaniel: I've looked for it at some point of time 2018-07-06T12:21:55Z jackdaniel: (of course I could have missed it) 2018-07-06T12:23:03Z patlv joined #lisp 2018-07-06T12:23:17Z flip214: perhaps multiple colliding parameter names are so obviously wrong that it isn't written down 2018-07-06T12:23:18Z eli_oat joined #lisp 2018-07-06T12:23:31Z orivej joined #lisp 2018-07-06T12:23:58Z beach: jackdaniel: That passage seems to say exactly what I said as well. 2018-07-06T12:24:55Z k4rtik joined #lisp 2018-07-06T12:25:07Z beach: flip214: It is obviously wrong for required parameters. Not so obvious for &optional or &key parameters. 2018-07-06T12:25:45Z flip214: well, a &key parameter "shadowing" an optional or required seems wrong to me, too 2018-07-06T12:26:31Z jackdaniel: beach: well, not necessarily wrong for required parameters *if* they are ignored 2018-07-06T12:26:35Z ramus quit (Ping timeout: 240 seconds) 2018-07-06T12:26:38Z jackdaniel: this change introduced some regression in a few codebases 2018-07-06T12:26:57Z jackdaniel: which were passing functions to other functions which were expected to have a certain lambda list 2018-07-06T12:27:09Z jackdaniel: and ignored parameters were named simply "_" 2018-07-06T12:27:11Z ramus joined #lisp 2018-07-06T12:27:14Z beach: flip214: And since it doesn't to me, I started this discussion with "It's debatable though". 2018-07-06T12:27:58Z jackdaniel: but that was not a strong enough clue to withdraw from signalling an error on such occasion (it helps to catch more problematic code) 2018-07-06T12:28:00Z beach: jackdaniel: Yes, I see. 2018-07-06T12:28:40Z beach: flip214: Of course, if you find the passage in the Common Lisp HyperSpec supporting your position, it won't be debatable anymore. 2018-07-06T12:29:27Z fikka joined #lisp 2018-07-06T12:32:08Z flip214: beach: I just wouldn't understand when it would _ever_ be useful to have two input parameters with the same name - one would hide the other! 2018-07-06T12:32:20Z flip214: I understand &aux and calculation in &key initargs 2018-07-06T12:32:37Z flip214: but conflicting names I wouldn't see useful 2018-07-06T12:33:03Z light2yellow joined #lisp 2018-07-06T12:35:53Z vap1 joined #lisp 2018-07-06T12:35:53Z vaporatorius joined #lisp 2018-07-06T12:35:53Z vaporatorius quit (Changing host) 2018-07-06T12:35:53Z vaporatorius joined #lisp 2018-07-06T12:37:00Z eli_oat quit (Quit: Leaving.) 2018-07-06T12:39:02Z fikka quit (Ping timeout: 260 seconds) 2018-07-06T12:39:37Z EvW joined #lisp 2018-07-06T12:41:40Z splittist: flip214: it might make certain types of generated code easier. Or harder, of course (: 2018-07-06T12:43:32Z shka: what is the fastest (computer time) way to load and save data from disk drive? 2018-07-06T12:43:55Z shka: cl-store is good for loading but serialization speed is not that great 2018-07-06T12:43:56Z devon joined #lisp 2018-07-06T12:46:09Z ecraven: well, given that actually *writing* anything to disk is much slower than CPU, maybe compressing your data is faster? write less -> write faster 2018-07-06T12:46:22Z LiamH joined #lisp 2018-07-06T12:47:14Z beach: flip214: I don't have a use case for it either, but that could just mean that I am not smart enough to see it. You know, just like the people who don't see a use case for nested functions, multiple dispatch, or first-class packages. 2018-07-06T12:47:24Z beach: splittist: Good point. 2018-07-06T12:47:39Z Bike joined #lisp 2018-07-06T12:48:22Z SenasOzys joined #lisp 2018-07-06T12:49:14Z SenasOzys quit (Remote host closed the connection) 2018-07-06T12:49:43Z SenasOzys joined #lisp 2018-07-06T12:51:27Z eli_oat joined #lisp 2018-07-06T12:51:32Z Kundry_Wag joined #lisp 2018-07-06T12:54:42Z vlad_ joined #lisp 2018-07-06T12:57:44Z devon quit (Ping timeout: 255 seconds) 2018-07-06T12:59:10Z ramus quit (Ping timeout: 264 seconds) 2018-07-06T13:00:15Z Kundry_W_ joined #lisp 2018-07-06T13:00:31Z doesthiswork joined #lisp 2018-07-06T13:00:54Z ramus joined #lisp 2018-07-06T13:03:34Z fikka joined #lisp 2018-07-06T13:04:00Z dlowe quit (Quit: ZNC - http://znc.sourceforge.net) 2018-07-06T13:04:36Z raynold quit (Quit: Connection closed for inactivity) 2018-07-06T13:05:35Z Kundry_W_ quit (Ping timeout: 276 seconds) 2018-07-06T13:08:50Z fikka quit (Ping timeout: 276 seconds) 2018-07-06T13:11:16Z omilu joined #lisp 2018-07-06T13:15:44Z devon joined #lisp 2018-07-06T13:16:03Z pierpal joined #lisp 2018-07-06T13:17:32Z EvW quit (Ping timeout: 255 seconds) 2018-07-06T13:17:51Z EvW1 joined #lisp 2018-07-06T13:20:34Z shka: ecraven: that is actually good point 2018-07-06T13:20:40Z dlowe joined #lisp 2018-07-06T13:20:48Z shka: i may think about it 2018-07-06T13:21:06Z ecraven: of course, it all depends on how much data you have, and how fast is fast enough 2018-07-06T13:21:13Z shka: a lot 2018-07-06T13:21:18Z shka: a lot of data 2018-07-06T13:21:42Z shka: i shuold think again about making proper compressing/decompressing streams for zip 2018-07-06T13:21:53Z shka: using chipz and salza 2018-07-06T13:22:28Z shka: there is library called zip, but it does not implement grey streams 2018-07-06T13:22:35Z shka: just it's own crap 2018-07-06T13:22:42Z shka: :( 2018-07-06T13:23:59Z dlowe quit (Read error: Connection reset by peer) 2018-07-06T13:25:08Z Kundry_Wag quit (Ping timeout: 268 seconds) 2018-07-06T13:25:46Z dlowe joined #lisp 2018-07-06T13:25:52Z fikka joined #lisp 2018-07-06T13:26:46Z patlv quit (Ping timeout: 264 seconds) 2018-07-06T13:27:26Z sjl quit (Quit: WeeChat 2.2-dev) 2018-07-06T13:28:01Z k4rtik quit (Ping timeout: 256 seconds) 2018-07-06T13:29:04Z sjl joined #lisp 2018-07-06T13:30:50Z pierpal quit (Ping timeout: 260 seconds) 2018-07-06T13:34:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-06T13:34:58Z Kundry_Wag joined #lisp 2018-07-06T13:36:36Z hhdave joined #lisp 2018-07-06T13:36:54Z vlad_ is now known as DonVlad 2018-07-06T13:37:08Z k4rtik joined #lisp 2018-07-06T13:38:21Z fikka joined #lisp 2018-07-06T13:42:00Z robotoad quit (Quit: robotoad) 2018-07-06T13:42:53Z fikka quit (Ping timeout: 265 seconds) 2018-07-06T13:46:09Z lumm joined #lisp 2018-07-06T13:54:35Z caltelt joined #lisp 2018-07-06T13:56:24Z hjudt: performance wise, does it make a difference if i loop over a hash-table with (loop for v being the hash-values of...) or (loop for v in (list-values hash-table)...)? 2018-07-06T13:56:52Z dlowe: hjudt: yes, LIST-VALUES will allocate a list 2018-07-06T13:57:20Z rawste quit (Ping timeout: 245 seconds) 2018-07-06T13:57:29Z dlowe: it will be considerably slower and the allocation will cause more garbage collection (though how much is hard to say - probably not much) 2018-07-06T13:58:10Z shka: hjudt: depends on hash-table implementation to be honest, but go with dlowe said 2018-07-06T13:58:15Z dlowe: The loop syntax isn't great for hash tables. I think the ITERATE library is better in this regard. 2018-07-06T13:58:21Z pierpal joined #lisp 2018-07-06T13:58:21Z shka: and avoid calling list-values 2018-07-06T13:58:39Z dlowe: You can also use MAPHASH if you don't feel like using LOOP 2018-07-06T13:58:45Z hjudt: ok, i guessed so. i want to pass either a hash-table or a list as parameter to a function, so it is probably better to use typecase to distinguish between the two cases. 2018-07-06T13:58:58Z shka: or defgeneric 2018-07-06T13:59:26Z dlowe: yeah any time you want to use typecase is a good indicator that you actually might want a generic function. 2018-07-06T13:59:39Z shka: *might* 2018-07-06T13:59:48Z hjudt: it is the same code, and i don't expect to extend it to handle other cases. 2018-07-06T13:59:53Z dlowe: Sure. You at least want to consider it. 2018-07-06T14:00:45Z fikka joined #lisp 2018-07-06T14:00:48Z rumbler31 joined #lisp 2018-07-06T14:00:54Z hjudt: probably in this case it is better to simply use defun, i've already thought about methods. 2018-07-06T14:01:15Z dlowe: If performance isn't critical, it is probably best to convert your hashtable to a list, just to avoid duplicating logic. 2018-07-06T14:02:06Z hjudt: i've put the logic in a local function, so duplicating is only with the two cases of loops (hash-table vs list). 2018-07-06T14:02:39Z hjudt: and it is used heavily, so this optimization is needed 2018-07-06T14:03:15Z hjudt: thanks for your input 2018-07-06T14:05:38Z hjudt: actually i could also adapt my list-values function so it returns a list which is only regenerated on changes to the hash-table, which does only occur at a few, predictable places. this might also be a nice improvement i will reconsider... 2018-07-06T14:05:46Z rumbler31 quit (Ping timeout: 264 seconds) 2018-07-06T14:06:53Z lumm quit (Read error: Connection reset by peer) 2018-07-06T14:06:54Z beach: hjudt: That won't be easy. If you delete an item from the hash table, you may have to traverse the list which takes linear time. 2018-07-06T14:06:57Z k4rtik quit (Ping timeout: 248 seconds) 2018-07-06T14:07:15Z lumm joined #lisp 2018-07-06T14:07:50Z dlowe: hjudt: how large is this hash table? 2018-07-06T14:07:52Z hjudt: beach: that won't be necessary in my use case. actually the hash table is always cleared and rebuild from scratch, nothing will be deleted. 2018-07-06T14:09:31Z hjudt: dlowe: at the moment, 27854 items. lookup is fast the way i use it, but sometimes i have to search the full ht and that shouldn't be too slow too, or it will take a few minutes instead of a few seconds. 2018-07-06T14:10:39Z varjag quit (Quit: ERC (IRC client for Emacs 24.5.1)) 2018-07-06T14:10:42Z lumm_ joined #lisp 2018-07-06T14:11:51Z lumm quit (Ping timeout: 240 seconds) 2018-07-06T14:11:52Z hjudt: an item can have several properties which need to match, so the ht is useless for this except for the lookup. 2018-07-06T14:11:52Z lumm_ is now known as lumm 2018-07-06T14:13:08Z hjudt: only when i have enough info about an item to identify it exactly, i can do a lookup. 2018-07-06T14:15:20Z cage_ joined #lisp 2018-07-06T14:17:55Z trittweiler: hjudt: that sounds like a "trie" data structure might be more desirable instead. You would traverse the trie property by property 2018-07-06T14:20:10Z hjudt: trittweiler: thanks, i will look into this, maybe it is easier to handle. for now, the current solution is fast enough and the number of items only increases slowly. 2018-07-06T14:21:06Z EvW1 quit (Remote host closed the connection) 2018-07-06T14:21:43Z Kundry_Wag_ joined #lisp 2018-07-06T14:22:51Z subr joined #lisp 2018-07-06T14:22:52Z subroot joined #lisp 2018-07-06T14:23:21Z caltelt quit (Ping timeout: 256 seconds) 2018-07-06T14:28:13Z Smokitch quit 2018-07-06T14:34:22Z fikka quit (Ping timeout: 245 seconds) 2018-07-06T14:35:49Z shrdlu68 quit (Ping timeout: 256 seconds) 2018-07-06T14:39:08Z orivej quit (Ping timeout: 268 seconds) 2018-07-06T14:41:10Z chrnok quit (Remote host closed the connection) 2018-07-06T14:46:06Z Kundry_W_ joined #lisp 2018-07-06T14:46:12Z scymtym__ joined #lisp 2018-07-06T14:48:21Z scymtym_ quit (Ping timeout: 240 seconds) 2018-07-06T14:48:22Z Kundry_Wag_ quit (Ping timeout: 264 seconds) 2018-07-06T14:49:20Z charh joined #lisp 2018-07-06T14:54:27Z Kundry_W_ quit (Ping timeout: 240 seconds) 2018-07-06T14:55:20Z beach: Can someone please read this http://g.oswego.edu/dl/html/malloc.html and help me out with a question? In section "Algorithms", right after the first figure, he writes: "More recent versions omit trailer fields on chunks that are in use by the program". I don't see how that could work. If a block is freed, how can we tell whether the previous block is free as well then? 2018-07-06T14:55:58Z beach: You can safely skip the sections preceding "Algorithms". 2018-07-06T14:57:31Z FreeBirdLjj joined #lisp 2018-07-06T14:58:09Z shrdlu68 joined #lisp 2018-07-06T14:59:00Z fikka joined #lisp 2018-07-06T14:59:05Z DonVlad: how would you guys substring a string? 2018-07-06T14:59:14Z beach: clhs subseq 2018-07-06T14:59:14Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_subseq.htm 2018-07-06T14:59:18Z DonVlad: thanks 2018-07-06T14:59:31Z beach: Anytime. 2018-07-06T14:59:50Z DonVlad: this applies just to strings or other types as well, beach ? 2018-07-06T15:00:16Z beach: DonVlad: Any sequence. 2018-07-06T15:00:25Z beach: A string is a vector and a vector is a sequence. 2018-07-06T15:00:31Z beach: Lists are sequences too. 2018-07-06T15:01:22Z DonVlad: => lists are vectors ? :P 2018-07-06T15:01:31Z beach: Nope. 2018-07-06T15:02:18Z beach: http://www.lispworks.com/documentation/lw70/CLHS/Body/t_seq.htm#sequence 2018-07-06T15:02:34Z beach: "The types vector and the type list are disjoint subtypes of type sequence," 2018-07-06T15:03:08Z flamebeard quit 2018-07-06T15:03:53Z fikka quit (Ping timeout: 276 seconds) 2018-07-06T15:05:54Z housel joined #lisp 2018-07-06T15:06:29Z wheelsucker joined #lisp 2018-07-06T15:06:51Z shka: beach: from what i understand, author says that instead of storing size two times, it can be saved in just one place, at the of the chunk 2018-07-06T15:07:14Z beach: "beginning"? 2018-07-06T15:07:50Z shka: ? 2018-07-06T15:07:59Z beach: "at the of the chunk" 2018-07-06T15:08:12Z shka: right 2018-07-06T15:08:14Z beach: shka: OK, so you come in with a chunk that has just been freed, and you want to check whether the previous chunk is free too, so that you can coalesce the two. 2018-07-06T15:08:15Z shka: end 2018-07-06T15:08:44Z beach: But he says "omit trailer fields". 2018-07-06T15:08:54Z shka: trailer = trailing? 2018-07-06T15:09:08Z beach: So the last size field may be used by the program if the chunk is in use. 2018-07-06T15:09:17Z beach: I suppose, yes. 2018-07-06T15:09:27Z shka: then at the begining 2018-07-06T15:09:41Z beach: So you come in with a chunk that has just been freed, and you want to check whether the previous chunk is free too, so that you can coalesce the two. 2018-07-06T15:09:55Z shka: as for finding size of other chunk, well, they are maintained in bins by size 2018-07-06T15:10:18Z beach: Normally, the way to do that is to check the size field of the previous chunk, subtract that value to find the beginning and then check whether the status is FREE. 2018-07-06T15:10:25Z shka: so my undestanding is that you KNOW what is the size of the next chunk and therefore you can find size 2018-07-06T15:10:26Z rpg joined #lisp 2018-07-06T15:10:37Z beach: I am talking about the previous chunk. 2018-07-06T15:10:44Z shka: oh, ok 2018-07-06T15:10:48Z beach: So you come in with a chunk that has just been freed, and you want to check whether the PREVIOUS chunk is free too, so that you can coalesce the two. 2018-07-06T15:11:00Z shrdlu68 quit (Ping timeout: 260 seconds) 2018-07-06T15:11:01Z fikka joined #lisp 2018-07-06T15:11:19Z beach: Normally, the way to do that is to check the size field at the END of the PREVIOUS chunk, subtract that value to find the beginning and then check whether the status is FREE. 2018-07-06T15:11:46Z beach: But if the PREVIOUS chunk is in use, then the size field may contain user data. 2018-07-06T15:12:07Z lumm quit (Read error: Connection reset by peer) 2018-07-06T15:12:13Z shka: aah, i see 2018-07-06T15:13:14Z lumm joined #lisp 2018-07-06T15:13:26Z shka: beach: i will check the source code 2018-07-06T15:13:41Z beach: Oh, good plan. 2018-07-06T15:13:59Z beach: I looked at it a long time ago, and it was littered with #ifdef. 2018-07-06T15:14:06Z shka: ftp://g.oswego.edu/pub/misc/malloc.c 2018-07-06T15:15:04Z shka: line 1677 i think 2018-07-06T15:15:57Z fikka quit (Ping timeout: 264 seconds) 2018-07-06T15:16:59Z shka: heh, i don't understand this at all :] 2018-07-06T15:17:19Z shka: it simply releases until size goes to zero 2018-07-06T15:18:17Z shka: ah right, this is after the coaleseing 2018-07-06T15:18:38Z jmercouris joined #lisp 2018-07-06T15:19:25Z beach: It makes me tired to look at. 2018-07-06T15:19:48Z shka: i can undestand that 2018-07-06T15:19:59Z fikka joined #lisp 2018-07-06T15:21:17Z beach: Anyway, it is not terribly important. I'll just include the trailing size field always. 2018-07-06T15:23:07Z shka: what is extern bit? 2018-07-06T15:23:33Z beach: Where did you see that? 2018-07-06T15:23:47Z robotoad joined #lisp 2018-07-06T15:24:05Z shka: in source code, there is a function called is_extern and it checks bit 2018-07-06T15:24:46Z fikka quit (Ping timeout: 268 seconds) 2018-07-06T15:24:54Z shka: also 2018-07-06T15:25:02Z beach: I see is_extern_segment. No is_extern. 2018-07-06T15:25:17Z shka: ... i should go home 2018-07-06T15:25:29Z jmercouris: hey everyone, I am having a weird issue with a file I am reading 2018-07-06T15:25:29Z minion: jmercouris, memo from pjb: We may need some programmer knowing Cuda (nVidia) and computer vision in a couple of months. I'd prefer a lisper with cl-cuda, rather than a pythonista; there's already enough of them :-) Do you have a linkedIn ? 2018-07-06T15:25:29Z minion: jmercouris, memo from pjb: send email to pjb@sbde.fr 2018-07-06T15:25:42Z beach: shka: Good plan. I am tired, and I am going to call it a day. 2018-07-06T15:25:43Z jmercouris: ok, will do 2018-07-06T15:25:59Z shka: beach: anyway, are you certain that it even do coaleseing backwards? 2018-07-06T15:26:09Z beach: No. 2018-07-06T15:26:13Z beach: I don't see how it could. 2018-07-06T15:26:22Z shka: it kinda looks like it only attempts to do it forward 2018-07-06T15:26:25Z jmercouris: so, I'm looking at the file, and it looks like this: https://imgur.com/a/araXKef 2018-07-06T15:26:37Z beach: shka: Entirely possible. I'll read it some other day. 2018-07-06T15:26:42Z jmercouris: sometimes where there should be " or other characters, there is a strange symbol, but it is always the same 2018-07-06T15:26:45Z flip214: beach: in case that's a reassurance, the SBCL developers don't see a usecase for duplicate function parameter names either ;) 2018-07-06T15:26:46Z jmercouris: it is obviously some sort of encoding issue 2018-07-06T15:26:55Z shka: beach: have a good evening and a nice tea then! 2018-07-06T15:26:55Z jmercouris: but I am not sure whether it is on my side or otherwise 2018-07-06T15:27:01Z kozy quit (Remote host closed the connection) 2018-07-06T15:27:09Z beach: flip214: Not terribly reassuring, no. :) 2018-07-06T15:27:25Z beach: shka: Take care. 2018-07-06T15:27:33Z shka: jmercouris: that's in repl? 2018-07-06T15:28:11Z shka: anyway, it does not actually look like encoding problem 2018-07-06T15:28:26Z shka: but some garbage bytes 2018-07-06T15:28:35Z shka: anyway, i am going gome now 2018-07-06T15:28:49Z shka: good evening all! 2018-07-06T15:29:45Z jmercouris: shka: no, that's in an emacs buffer 2018-07-06T15:29:52Z jmercouris: shka: good evening 2018-07-06T15:30:14Z jmercouris: the thing is, everytime something like: https://imgur.com/a/araXKef comes up, it is always where quotes should be, or brackets, or some symbol 2018-07-06T15:30:52Z jmercouris: I think the mistake is on the end of the person providing the file, because regardless of how I open the file, with whatever program, it looks strange 2018-07-06T15:32:18Z lumm quit (Quit: lumm) 2018-07-06T15:33:52Z fikka joined #lisp 2018-07-06T15:33:57Z Kundry_Wag_ joined #lisp 2018-07-06T15:34:04Z lumm joined #lisp 2018-07-06T15:34:27Z beach: jmercouris: Try using `od' on it. 2018-07-06T15:34:34Z beach: jmercouris: od -c or something like that. 2018-07-06T15:36:44Z buffergn0me joined #lisp 2018-07-06T15:38:10Z Kundry_Wag_ quit (Ping timeout: 245 seconds) 2018-07-06T15:38:39Z milanj quit (Quit: This computer has gone to sleep) 2018-07-06T15:38:46Z subr quit (Read error: Connection reset by peer) 2018-07-06T15:38:46Z subroot quit (Read error: Connection reset by peer) 2018-07-06T15:39:13Z fikka quit (Ping timeout: 248 seconds) 2018-07-06T15:40:30Z Kundry_Wag quit (Remote host closed the connection) 2018-07-06T15:40:48Z jmercouris: beach: what should I look for in the output? 2018-07-06T15:41:12Z beach: See whether there are any control characters or something like that. Near the place that looks funny. 2018-07-06T15:41:27Z jmercouris: Oh, okay, I see 2018-07-06T15:41:32Z jmercouris: maybe I can open up the file in hex mode in emacs 2018-07-06T15:41:37Z jmercouris: that might make it easier to see 2018-07-06T15:41:50Z jmercouris: the problem is the file is around 38gb, so it is quite hard to find the problematic spots 2018-07-06T15:42:10Z jmercouris: as it crashes many programs that try to open the file 2018-07-06T15:42:20Z jmercouris: -c helps a lot 2018-07-06T15:42:52Z jmercouris: I think this is the closest I've felt to programming in the matrix as a developer 2018-07-06T15:42:58Z pseudonymous joined #lisp 2018-07-06T15:43:51Z cage_ quit (Remote host closed the connection) 2018-07-06T15:44:17Z cage_ joined #lisp 2018-07-06T15:44:20Z oni-on-ion joined #lisp 2018-07-06T15:45:20Z beach: You can try to split the file in two and see whether one of the halves has the same problem. Then you can continue this process until you have a smaller file. 2018-07-06T15:46:15Z jmercouris: the problem is throughout the file, unfortunately 2018-07-06T15:46:28Z jmercouris: so I ended up running 'od -cX' so I could see hex and the characters at the same time 2018-07-06T15:46:29Z beach: Excellent. 2018-07-06T15:46:37Z beach: Then you can split it in two several times. 2018-07-06T15:46:56Z jmercouris: it seems that the hex makes sense with the characters I am seeing 2018-07-06T15:47:00Z jmercouris: I think Shka was right 2018-07-06T15:47:21Z jmercouris: which leads me to believe that someone who encoded this file, did some translation somewhere somehow with some tool that messed everything up 2018-07-06T15:47:54Z jmercouris: so I'll have to probably make some regex or some manipulation to clean up these strings 2018-07-06T15:48:50Z jmercouris: thank you for your help, seems 'od' is quite a useful program 2018-07-06T15:49:08Z beach: Glad I could help. 2018-07-06T15:49:55Z fmsbeekmans joined #lisp 2018-07-06T15:52:04Z fmsbeekmans: Hi I'm thinking about starting a little book club with my collegues for books that I have been interested for some time. Namely The little Schemer and SICP. Would the former be interesting experienced functional developers? 2018-07-06T15:52:05Z FreeBirdLjj quit (Read error: Connection reset by peer) 2018-07-06T15:52:31Z fmsbeekmans: Is it worth doing both in that order or would it be more fun to only do SICP? 2018-07-06T15:53:00Z beach: fmsbeekmans: Well, you are in a Common Lisp only channel, so we would recommend Common Lisp books instead. 2018-07-06T15:54:20Z fmsbeekmans: beach: Haha funny how CLers always claim CL as -the- lisp. 2018-07-06T15:54:35Z beach: Nobody did that. 2018-07-06T15:54:51Z eli_oat quit (Quit: Leaving.) 2018-07-06T15:55:27Z optikalmouse joined #lisp 2018-07-06T15:55:56Z fmsbeekmans: beach: Just by calling it lisp. 2018-07-06T15:56:02Z orivej joined #lisp 2018-07-06T15:56:05Z EvW joined #lisp 2018-07-06T15:56:07Z beach: It's just a name. 2018-07-06T15:56:19Z beach: The channel has its topic. That's the important part. 2018-07-06T15:56:34Z k4rtik joined #lisp 2018-07-06T15:56:49Z varjag joined #lisp 2018-07-06T15:56:52Z fmsbeekmans: Is there a general lisp channel? 2018-07-06T15:57:01Z beach: ##lisp I hear. 2018-07-06T15:57:07Z fmsbeekmans: Thanks 2018-07-06T15:57:14Z beach: Sure. 2018-07-06T15:57:22Z fikka joined #lisp 2018-07-06T15:57:27Z cage_ quit (Ping timeout: 240 seconds) 2018-07-06T15:57:32Z foom2 is now known as foom 2018-07-06T15:58:13Z _cosmonaut_ quit (Ping timeout: 265 seconds) 2018-07-06T15:58:32Z cage_ joined #lisp 2018-07-06T16:01:31Z rumbler31 joined #lisp 2018-07-06T16:02:23Z patlv joined #lisp 2018-07-06T16:02:57Z Guest16746 is now known as thekolb 2018-07-06T16:06:42Z rumbler31 quit (Ping timeout: 268 seconds) 2018-07-06T16:09:06Z Kundry_Wag joined #lisp 2018-07-06T16:10:12Z Smokitch joined #lisp 2018-07-06T16:11:27Z fikka quit (Ping timeout: 245 seconds) 2018-07-06T16:12:17Z cage_ quit (Ping timeout: 245 seconds) 2018-07-06T16:14:10Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-06T16:14:44Z _cosmonaut_ joined #lisp 2018-07-06T16:14:52Z cage_ joined #lisp 2018-07-06T16:16:41Z schweers quit (Ping timeout: 276 seconds) 2018-07-06T16:17:55Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2018-07-06T16:18:10Z _krator44 is now known as krator44 2018-07-06T16:18:18Z krator44 quit (Changing host) 2018-07-06T16:18:18Z krator44 joined #lisp 2018-07-06T16:18:18Z krator44 quit (Changing host) 2018-07-06T16:18:18Z krator44 joined #lisp 2018-07-06T16:18:31Z EvW quit (Ping timeout: 265 seconds) 2018-07-06T16:20:09Z buffergn0me quit (Ping timeout: 264 seconds) 2018-07-06T16:20:19Z FreeBirdLjj joined #lisp 2018-07-06T16:21:43Z jackdaniel: fmsbeekmans: there is also #scheme if you are interested in that particular dialect 2018-07-06T16:24:22Z patlv quit (Ping timeout: 264 seconds) 2018-07-06T16:26:22Z lumm quit (Quit: lumm) 2018-07-06T16:27:10Z dogon joined #lisp 2018-07-06T16:27:18Z lumm joined #lisp 2018-07-06T16:27:28Z fikka joined #lisp 2018-07-06T16:27:48Z lumm quit (Read error: Connection reset by peer) 2018-07-06T16:28:11Z fmsbeekmans: jackdaniel: Thanks, doesn't really matter which dialect. I'll have a try there. 2018-07-06T16:28:34Z lumm joined #lisp 2018-07-06T16:29:43Z jmercouris quit (Ping timeout: 256 seconds) 2018-07-06T16:30:36Z rawste joined #lisp 2018-07-06T16:31:36Z EvW1 joined #lisp 2018-07-06T16:32:10Z fikka quit (Ping timeout: 264 seconds) 2018-07-06T16:33:51Z Kundry_Wag joined #lisp 2018-07-06T16:33:59Z Khisanth quit (Ping timeout: 265 seconds) 2018-07-06T16:35:51Z dogoff joined #lisp 2018-07-06T16:36:34Z l1x joined #lisp 2018-07-06T16:38:40Z sendai_ quit (Ping timeout: 256 seconds) 2018-07-06T16:38:52Z jasom: beach: after getting some sleep, you're using a sliding window for the GC? My intuition is that this will make a smaller nursery more useful, as the problem with a classical nursery is that short-lived objects get promoted just because they were recently allocated before a GC, and with a small nursery the fraction of false-positives goes up... 2018-07-06T16:39:06Z dogon quit (Ping timeout: 256 seconds) 2018-07-06T16:40:02Z hhdave quit (Ping timeout: 255 seconds) 2018-07-06T16:40:09Z shka_ joined #lisp 2018-07-06T16:40:25Z azimut joined #lisp 2018-07-06T16:41:44Z beach: jasom: Exactly. 2018-07-06T16:42:17Z beach: A sliding collector makes it unlikely that a recently allocated object will be promoted if a GC happens right after that allocation. 2018-07-06T16:42:29Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-06T16:43:10Z msb quit (Ping timeout: 265 seconds) 2018-07-06T16:43:19Z beach: Another way of putting it is that the sliding collector has a very precise idea of the relative age of objects, so it can promote the oldest and leave the youngest in the nursery. 2018-07-06T16:43:44Z beach: shka: I understood how it works. I'll draw a nice picture and show it to you at some point. 2018-07-06T16:43:56Z Younder: Jones, Lins 'Garbage Collection' 2018-07-06T16:44:05Z EvW1 quit (Ping timeout: 255 seconds) 2018-07-06T16:44:22Z beach: Younder: No. Jones, "The Garbage Collection Handbook". More recent. 2018-07-06T16:44:40Z Younder: I stand corrected 2018-07-06T16:44:47Z jasom: It's on my reading list 2018-07-06T16:45:07Z beach: jasom: The thing is that the sliding collector is seen as too costly in the literature (like the one I just cited), because of the screwy way the break table is built. 2018-07-06T16:45:13Z msb joined #lisp 2018-07-06T16:45:24Z beach is called to dinner by his (admittedly small) family. 2018-07-06T16:45:44Z elfmacs joined #lisp 2018-07-06T16:46:00Z jasom: With a pointer-increment nursery, it would seem like it could just be a fraction of the nursery, particularly when you have a separate large-object pool. 2018-07-06T16:46:09Z m00natic quit (Remote host closed the connection) 2018-07-06T16:46:31Z makomo joined #lisp 2018-07-06T16:46:48Z jasom: or is there an issue managing cross-window pointers? 2018-07-06T16:47:26Z Khisanth joined #lisp 2018-07-06T16:47:35Z FreeBirdLjj joined #lisp 2018-07-06T16:47:45Z pjb joined #lisp 2018-07-06T16:52:30Z FreeBirdLjj quit (Ping timeout: 260 seconds) 2018-07-06T16:55:08Z fmsbeekmans left #lisp 2018-07-06T16:59:19Z SenasOzys quit (Remote host closed the connection) 2018-07-06T17:00:12Z kpenc quit (Remote host closed the connection) 2018-07-06T17:00:21Z eli_oat joined #lisp 2018-07-06T17:06:59Z Kundry_Wag quit (Remote host closed the connection) 2018-07-06T17:08:20Z milanj joined #lisp 2018-07-06T17:09:08Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-06T17:09:34Z Kundry_Wag joined #lisp 2018-07-06T17:10:00Z vap1 quit (Quit: Leaving) 2018-07-06T17:10:26Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-06T17:13:57Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-06T17:19:00Z fikka joined #lisp 2018-07-06T17:19:33Z dogoff quit (Ping timeout: 264 seconds) 2018-07-06T17:19:46Z eli_oat quit (Quit: Leaving.) 2018-07-06T17:20:22Z odian joined #lisp 2018-07-06T17:21:16Z _cosmonaut_ quit (Quit: Leaving.) 2018-07-06T17:24:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-06T17:24:20Z dogoff joined #lisp 2018-07-06T17:24:46Z milanj quit (Quit: This computer has gone to sleep) 2018-07-06T17:24:48Z jmercouris joined #lisp 2018-07-06T17:24:52Z rpg joined #lisp 2018-07-06T17:26:35Z odian quit (Ping timeout: 240 seconds) 2018-07-06T17:27:25Z jeosol: good morning guys 2018-07-06T17:29:03Z eli_oat joined #lisp 2018-07-06T17:30:04Z jmercouris: jeosol: good morning 2018-07-06T17:31:45Z jeosol: jmercouris, howdy 2018-07-06T17:31:46Z test1600 joined #lisp 2018-07-06T17:31:54Z jeosol: how far with that survey stuff? how is it going? 2018-07-06T17:33:10Z dogon joined #lisp 2018-07-06T17:33:35Z jmercouris: jeosol: Very few responses 2018-07-06T17:33:52Z jmercouris: unfortunately :\ 2018-07-06T17:34:07Z ecraven: which survey? 2018-07-06T17:34:16Z jmercouris: it is about a genetic algorithm problem 2018-07-06T17:34:25Z jmercouris: that involves figuring out how to pack boxes and ship boxes efficiently 2018-07-06T17:34:33Z Kundry_Wag joined #lisp 2018-07-06T17:35:46Z orivej quit (Ping timeout: 264 seconds) 2018-07-06T17:36:21Z dogoff quit (Ping timeout: 264 seconds) 2018-07-06T17:36:23Z odian joined #lisp 2018-07-06T17:36:33Z sakalli_ joined #lisp 2018-07-06T17:36:35Z elfmacs quit (Ping timeout: 240 seconds) 2018-07-06T17:37:26Z rawste quit (Quit: Sleep....) 2018-07-06T17:38:09Z makomo quit (Quit: WeeChat 2.0.1) 2018-07-06T17:38:10Z dogon quit (Ping timeout: 264 seconds) 2018-07-06T17:38:51Z sakalli_ quit (Client Quit) 2018-07-06T17:38:54Z rawste joined #lisp 2018-07-06T17:38:59Z rawste quit (Client Quit) 2018-07-06T17:39:35Z littlelisper joined #lisp 2018-07-06T17:41:07Z sakalli_ joined #lisp 2018-07-06T17:41:12Z beach: jasom: I have not considered partial nurseries. 2018-07-06T17:41:50Z beach: jasom: But I keep the nursery so small that it should GC in a few milliseconds. 2018-07-06T17:42:01Z jasom: right 2018-07-06T17:42:50Z beach: Right now, I am working on trying to understand (and explain in the spec) Doug Lea's memory allocator and how I will adapt it for use in SICL. 2018-07-06T17:43:07Z rawste joined #lisp 2018-07-06T17:43:08Z beach: Right before dinner, I figured out how they save a word in each object. 2018-07-06T17:43:35Z dogon joined #lisp 2018-07-06T17:43:41Z fikka joined #lisp 2018-07-06T17:44:13Z elfmacs joined #lisp 2018-07-06T17:44:52Z warweasle quit (Quit: rcirc on GNU Emacs 24.4.1) 2018-07-06T17:44:57Z beach: jasom: But I think you are right. The old problem of references from an old to a young generation will likely pop up if you try that. 2018-07-06T17:45:29Z jeosol: jmercouris: really? hmmm. Not sure what the competition is doing. Or may be few references so far. 2018-07-06T17:46:32Z odian quit (Ping timeout: 256 seconds) 2018-07-06T17:46:48Z beach: jasom: I am off to spend time with my (admittedly small) family. I'll be back tomorrow morning (UTC+2). 2018-07-06T17:47:22Z sakalli_ quit (Remote host closed the connection) 2018-07-06T17:47:42Z sakalli_ joined #lisp 2018-07-06T17:47:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-06T17:48:53Z flazh quit (Ping timeout: 255 seconds) 2018-07-06T17:51:52Z sakalli_ quit (Remote host closed the connection) 2018-07-06T17:52:11Z sakalli_ joined #lisp 2018-07-06T17:53:01Z mflem joined #lisp 2018-07-06T17:56:33Z sakalli_ quit (Client Quit) 2018-07-06T17:57:40Z jeosol: jmer..: meant responses above 2018-07-06T17:58:19Z brendyn quit (Ping timeout: 268 seconds) 2018-07-06T17:59:01Z eli_oat quit (Quit: Leaving.) 2018-07-06T18:00:24Z eli_oat joined #lisp 2018-07-06T18:00:36Z littlelisper left #lisp 2018-07-06T18:01:48Z dogoff joined #lisp 2018-07-06T18:01:58Z light2yellow quit (Quit: light2yellow) 2018-07-06T18:02:27Z rumbler31 joined #lisp 2018-07-06T18:03:57Z dogon quit (Ping timeout: 240 seconds) 2018-07-06T18:06:57Z rumbler31 quit (Ping timeout: 248 seconds) 2018-07-06T18:07:27Z elfmacs quit (Ping timeout: 240 seconds) 2018-07-06T18:08:01Z dogon joined #lisp 2018-07-06T18:08:04Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-06T18:08:55Z drmeister: The optimization where calls within a compilation unit can be called directly without going through symbol-function - does anyone know where that is described in the CLHS? 2018-07-06T18:11:10Z dogoff quit (Ping timeout: 264 seconds) 2018-07-06T18:12:53Z odian joined #lisp 2018-07-06T18:12:58Z jack_rabbit quit (Ping timeout: 264 seconds) 2018-07-06T18:13:34Z dogon quit (Ping timeout: 264 seconds) 2018-07-06T18:15:18Z sjl quit (Quit: WeeChat 2.2-dev) 2018-07-06T18:16:11Z fikka joined #lisp 2018-07-06T18:16:50Z dogon joined #lisp 2018-07-06T18:18:23Z odian quit (Ping timeout: 265 seconds) 2018-07-06T18:20:29Z jasom: drmeister: one second 2018-07-06T18:21:11Z jasom: clhs 3.2.2.3 2018-07-06T18:21:12Z specbot: Semantic Constraints: http://www.lispworks.com/reference/HyperSpec/Body/03_bbc.htm 2018-07-06T18:21:17Z fikka quit (Ping timeout: 265 seconds) 2018-07-06T18:21:21Z xrash joined #lisp 2018-07-06T18:21:55Z dogon quit (Ping timeout: 256 seconds) 2018-07-06T18:22:09Z jasom: the "inline" declaration implicitly 3 states, with the default state not one that you can declare 2018-07-06T18:23:54Z flazh joined #lisp 2018-07-06T18:25:04Z fikka joined #lisp 2018-07-06T18:25:21Z sauvin quit (Remote host closed the connection) 2018-07-06T18:25:37Z parjanya joined #lisp 2018-07-06T18:27:29Z Kundry_Wag joined #lisp 2018-07-06T18:29:16Z lumm quit (Remote host closed the connection) 2018-07-06T18:33:00Z parjanya quit (Read error: Connection reset by peer) 2018-07-06T18:34:57Z drmeister: Thank you. 2018-07-06T18:35:03Z drmeister: I don't quite follow your last statement. 2018-07-06T18:36:23Z Bike: inline,notinline, and "eh" 2018-07-06T18:36:34Z Bike: or NIL in cleavir's terms 2018-07-06T18:37:12Z parjanya joined #lisp 2018-07-06T18:38:07Z mflem quit (Ping timeout: 245 seconds) 2018-07-06T18:38:40Z random-nick quit (Ping timeout: 256 seconds) 2018-07-06T18:40:00Z graphene quit (Remote host closed the connection) 2018-07-06T18:40:00Z jasom: inline, notinline and what it is by default 2018-07-06T18:41:19Z graphene joined #lisp 2018-07-06T18:41:40Z Inline: sup sup 2018-07-06T18:41:47Z eli_oat quit (Quit: Leaving.) 2018-07-06T18:41:48Z Inline: who summoned by magic ? 2018-07-06T18:41:50Z Inline: lol 2018-07-06T18:42:01Z Inline puts a quote 2018-07-06T18:42:09Z Inline: "if you call the devil"..... 2018-07-06T18:42:13Z Inline: hahahahaha 2018-07-06T18:42:31Z scymtym__: there is also (declaim (inline …)) (defun …) (declaim (notinline …)) which can mean "don't inline by default but respect local inline declarations" 2018-07-06T18:42:56Z Inline: err, doesn't locally respect such ? 2018-07-06T18:43:15Z Inline: (locally (declare ..... 2018-07-06T18:43:29Z scymtym__: not every defined function is "equipped" for inlining 2018-07-06T18:43:59Z scymtym__: (locally (declare (inline …))) can't change that retroactively 2018-07-06T18:44:54Z parjanya quit (Read error: Connection reset by peer) 2018-07-06T18:45:18Z Inline: a sequential inline notinline, i would have thought that would be just temporary inlining 2018-07-06T18:46:58Z Inline: i.e. hop to it's place and turn back where you left off instead of copying and expanding it's code 2018-07-06T18:47:12Z Inline talks to the compiler 2018-07-06T18:49:10Z scymtym__: the initial inline declaration prepares the function for inlining *and* makes inlining the default behavior. the subsequent notinline declaration leaves the function prepared for inlining but changes the default behavior back to not inlining. after that, the function is still prepared for inlining which can be requested, for example, via (locally (declare (inline …))) 2018-07-06T18:49:29Z phoe joined #lisp 2018-07-06T18:49:38Z ChanServ has set mode +o phoe 2018-07-06T18:49:42Z ChanServ has set mode -o phoe 2018-07-06T18:49:57Z stylewarning: always nice to have a `defun-inlineable` 2018-07-06T18:51:12Z odian joined #lisp 2018-07-06T18:51:13Z phoe is now known as phoe_krk 2018-07-06T18:51:22Z Inline: ok 2018-07-06T18:51:57Z devon quit (Ping timeout: 240 seconds) 2018-07-06T18:53:21Z caltelt joined #lisp 2018-07-06T18:53:56Z parjanya joined #lisp 2018-07-06T18:54:06Z fikka quit (Ping timeout: 256 seconds) 2018-07-06T18:54:32Z phoe_krk is now known as phoe 2018-07-06T18:58:53Z EvW joined #lisp 2018-07-06T18:59:07Z random-nick joined #lisp 2018-07-06T19:00:11Z mflem joined #lisp 2018-07-06T19:00:11Z parjanya quit (Read error: Connection reset by peer) 2018-07-06T19:00:23Z smasta joined #lisp 2018-07-06T19:01:07Z random-nick quit (Read error: Connection reset by peer) 2018-07-06T19:02:58Z Kundry_Wag quit (Remote host closed the connection) 2018-07-06T19:03:22Z skapata quit (Remote host closed the connection) 2018-07-06T19:03:27Z azimut quit (Ping timeout: 240 seconds) 2018-07-06T19:04:04Z random-nick joined #lisp 2018-07-06T19:04:29Z pjb: scymtym__: this is wrong. notinline has nothing to do with inlining, and everything to do with notinlining. 2018-07-06T19:04:38Z pjb: scymtym__: notice that this is notinline, not not-inline. 2018-07-06T19:04:39Z Kundry_W_ joined #lisp 2018-07-06T19:04:54Z pjb: and the order doesn't matter. 2018-07-06T19:04:57Z smasta quit (Ping timeout: 240 seconds) 2018-07-06T19:05:14Z skapata joined #lisp 2018-07-06T19:06:00Z phenoble joined #lisp 2018-07-06T19:06:36Z smasta joined #lisp 2018-07-06T19:07:04Z scymtym__: clhs inline 2018-07-06T19:07:04Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/d_inline.htm 2018-07-06T19:07:18Z scymtym__: pjb: the idiom is discussed there ^ 2018-07-06T19:07:28Z pjb: scymtym__: yes, I have it under the eyes. 2018-07-06T19:07:49Z pjb: Notably, it does nothing to the function, those declarations only concern the calls to the function, not the function itself. 2018-07-06T19:09:05Z Kundry_W_ quit (Ping timeout: 240 seconds) 2018-07-06T19:09:49Z scymtym__: the sentence that starts with "To define a function f that is not inline by default …" seems to be about the definition 2018-07-06T19:09:58Z pjb: The idiom in question has the effect of letting the compiler compile some recursive calls as inline calls (which can be done, surprisingly). If you had the notinline before, then this optimization wouldn't be available to the compiler. But that's the only effect of this order. 2018-07-06T19:10:18Z pjb: functions are not inline or not inline. 2018-07-06T19:10:21Z pjb: function calls are. 2018-07-06T19:11:13Z caltelt quit (Ping timeout: 256 seconds) 2018-07-06T19:11:26Z pjb: The only thing, is that having the inline declaration before the function helps the compiler to book-keep information for inlining. 2018-07-06T19:11:28Z pjb: BUT 2018-07-06T19:11:50Z pjb: notice that the compiler is allowed to inline function calls to functions defined inside the same compilation-unit anyways! 2018-07-06T19:12:17Z pjb: Therefore this book-keeping stuff is bullshit: the compilers are already allowed to keep the information whatever declaration you put. 2018-07-06T19:12:23Z Inline: translation unit is the same as compilation unit right ? 2018-07-06T19:12:34Z pjb: There's no translation unit in CL. 2018-07-06T19:12:39Z Inline: aah ok 2018-07-06T19:12:47Z pjb: otherwise, yes, same concept. 2018-07-06T19:12:51Z Inline: ok 2018-07-06T19:13:04Z parjanya joined #lisp 2018-07-06T19:15:51Z pjb: Also, a compiler can compile a function call as being both inline and notinline. Because semantically, the effect of notinline is actually that the function call (foo …) is AS IF (funcall (symbol-function 'foo) …). So the compiler may call the function inline (copy the source of the function in place of the function call), AND keep track of the dependency of the caller to the callee, so when the callee is redefined (setf 2018-07-06T19:15:51Z pjb: symbol-function), the caller gets recompiled. 2018-07-06T19:15:55Z pjb: (at run-time). 2018-07-06T19:16:22Z pjb: Admittedly, few implementations care to use this optimization. 2018-07-06T19:19:43Z parjanya quit (Read error: Connection reset by peer) 2018-07-06T19:20:15Z k4rtik quit (Ping timeout: 265 seconds) 2018-07-06T19:21:59Z parjanya joined #lisp 2018-07-06T19:22:47Z graphene quit (Remote host closed the connection) 2018-07-06T19:23:05Z vlatkoB_ quit (Remote host closed the connection) 2018-07-06T19:23:28Z parjanya quit (Client Quit) 2018-07-06T19:24:32Z graphene joined #lisp 2018-07-06T19:25:05Z NotSpooky joined #lisp 2018-07-06T19:27:03Z orivej joined #lisp 2018-07-06T19:29:21Z drmeister: Thank you 2018-07-06T19:33:11Z azimut joined #lisp 2018-07-06T19:33:15Z lumm joined #lisp 2018-07-06T19:33:18Z EvW quit (Remote host closed the connection) 2018-07-06T19:33:27Z EvW joined #lisp 2018-07-06T19:37:39Z Kundry_Wag joined #lisp 2018-07-06T19:37:50Z cage_ quit (Quit: Leaving) 2018-07-06T19:38:02Z fikka joined #lisp 2018-07-06T19:42:07Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-06T19:42:22Z p_l misses forwarding pointers a bit 2018-07-06T19:43:23Z pierpal quit (Quit: Poof) 2018-07-06T19:43:44Z pierpal joined #lisp 2018-07-06T19:43:51Z fikka quit (Ping timeout: 240 seconds) 2018-07-06T19:44:34Z p_l: hmm, would taking a tag bit for "this is forwarding pointer" and having possibility of reading it instead of header work?.... hmmm 2018-07-06T19:49:41Z mlf|2 joined #lisp 2018-07-06T19:49:56Z adlai quit (Ping timeout: 268 seconds) 2018-07-06T19:50:12Z mflem quit (Ping timeout: 245 seconds) 2018-07-06T19:55:10Z graphene quit (Remote host closed the connection) 2018-07-06T19:56:21Z EvW quit (Ping timeout: 240 seconds) 2018-07-06T19:56:50Z graphene joined #lisp 2018-07-06T19:57:07Z acolarh quit (Ping timeout: 256 seconds) 2018-07-06T19:58:47Z patlv joined #lisp 2018-07-06T19:59:26Z nickenchuggets joined #lisp 2018-07-06T19:59:27Z nickenchuggets quit (Changing host) 2018-07-06T19:59:27Z nickenchuggets joined #lisp 2018-07-06T20:03:22Z odian quit (Ping timeout: 264 seconds) 2018-07-06T20:05:13Z Kundry_Wag_ joined #lisp 2018-07-06T20:06:22Z Smokitch quit 2018-07-06T20:06:28Z optikalmouse quit (Quit: optikalmouse) 2018-07-06T20:07:04Z Arcaelyx joined #lisp 2018-07-06T20:10:43Z acolarh joined #lisp 2018-07-06T20:11:11Z fikka joined #lisp 2018-07-06T20:12:22Z xantoz quit (Ping timeout: 264 seconds) 2018-07-06T20:14:25Z xantoz joined #lisp 2018-07-06T20:15:55Z rpg joined #lisp 2018-07-06T20:16:02Z fikka quit (Ping timeout: 255 seconds) 2018-07-06T20:18:51Z jeosol quit (Quit: Page closed) 2018-07-06T20:19:58Z fikka joined #lisp 2018-07-06T20:20:32Z patlv quit (Ping timeout: 255 seconds) 2018-07-06T20:22:48Z edgar-rft joined #lisp 2018-07-06T20:25:59Z fikka quit (Ping timeout: 265 seconds) 2018-07-06T20:26:37Z igemnace quit (Quit: WeeChat 2.1) 2018-07-06T20:29:32Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-06T20:29:55Z nickenchuggets joined #lisp 2018-07-06T20:29:55Z nickenchuggets quit (Changing host) 2018-07-06T20:29:55Z nickenchuggets joined #lisp 2018-07-06T20:34:02Z scymtym__ quit (Ping timeout: 255 seconds) 2018-07-06T20:35:50Z wheelsucker quit (Quit: Client Quit) 2018-07-06T20:38:27Z Kundry_Wag_ quit (Ping timeout: 240 seconds) 2018-07-06T20:39:05Z EvW1 joined #lisp 2018-07-06T20:41:09Z Pixel_Outlaw joined #lisp 2018-07-06T20:45:02Z felideon quit (Ping timeout: 276 seconds) 2018-07-06T20:47:26Z graphene quit (Remote host closed the connection) 2018-07-06T20:49:14Z graphene joined #lisp 2018-07-06T20:49:20Z iridioid joined #lisp 2018-07-06T20:51:45Z smasta quit (Ping timeout: 248 seconds) 2018-07-06T20:52:45Z Kundry_Wag quit (Remote host closed the connection) 2018-07-06T20:56:35Z iridioid quit (Ping timeout: 240 seconds) 2018-07-06T20:57:00Z Kundry_Wag joined #lisp 2018-07-06T20:57:22Z jmercouris: I have some information from a database that I want to include in my image 2018-07-06T20:57:36Z jmercouris: is it enough to have a top-level statement that invokes a function to load this data from the database and then dump the image? 2018-07-06T20:57:54Z jmercouris: s/statement/expression 2018-07-06T20:58:11Z Kundry_Wag quit (Remote host closed the connection) 2018-07-06T20:58:12Z k4rtik joined #lisp 2018-07-06T20:58:23Z Kundry_Wag joined #lisp 2018-07-06T20:58:38Z patlv joined #lisp 2018-07-06T20:59:43Z scymtym joined #lisp 2018-07-06T21:01:18Z oni-on-ion: inline huh?? turned off lisp 2018-07-06T21:01:29Z rpg: jmercouris: probably.... depends a lot on what you want to do with the data. Also, you probably want to tear down the database connection before you dump the image. 2018-07-06T21:02:07Z jmercouris: rpg: I just want to instantiate a hash table in the image 2018-07-06T21:02:25Z jmercouris: which leads me to another question, will having a large hash-table persisted in my image slow down my application start-up time? 2018-07-06T21:02:32Z rpg: jmercouris: That should be fine then, but notice that you don't want an image with a half-open database connection! 2018-07-06T21:02:55Z jmercouris: yes, I'll remember to close the database, probably use a with type macro 2018-07-06T21:03:14Z oni-on-ion: jmercouris: nope, ie symbols , and afaik and imo is good practice to persist 2018-07-06T21:03:33Z random-nick: doesn't sbcl use a static heap size? 2018-07-06T21:03:44Z jmercouris: I'm talking about a very large hash table, perhaps one that has around 100,000 entries 2018-07-06T21:03:50Z rpg: jmercouris: I believe the answer is "no," but it's pretty dependent on implementation, memory, etc. The basic notion is that you are pulling the full image in and that's faster than taking a fasl and doing all the things involved in loading it. 2018-07-06T21:04:16Z jmercouris: I need my program to start almost instantaneously, and then load this information in memory 2018-07-06T21:04:23Z jmercouris: but I don't want to distribute my database to my end users 2018-07-06T21:04:50Z oni-on-ion: afaik sbcl is same startup time (almost zero) regardless of image size ? \ 2018-07-06T21:05:00Z jmercouris: Okay, I'll do some testing, but that is good to know 2018-07-06T21:05:06Z jmercouris: I happen to be using SBCL for the time being 2018-07-06T21:05:42Z jmercouris: actually I'll also ask on #sbcl, thanks 2018-07-06T21:06:34Z rpg: If your users are definitely going to need this table, then there's no reason to load it lazily, and I believe this is the fastest way to load it. 2018-07-06T21:06:44Z jmercouris: They will definitely need this table 2018-07-06T21:06:57Z jmercouris: I just would like to give them an opportunity to begin typing before the table is completely loaded into memory 2018-07-06T21:08:12Z rpg: Then this should be the fastest way to get it loaded. I don't know if there's any way to optimize the memory layout (e.g., to keep the hash table in contiguous memory) before dumping. I'd definitely suggest creating the hash table with a known-big-enough :size argument -- that might improve the initial memory layout. 2018-07-06T21:08:41Z rpg: I wonder if you can somehow shove it into old memory, since you are never going to want it garbage-collected. 2018-07-06T21:09:03Z oni-on-ion: mmap() 2018-07-06T21:09:05Z lumm quit (Ping timeout: 240 seconds) 2018-07-06T21:13:00Z Bike quit (Ping timeout: 252 seconds) 2018-07-06T21:15:47Z jmercouris: rpg: shove into old memory? 2018-07-06T21:17:06Z rpg: jmercouris: You don't want the garbage collector to bother looking at this table -- you know it's going to stay around. It might help make your program more efficient to find a way (this would definitely be SBCL-specific) to tell the lisp environment that this is permanent memory so it can be hidden from the garbage collector. 2018-07-06T21:17:14Z NoNumber quit (Read error: Connection reset by peer) 2018-07-06T21:18:15Z milanj joined #lisp 2018-07-06T21:18:36Z fikka joined #lisp 2018-07-06T21:19:41Z devon joined #lisp 2018-07-06T21:19:48Z graphene quit (Remote host closed the connection) 2018-07-06T21:21:23Z graphene joined #lisp 2018-07-06T21:22:08Z housel: sb-ext:purify, or :purify arg to sb-ext:save-lisp-and-die 2018-07-06T21:23:34Z fikka quit (Ping timeout: 256 seconds) 2018-07-06T21:25:01Z Kundry_Wag quit (Remote host closed the connection) 2018-07-06T21:27:17Z whartung: Yea, mmap. Store it “off heap”, GC never even knows it exists, but you get to handle all the access and marshalling of stuff — which is a pain. 2018-07-06T21:27:46Z whartung: at that point you get to treat it like an in ram “real fast” database 2018-07-06T21:28:31Z whartung: (and then you think “why not store it in a db and let it cache it anyway, isn’t that what they’re for?”) 2018-07-06T21:28:47Z rumbler31 joined #lisp 2018-07-06T21:29:48Z LiamH quit (Quit: Leaving.) 2018-07-06T21:30:03Z patlv quit (Ping timeout: 256 seconds) 2018-07-06T21:32:45Z mindCrime_ quit (Ping timeout: 245 seconds) 2018-07-06T21:33:14Z fikka joined #lisp 2018-07-06T21:33:33Z nopf joined #lisp 2018-07-06T21:33:36Z DonVlad quit (Remote host closed the connection) 2018-07-06T21:37:48Z patlv joined #lisp 2018-07-06T21:45:03Z Trystam joined #lisp 2018-07-06T21:45:05Z patlv quit (Ping timeout: 248 seconds) 2018-07-06T21:46:14Z Tristam quit (Ping timeout: 276 seconds) 2018-07-06T21:46:29Z Trystam is now known as Tristam 2018-07-06T21:50:40Z Bike joined #lisp 2018-07-06T21:52:16Z JuanDaugherty joined #lisp 2018-07-06T21:59:18Z makomo joined #lisp 2018-07-06T22:00:41Z eschatologist quit (Quit: ZNC 1.6.6+deb1 - http://znc.in) 2018-07-06T22:01:18Z eschatologist joined #lisp 2018-07-06T22:04:00Z shka_ quit (Ping timeout: 260 seconds) 2018-07-06T22:04:15Z dogon joined #lisp 2018-07-06T22:05:34Z test1600 quit (Quit: Leaving) 2018-07-06T22:05:57Z pseudonymous quit (Ping timeout: 256 seconds) 2018-07-06T22:10:17Z jmercouris quit (Ping timeout: 256 seconds) 2018-07-06T22:10:46Z mindCrime_ joined #lisp 2018-07-06T22:11:21Z devon quit (Ping timeout: 265 seconds) 2018-07-06T22:14:54Z nickenchuggets quit (Ping timeout: 260 seconds) 2018-07-06T22:17:08Z phenoble quit (Quit: WeeChat 1.9.1) 2018-07-06T22:17:11Z rpg quit (Quit: Textual IRC Client: www.textualapp.com) 2018-07-06T22:18:31Z patlv joined #lisp 2018-07-06T22:19:43Z EvW1 quit (Remote host closed the connection) 2018-07-06T22:24:33Z random-nick quit (Ping timeout: 248 seconds) 2018-07-06T22:26:13Z Kundry_Wag joined #lisp 2018-07-06T22:26:40Z pseudonymous joined #lisp 2018-07-06T22:29:27Z patlv quit (Ping timeout: 240 seconds) 2018-07-06T22:31:15Z dogon quit (Ping timeout: 256 seconds) 2018-07-06T22:31:36Z odian joined #lisp 2018-07-06T22:36:56Z raynold joined #lisp 2018-07-06T22:37:05Z _paul0 joined #lisp 2018-07-06T22:38:20Z Kundry_W_ joined #lisp 2018-07-06T22:38:54Z odian quit (Ping timeout: 265 seconds) 2018-07-06T22:40:45Z paul0 quit (Ping timeout: 268 seconds) 2018-07-06T22:41:48Z Kundry_Wag quit (Ping timeout: 265 seconds) 2018-07-06T22:46:39Z nickenchuggets joined #lisp 2018-07-06T22:46:39Z nickenchuggets quit (Changing host) 2018-07-06T22:46:39Z nickenchuggets joined #lisp 2018-07-06T22:47:28Z robotoad quit (Quit: robotoad) 2018-07-06T22:49:50Z patlv joined #lisp 2018-07-06T22:52:53Z rawste quit (Quit: Sleep....) 2018-07-06T22:55:45Z didi joined #lisp 2018-07-06T22:55:57Z patlv quit (Ping timeout: 240 seconds) 2018-07-06T22:56:47Z k4rtik quit (Ping timeout: 265 seconds) 2018-07-06T22:56:51Z didi: Decisions, decisions... should I start using ENDP, instead of NULL, to test for the end of a list? 2018-07-06T23:02:20Z pierpal quit (Ping timeout: 260 seconds) 2018-07-06T23:03:09Z pjb: didi: if it's a list (that is, a proper list) then use FIRST REST LISTP and ENDP. 2018-07-06T23:03:11Z robotoad joined #lisp 2018-07-06T23:03:21Z Xach: yes 2018-07-06T23:03:27Z pjb: if it's something made of conses and nil, then use CAR CDR CONSP and NULL 2018-07-06T23:03:36Z didi nods 2018-07-06T23:04:40Z pjb: whartung: if you use mmap, you may use com.informatimago.common-lisp.heap.heap to store lisp objects in it. 2018-07-06T23:06:28Z whartung: well that makes things easy pjb 2018-07-06T23:07:14Z didi: In another news, I recently discovered LOOP's keyword NCONC. It took me long enough. :-P 2018-07-06T23:07:23Z pjb: Now, it's not native lisp objects, so it may be a draw back, but it allows to share lisp objects (using shared memory) with other implementations, so it may be an advantage. 2018-07-06T23:07:56Z Xach: phew 2018-07-06T23:11:00Z shifty joined #lisp 2018-07-06T23:13:04Z graphene quit (Remote host closed the connection) 2018-07-06T23:14:27Z pseudonymous quit (Ping timeout: 240 seconds) 2018-07-06T23:14:39Z varjag quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2018-07-06T23:14:39Z graphene joined #lisp 2018-07-06T23:15:27Z fikka quit (Ping timeout: 256 seconds) 2018-07-06T23:18:54Z didi: And a nitpick: LOOP's keywords for hash-tables are confusing. Using [each, the, in, of] makes no difference, but I was trained that using [in, on] with list does. 2018-07-06T23:21:00Z nowhere_man joined #lisp 2018-07-06T23:25:18Z pjb: didi: write your own loop macro with non-confusing key word uses. 2018-07-06T23:25:32Z didi: pjb: Nah. 2018-07-06T23:26:39Z pjb: use iterate. 2018-07-06T23:27:43Z didi: I dream to use SEQUENCE. One day, my darling, one day... 2018-07-06T23:36:58Z White_Flame: ugh, yet another (vector (unsigned-byte 8)) vs (simple-array (unsigned-byte 8)) mismatch, this time with cl-sqlite 2018-07-06T23:37:28Z White_Flame: I wish one or the other were considered standard for optimized byte arrays 2018-07-06T23:38:14Z zachk joined #lisp 2018-07-06T23:38:15Z zachk quit (Changing host) 2018-07-06T23:38:15Z zachk joined #lisp 2018-07-06T23:43:54Z pierpal joined #lisp 2018-07-06T23:45:13Z fikka joined #lisp 2018-07-06T23:47:42Z aeth: didi: I rarely parse lists that way with stuff like endp 2018-07-06T23:48:02Z aeth: or car, cdr, caddr first, etc. 2018-07-06T23:48:37Z aeth: destructuring-bind takes a while to get used to, but it has replaced almost all of my old ways of parsing lists because usually there's *some* structure 2018-07-06T23:49:23Z didi: aeth: Ah, never thought of using it to iterate over lists. Good one. 2018-07-06T23:49:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-06T23:49:45Z aeth: And for iterating, I usually use do-destructuring-bind (dolist with destructuring-bind) or a higher order function with destructuring-lambda (lambda with one argument, on which a destructuring bind is applied) 2018-07-06T23:50:01Z iridioid joined #lisp 2018-07-06T23:50:03Z aeth: destructuring-bind gets annoying with iteration unless you build trivial abstractions like that to flatten it 2018-07-06T23:50:14Z mfiano: Or just use trivia 2018-07-06T23:50:32Z aeth: Alternatively, there are general macros to flatten stuff, but it's probably more intended for with-foo, let, multiple-value-bind, destructuring-bind, etc., stacking together, rather than being used in an iteration 2018-07-06T23:51:31Z aeth: mfiano: what's trivia? 2018-07-06T23:51:42Z NotSpooky quit (Remote host closed the connection) 2018-07-06T23:51:58Z NotSpooky joined #lisp 2018-07-06T23:52:28Z mfiano: a faster alternative to optima 2018-07-06T23:53:21Z aeth: https://github.com/guicho271828/trivia 2018-07-06T23:54:02Z nowhere_man quit (Remote host closed the connection) 2018-07-06T23:54:23Z nowhere_man joined #lisp 2018-07-06T23:56:41Z aeth: definitely an option but it's very heavyweight compared to a handful of trivial macros on top of built-in forms 2018-07-07T00:02:45Z NotSpooky quit (Quit: Leaving) 2018-07-07T00:03:30Z mfiano quit (Quit: WeeChat 2.0.1) 2018-07-07T00:03:30Z Kundry_W_ quit (Remote host closed the connection) 2018-07-07T00:05:58Z mfiano joined #lisp 2018-07-07T00:07:04Z robotoad quit (Quit: robotoad) 2018-07-07T00:08:41Z slyrus1 joined #lisp 2018-07-07T00:09:37Z dddddd quit (Remote host closed the connection) 2018-07-07T00:09:48Z Naergon joined #lisp 2018-07-07T00:15:50Z didi: aeth: I usually avoid `destructuring-bind' because I feel it freezes implementation. 2018-07-07T00:16:23Z whartung: ??? 2018-07-07T00:16:33Z mfiano: What does that even mean? 2018-07-07T00:18:35Z didi: By using `destructuring-bing', I feel I won't be able to freely change a data structure implementation. So, If I say (destructuring-bind (a . b) foo ...), `foo' is set to be a cons, with `a' as the `car' and `b' as the `cdr'. 2018-07-07T00:19:18Z whartung: so you’d rather return a structure or class? 2018-07-07T00:19:27Z aeth: If you use destructuring-bind, you can usually tell if something doesn't match what you expect pretty quickly. If you use cadr or whatever, you might never refactor it properly 2018-07-07T00:19:42Z didi: whartung: So I would rather use accessor functions. 2018-07-07T00:19:48Z mfiano: If it's built out of conses, it is trivial to parse with destructuring-bind. You argument holds better for arrays or hash tables. 2018-07-07T00:19:54Z mfiano: Also trivial to change 2018-07-07T00:19:56Z aeth: Accessor functions are an alternative, but they're probably less efficient. 2018-07-07T00:20:04Z didi: aeth: *nod* 2018-07-07T00:21:11Z aeth: If you're calling (cadr foo) and (caddr foo) through inline accessor functions you're probably going through the list twice (and certainly if they're not inline), and you could have nonsense at the end unless you do another check. 2018-07-07T00:24:01Z xantoz quit (Ping timeout: 256 seconds) 2018-07-07T00:24:32Z pjb: if you care abt releating accesses with cadr cadddr, then you should use defstruct. 2018-07-07T00:24:45Z pjb: (or clos) 2018-07-07T00:25:14Z xantoz joined #lisp 2018-07-07T00:25:35Z aeth: It is a minor point, yes. 2018-07-07T00:27:10Z aeth: Sometimes you have no choice, though, like in macros (okay, you can probably use a reader macro to create structs at compile-time and use make-load-form-saving-slots to save the compile-time object so it's handled as a constant at runtime... but why?) 2018-07-07T00:27:40Z aeth: s/compile-time/read-time/ 2018-07-07T00:27:49Z aeth: I wonder if make-load-form-saving-slots works at read time 2018-07-07T00:32:48Z akkad joined #lisp 2018-07-07T00:32:56Z aeth: I find that either accessor functions or destructuring-bind (assuming it's not in a macro) is usually the first step to replacing it with a data structure, though 2018-07-07T00:33:43Z pjb: aeth: there's already a reader syntax for literal structures: #S(point :x 42 :y 33) 2018-07-07T00:34:50Z pjb: and if at any time you're worried about evolutivity of an implementation choice, you can always wrap it in a macro. Don't use destructuring-bind, use your own macro, that could expand to either that, or a with-accessors or a with-slots or something else. 2018-07-07T00:35:10Z oldtopman quit (Quit: *pouf*) 2018-07-07T00:36:24Z didi: I've done that ^, tho I didn't feel it was better than simply using LET and accessors. 2018-07-07T00:38:41Z aeth: pjb: I usually hide complicated things behind symbol-macrolet or with-accessors or something similar 2018-07-07T00:39:21Z fikka joined #lisp 2018-07-07T00:40:35Z pjb: didi: that is, it's better if you have to use it several times, or if it has to have an implementation that should be consistent with some other such macro or operator. 2018-07-07T00:40:58Z pjb: it is easier to ensure consistency in a mechanism, when it is implemented independently and separately from the rest of the code. 2018-07-07T00:41:11Z dogon joined #lisp 2018-07-07T00:41:31Z pjb: Also having such abstractions helps when you need to debug, since you can easily instrument those abstractions (add checks). 2018-07-07T00:41:52Z aeth: add checks for debugging? 2018-07-07T00:41:56Z aeth: hah 2018-07-07T00:42:06Z aeth: I usually just keep the checks in there. 2018-07-07T00:43:02Z pjb: Yes. There are quick and easy checks that you can add when debugging and leave in production, but you can also add heavy checks (things that walk whole data structures, or perform complex computations to validate). 2018-07-07T00:43:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-07T00:44:00Z pjb: Note that I speak generally, here, not specifically for CL. I'm currently working on FreeRDP written in C, and it's horrible. 2018-07-07T00:44:09Z aeth: I created a typed cons cell out of structs that's about 30% slower than the built-in cons, but it saves having to walk the data structure to verify things (just check the type in O(1)) 2018-07-07T00:44:25Z aeth: Of course, not everything can be expressed in types like that 2018-07-07T00:45:08Z Kundry_W_ joined #lisp 2018-07-07T00:45:42Z pjb: note that clisp can be compiled with a clisp compilation time option to add a slot to cons cells for your own usage. 2018-07-07T00:47:11Z aeth: Using structs is mostly portable because :type on a slot is usually at least somewhat respected. Full portability would require testing implementation behavior and wrapping the or check-type in places where it isn't respected on various implementations. 2018-07-07T00:47:46Z pjb: Yes. 2018-07-07T00:48:20Z pjb: check-type must not be used indiscriminately. Sometimes you must rely on the intrinsic type checking. 2018-07-07T00:49:37Z Oddity quit (Ping timeout: 248 seconds) 2018-07-07T00:52:41Z dogoff joined #lisp 2018-07-07T00:53:54Z papachan quit (Quit: Connection closed for inactivity) 2018-07-07T00:55:48Z dogon quit (Ping timeout: 268 seconds) 2018-07-07T00:59:46Z Oddity joined #lisp 2018-07-07T00:59:47Z graphene quit (Remote host closed the connection) 2018-07-07T01:01:01Z graphene joined #lisp 2018-07-07T01:04:35Z patlv joined #lisp 2018-07-07T01:04:52Z zachk quit (Quit: Leaving) 2018-07-07T01:13:06Z edgar-rft quit (Remote host closed the connection) 2018-07-07T01:13:44Z BitPuffin quit (Remote host closed the connection) 2018-07-07T01:17:01Z skapata quit (Remote host closed the connection) 2018-07-07T01:20:53Z milanj quit (Quit: This computer has gone to sleep) 2018-07-07T01:25:46Z buffergn0me joined #lisp 2018-07-07T01:30:29Z parjanya joined #lisp 2018-07-07T01:31:36Z elfmacs joined #lisp 2018-07-07T01:33:29Z markoong quit (Remote host closed the connection) 2018-07-07T01:33:31Z fikka joined #lisp 2018-07-07T01:36:33Z elfmacs quit (Ping timeout: 248 seconds) 2018-07-07T01:38:09Z fikka quit (Ping timeout: 248 seconds) 2018-07-07T01:39:23Z elfmacs joined #lisp 2018-07-07T01:44:39Z JuanDaugherty quit (Quit: Exeunt) 2018-07-07T01:44:46Z krwq joined #lisp 2018-07-07T01:46:24Z krwq: which doc generator would you could recommend? 2018-07-07T01:47:13Z mindCrime_ quit (Ping timeout: 248 seconds) 2018-07-07T01:52:55Z Kundry_W_ quit (Remote host closed the connection) 2018-07-07T02:00:54Z nowhere_man: I'm starting to understand the concept of delimited continuations in the basic theory, but now I wonder: what are their typical uses? 2018-07-07T02:02:41Z ``Erik_ quit (Ping timeout: 248 seconds) 2018-07-07T02:04:32Z fikka joined #lisp 2018-07-07T02:05:21Z LdBeth: nowhere_man: multi processing 2018-07-07T02:09:48Z fikka quit (Ping timeout: 268 seconds) 2018-07-07T02:09:48Z White_Flame: I find undelimited continuations way more confusing than delimited 2018-07-07T02:10:09Z White_Flame: delimited continuations are basically registering an lambda event handler from within a closure, for example 2018-07-07T02:10:22Z White_Flame: (depending on syntactic sugar) 2018-07-07T02:10:37Z White_Flame: (and depending on personal definition) 2018-07-07T02:13:23Z housel quit (Remote host closed the connection) 2018-07-07T02:13:55Z housel joined #lisp 2018-07-07T02:15:26Z Kundry_Wag joined #lisp 2018-07-07T02:16:06Z Kundry_W_ joined #lisp 2018-07-07T02:16:48Z graphene quit (Remote host closed the connection) 2018-07-07T02:17:34Z edgar-rft joined #lisp 2018-07-07T02:18:02Z graphene joined #lisp 2018-07-07T02:20:11Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-07T02:20:45Z robotoad joined #lisp 2018-07-07T02:23:31Z bjorkintosh joined #lisp 2018-07-07T02:24:10Z Kundry_W_ quit 2018-07-07T02:24:27Z Kundry_Wag joined #lisp 2018-07-07T02:26:13Z robotoad quit (Quit: robotoad) 2018-07-07T02:33:44Z eli_oat joined #lisp 2018-07-07T02:34:09Z mindCrime_ joined #lisp 2018-07-07T02:41:40Z elfmacs quit (Ping timeout: 260 seconds) 2018-07-07T02:42:46Z elfmacs joined #lisp 2018-07-07T02:44:02Z k4rtik joined #lisp 2018-07-07T02:44:17Z robotoad joined #lisp 2018-07-07T02:48:01Z elfmacs quit (Ping timeout: 248 seconds) 2018-07-07T02:49:14Z shrdlu68 joined #lisp 2018-07-07T02:49:17Z elfmacs joined #lisp 2018-07-07T02:52:57Z shifty quit (Ping timeout: 240 seconds) 2018-07-07T03:02:24Z Kundry_Wag quit (Remote host closed the connection) 2018-07-07T03:02:57Z patlv quit (Ping timeout: 248 seconds) 2018-07-07T03:03:44Z k4rtik quit (Quit: WeeChat 2.1) 2018-07-07T03:03:59Z k4rtik joined #lisp 2018-07-07T03:04:00Z k4rtik quit (Changing host) 2018-07-07T03:04:00Z k4rtik joined #lisp 2018-07-07T03:07:58Z Bike quit (Quit: Lost terminal) 2018-07-07T03:09:35Z elfmacs quit (Ping timeout: 240 seconds) 2018-07-07T03:11:27Z orivej quit (Ping timeout: 240 seconds) 2018-07-07T03:15:49Z didi: krwq: I dislike doc generators, so I have no recommendation. But, I like this article: http://stevelosh.com/blog/2013/09/teach-dont-tell/ 2018-07-07T03:22:22Z elfmacs joined #lisp 2018-07-07T03:22:57Z shrdlu68 quit (Ping timeout: 240 seconds) 2018-07-07T03:23:48Z buffergn0me quit (Ping timeout: 268 seconds) 2018-07-07T03:24:03Z brendyn joined #lisp 2018-07-07T03:30:05Z jkordani quit (Read error: Connection reset by peer) 2018-07-07T03:32:28Z elfmacs quit (Ping timeout: 256 seconds) 2018-07-07T03:33:46Z elfmacs joined #lisp 2018-07-07T03:34:47Z fikka joined #lisp 2018-07-07T03:39:31Z fikka quit (Ping timeout: 256 seconds) 2018-07-07T03:39:33Z devon joined #lisp 2018-07-07T03:40:16Z jasom: krwq: somewhat out-of-date, but: https://sites.google.com/site/sabraonthehill/lisp-document-generation-apps 2018-07-07T03:42:42Z Pixel_Outlaw quit (Remote host closed the connection) 2018-07-07T03:43:14Z xenosoz joined #lisp 2018-07-07T03:44:02Z moei quit (Quit: Leaving...) 2018-07-07T03:44:29Z xenosoz quit (Client Quit) 2018-07-07T03:52:12Z pseudonymous joined #lisp 2018-07-07T03:53:24Z dmiles quit (Ping timeout: 268 seconds) 2018-07-07T03:56:25Z dmies joined #lisp 2018-07-07T03:56:46Z akkad: org-mode ftw :P 2018-07-07T03:56:55Z eli_oat quit (Quit: Leaving.) 2018-07-07T03:58:43Z shka_ joined #lisp 2018-07-07T04:10:01Z doesthiswork quit (Quit: Leaving.) 2018-07-07T04:11:53Z pjb quit (Remote host closed the connection) 2018-07-07T04:13:39Z doesthiswork joined #lisp 2018-07-07T04:16:39Z pjb joined #lisp 2018-07-07T04:24:14Z wheelsucker joined #lisp 2018-07-07T04:25:30Z dmies quit (Ping timeout: 260 seconds) 2018-07-07T04:29:42Z dmiles joined #lisp 2018-07-07T04:35:32Z fikka joined #lisp 2018-07-07T04:35:45Z xantoz quit (Ping timeout: 248 seconds) 2018-07-07T04:40:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-07T04:40:16Z xantoz joined #lisp 2018-07-07T04:46:57Z pseudonymous quit (Ping timeout: 256 seconds) 2018-07-07T04:50:09Z elfmacs quit (Ping timeout: 264 seconds) 2018-07-07T04:50:45Z moei joined #lisp 2018-07-07T04:55:27Z k4rtik quit (Ping timeout: 240 seconds) 2018-07-07T05:00:02Z milanj joined #lisp 2018-07-07T05:00:52Z kajo quit (Quit: From my rotting body, flowers shall grow and I am in them and that is eternity. -- E. M.) 2018-07-07T05:03:32Z vlatkoB joined #lisp 2018-07-07T05:12:17Z drmeister: Does anyone have insight into how to implement the optimization where functions that call each other within a compilation unit call each other directly? 2018-07-07T05:14:42Z sauvin joined #lisp 2018-07-07T05:16:07Z oni-on-ion: directly? inline? 2018-07-07T05:18:00Z shifty joined #lisp 2018-07-07T05:20:54Z fikka joined #lisp 2018-07-07T05:25:56Z fikka quit (Ping timeout: 255 seconds) 2018-07-07T05:27:54Z fikka joined #lisp 2018-07-07T05:30:57Z shka_ quit (Ping timeout: 240 seconds) 2018-07-07T05:35:38Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-07T05:36:33Z igemnace joined #lisp 2018-07-07T05:37:38Z fikka quit (Ping timeout: 255 seconds) 2018-07-07T05:43:18Z mfiano: pillton: I got your message. I actually get a warning when quickloading specialization-store now 2018-07-07T05:46:37Z buffergn0me joined #lisp 2018-07-07T05:48:50Z iskander joined #lisp 2018-07-07T05:49:05Z beach: Good morning everyone! 2018-07-07T05:50:20Z beach: drmeister: Instead of going through the function name, you do a relative jump since the two functions are in the same code body. 2018-07-07T05:51:18Z jasom quit (Ping timeout: 256 seconds) 2018-07-07T05:51:19Z beach: But, if you do that, you can no longer redefine the callee by hitting C-c C-c in SLIME. 2018-07-07T05:51:56Z djinni` quit (Quit: Leaving) 2018-07-07T05:52:41Z nika joined #lisp 2018-07-07T05:52:54Z drmeister: Hello - yes - I realize I won't be able to redefine the callee. 2018-07-07T05:55:33Z beach: Also, functions can have more than one entry point. You don't need to check the number of arguments for such a call. 2018-07-07T05:55:50Z drmeister: In most cases the callee will be in the top level environment - what if it isn't? 2018-07-07T05:56:25Z beach: Too early in the morning for me to figure that out. 2018-07-07T05:56:36Z drmeister: Thanks 2018-07-07T05:59:51Z beach: How is clasp performance doing these days, by the way? 2018-07-07T05:59:57Z iridioid quit (Ping timeout: 240 seconds) 2018-07-07T06:00:45Z doesthiswork quit (Quit: Leaving.) 2018-07-07T06:01:55Z drmeister: I don't feel like it's been improving much lately. 2018-07-07T06:01:55Z dogoff quit (Remote host closed the connection) 2018-07-07T06:02:39Z beach: Do we know where improvement is needed? 2018-07-07T06:02:43Z drmeister: It's like a sore tooth that I keep probing. I'm not sure where the problem is. 2018-07-07T06:02:53Z beach: Oh, OK. 2018-07-07T06:03:15Z drmeister: Comparing it to sbcl and clisp? Absolutely improvement is possible and needed. 2018-07-07T06:03:27Z drmeister: Profiling is not very useful. 2018-07-07T06:03:34Z djinni` joined #lisp 2018-07-07T06:05:19Z drmeister: We are stuck on a couple of fronts. Inlining is still broken and so we can't bring the new cst compiler online. That is very frustrating. 2018-07-07T06:05:41Z beach: I understand. 2018-07-07T06:07:11Z drmeister: Martin is just starting up - I'm hoping for progress. 2018-07-07T06:09:11Z beach: I forget, is he a compiler expert? 2018-07-07T06:11:46Z andrei-n joined #lisp 2018-07-07T06:14:27Z elfmacs joined #lisp 2018-07-07T06:19:26Z parjanya left #lisp 2018-07-07T06:19:30Z fikka joined #lisp 2018-07-07T06:19:48Z parjanya joined #lisp 2018-07-07T06:23:15Z oldtopman joined #lisp 2018-07-07T06:24:01Z fikka quit (Ping timeout: 248 seconds) 2018-07-07T06:26:05Z parjanya quit (Read error: Connection reset by peer) 2018-07-07T06:32:22Z test1600 joined #lisp 2018-07-07T06:36:12Z vlad_ joined #lisp 2018-07-07T06:36:22Z vlad_ is now known as DonVlad 2018-07-07T06:38:05Z fikka joined #lisp 2018-07-07T06:38:07Z drmeister: I'm not sure - are any of us? 2018-07-07T06:42:31Z mlf|2 quit (Read error: Connection reset by peer) 2018-07-07T06:42:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-07T06:54:16Z brettgilio joined #lisp 2018-07-07T07:00:25Z test1600_ joined #lisp 2018-07-07T07:03:21Z test1600 quit (Ping timeout: 240 seconds) 2018-07-07T07:14:39Z pierpal quit (Read error: Connection reset by peer) 2018-07-07T07:31:16Z Oddity quit (Read error: No route to host) 2018-07-07T07:46:49Z felideon joined #lisp 2018-07-07T07:49:17Z fikka joined #lisp 2018-07-07T07:52:20Z oni-on-ion quit (Remote host closed the connection) 2018-07-07T07:54:31Z fikka quit (Ping timeout: 256 seconds) 2018-07-07T07:56:34Z iridioid joined #lisp 2018-07-07T07:56:45Z vertigo quit (Ping timeout: 264 seconds) 2018-07-07T07:57:25Z vertigo joined #lisp 2018-07-07T08:00:32Z pierpal joined #lisp 2018-07-07T08:00:52Z fikka joined #lisp 2018-07-07T08:00:57Z iridioid quit (Ping timeout: 240 seconds) 2018-07-07T08:05:51Z fikka quit (Ping timeout: 256 seconds) 2018-07-07T08:15:03Z _whitelogger quit (Remote host closed the connection) 2018-07-07T08:17:17Z _whitelogger joined #lisp 2018-07-07T08:19:48Z milanj_ joined #lisp 2018-07-07T08:21:35Z milanj quit (Ping timeout: 240 seconds) 2018-07-07T08:27:36Z fikka joined #lisp 2018-07-07T08:27:50Z Oddity joined #lisp 2018-07-07T08:29:53Z robotoad_ joined #lisp 2018-07-07T08:30:52Z lnostdal joined #lisp 2018-07-07T08:31:14Z robotoad quit (Ping timeout: 256 seconds) 2018-07-07T08:32:15Z fikka quit (Ping timeout: 260 seconds) 2018-07-07T08:33:32Z littlelisper joined #lisp 2018-07-07T08:39:22Z buffergn0me quit (Ping timeout: 264 seconds) 2018-07-07T08:42:24Z random-nick joined #lisp 2018-07-07T08:48:12Z aindilis quit (Remote host closed the connection) 2018-07-07T08:48:33Z shrdlu68 joined #lisp 2018-07-07T08:55:27Z xantoz quit (Ping timeout: 240 seconds) 2018-07-07T08:59:21Z xantoz joined #lisp 2018-07-07T09:02:07Z littlelisper left #lisp 2018-07-07T09:05:35Z fikka joined #lisp 2018-07-07T09:08:26Z aindilis joined #lisp 2018-07-07T09:09:00Z milanj_ quit (Quit: This computer has gone to sleep) 2018-07-07T09:12:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-07T09:13:11Z robotoad_ quit (Quit: robotoad_) 2018-07-07T09:14:35Z milanj_ joined #lisp 2018-07-07T09:16:46Z EvW joined #lisp 2018-07-07T09:18:15Z littlelisper joined #lisp 2018-07-07T09:22:59Z brettgilio quit (Remote host closed the connection) 2018-07-07T09:23:07Z pjb quit (Ping timeout: 245 seconds) 2018-07-07T09:23:29Z xrash quit (Ping timeout: 256 seconds) 2018-07-07T09:24:16Z fikka joined #lisp 2018-07-07T09:26:07Z robotoad joined #lisp 2018-07-07T09:26:10Z lumm joined #lisp 2018-07-07T09:27:35Z shrdlu68 quit (Ping timeout: 240 seconds) 2018-07-07T09:29:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-07T09:29:32Z shrdlu68 joined #lisp 2018-07-07T09:31:09Z Domaldel joined #lisp 2018-07-07T09:31:37Z haom joined #lisp 2018-07-07T09:33:14Z FreeBirdLjj joined #lisp 2018-07-07T09:38:10Z Tristam quit (Ping timeout: 264 seconds) 2018-07-07T09:39:03Z fikka joined #lisp 2018-07-07T09:39:15Z wigust- joined #lisp 2018-07-07T09:39:38Z littlelisper: how do i retrieve and save a file? any reference is helpful 2018-07-07T09:40:33Z wigust quit (Ping timeout: 264 seconds) 2018-07-07T09:40:45Z Tristam joined #lisp 2018-07-07T09:41:41Z haom left #lisp 2018-07-07T09:42:39Z ebzzry: littlelisper: the canonical answer is http://www.gigamonkeys.com/book/files-and-file-io.html 2018-07-07T09:43:03Z littlelisper: from web, url 2018-07-07T09:43:14Z elfmacs quit (Quit: WeeChat 2.1) 2018-07-07T09:43:33Z elfmacs joined #lisp 2018-07-07T09:43:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-07T09:43:55Z ebzzry: littlelisper: https://github.com/eudoxia0/trivial-download 2018-07-07T09:44:47Z littlelisper: ebzzry: thanks 2018-07-07T09:44:55Z ebzzry: littlelisper: np 2018-07-07T09:44:57Z elfmacs quit (Client Quit) 2018-07-07T09:45:17Z elfmacs joined #lisp 2018-07-07T09:46:47Z fikka joined #lisp 2018-07-07T09:51:13Z EvW quit (Ping timeout: 265 seconds) 2018-07-07T09:57:08Z iridioid joined #lisp 2018-07-07T10:01:16Z pjb joined #lisp 2018-07-07T10:02:01Z iridioid quit (Ping timeout: 256 seconds) 2018-07-07T10:02:45Z fikka quit (Ping timeout: 245 seconds) 2018-07-07T10:03:12Z p_l: beach: what about maintaining a WHO-CALLS database and checking it when recompiling ? 2018-07-07T10:06:13Z robotoad quit (Quit: robotoad) 2018-07-07T10:07:22Z sakalli_ joined #lisp 2018-07-07T10:07:26Z fikka joined #lisp 2018-07-07T10:13:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-07T10:14:13Z BitPuffin joined #lisp 2018-07-07T10:14:21Z beach: p_l: Sorry, lost the context. Can you elaborate? 2018-07-07T10:14:29Z sakalli_ quit (Quit: Mutter: www.mutterirc.com) 2018-07-07T10:14:56Z fikka joined #lisp 2018-07-07T10:15:00Z beach: p_l: Do you mean when a function in a compilation unit is redefined? 2018-07-07T10:15:08Z p_l: regarding direct references et al, yes 2018-07-07T10:15:55Z beach: It is tricky stuff. I am pretty sure you don't have the right to recompile callers from source code. The environment may have changed since last compilation. 2018-07-07T10:16:26Z p_l: beach: I was thinking more of just updating the reference 2018-07-07T10:16:37Z beach: To the callee? 2018-07-07T10:16:47Z p_l: inside caller 2018-07-07T10:17:00Z beach: The call sequence will likely have changed. 2018-07-07T10:17:05Z littlelisper: compiling my defpackage gives me "bogus DEFPACKAGE option: (:USE-IMPORT-FROM :CL-PPCRE :SCAN-TO-STRINGS)" 2018-07-07T10:17:46Z p_l: beach: if the interface of the callee changed, I think the code *should* error out 2018-07-07T10:17:49Z beach: p_l: At the very least, the direct call contains a relative callee address and after update, it must have an indirection through the symbol or the environment. 2018-07-07T10:18:02Z beach: Oh, sure. That's not what I meant. 2018-07-07T10:18:27Z p_l: beach: I was thinking of using absolute addresses instead, and essentially handling it the same way one would handle GC-movable code 2018-07-07T10:18:57Z beach: Well, then you are not taking full advantage of the internal call. 2018-07-07T10:19:35Z p_l: beach: depends a bit on how the underlying architecture handles it 2018-07-07T10:19:55Z littlelisper: sorry, its import-from. i got it 2018-07-07T10:20:04Z p_l: but I can see it workable with relative references anyway 2018-07-07T10:20:45Z fikka quit (Ping timeout: 260 seconds) 2018-07-07T10:20:49Z p_l: also, one could patch the callee location with a jump to new code, and have GC hooks that fixup it later 2018-07-07T10:21:09Z p_l: though the latter requires that all code moves only in the area supported by relative call 2018-07-07T10:21:40Z fikka joined #lisp 2018-07-07T10:21:52Z beach: It gets complicated. 2018-07-07T10:23:40Z makomo quit (Ping timeout: 260 seconds) 2018-07-07T10:23:53Z p_l: AMD64 for example only gives 32bit relative addressing, which is something I once considered for a rather "larger" compilation unit 2018-07-07T10:24:11Z p_l: where compilation unit also marked all data/code to fit into 2GB block 2018-07-07T10:24:38Z p_l: with a compilation unit header that had references elsewhere 2018-07-07T10:25:10Z p_l: (this could be in theory applied to smaller units down to individual thunks even) 2018-07-07T10:26:16Z p_l: beach: doing it like that would also fit with my ideas of marrying your single-level-storage for OS with some robust real hw :) 2018-07-07T10:26:25Z Bike joined #lisp 2018-07-07T10:26:44Z pseudonymous joined #lisp 2018-07-07T10:26:51Z beach: Yes, I see. 2018-07-07T10:28:36Z beach: Perhaps the easiest thing to do is to require the programmer to us NOTINLINE for a function that can be redefined separately. Then there is no obligation to make it work otherwise, because the callee could very well have been inlined, so that redefining it won't have any effect anyway. Then for NOTINLINE, generate a full call so that redefinition works as expected. 2018-07-07T10:28:43Z p_l: then compilation unit becomes essentially a "segment" which has a external reference table, a table of its own contents, and can be as big or as small as it needs to be (because we could do transparent segment nesting) 2018-07-07T10:29:09Z beach: I think I understand. 2018-07-07T10:29:09Z rawste joined #lisp 2018-07-07T10:30:54Z p_l: and inside a segment, the IP-relative offsets could be market by debug data and updated when necessary (done right, one could also "fork" segments) 2018-07-07T10:32:59Z metallicus_ joined #lisp 2018-07-07T10:33:17Z Arcaelyx quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-07T10:33:37Z fikka quit (Ping timeout: 248 seconds) 2018-07-07T10:35:02Z metallicus_ quit (Quit: Leaving) 2018-07-07T10:35:24Z metallicus joined #lisp 2018-07-07T10:36:25Z random-nick quit (Read error: Connection reset by peer) 2018-07-07T10:37:48Z fikka joined #lisp 2018-07-07T10:40:17Z metallicus quit (Quit: Leaving) 2018-07-07T10:40:21Z hph^ quit 2018-07-07T10:41:08Z budRich joined #lisp 2018-07-07T10:41:12Z littlelisper quit (Quit: leaving) 2018-07-07T10:41:41Z orivej joined #lisp 2018-07-07T10:43:36Z pjb: beach: what you're describing is what is specified AFAUI. 2018-07-07T10:44:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-07T10:45:16Z budRich: hello lisp people. Im currently in the transition phase of going from i3 to stumpwm and sublime to emacs (don't ask why). And it feels like i need to get a good understanding of and learn some lisp. It's all a bit overwhelming right now, with all the different dialects and stuff, just thought i would ask here how YOU got started: book, cource, emacs, dialect, whatever. 2018-07-07T10:45:39Z Bike: stumpwm is common lisp, so go with that 2018-07-07T10:46:08Z pjb: budRich: emacs lisp is different from common lisp. 2018-07-07T10:46:21Z pjb: But a alot of what you'll learn in CL will be appliable in emacs lisp. 2018-07-07T10:47:40Z pjb: budRich: have a look at http://cliki.net/Getting+Started and http://cliki.net/Online+Tutorial 2018-07-07T10:47:49Z budRich: great, this is what i thought and planned, i try to conf stump and get used to that first, before starting with emacs, it feels like it can get confusing. And wm hacking is my cup of tea. 2018-07-07T10:47:56Z budRich: thanks pjb. 2018-07-07T10:48:01Z pjb: budRich: and https://www.gnu.org/software/emacs/manual/eintr.html 2018-07-07T10:52:02Z graphene quit (Remote host closed the connection) 2018-07-07T10:53:21Z graphene joined #lisp 2018-07-07T10:55:58Z angavrilov joined #lisp 2018-07-07T10:56:46Z pseudonymous quit (Ping timeout: 264 seconds) 2018-07-07T10:58:09Z shifty quit (Ping timeout: 248 seconds) 2018-07-07T11:01:09Z lumm_ joined #lisp 2018-07-07T11:01:47Z lumm quit (Ping timeout: 265 seconds) 2018-07-07T11:01:49Z lumm_ is now known as lumm 2018-07-07T11:03:20Z metallicus joined #lisp 2018-07-07T11:04:52Z nika quit (Quit: Leaving...) 2018-07-07T11:08:56Z DonVlad is now known as Murii__ 2018-07-07T11:14:07Z BitPuffin quit (Remote host closed the connection) 2018-07-07T11:14:08Z shrdlu68 quit (Quit: Lost terminal) 2018-07-07T11:20:01Z random-nick joined #lisp 2018-07-07T11:22:22Z random-nick quit (Read error: Connection reset by peer) 2018-07-07T11:25:24Z random-nick joined #lisp 2018-07-07T11:32:54Z muyinliu joined #lisp 2018-07-07T11:33:42Z Smokitch joined #lisp 2018-07-07T11:34:04Z shka1 joined #lisp 2018-07-07T11:38:42Z fikka joined #lisp 2018-07-07T11:40:55Z BitPuffin joined #lisp 2018-07-07T11:41:44Z wigust- quit (Quit: ZNC 1.7.0 - https://znc.in) 2018-07-07T11:42:46Z zotan quit (Ping timeout: 256 seconds) 2018-07-07T11:42:57Z fikka quit (Ping timeout: 248 seconds) 2018-07-07T11:43:34Z zotan joined #lisp 2018-07-07T11:46:42Z eli_oat joined #lisp 2018-07-07T11:47:55Z makomo joined #lisp 2018-07-07T11:52:02Z pierpal quit (Quit: Poof) 2018-07-07T11:52:17Z wigust joined #lisp 2018-07-07T11:52:20Z pierpal joined #lisp 2018-07-07T11:53:20Z eli_oat quit (Quit: Leaving.) 2018-07-07T11:57:34Z eli_oat joined #lisp 2018-07-07T11:57:52Z iridioid joined #lisp 2018-07-07T11:58:37Z eli_oat quit (Client Quit) 2018-07-07T12:00:22Z milanj_ quit (Read error: Connection reset by peer) 2018-07-07T12:02:45Z iridioid quit (Ping timeout: 264 seconds) 2018-07-07T12:03:30Z milanj joined #lisp 2018-07-07T12:05:53Z rawste quit (Quit: Sleep....) 2018-07-07T12:06:29Z eli_oat joined #lisp 2018-07-07T12:06:40Z eli_oat quit (Client Quit) 2018-07-07T12:10:48Z beach: minion: What does AFAUI stand for? 2018-07-07T12:10:48Z minion: Anergia Freedom Ambilogy Unassuming Ideoplastic 2018-07-07T12:11:07Z beach: pjb: You mean the NOTINLINE etc? Sure. 2018-07-07T12:12:17Z orivej quit (Ping timeout: 268 seconds) 2018-07-07T12:12:54Z beach: OK, I created an appendix describing how I plan to adapt Doug Lea's allocator to SICL. I would appreciate if y'all would take a look. It is the first draft so far, and I will likely work on the details later: http://metamodular.com/allocator.pdf 2018-07-07T12:13:35Z beach: shka: ↑ 2018-07-07T12:14:06Z shifty joined #lisp 2018-07-07T12:17:39Z muyinliu quit (Quit: Textual IRC Client: www.textualapp.com) 2018-07-07T12:20:47Z fikka joined #lisp 2018-07-07T12:20:53Z pjb: AFAUI = mispelled AFAIUI = A Far As I Understand It; sorry. 2018-07-07T12:21:03Z beach: Ah, OK. 2018-07-07T12:21:10Z beach: Yes, I think you are right. 2018-07-07T12:24:18Z shka1: beach: i will take a look at it tomorrow 2018-07-07T12:24:37Z shka1: btw, one thing occured to me 2018-07-07T12:24:38Z beach: shka1: No rush. Just thought you might be interested since I think I figured it out. 2018-07-07T12:24:49Z beach: What's that? 2018-07-07T12:25:23Z shka1: why do you want to coalescent blocks backward? 2018-07-07T12:25:42Z shka1: aren't you starting from the very front and just move forward? 2018-07-07T12:25:42Z rawste joined #lisp 2018-07-07T12:25:51Z shka1: that's is garbage collector afterall 2018-07-07T12:26:15Z beach: No, no. This is a global memory allocator. It handles free chunks and chunks in use. 2018-07-07T12:26:38Z beach: And I can't start for be very front, because that would be the entire memory. 2018-07-07T12:27:03Z shka1: oh, ok 2018-07-07T12:27:09Z shka1: so not nursery 2018-07-07T12:27:23Z beach: No, all memory. I will use it for the global heap. 2018-07-07T12:27:51Z elfmacs quit (Ping timeout: 240 seconds) 2018-07-07T12:28:01Z shka1: ok 2018-07-07T12:29:05Z fikka quit (Ping timeout: 260 seconds) 2018-07-07T12:29:08Z edgar-rft: I don't think it rally matters what acronyms like WRKZTG really mean because people using such things don't show the slightest interest to be understood by others, so their opinion should be totally ignored. 2018-07-07T12:29:49Z milanj quit (Read error: Connection reset by peer) 2018-07-07T12:30:06Z beach: I am still surprised that I seem to be one of the few people using Emacs abbrevs. 2018-07-07T12:30:53Z edgar-rft: beach: in human-readable text? :-) 2018-07-07T12:31:08Z beach: I don't understand. 2018-07-07T12:32:09Z edgar-rft: beach: Imagine a doctoral thesis full of unexpanded Emacs abbrevs. 2018-07-07T12:32:23Z beach: Why would they be unexpanded? 2018-07-07T12:32:30Z milanj joined #lisp 2018-07-07T12:32:46Z Quetzal2 joined #lisp 2018-07-07T12:32:47Z Quetzal2 quit (Changing host) 2018-07-07T12:32:47Z Quetzal2 joined #lisp 2018-07-07T12:32:47Z Bike: i'm just imagining that beach types like a champion texter, but we can't tell because of all the abbreviation expansions 2018-07-07T12:32:55Z beach: I mean, when I type (say here in IRC) "gme", it expands to "Good morning everyone!", and when I type "hs" it expands to "Common Lisp HyperSpec", so I don't need to expose other participants to such abbreviations. 2018-07-07T12:33:32Z edgar-rft: beach: what if I wrote my doctioral thesis with vim? would emacs abbrevs expanded there? 2018-07-07T12:33:45Z beach: That would be unwise. 2018-07-07T12:34:04Z shka1: heh, i just found my quote of the day 2018-07-07T12:34:11Z shka1: "Forgetting how to implement a Prolog system is as hard as learning how to build one." 2018-07-07T12:34:23Z shka1: ;-) 2018-07-07T12:35:53Z zxcvz joined #lisp 2018-07-07T12:36:55Z budRich quit (Ping timeout: 256 seconds) 2018-07-07T12:37:11Z edgar-rft: beach: My original rambling was about abbrevs like AFAIUI in text intended to be read by humans. Of course I have no problem if anyone uses the capabilities of his/her editor to make life less painful, as long as I don't need to read unexpanded abbrevs like AFAIUI in plain text. 2018-07-07T12:37:33Z beach: I understand. 2018-07-07T12:38:04Z beach: I just pointed out an easy way to avoid that, without having to manually expand those abbreviations. But I take it very few people use that way. 2018-07-07T12:39:09Z edgar-rft: Many people like tp use computers to make life *more* complicated than otherwise around. 2018-07-07T12:39:24Z lumm_ joined #lisp 2018-07-07T12:42:05Z lumm quit (Ping timeout: 240 seconds) 2018-07-07T12:42:06Z lumm_ is now known as lumm 2018-07-07T12:48:09Z metallicus quit (Quit: Leaving) 2018-07-07T12:56:04Z Xach: /win 3 2018-07-07T12:56:09Z xantoz quit (Ping timeout: 264 seconds) 2018-07-07T12:56:40Z malice joined #lisp 2018-07-07T12:57:54Z pjb: Ok, so the message is: go read the emacs abbrevs tutorial this week end! 2018-07-07T12:58:12Z beach: Sounds right. 2018-07-07T12:58:19Z pjb: https://www.emacswiki.org/emacs/AbbrevMode https://www.gnu.org/software/emacs/manual/html_node/emacs/Abbrevs.html 2018-07-07T12:58:41Z pjb: I'm lazy, I've been using emacs for at least 26 years, and I never had a look at abbrev… 2018-07-07T12:58:41Z shka1: :-) 2018-07-07T12:58:54Z beach: pjb: Yeah, you are not alone apparently. 2018-07-07T12:59:14Z pjb: On the other hand, I wrote my own pjb-erc-answers for my own FAQ answers :-) 2018-07-07T12:59:55Z xantoz joined #lisp 2018-07-07T12:59:59Z elfmacs joined #lisp 2018-07-07T13:00:31Z doesthiswork joined #lisp 2018-07-07T13:00:39Z milanj quit (Read error: Connection reset by peer) 2018-07-07T13:01:04Z malice: Hi! Macro question: I'm struggling with creating this macro. Here's my effort: https://pastebin.com/4t0mGHaB 2018-07-07T13:01:07Z malice: The macro is basic with simple twist: it defines another macro(with macrolet) so that I don't have to pass the variable (parser) all the time in there. 2018-07-07T13:01:28Z malice: However, I get errors and I'm not sure how to get it right. The error is either "variable parser is unbound" or "variable parser-name is unbound" 2018-07-07T13:01:31Z TCZ joined #lisp 2018-07-07T13:01:32Z malice: both happen during macroexpansion 2018-07-07T13:01:57Z malice: parser is unbound if parser-name is double-unquoted, parser-name is unbound if parser-name is single-unquoted 2018-07-07T13:02:07Z Bike: maybe ,', 2018-07-07T13:02:11Z shka1: ,', 2018-07-07T13:02:29Z Bike: i avoid double backquote and just write it out manually with list functions, usually 2018-07-07T13:02:39Z shka1: malice: i have this issues all the time, just use ,', instead of ,, for variable name 2018-07-07T13:03:09Z Bike: that said, this isn't going to work 2018-07-07T13:03:21Z Bike: you have (previous) expanding into another (previous ...) form 2018-07-07T13:03:28Z malice: is that going to be recursive? 2018-07-07T13:03:33Z Bike: so you'll just get a not-enough-arguments error. yes. 2018-07-07T13:03:50Z malice: I will simply modify the name of the function the 2018-07-07T13:03:51Z malice: then* 2018-07-07T13:04:11Z milanj joined #lisp 2018-07-07T13:04:43Z shka1: malice: https://github.com/sirherrbatka/cl-data-structures/blob/252fa0442dfc2c28b4075d96ba63339be9ebe502/src/utils/macros.lisp#L311 2018-07-07T13:04:48Z malice: Thanks for catching it Bike 2018-07-07T13:05:05Z shka1: it gets confusing rather quickly 2018-07-07T13:05:24Z malice: shka1: these are some great macro names :) 2018-07-07T13:05:55Z shka1: thanks :P 2018-07-07T13:06:11Z shka1: i don't document those on purpose :P 2018-07-07T13:06:27Z pseudonymous joined #lisp 2018-07-07T13:06:41Z pjb: malice, it's not obvious that previous needs to be a macro. If it was a flet, you could call the outter previous function from an inner previous function with a different signature. 2018-07-07T13:06:50Z pjb: Same with match. 2018-07-07T13:08:13Z milanj_ joined #lisp 2018-07-07T13:08:21Z pjb: malice: and a flet can also use an outter macro of the same. 2018-07-07T13:08:51Z malice: pjb: I wanted to avoid it overwriting the function slot of the previous since I wasn't sure if that wouldn't affect other functions that call it 2018-07-07T13:09:01Z milanj quit (Ping timeout: 256 seconds) 2018-07-07T13:09:04Z pjb: flet is lexical. 2018-07-07T13:09:12Z malice: I see. My assumption was invalid then. 2018-07-07T13:09:35Z pjb: just like macrolet, so you if you can use one, you can use the other. 2018-07-07T13:09:52Z igemnace quit (Remote host closed the connection) 2018-07-07T13:10:49Z knicklux joined #lisp 2018-07-07T13:13:03Z pjb: beach: after having read (only) C.1 we don't understand why the in-use bit is stored in the next chunk. And the diagrams don't even show the next of the next chunk, so the information displayed is incomplete. 2018-07-07T13:13:53Z pjb: beach: what use are the chunks that don't have free space in them? bin 0 seems useless. 2018-07-07T13:14:07Z sz0 joined #lisp 2018-07-07T13:14:51Z pjb: beach: page 198 s/cunks/chunks/ there are other typoes, but this one can't stay ;-) 2018-07-07T13:14:57Z didi quit (Ping timeout: 240 seconds) 2018-07-07T13:16:25Z orivej joined #lisp 2018-07-07T13:16:51Z dddddd joined #lisp 2018-07-07T13:16:57Z gabiruh quit (Ping timeout: 256 seconds) 2018-07-07T13:17:33Z TCZ quit (Quit: Leaving) 2018-07-07T13:19:36Z beach: pjb: Thanks. 2018-07-07T13:19:46Z bjorkintosh quit (Quit: Leaving) 2018-07-07T13:21:15Z beach: Only free chunks have 4 words with valid data. A chunk in use has only 1, so there are 3 words for user data. 2018-07-07T13:21:21Z beach: ... in the smallest chunk. 2018-07-07T13:22:24Z beach: The in-use bit is stored in the next chunk so that when a chunk is freed, you can check whether the previous chunk is in use. If it is not in use, the previous word is the size and you can use it to find the beginning of the previous chunk. 2018-07-07T13:22:59Z beach: If it is in use, you can't do that because the size field is then used by user data, so you must have this bit to check which case it is. 2018-07-07T13:24:58Z fikka joined #lisp 2018-07-07T13:25:20Z jmercouris joined #lisp 2018-07-07T13:26:29Z beach: pjb: I have yet to write the section on freeing a chunk, so it is normal that this is not clear from the current document. 2018-07-07T13:27:20Z josemanuel joined #lisp 2018-07-07T13:27:45Z karswell quit (Ping timeout: 245 seconds) 2018-07-07T13:29:20Z elfmacs quit (Quit: WeeChat 2.1) 2018-07-07T13:30:30Z azimut quit (Ping timeout: 260 seconds) 2018-07-07T13:31:05Z fikka quit (Ping timeout: 245 seconds) 2018-07-07T13:31:09Z deng_cn quit (Remote host closed the connection) 2018-07-07T13:31:13Z deng_cn1 joined #lisp 2018-07-07T13:33:18Z fikka joined #lisp 2018-07-07T13:33:35Z deng_cn1 is now known as deng_cn 2018-07-07T13:36:06Z devon quit (Ping timeout: 256 seconds) 2018-07-07T13:36:34Z beach goes off to write that section. 2018-07-07T13:37:30Z patlv joined #lisp 2018-07-07T13:39:13Z fikka quit (Ping timeout: 248 seconds) 2018-07-07T13:40:29Z fikka joined #lisp 2018-07-07T13:44:32Z klltkr joined #lisp 2018-07-07T13:44:40Z klltkr_ quit (Quit: Lost terminal) 2018-07-07T13:45:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-07T13:49:56Z pseudonymous quit (Ping timeout: 255 seconds) 2018-07-07T13:51:35Z patlv quit (Ping timeout: 240 seconds) 2018-07-07T13:52:40Z fikka joined #lisp 2018-07-07T13:53:06Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-07T13:53:25Z gabiruh joined #lisp 2018-07-07T13:58:21Z fikka quit (Ping timeout: 240 seconds) 2018-07-07T13:58:43Z iridioid joined #lisp 2018-07-07T14:01:09Z paule32 quit (Ping timeout: 256 seconds) 2018-07-07T14:02:02Z beach: OK, new section added (Freeing a chunk): http://metamodular.com/allocator.pdf 2018-07-07T14:03:03Z EvW1 joined #lisp 2018-07-07T14:03:06Z EvW1 quit (Client Quit) 2018-07-07T14:03:20Z pjb: beach: ok. I see. 2018-07-07T14:03:20Z EvW1 joined #lisp 2018-07-07T14:03:31Z beach: Whew! 2018-07-07T14:03:54Z iridioid quit (Ping timeout: 268 seconds) 2018-07-07T14:06:08Z fikka joined #lisp 2018-07-07T14:11:44Z fikka quit (Ping timeout: 265 seconds) 2018-07-07T14:12:11Z markoong joined #lisp 2018-07-07T14:13:46Z paule32 joined #lisp 2018-07-07T14:16:11Z beach: Interestingly, since these chunks are going to be used for the racks, and many racks need a size stored in them (like for arrays), I can sometimes use the size field of the chunk instead of storing the size separately. 2018-07-07T14:21:40Z makomo quit (Ping timeout: 260 seconds) 2018-07-07T14:22:10Z makomo joined #lisp 2018-07-07T14:22:38Z skapata joined #lisp 2018-07-07T14:27:34Z pseudonymous joined #lisp 2018-07-07T14:28:23Z pseudonymous quit (Remote host closed the connection) 2018-07-07T14:28:50Z pseudonymous joined #lisp 2018-07-07T14:29:16Z lumm quit (Read error: Connection reset by peer) 2018-07-07T14:30:53Z pseudonymous quit (Remote host closed the connection) 2018-07-07T14:31:22Z pseudonymous joined #lisp 2018-07-07T14:32:25Z lumm joined #lisp 2018-07-07T14:34:45Z beach: Hmm, this thing is so simple, I should just go ahead and code it up. 2018-07-07T14:36:53Z pseudonymous quit (Remote host closed the connection) 2018-07-07T14:37:17Z lumm_ joined #lisp 2018-07-07T14:37:24Z pseudonymous joined #lisp 2018-07-07T14:40:55Z lumm quit (Ping timeout: 260 seconds) 2018-07-07T14:40:55Z lumm_ is now known as lumm 2018-07-07T14:43:10Z pseudonymous quit (Ping timeout: 245 seconds) 2018-07-07T14:45:50Z montxero joined #lisp 2018-07-07T14:46:12Z anewuser joined #lisp 2018-07-07T14:47:45Z oni-on-ion joined #lisp 2018-07-07T14:49:54Z patlv joined #lisp 2018-07-07T14:50:43Z montxero: someone has a gun to your head and says, show me a simple example of a macro in under 7 lines! It must be simple enough for a non lisper to understand once some basic rules are explained 2018-07-07T14:51:27Z beach: Does it count to show how some standard macros can be implemented? 2018-07-07T14:52:15Z Bike: prog1, i guess 2018-07-07T14:52:17Z montxero: beach: provided it is simple enough to be groked by a non expert 2018-07-07T14:52:37Z milanj_ quit (Quit: This computer has gone to sleep) 2018-07-07T14:53:35Z papachan joined #lisp 2018-07-07T14:54:42Z beach: Sure, prog1 will do. (defmacro prog1 (first-form &rest more-forms) (let ((result-var (gensym))) `(let ((,result-var ,first-form)) ,@more-forms ,result-var))) something like that. 2018-07-07T14:54:55Z Kundry_Wag joined #lisp 2018-07-07T14:54:58Z trittweiler: montxero, how about (defmacro while (condition &body body) ...)? There are many ways you can base the expansion on. Which one depends on your intended pedagogy. 2018-07-07T14:55:31Z Kundry_W_ joined #lisp 2018-07-07T14:55:51Z _death: (defmacro backward (form) (reverse form)) 2018-07-07T14:56:19Z Bike: that might be better pedagogically 2018-07-07T14:56:31Z Kundry_W_ quit (Client Quit) 2018-07-07T14:56:49Z Kundry_W_ joined #lisp 2018-07-07T14:57:30Z pseudonymous joined #lisp 2018-07-07T14:57:57Z montxero: trittweiler: What are the basic rules required to understand this 2018-07-07T14:58:10Z gabiruh quit (Read error: Connection reset by peer) 2018-07-07T14:58:33Z montxero: _death: interesting... why not a function? why resort to macros here 2018-07-07T14:58:46Z loke: When I deonstrated macros to a non-Lisp audience I created a reverse-if, basically something that worked like IF but reversed its arguments: (IF C T F) ⇒ (REVERSE-IF C F T) 2018-07-07T14:58:52Z Bike: it's totally different as a function 2018-07-07T14:58:57Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-07T14:59:00Z Bike: it lets you do things like (reverse (2 2 +)) 2018-07-07T14:59:15Z montxero: beach: The gunslinger cocks the gun... too much stuff to unpack in there 2018-07-07T14:59:25Z Bike: because the macroexpander reverses the (2 2 +) into (+ 2 2) 2018-07-07T14:59:42Z beach: montxero: I don't think you are ever going to be happy with the answer, so I give up. 2018-07-07T14:59:43Z montxero: Bike: ahhhh.... 2018-07-07T14:59:45Z montxero: I see 2018-07-07T14:59:57Z loke: (defmacro reverse-if (clause iffalse iftrue) (list clause iftrue iffalse)) 2018-07-07T15:00:07Z loke: Sorry 2018-07-07T15:00:10Z loke: (defmacro reverse-if (clause iffalse iftrue) (list 'if clause iftrue iffalse)) 2018-07-07T15:00:43Z knicklux quit (Quit: Leaving) 2018-07-07T15:01:05Z loke: I still have the slides from that presentation: https://docs.google.com/presentation/d/1mIHAruC3nbI-CZPVjX7AuRp-bj9xjJima0l6XrHUI6Y/edit?usp=sharing 2018-07-07T15:01:52Z Kundry_W_ quit 2018-07-07T15:02:37Z pseudonymous quit (Remote host closed the connection) 2018-07-07T15:03:41Z pseudonymous joined #lisp 2018-07-07T15:04:53Z montxero: loke: Nice... I will pore over the slide 2018-07-07T15:05:42Z montxero: beach: Nooooo don't give up... you always deliver 2018-07-07T15:06:38Z patlv quit (Ping timeout: 256 seconds) 2018-07-07T15:07:09Z montxero: beach: How about this... BANG! now I've shot the tip of your right shoe missing your toes by inches... c'mon gimme one 2018-07-07T15:07:32Z beach: Nah. I think there are plenty of people here who can do it. 2018-07-07T15:07:33Z loke: beach: Have you looked at Axiom? 2018-07-07T15:08:00Z beach: loke: I don't think so. Remind me what it is. 2018-07-07T15:08:31Z loke: beach: It is another CAS, separate from Maxima, although the maintainer of Maxima started the Axiom project as well, back in the 70's or something 2018-07-07T15:09:02Z kozy joined #lisp 2018-07-07T15:09:05Z beach: Ah, OK. 2018-07-07T15:09:11Z beach: Is it also written in Lisp? 2018-07-07T15:09:20Z kozy quit (Remote host closed the connection) 2018-07-07T15:09:25Z loke: It's still maintained, which is fine (but odd that I didn't know about it). It runs in Common Lisp, but it's written in lterate style (like Knuth does) and it seems as though they actually don't write the code in Lisp, but rather in the Axiom language that is converted to CL. 2018-07-07T15:09:43Z beach: I see. 2018-07-07T15:10:01Z loke: The source files bascially contains the axiom code in comments + the CL code. it seems they pass it through a translator that converts the axiom code in the comments to respective Lisp functions. 2018-07-07T15:10:04Z loke: It's odd to see: 2018-07-07T15:10:06Z loke: https://github.com/daly/axiom/blob/master/src/interp/nrunfast.lisp.pamphlet 2018-07-07T15:11:03Z loke: It's a bit strange, but at the same time perhaps a good example of how you can leverage Lisp to get natively compiled Lisp code even if you use a different language. 2018-07-07T15:11:35Z beach: Yes, I see. Very strange looking. 2018-07-07T15:12:18Z loke: wonder how this is maintained. Dothey write the code in comments, or do they paste the result manually after making modifications? 2018-07-07T15:12:26Z kozy joined #lisp 2018-07-07T15:12:55Z iridioid joined #lisp 2018-07-07T15:13:21Z beach: Good question. 2018-07-07T15:15:29Z loke: I'm looking at some changes in the git history. The git change records a change to oboth the code in the comment, along with the corresponding Lisp code in the same diff 2018-07-07T15:15:42Z loke: It must be generated from the comments. 2018-07-07T15:16:58Z beach: One hopes. 2018-07-07T15:22:51Z makomo: loke: it uses the literate programming methodology. 2018-07-07T15:23:11Z makomo: it's not that actively maintained though, at least i got that impression 2018-07-07T15:23:28Z makomo: but there's an interesting talk from one of the the authors (and the current maintainer) on literate programming 2018-07-07T15:23:33Z makomo: his name is timothy daly iirc 2018-07-07T15:23:48Z kerframil joined #lisp 2018-07-07T15:24:02Z makomo: loke: oh you already mentioned the "literate style", i missed that, sorry :D 2018-07-07T15:24:14Z makomo: the video might be interesting: https://www.youtube.com/watch?v=Av0PQDVTP4A 2018-07-07T15:25:49Z makomo: only 8.8k views, heh 2018-07-07T15:27:35Z pseudonymous quit (Ping timeout: 260 seconds) 2018-07-07T15:30:13Z lumm quit (Quit: lumm) 2018-07-07T15:30:32Z troydm joined #lisp 2018-07-07T15:32:01Z varjag joined #lisp 2018-07-07T15:38:29Z DemolitionMan joined #lisp 2018-07-07T15:38:38Z cmoore joined #lisp 2018-07-07T15:40:07Z cage_ joined #lisp 2018-07-07T15:45:17Z jason_m joined #lisp 2018-07-07T15:49:42Z nowhere_man joined #lisp 2018-07-07T15:53:01Z oni-on-ion: loke: that is indeed neat =) 2018-07-07T15:53:44Z Pixel_Outlaw joined #lisp 2018-07-07T15:53:59Z oni-on-ion: http://cb1.com/%7Ejohn/thesis/thesis.html 2018-07-07T15:54:41Z makomo quit (Ping timeout: 248 seconds) 2018-07-07T15:55:00Z Kundry_Wag joined #lisp 2018-07-07T15:55:51Z oni-on-ion: this tripped me out yesterday, it is one of two things ive seen yesterday which really opened my mind and respect for lisp : http://www.lispology.com/show?JHE 2018-07-07T15:57:13Z patlv joined #lisp 2018-07-07T15:59:28Z beach: oni-on-ion: That one doesn't take into account the published results that write floating point numbers so that reading it back gives the same exact value. 2018-07-07T15:59:54Z graphene quit (Remote host closed the connection) 2018-07-07T16:01:10Z graphene joined #lisp 2018-07-07T16:01:20Z k4rtik joined #lisp 2018-07-07T16:03:16Z beach: Wow, new-ish paper about that by Aubrey Jaffer. Nice! 2018-07-07T16:05:39Z Kundry_Wag quit (Remote host closed the connection) 2018-07-07T16:06:28Z loke: beach: is that a guy's name? 2018-07-07T16:08:07Z beach: You bet. 2018-07-07T16:08:19Z nanoz joined #lisp 2018-07-07T16:08:35Z beach: I think he wrote Guile or something like that. 2018-07-07T16:08:41Z beach: https://arxiv.org/pdf/1310.8121.pdf 2018-07-07T16:10:23Z Fade: somebody involved with Axiom was in here asking questions a few years ago.. 2018-07-07T16:10:28Z Fade: although I can't remember about what. 2018-07-07T16:11:23Z makomo joined #lisp 2018-07-07T16:13:13Z Kundry_Wag joined #lisp 2018-07-07T16:14:53Z patlv quit (Ping timeout: 256 seconds) 2018-07-07T16:15:18Z fikka joined #lisp 2018-07-07T16:15:41Z pierpal quit (Quit: Poof) 2018-07-07T16:16:02Z pierpal joined #lisp 2018-07-07T16:16:05Z oni-on-ion: beach: ah 2018-07-07T16:17:45Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-07T16:18:36Z sz0 quit (Quit: Connection closed for inactivity) 2018-07-07T16:19:44Z shaftoe_ quit (Read error: Connection reset by peer) 2018-07-07T16:19:51Z ebrasca` joined #lisp 2018-07-07T16:20:00Z shaftoe_ joined #lisp 2018-07-07T16:20:05Z fikka quit (Ping timeout: 260 seconds) 2018-07-07T16:20:09Z BitPuffin quit (Ping timeout: 264 seconds) 2018-07-07T16:21:26Z hvxgr quit (Ping timeout: 256 seconds) 2018-07-07T16:22:43Z Tordek quit (Remote host closed the connection) 2018-07-07T16:22:56Z Tordek joined #lisp 2018-07-07T16:23:09Z troydm quit (Ping timeout: 264 seconds) 2018-07-07T16:23:10Z juristi quit (Ping timeout: 264 seconds) 2018-07-07T16:23:55Z subroot joined #lisp 2018-07-07T16:24:22Z ebrasca quit (Ping timeout: 264 seconds) 2018-07-07T16:25:36Z troydm joined #lisp 2018-07-07T16:26:03Z fouric: does anyone know of a macro that expands into the line number that the macro is placed at, and for bonus points, the name of the file, too? 2018-07-07T16:26:18Z fouric: the big Goog is not being helpful today 2018-07-07T16:26:37Z loke: fouric: Nothing standard 2018-07-07T16:26:43Z loke: Lisp doesn't have any notion of line numbers 2018-07-07T16:26:50Z loke: SBCL has some internal stuff for that though 2018-07-07T16:27:43Z fouric: rip 2018-07-07T16:27:55Z fouric: well, my fallback was to just use SWANK for form definition lookups 2018-07-07T16:28:09Z fouric: which i was hoping to avoid, but if it's the only reasonable/portable option, then i'll take it 2018-07-07T16:30:11Z hvxgr joined #lisp 2018-07-07T16:30:15Z jmercouris quit (Ping timeout: 245 seconds) 2018-07-07T16:30:27Z pierpal quit (Ping timeout: 240 seconds) 2018-07-07T16:32:00Z pierpal joined #lisp 2018-07-07T16:35:53Z NoNumber joined #lisp 2018-07-07T16:38:59Z fikka joined #lisp 2018-07-07T16:41:05Z pierpal quit (Ping timeout: 240 seconds) 2018-07-07T16:43:25Z fikka quit (Ping timeout: 260 seconds) 2018-07-07T16:47:57Z cage_ quit (Remote host closed the connection) 2018-07-07T16:48:03Z Xach: fouric: sbcl's SB-INTROSPECT provides that info and is supported. 2018-07-07T16:48:19Z cage_ joined #lisp 2018-07-07T16:48:23Z Xach: fouric: other implementations have something similar. swank papers over the differences to be portable. 2018-07-07T16:48:54Z juristi joined #lisp 2018-07-07T16:56:10Z _paul0 quit (Ping timeout: 264 seconds) 2018-07-07T16:57:27Z paul0 joined #lisp 2018-07-07T16:58:44Z fikka joined #lisp 2018-07-07T16:59:04Z paul0 quit (Remote host closed the connection) 2018-07-07T16:59:33Z paul0 joined #lisp 2018-07-07T17:00:58Z brendyn quit (Ping timeout: 264 seconds) 2018-07-07T17:03:58Z fikka quit (Ping timeout: 268 seconds) 2018-07-07T17:04:35Z paul0 quit (Ping timeout: 268 seconds) 2018-07-07T17:04:42Z carmack quit (Ping timeout: 260 seconds) 2018-07-07T17:05:38Z Quetzal2 quit (Ping timeout: 256 seconds) 2018-07-07T17:08:21Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-07T17:09:26Z igemnace joined #lisp 2018-07-07T17:10:33Z klltkr: Oo, I finally found qbase64 2018-07-07T17:11:45Z cage_ quit (Read error: Connection reset by peer) 2018-07-07T17:13:23Z cage_ joined #lisp 2018-07-07T17:13:57Z svillemot quit (Ping timeout: 265 seconds) 2018-07-07T17:16:30Z oni-on-ion: would it be trivial to use ~ instead of : for keywords ? 2018-07-07T17:18:47Z fikka joined #lisp 2018-07-07T17:19:03Z _death: the answer is likely "no".. but depends on what you mean by "use" 2018-07-07T17:19:33Z oni-on-ion: reader macro 2018-07-07T17:20:39Z _death: (defun ~-reader (stream char) (let ((*package* (find-package "KEYWORD"))) (read stream t nil t))) 2018-07-07T17:21:09Z patlv joined #lisp 2018-07-07T17:22:36Z mflem joined #lisp 2018-07-07T17:23:05Z cmoore quit (Quit: Textual IRC Client: www.textualapp.com) 2018-07-07T17:23:46Z fikka quit (Ping timeout: 264 seconds) 2018-07-07T17:24:27Z kozy quit (Remote host closed the connection) 2018-07-07T17:26:00Z montxero quit (Ping timeout: 260 seconds) 2018-07-07T17:26:32Z montxero joined #lisp 2018-07-07T17:29:50Z patlv quit (Ping timeout: 245 seconds) 2018-07-07T17:31:27Z montxero quit (Quit: leaving) 2018-07-07T17:32:50Z lumm joined #lisp 2018-07-07T17:33:04Z light2yellow joined #lisp 2018-07-07T17:34:29Z subroot quit (Read error: Connection reset by peer) 2018-07-07T17:34:44Z lumm_ joined #lisp 2018-07-07T17:35:18Z zachk joined #lisp 2018-07-07T17:35:18Z zachk quit (Changing host) 2018-07-07T17:35:18Z zachk joined #lisp 2018-07-07T17:35:51Z lumm_ quit (Read error: Connection reset by peer) 2018-07-07T17:38:22Z bjorkintosh joined #lisp 2018-07-07T17:38:46Z lumm quit (Ping timeout: 260 seconds) 2018-07-07T17:38:49Z fikka joined #lisp 2018-07-07T17:43:21Z Kundry_Wag joined #lisp 2018-07-07T17:43:26Z EvW1 quit (Ping timeout: 265 seconds) 2018-07-07T17:43:29Z fikka quit (Ping timeout: 248 seconds) 2018-07-07T17:43:31Z Kundry_Wag quit (Remote host closed the connection) 2018-07-07T17:43:47Z Kundry_Wag joined #lisp 2018-07-07T17:44:27Z Kundry_W_ joined #lisp 2018-07-07T17:45:54Z makomo quit (Quit: WeeChat 2.0.1) 2018-07-07T17:48:08Z patlv joined #lisp 2018-07-07T17:48:16Z Kundry_Wag quit (Ping timeout: 265 seconds) 2018-07-07T17:53:28Z housel quit (Read error: Connection reset by peer) 2018-07-07T17:55:33Z patlv quit (Ping timeout: 264 seconds) 2018-07-07T17:57:18Z robotoad joined #lisp 2018-07-07T17:58:27Z patlv joined #lisp 2018-07-07T17:58:49Z fikka joined #lisp 2018-07-07T18:03:41Z fikka quit (Ping timeout: 276 seconds) 2018-07-07T18:06:55Z orivej quit (Ping timeout: 245 seconds) 2018-07-07T18:09:12Z fikka joined #lisp 2018-07-07T18:10:05Z xantoz quit (Ping timeout: 240 seconds) 2018-07-07T18:11:56Z patlv quit (Ping timeout: 256 seconds) 2018-07-07T18:12:13Z xantoz joined #lisp 2018-07-07T18:12:49Z shifty quit (Ping timeout: 248 seconds) 2018-07-07T18:13:44Z light2yellow quit (Quit: light2yellow) 2018-07-07T18:13:45Z patlv joined #lisp 2018-07-07T18:13:55Z NoNumber quit (Quit: ERC (IRC client for Emacs 25.2.2)) 2018-07-07T18:14:09Z fikka quit (Ping timeout: 264 seconds) 2018-07-07T18:21:10Z xrash joined #lisp 2018-07-07T18:22:42Z metallicus joined #lisp 2018-07-07T18:22:50Z kark joined #lisp 2018-07-07T18:23:05Z orivej joined #lisp 2018-07-07T18:23:51Z metallicus quit (Client Quit) 2018-07-07T18:27:15Z phenoble- joined #lisp 2018-07-07T18:28:08Z rawste quit (Quit: Sleep....) 2018-07-07T18:28:43Z rawste joined #lisp 2018-07-07T18:28:51Z fikka joined #lisp 2018-07-07T18:28:55Z rawste quit (Client Quit) 2018-07-07T18:30:18Z terpri quit (Ping timeout: 268 seconds) 2018-07-07T18:30:48Z kruhft quit (Ping timeout: 265 seconds) 2018-07-07T18:31:49Z raynold quit (Quit: Connection closed for inactivity) 2018-07-07T18:32:15Z Kundry_W_ quit (Remote host closed the connection) 2018-07-07T18:33:55Z fikka quit (Ping timeout: 256 seconds) 2018-07-07T18:39:19Z fikka joined #lisp 2018-07-07T18:43:52Z fikka quit (Ping timeout: 268 seconds) 2018-07-07T18:44:00Z robotoad quit (Quit: robotoad) 2018-07-07T18:44:49Z sauvin quit (Ping timeout: 248 seconds) 2018-07-07T18:45:06Z Kundry_W_ joined #lisp 2018-07-07T18:45:13Z sauvin joined #lisp 2018-07-07T18:45:19Z nowhere_man joined #lisp 2018-07-07T18:48:39Z metallicus joined #lisp 2018-07-07T18:48:46Z sauvin quit (Max SendQ exceeded) 2018-07-07T18:49:10Z sauvin joined #lisp 2018-07-07T18:50:49Z robotoad joined #lisp 2018-07-07T18:50:52Z pagnol joined #lisp 2018-07-07T18:53:09Z buffergn0me joined #lisp 2018-07-07T18:54:17Z jason_m quit (Quit: Leaving) 2018-07-07T18:54:21Z patlv quit (Ping timeout: 268 seconds) 2018-07-07T18:55:54Z phenoble- quit (Quit: ZNC 1.7.0 - https://znc.in) 2018-07-07T18:57:32Z Kundry_W_ quit (Remote host closed the connection) 2018-07-07T18:58:56Z fikka joined #lisp 2018-07-07T18:59:31Z Kundry_Wag joined #lisp 2018-07-07T18:59:46Z metallicus quit (Quit: Leaving) 2018-07-07T19:00:07Z Kundry_W_ joined #lisp 2018-07-07T19:00:08Z gabiruh joined #lisp 2018-07-07T19:00:55Z josemanuel quit (Quit: leaving) 2018-07-07T19:03:10Z nickenchuggets joined #lisp 2018-07-07T19:03:10Z nickenchuggets quit (Changing host) 2018-07-07T19:03:10Z nickenchuggets joined #lisp 2018-07-07T19:03:40Z fikka quit (Ping timeout: 265 seconds) 2018-07-07T19:03:57Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-07T19:09:11Z fikka joined #lisp 2018-07-07T19:09:16Z pseudonymous joined #lisp 2018-07-07T19:10:40Z housel joined #lisp 2018-07-07T19:13:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-07T19:20:38Z shka1 quit (Ping timeout: 256 seconds) 2018-07-07T19:21:31Z k4rtik quit (Ping timeout: 256 seconds) 2018-07-07T19:23:15Z nanoz quit (Ping timeout: 260 seconds) 2018-07-07T19:23:38Z cage_ quit (Quit: Leaving) 2018-07-07T19:27:37Z patlv joined #lisp 2018-07-07T19:28:34Z Murii__ quit (Remote host closed the connection) 2018-07-07T19:28:55Z fikka joined #lisp 2018-07-07T19:28:55Z Murii__ joined #lisp 2018-07-07T19:29:17Z rawste joined #lisp 2018-07-07T19:31:21Z phenoble joined #lisp 2018-07-07T19:31:27Z igemnace quit (Quit: WeeChat 2.1) 2018-07-07T19:31:36Z Smokitch quit 2018-07-07T19:33:21Z jasmith quit (Read error: Connection reset by peer) 2018-07-07T19:33:49Z fikka quit (Ping timeout: 268 seconds) 2018-07-07T19:35:10Z didi joined #lisp 2018-07-07T19:37:06Z Kundry_W_ quit 2018-07-07T19:37:32Z Kundry_Wag joined #lisp 2018-07-07T19:41:55Z didi: Is there some kind of hook in SBCL or SLIME that runs after a form is evaluated in the REPL? 2018-07-07T19:42:40Z pierpal joined #lisp 2018-07-07T19:44:36Z andrei-n quit (Read error: Connection reset by peer) 2018-07-07T19:45:07Z pierpal quit (Client Quit) 2018-07-07T19:45:24Z pierpal joined #lisp 2018-07-07T19:45:57Z andrei-n joined #lisp 2018-07-07T19:48:58Z fikka joined #lisp 2018-07-07T19:49:39Z pierpal quit (Ping timeout: 256 seconds) 2018-07-07T19:50:35Z patlv quit (Ping timeout: 240 seconds) 2018-07-07T19:50:55Z pierpal joined #lisp 2018-07-07T19:50:58Z krwq quit (Remote host closed the connection) 2018-07-07T19:51:10Z paule32 left #lisp 2018-07-07T19:52:48Z jasmith joined #lisp 2018-07-07T19:53:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-07T19:55:49Z lnostdal quit (Quit: https://www.Quanto.ga/) 2018-07-07T19:57:29Z ebrasca` is now known as ebrasca 2018-07-07T19:57:54Z lumm joined #lisp 2018-07-07T19:59:10Z patlv joined #lisp 2018-07-07T19:59:12Z lnostdal joined #lisp 2018-07-07T20:02:27Z pseudonymous quit (Ping timeout: 240 seconds) 2018-07-07T20:08:55Z fikka joined #lisp 2018-07-07T20:13:17Z nowhere_man quit (Ping timeout: 268 seconds) 2018-07-07T20:13:21Z fikka quit (Ping timeout: 248 seconds) 2018-07-07T20:14:25Z andrei-n quit (Ping timeout: 248 seconds) 2018-07-07T20:14:49Z elimik31 joined #lisp 2018-07-07T20:16:02Z Arcaelyx joined #lisp 2018-07-07T20:20:16Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-07T20:22:47Z graphene quit (Remote host closed the connection) 2018-07-07T20:24:04Z graphene joined #lisp 2018-07-07T20:24:51Z nowhere_man joined #lisp 2018-07-07T20:26:49Z terpri joined #lisp 2018-07-07T20:27:03Z buffergn0me quit (Ping timeout: 256 seconds) 2018-07-07T20:29:02Z fikka joined #lisp 2018-07-07T20:32:17Z rawste quit (Quit: Sleep....) 2018-07-07T20:33:51Z fikka quit (Ping timeout: 256 seconds) 2018-07-07T20:34:04Z kushal quit (Remote host closed the connection) 2018-07-07T20:34:18Z kushal joined #lisp 2018-07-07T20:35:59Z flip214: _death: that's not quite enough, ylou 2018-07-07T20:36:20Z flip214: *you'd have to set SYMBOL-VALUE of the symbol read to itself too 2018-07-07T20:36:22Z gabiruh quit (Ping timeout: 264 seconds) 2018-07-07T20:36:30Z flip214: not sure whether that happens with a simple READ already 2018-07-07T20:39:26Z flip214: didi: you could try *send-repl-results-function* or *listener-eval-function* 2018-07-07T20:39:31Z flip214: to use for that 2018-07-07T20:41:01Z didi: flip214: Thank you. 2018-07-07T20:47:46Z flip214: didi: you're welcome! 2018-07-07T20:48:54Z buffergn0me joined #lisp 2018-07-07T20:49:02Z fikka joined #lisp 2018-07-07T20:53:59Z fikka quit (Ping timeout: 268 seconds) 2018-07-07T20:54:54Z elimik31 left #lisp 2018-07-07T20:56:52Z nowhere_man quit (Remote host closed the connection) 2018-07-07T20:57:08Z DemolitionMan quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2018-07-07T20:57:14Z nowhere_man joined #lisp 2018-07-07T20:57:50Z angavrilov quit (Remote host closed the connection) 2018-07-07T20:58:04Z lavaflow quit (Read error: Connection reset by peer) 2018-07-07T20:58:08Z lavaflow_ joined #lisp 2018-07-07T21:00:03Z svillemot joined #lisp 2018-07-07T21:04:16Z python476 joined #lisp 2018-07-07T21:04:53Z Domaldel quit (Quit: Leaving) 2018-07-07T21:06:47Z graphene quit (Remote host closed the connection) 2018-07-07T21:07:54Z jason_m joined #lisp 2018-07-07T21:08:02Z graphene joined #lisp 2018-07-07T21:09:04Z fikka joined #lisp 2018-07-07T21:12:07Z k4rtik joined #lisp 2018-07-07T21:14:05Z fikka quit (Ping timeout: 260 seconds) 2018-07-07T21:15:45Z raynold joined #lisp 2018-07-07T21:15:50Z gabiruh joined #lisp 2018-07-07T21:17:45Z patlv quit (Ping timeout: 264 seconds) 2018-07-07T21:17:47Z graphene quit (Remote host closed the connection) 2018-07-07T21:19:02Z graphene joined #lisp 2018-07-07T21:19:29Z fikka joined #lisp 2018-07-07T21:24:12Z fikka quit (Ping timeout: 268 seconds) 2018-07-07T21:26:27Z lavaflow_ quit (Ping timeout: 240 seconds) 2018-07-07T21:28:17Z lavaflow_ joined #lisp 2018-07-07T21:29:10Z fikka joined #lisp 2018-07-07T21:33:57Z fikka quit (Ping timeout: 264 seconds) 2018-07-07T21:36:32Z Jesin joined #lisp 2018-07-07T21:42:05Z test1600_ quit (Ping timeout: 268 seconds) 2018-07-07T21:48:07Z milanj_ joined #lisp 2018-07-07T21:48:36Z malice quit (Remote host closed the connection) 2018-07-07T21:48:50Z mflem quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2018-07-07T21:49:11Z fikka joined #lisp 2018-07-07T21:54:20Z fikka quit (Ping timeout: 260 seconds) 2018-07-07T21:59:32Z fikka joined #lisp 2018-07-07T22:00:32Z Murii__ quit (Remote host closed the connection) 2018-07-07T22:02:30Z python476 quit (Ping timeout: 265 seconds) 2018-07-07T22:04:16Z fikka quit (Ping timeout: 256 seconds) 2018-07-07T22:06:05Z vlatkoB quit (Remote host closed the connection) 2018-07-07T22:08:58Z jasmith quit (Quit: Leaving) 2018-07-07T22:09:26Z ebrasca quit (Read error: No route to host) 2018-07-07T22:09:39Z ebrasca joined #lisp 2018-07-07T22:10:27Z random-nick quit (Ping timeout: 268 seconds) 2018-07-07T22:14:45Z xantoz quit (Ping timeout: 264 seconds) 2018-07-07T22:19:17Z fikka joined #lisp 2018-07-07T22:19:51Z xantoz joined #lisp 2018-07-07T22:23:47Z fikka quit (Ping timeout: 256 seconds) 2018-07-07T22:26:33Z jasmith joined #lisp 2018-07-07T22:29:34Z fikka joined #lisp 2018-07-07T22:31:23Z python476 joined #lisp 2018-07-07T22:31:53Z lumm_ joined #lisp 2018-07-07T22:32:39Z lumm quit (Ping timeout: 268 seconds) 2018-07-07T22:32:40Z lumm_ is now known as lumm 2018-07-07T22:34:09Z fikka quit (Ping timeout: 248 seconds) 2018-07-07T22:36:05Z guaqua quit (Ping timeout: 240 seconds) 2018-07-07T22:38:40Z gabiruh quit (Ping timeout: 260 seconds) 2018-07-07T22:43:26Z guaqua joined #lisp 2018-07-07T22:46:28Z patlv joined #lisp 2018-07-07T22:50:06Z iridioid quit (Quit: WeeChat 2.1) 2018-07-07T22:50:46Z buffergn0me quit (Ping timeout: 264 seconds) 2018-07-07T22:55:47Z TCZ joined #lisp 2018-07-07T22:58:05Z k4rtik quit (Ping timeout: 265 seconds) 2018-07-07T23:02:07Z edgar-rft quit (Remote host closed the connection) 2018-07-07T23:05:20Z jason_m quit (Ping timeout: 265 seconds) 2018-07-07T23:06:50Z nowhere_man quit (Ping timeout: 260 seconds) 2018-07-07T23:06:57Z stacksmith: Good day. Could someone explain the difference between sb-walker::env-lexical-variables and sb-c::lexenv-vars ? The latter seems to be stored in the :vars slot of SBCL's environment structure... The former seems to be available only as a predicate sb-walker::var-lexical-p... 2018-07-07T23:07:19Z pjb: Perhaps better on #sbcl 2018-07-07T23:07:28Z stacksmith: indeed. 2018-07-07T23:10:03Z nowhere_man joined #lisp 2018-07-07T23:10:51Z hjudt: is there an easy way to remove parts of a string from beginning or end? like say (remove-suffix "-string" "from-my-long-string")? 2018-07-07T23:12:56Z stacksmith: hjudt: if you know the lengths, (subseq ... 2018-07-07T23:12:58Z hjudt: maybe already implemented in some lib? 2018-07-07T23:14:14Z hjudt: stacksmith: that's how i do it atm, but it is a bit awkward to use and to write, a proper wrapper would be nice... 2018-07-07T23:14:42Z al-damiri joined #lisp 2018-07-07T23:15:18Z didi: Sometimes I want to iterate over lists inside macros, but I don't want DOLIST NIL block get in the way (because I want to use the NIL block myself). What do you think? https://paste.debian.net/hidden/38c9fc77 2018-07-07T23:15:56Z stacksmith: hjudt: it's one line of code. 2018-07-07T23:18:47Z graphene quit (Remote host closed the connection) 2018-07-07T23:18:57Z patlv quit (Ping timeout: 264 seconds) 2018-07-07T23:19:09Z Kundry_Wag quit (Remote host closed the connection) 2018-07-07T23:19:59Z graphene joined #lisp 2018-07-07T23:23:13Z DGASAU quit (Ping timeout: 268 seconds) 2018-07-07T23:23:19Z Kundry_Wag joined #lisp 2018-07-07T23:23:19Z Kundry_Wag quit (Remote host closed the connection) 2018-07-07T23:23:38Z pierpal quit (Quit: Poof) 2018-07-07T23:23:59Z pierpal joined #lisp 2018-07-07T23:24:07Z Kundry_W_ joined #lisp 2018-07-07T23:24:23Z stacksmith: did: why not just use LOOP? or mapcar? 2018-07-07T23:27:36Z stacksmith: Or wrap ,@body in its own block? 2018-07-07T23:27:54Z TCZ quit (Quit: Leaving) 2018-07-07T23:29:28Z didi: stacksmith: Because, as far as I understand it, LOOP defines a nil BLOCK and I want to avoid MAPCAR function calls. In respect to body's own block, if block calls RETURN, it will still stop at the enveloping nil block. 2018-07-07T23:32:09Z patlv joined #lisp 2018-07-07T23:40:14Z stacksmith: That seems to make sense. A minor annoyance is that your body cannot start with declarations because of the setf... which could be moved to follow body - I've also used pop in similar situations... I think it compiles to the same code... 2018-07-07T23:40:40Z mflem joined #lisp 2018-07-07T23:44:00Z varjag quit (Ping timeout: 265 seconds) 2018-07-07T23:44:06Z mflem quit (Client Quit) 2018-07-07T23:45:51Z jasom joined #lisp 2018-07-07T23:48:32Z impulse quit (Ping timeout: 245 seconds) 2018-07-07T23:50:40Z impulse joined #lisp 2018-07-07T23:54:35Z eli_oat joined #lisp 2018-07-07T23:54:44Z didi: stacksmith: Ah, true. I'm yet to use this outside macros, and I didn't need to use declarations inside it, tho I've used declarations deep inside these things. 2018-07-07T23:57:01Z eli_oat quit (Client Quit) 2018-07-07T23:58:22Z patlv quit (Ping timeout: 268 seconds) 2018-07-08T00:03:00Z gabiruh joined #lisp 2018-07-08T00:05:05Z trittweiler quit (Ping timeout: 276 seconds) 2018-07-08T00:05:31Z trittweiler joined #lisp 2018-07-08T00:07:12Z acolarh quit (Read error: Connection reset by peer) 2018-07-08T00:14:35Z EvW joined #lisp 2018-07-08T00:15:04Z pierpa joined #lisp 2018-07-08T00:18:08Z k4rtik joined #lisp 2018-07-08T00:18:09Z pjb: hjudt: it's the job of a programmer to write the proper wrappers he needs! 2018-07-08T00:18:19Z pjb: hjudt: you're not a library user, you're a programmer! 2018-07-08T00:19:44Z lumm quit (Quit: lumm) 2018-07-08T00:26:27Z zachk quit (Quit: Leaving) 2018-07-08T00:26:57Z patlv joined #lisp 2018-07-08T00:32:35Z Kundry_W_ quit (Remote host closed the connection) 2018-07-08T00:36:16Z python476 quit (Ping timeout: 256 seconds) 2018-07-08T00:36:22Z asarch joined #lisp 2018-07-08T00:38:57Z hph^ joined #lisp 2018-07-08T00:45:21Z Kundry_Wag joined #lisp 2018-07-08T00:45:58Z impulse quit (Ping timeout: 264 seconds) 2018-07-08T00:46:01Z Kundry_W_ joined #lisp 2018-07-08T00:47:44Z impulse joined #lisp 2018-07-08T00:49:37Z Kundry_Wag quit (Ping timeout: 248 seconds) 2018-07-08T00:50:13Z JuanDaugherty joined #lisp 2018-07-08T00:56:23Z markoong quit (Quit: Konversation terminated!) 2018-07-08T00:58:34Z aeth quit (Ping timeout: 264 seconds) 2018-07-08T00:58:57Z didi quit (Ping timeout: 245 seconds) 2018-07-08T01:00:08Z jasom: pjb: library users are a form of programmer. 2018-07-08T01:00:19Z aeth joined #lisp 2018-07-08T01:01:26Z graphene quit (Remote host closed the connection) 2018-07-08T01:01:54Z acolarh joined #lisp 2018-07-08T01:02:38Z graphene joined #lisp 2018-07-08T01:07:04Z didi joined #lisp 2018-07-08T01:11:27Z dddddd quit (Remote host closed the connection) 2018-07-08T01:14:25Z terpri quit (Ping timeout: 260 seconds) 2018-07-08T01:14:59Z pjb: jasom: nope. 2018-07-08T01:16:27Z impulse quit (Ping timeout: 240 seconds) 2018-07-08T01:17:19Z impulse joined #lisp 2018-07-08T01:21:17Z subroot joined #lisp 2018-07-08T01:21:45Z Kundry_W_: Hi. Is this an example of using dynamic binding to override a binding that is used within a function? I was sure it was, but the header defines lexical binding. https://github.com/abo-abo/swiper/blob/master/counsel.el#L2575 2018-07-08T01:22:15Z Kundry_W_: This `let` form redefines `counsel-ag-base-command`, which is used in `counsel-ag` 2018-07-08T01:23:01Z didi: Kundry_W_: This looks like elisp. You would have better luck by asking in #emacs. 2018-07-08T01:23:22Z Kundry_W_: Oh, sorry, I didn't notice my window was on #lisp 2018-07-08T01:24:04Z Kundry_W_ quit 2018-07-08T01:24:21Z Kundry_Wag joined #lisp 2018-07-08T01:34:30Z beach quit (Ping timeout: 256 seconds) 2018-07-08T01:34:31Z elfmacs joined #lisp 2018-07-08T01:36:57Z k4rtik quit (Ping timeout: 240 seconds) 2018-07-08T01:38:10Z anewuser quit (Ping timeout: 264 seconds) 2018-07-08T01:39:27Z JuanDaugherty quit (Quit: Exeunt) 2018-07-08T01:41:21Z impulse quit (Ping timeout: 268 seconds) 2018-07-08T01:42:08Z graphene quit (Remote host closed the connection) 2018-07-08T01:43:24Z graphene joined #lisp 2018-07-08T01:51:36Z kajo joined #lisp 2018-07-08T01:52:04Z impulse joined #lisp 2018-07-08T01:52:48Z graphene quit (Remote host closed the connection) 2018-07-08T01:54:07Z graphene joined #lisp 2018-07-08T01:56:47Z ldb joined #lisp 2018-07-08T01:56:54Z ldb: morning 2018-07-08T01:59:41Z subroot quit (Read error: Connection reset by peer) 2018-07-08T02:01:31Z impulse quit (Ping timeout: 244 seconds) 2018-07-08T02:02:04Z pagnol quit (Quit: Ex-Chat) 2018-07-08T02:02:47Z impulse joined #lisp 2018-07-08T02:07:50Z impulse quit (Ping timeout: 276 seconds) 2018-07-08T02:10:34Z eli_oat joined #lisp 2018-07-08T02:12:11Z robotoad quit (Quit: robotoad) 2018-07-08T02:16:22Z milanj_ quit (Quit: This computer has gone to sleep) 2018-07-08T02:16:58Z Cartogy joined #lisp 2018-07-08T02:21:18Z k4rtik joined #lisp 2018-07-08T02:24:35Z robotoad joined #lisp 2018-07-08T02:25:27Z eli_oat quit (Quit: WeeChat 1.9.1) 2018-07-08T02:26:13Z Cartogy quit (Quit: Page closed) 2018-07-08T02:27:19Z papachan quit (Quit: Saliendo) 2018-07-08T02:28:56Z eli_oat joined #lisp 2018-07-08T02:29:18Z eli_oat quit (Client Quit) 2018-07-08T02:42:05Z patlv quit (Remote host closed the connection) 2018-07-08T02:42:31Z patlv joined #lisp 2018-07-08T02:44:19Z impulse joined #lisp 2018-07-08T02:45:27Z orivej quit (Ping timeout: 240 seconds) 2018-07-08T02:46:27Z Kundry_Wag quit (Remote host closed the connection) 2018-07-08T02:47:03Z Kundry_Wag joined #lisp 2018-07-08T02:48:55Z impulse quit (Ping timeout: 260 seconds) 2018-07-08T02:51:39Z Kundry_Wag quit (Ping timeout: 268 seconds) 2018-07-08T02:53:12Z brettgilio joined #lisp 2018-07-08T02:57:44Z subroot joined #lisp 2018-07-08T02:59:47Z brettgilio quit (Remote host closed the connection) 2018-07-08T03:02:22Z buffergn0me joined #lisp 2018-07-08T03:04:36Z pierpa quit (Quit: Page closed) 2018-07-08T03:04:46Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-08T03:05:08Z nickenchuggets joined #lisp 2018-07-08T03:05:08Z nickenchuggets quit (Changing host) 2018-07-08T03:05:08Z nickenchuggets joined #lisp 2018-07-08T03:07:08Z brettgilio joined #lisp 2018-07-08T03:09:37Z impulse joined #lisp 2018-07-08T03:10:56Z terpri joined #lisp 2018-07-08T03:11:29Z edgar-rft joined #lisp 2018-07-08T03:12:22Z xantoz quit (Ping timeout: 264 seconds) 2018-07-08T03:14:28Z xantoz joined #lisp 2018-07-08T03:15:58Z parjanya joined #lisp 2018-07-08T03:23:05Z scottj joined #lisp 2018-07-08T03:23:05Z parjanya quit (Read error: Connection reset by peer) 2018-07-08T03:24:54Z zaquest quit (Remote host closed the connection) 2018-07-08T03:27:08Z patlv quit (Ping timeout: 276 seconds) 2018-07-08T03:29:05Z pierpal quit (Quit: Poof) 2018-07-08T03:29:25Z Kundry_Wag joined #lisp 2018-07-08T03:29:26Z pierpal joined #lisp 2018-07-08T03:33:31Z JuanDaugherty joined #lisp 2018-07-08T03:33:50Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-08T03:43:30Z graphene quit (Remote host closed the connection) 2018-07-08T03:44:46Z impulse quit (Ping timeout: 264 seconds) 2018-07-08T03:44:46Z graphene joined #lisp 2018-07-08T03:46:14Z impulse joined #lisp 2018-07-08T03:50:35Z parjanya joined #lisp 2018-07-08T03:50:48Z Kundry_Wag joined #lisp 2018-07-08T03:51:25Z wxie joined #lisp 2018-07-08T03:54:24Z wxie quit (Client Quit) 2018-07-08T03:55:33Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-08T04:00:18Z beach joined #lisp 2018-07-08T04:00:54Z beach: Good morning everyone! 2018-07-08T04:01:35Z impulse quit (Ping timeout: 240 seconds) 2018-07-08T04:02:25Z parjanya: good morning! 2018-07-08T04:02:59Z housel quit (Read error: Connection reset by peer) 2018-07-08T04:03:05Z housel joined #lisp 2018-07-08T04:04:23Z patlv joined #lisp 2018-07-08T04:06:38Z zaquest joined #lisp 2018-07-08T04:13:25Z JuanDaugherty quit (Quit: Exeunt) 2018-07-08T04:18:01Z pjb quit (Remote host closed the connection) 2018-07-08T04:20:43Z Kundry_Wag joined #lisp 2018-07-08T04:21:25Z pjb joined #lisp 2018-07-08T04:23:33Z impulse joined #lisp 2018-07-08T04:25:09Z Kundry_Wag quit (Ping timeout: 244 seconds) 2018-07-08T04:27:44Z impulse quit (Ping timeout: 244 seconds) 2018-07-08T04:27:54Z pjb quit (Ping timeout: 256 seconds) 2018-07-08T04:30:44Z Kundry_Wag joined #lisp 2018-07-08T04:31:05Z FreeBirdLjj joined #lisp 2018-07-08T04:34:53Z subroot quit (Read error: Connection reset by peer) 2018-07-08T04:35:15Z Kundry_Wag quit (Ping timeout: 268 seconds) 2018-07-08T04:35:38Z quazimodo quit (Read error: Connection reset by peer) 2018-07-08T04:37:51Z kerframil quit (Ping timeout: 240 seconds) 2018-07-08T04:38:34Z quazimodo joined #lisp 2018-07-08T04:39:39Z impulse joined #lisp 2018-07-08T04:42:32Z elfmacs quit (Ping timeout: 276 seconds) 2018-07-08T04:43:46Z EvW quit (Ping timeout: 260 seconds) 2018-07-08T04:44:38Z impulse quit (Ping timeout: 265 seconds) 2018-07-08T04:47:31Z asarch quit (Quit: Leaving) 2018-07-08T04:49:46Z brendyn joined #lisp 2018-07-08T04:52:00Z impulse joined #lisp 2018-07-08T04:52:34Z andrei-n joined #lisp 2018-07-08T04:59:51Z asarch joined #lisp 2018-07-08T05:08:02Z Bike quit (Quit: Lost terminal) 2018-07-08T05:08:05Z SaganMan quit (Ping timeout: 240 seconds) 2018-07-08T05:11:13Z igemnace joined #lisp 2018-07-08T05:14:10Z asarch quit (Quit: Leaving) 2018-07-08T05:21:56Z Pixel_Outlaw quit (Quit: Leaving) 2018-07-08T05:29:32Z nika joined #lisp 2018-07-08T05:29:35Z vtomole joined #lisp 2018-07-08T05:36:02Z _whitelogger quit (Remote host closed the connection) 2018-07-08T05:37:29Z SaganMan joined #lisp 2018-07-08T05:38:15Z _whitelogger joined #lisp 2018-07-08T05:43:24Z python476 joined #lisp 2018-07-08T05:48:29Z graphene quit (Remote host closed the connection) 2018-07-08T05:49:43Z graphene joined #lisp 2018-07-08T05:50:45Z Kundry_Wag joined #lisp 2018-07-08T05:50:55Z shifty joined #lisp 2018-07-08T05:52:24Z surya joined #lisp 2018-07-08T05:55:13Z Kundry_Wag quit (Ping timeout: 248 seconds) 2018-07-08T05:55:14Z surya quit (Read error: Connection reset by peer) 2018-07-08T06:00:32Z Kundry_Wag joined #lisp 2018-07-08T06:03:57Z EvW1 joined #lisp 2018-07-08T06:04:14Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-08T06:04:39Z nickenchuggets joined #lisp 2018-07-08T06:04:39Z nickenchuggets quit (Changing host) 2018-07-08T06:04:39Z nickenchuggets joined #lisp 2018-07-08T06:04:57Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-08T06:05:18Z EvW1 quit (Client Quit) 2018-07-08T06:06:05Z k4rtik quit (Ping timeout: 240 seconds) 2018-07-08T06:07:46Z sabrac quit (Ping timeout: 265 seconds) 2018-07-08T06:08:22Z lavaflow_ quit (Read error: Connection reset by peer) 2018-07-08T06:08:27Z patlv quit (Ping timeout: 256 seconds) 2018-07-08T06:08:33Z sabrac joined #lisp 2018-07-08T06:08:49Z Naergon quit (Remote host closed the connection) 2018-07-08T06:11:25Z nanoz joined #lisp 2018-07-08T06:12:17Z skapata quit (Remote host closed the connection) 2018-07-08T06:21:37Z lavaflow_ joined #lisp 2018-07-08T06:23:26Z EvW joined #lisp 2018-07-08T06:24:11Z mfiano: pillton: Do you have a moment? 2018-07-08T06:24:36Z EvW quit (Client Quit) 2018-07-08T06:24:37Z pseudonymous joined #lisp 2018-07-08T06:26:01Z ldb quit (Ping timeout: 256 seconds) 2018-07-08T06:27:43Z ldb joined #lisp 2018-07-08T06:36:17Z Khisanth quit (Ping timeout: 248 seconds) 2018-07-08T06:37:43Z angavrilov joined #lisp 2018-07-08T06:43:18Z ldb quit (Quit: leaving) 2018-07-08T06:45:53Z buffergn0me quit (Ping timeout: 248 seconds) 2018-07-08T06:47:27Z Smokitch joined #lisp 2018-07-08T06:48:45Z vtomole quit (Ping timeout: 252 seconds) 2018-07-08T06:49:40Z test1600 joined #lisp 2018-07-08T06:49:48Z Khisanth joined #lisp 2018-07-08T06:52:29Z doesthiswork quit (Quit: Leaving.) 2018-07-08T06:57:57Z vlatkoB joined #lisp 2018-07-08T06:58:20Z beach: ASDF seems to find all the .asd files in my hierarchy that existed when I put a link in quicklisp/local-projects. But it doesn't seem to find .asd file that I created after that, even though I have started a fresh SBCL. 2018-07-08T06:58:37Z nickenchuggets quit (Quit: Leaving) 2018-07-08T06:59:07Z beach: I have no idea what is going on. 2018-07-08T07:01:04Z test1600_ joined #lisp 2018-07-08T07:01:07Z andrei-n_ joined #lisp 2018-07-08T07:03:31Z graphene quit (Remote host closed the connection) 2018-07-08T07:04:35Z mfiano: This is a design of quicklisp 2018-07-08T07:04:44Z graphene joined #lisp 2018-07-08T07:04:53Z test1600 quit (Ping timeout: 276 seconds) 2018-07-08T07:05:11Z beach: Is there some action I need to take? 2018-07-08T07:05:23Z mfiano: https://github.com/quicklisp/quicklisp-client/blob/master/quicklisp/local-projects.lisp#L19-L20 2018-07-08T07:05:32Z andrei-n quit (Ping timeout: 276 seconds) 2018-07-08T07:05:37Z beach: In the past, I have put links in .cache, so local-projects is new to me. 2018-07-08T07:05:38Z akkad: recreate the local projects index? 2018-07-08T07:06:02Z beach: *sigh*, thanks. 2018-07-08T07:08:55Z mfiano: Basically, get used to calling ql:register-local-projects if you have a symlink in local-projects, or you create new systems in a sub-directory. 2018-07-08T07:09:12Z beach: I get it, thanks. 2018-07-08T07:09:29Z mfiano: Sure 2018-07-08T07:10:00Z beach: It's just that the technique I used before, i.e. putting symlinks in .cache didn't require any action other than restarting SBCL after I create a new system. 2018-07-08T07:10:04Z beach: Oh, well. 2018-07-08T07:10:13Z beach: So I was confused. 2018-07-08T07:10:58Z vlad_ joined #lisp 2018-07-08T07:12:01Z beach: I wonder why Xach did it that way. 2018-07-08T07:15:45Z beach: Er, not .cache. .local 2018-07-08T07:16:13Z beach: ~/.local/share/common-lisp as I recall. 2018-07-08T07:21:48Z graphene quit (Remote host closed the connection) 2018-07-08T07:22:19Z sito quit (Ping timeout: 256 seconds) 2018-07-08T07:23:01Z graphene joined #lisp 2018-07-08T07:24:30Z vlad_ is now known as Murii__ 2018-07-08T07:27:35Z aindilis quit (Ping timeout: 240 seconds) 2018-07-08T07:32:18Z milanj_ joined #lisp 2018-07-08T07:32:20Z aindilis joined #lisp 2018-07-08T07:45:03Z _whitelogger quit (Remote host closed the connection) 2018-07-08T07:46:55Z Kundry_Wag joined #lisp 2018-07-08T07:47:16Z _whitelogger joined #lisp 2018-07-08T07:48:10Z pierpal quit (Ping timeout: 260 seconds) 2018-07-08T07:49:33Z pseudonymous quit (Ping timeout: 264 seconds) 2018-07-08T07:51:40Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-08T07:52:59Z josemanuel joined #lisp 2018-07-08T07:53:41Z montxero joined #lisp 2018-07-08T08:00:32Z Kundry_Wag joined #lisp 2018-07-08T08:05:11Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-08T08:05:33Z random-nick joined #lisp 2018-07-08T08:05:46Z varjag joined #lisp 2018-07-08T08:11:13Z random-nick quit (Read error: Connection reset by peer) 2018-07-08T08:12:05Z littlelisper joined #lisp 2018-07-08T08:13:18Z brettgilio quit (Remote host closed the connection) 2018-07-08T08:14:53Z Arcaelyx quit (Ping timeout: 265 seconds) 2018-07-08T08:23:22Z pjb joined #lisp 2018-07-08T08:23:46Z pjb is now known as Guest32473 2018-07-08T08:24:21Z Guest32473 is now known as pjb` 2018-07-08T08:24:44Z pjb` is now known as pjb 2018-07-08T08:28:24Z random-nick joined #lisp 2018-07-08T08:33:53Z Arcaelyx joined #lisp 2018-07-08T08:36:22Z xantoz quit (Ping timeout: 264 seconds) 2018-07-08T08:36:55Z xantoz joined #lisp 2018-07-08T08:45:02Z littlelisper quit (Quit: leaving) 2018-07-08T08:55:17Z makomo joined #lisp 2018-07-08T08:55:46Z graphene quit (Remote host closed the connection) 2018-07-08T08:57:04Z graphene joined #lisp 2018-07-08T08:57:10Z graphene quit (Remote host closed the connection) 2018-07-08T08:58:23Z graphene joined #lisp 2018-07-08T09:01:39Z makomo quit (Ping timeout: 268 seconds) 2018-07-08T09:03:02Z graphene quit (Remote host closed the connection) 2018-07-08T09:04:20Z graphene joined #lisp 2018-07-08T09:08:17Z Murii__ quit (Ping timeout: 244 seconds) 2018-07-08T09:12:53Z rawste joined #lisp 2018-07-08T09:15:33Z graphene quit (Remote host closed the connection) 2018-07-08T09:15:41Z makomo joined #lisp 2018-07-08T09:16:45Z graphene joined #lisp 2018-07-08T09:28:04Z cage_ joined #lisp 2018-07-08T09:39:02Z _whitelogger quit (Remote host closed the connection) 2018-07-08T09:41:14Z _whitelogger joined #lisp 2018-07-08T09:44:39Z orivej joined #lisp 2018-07-08T09:47:18Z montxero quit (Quit: Lost terminal) 2018-07-08T09:48:10Z shka1 joined #lisp 2018-07-08T09:49:06Z Kundry_Wag joined #lisp 2018-07-08T09:52:12Z wigust- joined #lisp 2018-07-08T09:53:58Z Kundry_Wag quit (Ping timeout: 265 seconds) 2018-07-08T09:55:25Z wigust quit (Ping timeout: 265 seconds) 2018-07-08T09:57:13Z lumm joined #lisp 2018-07-08T09:59:52Z igemnace quit (Remote host closed the connection) 2018-07-08T10:02:54Z igemnace joined #lisp 2018-07-08T10:10:58Z Naergon joined #lisp 2018-07-08T10:13:15Z surya joined #lisp 2018-07-08T10:14:15Z markoong joined #lisp 2018-07-08T10:16:38Z pjb quit (Ping timeout: 276 seconds) 2018-07-08T10:17:56Z pjb joined #lisp 2018-07-08T10:20:42Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-08T10:21:02Z kajo quit (Ping timeout: 265 seconds) 2018-07-08T10:21:51Z robotoad quit (Quit: robotoad) 2018-07-08T10:25:02Z elfmacs joined #lisp 2018-07-08T10:33:03Z igemnace quit (Remote host closed the connection) 2018-07-08T10:37:31Z dddddd joined #lisp 2018-07-08T10:44:23Z andrei-n_ quit (Read error: Connection reset by peer) 2018-07-08T10:46:03Z andrei-n_ joined #lisp 2018-07-08T10:46:14Z random-nick quit (Read error: Connection reset by peer) 2018-07-08T10:46:19Z hjudt: a question about good practice: alexandria is considered pretty stable. can i rely on this by simply using this lib, or is it better to import selected symbols of it, or take the safe way and use alexandria:symbol in my code so one sees immediately where the symbol comes from? 2018-07-08T10:46:56Z hjudt: how do other people deal with this? 2018-07-08T10:48:38Z _death: I use :import-from 2018-07-08T10:49:24Z pjb: hjudt: in general, lisp software is stable. We don't have enough resources to change it every other day. 2018-07-08T10:49:52Z pjb: hjudt: the fastest CL software is sbcl which issues an new release each month. (You don't have to upgrade each month). 2018-07-08T10:50:47Z graphene quit (Read error: Connection reset by peer) 2018-07-08T10:52:19Z graphene joined #lisp 2018-07-08T10:58:55Z FreeBirdLjj joined #lisp 2018-07-08T11:01:48Z graphene quit (Remote host closed the connection) 2018-07-08T11:03:00Z graphene joined #lisp 2018-07-08T11:04:31Z beach: hjudt: I still recommend using explicit package prefixes. It makes it more obvious where the symbols come from to the person reading the code. 2018-07-08T11:05:03Z andrei-n_ quit (Ping timeout: 244 seconds) 2018-07-08T11:06:22Z flip214: beach: that's good advice -- though I'm not sure whether for such well-known things like alexandria the line length lost isn't a higher cost. 2018-07-08T11:10:31Z Xach: beach: My practice was to put things directly at the top-level always, whether directories, symlinks to single projects, or symlinks to .asd file. So the thing I made initially always worked. But later I realized that I add new .asd files in subdirectories sometimes, and the magic would fail, so I made a way to scan deeper manually. 2018-07-08T11:11:26Z beach: flip214: I don't think so, but I haven't checked. 2018-07-08T11:11:28Z shka1: flip214: alexandria is probabbly one of the few libs that are actually safe to :use 2018-07-08T11:12:44Z random-nick joined #lisp 2018-07-08T11:12:47Z beach: Xach: OK, but when I use ASDF directly and I put symbolic links in .share, ASDF picks up new, deeply nested .asd file as soon as I start a new session. Are you using a different mechanism from that of ASDF then? 2018-07-08T11:13:07Z beach: shka1: So nothing is ever added to Alexandria? 2018-07-08T11:13:32Z Xach: beach: Yes. 2018-07-08T11:13:38Z beach: Got it. 2018-07-08T11:13:40Z beach: Thanks. 2018-07-08T11:13:55Z Xach: My mechanism predates ASDF's. 2018-07-08T11:14:08Z beach: Oh, I see. 2018-07-08T11:14:41Z shka1: i don't know for certain if nothing 2018-07-08T11:14:47Z shka1: but it feels like it :P 2018-07-08T11:18:16Z shka1 quit (Quit: WeeChat 2.0.1) 2018-07-08T11:20:47Z zooey quit (Remote host closed the connection) 2018-07-08T11:21:05Z zooey joined #lisp 2018-07-08T11:23:16Z pjb: hjudt: beach: in any case, for released software, you would freeze the versions of your dependencies. So it doesn't matter if stuff is added o not. 2018-07-08T11:23:22Z aeth: Personally, I use :use only in two cases: (1) my own packages and (2) if the package is heavily tied to something else. (A bar/foo package that deals with the cl-foo bindings to foo might :use foo) 2018-07-08T11:23:44Z aeth: Although you could argue that in case #2 you're *more* likely to have name conflicts, not less 2018-07-08T11:24:14Z aeth: s/name conflicts/future name conflicts/ 2018-07-08T11:27:52Z rawste quit (Quit: Sleep....) 2018-07-08T11:32:17Z al-damiri quit (Quit: Connection closed for inactivity) 2018-07-08T11:33:57Z raynold quit (Quit: Connection closed for inactivity) 2018-07-08T11:34:47Z graphene quit (Remote host closed the connection) 2018-07-08T11:36:00Z graphene joined #lisp 2018-07-08T11:36:18Z Xach: beach: The algorithm is this: if there is a valid system index file in the local-projects directory, look inside it for the system with the given name and return the result. a system index file is valid if it exists and is newer than the timestamp of the directory in which it lives. 2018-07-08T11:36:46Z Xach: those rules mean that new files that don't affect the directory timestamp will not be found automatically. 2018-07-08T11:36:51Z Xach: new files or directories. 2018-07-08T11:38:07Z cage_ quit (Quit: Leaving) 2018-07-08T11:38:27Z Inline quit (Quit: Leaving) 2018-07-08T11:39:27Z xrash quit (Ping timeout: 240 seconds) 2018-07-08T11:40:53Z Xach: oh, and create an index if there isn't a valid one 2018-07-08T11:44:01Z Inline joined #lisp 2018-07-08T11:51:43Z Arcaelyx_ joined #lisp 2018-07-08T11:52:44Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-08T11:55:44Z andrei-n_ joined #lisp 2018-07-08T11:56:05Z Arcaelyx quit (Ping timeout: 276 seconds) 2018-07-08T11:58:05Z lumm quit (Ping timeout: 256 seconds) 2018-07-08T12:00:20Z nanoz quit (Ping timeout: 244 seconds) 2018-07-08T12:01:43Z rawste joined #lisp 2018-07-08T12:11:23Z nika quit (Quit: Leaving...) 2018-07-08T12:13:55Z python476 quit (Remote host closed the connection) 2018-07-08T12:15:54Z gabiruh quit (Ping timeout: 268 seconds) 2018-07-08T12:17:39Z beach: Xach: Thanks, makes sense. 2018-07-08T12:19:29Z Murii__ joined #lisp 2018-07-08T12:20:54Z gabiruh joined #lisp 2018-07-08T12:24:32Z surya quit (Ping timeout: 268 seconds) 2018-07-08T12:33:12Z surya joined #lisp 2018-07-08T12:34:52Z ExtraCrispy joined #lisp 2018-07-08T12:35:08Z ante_ joined #lisp 2018-07-08T12:35:45Z ante_ is now known as cymew 2018-07-08T12:36:39Z surya_ joined #lisp 2018-07-08T12:38:34Z surya quit (Ping timeout: 244 seconds) 2018-07-08T12:48:59Z cymew quit (Quit: Konversation terminated!) 2018-07-08T12:49:14Z cymew joined #lisp 2018-07-08T12:51:13Z xantoz quit (Ping timeout: 248 seconds) 2018-07-08T12:53:21Z xantoz joined #lisp 2018-07-08T12:57:16Z mejja joined #lisp 2018-07-08T12:57:18Z lumm joined #lisp 2018-07-08T12:57:19Z gabiruh quit (Read error: Connection reset by peer) 2018-07-08T12:57:58Z gabiruh joined #lisp 2018-07-08T13:00:33Z doesthiswork joined #lisp 2018-07-08T13:01:22Z surya_ quit (Remote host closed the connection) 2018-07-08T13:03:15Z test1600_ quit (Ping timeout: 256 seconds) 2018-07-08T13:05:52Z shka_ joined #lisp 2018-07-08T13:07:07Z LiamH joined #lisp 2018-07-08T13:10:38Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-08T13:10:54Z FreeBirdLjj joined #lisp 2018-07-08T13:11:30Z rippa joined #lisp 2018-07-08T13:20:07Z saki joined #lisp 2018-07-08T13:24:48Z graphene quit (Remote host closed the connection) 2018-07-08T13:26:03Z graphene joined #lisp 2018-07-08T13:31:13Z elfmacs quit (Ping timeout: 256 seconds) 2018-07-08T13:37:26Z beach: So if I implement the memory manager in Common Lisp, let's say on x86-64, and I create functions that read and write memory using 64-bit addresses, I don't take any great risk by assuming that such addresses will always be fixnums. On a typical existing operating system, I just restrict addresses to the lower half of the available 48-bit address space, and I am far from the fixnum limit. 2018-07-08T13:39:58Z didi quit (Ping timeout: 264 seconds) 2018-07-08T13:41:45Z gabiruh quit (Ping timeout: 264 seconds) 2018-07-08T13:42:41Z igemnace joined #lisp 2018-07-08T13:42:44Z Bike joined #lisp 2018-07-08T13:43:17Z TMA: beach: for the foreseeable future the full 64 bit address space will not be used, except maybe on supercomputer clusters 2018-07-08T13:43:26Z beach: Yeah. 2018-07-08T13:45:13Z gabiruh joined #lisp 2018-07-08T13:46:20Z graphene quit (Remote host closed the connection) 2018-07-08T13:46:29Z beach: For a while there I was worried about how to avoid bignums in the memory allocator. I thought perhaps I needed to inline the memory-access functions so that the compiler could elide the box/unbox pairs. But it won't be necessary for some time. 2018-07-08T13:47:34Z graphene joined #lisp 2018-07-08T13:49:35Z gabiruh quit (Ping timeout: 240 seconds) 2018-07-08T13:54:08Z Kundry_Wag joined #lisp 2018-07-08T13:55:41Z gabiruh joined #lisp 2018-07-08T13:56:48Z igemnace quit (Read error: Connection reset by peer) 2018-07-08T13:57:31Z igemnace joined #lisp 2018-07-08T13:57:38Z igemnace quit (Client Quit) 2018-07-08T14:02:10Z lumm quit (Read error: Connection reset by peer) 2018-07-08T14:02:12Z skapata joined #lisp 2018-07-08T14:04:09Z patlv joined #lisp 2018-07-08T14:17:50Z igemnace joined #lisp 2018-07-08T14:18:26Z Kundry_Wag quit (Remote host closed the connection) 2018-07-08T14:18:59Z Kundry_Wag joined #lisp 2018-07-08T14:22:20Z gabiruh quit (Ping timeout: 276 seconds) 2018-07-08T14:23:40Z Kundry_Wag quit (Ping timeout: 265 seconds) 2018-07-08T14:29:27Z flip214: beach: 32bit is not a target? 2018-07-08T14:29:58Z pjb: beach: I would have assumed that an OS could use the 64-bit for virtual addresses, but it looks like the x86-64 PMMU ignores the first 16 bits, and that in any case at most 52-bits can be used. Furthermore, the upper bound of the total deployed RAM on the planet seems to be barely 2^67 or 2^68, so unless your system allow you to address all the computers of the world, 64 bits are definitely too many. So yes, it's safe to assume 2018-07-08T14:29:58Z pjb: even 48 bits max. 2018-07-08T14:29:59Z beach: I think I won't attempt that. 2018-07-08T14:30:09Z beach: flip214: 2018-07-08T14:30:42Z beach: pjb: Yeah, I figured it out. Thanks. 2018-07-08T14:30:47Z graphene quit (Remote host closed the connection) 2018-07-08T14:31:21Z pjb: beach: I mean, I can see a lot of applications for a 72-bit memory space, at sites, like the GAFAs or the NSA… 2018-07-08T14:31:48Z beach: I don't think they would be interested in SICL anyway. 2018-07-08T14:32:03Z graphene joined #lisp 2018-07-08T14:32:14Z pjb: Who knows. We had somebody at ELS Paris working for the US army, IIRC. 2018-07-08T14:32:14Z flip214: 32bit would be the RPi2, for example... 2018-07-08T14:32:47Z beach: flip214: Too many constraints. 2018-07-08T14:32:56Z flip214: pjb: 72bit would be 64bit + a few segments? ;) 2018-07-08T14:32:58Z flip214: beach: ack. 2018-07-08T14:33:06Z flip214: and not enough registers ;) 2018-07-08T14:33:26Z pjb: Well, actually you'd want to address the hard disks too. 2018-07-08T14:33:55Z beach: pjb: Yes, definitely in LispOS, the disk is going to be THE address space. RAM will just be a cache. 2018-07-08T14:34:36Z beach: But with a bit of luck, they will increase the number of address bits by a few by the time I need that much disk. 2018-07-08T14:37:29Z patlv quit (Remote host closed the connection) 2018-07-08T14:37:51Z patlv joined #lisp 2018-07-08T14:38:36Z lumm joined #lisp 2018-07-08T14:42:06Z graphene quit (Remote host closed the connection) 2018-07-08T14:43:18Z graphene joined #lisp 2018-07-08T14:43:33Z cage_ joined #lisp 2018-07-08T14:45:34Z EvW1 joined #lisp 2018-07-08T14:46:27Z patlv quit (Ping timeout: 240 seconds) 2018-07-08T14:50:30Z cage_ quit (Remote host closed the connection) 2018-07-08T14:51:27Z Kundry_Wag joined #lisp 2018-07-08T14:51:42Z subroot joined #lisp 2018-07-08T14:52:09Z Kundry_W_ joined #lisp 2018-07-08T14:53:20Z k4rtik joined #lisp 2018-07-08T14:53:35Z cage_ joined #lisp 2018-07-08T14:53:39Z LiamH quit (Quit: Leaving.) 2018-07-08T14:55:26Z housel quit (Read error: Connection reset by peer) 2018-07-08T14:56:09Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-08T14:57:54Z cage__ joined #lisp 2018-07-08T14:58:01Z cage_ quit (Read error: Connection reset by peer) 2018-07-08T14:58:12Z phoe: Xach: I'm here to poke you about the Quicklisp dist update 2018-07-08T14:58:24Z phoe: Are you still stuck in the same place? If yes, how can I help you get unstuck? 2018-07-08T15:01:04Z nowhere_man joined #lisp 2018-07-08T15:01:53Z shifty quit (Ping timeout: 248 seconds) 2018-07-08T15:03:26Z jason_m joined #lisp 2018-07-08T15:04:11Z gabiruh joined #lisp 2018-07-08T15:05:50Z EvW1 quit (Ping timeout: 260 seconds) 2018-07-08T15:06:09Z Kundry_W_ quit (Remote host closed the connection) 2018-07-08T15:11:05Z k4rtik quit (Ping timeout: 276 seconds) 2018-07-08T15:11:21Z EvW joined #lisp 2018-07-08T15:13:07Z Kundry_Wag joined #lisp 2018-07-08T15:13:42Z Kundry_W_ joined #lisp 2018-07-08T15:14:22Z andrei-n_ quit (Read error: Connection reset by peer) 2018-07-08T15:15:45Z andrei-n_ joined #lisp 2018-07-08T15:17:35Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-08T15:18:30Z kerframil joined #lisp 2018-07-08T15:19:17Z Xach: phoe: there are a few issues i can avoid or work around to put out a new release by tuesday. 2018-07-08T15:19:43Z Xach: I'm going to use an old sbcl to avoid the conium breakage and its consequences 2018-07-08T15:19:52Z Xach: I'm going to use debian 8 to avoid the gsll breakage 2018-07-08T15:20:09Z Xach: there's a bordeaux-threads semaphore problem that remains, and a few more too 2018-07-08T15:22:47Z Xach: I really want to progress to debian 9 and the latest sbcl, but that breaks a lot of stuff. 2018-07-08T15:33:24Z light2yellow joined #lisp 2018-07-08T15:35:44Z sjl joined #lisp 2018-07-08T15:35:58Z housel joined #lisp 2018-07-08T15:52:38Z swampflared joined #lisp 2018-07-08T15:54:00Z mrcom quit (Quit: Leaving) 2018-07-08T15:57:54Z Pixel_Outlaw joined #lisp 2018-07-08T16:00:03Z mflem joined #lisp 2018-07-08T16:00:17Z k4rtik joined #lisp 2018-07-08T16:05:49Z gabiruh quit (Read error: No route to host) 2018-07-08T16:07:08Z mejja quit (Quit: mejja) 2018-07-08T16:10:20Z nowhere_man quit (Ping timeout: 276 seconds) 2018-07-08T16:12:24Z jfb4 quit (Ping timeout: 256 seconds) 2018-07-08T16:13:24Z rawste quit (Quit: Sleep....) 2018-07-08T16:17:43Z patlv joined #lisp 2018-07-08T16:23:14Z saki quit (Read error: Connection reset by peer) 2018-07-08T16:23:18Z carmack joined #lisp 2018-07-08T16:23:53Z ExtraCrispy quit (Ping timeout: 276 seconds) 2018-07-08T16:25:16Z saki joined #lisp 2018-07-08T16:28:04Z rumbler31 quit (Read error: Connection reset by peer) 2018-07-08T16:28:50Z rumbler31 joined #lisp 2018-07-08T16:32:23Z rawste joined #lisp 2018-07-08T16:35:46Z subroot quit (Read error: Connection reset by peer) 2018-07-08T16:36:22Z cage__ quit (Ping timeout: 264 seconds) 2018-07-08T16:39:18Z cage_ joined #lisp 2018-07-08T16:40:52Z nowhere_man joined #lisp 2018-07-08T16:41:10Z quazimodo quit (Ping timeout: 264 seconds) 2018-07-08T16:41:22Z gabiruh joined #lisp 2018-07-08T16:42:40Z lumm_ joined #lisp 2018-07-08T16:42:47Z quazimodo joined #lisp 2018-07-08T16:44:47Z lumm quit (Ping timeout: 245 seconds) 2018-07-08T16:44:47Z lumm_ is now known as lumm 2018-07-08T16:45:22Z EvW quit (Ping timeout: 264 seconds) 2018-07-08T16:47:48Z cage__ joined #lisp 2018-07-08T16:47:49Z EvW1 joined #lisp 2018-07-08T16:48:13Z cage_ quit (Read error: Connection reset by peer) 2018-07-08T16:52:27Z Murii__ quit (Ping timeout: 240 seconds) 2018-07-08T16:57:31Z slyrus1 quit (Quit: slyrus1) 2018-07-08T16:58:50Z Kundry_W_ quit 2018-07-08T17:11:47Z Urfin joined #lisp 2018-07-08T17:13:37Z xantoz quit (Ping timeout: 248 seconds) 2018-07-08T17:14:05Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-08T17:14:42Z FreeBirdLjj joined #lisp 2018-07-08T17:16:08Z robotoad joined #lisp 2018-07-08T17:16:18Z xantoz joined #lisp 2018-07-08T17:19:07Z FreeBirdLjj quit (Ping timeout: 244 seconds) 2018-07-08T17:20:47Z jackdaniel: Xach: what bt semaphore problem? 2018-07-08T17:25:04Z shka_: finally home 2018-07-08T17:27:35Z lumm quit (Ping timeout: 276 seconds) 2018-07-08T17:29:05Z angavrilov is now known as angavrilov_ 2018-07-08T17:29:05Z patlv quit (Ping timeout: 248 seconds) 2018-07-08T17:29:50Z devon joined #lisp 2018-07-08T17:33:36Z skidd0 joined #lisp 2018-07-08T17:34:17Z skidd0: Hello, has anyone worked with bknr and made their own encoder and decoder methods? 2018-07-08T17:34:50Z skidd0: Tdata/tutorial.lisp file only says that (2) user-defined object syste,s need to register their own 2018-07-08T17:35:10Z rawste quit (Quit: Sleep....) 2018-07-08T17:35:16Z skidd0: and the only code show is 2018-07-08T17:35:24Z skidd0: Function ENCODE (OBJECT STREAM) 2018-07-08T17:35:36Z skidd0: Function DECODE (STREAM) =< OBJECT 2018-07-08T17:36:06Z skidd0: I am unsure what it is telling me to do here 2018-07-08T17:36:35Z rawste joined #lisp 2018-07-08T17:36:45Z rawste quit (Client Quit) 2018-07-08T17:38:35Z Urfin quit (Ping timeout: 240 seconds) 2018-07-08T17:43:06Z rawste joined #lisp 2018-07-08T17:45:37Z mood: skidd0: Looks like custom encoding/decoding happens using the generic functions encode-object and decode-object, on which you can define methods 2018-07-08T17:46:43Z cage__ quit (Remote host closed the connection) 2018-07-08T17:46:57Z mood: There's also define-persistent-class, but I'm not sure what that does 2018-07-08T17:47:53Z skidd0: so I have a LOCAL-TIME time stamp that needs to be encoded. I would make a defmethod specialized on the timestamp 2018-07-08T17:48:23Z skidd0: so encoding it might jsut be as easy as sending the 2018-07-#### to a binary format? 2018-07-08T17:48:38Z mood: I think so, yes, and you also need to pick a unique tag character, it seems 2018-07-08T17:48:47Z skidd0: and decode that reliably to the timestamp 2018-07-08T17:48:59Z skidd0: what's a tag character? 2018-07-08T17:49:04Z skidd0: where are you finding this? 2018-07-08T17:49:55Z mood: I'm looking at the code in src/data/encoding.lisp and src/data/object.lisp here: https://github.com/hanshuebner/bknr-datastore 2018-07-08T17:50:16Z skidd0: okay yeah cool. I was just looking at that encoding file for insight 2018-07-08T17:50:27Z skidd0: i figure reading the code is a good habit to get into 2018-07-08T17:52:40Z patlv joined #lisp 2018-07-08T17:53:08Z robotoad quit (Quit: robotoad) 2018-07-08T18:03:27Z robotoad joined #lisp 2018-07-08T18:05:02Z rawste quit (Ping timeout: 265 seconds) 2018-07-08T18:06:51Z EvW1 quit (Ping timeout: 240 seconds) 2018-07-08T18:13:03Z EvW joined #lisp 2018-07-08T18:17:24Z littlelisper joined #lisp 2018-07-08T18:20:32Z littlelisper quit (Client Quit) 2018-07-08T18:24:02Z _whitelogger quit (Remote host closed the connection) 2018-07-08T18:26:15Z _whitelogger joined #lisp 2018-07-08T18:28:27Z gabiruh quit (Ping timeout: 240 seconds) 2018-07-08T18:30:11Z gabiruh joined #lisp 2018-07-08T18:34:40Z dilated_dinosaur quit (Remote host closed the connection) 2018-07-08T18:34:48Z al-damiri joined #lisp 2018-07-08T18:35:09Z pseudonymous joined #lisp 2018-07-08T18:36:22Z patlv quit (Ping timeout: 264 seconds) 2018-07-08T18:39:08Z phoe: Is there a function that splits a sequence into two lists based on whether they satisfy a predicate or not? 2018-07-08T18:39:48Z Bike: no. 2018-07-08T18:39:53Z buffergn0me joined #lisp 2018-07-08T18:40:27Z Bike: pretty easy to write a loop for it, of course. 2018-07-08T18:43:06Z dilated_dinosaur joined #lisp 2018-07-08T18:49:10Z Xach: jackdaniel: stuff that relies on bt-semaphore 2018-07-08T18:49:21Z Xach: jackdaniel: shellpool is one 2018-07-08T18:49:37Z pjb: There's: (com.informatimago.common-lisp.cesarum.list:equivalence-classes '(1 2 3 4 5 6 7 8 9) :test (lambda (a b) (eq (not (oddp a)) (not (oddp b))))) #| --> ((8 6 4 2) (9 7 5 3 1)) |# 2018-07-08T18:55:11Z aeth: phoe: When I've had to do that I think I determined that the easiest way was a loop with two collects 2018-07-08T18:56:40Z aeth: hmm, wait, I think that's wrong 2018-07-08T18:57:14Z pjb: Why limit yourself to 2 classe? (com.informatimago.common-lisp.cesarum.list:equivalence-classes '(1 2 3 4 5 6 7 8 9) :test (lambda (a b) (zerop (mod (- a b) 3)))) #| --> ((9 6 3) (8 5 2) (7 4 1)) |# 2018-07-08T18:57:57Z random-nick quit (Read error: Connection reset by peer) 2018-07-08T18:58:28Z kaun_ joined #lisp 2018-07-08T18:59:22Z Murii__ joined #lisp 2018-07-08T19:03:34Z aeth: (loop for item in (alexandria:iota 10) if (evenp item) collect item into evens else collect item into odds finally (return (values evens odds))) 2018-07-08T19:04:00Z aeth: I *think* that's the simplest way to do it in standard CL. 2018-07-08T19:11:28Z Bike: loop for item below 10 2018-07-08T19:11:51Z edgar-rft quit (Remote host closed the connection) 2018-07-08T19:11:56Z aeth: Bike: yes, but I was writing it so you could trivially refactor it into something like this: (defun split-list (list function) (loop for item in list if (funcall function item) collect item into evens else collect item into odds finally (return (values evens odds)))) 2018-07-08T19:12:22Z aeth: (I guess function should be called test) 2018-07-08T19:12:50Z kaun_ quit 2018-07-08T19:13:58Z kaun_ joined #lisp 2018-07-08T19:15:05Z cymew quit (Quit: Konversation terminated!) 2018-07-08T19:15:19Z asarch joined #lisp 2018-07-08T19:18:01Z Xach: (let ((in (remove-if-not test list)) (values in (set-difference list in)))))? 2018-07-08T19:18:27Z Kundry_Wag joined #lisp 2018-07-08T19:18:47Z Xach: (values (remove-if-not test list) (remove-if test list))? 2018-07-08T19:21:13Z jason_m quit (Quit: Leaving) 2018-07-08T19:23:13Z Xach is late to the party 2018-07-08T19:28:27Z mfiano: phoe: A concise way is with #'partition from serapeum, also re-exported from au: 2018-07-08T19:28:30Z jackdaniel: Xach: so to confirm - the problem is not with (new) bt semaphore implementation, but rather with bt-sempahore? 2018-07-08T19:28:55Z mfiano: phoe: (au:partition #'evenp (au:iota 10)) 2018-07-08T19:29:36Z Xach: jackdaniel: it's with bt-semaphore and the things that use it 2018-07-08T19:30:13Z mfiano: phoe: Will return multiple values. Just wrap in multiple-value-list if you want a list of lists 2018-07-08T19:30:44Z jackdaniel: Xach: OK, thanks. I've got scared I've screwed something up in bt 2018-07-08T19:31:51Z graphene quit (Remote host closed the connection) 2018-07-08T19:32:36Z Xach: https://github.com/rmoritz/bt-semaphore/issues/4 2018-07-08T19:32:50Z k4rtik quit (Ping timeout: 255 seconds) 2018-07-08T19:33:09Z graphene joined #lisp 2018-07-08T19:33:27Z brendyn quit (Ping timeout: 244 seconds) 2018-07-08T19:39:14Z jackdaniel: if I had to guess it is broken because bt-semaphore has (:use :cl :bordeaux-threads) in its package while bordeaux threads exports conflicting symbols 2018-07-08T19:39:36Z jackdaniel: so bt-semaphore tries to overwrite functions/macros in bordeaux-threads package (because it has its symbols used) 2018-07-08T19:42:21Z jackdaniel: I've added appropriate comment to the linked issue 2018-07-08T19:42:40Z Xach: thanks 2018-07-08T19:44:42Z random-nick joined #lisp 2018-07-08T19:44:56Z xrash joined #lisp 2018-07-08T19:47:28Z graphene quit (Remote host closed the connection) 2018-07-08T19:48:44Z graphene joined #lisp 2018-07-08T19:49:10Z devon quit (Ping timeout: 260 seconds) 2018-07-08T19:49:33Z test1600 joined #lisp 2018-07-08T19:51:06Z Xach: cl-async's libcrypto stuff is also a problemo 2018-07-08T20:01:33Z zxcvz quit (Quit: zxcvz) 2018-07-08T20:06:31Z asarch quit (Read error: Connection reset by peer) 2018-07-08T20:07:05Z rozenglass joined #lisp 2018-07-08T20:10:13Z kaun joined #lisp 2018-07-08T20:11:41Z kaun_ quit (Ping timeout: 244 seconds) 2018-07-08T20:15:03Z shka_ quit (Ping timeout: 256 seconds) 2018-07-08T20:17:50Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2018-07-08T20:20:47Z angavrilov_ quit (Remote host closed the connection) 2018-07-08T20:21:14Z lumm joined #lisp 2018-07-08T20:22:25Z test1600 quit (Ping timeout: 256 seconds) 2018-07-08T20:24:36Z andrei-n_ quit (Ping timeout: 244 seconds) 2018-07-08T20:25:18Z ebrasca` joined #lisp 2018-07-08T20:27:05Z ebrasca quit (Ping timeout: 240 seconds) 2018-07-08T20:27:42Z doanyway joined #lisp 2018-07-08T20:28:29Z patlv joined #lisp 2018-07-08T20:31:29Z asarch joined #lisp 2018-07-08T20:33:28Z skidd0 quit (Quit: WeeChat 2.1) 2018-07-08T20:35:06Z aeth: Xach: I think I'd go with your second solution in a quick script or the REPL (simplest in that it's the shortest amount of code), and my solution in a program (simplest solution that iterates through the list once?). 2018-07-08T20:35:22Z Xach: yeah, it's wasteful 2018-07-08T20:35:29Z Xach: but of course a good compiler should detect and rewrite it!! 2018-07-08T20:36:53Z DemolitionMan joined #lisp 2018-07-08T20:37:17Z didi joined #lisp 2018-07-08T20:37:49Z aeth: Xach: yeah, but that's the kind of thing where I'm sure every compiler author would say "patches welcome!" 2018-07-08T20:38:02Z lumm quit (Ping timeout: 244 seconds) 2018-07-08T20:38:15Z aeth: (And then you wind up doing something that's harder than the entire program you were trying to do) 2018-07-08T20:38:35Z Smokitch quit 2018-07-08T20:39:35Z NotSpooky joined #lisp 2018-07-08T20:44:14Z asarch quit (Ping timeout: 244 seconds) 2018-07-08T20:44:45Z patlv quit (Ping timeout: 244 seconds) 2018-07-08T20:47:32Z kerframil quit (Quit: Leaving) 2018-07-08T20:50:33Z k4rtik joined #lisp 2018-07-08T20:52:38Z Murii__ quit (Remote host closed the connection) 2018-07-08T20:58:42Z igemnace quit (Quit: WeeChat 2.1) 2018-07-08T20:59:20Z pierpal joined #lisp 2018-07-08T21:00:13Z kaun quit 2018-07-08T21:00:18Z fikka joined #lisp 2018-07-08T21:01:33Z ebrasca` quit (Read error: Connection reset by peer) 2018-07-08T21:01:51Z kaun joined #lisp 2018-07-08T21:02:48Z vlatkoB quit (Remote host closed the connection) 2018-07-08T21:07:31Z kaun: Will a WebAssembly-implemented Common Lisp make it easier to get at a GUI portably? Right now, I imagine GUI CL apps aren't feasible on OSX & Windows. 2018-07-08T21:07:35Z k4rtik quit (Ping timeout: 240 seconds) 2018-07-08T21:08:30Z kaun: CLIM uptake exists? Cells-GTK uptake exists? 2018-07-08T21:11:10Z kaun quit 2018-07-08T21:11:49Z NotSpooky: Lol, I was just searching for a portable CL GUI. 2018-07-08T21:15:00Z josemanuel quit (Quit: leaving) 2018-07-08T21:16:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-08T21:19:35Z froggey quit (Ping timeout: 240 seconds) 2018-07-08T21:21:26Z froggey joined #lisp 2018-07-08T21:24:19Z shifty joined #lisp 2018-07-08T21:28:09Z NotSpooky quit (Ping timeout: 244 seconds) 2018-07-08T21:31:33Z Kundry_Wag quit (Remote host closed the connection) 2018-07-08T21:34:08Z DemolitionMan quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2018-07-08T21:34:12Z NotSpooky joined #lisp 2018-07-08T21:38:48Z graphene quit (Remote host closed the connection) 2018-07-08T21:39:55Z patlv joined #lisp 2018-07-08T21:40:04Z graphene joined #lisp 2018-07-08T21:41:17Z fikka joined #lisp 2018-07-08T21:49:17Z Kundry_Wag joined #lisp 2018-07-08T21:49:59Z Kundry_W_ joined #lisp 2018-07-08T21:51:36Z Kundry_W_ quit (Remote host closed the connection) 2018-07-08T21:53:27Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-08T21:55:50Z stacksmith quit (Read error: Connection reset by peer) 2018-07-08T21:57:34Z doanyway quit (Remote host closed the connection) 2018-07-08T21:59:45Z rozenglass quit (Remote host closed the connection) 2018-07-08T22:00:22Z rozenglass joined #lisp 2018-07-08T22:01:30Z kerframil joined #lisp 2018-07-08T22:01:48Z edgar-rft joined #lisp 2018-07-08T22:05:24Z w17t joined #lisp 2018-07-08T22:06:00Z stacksmith joined #lisp 2018-07-08T22:13:28Z jfb4 joined #lisp 2018-07-08T22:14:27Z shifty quit (Ping timeout: 240 seconds) 2018-07-08T22:14:40Z DingoSaar joined #lisp 2018-07-08T22:16:50Z DingoSaar quit (Remote host closed the connection) 2018-07-08T22:17:19Z DingoSaar joined #lisp 2018-07-08T22:17:28Z random-nick quit (Read error: Connection reset by peer) 2018-07-08T22:19:54Z Kundry_W_ joined #lisp 2018-07-08T22:27:39Z LiamH joined #lisp 2018-07-08T22:31:47Z didi left #lisp 2018-07-08T22:41:55Z EvW quit (Ping timeout: 245 seconds) 2018-07-08T22:47:50Z graphene quit (Remote host closed the connection) 2018-07-08T22:49:25Z graphene joined #lisp 2018-07-08T22:52:35Z varjag quit (Ping timeout: 256 seconds) 2018-07-08T22:53:46Z xantoz quit (Ping timeout: 264 seconds) 2018-07-08T22:54:20Z xantoz joined #lisp 2018-07-08T22:55:40Z jack_rabbit joined #lisp 2018-07-08T22:58:13Z w17t quit (Quit: Leaving) 2018-07-08T23:03:12Z varjag joined #lisp 2018-07-08T23:07:43Z varjag quit (Ping timeout: 268 seconds) 2018-07-08T23:15:29Z MoziM quit (Quit: WeeChat 2.1) 2018-07-08T23:15:58Z k4rtik joined #lisp 2018-07-08T23:15:58Z pierpa joined #lisp 2018-07-08T23:21:19Z mange joined #lisp 2018-07-08T23:26:30Z Kaisyu joined #lisp 2018-07-08T23:28:02Z skidd0 joined #lisp 2018-07-08T23:30:32Z fikka quit (Ping timeout: 268 seconds) 2018-07-08T23:32:42Z Naergon quit (Read error: Connection reset by peer) 2018-07-08T23:36:00Z gabiruh quit (Read error: Connection reset by peer) 2018-07-08T23:37:55Z makomo quit (Ping timeout: 256 seconds) 2018-07-08T23:39:22Z patlv quit (Ping timeout: 245 seconds) 2018-07-08T23:40:07Z NotSpooky quit (Quit: Leaving) 2018-07-08T23:41:26Z zotan quit (Ping timeout: 265 seconds) 2018-07-08T23:41:33Z zotan joined #lisp 2018-07-08T23:46:22Z fikka joined #lisp 2018-07-08T23:48:23Z Kundry_W_ quit (Remote host closed the connection) 2018-07-08T23:50:57Z fikka quit (Ping timeout: 256 seconds) 2018-07-08T23:52:34Z jack_rabbit quit (Ping timeout: 264 seconds) 2018-07-08T23:54:05Z jibanes quit (Ping timeout: 240 seconds) 2018-07-08T23:56:23Z jibanes joined #lisp 2018-07-08T23:56:47Z fikka joined #lisp 2018-07-08T23:58:30Z buffergn0me quit (Ping timeout: 244 seconds) 2018-07-09T00:00:53Z zotan quit (Quit: ZNC 1.6.5+deb1 - http://znc.in) 2018-07-09T00:01:37Z fikka quit (Ping timeout: 248 seconds) 2018-07-09T00:01:42Z buffergn0me joined #lisp 2018-07-09T00:02:55Z k4rtik quit (Ping timeout: 260 seconds) 2018-07-09T00:09:47Z slyrus1 joined #lisp 2018-07-09T00:11:00Z Kundry_Wag joined #lisp 2018-07-09T00:11:38Z Kundry_W_ joined #lisp 2018-07-09T00:12:22Z luminous_arbour joined #lisp 2018-07-09T00:14:46Z pyx joined #lisp 2018-07-09T00:15:35Z k4rtik joined #lisp 2018-07-09T00:15:43Z pyx quit (Client Quit) 2018-07-09T00:15:44Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-09T00:16:47Z fikka joined #lisp 2018-07-09T00:19:17Z kajo joined #lisp 2018-07-09T00:20:12Z buffergn0me quit (Ping timeout: 244 seconds) 2018-07-09T00:21:35Z fikka quit (Ping timeout: 260 seconds) 2018-07-09T00:22:14Z FreeBirdLjj joined #lisp 2018-07-09T00:24:53Z buffergn0me joined #lisp 2018-07-09T00:26:46Z FreeBirdLjj quit (Ping timeout: 264 seconds) 2018-07-09T00:27:16Z fikka joined #lisp 2018-07-09T00:27:50Z papachan joined #lisp 2018-07-09T00:30:56Z EvW joined #lisp 2018-07-09T00:32:05Z patlv joined #lisp 2018-07-09T00:32:41Z fikka quit (Ping timeout: 276 seconds) 2018-07-09T00:36:02Z parjanya quit (Read error: Connection reset by peer) 2018-07-09T00:36:08Z jasmith quit (Remote host closed the connection) 2018-07-09T00:36:12Z minion quit (Disconnected by services) 2018-07-09T00:36:17Z parjanya joined #lisp 2018-07-09T00:36:17Z jasmith joined #lisp 2018-07-09T00:37:15Z buffergn0me quit (Ping timeout: 244 seconds) 2018-07-09T00:39:48Z Kundry_Wag joined #lisp 2018-07-09T00:40:21Z markoong quit (Ping timeout: 244 seconds) 2018-07-09T00:40:27Z dvdmuckle quit (Ping timeout: 240 seconds) 2018-07-09T00:43:27Z dvdmuckle joined #lisp 2018-07-09T00:47:43Z fikka joined #lisp 2018-07-09T00:49:24Z Kundry_W_ quit 2018-07-09T00:50:16Z luminous_arbour quit (Read error: Connection reset by peer) 2018-07-09T00:52:10Z Arcaelyx_ is now known as Arcaelyx 2018-07-09T00:52:34Z fikka quit (Ping timeout: 264 seconds) 2018-07-09T00:52:56Z rozenglass quit (Read error: Connection reset by peer) 2018-07-09T00:55:20Z gabiruh joined #lisp 2018-07-09T00:59:03Z buffergn0me joined #lisp 2018-07-09T01:04:02Z montxero joined #lisp 2018-07-09T01:05:30Z buffergn0me quit (Ping timeout: 268 seconds) 2018-07-09T01:07:57Z fikka joined #lisp 2018-07-09T01:10:24Z dddddd quit (Remote host closed the connection) 2018-07-09T01:12:33Z fikka quit (Ping timeout: 256 seconds) 2018-07-09T01:16:31Z skidd0 quit (Quit: WeeChat 2.1) 2018-07-09T01:18:25Z fikka joined #lisp 2018-07-09T01:23:25Z fikka quit (Ping timeout: 260 seconds) 2018-07-09T01:24:47Z zooey quit (Remote host closed the connection) 2018-07-09T01:24:59Z zooey joined #lisp 2018-07-09T01:28:27Z fikka joined #lisp 2018-07-09T01:33:22Z fikka quit (Ping timeout: 264 seconds) 2018-07-09T01:34:39Z milanj_ quit (Quit: This computer has gone to sleep) 2018-07-09T01:36:50Z k4rtik quit (Ping timeout: 260 seconds) 2018-07-09T01:40:36Z kerrhau joined #lisp 2018-07-09T01:40:37Z kerrhau quit (Changing host) 2018-07-09T01:40:37Z kerrhau joined #lisp 2018-07-09T01:47:55Z FreeBirdLjj joined #lisp 2018-07-09T01:48:58Z fikka joined #lisp 2018-07-09T01:53:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-09T01:56:56Z jason_m joined #lisp 2018-07-09T01:59:23Z fikka joined #lisp 2018-07-09T02:01:01Z thekolb quit (Read error: Connection reset by peer) 2018-07-09T02:01:01Z ioa quit (Read error: Connection reset by peer) 2018-07-09T02:01:09Z ioa joined #lisp 2018-07-09T02:01:39Z mrottenkolber joined #lisp 2018-07-09T02:01:53Z jasmith quit (Quit: Leaving) 2018-07-09T02:02:03Z mrottenkolber is now known as Guest24297 2018-07-09T02:02:37Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-09T02:03:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-09T02:05:21Z patlv quit (Ping timeout: 248 seconds) 2018-07-09T02:05:57Z EvW quit (Ping timeout: 265 seconds) 2018-07-09T02:09:26Z fikka joined #lisp 2018-07-09T02:11:23Z subroot joined #lisp 2018-07-09T02:14:10Z fikka quit (Ping timeout: 260 seconds) 2018-07-09T02:15:16Z sjl quit (Quit: WeeChat 2.2-dev) 2018-07-09T02:15:27Z flazh quit (Ping timeout: 256 seconds) 2018-07-09T02:15:28Z pierpa quit (Quit: Page closed) 2018-07-09T02:17:55Z patlv joined #lisp 2018-07-09T02:19:43Z fikka joined #lisp 2018-07-09T02:21:01Z AetherWind joined #lisp 2018-07-09T02:24:21Z fikka quit (Ping timeout: 264 seconds) 2018-07-09T02:33:16Z pierpal quit (Quit: Poof) 2018-07-09T02:33:31Z papachan quit (Quit: Saliendo) 2018-07-09T02:33:35Z pierpal joined #lisp 2018-07-09T02:34:34Z lavaflow_ quit (Ping timeout: 264 seconds) 2018-07-09T02:35:35Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-09T02:38:05Z gabiruh quit (Ping timeout: 260 seconds) 2018-07-09T02:38:08Z k4rtik joined #lisp 2018-07-09T02:40:04Z fikka joined #lisp 2018-07-09T02:43:57Z montxero quit (Quit: Lost terminal) 2018-07-09T02:44:47Z fikka quit (Ping timeout: 268 seconds) 2018-07-09T02:44:51Z jasmith joined #lisp 2018-07-09T02:49:05Z gabiruh joined #lisp 2018-07-09T02:52:40Z k4rtik quit (Ping timeout: 260 seconds) 2018-07-09T02:55:16Z orivej quit (Ping timeout: 268 seconds) 2018-07-09T03:00:22Z fikka joined #lisp 2018-07-09T03:03:50Z varjag joined #lisp 2018-07-09T03:04:29Z subroot quit (Read error: Connection reset by peer) 2018-07-09T03:04:47Z jason_m quit (Ping timeout: 276 seconds) 2018-07-09T03:05:09Z fikka quit (Ping timeout: 264 seconds) 2018-07-09T03:08:24Z varjag quit (Ping timeout: 260 seconds) 2018-07-09T03:13:21Z doanyway joined #lisp 2018-07-09T03:13:24Z beach: Good morning everyone! 2018-07-09T03:16:56Z Pixel_Outlaw quit (Quit: Leaving) 2018-07-09T03:20:40Z fikka joined #lisp 2018-07-09T03:20:41Z shka_ joined #lisp 2018-07-09T03:24:20Z LiamH quit (Quit: Leaving.) 2018-07-09T03:24:28Z saki quit (Ping timeout: 256 seconds) 2018-07-09T03:25:35Z fikka quit (Ping timeout: 276 seconds) 2018-07-09T03:30:33Z lavaflow_ joined #lisp 2018-07-09T03:36:37Z p_l: https://onedrive.live.com/?authkey=%21AEPU1MVC2Ln-avA&cid=CC8708A7CAEAF7A6&id=CC8708A7CAEAF7A6%21572661&parId=CC8708A7CAEAF7A6%217522&o=OneUp Two lispms, one box ;) 2018-07-09T03:36:42Z p_l: (wish it was mine) 2018-07-09T03:37:03Z lavaflow_ quit (Ping timeout: 256 seconds) 2018-07-09T03:39:00Z fikka joined #lisp 2018-07-09T03:44:17Z fikka quit (Ping timeout: 244 seconds) 2018-07-09T03:45:13Z raynold joined #lisp 2018-07-09T03:49:34Z fikka joined #lisp 2018-07-09T03:50:43Z kerframil quit (Quit: Leaving) 2018-07-09T03:54:22Z fikka quit (Ping timeout: 264 seconds) 2018-07-09T03:56:35Z saki joined #lisp 2018-07-09T03:57:12Z SaganMan quit (Ping timeout: 244 seconds) 2018-07-09T03:57:21Z skapata quit (Remote host closed the connection) 2018-07-09T03:59:10Z xantoz quit (Ping timeout: 264 seconds) 2018-07-09T03:59:14Z pjb` joined #lisp 2018-07-09T03:59:45Z xantoz joined #lisp 2018-07-09T04:01:02Z pjb quit (Ping timeout: 245 seconds) 2018-07-09T04:04:48Z Bike quit (Quit: Lost terminal) 2018-07-09T04:09:54Z fikka joined #lisp 2018-07-09T04:11:38Z kajo quit (Quit: From my rotting body, flowers shall grow and I am in them and that is eternity. -- E. M.) 2018-07-09T04:12:07Z kajo joined #lisp 2018-07-09T04:14:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-09T04:17:31Z parjanya quit (Remote host closed the connection) 2018-07-09T04:17:52Z patlv quit (Ping timeout: 244 seconds) 2018-07-09T04:18:25Z gabiruh quit (Ping timeout: 256 seconds) 2018-07-09T04:20:07Z SaganMan joined #lisp 2018-07-09T04:20:20Z fikka joined #lisp 2018-07-09T04:21:03Z caltelt joined #lisp 2018-07-09T04:23:10Z parjanya joined #lisp 2018-07-09T04:25:06Z fikka quit (Ping timeout: 244 seconds) 2018-07-09T04:25:20Z sfa joined #lisp 2018-07-09T04:27:42Z mflem quit (Ping timeout: 245 seconds) 2018-07-09T04:29:39Z mflem joined #lisp 2018-07-09T04:29:47Z pjb` quit (Ping timeout: 245 seconds) 2018-07-09T04:31:35Z doanyway quit (Remote host closed the connection) 2018-07-09T04:33:00Z mlf|2 joined #lisp 2018-07-09T04:35:02Z parjanya quit (Read error: Connection reset by peer) 2018-07-09T04:35:33Z lavaflow_ joined #lisp 2018-07-09T04:36:02Z mflem quit (Ping timeout: 245 seconds) 2018-07-09T04:36:24Z parjanya joined #lisp 2018-07-09T04:40:19Z fikka joined #lisp 2018-07-09T04:41:28Z pjb` joined #lisp 2018-07-09T04:43:04Z flazh joined #lisp 2018-07-09T04:44:49Z fikka quit (Ping timeout: 248 seconds) 2018-07-09T04:47:19Z quazimodo quit (Ping timeout: 256 seconds) 2018-07-09T04:49:10Z quazimodo joined #lisp 2018-07-09T04:49:27Z pjb` quit (Ping timeout: 240 seconds) 2018-07-09T04:50:54Z pjb` joined #lisp 2018-07-09T04:51:04Z caltelt quit (Ping timeout: 260 seconds) 2018-07-09T04:53:55Z rippa joined #lisp 2018-07-09T04:54:39Z doanyway joined #lisp 2018-07-09T04:56:16Z pjb` quit (Ping timeout: 256 seconds) 2018-07-09T04:58:23Z pjb` joined #lisp 2018-07-09T05:00:59Z fikka joined #lisp 2018-07-09T05:01:38Z andrei-n_ joined #lisp 2018-07-09T05:04:38Z Inline quit (Quit: Leaving) 2018-07-09T05:05:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-09T05:11:28Z fikka joined #lisp 2018-07-09T05:15:13Z SaganMan quit (Ping timeout: 244 seconds) 2018-07-09T05:16:34Z fikka quit (Ping timeout: 264 seconds) 2018-07-09T05:17:38Z doanyway quit 2018-07-09T05:20:23Z brendyn joined #lisp 2018-07-09T05:23:02Z k4rtik joined #lisp 2018-07-09T05:25:35Z DingoSaar quit (Ping timeout: 240 seconds) 2018-07-09T05:27:25Z housel quit (Remote host closed the connection) 2018-07-09T05:29:12Z milanj joined #lisp 2018-07-09T05:29:29Z sfa quit (Quit: Lost terminal) 2018-07-09T05:31:11Z k4rtik quit (Quit: WeeChat 2.1) 2018-07-09T05:31:27Z fikka joined #lisp 2018-07-09T05:31:28Z k4rtik joined #lisp 2018-07-09T05:31:28Z k4rtik quit (Changing host) 2018-07-09T05:31:28Z k4rtik joined #lisp 2018-07-09T05:32:18Z caltelt joined #lisp 2018-07-09T05:32:24Z pjb` quit (Ping timeout: 256 seconds) 2018-07-09T05:35:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-09T05:38:58Z dmiles quit (Ping timeout: 260 seconds) 2018-07-09T05:40:21Z milanj quit (Read error: Connection reset by peer) 2018-07-09T05:41:55Z fikka joined #lisp 2018-07-09T05:42:07Z milanj joined #lisp 2018-07-09T05:42:11Z logicmoo joined #lisp 2018-07-09T05:43:24Z vlatkoB joined #lisp 2018-07-09T05:46:13Z fikka quit (Ping timeout: 244 seconds) 2018-07-09T05:47:17Z pjb` joined #lisp 2018-07-09T05:49:37Z jack_rabbit joined #lisp 2018-07-09T05:50:37Z pjb` quit (Remote host closed the connection) 2018-07-09T05:51:18Z logicmoo is now known as dmiles 2018-07-09T05:52:12Z isospin joined #lisp 2018-07-09T05:52:24Z fikka joined #lisp 2018-07-09T05:52:27Z milanj quit (Quit: This computer has gone to sleep) 2018-07-09T05:53:27Z pjb` joined #lisp 2018-07-09T05:53:57Z milanj joined #lisp 2018-07-09T05:56:52Z fikka quit (Ping timeout: 245 seconds) 2018-07-09T05:58:21Z pjb` quit (Remote host closed the connection) 2018-07-09T05:58:27Z rme quit (Ping timeout: 180 seconds) 2018-07-09T06:00:37Z milanj quit (Quit: This computer has gone to sleep) 2018-07-09T06:02:34Z fikka joined #lisp 2018-07-09T06:06:57Z fikka quit (Ping timeout: 248 seconds) 2018-07-09T06:09:41Z flamebeard joined #lisp 2018-07-09T06:14:39Z pjb` joined #lisp 2018-07-09T06:15:53Z varjag joined #lisp 2018-07-09T06:18:27Z pjb` quit (Read error: Connection reset by peer) 2018-07-09T06:19:12Z Zhivago: ljharb: Is that another way of saying "no"? 2018-07-09T06:19:32Z pjb` joined #lisp 2018-07-09T06:19:55Z mindCrime_ quit (Excess Flood) 2018-07-09T06:20:15Z varjag quit (Ping timeout: 245 seconds) 2018-07-09T06:20:22Z mindCrime_ joined #lisp 2018-07-09T06:21:00Z gector quit (Read error: Connection reset by peer) 2018-07-09T06:21:48Z gector joined #lisp 2018-07-09T06:22:16Z Zhivago: ljharb: I that by definition it cannot be incorrect -- but it may be something you find abhorrent, which is fine. 2018-07-09T06:22:39Z fikka joined #lisp 2018-07-09T06:22:53Z Zhivago: The means simply lead people to decide that your word cannot be trusted. 2018-07-09T06:22:58Z Zhivago: Oops 2018-07-09T06:24:53Z brettgilio joined #lisp 2018-07-09T06:25:34Z mange quit (Ping timeout: 264 seconds) 2018-07-09T06:26:33Z al-damiri quit (Quit: Connection closed for inactivity) 2018-07-09T06:27:37Z fikka quit (Ping timeout: 256 seconds) 2018-07-09T06:28:10Z pjb` quit (Ping timeout: 245 seconds) 2018-07-09T06:28:28Z doesthiswork quit (Quit: Leaving.) 2018-07-09T06:31:29Z housel joined #lisp 2018-07-09T06:32:34Z elfmacs joined #lisp 2018-07-09T06:32:49Z pjb` joined #lisp 2018-07-09T06:33:03Z fikka joined #lisp 2018-07-09T06:37:26Z makomo joined #lisp 2018-07-09T06:37:50Z pjb` quit (Remote host closed the connection) 2018-07-09T06:38:01Z fikka quit (Ping timeout: 256 seconds) 2018-07-09T06:43:02Z fikka joined #lisp 2018-07-09T06:43:35Z pjb` joined #lisp 2018-07-09T06:43:43Z shrdlu68 joined #lisp 2018-07-09T06:46:57Z xantoz quit (Ping timeout: 240 seconds) 2018-07-09T06:47:09Z k4rtik quit (Ping timeout: 264 seconds) 2018-07-09T06:47:21Z fikka quit (Ping timeout: 240 seconds) 2018-07-09T06:47:59Z Naergon joined #lisp 2018-07-09T06:49:51Z pjb` quit (Ping timeout: 240 seconds) 2018-07-09T06:50:59Z robotoad quit (Quit: robotoad) 2018-07-09T06:51:03Z xantoz joined #lisp 2018-07-09T06:51:59Z chrnok joined #lisp 2018-07-09T06:53:42Z fikka joined #lisp 2018-07-09T06:58:21Z fikka quit (Ping timeout: 240 seconds) 2018-07-09T07:02:14Z Cymew joined #lisp 2018-07-09T07:02:20Z azimut joined #lisp 2018-07-09T07:03:44Z fikka joined #lisp 2018-07-09T07:04:04Z pjb` joined #lisp 2018-07-09T07:06:49Z Cymew quit (Client Quit) 2018-07-09T07:08:32Z fikka quit (Ping timeout: 255 seconds) 2018-07-09T07:11:47Z pjb` quit (Ping timeout: 276 seconds) 2018-07-09T07:14:00Z fikka joined #lisp 2018-07-09T07:14:59Z Cymew joined #lisp 2018-07-09T07:15:00Z buffergn0me joined #lisp 2018-07-09T07:15:05Z shka_ quit (Ping timeout: 244 seconds) 2018-07-09T07:18:25Z pjb` joined #lisp 2018-07-09T07:18:56Z fikka quit (Ping timeout: 276 seconds) 2018-07-09T07:18:56Z froggey quit (Ping timeout: 276 seconds) 2018-07-09T07:21:09Z hajovonta joined #lisp 2018-07-09T07:23:32Z pjb` quit (Ping timeout: 245 seconds) 2018-07-09T07:26:39Z milanj joined #lisp 2018-07-09T07:27:54Z fikka joined #lisp 2018-07-09T07:31:07Z littlelisper joined #lisp 2018-07-09T07:33:22Z pierpal quit (Ping timeout: 264 seconds) 2018-07-09T07:34:22Z fikka quit (Ping timeout: 245 seconds) 2018-07-09T07:36:26Z ym quit (Quit: Leaving) 2018-07-09T07:39:35Z pchrist quit (Ping timeout: 255 seconds) 2018-07-09T07:39:41Z fikka joined #lisp 2018-07-09T07:40:17Z pchrist joined #lisp 2018-07-09T07:44:26Z fikka quit (Ping timeout: 256 seconds) 2018-07-09T07:45:36Z shifty joined #lisp 2018-07-09T07:46:35Z sigjuice joined #lisp 2018-07-09T07:50:08Z fikka joined #lisp 2018-07-09T07:52:00Z igemnace joined #lisp 2018-07-09T07:53:00Z mlf|2 quit (Read error: Connection reset by peer) 2018-07-09T07:54:41Z fikka quit (Ping timeout: 248 seconds) 2018-07-09T07:55:52Z hajovonta: hello all :) 2018-07-09T07:55:57Z random-nick joined #lisp 2018-07-09T07:57:58Z buffergn0me quit (Ping timeout: 244 seconds) 2018-07-09T08:00:16Z MoziM joined #lisp 2018-07-09T08:02:36Z shrdlu68: Hello 2018-07-09T08:04:23Z beach: Hello hajovonta. Hello shrdlu68. 2018-07-09T08:04:52Z plll[m] quit (Ping timeout: 245 seconds) 2018-07-09T08:04:54Z theemacsshibe[m] quit (Ping timeout: 240 seconds) 2018-07-09T08:05:16Z GNUPONUT[m] quit (Ping timeout: 255 seconds) 2018-07-09T08:05:16Z drunk_foxx[m] quit (Ping timeout: 255 seconds) 2018-07-09T08:05:16Z eli_oat[m] quit (Ping timeout: 255 seconds) 2018-07-09T08:05:17Z CharlieBrown quit (Ping timeout: 245 seconds) 2018-07-09T08:05:22Z thorondor[m] quit (Ping timeout: 240 seconds) 2018-07-09T08:08:46Z schweers joined #lisp 2018-07-09T08:10:12Z fikka joined #lisp 2018-07-09T08:11:36Z varjag joined #lisp 2018-07-09T08:14:43Z fikka quit (Ping timeout: 256 seconds) 2018-07-09T08:15:17Z angavrilov joined #lisp 2018-07-09T08:16:00Z littlelisper quit (Quit: leaving) 2018-07-09T08:20:35Z fikka joined #lisp 2018-07-09T08:21:32Z dddddd joined #lisp 2018-07-09T08:23:15Z theemacsshibe[m] joined #lisp 2018-07-09T08:24:01Z thorondor[m] joined #lisp 2018-07-09T08:25:12Z drunk_foxx[m] joined #lisp 2018-07-09T08:25:33Z fikka quit (Ping timeout: 264 seconds) 2018-07-09T08:25:57Z caltelt quit (Ping timeout: 240 seconds) 2018-07-09T08:26:14Z orivej joined #lisp 2018-07-09T08:27:45Z eli_oat[m] joined #lisp 2018-07-09T08:32:49Z GNUPONUT[m] joined #lisp 2018-07-09T08:32:52Z plll[m] joined #lisp 2018-07-09T08:32:57Z ebrasca joined #lisp 2018-07-09T08:33:09Z CharlieBrown joined #lisp 2018-07-09T08:35:27Z fikka joined #lisp 2018-07-09T08:35:48Z graphene quit (Remote host closed the connection) 2018-07-09T08:37:07Z graphene joined #lisp 2018-07-09T08:37:14Z quazimodo quit (Ping timeout: 244 seconds) 2018-07-09T08:39:22Z quazimodo joined #lisp 2018-07-09T08:40:01Z fikka quit (Ping timeout: 248 seconds) 2018-07-09T08:40:07Z _cosmonaut_ joined #lisp 2018-07-09T08:46:36Z deng_cn1 joined #lisp 2018-07-09T08:46:48Z graphene quit (Remote host closed the connection) 2018-07-09T08:47:28Z deng_cn quit (Ping timeout: 256 seconds) 2018-07-09T08:47:28Z deng_cn1 is now known as deng_cn 2018-07-09T08:48:03Z graphene joined #lisp 2018-07-09T08:50:56Z fikka joined #lisp 2018-07-09T08:53:17Z saki quit (Quit: saki) 2018-07-09T08:53:48Z mingus quit (Remote host closed the connection) 2018-07-09T08:55:21Z nowhere_man quit (Ping timeout: 240 seconds) 2018-07-09T08:57:05Z smokeink joined #lisp 2018-07-09T08:57:47Z graphene quit (Remote host closed the connection) 2018-07-09T08:58:51Z matijja joined #lisp 2018-07-09T08:59:01Z graphene joined #lisp 2018-07-09T08:59:58Z makomo quit (Ping timeout: 244 seconds) 2018-07-09T09:05:05Z xantoz quit (Quit: WeeChat 2.0.1) 2018-07-09T09:05:12Z tewi_inaba joined #lisp 2018-07-09T09:05:15Z brettgilio quit (Read error: Connection reset by peer) 2018-07-09T09:05:21Z tewi_inaba is now known as xanto 2018-07-09T09:05:23Z xanto is now known as xantoz 2018-07-09T09:10:39Z easye quit (Remote host closed the connection) 2018-07-09T09:11:22Z easye joined #lisp 2018-07-09T09:14:25Z fikka quit (Ping timeout: 245 seconds) 2018-07-09T09:15:17Z kerrhau quit (Ping timeout: 276 seconds) 2018-07-09T09:20:15Z nowhere_man joined #lisp 2018-07-09T09:25:21Z scymtym quit (Ping timeout: 248 seconds) 2018-07-09T09:25:32Z froggey joined #lisp 2018-07-09T09:29:22Z saki joined #lisp 2018-07-09T09:31:49Z lumm joined #lisp 2018-07-09T09:33:01Z lumm quit (Client Quit) 2018-07-09T09:33:34Z lumm joined #lisp 2018-07-09T09:34:25Z nowhere_man quit (Ping timeout: 245 seconds) 2018-07-09T09:34:49Z nowhere_man joined #lisp 2018-07-09T09:39:14Z xantoz quit (Ping timeout: 244 seconds) 2018-07-09T09:41:49Z carmack quit (Ping timeout: 244 seconds) 2018-07-09T09:43:54Z xantoz joined #lisp 2018-07-09T09:44:12Z shka: hello! 2018-07-09T09:45:21Z pierpal joined #lisp 2018-07-09T09:46:17Z nowhereman_ joined #lisp 2018-07-09T09:46:21Z nowhere_man quit (Ping timeout: 240 seconds) 2018-07-09T09:47:35Z beach: Hello shka. 2018-07-09T09:55:09Z scymtym joined #lisp 2018-07-09T10:01:02Z m00natic joined #lisp 2018-07-09T10:03:27Z Folkol_work quit (Remote host closed the connection) 2018-07-09T10:07:25Z wigust joined #lisp 2018-07-09T10:07:27Z isospin` joined #lisp 2018-07-09T10:08:21Z isospin` quit (Client Quit) 2018-07-09T10:09:04Z isospin quit (Ping timeout: 256 seconds) 2018-07-09T10:09:43Z wigust- quit (Ping timeout: 244 seconds) 2018-07-09T10:11:55Z nowhereman_ quit (Ping timeout: 245 seconds) 2018-07-09T10:20:44Z kerrhau joined #lisp 2018-07-09T10:20:44Z kerrhau quit (Changing host) 2018-07-09T10:20:44Z kerrhau joined #lisp 2018-07-09T10:25:58Z carmack joined #lisp 2018-07-09T10:33:33Z varjag quit (Quit: ERC (IRC client for Emacs 24.5.1)) 2018-07-09T10:35:10Z AetherWind quit (Quit: Leaving) 2018-07-09T10:38:51Z milanj quit (Quit: This computer has gone to sleep) 2018-07-09T10:39:19Z DataLinkDroid joined #lisp 2018-07-09T10:52:24Z rawste joined #lisp 2018-07-09T10:53:57Z fe[nl]ix: Xach: what's the issue with bordeaux-threads ? 2018-07-09T10:59:39Z ExtraCrispy joined #lisp 2018-07-09T11:02:08Z nowhere_man joined #lisp 2018-07-09T11:03:22Z gabiruh joined #lisp 2018-07-09T11:04:29Z Xach: fe[nl]ix: bt-semaphore misuses it somewhat and has broken 2018-07-09T11:04:35Z vaporatorius quit (Ping timeout: 240 seconds) 2018-07-09T11:07:57Z nowhere_man quit (Ping timeout: 240 seconds) 2018-07-09T11:15:51Z milanj joined #lisp 2018-07-09T11:16:40Z rumbler31 quit (Remote host closed the connection) 2018-07-09T11:17:20Z Folkol_ joined #lisp 2018-07-09T11:20:39Z Guest24297 is now known as kolb 2018-07-09T11:20:49Z kajo quit (Ping timeout: 265 seconds) 2018-07-09T11:21:08Z kolb is now known as Guest30995 2018-07-09T11:21:20Z Guest30995 is now known as thekolb 2018-07-09T11:31:43Z brettgilio joined #lisp 2018-07-09T11:33:10Z loginoob joined #lisp 2018-07-09T11:34:19Z LdBeth: Is control string in FORMAT compiled or stay interpreted if determined at compile time? 2018-07-09T11:35:22Z loginoob: I'm learning CL from the book cl: a gentle introduction to symbolic computation. I have heard so much about SICP, as everyone says you must read the book. So i want to know at what stage should i pick up the book. 2018-07-09T11:35:40Z loginoob: Do I need to if I'm learning CL and not scheme? 2018-07-09T11:36:54Z shka: LdBeth: implementation dependent 2018-07-09T11:37:22Z shka: in sbcl it appears to be compile time optimized 2018-07-09T11:37:55Z shrdlu68: Is there a way to know the number of projects in quicklisp that depend on a certain other project? I'm curious how widely used stmx is. 2018-07-09T11:37:56Z jmercouris joined #lisp 2018-07-09T11:38:31Z TMA: loginoob: SICP can teach you modes of thinking. 2018-07-09T11:38:52Z jmercouris: I have a problem where I have a dictionary 2018-07-09T11:38:58Z jmercouris: A dictionary has multiple definitions for the same term 2018-07-09T11:39:17Z jmercouris: I can't map this to a hash table as each key can only have 1 value 2018-07-09T11:39:27Z jmercouris: unless of course, each key in the hash table corresponds to a list 2018-07-09T11:39:49Z shrdlu68: loginoob: How high is it in your "things to do before I keel over" list? 2018-07-09T11:39:52Z jmercouris: there is a twist though, sometimes, I have the same definition for a term, multiple times 2018-07-09T11:40:09Z w17t joined #lisp 2018-07-09T11:40:18Z jmercouris: I would like to also capture, how many times a specific definition appears for a given term 2018-07-09T11:40:30Z jmercouris: that way, I can rank definitions for terms based on how popular they are 2018-07-09T11:40:53Z jmercouris: thoughts on data structures? ideas? 2018-07-09T11:40:56Z loginoob: so when do you think would be appropriate time for me to pick up SICP? after completing basics of CL? I'm not good at math, i tried to read sicp and understood things but couldn't able to complete exercise because I'm not familir with most of the maths there 2018-07-09T11:41:10Z loginoob: shrdlu68 and TMA 2018-07-09T11:41:42Z loginoob: shrdlu68 how high is what? Learning CL or SICP 2018-07-09T11:42:05Z lavaflow_ quit (Ping timeout: 265 seconds) 2018-07-09T11:43:04Z shrdlu68: loginoob: SICP. 2018-07-09T11:43:34Z jmercouris: what does SICP stand for again? 2018-07-09T11:43:54Z shrdlu68: jmercouris: Do you mean that a list of definitions may have identical definitions? 2018-07-09T11:44:04Z jmercouris: shrdlu68: Yes, the list is composed of several identifical definitions 2018-07-09T11:44:19Z shrdlu68: *Structure and Interpretation of Computer Programs. 2018-07-09T11:44:25Z jmercouris: for example term1: definition1, term2: definition2, term1: definition1 2018-07-09T11:44:38Z loginoob: shrdlu68 after completing CL book SICP would be my top priority if you guys think that it would be appropriate next step 2018-07-09T11:44:39Z shrdlu68: jmercouris: Why not pass the list through #'remove-duplicates? 2018-07-09T11:44:46Z jmercouris: because there is information about duplicates 2018-07-09T11:44:58Z jmercouris: if an entry appears more than once, it means that that is a popular definition 2018-07-09T11:45:05Z jmercouris: these are definitions I've extracted from a corpus using NLP 2018-07-09T11:45:15Z shrdlu68: loginoob: There is no objective appropriateness, I'd simply advise you to learn as your curiousity dictates, and have fun while at it. 2018-07-09T11:46:04Z loginoob: shrdlu68 have you read it completely 2018-07-09T11:47:06Z White_Flame: jmercouris: just use a hashtable mapping a key to a list of definitions 2018-07-09T11:47:14Z shrdlu68: jmercouris: Hmm, then you could have '(definition . count) as the members of the lists. 2018-07-09T11:47:54Z shrdlu68: loginoob: Nope. Also, jmersouris was going through it the other day, if I'm not mistaken. Perhaps he could tell you about it. 2018-07-09T11:48:03Z jmercouris: Maybe I should do the counting in real time as it is needed insted of storing it in the data strucure 2018-07-09T11:48:07Z jmercouris: s/strucure/structure 2018-07-09T11:48:10Z jmercouris: it would be simpler 2018-07-09T11:49:46Z jmercouris quit (Remote host closed the connection) 2018-07-09T11:50:33Z jason_m joined #lisp 2018-07-09T11:53:10Z markoong joined #lisp 2018-07-09T11:54:24Z himmAllRight quit (Remote host closed the connection) 2018-07-09T11:54:57Z himmAllRight joined #lisp 2018-07-09T12:01:14Z igemnace quit (Remote host closed the connection) 2018-07-09T12:01:23Z xrash quit (Ping timeout: 256 seconds) 2018-07-09T12:03:36Z nowhere_man joined #lisp 2018-07-09T12:05:26Z Bike joined #lisp 2018-07-09T12:05:54Z fikka joined #lisp 2018-07-09T12:07:03Z MoziM quit (Ping timeout: 256 seconds) 2018-07-09T12:07:31Z froggey quit (Ping timeout: 244 seconds) 2018-07-09T12:08:26Z jackdaniel: I think there is library for working with ngrams for CL 2018-07-09T12:08:34Z jackdaniel: probably part of cl-nlp 2018-07-09T12:09:04Z MoziM joined #lisp 2018-07-09T12:09:23Z froggey joined #lisp 2018-07-09T12:10:27Z Xach: shrdlu68: did you find who-depends-on? 2018-07-09T12:11:17Z ldb joined #lisp 2018-07-09T12:17:51Z shrdlu68 quit (Ping timeout: 244 seconds) 2018-07-09T12:17:59Z beach: loginoob: I would go for PAIP instead of SICP. 2018-07-09T12:18:16Z beach: loginoob: It is Common Lisp and it is more practically oriented. 2018-07-09T12:19:22Z loginoob: beach PAIP is that AI book? 2018-07-09T12:19:37Z beach: Well, it is not really about AI, even though that's the title. 2018-07-09T12:19:41Z shrdlu68 joined #lisp 2018-07-09T12:19:47Z beach: It's about general programming techniques using Common Lisp. 2018-07-09T12:19:53Z loginoob: Ok 2018-07-09T12:20:43Z beach: And I believe it is available on-line nowadays. 2018-07-09T12:23:54Z EvW1 joined #lisp 2018-07-09T12:24:51Z shrdlu68 quit (Ping timeout: 240 seconds) 2018-07-09T12:25:54Z shrdlu68 joined #lisp 2018-07-09T12:26:51Z jason_m quit (Quit: Leaving) 2018-07-09T12:27:58Z ldb: It has been OCRed to text, but the code typesetting is poor 2018-07-09T12:28:21Z beach: I see. 2018-07-09T12:29:16Z Xach: The code is available in separate files, though. 2018-07-09T12:29:20Z Xach: So that's pretty good. 2018-07-09T12:30:58Z p_l: Wasn't there at least partial rework using code from files? 2018-07-09T12:31:05Z shrdlu68 quit (Ping timeout: 245 seconds) 2018-07-09T12:32:04Z shrdlu68 joined #lisp 2018-07-09T12:32:06Z Xach: Let us together check on the status of the pdf, because it is easy to get from https://github.com/norvig/paip-lisp 2018-07-09T12:32:36Z jkordani joined #lisp 2018-07-09T12:35:12Z ldb: The pdf is traced to use vector fonts which actaully looks bad 2018-07-09T12:36:39Z Xach: ldb: When did you last look at it? 2018-07-09T12:36:55Z Xach: To me, the current PDFs look like decent high-resolution bitmap scans. 2018-07-09T12:37:15Z beach: It is perfectly legible to me. 2018-07-09T12:37:20Z shrdlu68 quit (Ping timeout: 245 seconds) 2018-07-09T12:37:46Z Xach: There were previous iterations that were not as readable 2018-07-09T12:38:19Z shrdlu68 joined #lisp 2018-07-09T12:39:52Z DGASAU joined #lisp 2018-07-09T12:40:51Z ldb: Xach: i believe it's the latest one. 2018-07-09T12:41:08Z Xach: ldb: When I view it, I don't see vector fonts. 2018-07-09T12:41:58Z Xach: The latest commit is from today. 2018-07-09T12:43:35Z shrdlu68 quit (Ping timeout: 245 seconds) 2018-07-09T12:44:13Z wheelsucker quit (Quit: Client Quit) 2018-07-09T12:44:31Z shrdlu68 joined #lisp 2018-07-09T12:44:37Z ldb: ah, I got the traced PDF from https://github.com/clojurians-org/lisp-ebook/blob/master/Paradigms-of-Artificial-Intelligence-Programming.pdf 2018-07-09T12:45:17Z ldb: i prefer the epub version 2018-07-09T12:51:13Z LiamH joined #lisp 2018-07-09T12:53:50Z b413 joined #lisp 2018-07-09T12:56:36Z shifty quit (Ping timeout: 244 seconds) 2018-07-09T12:58:24Z patlv joined #lisp 2018-07-09T13:00:33Z doesthiswork joined #lisp 2018-07-09T13:00:40Z nowhere_man quit (Ping timeout: 245 seconds) 2018-07-09T13:02:16Z fikka_ joined #lisp 2018-07-09T13:03:31Z nowhere_man joined #lisp 2018-07-09T13:04:21Z fikka quit (Ping timeout: 244 seconds) 2018-07-09T13:04:25Z loginoob quit (Ping timeout: 245 seconds) 2018-07-09T13:05:46Z shrdlu68 quit (Ping timeout: 264 seconds) 2018-07-09T13:06:13Z Bronsa joined #lisp 2018-07-09T13:06:28Z shrdlu68 joined #lisp 2018-07-09T13:08:11Z loginoob joined #lisp 2018-07-09T13:12:08Z shrdlu68 quit (Ping timeout: 255 seconds) 2018-07-09T13:12:43Z shrdlu68 joined #lisp 2018-07-09T13:13:08Z fikka_ quit (Ping timeout: 244 seconds) 2018-07-09T13:14:58Z dyelar joined #lisp 2018-07-09T13:16:32Z nowhere_man quit (Remote host closed the connection) 2018-07-09T13:16:50Z fikka joined #lisp 2018-07-09T13:16:53Z nowhere_man joined #lisp 2018-07-09T13:17:07Z rumbler31 joined #lisp 2018-07-09T13:17:17Z patlv quit (Quit: Leaving) 2018-07-09T13:19:11Z loginoob quit (Remote host closed the connection) 2018-07-09T13:21:19Z makomo joined #lisp 2018-07-09T13:21:36Z test1600 joined #lisp 2018-07-09T13:21:55Z rumbler31 quit (Ping timeout: 244 seconds) 2018-07-09T13:23:08Z mindCrime joined #lisp 2018-07-09T13:23:44Z warweasle joined #lisp 2018-07-09T13:27:19Z fikka quit (Read error: Connection reset by peer) 2018-07-09T13:27:26Z EvW1 quit (Ping timeout: 255 seconds) 2018-07-09T13:28:10Z nowhere_man quit (Ping timeout: 245 seconds) 2018-07-09T13:29:40Z EvW joined #lisp 2018-07-09T13:30:11Z saki quit (Ping timeout: 244 seconds) 2018-07-09T13:30:27Z dyelar quit (Remote host closed the connection) 2018-07-09T13:31:04Z saki joined #lisp 2018-07-09T13:31:25Z saki quit (Client Quit) 2018-07-09T13:31:35Z k4rtik joined #lisp 2018-07-09T13:34:21Z smokeink quit (Ping timeout: 240 seconds) 2018-07-09T13:35:00Z saki joined #lisp 2018-07-09T13:36:03Z eli_oat joined #lisp 2018-07-09T13:36:31Z pseudonymous quit (Disconnected by services) 2018-07-09T13:36:34Z karlosz joined #lisp 2018-07-09T13:36:54Z pseudonymous_ joined #lisp 2018-07-09T13:36:58Z w17t quit (Read error: Connection reset by peer) 2018-07-09T13:38:26Z rumbler31 joined #lisp 2018-07-09T13:39:25Z kerrhau quit (Ping timeout: 245 seconds) 2018-07-09T13:40:57Z nowhere_man joined #lisp 2018-07-09T13:42:43Z Arcaelyx quit (Quit: Textual IRC Client: www.textualapp.com) 2018-07-09T13:43:05Z rumbler31 quit (Ping timeout: 276 seconds) 2018-07-09T13:44:34Z karlosz quit (Quit: karlosz) 2018-07-09T13:47:00Z igemnace joined #lisp 2018-07-09T13:47:44Z kajo joined #lisp 2018-07-09T13:48:16Z test1600 quit (Ping timeout: 244 seconds) 2018-07-09T13:50:21Z nowhere_man quit (Ping timeout: 240 seconds) 2018-07-09T13:52:14Z chiyosaki joined #lisp 2018-07-09T13:52:20Z kajo quit (Ping timeout: 256 seconds) 2018-07-09T13:52:22Z Inline joined #lisp 2018-07-09T13:53:17Z frgo joined #lisp 2018-07-09T13:53:29Z saki quit (Ping timeout: 276 seconds) 2018-07-09T13:56:51Z k4rtik quit (Ping timeout: 240 seconds) 2018-07-09T14:04:33Z brettgilio quit (Remote host closed the connection) 2018-07-09T14:07:06Z frgo quit (Quit: Leaving) 2018-07-09T14:09:18Z sjl joined #lisp 2018-07-09T14:11:21Z chiyosaki quit (Ping timeout: 240 seconds) 2018-07-09T14:11:33Z EvW quit (Remote host closed the connection) 2018-07-09T14:11:43Z EvW joined #lisp 2018-07-09T14:11:43Z jmercouris joined #lisp 2018-07-09T14:15:05Z kuwze joined #lisp 2018-07-09T14:17:36Z Josh_2 joined #lisp 2018-07-09T14:18:37Z saki joined #lisp 2018-07-09T14:24:34Z andrei-n_ quit (Quit: Leaving) 2018-07-09T14:24:51Z frgo joined #lisp 2018-07-09T14:25:12Z hajovonta quit (Quit: hajovonta) 2018-07-09T14:26:49Z frgo quit (Client Quit) 2018-07-09T14:27:09Z jmercouris: I'm getting "Heap exhausted during garbage collection: 0 bytes available, 16 requested." 2018-07-09T14:27:13Z jmercouris: when trying to compile my application 2018-07-09T14:27:17Z jmercouris: it loads just fine in the REPL 2018-07-09T14:27:24Z Josh_2: make it bigger! 2018-07-09T14:27:32Z jmercouris: how might I do taht? 2018-07-09T14:27:35Z jmercouris: s/taht/that 2018-07-09T14:28:01Z Josh_2: sbcl --help should tell you 2018-07-09T14:28:16Z Josh_2: I canny remember, but am pretty sure mine heap is twice the normal size xD 2018-07-09T14:28:21Z papachan joined #lisp 2018-07-09T14:28:39Z beach: /usr/local/bin/sbcl --dynamic-space-size 10000 2018-07-09T14:28:51Z beach: It's in megabytes. 2018-07-09T14:29:00Z jmercouris: beach: thank you 2018-07-09T14:29:08Z beach: jmercouris: That's not a good sign though. 2018-07-09T14:29:27Z jmercouris: beach: It's perfectly normal in this case, I'm loading a massive data structure into memory for distribution with my application 2018-07-09T14:29:28Z jmercouris: it is a database 2018-07-09T14:29:45Z beach: It is not a good sign that it requires heap space to garbage collect. 2018-07-09T14:29:48Z jmercouris: It is just an alpha so I don't want to go through the hassle of bundling the database with the application 2018-07-09T14:30:01Z beach: That the heap is not big enough for your application, that's normal. 2018-07-09T14:30:04Z jmercouris: Well, probably because my hash table is growing all the time, and I did not set a default size 2018-07-09T14:30:11Z beach: *sigh* 2018-07-09T14:30:37Z jmercouris: s/default size/initial size 2018-07-09T14:31:03Z shrdlu68: beach: I've gotten that as well before, didn't realize that heap exhaustion during garbage collection ought not to happen. 2018-07-09T14:31:36Z beach: shrdlu68: Maybe it's normal, but it sounds strange to me. 2018-07-09T14:31:51Z milanj_ joined #lisp 2018-07-09T14:32:05Z jmercouris: if I limit the size of my initial query for populating the hash table, I don't have this error 2018-07-09T14:32:11Z jmercouris: so I know exactly what is causing it 2018-07-09T14:32:20Z jmercouris: before I pass in the CLI args, let me try setting a larger initial size 2018-07-09T14:32:21Z orivej quit (Ping timeout: 240 seconds) 2018-07-09T14:33:38Z shrdlu68: beach: It is strange, now that I think about it. 2018-07-09T14:33:51Z TMA: "common sense" suggests that garbage collection should be non-consing 2018-07-09T14:34:29Z milanj quit (Ping timeout: 255 seconds) 2018-07-09T14:35:15Z shrdlu68: I resorted to running #'gc explicitly occassionally to prevent heap exhaustion. 2018-07-09T14:35:23Z jmercouris: well, now my application is 300MB, and I need a --dynamic-spzie-size of 5000, but oh well 2018-07-09T14:36:20Z shrdlu68: I also liked how ccl could grow/shrink the heap as needed without restriction. 2018-07-09T14:36:21Z robotoad joined #lisp 2018-07-09T14:37:29Z jmercouris: I think I should move back to CCL, I think I prefer it 2018-07-09T14:37:34Z jmercouris: I just wanted to try SBCL because so many people swear by it 2018-07-09T14:38:14Z shrdlu68: jmercouris: I swear by its performance :) 2018-07-09T14:38:39Z jmercouris: the performance of SBCL is indeed good 2018-07-09T14:39:22Z elfmacs quit (Ping timeout: 260 seconds) 2018-07-09T14:40:34Z elfmacs joined #lisp 2018-07-09T14:41:55Z shrdlu68: I'm wondering whether I can use stmx in a multi-threaded program and not worry about race conditions and data corruption. Is it really that simpe? 2018-07-09T14:42:43Z dyelar joined #lisp 2018-07-09T14:42:54Z shrdlu68: "Note that concurrency related bugs are still possible in programs that use a large number of transactions, especially in software implementations where the library provided by the language is unable to enforce correct use." -- from the Wiki page on transactional memory. 2018-07-09T14:43:02Z matijja quit (Ping timeout: 244 seconds) 2018-07-09T14:45:08Z fikka joined #lisp 2018-07-09T14:46:18Z karlosz joined #lisp 2018-07-09T14:48:49Z k4rtik joined #lisp 2018-07-09T14:50:21Z karlosz quit (Ping timeout: 240 seconds) 2018-07-09T14:50:39Z igemnace quit (Quit: WeeChat 2.1) 2018-07-09T14:51:49Z lumm quit (Ping timeout: 244 seconds) 2018-07-09T14:53:10Z jack_rabbit quit (Ping timeout: 264 seconds) 2018-07-09T14:55:12Z flamebeard quit 2018-07-09T14:55:57Z k4rtik quit (Ping timeout: 244 seconds) 2018-07-09T14:56:09Z ldb quit (Ping timeout: 264 seconds) 2018-07-09T14:59:54Z FreeBirdLjj joined #lisp 2018-07-09T15:00:22Z Murii_: is there something like "dotimes" but instead of incrementing decrementing? 2018-07-09T15:00:42Z Xach: Murii_: not like dotimes, no. LOOP can do it. 2018-07-09T15:00:54Z Murii_: okay 2018-07-09T15:01:13Z lumm joined #lisp 2018-07-09T15:05:24Z fikka quit (Ping timeout: 268 seconds) 2018-07-09T15:05:31Z ldb joined #lisp 2018-07-09T15:05:57Z beach: I think I have memory allocator similar to that of Doug Lea, but written in Common Lisp. It has contains than 400 lines of source code. It uses a few functions for reading and writing memory that I am currently simulating. Next, I'll clean up the code, remove some magic literal numbers, add comments, etc. Later, I'll add meters to collect statistics and figure out how to write a test suite. 2018-07-09T15:07:22Z random-nick quit (Remote host closed the connection) 2018-07-09T15:08:50Z chrnok quit (Remote host closed the connection) 2018-07-09T15:09:50Z beach: s/has// 2018-07-09T15:09:54Z papachan quit (Disconnected by services) 2018-07-09T15:10:48Z random-nick joined #lisp 2018-07-09T15:11:20Z papachan joined #lisp 2018-07-09T15:12:21Z elfmacs quit (Ping timeout: 240 seconds) 2018-07-09T15:12:26Z robotoad quit (Quit: robotoad) 2018-07-09T15:14:55Z ldb quit (Quit: leaving) 2018-07-09T15:17:12Z ExtraCrispy quit (Remote host closed the connection) 2018-07-09T15:17:39Z b413 quit (Ping timeout: 244 seconds) 2018-07-09T15:18:35Z beach: OK, let me try it again... 2018-07-09T15:19:31Z beach: I think I have a memory allocator similar to that of Doug Lea, but written in Common Lisp. It contains less than 400 lines of source code. It uses a few functions for reading and writing memory that I am currently simulating. Next, I'll clean up the code, remove some magic literal numbers, add comments, etc. Later, I'll add meters to collect statistics and I'll figure out how to write a test suite. 2018-07-09T15:19:43Z beach: Sorry for the substandard grammar. 2018-07-09T15:19:56Z Josh_2: beach: what you making? 2018-07-09T15:21:39Z jmercouris: Anyone know how to change the application icon for LTK? 2018-07-09T15:23:42Z eli_oat quit (Quit: Leaving.) 2018-07-09T15:23:47Z beach: Josh_2: The SICL global garbage collector will use a heap similar to that of malloc()/free() for C. One of the best memory allocators is the one written by Doug Lea. I adapted it to my needs and wrote it in Common Lisp for ultimate inclusion in SICL. 2018-07-09T15:24:03Z eli_oat joined #lisp 2018-07-09T15:24:25Z Intensity joined #lisp 2018-07-09T15:24:38Z buffergn0me joined #lisp 2018-07-09T15:24:38Z Josh_2: beach: nice nice nice 2018-07-09T15:26:17Z al-damiri joined #lisp 2018-07-09T15:28:15Z jmercouris left #lisp 2018-07-09T15:30:49Z Josh_2 quit (Remote host closed the connection) 2018-07-09T15:31:35Z robotoad joined #lisp 2018-07-09T15:32:32Z Intensity quit (Changing host) 2018-07-09T15:32:32Z Intensity joined #lisp 2018-07-09T15:33:03Z lumm_ joined #lisp 2018-07-09T15:34:19Z nowhere_man joined #lisp 2018-07-09T15:34:34Z lumm quit (Ping timeout: 265 seconds) 2018-07-09T15:34:35Z lumm_ is now known as lumm 2018-07-09T15:35:13Z dougie joined #lisp 2018-07-09T15:40:21Z EvW quit (Ping timeout: 240 seconds) 2018-07-09T15:43:53Z k4rtik joined #lisp 2018-07-09T15:44:07Z graphene quit (Remote host closed the connection) 2018-07-09T15:45:25Z graphene joined #lisp 2018-07-09T15:50:32Z Josh_2 joined #lisp 2018-07-09T15:57:01Z dougie quit (Quit: ERC (IRC client for Emacs 26.1)) 2018-07-09T16:03:37Z blackwolf joined #lisp 2018-07-09T16:04:41Z pierpal quit (Read error: Connection reset by peer) 2018-07-09T16:05:58Z SaganMan joined #lisp 2018-07-09T16:06:49Z oni-on-ion: ultimate infusion ! 2018-07-09T16:07:31Z b413 joined #lisp 2018-07-09T16:07:43Z oni-on-ion: hi beach ! can you point me to that code of the memalloc you've written ? 2018-07-09T16:08:01Z beach: I can do that, but it's not pretty (yet). 2018-07-09T16:08:29Z oni-on-ion: its ok! i may not be able to tell the difference, unless its really ugly 2018-07-09T16:08:42Z beach: https://github.com/robert-strandh/SICL/tree/master/Code/Garbage-collector/Allocator 2018-07-09T16:08:43Z White_Flame: so this is for low-level runtime code that's outside of the GC? 2018-07-09T16:08:49Z oni-on-ion: i wonder if i shared that quote with you that ive seen the other day, that really turned my mind from C to Lisp ? 2018-07-09T16:08:51Z schweers quit (Ping timeout: 240 seconds) 2018-07-09T16:09:02Z oni-on-ion: ty 2018-07-09T16:09:09Z beach: I don't recall. Remind me. 2018-07-09T16:09:20Z igemnace joined #lisp 2018-07-09T16:11:22Z dim: the recent quote I read that really took a different meaning thanks to having done Common Lisp before was from Alan Kay, and I can't find it again, so paraphrasing: “The operating system is there to provide anything that is missing in your programming language” 2018-07-09T16:11:29Z dim: with that, good evening! 2018-07-09T16:12:09Z beach: Hey dim. 2018-07-09T16:12:20Z shrdlu68 quit (Ping timeout: 245 seconds) 2018-07-09T16:12:42Z oni-on-ion: hey beach ! some info. the word 'chunk' is used 109 times in allocator.lisp, the next most-used word is 20 times. =P 2018-07-09T16:13:06Z beach: Thanks. 2018-07-09T16:13:28Z oni-on-ion: dim: nice! also adding to that, someone said once "the unix/posix system is the C runtime" -- which is quite large eh! 2018-07-09T16:13:36Z beach: I think it is normal that "chunk" appear that often, since it is basically the only data structure it manipulates. 2018-07-09T16:14:33Z oni-on-ion: beach: im just being dyslexic or ocd , having to type and read 'chunk' each time, rather than c + M-/ or abbrevs ? however i think repetition is important in some cases. idk =) 2018-07-09T16:15:38Z oni-on-ion: beach: i cant find the quote at the moment, it was something about how you were saying that C does quite a bit of "extra" stuff and undefined behaviors, optimizations, and shortcuts and whatnot, that it is not really low level at all. 2018-07-09T16:16:06Z beach: Sounds vaguely familiar. 2018-07-09T16:18:36Z vxe quit (Quit: ZNC 1.7.0 - https://znc.in) 2018-07-09T16:19:54Z vxe joined #lisp 2018-07-09T16:20:24Z mflem joined #lisp 2018-07-09T16:21:01Z Kaisyu quit (Quit: Connection closed for inactivity) 2018-07-09T16:21:01Z Bronsa quit (Remote host closed the connection) 2018-07-09T16:21:46Z oni-on-ion: cant find it, it was at the top of some visited web page, no way the browser can find that by search. should have saved the quote, i may come across it some day. oh well the idea is there, and if anything C has *more* undefined behavior. 2018-07-09T16:22:08Z Jesin quit (Quit: Leaving) 2018-07-09T16:22:31Z beach: Don't worry about it. If you find it, let me know. 2018-07-09T16:22:48Z vlad_ joined #lisp 2018-07-09T16:24:42Z oni-on-ion: yep 2018-07-09T16:31:22Z ym joined #lisp 2018-07-09T16:39:35Z msb quit (Ping timeout: 240 seconds) 2018-07-09T16:41:49Z housel quit (Read error: Connection reset by peer) 2018-07-09T16:41:57Z saki quit (Ping timeout: 240 seconds) 2018-07-09T16:42:09Z buffergn0me quit (Ping timeout: 248 seconds) 2018-07-09T16:42:17Z msb joined #lisp 2018-07-09T16:44:22Z housel joined #lisp 2018-07-09T16:45:44Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-09T16:52:01Z pjb joined #lisp 2018-07-09T16:57:21Z _cosmonaut_ quit (Ping timeout: 240 seconds) 2018-07-09T16:57:55Z b413 quit (Ping timeout: 260 seconds) 2018-07-09T16:58:34Z xrash joined #lisp 2018-07-09T17:00:40Z jasmith quit (Quit: Leaving) 2018-07-09T17:02:06Z pseudonymous_ quit (Remote host closed the connection) 2018-07-09T17:02:11Z Smokitch joined #lisp 2018-07-09T17:02:30Z pseudonymous_ joined #lisp 2018-07-09T17:04:19Z FreeBirdLjj joined #lisp 2018-07-09T17:06:08Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-09T17:10:45Z oni-on-ion: what is this? so im paging through this file, and i cant tell the screen even moved, four times! have we never heard of macros ? i dont know what to say. i await to hear a good reason for this. are macros poison? 2018-07-09T17:10:51Z oni-on-ion: https://github.com/robert-strandh/SICL/blob/master/Code/Character/character.lisp 2018-07-09T17:11:29Z oni-on-ion: did one not have to go out of their way and consciously copy and paste ? how does that even become a good idea? 2018-07-09T17:12:38Z _death: it's fine to do that initially.. then you feel more acquainted with the problem and may define a macro.. maybe the author stopped there.. perhaps a macro for a fixed set of operations is overkill 2018-07-09T17:12:56Z m00natic quit (Remote host closed the connection) 2018-07-09T17:13:21Z _death: have you come up with a replacement? 2018-07-09T17:13:26Z oni-on-ion: so if one has to chance a part of one, has to duplicate this other as well. 2018-07-09T17:13:39Z oni-on-ion: _death: what? do you know anything about macros at all? 2018-07-09T17:14:16Z _death: I guess not.. what is there to know? 2018-07-09T17:14:38Z EvW joined #lisp 2018-07-09T17:14:38Z Josh_2: beach: u did a bad 2018-07-09T17:15:18Z oni-on-ion: there is literally one or two characters to change on each code block. the 180 lines would be 45, much easier to maintain. maybe having more lines is a good metric to have for posterity ? 2018-07-09T17:16:03Z oni-on-ion: if it was written off-hand, casually, not used much, or just enough to work -- still, the conscious effort to copy and paste, change one single character or two, is there. 2018-07-09T17:16:09Z _death: I'm not the author but I wouldn't be surprised if "patches welcome" is an appropriate reply 2018-07-09T17:16:20Z oni-on-ion: in any language 2018-07-09T17:16:59Z oni-on-ion: _death: sure. let jesus take care of it. lets just give up on life and working toward goodness and trying to better ourselves? why not just lay down and sleep forever? 2018-07-09T17:17:06Z Lord_of_Life quit (Excess Flood) 2018-07-09T17:17:06Z Inline_ joined #lisp 2018-07-09T17:17:54Z Bike: what the fuck? 2018-07-09T17:18:26Z Inline quit (Remote host closed the connection) 2018-07-09T17:18:30Z Josh_2: this is banter 2018-07-09T17:18:30Z jackdaniel: praise the lord, whomever he is ;-) 2018-07-09T17:18:37Z akkad: hmm, more RC expletives 2018-07-09T17:18:47Z Lord_of_Life joined #lisp 2018-07-09T17:19:41Z vlad_ quit (Remote host closed the connection) 2018-07-09T17:21:37Z lumm quit (Ping timeout: 248 seconds) 2018-07-09T17:22:23Z shka_ joined #lisp 2018-07-09T17:22:42Z saki joined #lisp 2018-07-09T17:23:42Z jackdaniel: sjl: I like your post[1] about macros, it is easy to understand and fun to read :-) [1] http://stevelosh.com/blog/2018/07/fun-with-macros-if-let/ 2018-07-09T17:23:53Z sjl: thanks! 2018-07-09T17:24:02Z sjl: still trying to get my site to look decent on both os x and linux 2018-07-09T17:24:13Z sjl: now that I use linux maybe I'll have the motivation to put in the effort, ha 2018-07-09T17:25:19Z lumm joined #lisp 2018-07-09T17:25:26Z _death: watch out maybe oni-on-ion would suggest (define-if-let-operators let let*) ;) 2018-07-09T17:26:21Z lumm quit (Read error: Connection reset by peer) 2018-07-09T17:26:31Z jackdaniel: I'm bookmarking it as something to point not-that-newbies to CL who grasped functions and want to start working on macros 2018-07-09T17:26:57Z lumm joined #lisp 2018-07-09T17:27:43Z oni-on-ion: _death: that is not very nice. im not an evangelistical fanatic about turning everyhting into macros or something. did you see the link i posted? do you even code? =P 2018-07-09T17:28:18Z oni-on-ion: im not trying to be a jerk although it may feel like it. 2018-07-09T17:28:36Z _death: some people don't need to try 2018-07-09T17:29:47Z jackdaniel: guys, pax, I'm waving my /kick privigile ;-) 2018-07-09T17:30:21Z EvW quit (Ping timeout: 240 seconds) 2018-07-09T17:30:28Z oni-on-ion: _death is making it a personal thing and i wasnt talking to him i was ranting at beach. could have taken it privately but i assumed there are other computer literate people here 2018-07-09T17:31:03Z jackdaniel: oni-on-ion: fyi _death usually has very decent remarks and rarely speaks without thinking through what he wanted to say 2018-07-09T17:31:10Z jackdaniel: _death: that was indeed a bit mean 2018-07-09T17:31:42Z jackdaniel: that said, let's forget about the incident ;) 2018-07-09T17:32:07Z iskander left #lisp 2018-07-09T17:32:32Z k4rtik quit (Ping timeout: 276 seconds) 2018-07-09T17:34:16Z iskander joined #lisp 2018-07-09T17:37:46Z lumm_ joined #lisp 2018-07-09T17:39:05Z andrei-n joined #lisp 2018-07-09T17:39:13Z lumm quit (Ping timeout: 244 seconds) 2018-07-09T17:39:14Z lumm_ is now known as lumm 2018-07-09T17:41:40Z erratic joined #lisp 2018-07-09T17:44:00Z scymtym quit (Ping timeout: 245 seconds) 2018-07-09T17:50:15Z beach: _death is right. This is work in progress. I usually come up with a workable solution first, and then clean it up as I come up with new ideas. 2018-07-09T17:50:18Z phoe: I remember that Naggum, somewhere on the newsgroups, once posted a version of FBIND that does not use SYMBOL-MACROLET (like serapeum's FBIND does). Could anyone point me to it? 2018-07-09T17:50:22Z graphene quit (Remote host closed the connection) 2018-07-09T17:50:46Z beach: oni-on-ion: Feel free to submit a pull request. But read the "Contributing to SICL" chapter in the specification first. 2018-07-09T17:51:22Z oni-on-ion: i am alright thank you. i feel that neither of you has understood a lick of what i said. i will just keep to myself 2018-07-09T17:51:23Z k4rtik joined #lisp 2018-07-09T17:51:37Z graphene joined #lisp 2018-07-09T17:52:22Z Bike: what is fbind? like let but in the function namespace? 2018-07-09T17:52:46Z phoe: Bike: (fbind ((foo #'bar)) (foo 42)) === (bar 42) 2018-07-09T17:52:50Z phoe: yes, exactly 2018-07-09T17:52:53Z _death: with-functions? 2018-07-09T17:53:01Z beach: oni-on-ion: Oh, I think I understood. There is lots of duplicated code that can be captured in auxiliary functions or macros. 2018-07-09T17:53:03Z phoe: _death: maybe, I think so 2018-07-09T17:53:18Z Bike: https://www.xach.com/naggum/articles/3225069211869395@naggum.net.html ? 2018-07-09T17:53:42Z phoe: beach: I think he means generating code alexandria-style. alexandria often uses Lisp code to generate DEFUNs and DEFMACROs. 2018-07-09T17:53:59Z Bike: or no, maybe this one https://www.xach.com/naggum/articles/3237542136210443@naggum.no.html 2018-07-09T17:54:42Z beach: phoe: I haven't looked at the code from Alexandria. Sorry. 2018-07-09T17:54:59Z Bike: though it's not quite fbind since they're not actually bound in the function namespace 2018-07-09T17:55:09Z phoe: beach: https://github.com/keithj/alexandria/blob/master/lists.lisp#L29 2018-07-09T17:55:16Z phoe: Here is an example for how ASSOC-VALUE and RASSOC-VALUE are generated. 2018-07-09T17:55:35Z phoe: It is compact code, but it's very much not readable. 2018-07-09T17:55:42Z beach: phoe: I do know that I got a pull request for coding the sequence functions as macros, and it made them incomprehensible. 2018-07-09T17:56:12Z phoe: beach: that's exactly my worry - that code is compact, but it's hard for me to figure out what this thing does. 2018-07-09T17:56:45Z phoe: The moment we get to double backquote at line 55, I'm like "nope, sorry". 2018-07-09T17:56:46Z beach: phoe: Right. It took me years, but I came up with the right thing to do with the sequence functions. 2018-07-09T17:57:07Z phoe: Bike: hm. 2018-07-09T17:57:44Z phoe: Is there actually any macroletless way of binding in the function namespace? 2018-07-09T17:57:51Z Bike: flet 2018-07-09T17:58:25Z lumm quit (Ping timeout: 248 seconds) 2018-07-09T17:58:54Z phoe: Bike: yes, but if I have a function object and not source code. 2018-07-09T17:59:27Z phoe: I guess I could use a combination of FLET, APPLY and DECLARE INLINE. 2018-07-09T17:59:32Z Bike: you'd translate (fbind ((foo #'bar)) ...) as (flet ((foo (&rest a) (apply #'bar a))) ...) and hope inlining is really smart, yeah 2018-07-09T17:59:51Z phoe: Fine, let me quickly write that macro. 2018-07-09T18:00:05Z _death imagines (letf (((symbol-value 'foo) #'bar)) ...) 2018-07-09T18:00:36Z smasta joined #lisp 2018-07-09T18:00:55Z jackdaniel: do you mean fdefinition? 2018-07-09T18:01:07Z _death: in either case it's a bad idea ;) 2018-07-09T18:01:12Z jackdaniel: letf is a cancer multithreading-wise, agreed :) 2018-07-09T18:01:13Z Bike: psh, dynamic binding 2018-07-09T18:03:13Z kuwze quit (Quit: Page closed) 2018-07-09T18:04:19Z _death: jackdaniel: ah, I actually meant symbol-function.. but that didn't type out 2018-07-09T18:05:26Z skapata joined #lisp 2018-07-09T18:05:58Z phoe: https://plaster.tymoon.eu/view/839#839 2018-07-09T18:06:04Z phoe: Seems to work for a trivial example. 2018-07-09T18:06:24Z Bike: you probably only want to evaluate the function values once 2018-07-09T18:06:25Z jackdaniel: _death: makes more sense 2018-07-09T18:06:30Z orivej joined #lisp 2018-07-09T18:07:11Z Kundry_Wag joined #lisp 2018-07-09T18:07:34Z makomo: what is the difference between FDEFINITION and SYMBOL-FUNCTION? 2018-07-09T18:07:48Z _death: fdefinition can take setf function names 2018-07-09T18:08:42Z makomo: oh, huh, subtle 2018-07-09T18:08:47Z makomo: is that it? 2018-07-09T18:09:20Z Bike: that's it 2018-07-09T18:09:44Z phoe: Bike: oh wait, do I evaluate them more at once 2018-07-09T18:10:01Z Bike: you evaluate it for each call, if i'm not mistaken 2018-07-09T18:10:21Z karlosz joined #lisp 2018-07-09T18:10:43Z jackdaniel: makomo: the thing is that symbol-function was part of cltl2 while fdefinition was added during ansi standarization 2018-07-09T18:10:44Z phoe: ...I still don't see it 2018-07-09T18:11:20Z _death: I think symbol-function is a very old function 2018-07-09T18:11:32Z Bike: try (fbind ((foo (progn (incf *global*) #'print))) ...) 2018-07-09T18:11:36Z Kundry_Wag quit (Remote host closed the connection) 2018-07-09T18:11:46Z makomo: it says "In the non-setf case, the name must be fbound in the global environment." 2018-07-09T18:11:47Z Bike: you get (apply (progn (incf *global*) #'print) ...) 2018-07-09T18:11:54Z makomo: in which namespace do setf functions exist then? 2018-07-09T18:12:01Z makomo: since their names are lists of the form (setf ), right? 2018-07-09T18:12:17Z Bike: they're in the same namespace 2018-07-09T18:12:21Z Bike: they're just different names 2018-07-09T18:12:27Z Bike: i don't know why fdefinition has that distinction 2018-07-09T18:13:10Z slyrus1 quit (Ping timeout: 260 seconds) 2018-07-09T18:13:16Z phoe: Bike: hm 2018-07-09T18:13:31Z phoe: so basically I want to apply something like ONCE-ONLY for the function objects 2018-07-09T18:14:17Z Bike: it's literally once-only. 2018-07-09T18:14:27Z slyrus_ quit (Ping timeout: 240 seconds) 2018-07-09T18:14:45Z phoe: Bike: yep, but I don't really know how to apply once-only to an arbitrary number or arguments that are hidden inside a variable 2018-07-09T18:14:53Z phoe: I need to think a little bit about it. 2018-07-09T18:15:48Z _death: just use gensym and let 2018-07-09T18:15:57Z Bike: it aint rocket surgery 2018-07-09T18:16:03Z makomo: it's rocket science! 2018-07-09T18:16:16Z phoe: Bike: _death: yes, I'm just a little bit slow on that 2018-07-09T18:16:20Z phoe: I need to figure it out before I write it 2018-07-09T18:16:52Z eli_oat quit (Quit: Leaving.) 2018-07-09T18:19:05Z phoe: Okay, I figured it out 2018-07-09T18:19:27Z makomo: is it even possible to use "vanilla" ONCE-ONLY here though? since you have an arbitrary number of arguments 2018-07-09T18:19:57Z phoe: https://plaster.tymoon.eu/view/841#841 2018-07-09T18:20:33Z _death: makomo: no.. given that you don't mean icky stuff like eval ;) 2018-07-09T18:20:40Z makomo: _death: yeah, exactly :^( 2018-07-09T18:20:45Z Bike: there ya go. 2018-07-09T18:20:45Z makomo: phoe: ewww ;_; 2018-07-09T18:21:09Z phoe: makomo: what 2018-07-09T18:21:19Z phoe: I just solved another problem using LOOP 2018-07-09T18:21:24Z phoe: that's how we do it over here 2018-07-09T18:21:31Z makomo: hey, i love LOOP 2018-07-09T18:21:45Z Josh_2 quit (Remote host closed the connection) 2018-07-09T18:22:01Z makomo: but somehow not using ONCE-ONLY makes it ugly. i know it's not possible, but a ONCE-ONLY that evaluates an expression to get the list of symbols would be nice 2018-07-09T18:22:43Z phoe: oh right, I forgot about DECLARE INLINE 2018-07-09T18:23:52Z phoe: makomo: you basically need a macro that expands into ONCE-ONLY 2018-07-09T18:23:54Z phoe: .....somehow 2018-07-09T18:24:24Z makomo: phoe: that's what i tried too, but then you'll have to use EVAL to somehow get the result of that expression into the call to ONCE-ONLY 2018-07-09T18:24:35Z phoe: makomo: ewww ;_; 2018-07-09T18:24:40Z makomo: ik :^( 2018-07-09T18:24:43Z makomo: yuck 2018-07-09T18:24:52Z makomo: a separate ONCE-ONLY would have to be written, that would support this 2018-07-09T18:25:12Z phoe: oh well 2018-07-09T18:25:17Z phoe pushes into phoe-toolbox 2018-07-09T18:25:32Z phoe: time to drop one frame in my yak-shaving session and go back to what I was doing previously 2018-07-09T18:25:35Z makomo: and then i guess you could define the usual ONCE-ONLY using this "evaluating ONCE-ONLY" 2018-07-09T18:25:38Z mfiano: phoe: did you get my message about the utility function you were looking for? 2018-07-09T18:25:42Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-09T18:25:47Z quazimodo quit (Ping timeout: 255 seconds) 2018-07-09T18:26:07Z phoe: mfiano: yes! Thank you a real lot 2018-07-09T18:26:19Z FreeBirdLjj joined #lisp 2018-07-09T18:26:27Z quazimodo joined #lisp 2018-07-09T18:26:32Z mfiano: (partition predicate list) is really nice 2018-07-09T18:27:04Z phoe: oooh, you just borrow it from serapeum 2018-07-09T18:27:05Z phoe: gotcha 2018-07-09T18:27:07Z _death: there are other, worse possibilities.. (let ((expansion (copy-tree (macroexpand '(once-only ,@names ...))))) (setf (cdadwhatever expansion) ...) ...) ;) 2018-07-09T18:27:37Z phoe: #'cdadwhatever needs to become a thing 2018-07-09T18:27:44Z mfiano: phoe: Yeah, my utility library re-exports a bit from both alexandria and serapeum instead of reinventing the wheel. 2018-07-09T18:28:03Z phoe: mfiano: yep, I see 2018-07-09T18:28:26Z slyrus_ joined #lisp 2018-07-09T18:28:29Z sauvin quit (Read error: Connection reset by peer) 2018-07-09T18:29:09Z _death: phoe: it's part of the dwim package 2018-07-09T18:29:27Z makomo: lol, nice 2018-07-09T18:29:48Z Bike: (cr addadddaddddd expansion), the most useful macro 2018-07-09T18:29:50Z lavaflow_ joined #lisp 2018-07-09T18:30:08Z _death: wasn't there a CXR macro 2018-07-09T18:30:13Z makomo: i think so 2018-07-09T18:30:21Z sjl: let over lambda defines one 2018-07-09T18:30:22Z makomo: it shows up in LoL 2018-07-09T18:30:24Z phoe: _death: which one? 2018-07-09T18:30:24Z makomo: yeah 2018-07-09T18:30:25Z FreeBirdLjj quit (Ping timeout: 248 seconds) 2018-07-09T18:30:34Z phoe: #'cdadwhatever? 2018-07-09T18:30:52Z makomo: no, WITH-CXR or something like that 2018-07-09T18:30:54Z lumm joined #lisp 2018-07-09T18:31:22Z phoe: oh, that one, okay 2018-07-09T18:32:58Z milanj_ quit (Quit: This computer has gone to sleep) 2018-07-09T18:33:21Z kerframil joined #lisp 2018-07-09T18:34:46Z makomo: _death: is there a proper way to solve this problem at all? it comes up again and again 2018-07-09T18:35:27Z flazh quit (Ping timeout: 240 seconds) 2018-07-09T18:35:50Z makomo: or should we just consider using EVAL a proper solution and not be afraid of it 2018-07-09T18:35:50Z _death: what problem? 2018-07-09T18:36:31Z _death: you could come up with something like get-setf-expansion that returns parts to be used in your own expansion 2018-07-09T18:37:19Z rumbler31 joined #lisp 2018-07-09T18:38:09Z lnostdal quit (Ping timeout: 268 seconds) 2018-07-09T18:39:28Z makomo: _death: hmm, how exactly would that work? for example in the context of this problem with FBIND and ONCE-ONLY? 2018-07-09T18:39:53Z lnostdal joined #lisp 2018-07-09T18:41:21Z rumbler31 quit (Ping timeout: 240 seconds) 2018-07-09T18:41:23Z makomo: because you basically have to reinvent ONCE-ONLY every time when you macro takes an arbitrary amount of arguments 2018-07-09T18:41:27Z makomo: your* 2018-07-09T18:41:54Z makomo: isn't that pretty lame? :^( 2018-07-09T18:46:10Z lumm quit (Ping timeout: 268 seconds) 2018-07-09T18:47:11Z lumm joined #lisp 2018-07-09T18:47:38Z kerframil quit (Quit: Leaving) 2018-07-09T18:48:41Z nickenchuggets joined #lisp 2018-07-09T18:49:37Z vap1 joined #lisp 2018-07-09T18:49:39Z vaporatorius joined #lisp 2018-07-09T18:56:04Z mejja joined #lisp 2018-07-09T18:59:58Z optikalmouse joined #lisp 2018-07-09T19:01:29Z smasta quit (Quit: WeeChat 2.1) 2018-07-09T19:02:18Z Cartogy joined #lisp 2018-07-09T19:05:57Z nowhere_man joined #lisp 2018-07-09T19:06:09Z smasta joined #lisp 2018-07-09T19:11:06Z k4rtik quit (Ping timeout: 265 seconds) 2018-07-09T19:11:36Z eli_oat joined #lisp 2018-07-09T19:12:39Z phoe: Is there an extended version of #'IDENTITY that accepts &REST and returns it? 2018-07-09T19:13:21Z phoe: It's trivial to write one, I just don't want to reinvent it 2018-07-09T19:13:23Z Bike: apply #'identity 2018-07-09T19:13:25Z Bike: but no. 2018-07-09T19:13:44Z phoe: (lambda (&rest x) x) 2018-07-09T19:13:46Z phoe: oh well 2018-07-09T19:14:00Z TMA: that's #'list 2018-07-09T19:14:33Z phoe: TMA: ...........oh 2018-07-09T19:14:37Z _death: makomo: I'm not sure the particular case fits once-only since it's not just a bunch of names but actual structure.. for example if you work with bindings you could have something like https://plaster.tymoon.eu/view/842#842 2018-07-09T19:14:54Z phoe: TMA: is that one of these minor Lisp enlightenments 2018-07-09T19:16:05Z makomo: _death: what do you mean by "actual structure"? the way i see it, you have some expressions and you want to generate such an expansion that will bind some gensyms to the result of evaluating those expressions 2018-07-09T19:16:11Z makomo: how does that not apply in this case? 2018-07-09T19:16:14Z loginoob joined #lisp 2018-07-09T19:16:42Z loginoob: quit command in slime emacs gives me quit is unbounded error 2018-07-09T19:17:03Z phoe: ...hm, a random question - in (lambda (&rest x) x), the value of X is immutable, correct? 2018-07-09T19:17:22Z TMA: phoe: well, the list bound by a &rest parameter has not a dynamic extent but rather an indefinite one specifically to permit (defun list (&rest list) list); it is written somewhere in the hyperspec/cltl2 2018-07-09T19:17:25Z vap1 quit (Quit: Leaving) 2018-07-09T19:17:27Z White_Flame: phoe: in my view, an extension of identity to multiple parameterswould be (defun identity (first &rest rest) (declare (ignore rest)) first) 2018-07-09T19:17:35Z _death: makomo: the structure is ((name form) ...) which you need to parse even after once-onlying the names 2018-07-09T19:17:44Z phoe: TMA: yes, I see 2018-07-09T19:17:49Z phoe: White_Flame: yep, I see 2018-07-09T19:18:12Z rawste quit (Quit: Sleep....) 2018-07-09T19:18:25Z White_Flame: loginoob: slime-quit-lisp, or slime-restart-inferior-lisp, etc 2018-07-09T19:18:30Z makomo: _death: but why is that a problem? you'd parse it normally, no? isn't the main problem the fact that you have an arbitrary number of those "pairs"? 2018-07-09T19:19:03Z TMA: White_Flame: in other words #'prog1 2018-07-09T19:19:19Z loginoob: White_Flame: slime-quit-lisp is unbounded 2018-07-09T19:19:22Z makomo: if there was a fixed number of them, you could destructure each one of them and give each one of them a name, and then use ONCE-ONLY on those names (since there's a finite amount of them) 2018-07-09T19:19:52Z phoe: loginoob: slime-repl-sayoonara 2018-07-09T19:20:02Z phoe: this is one of the most silly function names I have ever read 2018-07-09T19:20:34Z loginoob: phoe: that too gives me unbounded. 2018-07-09T19:20:42Z loginoob: Is there something wrong with my slime setup 2018-07-09T19:20:49Z White_Flame: TMA: well, PROG1 isn't a function like LIST is 2018-07-09T19:21:05Z jackdaniel: #'be-a-lisp-savior-and-die 2018-07-09T19:21:26Z White_Flame: loginoob: tab completion is your friend 2018-07-09T19:22:17Z loginoob: White_Flame: I know that but every quit command i tried gives me unbounded error 2018-07-09T19:22:57Z phoe: loginoob: your emacs config sounds screwed up 2018-07-09T19:23:24Z White_Flame: wait, are you typing on the repl, or issuing a M-x command? 2018-07-09T19:23:33Z loginoob: repl 2018-07-09T19:23:42Z White_Flame: yeah, that's your problem 2018-07-09T19:23:55Z White_Flame: you need to command emacs, not the lisp-side of things 2018-07-09T19:24:02Z loginoob: oh 2018-07-09T19:24:10Z loginoob: sorry 2018-07-09T19:25:10Z _death: makomo: how would your dream operator look like then? 2018-07-09T19:25:34Z milanj_ joined #lisp 2018-07-09T19:26:00Z makomo: _death: well, something like (once-only-fun exp ...), where EXP would be evaluated to get a list of symbols to use 2018-07-09T19:27:04Z TMA: White_Flame: well, other than that (and the description of PROG2 being wrong in the hyperspec) (PROG1 ...) does the same as ((lambda (a &rest b) (declare (ignore b)) a) ...) 2018-07-09T19:27:22Z shka_ quit (Ping timeout: 264 seconds) 2018-07-09T19:27:39Z EvW1 joined #lisp 2018-07-09T19:27:44Z White_Flame: looking at the original question, the only reason you'd use IDENTITY is if you're passing it into something that wants a function object 2018-07-09T19:28:05Z White_Flame: so presumably, any substitute that does multiple parameters would want the same 2018-07-09T19:28:07Z _death: makomo: not sure I follow.. once-only needs both names and forms.. 2018-07-09T19:28:14Z zaquest quit (Ping timeout: 244 seconds) 2018-07-09T19:28:20Z makomo: _death: right, sorry. it would be a list of "specs" 2018-07-09T19:29:41Z _death: makomo: so in the example I pasted, you pass it the specs and get back the a list of the original names as well as a bindings list 2018-07-09T19:31:17Z TMA: White_Flame: I have forgotten that PROG1 is a macro. I have implemented it as a ordinary function in my old interpreter 2018-07-09T19:31:32Z makomo: _death: right, which is basically what i want, but you still have to (1) have a "functional" version of this macro you want to use and (2) have to use the returned expansion "manually" 2018-07-09T19:31:46Z dieggsy quit (Quit: ZNC 1.6.6+deb1 - http://znc.in) 2018-07-09T19:31:51Z makomo: (2) could be solved by some more macros i guess?, but you can't escape (1) 2018-07-09T19:32:06Z rawste joined #lisp 2018-07-09T19:32:10Z makomo: you have to reinvent ONCE-ONLY and provide a function which returns its expansion (or rather, parts of its expansion) 2018-07-09T19:32:32Z makomo: i.e. you almost took the body of ONCE-ONLY and stuffed it into a function 2018-07-09T19:33:07Z edgar-rft quit (Quit: edgar-rft) 2018-07-09T19:34:28Z _death: makomo: with once-only, usually you don't care about the forms the names are bound to, just want to refer to their evaluation.. but here you still want to do something with the names so they can't be eliminated.. you could have a (once-only-bindings (names) bindings . body-using-names) that saves you the let*.. but doesn't seem worth it 2018-07-09T19:35:52Z loginoob: Whenever I do M-x slime I get "end of file during parsing" while loading the history. Continue? (y/n) 2018-07-09T19:35:54Z k4rtik joined #lisp 2018-07-09T19:35:57Z jibanes quit (Ping timeout: 240 seconds) 2018-07-09T19:35:59Z _death: makomo: no, once-only doesn't look like that at all :) 2018-07-09T19:36:01Z loginoob: can someone please help me with it too 2018-07-09T19:37:52Z jibanes joined #lisp 2018-07-09T19:38:36Z dieggsy joined #lisp 2018-07-09T19:41:21Z asdfghjkl joined #lisp 2018-07-09T19:41:51Z asdfghjkl: how do you stop SLIME from inserting tabs? 2018-07-09T19:42:23Z asdfghjkl: *auto-inserting tabs that is 2018-07-09T19:42:41Z trittweiler: Are you looking for (setq-default indent-tabs-mode nil) ? 2018-07-09T19:43:27Z xrash quit (Ping timeout: 240 seconds) 2018-07-09T19:43:44Z asdfghjkl: i tried adding ";;;; -*- indent-tabs-mode:nil; -*-;" near the top 2018-07-09T19:44:25Z Xach: asdfghjkl: i add (setq indent-tabs-mode nil) in my mode hooks. (this is not a slime-specific thing.) 2018-07-09T19:44:35Z Xach: trittweiler's solution seems better! 2018-07-09T19:45:12Z mflem quit (Ping timeout: 245 seconds) 2018-07-09T19:45:57Z Folkol quit (Ping timeout: 240 seconds) 2018-07-09T19:46:40Z xrash joined #lisp 2018-07-09T19:46:48Z Folkol joined #lisp 2018-07-09T19:47:56Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2018-07-09T19:49:25Z gabiruh quit (Ping timeout: 245 seconds) 2018-07-09T19:50:05Z asdfghjkl: it's working now, thank you 2018-07-09T19:50:24Z asdfghjkl quit (Quit: WeeChat 2.0.1) 2018-07-09T19:51:03Z zaquest joined #lisp 2018-07-09T19:51:09Z k4rtik quit (Ping timeout: 256 seconds) 2018-07-09T19:52:26Z klltkr quit (Remote host closed the connection) 2018-07-09T19:54:11Z makomo: _death: well yeah, the real once-only doesn't, true 2018-07-09T19:54:19Z makomo: _death: i'm not sure about what you said, i'll think about it 2018-07-09T19:57:44Z Xach slogggs though the quicklisp backlog! 2018-07-09T19:57:55Z pjb: phoe: values 2018-07-09T19:59:32Z Jesin joined #lisp 2018-07-09T19:59:53Z vlad_ joined #lisp 2018-07-09T20:04:13Z Xach: Are there any debian experts who might be able to privately help me through some quicklisp build-server setup issues? 2018-07-09T20:04:55Z brendyn quit (Ping timeout: 244 seconds) 2018-07-09T20:07:02Z angavrilov quit (Remote host closed the connection) 2018-07-09T20:08:05Z flazh joined #lisp 2018-07-09T20:08:11Z _death: makomo: macros are just programs.. a lot of common functionality can be factored into functions, so there's nothing wrong with functions that return parts of an expansion.. you only need to separate macro definition from macro use so you don't need ugly eval-whens 2018-07-09T20:08:46Z pjb: Just remember to wrap the functions used by the macro at macroexpansion time in a (eval-when (:compile-toplevel) …). 2018-07-09T20:08:55Z aeth: You absolutely should break up macros into functions. 2018-07-09T20:09:04Z aeth: I do use the eval-whens though. 2018-07-09T20:09:04Z pjb: (or in a different file loaded in the compilation environment (how do you load a file in the compilation environment with asdf?)) 2018-07-09T20:09:18Z _death: pjb: the latter is what I referred to 2018-07-09T20:09:22Z makomo: _death: yeah, i understand that, that's not the problem. the problem is that *you* have to write a function that returns ONCE-ONLY's expansion 2018-07-09T20:09:32Z _death: pjb: put them in different files and avoid ugly eval-when 2018-07-09T20:09:35Z aeth: If it's a function only usable in one macro, it should be in the same file as the macro unless it's a *very* complicated macro, like the one I use that converts s-expressions to GLSL strings at compile time. 2018-07-09T20:09:40Z makomo: i.e. if the original author doesn't provide such a function, you're screwed 2018-07-09T20:09:51Z oni-on-ion: macros bad? 2018-07-09T20:10:18Z _death: makomo: languages are raw material, and you're a programmer dealing with that :) 2018-07-09T20:10:36Z karlosz quit (Quit: karlosz) 2018-07-09T20:10:45Z makomo: you could say that for anything :D 2018-07-09T20:11:05Z makomo: but yeah, i would like to use *just* ONCE-ONLY to get the same effect 2018-07-09T20:11:11Z makomo: so it'll have to use EVAL or similar in the end 2018-07-09T20:11:32Z makomo: and there's no way to escape that (assuming the author didn't provide that function that you showed) 2018-07-09T20:12:55Z _death: makomo: I once pasted some once-only variant, but it only provided parsing of the specs as a function.. https://gist.github.com/death/8551cf20e2bf296455a3e8cf3f3be11b 2018-07-09T20:13:06Z smasta quit (Read error: Connection reset by peer) 2018-07-09T20:13:39Z makomo: yikes 2018-07-09T20:13:45Z makomo: ONCE-ONLY never ceases to amaze me 2018-07-09T20:14:57Z Cartogy quit (Ping timeout: 252 seconds) 2018-07-09T20:15:32Z DingoSaar joined #lisp 2018-07-09T20:16:29Z trittweiler: Oh nice - I like the syntax suggested by that tcr fellow. ;) 2018-07-09T20:16:40Z _death: yeah :) 2018-07-09T20:17:45Z Jesin quit (Quit: Leaving) 2018-07-09T20:18:26Z lumm quit (Remote host closed the connection) 2018-07-09T20:18:49Z gabiruh joined #lisp 2018-07-09T20:19:26Z papachan quit (Read error: Connection reset by peer) 2018-07-09T20:21:56Z scymtym joined #lisp 2018-07-09T20:22:38Z loginoob left #lisp 2018-07-09T20:23:59Z papachan joined #lisp 2018-07-09T20:24:57Z daniel-s joined #lisp 2018-07-09T20:26:06Z SaganMan quit (Ping timeout: 244 seconds) 2018-07-09T20:26:23Z shifty joined #lisp 2018-07-09T20:26:59Z mejja quit (Quit: mejja) 2018-07-09T20:29:36Z iskander left #lisp 2018-07-09T20:34:28Z Jesin joined #lisp 2018-07-09T20:35:57Z TCZ joined #lisp 2018-07-09T20:36:29Z Xof: he had taste 2018-07-09T20:38:04Z DingoSaar quit (Remote host closed the connection) 2018-07-09T20:39:22Z DingoSaar joined #lisp 2018-07-09T20:41:37Z nowhere_man quit (Ping timeout: 248 seconds) 2018-07-09T20:48:29Z vlatkoB quit (Remote host closed the connection) 2018-07-09T20:49:14Z SaganMan joined #lisp 2018-07-09T20:49:38Z rawste quit (Quit: Sleep....) 2018-07-09T20:51:11Z zotan joined #lisp 2018-07-09T20:58:51Z andrei-n quit (Ping timeout: 240 seconds) 2018-07-09T20:58:58Z MoziM quit (Quit: WeeChat 2.1) 2018-07-09T21:01:20Z vlad_ is now known as Murii__ 2018-07-09T21:02:20Z eli_oat quit (Quit: Leaving.) 2018-07-09T21:06:03Z pierpal joined #lisp 2018-07-09T21:07:03Z k4rtik joined #lisp 2018-07-09T21:11:33Z Murii__ quit (Remote host closed the connection) 2018-07-09T21:14:47Z TCZ quit (Quit: Leaving) 2018-07-09T21:18:51Z slyrus quit (Quit: slyrus) 2018-07-09T21:19:50Z Naergon quit (Ping timeout: 260 seconds) 2018-07-09T21:22:15Z zachk joined #lisp 2018-07-09T21:22:15Z zachk quit (Changing host) 2018-07-09T21:22:15Z zachk joined #lisp 2018-07-09T21:23:12Z gabiruh quit (Quit: ZNC - 1.6.0 - http://znc.in) 2018-07-09T21:23:21Z gabiruh joined #lisp 2018-07-09T21:25:40Z b413 joined #lisp 2018-07-09T21:26:50Z slyrus joined #lisp 2018-07-09T21:29:11Z mindCrime quit (Ping timeout: 256 seconds) 2018-07-09T21:31:27Z Jesin quit (Quit: Leaving) 2018-07-09T21:31:34Z shifty quit (Ping timeout: 264 seconds) 2018-07-09T21:31:44Z kajo joined #lisp 2018-07-09T21:35:44Z k4rtik quit (Quit: WeeChat 2.1) 2018-07-09T21:35:53Z k4rtik joined #lisp 2018-07-09T21:35:54Z k4rtik quit (Changing host) 2018-07-09T21:35:54Z k4rtik joined #lisp 2018-07-09T21:36:15Z LiamH quit (Quit: Leaving.) 2018-07-09T21:38:00Z Bike quit (Ping timeout: 252 seconds) 2018-07-09T21:38:45Z rumbler31 joined #lisp 2018-07-09T21:43:05Z rumbler31 quit (Ping timeout: 240 seconds) 2018-07-09T21:47:35Z pierpa joined #lisp 2018-07-09T21:48:30Z lumm joined #lisp 2018-07-09T21:49:29Z makomo: _death: welp, here it is https://plaster.tymoon.eu/view/843#843 2018-07-09T21:50:51Z makomo: it's aliveee 2018-07-09T21:51:57Z makomo: well, anyway, this achieves my goal of using ONCE-ONLY directly, without any rewriting or reinventing the macro 2018-07-09T21:52:14Z makomo: it does have to use an explicit EVAL, but i don't think there is another way 2018-07-09T21:53:05Z edgar-rft joined #lisp 2018-07-09T21:54:05Z optikalmouse quit (Quit: optikalmouse) 2018-07-09T21:54:22Z _death: well, at least it's a good exercise ;) 2018-07-09T21:55:55Z _death: you could also call the macro function 2018-07-09T21:58:01Z makomo: _death: oh, like (funcall (macro-function 'once-only) ...)? 2018-07-09T21:58:12Z _death: yes 2018-07-09T21:58:16Z makomo: huh yeah, holy 2018-07-09T21:58:19Z makomo: didn't think of that 2018-07-09T21:59:03Z makomo: that might be the cleanest approach maybe 2018-07-09T21:59:09Z makomo: the macroexpand one is kinda ugly 2018-07-09T21:59:18Z makomo: i'm not sure about eval vs. macro-function 2018-07-09T22:00:12Z makomo: but all of this should be hidden into a macro anyway i think 2018-07-09T22:00:21Z makomo: i.e. ONCE-ONLY-EVAL would do all of this trickery for you 2018-07-09T22:00:27Z makomo: using ONCE-ONLY under the hood 2018-07-09T22:00:39Z gabiruh quit (Ping timeout: 244 seconds) 2018-07-09T22:02:11Z _death: I'm going to sleep now.. expect this to be written by tomorrow ;D 2018-07-09T22:03:18Z makomo: _death: i'll see what i can do :D 2018-07-09T22:05:20Z Kundry_Wag joined #lisp 2018-07-09T22:10:22Z k4rtik quit (Quit: WeeChat 2.1) 2018-07-09T22:12:43Z k4rtik joined #lisp 2018-07-09T22:12:43Z k4rtik quit (Changing host) 2018-07-09T22:12:44Z k4rtik joined #lisp 2018-07-09T22:13:30Z b413 quit (Quit: WeeChat 2.0.1) 2018-07-09T22:22:49Z random-nick quit (Ping timeout: 260 seconds) 2018-07-09T22:24:01Z sjl_ joined #lisp 2018-07-09T22:24:36Z erratic quit (Ping timeout: 256 seconds) 2018-07-09T22:26:07Z mange joined #lisp 2018-07-09T22:27:13Z sjl quit (Ping timeout: 248 seconds) 2018-07-09T22:28:00Z brettgilio joined #lisp 2018-07-09T22:32:13Z Bike joined #lisp 2018-07-09T22:36:25Z kerframil joined #lisp 2018-07-09T22:38:11Z daniel-s quit (Quit: Konversation terminated!) 2018-07-09T22:47:00Z gabiruh joined #lisp 2018-07-09T22:49:16Z mflem joined #lisp 2018-07-09T22:49:29Z blackwolf quit (Remote host closed the connection) 2018-07-09T22:50:23Z k4rtik quit (Ping timeout: 276 seconds) 2018-07-09T22:50:44Z lumm quit (Quit: lumm) 2018-07-09T22:57:39Z jasmith joined #lisp 2018-07-09T22:57:49Z Kaisyu joined #lisp 2018-07-09T23:01:54Z robotoad quit (Quit: robotoad) 2018-07-09T23:02:28Z robotoad joined #lisp 2018-07-09T23:02:39Z jasmith quit (Ping timeout: 244 seconds) 2018-07-09T23:05:07Z robotoad quit (Client Quit) 2018-07-09T23:05:18Z test1600 joined #lisp 2018-07-09T23:11:05Z kdas_ joined #lisp 2018-07-09T23:11:17Z kushal quit (Remote host closed the connection) 2018-07-09T23:15:36Z mflem quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2018-07-09T23:21:42Z test1600_ joined #lisp 2018-07-09T23:22:05Z minion joined #lisp 2018-07-09T23:22:24Z milanj__ joined #lisp 2018-07-09T23:22:24Z brettg_ joined #lisp 2018-07-09T23:22:39Z Cthulhux quit (Read error: Connection reset by peer) 2018-07-09T23:22:39Z stacksmith quit (Remote host closed the connection) 2018-07-09T23:22:46Z whartung_ joined #lisp 2018-07-09T23:22:57Z whartung quit (Ping timeout: 240 seconds) 2018-07-09T23:22:58Z whartung_ is now known as whartung 2018-07-09T23:22:59Z brettgilio quit (Read error: Connection reset by peer) 2018-07-09T23:23:03Z Cthulhux joined #lisp 2018-07-09T23:23:21Z deng_cn1 joined #lisp 2018-07-09T23:23:33Z deng_cn quit (Ping timeout: 240 seconds) 2018-07-09T23:23:33Z deng_cn1 is now known as deng_cn 2018-07-09T23:23:46Z gabiruh quit (Ping timeout: 264 seconds) 2018-07-09T23:24:04Z graphene quit (Ping timeout: 260 seconds) 2018-07-09T23:24:27Z milanj_ quit (Ping timeout: 240 seconds) 2018-07-09T23:24:28Z earl-ducaine quit (Ping timeout: 240 seconds) 2018-07-09T23:24:28Z White_Flame quit (Ping timeout: 240 seconds) 2018-07-09T23:25:15Z test1600 quit (Ping timeout: 260 seconds) 2018-07-09T23:25:15Z Oddity quit (Ping timeout: 260 seconds) 2018-07-09T23:25:15Z energizer quit (Ping timeout: 260 seconds) 2018-07-09T23:25:23Z earl-ducaine joined #lisp 2018-07-09T23:26:01Z energizer joined #lisp 2018-07-09T23:26:01Z oni-on-ion: this? http://stevelosh.com/blog/2018/07/fun-with-macros-if-let/ 2018-07-09T23:27:44Z oni-on-ion: literally just reading about 'when-bind' and some very similar examples in On Lisp, pp.94 section 7.6 2018-07-09T23:28:19Z Bike: "this?" what? 2018-07-09T23:29:05Z White_Flame joined #lisp 2018-07-09T23:31:23Z robotoad joined #lisp 2018-07-09T23:31:42Z Oddity joined #lisp 2018-07-09T23:31:50Z stacksmith joined #lisp 2018-07-09T23:33:09Z oni-on-ion: sorry it was jackdaniel who posted this article earlier but i just came across it now from the wild. i thought it was somewhat related to ONCE-ONLY that was being discussed here 2018-07-09T23:37:02Z gabiruh joined #lisp 2018-07-09T23:39:31Z rumbler31 joined #lisp 2018-07-09T23:43:27Z rumbler31 quit (Ping timeout: 240 seconds) 2018-07-09T23:48:57Z pierpal quit (Ping timeout: 268 seconds) 2018-07-09T23:56:50Z k-hos quit (Read error: Connection reset by peer) 2018-07-09T23:59:44Z Smokitch quit 2018-07-10T00:06:21Z jfb4 quit (Ping timeout: 264 seconds) 2018-07-10T00:10:17Z k-hos joined #lisp 2018-07-10T00:20:27Z karlosz joined #lisp 2018-07-10T00:22:13Z markoong quit (Ping timeout: 244 seconds) 2018-07-10T00:24:51Z mange quit (Ping timeout: 256 seconds) 2018-07-10T00:31:31Z jack_rabbit joined #lisp 2018-07-10T00:33:09Z galiley joined #lisp 2018-07-10T00:33:14Z smokeink joined #lisp 2018-07-10T00:36:05Z brettg_ quit (Remote host closed the connection) 2018-07-10T00:39:14Z dddddd quit (Remote host closed the connection) 2018-07-10T00:40:01Z smokeink quit (Ping timeout: 248 seconds) 2018-07-10T00:40:53Z terpri quit (Ping timeout: 276 seconds) 2018-07-10T00:41:12Z karlosz quit (Quit: karlosz) 2018-07-10T00:42:08Z elfmacs joined #lisp 2018-07-10T00:48:15Z robotoad quit (Quit: robotoad) 2018-07-10T00:48:48Z robotoad joined #lisp 2018-07-10T00:49:28Z Guest56583 quit (Remote host closed the connection) 2018-07-10T00:49:28Z itruslove quit (Remote host closed the connection) 2018-07-10T00:56:49Z xrash quit (Ping timeout: 260 seconds) 2018-07-10T00:57:17Z itruslove joined #lisp 2018-07-10T00:58:49Z robotoad quit (Quit: robotoad) 2018-07-10T01:00:50Z giraffe joined #lisp 2018-07-10T01:01:16Z giraffe is now known as Guest76646 2018-07-10T01:08:35Z aindilis quit (Remote host closed the connection) 2018-07-10T01:08:51Z EvW1 quit (Ping timeout: 240 seconds) 2018-07-10T01:08:54Z jasmith joined #lisp 2018-07-10T01:10:03Z aindilis joined #lisp 2018-07-10T01:14:05Z milanj__ quit (Quit: This computer has gone to sleep) 2018-07-10T01:15:22Z doesthiswork quit (Quit: Leaving.) 2018-07-10T01:22:15Z Pixel_Outlaw joined #lisp 2018-07-10T01:25:39Z karlosz joined #lisp 2018-07-10T01:26:57Z Khisanth quit (Ping timeout: 248 seconds) 2018-07-10T01:32:53Z okok111 joined #lisp 2018-07-10T01:35:13Z xrash joined #lisp 2018-07-10T01:35:22Z kristof joined #lisp 2018-07-10T01:35:28Z kristof: So, uh 2018-07-10T01:36:13Z kristof: I have stumbled onto something quite accidentally that I read about exactly once in an erik naggum flamewar and I would like to know where in the spec this particular behavior is described 2018-07-10T01:36:24Z zachk quit (Quit: Leaving) 2018-07-10T01:36:25Z Bike: enticing. 2018-07-10T01:37:34Z kristof: (defvar variable-name) (defun function-name (variable-name) ;;body) will *bind* variable-name to the value 2018-07-10T01:37:58Z Bike: you mean, will be a special binding? yes. 2018-07-10T01:38:17Z aeth: expected 2018-07-10T01:38:35Z Kundry_W_ joined #lisp 2018-07-10T01:39:02Z aeth: I wonder, is there a portability library for lexical globals? Is it common enough? 2018-07-10T01:39:19Z kristof: there's no need due to naming conventions 2018-07-10T01:39:35Z kristof: I just chose to eschew the naming conventions today and immediately discovered why there are naming conventions 2018-07-10T01:39:49Z Khisanth joined #lisp 2018-07-10T01:39:58Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-10T01:39:59Z Bike: so if you're asking what says this is the case, it's described in 2018-07-10T01:40:01Z Bike: clhs special 2018-07-10T01:40:01Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/d_specia.htm 2018-07-10T01:40:07Z Bike: "When used in a proclamation, a special declaration specifier applies to all bindings as well as to all references of the mentioned variables." 2018-07-10T01:40:48Z Bike: and defvar/parameter make such a proclamation. 2018-07-10T01:42:40Z aeth: There are so many fun ways to avoid globals. You can create a closure by putting one or more defuns in a top-level let, for instance. Or you could create a macro that tracks what you want to track. 2018-07-10T01:43:07Z kristof: Ok, my confusion has been dispelled. 2018-07-10T01:44:04Z kristof: I do like globals. They're in the language, and special bindings are unique among all the lexically scoped languages that they deserve to be understood and used. 2018-07-10T01:44:08Z aeth: This is one way I avoided having a global variable via a macro: (let (... (version (if (fboundp name) (multiple-value-bind (value version) (funcall (fdefinition name)) (declare (ignore value)) (if (and version (integerp version)) (incf version) 1)) 0))) ...) 2018-07-10T01:44:42Z aeth: I turned the second return value into the version counter for redefinitions 2018-07-10T01:45:16Z kristof: I was actually using a defvar in this case to specify a dynamically scoped value that I just didn't want to pass as an argument. I find that valuable 2018-07-10T01:45:54Z kristof: I do wonder why there wasn't a lexical declaration 2018-07-10T01:46:03Z aeth: That does make sense, but I find that the things that make sense as special variables usually already exist (things like *standard-output*) 2018-07-10T01:46:21Z gabiruh quit (Ping timeout: 240 seconds) 2018-07-10T01:46:29Z kristof: and why it wasn't enforced for, say, defun params 2018-07-10T01:47:02Z okok111 quit (Quit: Page closed) 2018-07-10T01:48:00Z Bike: if you declare a variable special _locally_, and then bind it again in that extent, that binding will be lexical, so no need for a declaration 2018-07-10T01:48:12Z Bike: proclaiming something globally special is extra special 2018-07-10T01:49:01Z test1600_ quit (Ping timeout: 244 seconds) 2018-07-10T01:52:16Z catern quit (Excess Flood) 2018-07-10T01:55:23Z pierpal joined #lisp 2018-07-10T01:55:51Z catern joined #lisp 2018-07-10T01:58:28Z kdas_ is now known as kushal 2018-07-10T01:58:48Z SenasOzys joined #lisp 2018-07-10T01:59:17Z SenasOzys quit (Remote host closed the connection) 2018-07-10T01:59:27Z pierpal quit (Ping timeout: 240 seconds) 2018-07-10T01:59:29Z quazimodo quit (Ping timeout: 248 seconds) 2018-07-10T01:59:44Z SenasOzys joined #lisp 2018-07-10T01:59:47Z caltelt joined #lisp 2018-07-10T02:00:20Z pierpal joined #lisp 2018-07-10T02:01:23Z quazimodo joined #lisp 2018-07-10T02:02:02Z kristof quit (Remote host closed the connection) 2018-07-10T02:07:49Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-10T02:08:15Z nickenchuggets joined #lisp 2018-07-10T02:08:15Z nickenchuggets quit (Changing host) 2018-07-10T02:08:15Z nickenchuggets joined #lisp 2018-07-10T02:12:49Z stacksmith1 joined #lisp 2018-07-10T02:12:59Z potatonomicon joined #lisp 2018-07-10T02:13:17Z SenasOzys__ joined #lisp 2018-07-10T02:13:26Z slyrus1 joined #lisp 2018-07-10T02:13:34Z Plazma_ joined #lisp 2018-07-10T02:13:49Z tazjin_ joined #lisp 2018-07-10T02:14:01Z borodust- joined #lisp 2018-07-10T02:14:43Z nckx- joined #lisp 2018-07-10T02:14:54Z asedeno_ joined #lisp 2018-07-10T02:15:26Z caltelt_ joined #lisp 2018-07-10T02:16:43Z sakalli_ joined #lisp 2018-07-10T02:16:45Z mrm_ joined #lisp 2018-07-10T02:16:54Z vertigo_ joined #lisp 2018-07-10T02:16:59Z vert2_ joined #lisp 2018-07-10T02:17:03Z nimiux_ joined #lisp 2018-07-10T02:17:06Z tessier_ joined #lisp 2018-07-10T02:17:16Z nimiux_ quit (Changing host) 2018-07-10T02:17:16Z nimiux_ joined #lisp 2018-07-10T02:17:18Z eagleflo_ joined #lisp 2018-07-10T02:17:22Z ineiros_ joined #lisp 2018-07-10T02:17:28Z tessier_ quit (Changing host) 2018-07-10T02:17:28Z tessier_ joined #lisp 2018-07-10T02:17:29Z reverse_1ight joined #lisp 2018-07-10T02:17:39Z impulse- joined #lisp 2018-07-10T02:17:49Z justinmcp joined #lisp 2018-07-10T02:18:20Z parjanya` joined #lisp 2018-07-10T02:18:31Z eli_oat joined #lisp 2018-07-10T02:18:43Z buffergn0me joined #lisp 2018-07-10T02:19:04Z juristi1 joined #lisp 2018-07-10T02:19:11Z robotoad joined #lisp 2018-07-10T02:19:20Z dlowe_ joined #lisp 2018-07-10T02:19:22Z stacksmith quit (Ping timeout: 240 seconds) 2018-07-10T02:19:22Z tazjin quit (Ping timeout: 240 seconds) 2018-07-10T02:19:22Z aeth quit (Ping timeout: 240 seconds) 2018-07-10T02:19:22Z charh quit (Ping timeout: 240 seconds) 2018-07-10T02:19:22Z vert2 quit (Ping timeout: 240 seconds) 2018-07-10T02:19:22Z jxy quit (Ping timeout: 240 seconds) 2018-07-10T02:19:22Z saturn2 quit (Ping timeout: 240 seconds) 2018-07-10T02:19:22Z uint quit (Ping timeout: 240 seconds) 2018-07-10T02:19:22Z nimiux quit (Ping timeout: 240 seconds) 2018-07-10T02:19:22Z Ober quit (Ping timeout: 240 seconds) 2018-07-10T02:19:22Z runejuhl quit (Ping timeout: 240 seconds) 2018-07-10T02:19:22Z catern quit (Ping timeout: 240 seconds) 2018-07-10T02:19:22Z k-hos quit (Ping timeout: 240 seconds) 2018-07-10T02:19:22Z Bike quit (Ping timeout: 240 seconds) 2018-07-10T02:19:22Z flazh quit (Ping timeout: 240 seconds) 2018-07-10T02:19:23Z parjanya quit (Ping timeout: 240 seconds) 2018-07-10T02:19:23Z juristi quit (Ping timeout: 240 seconds) 2018-07-10T02:19:23Z dlowe quit (Ping timeout: 240 seconds) 2018-07-10T02:19:23Z benny quit (Ping timeout: 240 seconds) 2018-07-10T02:19:23Z Younder quit (Ping timeout: 240 seconds) 2018-07-10T02:19:23Z elts quit (Ping timeout: 240 seconds) 2018-07-10T02:19:23Z cmatei quit (Ping timeout: 240 seconds) 2018-07-10T02:19:23Z Plazma quit (Ping timeout: 240 seconds) 2018-07-10T02:19:23Z justinmcp_ quit (Ping timeout: 240 seconds) 2018-07-10T02:19:23Z eagleflo quit (Ping timeout: 240 seconds) 2018-07-10T02:19:23Z bend3r quit (Ping timeout: 240 seconds) 2018-07-10T02:19:23Z phadthai_ joined #lisp 2018-07-10T02:19:23Z Bike joined #lisp 2018-07-10T02:19:23Z lansiir joined #lisp 2018-07-10T02:19:23Z flazh joined #lisp 2018-07-10T02:19:23Z asedeno quit (Ping timeout: 260 seconds) 2018-07-10T02:19:23Z nckx quit (Ping timeout: 260 seconds) 2018-07-10T02:19:23Z slyrus quit (Ping timeout: 260 seconds) 2018-07-10T02:19:23Z borodust quit (Ping timeout: 260 seconds) 2018-07-10T02:19:23Z dieggsy quit (Ping timeout: 260 seconds) 2018-07-10T02:19:23Z sakalli quit (Ping timeout: 260 seconds) 2018-07-10T02:19:23Z mrm quit (Ping timeout: 260 seconds) 2018-07-10T02:19:23Z xrash quit (Ping timeout: 260 seconds) 2018-07-10T02:19:23Z vertigo quit (Ping timeout: 260 seconds) 2018-07-10T02:19:23Z tessier quit (Ping timeout: 260 seconds) 2018-07-10T02:19:23Z HDurer quit (Ping timeout: 260 seconds) 2018-07-10T02:19:23Z kori quit (Ping timeout: 260 seconds) 2018-07-10T02:19:23Z phadthai quit (Ping timeout: 260 seconds) 2018-07-10T02:19:23Z caltelt quit (Ping timeout: 260 seconds) 2018-07-10T02:19:23Z SenasOzys quit (Ping timeout: 260 seconds) 2018-07-10T02:19:23Z impulse quit (Ping timeout: 260 seconds) 2018-07-10T02:19:23Z oldtopman quit (Ping timeout: 260 seconds) 2018-07-10T02:19:23Z Murii_ quit (Ping timeout: 260 seconds) 2018-07-10T02:19:23Z bexx_ quit (Ping timeout: 260 seconds) 2018-07-10T02:19:23Z reverse_light quit (Ping timeout: 260 seconds) 2018-07-10T02:19:24Z ineiros quit (Ping timeout: 260 seconds) 2018-07-10T02:19:24Z cmatei_ joined #lisp 2018-07-10T02:19:24Z tazjin_ quit (Changing host) 2018-07-10T02:19:24Z tazjin_ joined #lisp 2018-07-10T02:19:24Z asedeno_ quit (Changing host) 2018-07-10T02:19:24Z asedeno_ joined #lisp 2018-07-10T02:19:24Z vert2_ quit (Changing host) 2018-07-10T02:19:24Z vert2_ joined #lisp 2018-07-10T02:19:24Z nckx- is now known as nckx 2018-07-10T02:19:24Z dlowe_ is now known as dlowe 2018-07-10T02:19:25Z tazjin_ is now known as tazjin 2018-07-10T02:19:26Z slyrus1 is now known as slyrus 2018-07-10T02:19:27Z stacksmith1 is now known as stacksmith 2018-07-10T02:19:46Z Younder joined #lisp 2018-07-10T02:19:56Z lansiir quit (Changing host) 2018-07-10T02:19:56Z lansiir joined #lisp 2018-07-10T02:19:56Z saturn3 joined #lisp 2018-07-10T02:20:16Z xrash joined #lisp 2018-07-10T02:20:16Z xrash quit (*.net *.split) 2018-07-10T02:20:16Z Younder quit (*.net *.split) 2018-07-10T02:20:16Z flazh quit (*.net *.split) 2018-07-10T02:20:16Z lansiir quit (*.net *.split) 2018-07-10T02:20:16Z Bike quit (*.net *.split) 2018-07-10T02:20:16Z phadthai_ quit (*.net *.split) 2018-07-10T02:20:16Z nhandler_ quit (*.net *.split) 2018-07-10T02:20:24Z phadthai joined #lisp 2018-07-10T02:20:27Z Murii_ joined #lisp 2018-07-10T02:20:36Z aeth joined #lisp 2018-07-10T02:20:40Z runejuhl joined #lisp 2018-07-10T02:20:42Z kori joined #lisp 2018-07-10T02:21:41Z catern_ joined #lisp 2018-07-10T02:22:33Z HDurer joined #lisp 2018-07-10T02:22:39Z bend3r joined #lisp 2018-07-10T02:22:51Z aeth quit (Changing host) 2018-07-10T02:22:51Z aeth joined #lisp 2018-07-10T02:24:00Z Ober joined #lisp 2018-07-10T02:24:21Z beach` joined #lisp 2018-07-10T02:24:52Z HDurer quit (Changing host) 2018-07-10T02:24:52Z HDurer joined #lisp 2018-07-10T02:25:54Z Younder joined #lisp 2018-07-10T02:25:54Z xrash joined #lisp 2018-07-10T02:25:54Z flazh joined #lisp 2018-07-10T02:25:54Z lansiir joined #lisp 2018-07-10T02:25:54Z Bike joined #lisp 2018-07-10T02:26:05Z lansiir quit (Max SendQ exceeded) 2018-07-10T02:26:45Z lansiir joined #lisp 2018-07-10T02:26:58Z lansiir quit (Changing host) 2018-07-10T02:26:58Z lansiir joined #lisp 2018-07-10T02:28:19Z nhandler_ joined #lisp 2018-07-10T02:29:02Z skapata quit (Remote host closed the connection) 2018-07-10T02:29:04Z bexx_ joined #lisp 2018-07-10T02:29:16Z beach quit (Ping timeout: 256 seconds) 2018-07-10T02:31:10Z dieggsy joined #lisp 2018-07-10T02:31:18Z saturn3 quit (Quit: WeeChat 1.0.1) 2018-07-10T02:31:39Z catern_ is now known as catern 2018-07-10T02:32:06Z jxy joined #lisp 2018-07-10T02:32:09Z clone_of_saturn joined #lisp 2018-07-10T02:32:13Z clone_of_saturn is now known as saturn2 2018-07-10T02:33:29Z benny joined #lisp 2018-07-10T02:33:55Z benny is now known as Guest49727 2018-07-10T02:34:00Z uint joined #lisp 2018-07-10T02:36:29Z rumbler31 joined #lisp 2018-07-10T02:37:22Z terpri joined #lisp 2018-07-10T02:37:23Z Kundry_W_ quit (Read error: Connection reset by peer) 2018-07-10T02:37:47Z kerframil quit (Quit: Leaving) 2018-07-10T02:37:54Z Kundry_Wag joined #lisp 2018-07-10T02:38:59Z k4rtik joined #lisp 2018-07-10T02:39:05Z eli_oat quit (Quit: Leaving.) 2018-07-10T02:57:35Z asedeno_ is now known as asedeno 2018-07-10T03:02:51Z aindilis quit (Ping timeout: 240 seconds) 2018-07-10T03:06:46Z gabiruh joined #lisp 2018-07-10T03:07:49Z pierpa quit (Quit: Page closed) 2018-07-10T03:11:34Z gabiruh quit (Ping timeout: 260 seconds) 2018-07-10T03:15:22Z bjorkintosh quit (Quit: Leaving) 2018-07-10T03:18:08Z Kundry_Wag quit 2018-07-10T03:18:45Z deng_cn quit (Remote host closed the connection) 2018-07-10T03:19:07Z deng_cn joined #lisp 2018-07-10T03:19:54Z AetherWind joined #lisp 2018-07-10T03:27:45Z NoNumber joined #lisp 2018-07-10T03:28:04Z nickenchuggets quit (Quit: Leaving) 2018-07-10T03:28:16Z pierpal quit (Quit: Poof) 2018-07-10T03:28:36Z pierpal joined #lisp 2018-07-10T03:31:19Z aindilis joined #lisp 2018-07-10T03:43:43Z montxero joined #lisp 2018-07-10T03:44:12Z k4rtik quit (Ping timeout: 256 seconds) 2018-07-10T03:46:20Z k4rtik joined #lisp 2018-07-10T03:56:02Z SaganMan quit (Quit: WeeChat 1.6) 2018-07-10T03:56:22Z SaganMan joined #lisp 2018-07-10T04:07:50Z gabiruh joined #lisp 2018-07-10T04:09:35Z eli_oat joined #lisp 2018-07-10T04:10:18Z Pixel_Outlaw quit (Remote host closed the connection) 2018-07-10T04:11:38Z karlosz quit (Quit: karlosz) 2018-07-10T04:12:49Z gabiruh quit (Ping timeout: 260 seconds) 2018-07-10T04:16:33Z isospin joined #lisp 2018-07-10T04:17:45Z SaganMan quit (Quit: WeeChat 1.6) 2018-07-10T04:18:01Z SaganMan joined #lisp 2018-07-10T04:21:19Z didi` joined #lisp 2018-07-10T04:21:30Z didi`: Can I define methods on struct types? 2018-07-10T04:22:09Z Bike: if the defstruct doesn't have a head :type option, yes 2018-07-10T04:22:20Z didi`: Bike: Thank you. 2018-07-10T04:22:28Z Bike: try (find-class name nil). if you get a class, you can use it as a specializer for methods 2018-07-10T04:22:36Z didi`: Nice. 2018-07-10T04:22:42Z smokeink joined #lisp 2018-07-10T04:23:09Z eli_oat quit (Quit: eli_oat) 2018-07-10T04:23:29Z eli_oat joined #lisp 2018-07-10T04:25:15Z shka_ joined #lisp 2018-07-10T04:25:21Z k4rtik quit (Ping timeout: 240 seconds) 2018-07-10T04:25:27Z eli_oat quit (Client Quit) 2018-07-10T04:26:24Z eli_oat joined #lisp 2018-07-10T04:26:51Z didi`: Hum, SBCL must do something interesting with the order of slots of a struct, because changing the order of the slots and redefining the struct freaks out the compiler. 2018-07-10T04:27:10Z brettgilio joined #lisp 2018-07-10T04:27:36Z Bike: well, it uses that order for the internal data layout 2018-07-10T04:27:38Z smokeink quit (Ping timeout: 244 seconds) 2018-07-10T04:27:45Z Bike: hypothetically i guess it could recognize that you only permuted them 2018-07-10T04:27:57Z flip214: didi`: just redefine the same struct a second time ;) 2018-07-10T04:28:09Z flip214: that will be silent. 2018-07-10T04:28:19Z Bike: redefining a structure class is undefined behavior 2018-07-10T04:28:31Z Bike: in sbcl's case it means anything using parts of the structure definition will need to be recompiled 2018-07-10T04:28:37Z SaganMan quit (Remote host closed the connection) 2018-07-10T04:29:15Z didi`: Heh, I redefine structures all the time. :-P 2018-07-10T04:29:46Z flip214: me too. 2018-07-10T04:30:01Z didi`: "Ops, I forgot to add a specific slot. Redefining it, it is." 2018-07-10T04:30:03Z flip214: and ASDF's :SERIAL T takes care of recompilation most of the time 2018-07-10T04:30:16Z Bike: it's one of the criteria santa uses, you know 2018-07-10T04:30:19Z flip214: yeah, or changing a type afterwards... 2018-07-10T04:30:24Z didi`: Bike: :-P 2018-07-10T04:30:45Z flip214: Bike: that's not a strong argument in central europe 2018-07-10T04:31:38Z edgar-rft quit (Quit: edgar-rft) 2018-07-10T04:32:18Z eli_oat quit (Quit: eli_oat) 2018-07-10T04:33:00Z SaganMan joined #lisp 2018-07-10T04:36:18Z andrei-n joined #lisp 2018-07-10T04:38:54Z smokeink joined #lisp 2018-07-10T04:41:36Z brettgilio quit (Remote host closed the connection) 2018-07-10T04:41:37Z kark quit (Ping timeout: 248 seconds) 2018-07-10T04:42:06Z eli_oat joined #lisp 2018-07-10T04:43:07Z eli_oat quit (Client Quit) 2018-07-10T04:43:39Z kark joined #lisp 2018-07-10T04:44:27Z smokeink quit (Ping timeout: 240 seconds) 2018-07-10T04:44:57Z pjb quit (Remote host closed the connection) 2018-07-10T04:45:56Z Bike quit (Quit: Lost terminal) 2018-07-10T04:47:16Z mflem joined #lisp 2018-07-10T04:47:47Z elfmacs quit (Remote host closed the connection) 2018-07-10T04:47:55Z pjb joined #lisp 2018-07-10T04:48:24Z aindilis quit (Ping timeout: 260 seconds) 2018-07-10T04:49:46Z elfmacs joined #lisp 2018-07-10T04:52:09Z pjb quit (Remote host closed the connection) 2018-07-10T04:53:08Z aindilis joined #lisp 2018-07-10T04:53:32Z beach` is now known as beach 2018-07-10T04:57:25Z test1600 joined #lisp 2018-07-10T04:57:34Z light2yellow quit (Quit: light2yellow) 2018-07-10T04:58:59Z pjb joined #lisp 2018-07-10T05:04:44Z test1600 quit (Ping timeout: 260 seconds) 2018-07-10T05:07:14Z Inline_ quit (Quit: Leaving) 2018-07-10T05:09:02Z gabiruh joined #lisp 2018-07-10T05:10:21Z _cosmonaut_ joined #lisp 2018-07-10T05:12:13Z beach: Good morning everyone! 2018-07-10T05:13:29Z montxero quit (Ping timeout: 260 seconds) 2018-07-10T05:13:37Z gabiruh quit (Ping timeout: 244 seconds) 2018-07-10T05:14:20Z oni-on-ion: good morning 2018-07-10T05:18:07Z vlatkoB joined #lisp 2018-07-10T05:21:07Z didi` left #lisp 2018-07-10T05:31:49Z orivej quit (Ping timeout: 268 seconds) 2018-07-10T05:37:52Z pjb quit (Remote host closed the connection) 2018-07-10T05:39:19Z pjb joined #lisp 2018-07-10T05:39:43Z pjb is now known as Guest33926 2018-07-10T05:43:09Z nckx- joined #lisp 2018-07-10T05:45:00Z MoziM joined #lisp 2018-07-10T05:45:26Z Guest33926 quit (Remote host closed the connection) 2018-07-10T05:46:02Z nckx quit (Ping timeout: 245 seconds) 2018-07-10T05:46:02Z nckx- is now known as nckx 2018-07-10T05:52:56Z Guest33926 joined #lisp 2018-07-10T05:56:32Z brendyn joined #lisp 2018-07-10T05:59:01Z Guest33926 quit (Remote host closed the connection) 2018-07-10T06:00:24Z Guest33926 joined #lisp 2018-07-10T06:05:53Z Guest33926 quit (Ping timeout: 276 seconds) 2018-07-10T06:09:40Z gabiruh joined #lisp 2018-07-10T06:10:05Z montxero joined #lisp 2018-07-10T06:10:49Z Guest33926 joined #lisp 2018-07-10T06:13:57Z gabiruh quit (Ping timeout: 240 seconds) 2018-07-10T06:17:12Z Guest33926 quit (Ping timeout: 256 seconds) 2018-07-10T06:22:23Z gector quit (Read error: Connection reset by peer) 2018-07-10T06:22:32Z sauvin joined #lisp 2018-07-10T06:22:58Z Guest33926 joined #lisp 2018-07-10T06:23:04Z gector joined #lisp 2018-07-10T06:26:41Z ku joined #lisp 2018-07-10T06:27:43Z Guest33926 quit (Remote host closed the connection) 2018-07-10T06:28:17Z buffergn0me quit (Ping timeout: 248 seconds) 2018-07-10T06:28:42Z matijja joined #lisp 2018-07-10T06:29:33Z edgar-rft joined #lisp 2018-07-10T06:29:51Z potatonomicon quit (Ping timeout: 240 seconds) 2018-07-10T06:29:51Z Oddity quit (Ping timeout: 240 seconds) 2018-07-10T06:29:58Z Guest33926 joined #lisp 2018-07-10T06:31:43Z shrdlu68 joined #lisp 2018-07-10T06:32:20Z rippa joined #lisp 2018-07-10T06:33:52Z Guest33926 quit (Remote host closed the connection) 2018-07-10T06:34:51Z makomo quit (Ping timeout: 240 seconds) 2018-07-10T06:35:00Z bexx_ quit (Quit: see you) 2018-07-10T06:35:10Z Folkol quit (Read error: Connection reset by peer) 2018-07-10T06:36:34Z Oddity joined #lisp 2018-07-10T06:39:02Z Folkol joined #lisp 2018-07-10T06:43:00Z dmiles quit (Ping timeout: 244 seconds) 2018-07-10T06:48:12Z al-damiri quit (Quit: Connection closed for inactivity) 2018-07-10T06:48:41Z DingoSaar quit (Ping timeout: 244 seconds) 2018-07-10T06:50:40Z JuanDaugherty joined #lisp 2018-07-10T06:50:50Z saki quit (Quit: saki) 2018-07-10T06:50:56Z flamebeard joined #lisp 2018-07-10T06:54:47Z Lord_Nightmare quit (Quit: ZNC - http://znc.in) 2018-07-10T07:03:13Z Cymew quit 2018-07-10T07:03:46Z milanj__ joined #lisp 2018-07-10T07:06:00Z chrnok joined #lisp 2018-07-10T07:07:22Z shifty joined #lisp 2018-07-10T07:09:21Z shka_ quit (Ping timeout: 240 seconds) 2018-07-10T07:10:26Z gabiruh joined #lisp 2018-07-10T07:12:47Z Murii_ quit (Remote host closed the connection) 2018-07-10T07:15:25Z gabiruh quit (Ping timeout: 268 seconds) 2018-07-10T07:16:07Z muresanvlad_ joined #lisp 2018-07-10T07:16:49Z trittweiler quit (Ping timeout: 248 seconds) 2018-07-10T07:17:13Z trittweiler joined #lisp 2018-07-10T07:26:11Z mooshmoosh joined #lisp 2018-07-10T07:35:41Z Lord_Nightmare joined #lisp 2018-07-10T07:37:47Z schweers joined #lisp 2018-07-10T07:38:46Z caltelt_ quit (Ping timeout: 264 seconds) 2018-07-10T07:38:51Z shrdlu68 quit (Ping timeout: 268 seconds) 2018-07-10T07:40:22Z shrdlu68 joined #lisp 2018-07-10T07:41:19Z crsc quit (Quit: leaving) 2018-07-10T07:43:44Z Myon: svillemot: hi, are you taking over cl-interpol (#900623), or should I upload a fix? 2018-07-10T07:44:20Z captgector joined #lisp 2018-07-10T07:44:41Z gector quit (Ping timeout: 276 seconds) 2018-07-10T07:47:57Z pierpal quit (Ping timeout: 240 seconds) 2018-07-10T07:59:08Z svillemot: Myon: I'll do it 2018-07-10T07:59:18Z saki joined #lisp 2018-07-10T08:00:01Z Myon: svillemot: thanks 2018-07-10T08:02:19Z shrdlu68_ joined #lisp 2018-07-10T08:02:30Z shrdlu68 quit (Ping timeout: 265 seconds) 2018-07-10T08:02:46Z angavrilov joined #lisp 2018-07-10T08:04:17Z shrdlu68 joined #lisp 2018-07-10T08:06:09Z shrdlu68_ quit (Client Quit) 2018-07-10T08:08:35Z shrdlu68 quit (Ping timeout: 240 seconds) 2018-07-10T08:09:37Z gector joined #lisp 2018-07-10T08:10:14Z chiyosaki joined #lisp 2018-07-10T08:10:26Z shrdlu68 joined #lisp 2018-07-10T08:10:43Z captgector quit (Ping timeout: 265 seconds) 2018-07-10T08:11:15Z gabiruh joined #lisp 2018-07-10T08:12:16Z knobo: I've made a live-reload prototype for clack. It works for files, but now I want to add support for reload when I recompile a function. 2018-07-10T08:12:28Z knobo: But it could get quite complicated. 2018-07-10T08:12:51Z beach: What is "clack"? 2018-07-10T08:13:17Z knobo: beach: Web application environment for Common Lisp 2018-07-10T08:13:35Z saki quit (Ping timeout: 240 seconds) 2018-07-10T08:13:53Z knobo: I'm not shure if it would be possible to do what I want. 2018-07-10T08:14:27Z gector quit (Ping timeout: 240 seconds) 2018-07-10T08:14:54Z chiyosaki quit (Ping timeout: 260 seconds) 2018-07-10T08:15:07Z knobo: I want to find out what could be possible. 2018-07-10T08:15:51Z gabiruh quit (Ping timeout: 268 seconds) 2018-07-10T08:16:00Z shrdlu68 quit (Ping timeout: 244 seconds) 2018-07-10T08:16:05Z saki joined #lisp 2018-07-10T08:16:26Z knobo: Like, if it is possible to trace the function call tree when an url is accessed, and send update to the browser when any of those functions are recompiled. 2018-07-10T08:16:37Z shrdlu68 joined #lisp 2018-07-10T08:19:17Z saki quit (Client Quit) 2018-07-10T08:19:56Z akkad: everyone knows about clack! 2018-07-10T08:20:45Z blep-on-external: clack sounds complicated 2018-07-10T08:20:46Z blep-on-external: it's about the same as bare node.js in my opinion 2018-07-10T08:21:12Z knobo: blep-on-external: bare node.js? 2018-07-10T08:21:24Z saki joined #lisp 2018-07-10T08:22:23Z dddddd joined #lisp 2018-07-10T08:22:37Z shrdlu68 quit (Remote host closed the connection) 2018-07-10T08:22:45Z chiyosaki joined #lisp 2018-07-10T08:22:46Z shrdlu68 joined #lisp 2018-07-10T08:23:49Z smokeink joined #lisp 2018-07-10T08:24:23Z chiyosaki1 joined #lisp 2018-07-10T08:25:49Z saki quit (Ping timeout: 244 seconds) 2018-07-10T08:27:05Z knobo: Maybe use some xref functionality, but I still don't know how to hook that in to the compiler. 2018-07-10T08:27:09Z chiyosaki quit (Ping timeout: 260 seconds) 2018-07-10T08:27:50Z JuanDaugherty quit (Quit: Exeunt) 2018-07-10T08:27:57Z shrdlu68 quit (Ping timeout: 240 seconds) 2018-07-10T08:28:29Z mflem quit (Read error: Connection reset by peer) 2018-07-10T08:28:56Z shrdlu68 joined #lisp 2018-07-10T08:30:57Z terpri quit (Ping timeout: 240 seconds) 2018-07-10T08:31:09Z blep-on-external: like you're given the request object and the response object and you have to parse them and all tha 2018-07-10T08:31:28Z blep-on-external: *that. very bare. 2018-07-10T08:34:20Z shrdlu68 quit (Ping timeout: 256 seconds) 2018-07-10T08:34:51Z _cosmonaut_ quit (Ping timeout: 240 seconds) 2018-07-10T08:35:08Z shrdlu68 joined #lisp 2018-07-10T08:39:00Z smokeink quit (Quit: Leaving) 2018-07-10T08:43:45Z shrdlu68 quit (Remote host closed the connection) 2018-07-10T08:43:53Z shrdlu68 joined #lisp 2018-07-10T08:44:28Z v0|d joined #lisp 2018-07-10T08:45:05Z knobo: blep-on-external: but nobody uses only clack. Most people would use somthing on top. For example caveman. 2018-07-10T08:45:38Z v0|d: Xach: no bits type in ecl afaik (declare (type .. bits)) fails in salza2. maybe #-ecl. 2018-07-10T08:45:54Z Domaldel joined #lisp 2018-07-10T08:51:57Z knobo: I appreciate any suggestions. 2018-07-10T08:53:05Z knobo: maybe I should talk to #sbcl. 2018-07-10T08:53:36Z _cosmonaut_ joined #lisp 2018-07-10T08:56:07Z fe[nl]ix: merhaba v0|d 2018-07-10T08:56:19Z montxero quit (Ping timeout: 260 seconds) 2018-07-10T08:56:50Z chiyosaki1 quit (Ping timeout: 276 seconds) 2018-07-10T09:03:02Z montxero joined #lisp 2018-07-10T09:04:04Z v0|d: fe[nl]ix: lol 2018-07-10T09:04:40Z v0|d: i should go an learn some romanian, embarrasd*. 2018-07-10T09:04:50Z saki joined #lisp 2018-07-10T09:05:52Z Cymew joined #lisp 2018-07-10T09:06:06Z mrm_ is now known as mrm 2018-07-10T09:06:18Z mrm quit (Changing host) 2018-07-10T09:06:18Z mrm joined #lisp 2018-07-10T09:06:40Z muresanvlad_ quit (Remote host closed the connection) 2018-07-10T09:07:01Z montxero quit (Remote host closed the connection) 2018-07-10T09:08:38Z nowhere_man joined #lisp 2018-07-10T09:09:36Z muresanvlad_ joined #lisp 2018-07-10T09:10:58Z bigfondue quit (Ping timeout: 260 seconds) 2018-07-10T09:11:57Z gabiruh joined #lisp 2018-07-10T09:13:17Z akkad: da 2018-07-10T09:16:44Z gabiruh quit (Ping timeout: 260 seconds) 2018-07-10T09:19:13Z SenasOzys__ quit (Remote host closed the connection) 2018-07-10T09:19:54Z random-nick joined #lisp 2018-07-10T09:20:24Z oni-on-ion quit (Read error: Connection reset by peer) 2018-07-10T09:20:27Z dmiles joined #lisp 2018-07-10T09:22:39Z random-nick quit (Remote host closed the connection) 2018-07-10T09:26:33Z random-nick joined #lisp 2018-07-10T09:28:43Z frgo joined #lisp 2018-07-10T09:29:14Z shrdlu68 quit (Ping timeout: 268 seconds) 2018-07-10T09:29:24Z shrdlu68 joined #lisp 2018-07-10T09:30:31Z bigfondue joined #lisp 2018-07-10T09:35:09Z shrdlu68 quit (Ping timeout: 264 seconds) 2018-07-10T09:35:33Z shrdlu68 joined #lisp 2018-07-10T09:39:29Z trittweiler quit (Ping timeout: 260 seconds) 2018-07-10T09:39:59Z frgo quit (Remote host closed the connection) 2018-07-10T09:40:08Z trittweiler joined #lisp 2018-07-10T09:45:17Z m00natic joined #lisp 2018-07-10T09:48:06Z lumm joined #lisp 2018-07-10T09:48:46Z milanj__ quit (Quit: This computer has gone to sleep) 2018-07-10T09:50:12Z milanj__ joined #lisp 2018-07-10T09:56:35Z igemnace quit (Ping timeout: 240 seconds) 2018-07-10T10:01:57Z shifty quit (Ping timeout: 240 seconds) 2018-07-10T10:02:44Z shifty joined #lisp 2018-07-10T10:03:59Z scymtym quit (Ping timeout: 256 seconds) 2018-07-10T10:07:14Z blep-on-external: i still use hunchentoot, should i move to caveman? 2018-07-10T10:10:35Z nowhere_man quit (Ping timeout: 265 seconds) 2018-07-10T10:11:01Z Kaisyu quit (Quit: Connection closed for inactivity) 2018-07-10T10:13:08Z gabiruh joined #lisp 2018-07-10T10:13:22Z xantoz quit (Read error: Connection reset by peer) 2018-07-10T10:14:04Z xantoz joined #lisp 2018-07-10T10:15:22Z pierpal joined #lisp 2018-07-10T10:17:57Z gabiruh quit (Ping timeout: 268 seconds) 2018-07-10T10:19:27Z shrdlu68 quit (Ping timeout: 240 seconds) 2018-07-10T10:19:44Z Smokitch joined #lisp 2018-07-10T10:20:19Z shrdlu68 joined #lisp 2018-07-10T10:20:25Z lumm quit (Read error: Connection reset by peer) 2018-07-10T10:20:51Z lumm joined #lisp 2018-07-10T10:22:24Z AetherWind quit (Quit: Leaving) 2018-07-10T10:24:06Z Xach: v0|d: bits is the variable, not the type 2018-07-10T10:24:37Z milanj__ quit (Quit: This computer has gone to sleep) 2018-07-10T10:28:17Z rawste joined #lisp 2018-07-10T10:29:15Z terpri joined #lisp 2018-07-10T10:29:48Z frgo joined #lisp 2018-07-10T10:30:28Z wigust- joined #lisp 2018-07-10T10:31:41Z scymtym joined #lisp 2018-07-10T10:33:22Z wigust quit (Ping timeout: 264 seconds) 2018-07-10T10:33:39Z v0|d: oh. 2018-07-10T10:34:45Z v0|d: right. so what about this bitstream-buffer-bit-count? 2018-07-10T10:35:08Z frgo quit (Remote host closed the connection) 2018-07-10T10:35:16Z Xach: v0|d: it's defined in types.lisp 2018-07-10T10:36:50Z nowhere_man joined #lisp 2018-07-10T10:38:14Z ave1 joined #lisp 2018-07-10T10:38:29Z tokik joined #lisp 2018-07-10T10:38:52Z v0|d: can't reproduce, wierd. 2018-07-10T10:38:55Z v0|d: sry. 2018-07-10T10:39:03Z Xach: no worries 2018-07-10T10:39:31Z tokik left #lisp 2018-07-10T10:47:20Z kajo quit (Quit: From my rotting body, flowers shall grow and I am in them and that is eternity. -- E. M.) 2018-07-10T10:47:23Z quazimodo quit (Ping timeout: 244 seconds) 2018-07-10T10:48:29Z quazimodo joined #lisp 2018-07-10T10:48:55Z charh joined #lisp 2018-07-10T10:51:21Z orivej joined #lisp 2018-07-10T10:55:21Z Josh_2 joined #lisp 2018-07-10T10:55:29Z skapata joined #lisp 2018-07-10T10:56:17Z Josh_2 quit (Remote host closed the connection) 2018-07-10T10:56:28Z milanj joined #lisp 2018-07-10T11:01:30Z jmercouris joined #lisp 2018-07-10T11:02:00Z jmercouris: I'm looking here at gentle introduction to symolic computation and they say you can only sharp-quote normal functions, can't do it for macro functions 2018-07-10T11:02:00Z minion: jmercouris, memo from flip214: if the image is uncompressed, the mmap() is quite fast. if it's compressed, larger images will take more time to run. 2018-07-10T11:02:22Z jmercouris: I see 2018-07-10T11:02:39Z jmercouris: yet, in SBCL, I can #'if no problem 2018-07-10T11:02:52Z jmercouris: is this something that SBCL does not obey from the specification? is the author mistaken? 2018-07-10T11:03:12Z jmercouris: CL-USER> #'if -> # 2018-07-10T11:05:55Z shka: wow 2018-07-10T11:06:04Z shka: i had no idea that you can #'if in sbcl! 2018-07-10T11:06:45Z ebzzry: jmercouris: sbcl takes that liberty. ccl and clisp barfs with #'if. 2018-07-10T11:07:01Z shka: jmercouris: don't count on doing that though, standard states that if is a special form and it is up to implementation to decide how to implement it 2018-07-10T11:07:22Z jmercouris: I see, so undefined 2018-07-10T11:07:26Z shka: yes 2018-07-10T11:07:34Z lumm quit (Ping timeout: 260 seconds) 2018-07-10T11:07:39Z shka: as for #' in macros 2018-07-10T11:07:52Z jmercouris: What's the equivalent of sharp quoting a macro? 2018-07-10T11:07:55Z jmercouris: is there a way? 2018-07-10T11:08:10Z shka: honestly it never occured to me 2018-07-10T11:08:20Z shka: because who would want to do it anyway? 2018-07-10T11:08:30Z shka: what for? 2018-07-10T11:08:32Z ave1 left #lisp 2018-07-10T11:08:51Z xantoz quit (Read error: Connection reset by peer) 2018-07-10T11:09:01Z jmercouris: no reason, just wondering 2018-07-10T11:09:08Z xantoz joined #lisp 2018-07-10T11:09:11Z shka: i see 2018-07-10T11:09:17Z ebzzry: jmercouris: http://www.lispworks.com/documentation/HyperSpec/Body/s_fn.htm#function 2018-07-10T11:10:02Z ebzzry: jmercouris: so, yes. it is not portable behavior. 2018-07-10T11:10:29Z jmercouris: I see I see 2018-07-10T11:10:49Z lumm joined #lisp 2018-07-10T11:11:58Z jmercouris: I always thought mapcar was a strange name, and it only just occured to me that we are mapping a function onto the car of each cons cell 2018-07-10T11:12:05Z jmercouris: unbelievable... 2018-07-10T11:12:17Z ebzzry: jmercouris: :) 2018-07-10T11:12:54Z ebzzry: jmercouris: see mapcan. :) 2018-07-10T11:13:31Z hhdave joined #lisp 2018-07-10T11:13:32Z jmercouris: Aha, so many derivatives 2018-07-10T11:13:46Z gabiruh joined #lisp 2018-07-10T11:13:55Z jmercouris: ebzzry: I'm not there yet though, don't want to go down that rabbit hole just yet, first I would like to finish this book 2018-07-10T11:14:00Z kajo joined #lisp 2018-07-10T11:14:57Z ebzzry: jmercouris: CLAGITSC by Touretzky? 2018-07-10T11:15:08Z jmercouris: Yes 2018-07-10T11:15:20Z ebzzry: jmercouris: that’s a good book. 2018-07-10T11:15:31Z jmercouris: I've already done PCL, and I've been doing some lisp programming for approximately a year now, but I felt there are so many gaps in my knowledge, decided to go back to basics from cover to cover 2018-07-10T11:15:46Z ebzzry: jmercouris: that’s the path that I suggest. CLAGITSC before PCL. 2018-07-10T11:16:01Z jmercouris: Well, it's too late now :D 2018-07-10T11:16:19Z orivej quit (Ping timeout: 260 seconds) 2018-07-10T11:16:22Z ebzzry: jmercouris: that’s ok. you’ll get a better appreciation of recursion in lisp with that book. 2018-07-10T11:16:42Z ebzzry: jmercouris: and some introductory concepts of symbolic programming. 2018-07-10T11:16:55Z jmercouris: I intend to become much better at recursion, its been a weakness of mine for a long time 2018-07-10T11:17:07Z jmercouris: Yeah, I like the book, because it is indeed gentle 2018-07-10T11:17:19Z jmercouris: there are some exercises where I feel like I am wasting my time, but for the most part, it has been a very valuable experience 2018-07-10T11:17:25Z ebzzry: jmercouris: [: 2018-07-10T11:17:36Z knobo: blep-on-external: Depends on your project. 2018-07-10T11:18:22Z gabiruh quit (Ping timeout: 264 seconds) 2018-07-10T11:20:38Z housel quit (Read error: Connection reset by peer) 2018-07-10T11:27:51Z nowhere_man quit (Ping timeout: 240 seconds) 2018-07-10T11:40:15Z pierpal quit (Quit: Poof) 2018-07-10T11:40:34Z beach: jmercouris: You can use MACRO-FUNCTION to get to the function that a macro defines, but it has a strange signature, so you can't just FUNCALL it with the arguments to the macro. 2018-07-10T11:40:34Z pierpal joined #lisp 2018-07-10T11:43:21Z jmercouris: beach: interesting, thanks 2018-07-10T11:43:39Z jmercouris: the hyperspec makes it sound like a predicate 2018-07-10T11:43:49Z beach: Oh? 2018-07-10T11:43:54Z beach: clhs macro-function 2018-07-10T11:43:54Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_macro_.htm 2018-07-10T11:43:56Z jmercouris: "Determines whether symbol has a function definition as a macro in the specified environment. " 2018-07-10T11:44:38Z beach: You need to read further, I guess. 2018-07-10T11:44:38Z Josh_2 joined #lisp 2018-07-10T11:45:00Z jmercouris: Yeah, I read the whole thing, its just a strange way to start the description 2018-07-10T11:45:57Z kerframil joined #lisp 2018-07-10T11:52:21Z lavaflow_ quit (Ping timeout: 240 seconds) 2018-07-10T11:52:42Z rumbler31 quit (Remote host closed the connection) 2018-07-10T11:53:25Z v0|d quit (Remote host closed the connection) 2018-07-10T11:55:33Z chrnok quit (Remote host closed the connection) 2018-07-10T11:59:55Z Josh_2 quit (Remote host closed the connection) 2018-07-10T12:00:32Z Josh_2 joined #lisp 2018-07-10T12:04:53Z isospin quit (Ping timeout: 244 seconds) 2018-07-10T12:05:02Z EvW joined #lisp 2018-07-10T12:08:27Z shrdlu68 quit (Ping timeout: 240 seconds) 2018-07-10T12:09:28Z shrdlu68 joined #lisp 2018-07-10T12:14:30Z gabiruh joined #lisp 2018-07-10T12:17:45Z lumm quit (Ping timeout: 264 seconds) 2018-07-10T12:18:50Z gabiruh quit (Ping timeout: 244 seconds) 2018-07-10T12:21:51Z shrdlu68 quit (Ping timeout: 240 seconds) 2018-07-10T12:22:46Z shrdlu68 joined #lisp 2018-07-10T12:22:59Z makomo joined #lisp 2018-07-10T12:27:57Z shrdlu68 quit (Ping timeout: 240 seconds) 2018-07-10T12:28:45Z gabiruh joined #lisp 2018-07-10T12:28:56Z shrdlu68 joined #lisp 2018-07-10T12:31:24Z orivej joined #lisp 2018-07-10T12:32:01Z igemnace joined #lisp 2018-07-10T12:34:44Z JuanDaugherty joined #lisp 2018-07-10T12:34:49Z FreeBirdLjj joined #lisp 2018-07-10T12:36:33Z ebrasca quit (Remote host closed the connection) 2018-07-10T12:38:57Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2018-07-10T12:43:22Z beach: I guess I can test the memory allocator by allocating and freeing random chunks and verifying after each operation how much total space is left on the heap. 2018-07-10T12:43:52Z nowhere_man joined #lisp 2018-07-10T12:44:09Z deng_cn quit (Quit: deng_cn) 2018-07-10T12:44:46Z Josh_2: I guess you can 2018-07-10T12:44:48Z shka: beach: that's what i would do 2018-07-10T12:45:16Z scymtym_ joined #lisp 2018-07-10T12:45:20Z flamebeard quit (Remote host closed the connection) 2018-07-10T12:45:24Z beach: Anything else I can test? 2018-07-10T12:45:29Z lumm joined #lisp 2018-07-10T12:45:34Z flamebeard joined #lisp 2018-07-10T12:45:38Z shka: let i run for half a day, and keep verifing memory 2018-07-10T12:46:28Z shka: beach: maybe verify whole heap with checksums? 2018-07-10T12:46:33Z isospin joined #lisp 2018-07-10T12:46:40Z beach: How so? 2018-07-10T12:47:21Z scymtym quit (Ping timeout: 240 seconds) 2018-07-10T12:47:51Z shka: beach: scudo allocator embeds 16 bit checksum into chunks 2018-07-10T12:48:02Z shka: so they can verify if chunk was corrupted somehow 2018-07-10T12:48:17Z beach: Oh, I see. 2018-07-10T12:48:22Z shka: not sure if you can easily do something similar, but it may be helpfull debuging tool 2018-07-10T12:48:27Z dmiles quit (Ping timeout: 240 seconds) 2018-07-10T12:49:01Z beach: Absolutely. I'll think about it. 2018-07-10T12:49:15Z shka: maybe you can maintain separate checksum list just for testing 2018-07-10T12:49:33Z beach: Maybe so. 2018-07-10T12:50:09Z beach: I'll do the simple one first. Then we'll see. 2018-07-10T12:53:54Z mindCrime joined #lisp 2018-07-10T12:54:16Z flamebeard quit (Remote host closed the connection) 2018-07-10T12:54:33Z flamebeard joined #lisp 2018-07-10T12:55:26Z borodust- is now known as borodust 2018-07-10T12:55:58Z LiamH joined #lisp 2018-07-10T12:56:50Z test1600 joined #lisp 2018-07-10T12:57:03Z shrdlu68 quit (Ping timeout: 268 seconds) 2018-07-10T12:57:43Z shrdlu68 joined #lisp 2018-07-10T12:58:45Z logicmoo joined #lisp 2018-07-10T13:00:39Z Bike joined #lisp 2018-07-10T13:03:21Z EvW quit (Ping timeout: 240 seconds) 2018-07-10T13:03:35Z Xach: borodust!!! 2018-07-10T13:05:59Z Xach: borodust: the cl-muth problems vex me! 2018-07-10T13:08:35Z lthms joined #lisp 2018-07-10T13:08:37Z lthms: hi 2018-07-10T13:08:37Z jackdaniel: are we shifting towards latin or something in this spirit lately? ;) 2018-07-10T13:08:44Z jackdaniel: \o 2018-07-10T13:14:12Z kerframil quit (Quit: Leaving) 2018-07-10T13:15:05Z makomo: o/ 2018-07-10T13:18:49Z shifty quit (Ping timeout: 260 seconds) 2018-07-10T13:20:28Z rawste quit (Quit: Sleep....) 2018-07-10T13:20:56Z EvW joined #lisp 2018-07-10T13:23:28Z eli_oat joined #lisp 2018-07-10T13:26:11Z al-damiri joined #lisp 2018-07-10T13:28:52Z jamec joined #lisp 2018-07-10T13:30:23Z rawste joined #lisp 2018-07-10T13:30:29Z Oddity quit (Ping timeout: 260 seconds) 2018-07-10T13:35:09Z SaganMan quit (Ping timeout: 260 seconds) 2018-07-10T13:35:57Z SaganMan joined #lisp 2018-07-10T13:37:09Z Oddity joined #lisp 2018-07-10T13:38:45Z borodust: Xach: hi! 2018-07-10T13:38:48Z borodust: lets see 2018-07-10T13:39:53Z borodust: Xach: looks like it is fixed itself - i don't see it in the last report ;p 2018-07-10T13:40:30Z Xach: ok phew 2018-07-10T13:40:30Z jamec quit (Read error: Connection reset by peer) 2018-07-10T13:40:41Z borodust: or well, maybe you just removed it XD 2018-07-10T13:40:55Z Xach: no, i think it is resolved. thanks for double-checking! 2018-07-10T13:41:33Z jamec joined #lisp 2018-07-10T13:41:38Z borodust: it's weird, it should have been fixed a week ago when i saw it first appeared in 06/25 report.. 2018-07-10T13:42:01Z Xach: i think i had stale repos from 6/22 2018-07-10T13:42:11Z gabiruh quit (Read error: Connection reset by peer) 2018-07-10T13:42:15Z Xach: i updated things to have a fresher start 2018-07-10T13:42:21Z gabiruh joined #lisp 2018-07-10T13:42:24Z borodust: Xach: ah, i see, thanks! 2018-07-10T13:42:38Z borodust: hello lthms o/ 2018-07-10T13:48:02Z jamec quit (Quit: ERC (IRC client for Emacs 26.1)) 2018-07-10T13:48:29Z lavaflow_ joined #lisp 2018-07-10T13:50:05Z lumm quit (Ping timeout: 240 seconds) 2018-07-10T13:50:17Z Murii_ joined #lisp 2018-07-10T13:52:19Z w17t joined #lisp 2018-07-10T13:52:57Z lavaflow_ quit (Ping timeout: 240 seconds) 2018-07-10T13:53:15Z rumbler31 joined #lisp 2018-07-10T13:53:38Z w17t quit (Remote host closed the connection) 2018-07-10T13:53:59Z w17t joined #lisp 2018-07-10T13:54:32Z cmatei_ quit (Remote host closed the connection) 2018-07-10T13:54:42Z karlosz joined #lisp 2018-07-10T13:55:06Z cmatei joined #lisp 2018-07-10T13:57:19Z sjl joined #lisp 2018-07-10T13:58:14Z rumbler31 quit (Ping timeout: 265 seconds) 2018-07-10T13:59:21Z nowhere_man quit (Ping timeout: 240 seconds) 2018-07-10T14:03:19Z nowhere_man joined #lisp 2018-07-10T14:04:14Z frgo joined #lisp 2018-07-10T14:04:57Z kuwze joined #lisp 2018-07-10T14:05:00Z karlosz quit (Ping timeout: 265 seconds) 2018-07-10T14:08:10Z jack_rabbit quit (Ping timeout: 264 seconds) 2018-07-10T14:08:39Z m00natic quit (Read error: Connection reset by peer) 2018-07-10T14:08:54Z m00natic joined #lisp 2018-07-10T14:09:14Z flamebeard quit (Read error: Connection reset by peer) 2018-07-10T14:09:35Z flamebeard joined #lisp 2018-07-10T14:09:36Z pierpal quit (Read error: Connection reset by peer) 2018-07-10T14:10:04Z JuanDaugherty left #lisp 2018-07-10T14:10:17Z markoong joined #lisp 2018-07-10T14:10:45Z Bike quit (Ping timeout: 252 seconds) 2018-07-10T14:11:08Z surya joined #lisp 2018-07-10T14:13:39Z frgo quit (Ping timeout: 260 seconds) 2018-07-10T14:14:40Z pierpal joined #lisp 2018-07-10T14:18:59Z pierpal quit (Read error: Connection reset by peer) 2018-07-10T14:21:29Z Plazma_ is now known as Plazma 2018-07-10T14:22:27Z flamebeard quit 2018-07-10T14:22:34Z pierpal joined #lisp 2018-07-10T14:26:36Z pierpal quit (Read error: Connection reset by peer) 2018-07-10T14:31:06Z EvW quit (Ping timeout: 265 seconds) 2018-07-10T14:31:35Z pierpal joined #lisp 2018-07-10T14:35:18Z housel joined #lisp 2018-07-10T14:35:45Z pierpal quit (Ping timeout: 244 seconds) 2018-07-10T14:35:55Z FreeBirdLjj joined #lisp 2018-07-10T14:36:20Z FreeBirdLjj quit (Client Quit) 2018-07-10T14:39:57Z matijja quit (Ping timeout: 240 seconds) 2018-07-10T14:45:40Z Cymew quit (Remote host closed the connection) 2018-07-10T14:46:57Z pierpal joined #lisp 2018-07-10T14:49:21Z sjl__ joined #lisp 2018-07-10T14:51:21Z nowhere_man quit (Ping timeout: 240 seconds) 2018-07-10T14:51:45Z nowhere_man joined #lisp 2018-07-10T14:52:04Z Cymew joined #lisp 2018-07-10T14:52:27Z sjl quit (Ping timeout: 240 seconds) 2018-07-10T14:52:27Z xrash quit (Ping timeout: 240 seconds) 2018-07-10T14:53:38Z cnx joined #lisp 2018-07-10T14:54:21Z parjanya` quit (Ping timeout: 244 seconds) 2018-07-10T14:55:07Z cnx: hi guys, suddenly my swank from emacs cannot be loaded, saying `Package ASDF does not exist.' 2018-07-10T14:55:40Z cnx: it run fine a few days earlier and I didn't run any update or tweak any config 2018-07-10T14:56:12Z cnx: anybody? 2018-07-10T14:56:33Z Cymew quit (Ping timeout: 248 seconds) 2018-07-10T14:57:07Z raynold quit (Quit: Connection closed for inactivity) 2018-07-10T14:57:24Z isospin quit (Ping timeout: 260 seconds) 2018-07-10T14:58:21Z Cymew joined #lisp 2018-07-10T14:59:06Z serviteur joined #lisp 2018-07-10T15:01:20Z jackdaniel: cnx: I assume you try to load *all* contribs including swank-asdf, because swank itself does not depend on asdf whatsoever 2018-07-10T15:01:53Z jackdaniel: most likely scenario is that you had quicklisp initialized in your implementation init file (i.e ~/.sbclrc) and you have removed it 2018-07-10T15:02:09Z jackdaniel: just put "(require 'asdf)" in ~/.sbclrc in that case 2018-07-10T15:02:37Z Cymew quit (Ping timeout: 244 seconds) 2018-07-10T15:04:10Z nowhereman_ joined #lisp 2018-07-10T15:04:10Z nowhere_man quit (Ping timeout: 244 seconds) 2018-07-10T15:04:37Z Cymew joined #lisp 2018-07-10T15:06:59Z zxcvz joined #lisp 2018-07-10T15:08:32Z theseb joined #lisp 2018-07-10T15:08:51Z Cymew quit (Ping timeout: 240 seconds) 2018-07-10T15:09:36Z theseb: is this a great macro strategy?....do as much as you can with a "normal" function and then call that helper function from your shiny new macro?....in short..use macros to change the syntax of the language but do the real work in regular code? 2018-07-10T15:10:45Z sjl__ is now known as sjl 2018-07-10T15:10:46Z beach: Sounds good. 2018-07-10T15:10:52Z Cymew joined #lisp 2018-07-10T15:12:01Z theseb: beach: thanks...people were always warning about overdoing it with macros...my strategy above seemed like such a simple way to strike a balance...it should be more widely taught 2018-07-10T15:12:47Z beach: theseb: It's the traditional way of doing it, but perhaps it is not said so explicitly in the literature. 2018-07-10T15:13:55Z andrei-n quit (Read error: Connection reset by peer) 2018-07-10T15:14:06Z theseb: beach: ah ok thanks 2018-07-10T15:14:29Z beach: There is an exception for very small macros. 2018-07-10T15:14:57Z surya quit (Ping timeout: 240 seconds) 2018-07-10T15:15:00Z beach: But if you look in the CLIM II specification, for instance, you will find several pairs like WITH-FOO and INVOKE-WITH-FOO. 2018-07-10T15:15:05Z Cymew quit (Ping timeout: 240 seconds) 2018-07-10T15:15:17Z andrei-n joined #lisp 2018-07-10T15:15:57Z elfmacs quit (Ping timeout: 240 seconds) 2018-07-10T15:16:18Z jmercouris quit (Remote host closed the connection) 2018-07-10T15:16:21Z nowhereman_ quit (Ping timeout: 240 seconds) 2018-07-10T15:16:34Z jmercouris joined #lisp 2018-07-10T15:16:52Z jmercouris: let's say I want to write my own setter instead of using the default accessor 2018-07-10T15:17:00Z jmercouris: how would I refer to a given slot without an accessor? 2018-07-10T15:17:05Z Xach: slot-value 2018-07-10T15:17:09Z jmercouris: Ah, okay, thank you 2018-07-10T15:17:25Z beach: jmercouris: But why would you want to do that? 2018-07-10T15:17:40Z Xach: another option is to use :writer (setf %my-slot) 2018-07-10T15:17:41Z jmercouris: beach: Because I want side-effects to occur when a given slot is changed 2018-07-10T15:17:53Z Xach: jmercouris: one way to do that is an around method on the setter. 2018-07-10T15:17:55Z jmercouris: I have an interface object that abstracts an interface framework 2018-07-10T15:18:04Z beach: jmercouris: Use an auxiliary method on the setter. 2018-07-10T15:18:04Z Xach: or after, or before method. 2018-07-10T15:18:16Z theseb: Xach: everyone knows Common Lisp is the Lisp for "real work"...however...I've been checking out Clojure which seem to also be good for "real work" since uses JVM...what do think of Clojure? 2018-07-10T15:18:27Z theseb: if i may ask? 2018-07-10T15:18:29Z jkordani quit (Read error: Connection reset by peer) 2018-07-10T15:18:30Z jmercouris: beach: Ok, will do 2018-07-10T15:18:33Z Xach: theseb: I don't think about it. And this is not the channel to discuss it. 2018-07-10T15:18:34Z beach: theseb: Off topic. Sorry. 2018-07-10T15:19:38Z jmercouris: Isn't it possible to run CL on the JVM? I thought there was an implementation that had interop of some sort 2018-07-10T15:19:54Z beach: ABCL 2018-07-10T15:20:18Z Josh_2: That's wrong, it's ABCD 2018-07-10T15:20:28Z Josh_2: idk who taught you the alphabet hue hue 2018-07-10T15:20:33Z jkordani joined #lisp 2018-07-10T15:20:33Z jmercouris: No, it isn't it is ABCL 2018-07-10T15:20:36Z jmercouris: https://abcl.org 2018-07-10T15:20:52Z jmercouris: Oh, I see it was a joke 2018-07-10T15:20:56Z Josh_2: xD 2018-07-10T15:21:04Z ebrasca joined #lisp 2018-07-10T15:21:22Z figurelisp joined #lisp 2018-07-10T15:21:32Z ebrasca left #lisp 2018-07-10T15:21:42Z ebrasca joined #lisp 2018-07-10T15:22:43Z figurelisp: I have heard a lot about lisp. Is it good to learn it now? I am thinking about common lisp 2018-07-10T15:23:07Z figurelisp: Why should i learn lisp is my main question. 2018-07-10T15:23:13Z Josh_2: yeh u should learn it 2018-07-10T15:23:24Z beach: figurelisp: Because it is one of the best languages around. 2018-07-10T15:23:26Z francogrex joined #lisp 2018-07-10T15:23:33Z francogrex: hi, I have a lisp (or fasl) file in a specific common network directory/folder (UNC path: //network1/specs/called.fasl) that is being loaded from a user's local lisp program. is there a way to make sure that the user is loading that specific fasl file (and not a local one he may have copied into his local folder?) 2018-07-10T15:23:34Z Josh_2: beach: what's another? 2018-07-10T15:23:36Z beach: figurelisp: And it will change your way of thinking about programming. 2018-07-10T15:24:09Z figurelisp: Is lisp seriously that good 2018-07-10T15:24:30Z Josh_2: You'll have to find out ;) 2018-07-10T15:24:40Z ebrasca: For me it is. 2018-07-10T15:24:42Z jmercouris: We are all extremely biased in this channel 2018-07-10T15:24:45Z figurelisp: I'm new in programming so i don't know other languages well and won't be able ito compare it 2018-07-10T15:24:51Z Josh_2: ahh 2018-07-10T15:24:54Z jmercouris: I think it is best to learn it when you are new to programming 2018-07-10T15:24:55Z beach: figurelisp: It really is that good. 2018-07-10T15:24:57Z shrdlu68 quit (Ping timeout: 240 seconds) 2018-07-10T15:25:03Z jmercouris: becasue you won't be influenced by prior knowledge 2018-07-10T15:25:06Z Josh_2: well I learned CL first and now I don't want to learn any others cos I'm lazy and they suck 2018-07-10T15:25:16Z ebrasca: figurelisp: Yea it is #lisp irc . 2018-07-10T15:25:18Z jmercouris: Josh_2: How would you know? You don't know any other langauges 2018-07-10T15:25:33Z Josh_2: jmercouris: av done Python, Ruby C++ ya know 2018-07-10T15:25:55Z figurelisp: Josh_2 if you haven't learned any other how do you know they suck 2018-07-10T15:25:59Z Josh_2: and Javascript n PHP 2018-07-10T15:26:12Z Lord_of_Life quit (Excess Flood) 2018-07-10T15:26:23Z Josh_2: meh they probably don't, they have their place like 2018-07-10T15:26:26Z jmercouris: Anyways, these kinds of debates are pointless, if you wish to learn Lisp, obviously you'd have the endorsement of this channel 2018-07-10T15:26:34Z ebrasca: I hate Javascript. 2018-07-10T15:26:38Z jmercouris: Who doesn't? 2018-07-10T15:26:39Z Josh_2: I say you should learn CL :D 2018-07-10T15:26:50Z random-nick: jmercouris: many people love javascript 2018-07-10T15:27:02Z ebrasca: haha 2018-07-10T15:27:05Z jmercouris: random-nick: Secretly they hate it 2018-07-10T15:27:17Z ebrasca: random-nick: Are you sure? 2018-07-10T15:27:31Z Lord_of_Life joined #lisp 2018-07-10T15:27:48Z jackdaniel: any argument supporting my ideas is valid. contrary arguments are just other people delusions (and false claims), like it ought to be ;-) 2018-07-10T15:27:54Z random-nick: ebrasca: well, why would thing like node.js exist otherwise? 2018-07-10T15:28:00Z jmercouris: figurelisp: If you decide to learn lisp start with this book: https://www.cs.cmu.edu/~dst/LispBook/book.pdf and install this editor: https://portacle.github.io 2018-07-10T15:28:01Z Josh_2: figurelisp: get gentle introduction to symbolic computation, is very good intro to programming :) 2018-07-10T15:28:02Z figurelisp: I'll be starting learning CL from the book cl: gentle introduction to symbolic computimg 2018-07-10T15:28:10Z theseb left #lisp 2018-07-10T15:28:12Z Josh_2: ^^ that's how I did it 2018-07-10T15:28:21Z jmercouris: jackdaniel: Preach! 2018-07-10T15:28:23Z figurelisp: Ok great 2018-07-10T15:28:29Z jmercouris: jackdaniel: as long as I agree with you 2018-07-10T15:28:29Z figurelisp: Thank you all 2018-07-10T15:29:14Z jackdaniel: jmercouris: confirmation bias won't do any good to you. Lisp zealotry just closes you in a fixed mindset. 2018-07-10T15:29:28Z jmercouris: jackdaniel: I know, I'm only joking 2018-07-10T15:29:43Z jmercouris: I like Lisp, but I won't pretend like it is the best thing to ever happen ever 2018-07-10T15:30:10Z random-nick: but what if Lisp really is the best thing to ever happen ever? 2018-07-10T15:30:14Z jackdaniel: usually jokes carry convictions despite being humorous, but tha'ts offtopic on my side, sorry 2018-07-10T15:30:31Z jmercouris: My convictions are nothing but intense irony 2018-07-10T15:31:21Z beach: figurelisp: Make sure you ask for advice when you get ready to install your environment. It is easy to get it wrong. 2018-07-10T15:32:36Z beach: figurelisp: Also, it is OK, to paste your code somewhere and give us a link, in case you want feedback on it. Newbie questions are tolerated as long as it looks like you are making progress and following advice. 2018-07-10T15:34:27Z figurelisp: Ok thanks :) i have already setup my emacs with slime+sbcl 2018-07-10T15:34:36Z beach: OK, good. 2018-07-10T15:36:57Z nowhereman_ joined #lisp 2018-07-10T15:37:38Z DingoSaar joined #lisp 2018-07-10T15:44:46Z cnx quit (Ping timeout: 264 seconds) 2018-07-10T15:44:58Z rumbler31 joined #lisp 2018-07-10T15:45:38Z k4rtik joined #lisp 2018-07-10T15:46:20Z antoszka: figurelisp: there's also a #clnoobs channel, just in case :) 2018-07-10T15:46:31Z rumbler31 quit (Remote host closed the connection) 2018-07-10T15:46:56Z schweers: figurelisp: my advice: don’t let people tell you that the lisp you chose (Common Lisp, as I understand) has some flaw, and that another lisp is better. Or at least in some way better. Its not that they are wrong (if you really want to do functional programming, Clojure has a more pleasant out of the box experience). Its that you shouldn’t let that distract you. I made that mistake, bouncing from one lisp to anothe 2018-07-10T15:46:56Z schweers: getting really good with any of them. 2018-07-10T15:47:46Z Josh_2: schweers: idk if I agree with you, GISC is a real good intro to functional programming 2018-07-10T15:48:15Z figurelisp: schweers will keep that in mind and won't be distracted 2018-07-10T15:48:18Z schweers: Josh_2: sorry, GISC? 2018-07-10T15:48:27Z Josh_2: gentle introduction to symbolic computation 2018-07-10T15:48:32Z Josh_2: something like that 2018-07-10T15:48:34Z schweers: ah 2018-07-10T15:48:55Z skapata quit (Remote host closed the connection) 2018-07-10T15:48:56Z schweers has to admit to never having read that book 2018-07-10T15:49:07Z antoszka: I think "Touretzky" is the recognizable shorthand name for the book here ;) 2018-07-10T15:49:33Z Josh_2: Well I didn't know that 2018-07-10T15:50:20Z antoszka: That's why I mentioned it :) 2018-07-10T15:50:25Z francogrex quit (Quit: ERC (IRC client for Emacs 25.3.1)) 2018-07-10T15:50:31Z Josh_2: am gonna forget that 2018-07-10T15:52:15Z kuwze quit (Quit: Page closed) 2018-07-10T15:52:17Z jmercouris: When writing predicates, when do you use a hyphen, and when do you just stick it onto the word? 2018-07-10T15:52:21Z buffergn0me joined #lisp 2018-07-10T15:52:29Z antoszka: jmercouris: there's a rule for that 2018-07-10T15:52:30Z serviteur quit (Remote host closed the connection) 2018-07-10T15:52:35Z jmercouris: And the rule is..? 2018-07-10T15:52:43Z schweers: jmercouris: I think most people use a dash if the predicate consists of more than one word 2018-07-10T15:52:44Z antoszka: jmercouris: if it's a single word predicate, you just slam on the p 2018-07-10T15:52:50Z schweers: i.e. if you have dashes in it anyway 2018-07-10T15:52:56Z antoszka: + what schweers says :) 2018-07-10T15:53:01Z schweers: composite-type-p vs typep 2018-07-10T15:53:05Z antoszka: yep 2018-07-10T15:53:28Z schweers: which can muck with automatically named predicates, but that’s another story 2018-07-10T15:54:34Z bexx_ joined #lisp 2018-07-10T15:56:29Z random-nick: is the proper naming convention for definition macros to prefix with "def" if it is just one word and to use dashes and prefix it with "define-" for multiple words? 2018-07-10T15:57:47Z Xach: The rule is explained in CLtL2 and I copied it to cliki some time ago 2018-07-10T15:58:01Z surya joined #lisp 2018-07-10T15:58:25Z Xach: https://cliki.net/Naming%20conventions - see "By convention, " 2018-07-10T15:58:41Z random-nick: thank you! 2018-07-10T15:58:46Z Xach: concluding with: The name string-less-p would incorrectly imply that it is a predicate that tests for a kind of object called a string-less, and the name stringlessp would connote a predicate that tests whether something has no strings (is "stringless")! 2018-07-10T15:59:05Z Xach: random-nick: sorry, this is for jmercouris's question about predicates 2018-07-10T15:59:30Z random-nick: Xach: but the page also answers my question 2018-07-10T16:00:00Z Xach: that was not my intent so i cannot take any credit 2018-07-10T16:00:05Z jmercouris: Aha, I see 2018-07-10T16:00:08Z jmercouris: there is some nuance here 2018-07-10T16:00:33Z jmercouris: Makes me feel too much like a comptuer parsing the string 2018-07-10T16:00:47Z jmercouris: s/comptuer/computer 2018-07-10T16:01:28Z makomo: _death: i think it is done 2018-07-10T16:03:53Z makomo: ONCE-ONLY-LIST: https://plaster.tymoon.eu/view/844#844 2018-07-10T16:05:25Z NoNumber left #lisp 2018-07-10T16:06:58Z k4rtik quit (Ping timeout: 256 seconds) 2018-07-10T16:07:55Z k4rtik joined #lisp 2018-07-10T16:09:41Z jmercouris: If I use (with-slots) within a method body, is it any quicker than using the slot accessors every time? 2018-07-10T16:09:48Z jmercouris: is it even worth thinking about? 2018-07-10T16:11:52Z figurelisp quit (Read error: Connection reset by peer) 2018-07-10T16:12:35Z k4rtik quit (Client Quit) 2018-07-10T16:15:16Z makomo: jmercouris: i'm not sure if this is correct (someone can correct me), but i would think it could be slower because it has the extra dispatch to go through for the accessor 2018-07-10T16:15:33Z jmercouris: makomo: I was thinking that exactly 2018-07-10T16:15:35Z makomo: but i don't think it's something you should really worry early on 2018-07-10T16:15:40Z makomo: worry about* 2018-07-10T16:15:43Z beach: jmercouris: No, and it might be slower. 2018-07-10T16:15:57Z beach: jmercouris: I would use WITH-ACCESSORS instead. 2018-07-10T16:16:04Z jmercouris: that would be counterintuitive that it could be slower 2018-07-10T16:16:15Z makomo: hm, why? 2018-07-10T16:16:28Z jmercouris: with-accessors is new to me, thanks 2018-07-10T16:16:56Z makomo: jmercouris: also, WITH-ACCESSORS supports any accessor and doesn't have to be used just for objects/slots 2018-07-10T16:17:03Z makomo: the clhs page is pretty misleading if you ask me 2018-07-10T16:17:12Z jmercouris: ah, that makes it even more useful 2018-07-10T16:17:20Z beach: jmercouris: WITH-SLOTS uses SLOT-VALUE. SLOT-VALUE takes a symbol to name the slot. If the implementers are not careful, they have to look up the name, find the slot metaobject, find the slot offset, then access the slot. 2018-07-10T16:17:25Z makomo: oh wait, no, i might be wrong 2018-07-10T16:17:34Z beach: jmercouris: But the accessor can usually go directly to the slot. 2018-07-10T16:17:49Z jmercouris: Oh, I see 2018-07-10T16:17:57Z jmercouris: that is an interesting thought 2018-07-10T16:18:41Z makomo: beach: we discussed this once -- the fact that WITH-ACCESSORS doesn't have to be used just for slots. is this true or is my memory just failing? 2018-07-10T16:18:48Z jmercouris: I feel like maybe the only way to really learn this stuff is to make your own CL implementation of the spec 2018-07-10T16:19:02Z makomo: it does take an object though, so i'm not sure what i remember anymore 2018-07-10T16:19:05Z beach: makomo: I think it's true. It only introduces symbol macros. 2018-07-10T16:19:32Z makomo: ah right, so INSTANCE-FORM could be anything, right? 2018-07-10T16:19:36Z makomo: clhs with-accessors 2018-07-10T16:19:36Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/m_w_acce.htm 2018-07-10T16:19:48Z makomo: i.e. not just an instance 2018-07-10T16:20:02Z beach: makomo: Every Common Lisp object is an instance of some class. 2018-07-10T16:20:09Z makomo: hmm, right, good point 2018-07-10T16:20:18Z makomo: right, heh 2018-07-10T16:20:28Z galiley quit (Read error: Connection reset by peer) 2018-07-10T16:20:34Z kajo quit (Ping timeout: 256 seconds) 2018-07-10T16:20:43Z karswell joined #lisp 2018-07-10T16:20:59Z makomo: then, not an instance of a class that's a STANDARD-CLASS? 2018-07-10T16:21:05Z makomo: but i guess that's not surprising at all anyway 2018-07-10T16:21:14Z makomo: since everything is an instance of some class 2018-07-10T16:21:24Z makomo: hm right, i think now the clhs page is finally clear to me 2018-07-10T16:21:32Z beach: Look at the bottom of the Common Lisp HyperSpec page. It says what with-accessors does. 2018-07-10T16:21:35Z makomo: i forgot that everything is an instance of some class 2018-07-10T16:22:10Z makomo: for some reason i thought you were limited to instanced of classes that are DEFCLASS'd 2018-07-10T16:22:12Z makomo: not sure why 2018-07-10T16:22:38Z makomo: instances* 2018-07-10T16:22:53Z makomo: jmercouris: hmm idk, why would you think that? 2018-07-10T16:23:13Z makomo: it's not complicated. maybe it's just because you've only heard about it for the first time 2018-07-10T16:23:39Z EvW joined #lisp 2018-07-10T16:23:52Z jmercouris: makomo: I don't know, I just have these vague ideas in my mind, it would seem to me that with-slots is kind of like some version of let, so you don't have to keep getting the value every time 2018-07-10T16:24:07Z jmercouris: and you are just creating a temporary binding 2018-07-10T16:24:21Z buffergn0me quit (Ping timeout: 240 seconds) 2018-07-10T16:24:30Z jmercouris: I assume that (slot-accessor object) is a funcall 2018-07-10T16:24:34Z pjb joined #lisp 2018-07-10T16:24:43Z Inline joined #lisp 2018-07-10T16:24:55Z figurelisp joined #lisp 2018-07-10T16:25:31Z eli_oat1 joined #lisp 2018-07-10T16:25:50Z k4rtik joined #lisp 2018-07-10T16:25:50Z k4rtik quit (Changing host) 2018-07-10T16:25:50Z k4rtik joined #lisp 2018-07-10T16:26:07Z makomo: jmercouris: ah, well, it could have been made to do that instead i guess. it's all about the documentation and standardized stuff in the end :D 2018-07-10T16:26:11Z makomo: standardizing* 2018-07-10T16:26:20Z eli_oat1 quit (Client Quit) 2018-07-10T16:26:29Z beach: jmercouris: SLOT-VALUE is a function call as well. 2018-07-10T16:26:40Z makomo: jmercouris: but i think this name is more fitting for the thing it does 2018-07-10T16:26:50Z makomo: what you describe is something that could be called SLOT-LET or similar maybe? 2018-07-10T16:27:00Z jmercouris: Maybe, I'm not sure 2018-07-10T16:27:03Z jmercouris: it is still so vague in my head 2018-07-10T16:27:18Z jmercouris: I need to sleep on it, I'm just now beginning to grasp very basic CLOS things 2018-07-10T16:27:35Z beach: jmercouris: And, in the worst case, it must find the class of the object (another function call), then find the slot metaobject with that name (another call), then access that object to find the slot offset (another call), then access memory (another call). 2018-07-10T16:27:57Z karlosz joined #lisp 2018-07-10T16:28:05Z makomo: jmercouris: heh, that's how i felt while implementing this macro: https://plaster.tymoon.eu/view/844#844. now i finally feel like the idea has crystallized 2018-07-10T16:28:14Z beach: jmercouris: There are tricks to get around it when the slot name is quoted, but it is not simple to implement. 2018-07-10T16:29:30Z Bike joined #lisp 2018-07-10T16:31:27Z jmercouris quit (Ping timeout: 240 seconds) 2018-07-10T16:32:42Z mflem joined #lisp 2018-07-10T16:34:49Z quazimodo quit (Ping timeout: 260 seconds) 2018-07-10T16:36:32Z kajo joined #lisp 2018-07-10T16:36:42Z quazimodo joined #lisp 2018-07-10T16:38:24Z eli_oat1 joined #lisp 2018-07-10T16:40:47Z eli_oat1 quit (Client Quit) 2018-07-10T16:41:10Z hhdave quit (Ping timeout: 264 seconds) 2018-07-10T16:45:25Z shka_ joined #lisp 2018-07-10T16:48:07Z dyelar quit (Remote host closed the connection) 2018-07-10T16:49:05Z graphene joined #lisp 2018-07-10T16:51:39Z rawste quit (Quit: Sleep....) 2018-07-10T16:54:10Z Murii_ quit (Ping timeout: 265 seconds) 2018-07-10T16:55:31Z eli_oat1 joined #lisp 2018-07-10T16:58:15Z jasom: beach: can you declare the type of an object in such a way to remove some of those lookups (with declarations in the standard)? 2018-07-10T16:59:51Z EvW quit (Ping timeout: 240 seconds) 2018-07-10T17:00:05Z m00natic quit (Remote host closed the connection) 2018-07-10T17:00:12Z eli_oat1 quit (Client Quit) 2018-07-10T17:00:31Z Bike: jasom: even if you declare the type of an object, its class could be redefined. 2018-07-10T17:00:42Z eli_oat1 joined #lisp 2018-07-10T17:00:49Z Bike: strictly speaking, the compilation semantics allow you not to worry about that, i think 2018-07-10T17:01:20Z Bike: ah, no, you actually do have to 2018-07-10T17:01:41Z Bike: that is, there's no restriction that the slots of a class have to be the same at compile and run time 2018-07-10T17:01:50Z karlosz quit (Quit: karlosz) 2018-07-10T17:01:51Z Bike: the metaclass and superclass only 2018-07-10T17:02:22Z Bike: superclass-es. 2018-07-10T17:04:48Z nowhereman_ quit (Ping timeout: 265 seconds) 2018-07-10T17:07:53Z eli_oat1 quit (Quit: Leaving.) 2018-07-10T17:07:57Z _cosmonaut_ quit (Ping timeout: 240 seconds) 2018-07-10T17:11:51Z karlosz joined #lisp 2018-07-10T17:14:24Z lumm joined #lisp 2018-07-10T17:18:14Z milanj quit (Quit: This computer has gone to sleep) 2018-07-10T17:18:32Z figurelisp left #lisp 2018-07-10T17:19:51Z karlosz quit (Ping timeout: 240 seconds) 2018-07-10T17:34:41Z EvW joined #lisp 2018-07-10T17:34:56Z Kundry_Wag joined #lisp 2018-07-10T17:39:48Z w17t quit (Quit: Leaving) 2018-07-10T17:41:13Z jasom: can its metaclass be redefined? 2018-07-10T17:41:33Z Bike: uh... maybe 2018-07-10T17:41:33Z Kundry_Wag quit (Read error: Connection reset by peer) 2018-07-10T17:42:01Z Bike: "Classes defined by defclass in the compilation environment must be defined at run time to have the same superclasses and same metaclass." is the text 2018-07-10T17:42:41Z jasom: So it would require a separate declaration that indicates the class would not be redefined. 2018-07-10T17:43:45Z Kundry_Wag joined #lisp 2018-07-10T17:44:23Z nowhere_man joined #lisp 2018-07-10T17:47:01Z beach: jasom: I don't think declaring the type will help. 2018-07-10T17:47:04Z rumbler31 joined #lisp 2018-07-10T17:47:39Z beach: jasom: But one can play the same kind of tricks as one can with an accessor, provided the slot name is constant. 2018-07-10T17:48:44Z beach: jasom: But things may have to be recompiled when the class changes, just like the accessors do. That can be done of course. 2018-07-10T17:49:30Z surya quit (Ping timeout: 244 seconds) 2018-07-10T17:50:51Z karlosz joined #lisp 2018-07-10T17:52:05Z rumbler31 quit (Ping timeout: 244 seconds) 2018-07-10T17:54:42Z rawste joined #lisp 2018-07-10T18:00:17Z lavaflow_ joined #lisp 2018-07-10T18:03:24Z lumm quit (Read error: Connection reset by peer) 2018-07-10T18:05:27Z nowhere_man quit (Ping timeout: 240 seconds) 2018-07-10T18:05:35Z lavaflow_ quit (Ping timeout: 240 seconds) 2018-07-10T18:05:40Z chiyosaki joined #lisp 2018-07-10T18:07:04Z saki quit (Ping timeout: 244 seconds) 2018-07-10T18:14:38Z rawste quit (Quit: Sleep....) 2018-07-10T18:17:13Z moei quit (Quit: Leaving...) 2018-07-10T18:22:11Z asdf123 joined #lisp 2018-07-10T18:24:50Z makomo: what arguments exactly does a macro function take? 2018-07-10T18:25:07Z makomo: for example, if i have (macro-function 'alexandria:once-only), how do i funcall this properly? 2018-07-10T18:25:22Z makomo: the bottom of this page says that the first argument is the "entire macro call" http://www.lispworks.com/documentation/HyperSpec/Body/f_macro_.htm 2018-07-10T18:25:33Z makomo: soo, a list of its arguments? 2018-07-10T18:26:13Z makomo: is this correct (funcall (macro-function 'alexandria:once-only) '((x) ((print "hello there"))))? 2018-07-10T18:26:43Z sauvin quit (Read error: Connection reset by peer) 2018-07-10T18:27:34Z Bike: no, it's the whole form 2018-07-10T18:27:37Z pjb: makomo: a form and an environment. 2018-07-10T18:28:00Z Bike: and the second argument is an environment. just pass NIL, to indicate the global environment 2018-07-10T18:28:01Z makomo: oops, forgot the environment while typing it out 2018-07-10T18:28:31Z makomo: Bike: can you clarify what is the "whole form"? literally (once-only (x) (print "hello there"))? 2018-07-10T18:28:36Z Bike: yep. 2018-07-10T18:28:41Z pjb: (funcall (macro-function 'alexandria:once-only) '(alexandria:once-only (x) (print x)) nil) #| --> (let ((#1=#:once-only175411 (gensym "X"))) (list* 'let (list* (list (list* #1# (list x))) (list (let ((x #1#)) (print x)))))) |# 2018-07-10T18:28:47Z makomo: oh huh, it requires the name again? that's weird 2018-07-10T18:28:56Z pjb: makomo: it's what you get in the &whole parameter. 2018-07-10T18:28:58Z Bike: macro lambda lists can take &whole 2018-07-10T18:29:14Z pjb: makomo: it's smart: then you can use the same code for a bunch of macros! 2018-07-10T18:29:18Z makomo: i see, but i thought since once-only doesn't have that that i'm good 2018-07-10T18:29:29Z pjb: eg. when you define macros to expand to HTML, it's always the same thing. You can have a single macro function for all! 2018-07-10T18:29:41Z Bike: macro functions taking different arguments depending on the macro lambda list would be confusing for no reason. 2018-07-10T18:29:52Z makomo: i guess that makes sense 2018-07-10T18:29:54Z pjb: notice how macro-function is an ACCESSOR! (read AND write) 2018-07-10T18:30:17Z makomo: pjb: hm, interesting but i don't get the example. single macro function for all what? 2018-07-10T18:30:46Z Bike: meaning you could have multiple names with the same macro-function. 2018-07-10T18:31:05Z makomo: ahh 2018-07-10T18:31:05Z Bike: like have each html tag bound to the same macro functio, which checks the first element to see what to do. 2018-07-10T18:31:18Z makomo: hm, very neat 2018-07-10T18:32:59Z pjb: (defun gen-html-tag (form environment) (destructuring-bind (tag &rest body) form `(progn (format t "<~A>" ',tag) ,@body (format t "" ',tag)))) (setf (macro-function 'a) (function gen-html-tag) (macro-function 'p) (function gen-html-tag) #| …the whole html…|#) (with-output-to-string (*standard-output*) (p (princ "foo") (a (princ "link")) (princ "bar"))) #| --> "

foolinkbar

" |# 2018-07-10T18:33:59Z shka_: pjb: you really should not paste such line into irc 2018-07-10T18:34:10Z pjb: Now, for html, it's a tad more complex, since there are sometimes optional open or close tag, and various set of attributes, etc. so you'd need more than one function, but, it this could still be used. 2018-07-10T18:34:27Z pjb: shka_: It's only 3 forms! ;-) 2018-07-10T18:34:28Z makomo: pjb: yup, i see 2018-07-10T18:35:32Z pjb: There: https://pastebin.com/bdBpQ4HX better? 2018-07-10T18:36:02Z pjb: shka_: but technically I don't paste those lines into irc. I type them right there! 2018-07-10T18:37:46Z makomo: is there anything that could go wrong if i just pass in NIL for the envrionment? 2018-07-10T18:37:53Z makomo: i mean, are there corner cases where it's required to do so 2018-07-10T18:38:04Z makomo: so you have to drag the environment around through everything 2018-07-10T18:38:04Z pjb: Yes. It's for local macros (macrolets) 2018-07-10T18:38:17Z makomo: anything else? 2018-07-10T18:38:57Z moei joined #lisp 2018-07-10T18:39:14Z pjb: If you want to call this function from within a macro, you should (defmacro m (… &environment environment) … (gen-html-tag form environment) …) 2018-07-10T18:40:07Z pjb: now, notice that the above function didn't use the environment, but if it called macroexpand, it would have to pass it. 2018-07-10T18:40:49Z pjb: Notably, macroexpand let you detect or process symbol-macros (not only normal macros), and you would see symbol-macrolets, only by using this environment. 2018-07-10T18:41:50Z rumbler31 joined #lisp 2018-07-10T18:43:46Z makomo: aha 2018-07-10T18:45:40Z makomo: welp, that concludes my macro-function solution and it's no better than what i had before 2018-07-10T18:45:44Z makomo: i still have to call EVAL manually 2018-07-10T18:46:13Z pjb: just add one macro. 2018-07-10T18:46:42Z rumbler31 quit (Ping timeout: 268 seconds) 2018-07-10T18:47:08Z makomo: take a look: https://plaster.tymoon.eu/view/845#845 2018-07-10T18:47:23Z pjb: makomo: you have a bug in the docstring: "Evaluates INITFORMS to get a list…" 2018-07-10T18:47:33Z makomo: mhm? 2018-07-10T18:47:48Z pjb: makomo: for a macro, you cannot just "evaluate" something. You have to make it explicit if it is evaluated at macroexpansion time, or if you return a form that will evaluate it at run-time. 2018-07-10T18:48:05Z makomo: pjb: right, i meant the former 2018-07-10T18:48:40Z makomo: i'll fix it 2018-07-10T18:48:52Z pjb: Then it is possible, but difficult. Since this evaluation is done, eg. in the compilation environment, it cannot rely on anything defined in the program. 2018-07-10T18:48:58Z pjb: Only things loaded in the compilation environment. 2018-07-10T18:49:03Z makomo: yes, indeed 2018-07-10T18:49:11Z pjb: So you need to have a good reason to be wanting to do that. 2018-07-10T18:49:12Z Bike: makomo: (defun zip (&rest seqs) (apply #'mapcar #'list seqs)) 2018-07-10T18:49:49Z makomo: Bike: heh yeah, not sure why i have an extra layer of indirection there, thanks 2018-07-10T18:50:06Z Bike: eval-with is scary 2018-07-10T18:50:11Z makomo: i know :D 2018-07-10T18:50:34Z makomo: pjb: right, and the context is this: we were discussing how to solve the multiple evaluation problem when you don't know the number of symbols "at compile-time" (???) 2018-07-10T18:50:50Z pjb: makomo: but as I said, you only need to add a macro. Ie. instead of evaluating initforms in the once-only-list macro, evaluate it at macro expansion time in a macro that expands to once-only-list (or whatever). 2018-07-10T18:51:00Z makomo: not sure if that's the right terminology, but i hope you get what i mean -- you can't tell ONCE-ONLY to do it for a list of symbols 2018-07-10T18:51:46Z makomo: pjb: ONCE-ONLY-LIST injects the macroexpansion-time evaluation into another macro 2018-07-10T18:52:05Z makomo: and FBIND is the one that ends up evaluating at macroexpansion time 2018-07-10T18:52:16Z makomo: so it can make ONCE-ONLY work for an arbitrary list of symbols 2018-07-10T18:52:32Z lavaflow_ joined #lisp 2018-07-10T18:52:33Z Bike: i don't understand how this works. in fbind-2, is (mapcar #'second bindings) evaluated when once-only-list-eval is macroexpanded? 2018-07-10T18:52:44Z makomo: Bike: yes, indeed 2018-07-10T18:52:51Z Bike: that can't be right 2018-07-10T18:52:57Z makomo: the point is to reuse ONCE-ONLY, instead of having to write a function (or rely on the authors to do so) that will return me the expansion of ONCE-ONLY 2018-07-10T18:53:01Z makomo: i don't see another way to do this 2018-07-10T18:53:09Z Bike: BINDINGS doesn't even have a value at macroexpansion time 2018-07-10T18:54:03Z makomo: Bike: what do you mean it doesn't have a value? 2018-07-10T18:54:11Z makomo: ONCE-ONLY-LIST will expand into something that will evaluate that form 2018-07-10T18:54:29Z Bike: so it's not evaluated when once-only list-eval is expanded. it's evaluated by its expansion. 2018-07-10T18:54:49Z makomo: Bike: ah right, my bad 2018-07-10T18:55:00Z makomo: but both of those are macroexpansion-time though, right? 2018-07-10T18:55:09Z pjb: makomo: what does fbind do? 2018-07-10T18:55:12Z Bike: no. 2018-07-10T18:55:20Z Bike: i mean, macroexpansion is done at compile time. 2018-07-10T18:55:26Z makomo: pjb: take a look at the example at the bottom 2018-07-10T18:55:38Z makomo: pjb: allows you to use a function object without having to use FUNCALL 2018-07-10T18:55:45Z makomo: i.e. just syntactic sugar 2018-07-10T18:56:13Z makomo: Bike: erm, yeah, but the FBIND macro itself is also expanded at compile-time, and it contains the expansion of ONCE-ONLY-EVAL-LIST 2018-07-10T18:56:14Z pjb: ok. 2018-07-10T18:56:28Z makomo: so the evaluation is done at macroexpansion-time, but within FBIND 2018-07-10T18:57:17Z Bike: i'm just going to look at the expansion 2018-07-10T18:57:32Z makomo: the expansion of FBIND is pretty nice :D 2018-07-10T18:57:45Z makomo: it's the same as phoe's from yesterday really 2018-07-10T18:57:53Z makomo: except he redid what ONCE-ONLY does manually 2018-07-10T18:58:04Z jackdaniel: did I got transferred one day into the past or it's just another iteration? :-) 2018-07-10T18:58:13Z makomo: jackdaniel: :D 2018-07-10T18:58:34Z makomo: hey, this stuff is great to think about 2018-07-10T18:59:10Z makomo: double backquoting is becoming almost second nature 2018-07-10T18:59:15Z Bike: i meant theexpansion of once-only-list-eval, which is again, scary 2018-07-10T18:59:23Z jackdaniel: sure, enjoy. it was a funny impression though (semi-dejavu-like) 2018-07-10T19:00:40Z makomo: jackdaniel: i can imagine :D 2018-07-10T19:01:08Z makomo: Bike: yeah, true, it's non-trivial, but it's interesting to see the same patterns pop up when writing macros 2018-07-10T19:01:14Z Bike: i feel like there's got to be a way to do this without eval 2018-07-10T19:01:17Z pjb: makomo: what about my annotation: https://plaster.tymoon.eu/view/844#846 ? 2018-07-10T19:01:19Z makomo: like forcing double evaluation, etc. 2018-07-10T19:01:23Z Bike: since you don't even use the particular bindings, just the list of them 2018-07-10T19:01:26Z makomo: you start to feel it 2018-07-10T19:01:51Z Bike: yeah like pjb did. 2018-07-10T19:02:04Z pjb: I have to confess, that I never use once-only and rarely with-gensyms… 2018-07-10T19:02:21Z makomo: hm let me see 2018-07-10T19:02:45Z makomo: right, but this is reinventing ONCE-ONLY 2018-07-10T19:02:52Z makomo: that's the point of this whole thing, to avoid doing that 2018-07-10T19:03:01Z makomo: what's the point of all this lisp goodness if i can't reuse macros with ease 2018-07-10T19:03:05Z makomo: that's what bothers me the most 2018-07-10T19:03:09Z pjb: Perhaps, but doing this I don't get lost into using eval in a macro… 2018-07-10T19:03:15Z makomo: yeah, true, i agree 2018-07-10T19:03:21Z makomo: i had to show that it can be done, and in multiple ways too 2018-07-10T19:03:26Z makomo: but you see, i can't avoid EVAL 2018-07-10T19:03:31Z Bike: you have a weird idea of 'ease', yo. 2018-07-10T19:03:35Z makomo: is this really the curse we have to live with? 2018-07-10T19:03:56Z makomo: heh 2018-07-10T19:04:04Z Bike: once-only-list and once-only are kind of different things. 2018-07-10T19:04:14Z pjb: makomo: perhaps you could use once-only. But the thing is that you must evaluate your expressions in the right macro. The parameters to a macro aren't evaluated by the called macro, so you need to compute them in the caller! 2018-07-10T19:04:33Z makomo: pjb: pretty much, and that's the whole problem 2018-07-10T19:04:41Z pjb: Hence the let that computes names, initforms, and funs in fbind, not in an once-only-list. 2018-07-10T19:05:07Z makomo: pjb: that happens in my FBIND too, it's just that ONCE-ONLY-LIST expands into code that does that 2018-07-10T19:05:32Z pjb: Well you could do that, but you don't need to evaluate the arguments. 2018-07-10T19:05:44Z makomo: Bike: i guess so, but is there even a way to write a "list" version of ONCE-ONLY? 2018-07-10T19:05:56Z saki joined #lisp 2018-07-10T19:06:00Z pjb: Expand to a `(once-only-list ,initform …) form. 2018-07-10T19:06:03Z makomo: i don't think there is, since macros receive source code 2018-07-10T19:06:12Z makomo: the stuff you wrote when you called ONCE-ONLY is what it receives, that's it 2018-07-10T19:06:21Z makomo: there's no way around this problem really :^( 2018-07-10T19:07:00Z chiyosaki quit (Ping timeout: 244 seconds) 2018-07-10T19:07:32Z makomo: pjb: erm, where would you put that? 2018-07-10T19:07:54Z EvW quit (Remote host closed the connection) 2018-07-10T19:09:01Z makomo: i wonder if meta-meta-programming would solve this issue 2018-07-10T19:09:21Z k4rtik quit (Ping timeout: 240 seconds) 2018-07-10T19:09:41Z makomo: and even the macro-function version ends up using EVAL 2018-07-10T19:10:23Z makomo: Bike: also, you would probably use ONCE-ONLY if you didn't have an arbitrary number of bindings 2018-07-10T19:10:34Z makomo: because that's the point of ONCE-ONLY, to help you write macros and reduce boilerplate when writing them 2018-07-10T19:10:46Z makomo: but as soon as the number of symbols isn't constant, you're out of luck 2018-07-10T19:11:21Z edgar-rft quit (Quit: edgar-rft) 2018-07-10T19:12:33Z Cymew joined #lisp 2018-07-10T19:12:40Z pjb: Again, I drop it, there's no need to implement something like once-only-list, or to use once-only. It only makes the macros more complicated than they should be. 2018-07-10T19:14:01Z makomo: pjb: but ONCE-ONLY doesn't complicate anything by itself 2018-07-10T19:14:14Z makomo: it makes writing macros easier if anything 2018-07-10T19:14:31Z makomo: but only if you have a *constant number of forms* you want to evaluate 2018-07-10T19:14:44Z Bike: http://plaster.tymoon.eu/view/845#847 maybe works? 2018-07-10T19:15:01Z Murii_ joined #lisp 2018-07-10T19:15:08Z pjb: perhaps. On the other hand, I like to use different names for the expression and the variable bound to the expression. (let ((,vstuff ,stuff)) …) instead of (once-only (stuff) …). 2018-07-10T19:15:12Z Bike: wow, and fbind itself expands into something easy to understand, despite its horrible upbringing 2018-07-10T19:15:20Z Bike: that's spooky 2018-07-10T19:15:24Z makomo: Bike: exactly, that's the most beautiful part 2018-07-10T19:15:29Z Bike: but yes i don't usually use once-only either. 2018-07-10T19:15:42Z makomo: pjb: ONCE-ONLY supports lists as specs too 2018-07-10T19:15:55Z makomo: you can say (once-only ((hello stuff)) ...) 2018-07-10T19:16:15Z makomo: whatever form is bound to STUFF within the macro is evaluated once within the expansion into a gensym, which is bound to HELLO within the macro 2018-07-10T19:16:15Z pjb: In macros, it's important to keep separate the bindings in the different environments, or levels of backquotes. Once-only confuses things up, IMO. 2018-07-10T19:16:27Z Bike: yeah. 2018-07-10T19:16:30Z makomo: Bike: i'm looking at your annotation 2018-07-10T19:16:55Z makomo: meh, idk, i don't feel like it's that confusing. it's just a thing that you get used to, just another "black box" if you will 2018-07-10T19:16:57Z Cymew quit (Ping timeout: 240 seconds) 2018-07-10T19:17:04Z makomo: ONCE-ONLY only confuses things because its docs are a bit crappy 2018-07-10T19:17:10Z pjb: makomo: I can agree to the getting used to. 2018-07-10T19:17:11Z makomo: it doesn't really say anything about INITFORMs 2018-07-10T19:18:10Z brettgilio joined #lisp 2018-07-10T19:18:14Z makomo: perhaps a PR for that wouldn't be bad 2018-07-10T19:18:19Z makomo: Bike: does your solution work or? 2018-07-10T19:18:26Z Bike: seems to. 2018-07-10T19:19:51Z slyrus_ quit (Ping timeout: 240 seconds) 2018-07-10T19:20:51Z quazimodo quit (Ping timeout: 240 seconds) 2018-07-10T19:21:17Z makomo: Bike: err, but i don't think this ONCE-ONLY does anything? 2018-07-10T19:21:23Z makomo: removing it changes nothing 2018-07-10T19:21:31Z makomo: i think you just did it manually again using GENSYM yourself 2018-07-10T19:21:59Z Xach: Friends, this day we will have a new Quicklisp dist update! I can feel it in my bones! 2018-07-10T19:22:09Z Bike: you mean the alexandria:once-only in the once-only-list macro function? 2018-07-10T19:22:20Z makomo: Bike: yes 2018-07-10T19:22:49Z quazimodo joined #lisp 2018-07-10T19:22:52Z makomo: hmm 2018-07-10T19:23:10Z makomo: yeah, what does it even do? 2018-07-10T19:23:30Z makomo: the argument INITFORMS within ONCE-ONLY-LIST is bound to the symbol INITFORMS 2018-07-10T19:23:31Z Bike: it prevents multiple evaluation of the initforms form in the macro 2018-07-10T19:23:40Z Bike: it doesn't matter in this particular case 2018-07-10T19:24:00Z Bike: but you could try removing it, and then rewriting fbind to do (once-only-list (funs (mapcar #'second bindings)) ...),and then macroexpand it 2018-07-10T19:24:04Z Bike: it'll do the mapcartwice 2018-07-10T19:24:07Z Bike: mapcar twice 2018-07-10T19:25:37Z Bike: i friggin hate writing code like this. i have to reverse engineer what i wrote thirty seconds after writing it because it doesn't stay in my head 2018-07-10T19:25:44Z shka_ quit (Ping timeout: 260 seconds) 2018-07-10T19:25:57Z makomo: Bike: ah you're right, but it doesn't have the same function as the ONCE-ONLY i used within my expansions 2018-07-10T19:26:16Z makomo: this is only for the purposes of your own macro's hygiene, it has nothing to do with the ultimate goal, i.e. reusing ONCE-ONLY 2018-07-10T19:26:31Z makomo: aren't you still doing it all manually 2018-07-10T19:27:10Z makomo: yeah, pretty much reinvented ONCE-ONLY from what i can see 2018-07-10T19:27:38Z makomo: Bike: yeah lol, it's not the easiest thing 2018-07-10T19:28:05Z makomo: but once it is written, you can forget about it and use it like a black box, so who cares how complex it is underneath if it's well documented and does it job 2018-07-10T19:28:16Z makomo: (until bugs pop in i guess :D) 2018-07-10T19:28:26Z makomo: its* 2018-07-10T19:28:41Z Bike: yes, i'm doing it "manually", because like i said, once-only and once-only-list are not the same thing. 2018-07-10T19:29:17Z makomo: right, but they're pretty close in their functionality 2018-07-10T19:29:31Z Kundry_Wag quit (Remote host closed the connection) 2018-07-10T19:29:36Z makomo: one takes a list of a constant number of specs, the other takes an arbitrary number of specs 2018-07-10T19:29:38Z makomo: that's it 2018-07-10T19:29:54Z makomo: and yet that immediately requires you to use EVAL 2018-07-10T19:30:00Z makomo: at macroexpansion-time, as we said 2018-07-10T19:30:30Z pagnol joined #lisp 2018-07-10T19:30:55Z Bike: yeah, like (+ 3 4 5) is easy but (apply #'+ list) is different 2018-07-10T19:31:08Z makomo: yeah, pretty much 2018-07-10T19:31:28Z makomo: right, exactly that 2018-07-10T19:32:17Z k4rtik joined #lisp 2018-07-10T19:32:20Z orivej quit (Ping timeout: 268 seconds) 2018-07-10T19:32:49Z makomo: but this whole problem is bigger than ONCE-ONLY 2018-07-10T19:32:50Z slyrus_ joined #lisp 2018-07-10T19:32:53Z makomo: all macros have this "problem" 2018-07-10T19:32:57Z _death: I think macros are for syntactic convenience and clarity, and this "re-use" inverts the purpose ;) 2018-07-10T19:33:18Z makomo: i don't know, i feel like macros should be composable as well, just like functions 2018-07-10T19:33:45Z makomo: otherwise you can't escape from constantly rewriting the same things over and over again, such as avoiding multiple evaluation 2018-07-10T19:33:57Z makomo: (in the case of an arbitarary number of forms, that is; otherwise you just use ONCE-ONLY) 2018-07-10T19:34:07Z Bike: this is the first time i have run into a situation even vaguely like this 2018-07-10T19:34:27Z mindCrime__ joined #lisp 2018-07-10T19:34:29Z _death: also, once-only rebinds the names passed to it.. in this situation I don't think you need that 2018-07-10T19:34:55Z _death: that's why a simple solution using gensym + let works pretty well 2018-07-10T19:35:07Z makomo: _death: right, but those disappear in the end anyway because nobody uses those rebound symbols 2018-07-10T19:35:30Z makomo: Bike: definitely not the first time for me 2018-07-10T19:35:48Z makomo: literally anything that you want to generalize to an arbitary number of arguments is screwed 2018-07-10T19:36:12Z mindCrime quit (Ping timeout: 256 seconds) 2018-07-10T19:37:11Z _death: but you don't usually need to rebind the names.. so once-only isn't the exact fit 2018-07-10T19:37:32Z makomo: hm, why not? 2018-07-10T19:37:34Z k4rtik quit (Ping timeout: 264 seconds) 2018-07-10T19:38:24Z makomo: so in the end, the only solutions are (1) use the original macro and EVAL to make it work for an arbitrary number of arguments or (2) write two versions of the same macro 2018-07-10T19:39:05Z makomo: but i guess the constant size version could just delegate to the list version? 2018-07-10T19:39:55Z makomo: by quoting the thing to be evaluated 2018-07-10T19:40:42Z makomo: and by "original macro" i mean the constant size version 2018-07-10T19:41:27Z charh quit (Quit: leaving) 2018-07-10T19:42:20Z _death: the fact that you call gensym by yourself already indicates an issue.. after all once-only is supposed to hide the use of gensyms 2018-07-10T19:42:58Z makomo: _death: right, but this is only to generate dummy symbols for the ONCE-ONLY to use 2018-07-10T19:43:19Z makomo: these are the symbols that then get rebound, but nobody cares about them anyway, because nobody knows their names and what initforms they correspond to 2018-07-10T19:43:34Z makomo: we care about the gensyms made by ONCE-ONLY, those that are part of the expansion that ONCE-ONLY helped write 2018-07-10T19:43:40Z makomo: that's what i bind to the list "oo" 2018-07-10T19:43:59Z makomo: and also, this gensym creation thing is hidden away anyway 2018-07-10T19:44:11Z makomo: this isn't something the user does, this is just to actually implement the list version of ONCE-ONLY 2018-07-10T19:44:24Z makomo: take a look at FBIND for the usage 2018-07-10T19:44:30Z makomo: no gensyms at all 2018-07-10T19:44:31Z z3t0 quit (Quit: ZNC 1.6.3+deb1 - http://znc.in) 2018-07-10T19:45:48Z makomo: and EVAL wouldn't even be a problem if i didn't have to explictily pass variables of the using macro to ONCE-ONLY-LIST so that they're available in the EVAL 2018-07-10T19:46:06Z _death: if you look at your final fbind macro, it looks pretty similar to the fbind that uses a function that returns the gensyms and the bindings 2018-07-10T19:47:20Z makomo: _death: do you have the FBIND version that uses a function? i don't have it 2018-07-10T19:48:24Z makomo: or did i miss something 2018-07-10T19:48:35Z _death: https://plaster.tymoon.eu/view/842 ;; remove the silly gensym->name that was there to make a point 2018-07-10T19:49:40Z makomo: right, but i don't see how that's a bad thing. it's not something you can avoid either, since there's an arbitrary number of symbols you have to create 2018-07-10T19:49:43Z makomo: they'll have to be gensyms 2018-07-10T19:50:08Z _death: yes, but what does the macro give you that the function doesn't 2018-07-10T19:50:36Z makomo: the fact that i don't have to write the prefix LET myself 2018-07-10T19:50:43Z makomo: and the fact that i don't have to write such a function myself 2018-07-10T19:50:59Z _death: just a gnarly macro ;) 2018-07-10T19:51:26Z arbxs joined #lisp 2018-07-10T19:51:55Z makomo: the call to this function and then binding its results and using them to prefix my own macro with a LET 2018-07-10T19:52:04Z makomo: that's what i want to avoid, and that's the job of ONCE-ONLY and ONCE-ONLY-LIST 2018-07-10T19:52:12Z makomo: i don't want to do that every time 2018-07-10T19:52:56Z ku is now known as k-hos 2018-07-10T19:53:33Z _death: and still you can have a once-only-list macro that doesn't use once-only and it should be much simpler 2018-07-10T19:53:45Z makomo: right, true, and that's the one Bike wrote 2018-07-10T19:53:59Z makomo: to me that seems like the best solution i think 2018-07-10T19:54:16Z makomo: although it then requires that the author plan ahead for the arbitrary version right away, instead of the constant version 2018-07-10T19:54:24Z makomo: and the constant version can then be derived from the arbitrary one, i think 2018-07-10T19:54:40Z _death: only the name is confusing because the analogy isn't very good 2018-07-10T19:55:11Z makomo: hmm. yeah, the arbitrary one evaluates at macroexpansion time so maybe that's why it appears to be different? 2018-07-10T19:55:21Z makomo: but the essence is the same 2018-07-10T19:57:26Z auricle joined #lisp 2018-07-10T19:58:52Z auricle: hello fellows, I have not found a GLL parsing library for CL so I am going to translate one from this Racket GLL library: https://github.com/epsil/gll/blob/master/3/parser.rkt 2018-07-10T20:00:25Z JuanDaugherty joined #lisp 2018-07-10T20:00:39Z makomo: _death: huh... i don't think the constant version can be written using the arbitrary version... without EVAL 2018-07-10T20:00:58Z makomo: i'm not sure yet, i'll try 2018-07-10T20:04:11Z vlatkoB quit (Remote host closed the connection) 2018-07-10T20:04:43Z lumm joined #lisp 2018-07-10T20:05:21Z shifty joined #lisp 2018-07-10T20:09:05Z lumm quit (Ping timeout: 240 seconds) 2018-07-10T20:18:35Z JuanDaugherty quit (Quit: Exeunt) 2018-07-10T20:20:26Z pjb: makomo: in scheme eval takes an environment argument (like macroexpand or the macro functions). This is what makes it actually rather useless! You don't usually have the environment you want to evaluate things… 2018-07-10T20:20:56Z pjb: (and since scheme doesn't have dynamic bindings (by default), …) 2018-07-10T20:22:05Z brendyn quit (Ping timeout: 240 seconds) 2018-07-10T20:29:49Z zxcvz quit (Quit: zxcvz) 2018-07-10T20:31:16Z lumm joined #lisp 2018-07-10T20:37:26Z Xach: auricle: What is GLL? 2018-07-10T20:41:40Z brettgilio quit (Remote host closed the connection) 2018-07-10T20:41:41Z arzoriac joined #lisp 2018-07-10T20:41:59Z arzoriac left #lisp 2018-07-10T20:43:05Z housel quit (Read error: Connection reset by peer) 2018-07-10T20:43:45Z brettgilio joined #lisp 2018-07-10T20:46:05Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2018-07-10T20:46:10Z housel joined #lisp 2018-07-10T20:46:21Z scymtym_ quit (Ping timeout: 240 seconds) 2018-07-10T20:46:41Z EvW1 joined #lisp 2018-07-10T20:49:11Z milanj joined #lisp 2018-07-10T20:51:37Z orivej joined #lisp 2018-07-10T20:53:21Z k4rtik joined #lisp 2018-07-10T20:54:53Z emacsomancer joined #lisp 2018-07-10T20:55:30Z jkordani: Xach: https://epsil.github.io/gll/ 2018-07-10T20:55:40Z jkordani: looks like a cool article to me 2018-07-10T21:00:43Z auricle: Xach: apparently it is like PEGs but without the left recursion constraint 2018-07-10T21:01:04Z auricle: Xach: so one can finally just write literally the BNF grammar one wants without having to factor it at all, like a human being 2018-07-10T21:01:24Z Xach: https://github.com/dimitri/cl-abnf is pretty cool in that regard 2018-07-10T21:02:43Z auricle: Xach: that seems liek a beefed up regex library. I think GLLs are like beefed up PEGs (they can parse CFGs) 2018-07-10T21:03:20Z Xach: "literally the bnf grammar" is what made me think of it 2018-07-10T21:03:58Z auricle: Xach: by that I meant being able to write "expr -> expr + expr" whereas that would never work in most parsers... you'd need to factor it out; not so with GLLs 2018-07-10T21:04:51Z mindCrime__ quit (Ping timeout: 240 seconds) 2018-07-10T21:06:10Z auricle: Xach: have you ever translated a library from scheme that I could use as a reference for all the tricky "..." (scheme's macro ellipses) etc? 2018-07-10T21:09:17Z Xach: auricle: no, sorry. 2018-07-10T21:16:52Z charh joined #lisp 2018-07-10T21:17:24Z angavrilov quit (Remote host closed the connection) 2018-07-10T21:19:14Z Smokitch quit 2018-07-10T21:25:37Z auricle: Xach: in case you're interested there's apparently a so-called "Earley algorithm" that gives us PEGs with left-recursion. anyway, I'm out, have a good day, and thanks for all you do for CL 2018-07-10T21:26:18Z nickenchuggets joined #lisp 2018-07-10T21:26:18Z nickenchuggets quit (Changing host) 2018-07-10T21:26:18Z nickenchuggets joined #lisp 2018-07-10T21:27:49Z Xach: beach has sung earley's praises in that pst 2018-07-10T21:32:24Z Bike quit (Ping timeout: 252 seconds) 2018-07-10T21:33:04Z LiamH quit (Quit: Leaving.) 2018-07-10T21:33:38Z xrash joined #lisp 2018-07-10T21:38:10Z quazimodo quit (Ping timeout: 264 seconds) 2018-07-10T21:39:29Z quazimodo joined #lisp 2018-07-10T21:40:23Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-10T21:40:48Z nickenchuggets joined #lisp 2018-07-10T21:40:49Z nickenchuggets quit (Changing host) 2018-07-10T21:40:49Z nickenchuggets joined #lisp 2018-07-10T21:44:49Z mindCrime__ joined #lisp 2018-07-10T21:46:57Z eli_oat quit (Ping timeout: 240 seconds) 2018-07-10T21:48:06Z karlosz quit (Quit: karlosz) 2018-07-10T21:48:25Z brettgilio quit (Remote host closed the connection) 2018-07-10T21:48:45Z karlosz joined #lisp 2018-07-10T21:51:29Z kerframil joined #lisp 2018-07-10T21:54:55Z JuanDaugherty joined #lisp 2018-07-10T21:58:51Z kajo quit (Ping timeout: 240 seconds) 2018-07-10T22:00:21Z kajo joined #lisp 2018-07-10T22:02:52Z Murii_ quit (Remote host closed the connection) 2018-07-10T22:08:25Z al-damiri quit (Quit: Connection closed for inactivity) 2018-07-10T22:10:03Z warweasle_ joined #lisp 2018-07-10T22:10:36Z warweasle quit (Quit: rcirc on GNU Emacs 24.4.1) 2018-07-10T22:10:59Z warweasle_ is now known as warweasle 2018-07-10T22:12:27Z rumbler31 joined #lisp 2018-07-10T22:13:21Z shifty quit (Ping timeout: 240 seconds) 2018-07-10T22:15:34Z scymtym joined #lisp 2018-07-10T22:15:44Z Bike joined #lisp 2018-07-10T22:20:27Z lumm quit (Ping timeout: 240 seconds) 2018-07-10T22:26:51Z MoziM quit (Ping timeout: 240 seconds) 2018-07-10T22:28:55Z MoziM joined #lisp 2018-07-10T22:33:40Z vertigo_ quit (Ping timeout: 244 seconds) 2018-07-10T22:34:32Z DingoSaar quit (Remote host closed the connection) 2018-07-10T22:35:50Z DingoSaar joined #lisp 2018-07-10T22:41:49Z karlosz quit (Quit: karlosz) 2018-07-10T22:42:19Z test1600 quit (Ping timeout: 260 seconds) 2018-07-10T22:46:05Z brettgilio joined #lisp 2018-07-10T22:46:54Z caltelt_ joined #lisp 2018-07-10T22:48:50Z phoe quit (Ping timeout: 276 seconds) 2018-07-10T22:53:17Z k4rtik quit (Ping timeout: 265 seconds) 2018-07-10T23:07:44Z skapata joined #lisp 2018-07-10T23:09:09Z igemnace quit (Ping timeout: 260 seconds) 2018-07-10T23:11:18Z rumbler31 quit (Remote host closed the connection) 2018-07-10T23:11:24Z nowhere_man joined #lisp 2018-07-10T23:13:13Z pagnol quit (Quit: Ex-Chat) 2018-07-10T23:14:08Z robotoad quit (Quit: robotoad) 2018-07-10T23:14:24Z Cymew joined #lisp 2018-07-10T23:16:47Z JuanDaugherty quit (Quit: Exeunt) 2018-07-10T23:18:37Z Cymew quit (Ping timeout: 244 seconds) 2018-07-10T23:19:39Z orivej quit (Ping timeout: 260 seconds) 2018-07-10T23:21:02Z Kaisyu7 quit (Quit: ERC (IRC client for Emacs 25.3.2)) 2018-07-10T23:29:46Z mindCrime__ quit (Ping timeout: 264 seconds) 2018-07-10T23:30:17Z dyelar joined #lisp 2018-07-10T23:33:21Z nullniverse joined #lisp 2018-07-10T23:33:39Z orivej joined #lisp 2018-07-10T23:36:03Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-10T23:36:44Z jack_rabbit joined #lisp 2018-07-10T23:37:37Z pseudonymous_ quit (Ping timeout: 248 seconds) 2018-07-10T23:37:42Z robotoad joined #lisp 2018-07-10T23:38:38Z random-nick quit (Read error: Connection reset by peer) 2018-07-10T23:38:41Z pierpa joined #lisp 2018-07-10T23:42:05Z dyelar quit (Quit: Leaving.) 2018-07-10T23:47:44Z didi joined #lisp 2018-07-10T23:52:38Z didi: Is anyone aware of an expression language for defining dates? Like CL-PPCRE accepts a parse tree for defining regular expressions. 2018-07-10T23:53:14Z quazimodo quit (Ping timeout: 244 seconds) 2018-07-10T23:55:09Z quazimodo joined #lisp 2018-07-10T23:58:32Z terpri quit (Ping timeout: 265 seconds) 2018-07-11T00:08:46Z anunnaki joined #lisp 2018-07-11T00:13:15Z Kaisyu joined #lisp 2018-07-11T00:17:11Z raynold joined #lisp 2018-07-11T00:22:37Z dddddd quit (Remote host closed the connection) 2018-07-11T00:27:12Z pierpa: check out Calendrical Calculations, and use whatever they use (and their software is written in CL, and is available from the publisher website, although with a weird license) 2018-07-11T00:30:14Z didi: pierpa: Thank you. 2018-07-11T00:30:23Z pierpa: ;) 2018-07-11T00:35:51Z aindilis quit (Remote host closed the connection) 2018-07-11T00:37:22Z aindilis joined #lisp 2018-07-11T00:38:59Z markoong quit (Ping timeout: 260 seconds) 2018-07-11T00:48:15Z k4rtik joined #lisp 2018-07-11T00:48:16Z k4rtik quit (Changing host) 2018-07-11T00:48:16Z k4rtik joined #lisp 2018-07-11T01:02:28Z elfmacs joined #lisp 2018-07-11T01:04:46Z graphene quit (Remote host closed the connection) 2018-07-11T01:05:57Z graphene joined #lisp 2018-07-11T01:06:59Z k4rtik quit (Ping timeout: 260 seconds) 2018-07-11T01:09:30Z nullniverse quit (Quit: Undertaking stack overflow prevention) 2018-07-11T01:11:48Z rumbler31 joined #lisp 2018-07-11T01:16:25Z rumbler31 quit (Ping timeout: 244 seconds) 2018-07-11T01:16:27Z Younder quit (Ping timeout: 240 seconds) 2018-07-11T01:17:52Z yxcv joined #lisp 2018-07-11T01:19:43Z scymtym quit (Remote host closed the connection) 2018-07-11T01:21:27Z scymtym joined #lisp 2018-07-11T01:24:21Z EvW1 quit (Ping timeout: 240 seconds) 2018-07-11T01:24:29Z rumbler31 joined #lisp 2018-07-11T01:31:46Z milanj quit (Quit: This computer has gone to sleep) 2018-07-11T01:34:31Z skidd0 joined #lisp 2018-07-11T01:34:54Z skidd0: can you register an :after to a make-instance, and, is this a bad idea? 2018-07-11T01:36:08Z Xach: skidd0: you can, and it's not automatically a bad idea 2018-07-11T01:36:15Z Xach: skidd0: what were you thinking of doing with it? 2018-07-11T01:36:34Z graphene quit (Remote host closed the connection) 2018-07-11T01:36:38Z White_Flame: I've seen it done relatively often 2018-07-11T01:36:46Z sjl_: defining an after method on initialize-instance is a pretty common idiom. I don't know that I've seen it done on make-instance very much. 2018-07-11T01:36:59Z skidd0: when I make an instance of a list, i want to auto add that list to a .. list of lists.. 2018-07-11T01:37:48Z graphene joined #lisp 2018-07-11T01:38:09Z Xach: skidd0: that could work, if by "list" you mean some list-like CLOS object 2018-07-11T01:38:25Z Xach: standard-class instance 2018-07-11T01:38:31Z skidd0: I have an interactive function that prompts the user for info (like name, tags, about) and then pushes the new list onto a special var *task-lists* 2018-07-11T01:38:55Z skidd0: why a CLOS list-like object rather than a stock list? 2018-07-11T01:39:23Z Xach: lists are not made with make-instance. 2018-07-11T01:39:32Z skidd0: oh, sorry 2018-07-11T01:39:34Z skidd0: i undertand 2018-07-11T01:39:46Z skidd0: yes,my lists are a class. TASK_LIST 2018-07-11T01:39:50Z skidd0: TASK-LIST* 2018-07-11T01:40:08Z skidd0: I thought you were talking about the lisp list I pushed them too 2018-07-11T01:40:38Z Xach: skidd0: i think i would not do it that way, because it can be nice to make objects without causing a side-effect like that, e.g. when you're just testing things out. 2018-07-11T01:41:07Z Bike: yeah, i'd just have a separate, like, make-and-also-register-object function. 2018-07-11T01:41:11Z White_Flame: something like (make-registered-task ...) 2018-07-11T01:41:12Z White_Flame: yeah 2018-07-11T01:42:31Z skidd0: that makes sense 2018-07-11T01:43:19Z skidd0: but it's worth noting that I always want the task-lists to be added to the list of task-lists 2018-07-11T01:43:43Z Bike: always in normal use, i assume 2018-07-11T01:43:44Z White_Flame: then your own (make-task ...) which uses (make-raw-task ...) 2018-07-11T01:43:48Z Kundry_Wag joined #lisp 2018-07-11T01:44:01Z White_Flame: where the former also registers it 2018-07-11T01:44:03Z Bike: for testing i've pretty much never regretted being able to make a thing without side effects 2018-07-11T01:44:14Z skidd0: fair point 2018-07-11T01:44:34Z skidd0: White_Flame: so make-raw-task doesn't register, but make-task does 2018-07-11T01:44:36Z skidd0: ? 2018-07-11T01:44:37Z Josh_2 quit (Remote host closed the connection) 2018-07-11T01:44:41Z White_Flame: yep 2018-07-11T01:44:49Z skidd0: great. thanks guys 2018-07-11T01:45:05Z White_Flame: (defun make-task (...) (register-task (make-raw-task ...))) 2018-07-11T01:45:15Z White_Flame: assuming the return values line up 2018-07-11T01:45:19Z skidd0: right 2018-07-11T01:47:19Z graphene quit (Remote host closed the connection) 2018-07-11T01:47:25Z yxcv left #lisp 2018-07-11T01:48:35Z graphene joined #lisp 2018-07-11T01:48:57Z White_Flame: you could also maybe do (defun make-task (... &key dont-register) ...) 2018-07-11T01:49:15Z skidd0: with make-task, i'm thinking that's basically taking the init args and then using them in a make-instance 2018-07-11T01:49:26Z skidd0: but that seems redundant 2018-07-11T01:49:39Z skidd0: and i don't know how i'd set it so I could skip an arg 2018-07-11T01:49:48Z White_Flame: there's many ways to incredibly over-engineer it in an explosion of OO 2018-07-11T01:49:59Z skidd0: which is what i'm trying to avoid 2018-07-11T01:50:07Z skidd0: with my first lisp project 2018-07-11T01:50:09Z White_Flame: &rest and APPLY are used to pass through args 2018-07-11T01:50:09Z subroot joined #lisp 2018-07-11T01:50:22Z skidd0: i'm going to google that 2018-07-11T01:50:37Z Bike: you might not need the raw task part. 2018-07-11T01:51:27Z Zhivago: Isn't this just a matter of creating a constructor function which also adds the thing it constructs to a list somewhere? 2018-07-11T01:51:40Z skidd0: yes 2018-07-11T01:51:40Z Zhivago: (make-and-register-foo) or some-such? 2018-07-11T01:52:05Z Zhivago: Or (register-foo (make-foo)). 2018-07-11T01:52:14Z Zhivago: So, where's the OOP bit? 2018-07-11T01:52:20Z skapata quit (Quit: Ping timeout: 65,535 years) 2018-07-11T01:52:55Z warweasle_ joined #lisp 2018-07-11T01:52:55Z warweasle quit (Read error: Connection reset by peer) 2018-07-11T01:53:17Z skidd0: well, i'm using CLOS for the tasks and task-lists 2018-07-11T01:53:34Z skidd0: and White_Flame was warning about over-engineering that 2018-07-11T01:54:01Z White_Flame: not a warning about your particular approach, per se 2018-07-11T01:54:20Z skidd0: i took it as general widom 2018-07-11T01:54:29Z White_Flame: but once you have automatic behavior, then you want to make it optional, you need to have side-band ways of passing in options to that automatic behavior 2018-07-11T01:55:06Z skidd0: and then, i'll have a really complex way to make lists, and have spent a while learning how to do that, and still not have tasks 2018-07-11T01:55:30Z terpri joined #lisp 2018-07-11T01:56:33Z Zhivago: Why are you thinking about 'making lists'? 2018-07-11T01:56:37Z White_Flame: btw, (defun maker (&rest params) (let ((obj (apply #'raw-maker params))) ...)) is how you pass through parameters 2018-07-11T01:57:05Z Zhivago: Probably your problem involves 'making a data structure for some particular purpose', and that just happens to involve lists today. 2018-07-11T01:57:24Z Zhivago: So, why not abstract it with a make-thingy function? 2018-07-11T01:58:49Z karlosz joined #lisp 2018-07-11T02:02:57Z robotoad quit (Quit: robotoad) 2018-07-11T02:04:51Z froggey quit (Ping timeout: 240 seconds) 2018-07-11T02:05:51Z orivej quit (Ping timeout: 240 seconds) 2018-07-11T02:09:24Z quazimodo quit (Ping timeout: 260 seconds) 2018-07-11T02:10:49Z quazimodo joined #lisp 2018-07-11T02:11:55Z skidd0: Zhivago: I see what you're getting at 2018-07-11T02:12:00Z skidd0: i think 2018-07-11T02:12:05Z skidd0: anyway, thanks all 2018-07-11T02:12:08Z skidd0 quit (Quit: 0/) 2018-07-11T02:14:34Z robotoad joined #lisp 2018-07-11T02:25:30Z rumbler31 quit (Remote host closed the connection) 2018-07-11T02:27:34Z Kundry_Wag quit (Remote host closed the connection) 2018-07-11T02:28:11Z Kundry_Wag joined #lisp 2018-07-11T02:30:18Z brettgilio quit (Remote host closed the connection) 2018-07-11T02:30:44Z brettgilio joined #lisp 2018-07-11T02:32:46Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-11T02:34:14Z saki quit (Quit: saki) 2018-07-11T02:36:06Z mlf|2 joined #lisp 2018-07-11T02:36:53Z AetherWind joined #lisp 2018-07-11T02:38:57Z mflem quit (Ping timeout: 245 seconds) 2018-07-11T02:42:09Z loli quit (Ping timeout: 268 seconds) 2018-07-11T02:44:56Z mindCrime joined #lisp 2018-07-11T02:45:34Z mooshmoosh quit (Ping timeout: 260 seconds) 2018-07-11T02:46:05Z mindCrime_ quit (Ping timeout: 276 seconds) 2018-07-11T02:46:19Z mooshmoosh joined #lisp 2018-07-11T03:00:42Z cnx joined #lisp 2018-07-11T03:01:54Z cnx: hi there, somehow i can no longer load swank server due to `Package ASDF does not exist.' 2018-07-11T03:06:12Z k4rtik joined #lisp 2018-07-11T03:11:05Z pierpa quit (Quit: Page closed) 2018-07-11T03:12:54Z akkad: cnx sbcl? 2018-07-11T03:13:22Z nanoz joined #lisp 2018-07-11T03:13:25Z AetherWind_GJ joined #lisp 2018-07-11T03:13:53Z AetherWind quit (Disconnected by services) 2018-07-11T03:14:01Z AetherWind_GJ is now known as AetherWind 2018-07-11T03:14:34Z potatonomicon joined #lisp 2018-07-11T03:14:42Z cnx: yes, sbcl, and it worked normally a few days before 2018-07-11T03:15:27Z k-hos quit (Ping timeout: 240 seconds) 2018-07-11T03:15:31Z akkad: cnx: did you load it through quicklisp? 2018-07-11T03:15:50Z akkad: i.e. (ql:quickload :swank) 2018-07-11T03:16:00Z Cymew joined #lisp 2018-07-11T03:18:23Z brettgilio quit (Remote host closed the connection) 2018-07-11T03:18:24Z potatonomicon quit (Read error: Connection reset by peer) 2018-07-11T03:20:21Z Cymew quit (Ping timeout: 240 seconds) 2018-07-11T03:20:22Z phoe joined #lisp 2018-07-11T03:20:32Z kark quit (Ping timeout: 276 seconds) 2018-07-11T03:20:54Z Pixel_Outlaw joined #lisp 2018-07-11T03:21:21Z jibanes quit (Ping timeout: 240 seconds) 2018-07-11T03:21:24Z k-hos joined #lisp 2018-07-11T03:21:56Z cnx: no i didn't, i started slime in emacs 2018-07-11T03:22:12Z cnx: i also tried loading it directly with no luck 2018-07-11T03:22:35Z cnx: sbcl --script /usr/share/common-lisp/source/slime/swank-loader.lisp 2018-07-11T03:23:28Z jibanes joined #lisp 2018-07-11T03:24:07Z al-damiri joined #lisp 2018-07-11T03:26:10Z Cymew joined #lisp 2018-07-11T03:26:49Z White_Flame: I don't think SLIME launches it with --script 2018-07-11T03:27:01Z White_Flame: that prevents your .sbclrc from starting 2018-07-11T03:27:11Z PuercoPope joined #lisp 2018-07-11T03:27:14Z White_Flame: however, you shouldn't need a .sbclrc for swank to work 2018-07-11T03:27:17Z PuercoPop quit (Quit: ZNC 1.6.3 - http://znc.in) 2018-07-11T03:27:28Z PuercoPope is now known as PuercoPop 2018-07-11T03:27:40Z White_Flame: it's always best to install SBCL from source, instead of from your package manager, due to weird issues like this 2018-07-11T03:27:51Z White_Flame: and install SLIME from quicklisp. there's a helper in there 2018-07-11T03:28:11Z White_Flame: then everything will have a nice standard base to go from 2018-07-11T03:30:43Z Cymew quit (Ping timeout: 265 seconds) 2018-07-11T03:32:03Z subroot quit (Read error: Connection reset by peer) 2018-07-11T03:32:07Z beach: Good morning everyone! 2018-07-11T03:32:25Z Cymew joined #lisp 2018-07-11T03:35:33Z akkad: morning beach 2018-07-11T03:36:56Z cnx: good noon man 2018-07-11T03:37:00Z Cymew quit (Ping timeout: 265 seconds) 2018-07-11T03:37:21Z cnx: White_Flame: but it has worked just a few days ago 2018-07-11T03:37:39Z loli joined #lisp 2018-07-11T03:37:53Z cnx: and I'm tired of letting my 14yo laptop compiling stuff 2018-07-11T03:38:40Z White_Flame: if you start SBCL from the commandline and type (require :asdf), what do you get? 2018-07-11T03:38:42Z Cymew joined #lisp 2018-07-11T03:39:21Z White_Flame: and type asdf:*central-registry* afterwards 2018-07-11T03:39:30Z phoe quit (Ping timeout: 268 seconds) 2018-07-11T03:39:37Z White_Flame: I odn't know if slime REQUIREs it in, or if it has its own copy, though 2018-07-11T03:39:45Z phoe joined #lisp 2018-07-11T03:40:19Z cnx: asdf loaded fine somehow 2018-07-11T03:41:26Z cnx: asdf:*central-registry* is nil 2018-07-11T03:42:57Z Cymew quit (Ping timeout: 240 seconds) 2018-07-11T03:43:01Z White_Flame: well, try reinstalling SLIME. something might have gotten deleted 2018-07-11T03:43:29Z White_Flame: it shouldn't just "break", so I would suspect something external in the environment 2018-07-11T03:45:00Z Cymew joined #lisp 2018-07-11T03:47:08Z mange joined #lisp 2018-07-11T03:47:30Z makomo: morning 2018-07-11T03:48:44Z cnx: noon 2018-07-11T03:48:59Z phoe: mornin 2018-07-11T03:49:44Z Cymew quit (Ping timeout: 260 seconds) 2018-07-11T03:51:19Z Cymew joined #lisp 2018-07-11T03:53:30Z saki joined #lisp 2018-07-11T03:53:35Z cnx: White_Flame: any idea how package path in cl works, i'm still a newbie 2018-07-11T03:55:27Z Cymew quit (Ping timeout: 240 seconds) 2018-07-11T03:57:36Z Cymew joined #lisp 2018-07-11T03:57:47Z graphene quit (Remote host closed the connection) 2018-07-11T03:59:06Z graphene joined #lisp 2018-07-11T04:01:27Z makomo: phoe: did you take a look at the macros i wrote (regarding the FBIND thing we discussed) :D? 2018-07-11T04:01:36Z pierpal quit (Quit: Poof) 2018-07-11T04:01:56Z pierpal joined #lisp 2018-07-11T04:02:19Z Cymew quit (Ping timeout: 268 seconds) 2018-07-11T04:03:54Z Cymew joined #lisp 2018-07-11T04:05:04Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-11T04:07:21Z nowhere_man joined #lisp 2018-07-11T04:07:22Z Pixel_Outlaw quit (Quit: Leaving) 2018-07-11T04:08:29Z Cymew quit (Ping timeout: 268 seconds) 2018-07-11T04:09:05Z White_Flame: cnx: REQUIRE is a deprecated, implementation-specific thing that's usually only used for implementation built-ins 2018-07-11T04:09:40Z White_Flame: QL & ASDF have their own paths that they manage, to pull in "systems" 2018-07-11T04:09:48Z White_Flame: ("package" is what namespaces symbols in Lisp) 2018-07-11T04:10:08Z White_Flame: asdf:*central-registry* is the list of directories it looks for .asd files to load 2018-07-11T04:10:11Z Cymew joined #lisp 2018-07-11T04:10:28Z White_Flame: quicklisp also has a couple for the quicklisp distributions as well as local-projects 2018-07-11T04:10:36Z White_Flame: but if asdf itself isn't loading, it's a pretty eary failure 2018-07-11T04:10:57Z White_Flame: *early 2018-07-11T04:13:35Z brettgilio joined #lisp 2018-07-11T04:14:27Z Cymew quit (Ping timeout: 240 seconds) 2018-07-11T04:16:27Z Cymew joined #lisp 2018-07-11T04:19:03Z isospin joined #lisp 2018-07-11T04:20:57Z Cymew quit (Ping timeout: 240 seconds) 2018-07-11T04:21:31Z cnx: so (require :asdf) return something doesn't mean that it is successfully loaded 2018-07-11T04:24:59Z Bike quit (Quit: Lost terminal) 2018-07-11T04:26:00Z rumbler31 joined #lisp 2018-07-11T04:30:10Z rumbler31 quit (Ping timeout: 244 seconds) 2018-07-11T04:30:28Z White_Flame: cnx: because you asked for asdf:*central-registry*, that means that that symbol was defined in the package, aka it loaded 2018-07-11T04:30:49Z shka_ joined #lisp 2018-07-11T04:30:58Z White_Flame: NIL means the value was defined. It would have blown up with an error if neither that package nor symbol existed 2018-07-11T04:34:24Z pjb quit (Remote host closed the connection) 2018-07-11T04:35:50Z pierpal quit (Quit: Poof) 2018-07-11T04:36:08Z pierpal joined #lisp 2018-07-11T04:36:19Z pjb joined #lisp 2018-07-11T04:38:28Z cnx: I'm feeling kinda sick now, I guess I'll try to get more sleep and debug this later, thanks White_Flame 2018-07-11T04:38:33Z cnx left #lisp 2018-07-11T04:38:51Z lavaflow_ quit (Read error: Connection reset by peer) 2018-07-11T04:39:35Z lavaflow_ joined #lisp 2018-07-11T04:40:28Z Guest49727 left #lisp 2018-07-11T04:43:05Z buffergn0me joined #lisp 2018-07-11T04:46:52Z pjb quit (Remote host closed the connection) 2018-07-11T04:50:54Z pjb joined #lisp 2018-07-11T04:51:47Z pierpal quit (Quit: Poof) 2018-07-11T04:51:54Z orivej joined #lisp 2018-07-11T04:52:05Z pierpal joined #lisp 2018-07-11T04:56:17Z mflem joined #lisp 2018-07-11T04:57:14Z brettg_ joined #lisp 2018-07-11T04:58:04Z pjb quit (Remote host closed the connection) 2018-07-11T04:58:06Z brettg_ quit (Remote host closed the connection) 2018-07-11T04:58:30Z brettg_ joined #lisp 2018-07-11T04:58:40Z brettg_ quit (Remote host closed the connection) 2018-07-11T04:59:22Z mlf|2 quit (Ping timeout: 245 seconds) 2018-07-11T04:59:26Z pjb joined #lisp 2018-07-11T04:59:27Z brettgilio quit (Ping timeout: 240 seconds) 2018-07-11T05:01:25Z brettgilio joined #lisp 2018-07-11T05:03:27Z pjb quit (Remote host closed the connection) 2018-07-11T05:05:46Z pjb joined #lisp 2018-07-11T05:07:53Z k4rtik quit (Ping timeout: 244 seconds) 2018-07-11T05:09:34Z brendyn joined #lisp 2018-07-11T05:10:24Z robotoad quit (Quit: robotoad) 2018-07-11T05:10:39Z pjb quit (Read error: Connection reset by peer) 2018-07-11T05:14:24Z surya joined #lisp 2018-07-11T05:14:54Z orivej quit (Ping timeout: 260 seconds) 2018-07-11T05:15:22Z sauvin joined #lisp 2018-07-11T05:16:26Z surya_ joined #lisp 2018-07-11T05:19:35Z surya quit (Ping timeout: 240 seconds) 2018-07-11T05:24:33Z nanozz joined #lisp 2018-07-11T05:25:00Z makomo: how do memos work again 2018-07-11T05:25:10Z makomo: minion: help 2018-07-11T05:25:10Z minion: There are multiple help modules. Try ``/msg minion help kind'', where kind is one of: "lookups", "helping others", "adding terms", "aliasing terms", "forgetting", "memos", "avoiding memos", "nicknames", "goodies", "eliza", "advice", "apropos", "acronyms". 2018-07-11T05:27:44Z nanoz quit (Ping timeout: 260 seconds) 2018-07-11T05:27:47Z makomo: minion: memo for Bike: the "const-size" version of once-only implemented using the list version: https://plaster.tymoon.eu/view/850#850. no EVAL! i guess the most general way to go about it then is to always write a version which works with an arbitrary number of forms and then derive the const-size version from it. 2018-07-11T05:27:47Z minion: Remembered. I'll tell Bike when he/she/it next speaks. 2018-07-11T05:28:04Z makomo: minion: memo for pjb: the "const-size" version of once-only implemented using the list version: https://plaster.tymoon.eu/view/850#850. no EVAL! i guess the most general way to go about it then is to always write a version which works with an arbitrary number of forms and then derive the const-size version from it. 2018-07-11T05:28:04Z minion: Remembered. I'll tell pjb when he/she/it next speaks. 2018-07-11T05:32:00Z auricle quit (Ping timeout: 252 seconds) 2018-07-11T05:34:50Z kerframil quit (Quit: Leaving) 2018-07-11T05:38:21Z caltelt_ quit (Ping timeout: 240 seconds) 2018-07-11T05:40:57Z quazimodo quit (Ping timeout: 240 seconds) 2018-07-11T05:41:37Z Inline quit (Quit: Leaving) 2018-07-11T05:42:00Z Younder joined #lisp 2018-07-11T05:42:41Z quazimodo joined #lisp 2018-07-11T05:55:36Z vlatkoB joined #lisp 2018-07-11T05:57:29Z surya_ quit (Ping timeout: 260 seconds) 2018-07-11T05:58:53Z rippa joined #lisp 2018-07-11T06:03:45Z surya_ joined #lisp 2018-07-11T06:04:10Z raynold quit 2018-07-11T06:08:17Z mooshmoosh quit (Read error: Connection reset by peer) 2018-07-11T06:08:39Z mooshmoosh joined #lisp 2018-07-11T06:10:21Z elfmacs quit (Quit: WeeChat 2.1) 2018-07-11T06:14:24Z nanozz quit (Ping timeout: 260 seconds) 2018-07-11T06:25:46Z chiyosaki joined #lisp 2018-07-11T06:27:05Z acolarh quit (Ping timeout: 240 seconds) 2018-07-11T06:27:27Z saki quit (Ping timeout: 240 seconds) 2018-07-11T06:27:39Z logicmoo quit (Read error: Connection reset by peer) 2018-07-11T06:30:37Z flamebeard joined #lisp 2018-07-11T06:31:44Z dmiles joined #lisp 2018-07-11T06:31:54Z mooshmoosh quit (Ping timeout: 260 seconds) 2018-07-11T06:33:02Z mooshmoosh joined #lisp 2018-07-11T06:34:25Z shrdlu68 joined #lisp 2018-07-11T06:40:28Z acolarh joined #lisp 2018-07-11T06:48:16Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-11T06:48:19Z d4ryus1 joined #lisp 2018-07-11T06:49:31Z nowhere_man joined #lisp 2018-07-11T06:49:50Z d4ryus quit (Ping timeout: 276 seconds) 2018-07-11T06:58:16Z Cymew joined #lisp 2018-07-11T07:00:04Z scottj quit (Quit: leaving) 2018-07-11T07:03:14Z mathrick quit (Ping timeout: 260 seconds) 2018-07-11T07:05:42Z zooey quit (Remote host closed the connection) 2018-07-11T07:06:02Z mathrick joined #lisp 2018-07-11T07:06:07Z zooey joined #lisp 2018-07-11T07:06:11Z Arcaelyx joined #lisp 2018-07-11T07:07:45Z angavrilov joined #lisp 2018-07-11T07:11:49Z gector joined #lisp 2018-07-11T07:12:44Z buffergn0me quit (Ping timeout: 260 seconds) 2018-07-11T07:14:55Z xificurC joined #lisp 2018-07-11T07:15:03Z Smokitch joined #lisp 2018-07-11T07:18:09Z captgector joined #lisp 2018-07-11T07:19:07Z shka_ quit (Ping timeout: 244 seconds) 2018-07-11T07:19:39Z gector quit (Ping timeout: 268 seconds) 2018-07-11T07:21:22Z gector joined #lisp 2018-07-11T07:24:05Z captgector quit (Ping timeout: 240 seconds) 2018-07-11T07:24:05Z ebrasca quit (Read error: Connection reset by peer) 2018-07-11T07:24:13Z ebrasca joined #lisp 2018-07-11T07:31:26Z lavaflow_ quit (Read error: Connection reset by peer) 2018-07-11T07:31:43Z lavaflow_ joined #lisp 2018-07-11T07:34:44Z mange quit (Remote host closed the connection) 2018-07-11T07:36:47Z skeuomorf joined #lisp 2018-07-11T07:39:47Z mflem quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2018-07-11T07:40:43Z xificurC quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2018-07-11T07:42:52Z xificurC joined #lisp 2018-07-11T07:57:25Z pierpal quit (Read error: Connection reset by peer) 2018-07-11T08:01:10Z test1600 joined #lisp 2018-07-11T08:01:45Z shifty joined #lisp 2018-07-11T08:04:14Z pierpal joined #lisp 2018-07-11T08:04:27Z Kaisyu7 joined #lisp 2018-07-11T08:11:25Z brettgilio quit (Quit: Leaving) 2018-07-11T08:11:39Z pjb joined #lisp 2018-07-11T08:13:05Z light2yellow joined #lisp 2018-07-11T08:15:42Z shrdlu68: "The quest for the ideal programming language and the ideal man-machine interface that would make the software crisis melt like snow in the sun had —and still has!— all the characteristics of the search for the Elixir and the Stone." -- Encountered in a Dijkstra essay 2018-07-11T08:16:08Z pjb: Dijkstra didn't understand lisp. 2018-07-11T08:16:08Z minion: pjb, memo from makomo: the "const-size" version of once-only implemented using the list version: https://plaster.tymoon.eu/view/850#850. no EVAL! i guess the most general way to go about it then is to always write a version which works with an arbitrary number of forms and then derive the const-size version from it. 2018-07-11T08:17:07Z pjb: The quest for the ideal programming language is archieved by lisp, for 1- ideal pl is not an absolute, but relative, 2- lisp let you mutate the language so you may make it the ideal pl for your current program. 2018-07-11T08:18:02Z pjb: makomo: don't eval a macro! macroexpand it! 2018-07-11T08:21:12Z beach: Theoretical computer scientists having opinions about programming is kind of like medical doctors having opinions on just about anything technical. Their colleagues deify them, but they don't necessarily know much about the topic. 2018-07-11T08:22:12Z pjb: makomo: https://plaster.tymoon.eu/view/850#851 2018-07-11T08:23:27Z DingoSaar quit (Ping timeout: 240 seconds) 2018-07-11T08:25:39Z makomo: pjb: i think you're missing the point. the context is the same as it was yesterday 2018-07-11T08:25:55Z makomo: i don't want ONCE-ONLY to appear in the expansion. the whole point of ONCE-ONLY is to be used within the macro itself 2018-07-11T08:26:11Z makomo: it should never ever be seen in the expansion 2018-07-11T08:27:04Z pjb: Then don't use a macro! Write once-only* function! 2018-07-11T08:27:19Z makomo: that was the point of the whole conversation yesterday! 2018-07-11T08:27:19Z pierpal quit (Quit: Poof) 2018-07-11T08:27:26Z makomo: i *don't want to do that* 2018-07-11T08:27:36Z pierpal joined #lisp 2018-07-11T08:27:38Z makomo: because i want to reuse ONCE-ONLY 2018-07-11T08:27:47Z makomo: otherwise i have to reimplement ONCE-ONLY myself 2018-07-11T08:28:02Z makomo: it would be great if the author of ONCE-ONLY did it while he was at it, but he did not 2018-07-11T08:28:41Z makomo: but yes, ideally i guess you would do either that or you would implement the arbitrary list version first, and then derive the constant-size version from it (which i did at the bottom from Bike's solution (which is a reimplemnetation of ONCE-ONLY as well btw)) 2018-07-11T08:28:56Z makomo: the point was to constrain yourself to use just ONCE-ONLY, without imitating its behavior 2018-07-11T08:29:03Z makomo: as it turns out, the only way to do that is EVAL/MACROEXPAND 2018-07-11T08:29:56Z makomo: going afk, i'll check the logs later 2018-07-11T08:29:59Z makomo afk 2018-07-11T08:30:27Z surya_ quit (Ping timeout: 240 seconds) 2018-07-11T08:31:11Z scymtym quit (Ping timeout: 268 seconds) 2018-07-11T08:31:51Z parjanya joined #lisp 2018-07-11T08:32:01Z pjb: You see, this is why I hate alexandria: it makes people freeze its API in their mind. This is open source! Just copy-and-paste the once-only macro and make it into a function! 2018-07-11T08:32:09Z parjanya quit (Remote host closed the connection) 2018-07-11T08:32:12Z pjb: Write your one library! 2018-07-11T08:34:57Z mooshmoosh quit (Ping timeout: 240 seconds) 2018-07-11T08:39:04Z mooshmoosh joined #lisp 2018-07-11T08:39:11Z _cosmonaut_ joined #lisp 2018-07-11T08:39:43Z _death: s/alexandria/CL/ 2018-07-11T08:40:08Z pjb: Indeed, this is one old criticism of CL… 2018-07-11T08:40:20Z makomo quit (Ping timeout: 256 seconds) 2018-07-11T08:40:32Z pjb: But I have the same answer; write your own library! (cf. eg. cl-stepper, ibcl, etc). 2018-07-11T08:40:37Z pjb: Even CLIM does it! 2018-07-11T08:40:48Z pjb: When you write a clim application, you don't use CL. 2018-07-11T08:44:34Z mindCrime_ joined #lisp 2018-07-11T08:44:36Z parjanya joined #lisp 2018-07-11T08:44:51Z mindCrime quit (Ping timeout: 240 seconds) 2018-07-11T08:47:26Z White_Flame: the end-all, be-all of programming will be true natural language understanding 2018-07-11T08:47:41Z White_Flame: until then, Lisp 2018-07-11T08:47:49Z parjanya: what do you mean? : o ) 2018-07-11T08:48:18Z White_Flame: referencing discussion about the "ideal programming language" in the backlog 2018-07-11T08:52:19Z shrdlu68: White_Flame: Incidentally: https://www.cs.utexas.edu/users/EWD/transcriptions/EWD06xx/EWD667.html 2018-07-11T08:52:44Z _death: pjb: that coin has two sides.. and you can learn to unfreeze so there's no need to "hate" 2018-07-11T08:53:12Z White_Flame: shrdlu68: I don't mean "natural-language-ish programming languages" I mean "true natural language understanding" 2018-07-11T08:53:24Z pjb: of course. You can always do PR. 2018-07-11T08:54:04Z milanj joined #lisp 2018-07-11T08:54:37Z pjb: parjanya: you can be a high-level, natural programming language programmer, by becoming a CTO, and telling your teams the specs of your program. Magically, the program gets developped, by a bunch of HI, AI, and DC. 2018-07-11T08:54:41Z parjanya: White_Flame: isn’t there too much ambiguity in natural languages? even among humans we get problems of interpretation 2018-07-11T08:54:56Z White_Flame: right, it's an AI problem 2018-07-11T08:55:00Z shrdlu68: White_Flame: That's an AI-complete problem, we probably won't be programming by then. 2018-07-11T08:55:06Z antoszka: No, it's unsolvable problem. 2018-07-11T08:55:26Z antoszka: Unless you want your systems to have unpredictable behaviour :) 2018-07-11T08:55:38Z pjb: shrdlu68: consider the system as a whole. With GAI, just use HI+AI. 2018-07-11T08:55:41Z dim: pjb: that's called a product manager these days, I've heard 2018-07-11T08:55:43Z pjb: s/With/Without/ 2018-07-11T08:56:02Z shrdlu68: antoszka: No it's not. Natural languages, while incredibly complex, still have grammar. It's just difficult, not impossible. 2018-07-11T08:56:05Z pjb: dim: yes, when you have several programs to do at the same time, you delegate to PMs. 2018-07-11T08:56:17Z White_Flame: shrdlu68: and it's not just grammar, it's understanding of context & implications 2018-07-11T08:56:30Z White_Flame: that's where the real expressive power of NL lies 2018-07-11T08:56:38Z shrdlu68: White_Flame: Still not in the realm of impossibility. 2018-07-11T08:56:42Z antoszka: …and the ambiguity. 2018-07-11T08:56:43Z White_Flame: I know 2018-07-11T08:56:50Z White_Flame: (*2) 2018-07-11T08:56:55Z parjanya: "I saw John and William today. He said he hates his brother." 2018-07-11T08:57:25Z White_Flame: I never said true NLU is impossible, just that it'd be the ultimate programming environment, finally including DWIM functionality :) 2018-07-11T08:57:26Z shrdlu68: Terry Winpgrad's SHRDLU showed there is a way, it's just difficult and no one currently knows of a way to scale SHRDLU. 2018-07-11T08:57:38Z parjanya: just to stay with cataphora 2018-07-11T08:58:04Z pjb: parjanya: the thing is that you can also write misleading code, code that is interpreted differently by the human reader and by the compiler,a nd even code that is interpreted differently by different compilers! 2018-07-11T08:58:16Z pjb: parjanya: this is why we aim at conforming code, and clear code. 2018-07-11T08:58:20Z pagnol joined #lisp 2018-07-11T08:58:24Z pjb: the same can be done in NL. 2018-07-11T08:58:29Z shrdlu68: But then again, the world's best minds have supposedly been working on this problem for decades and made virtually no progress, so who am I to say? 2018-07-11T08:58:44Z White_Flame: shrdlu68: yes, that's the sad part 2018-07-11T09:00:25Z parjanya: well, as we have it... we have a variable in us managing to know what we want and knowing how to express it. the computer’s behaviour just follows the code. we can see where the problem is, with some luck. if computers accept natural language, they will have more than one way of interpreting what we say, so we won’t be sure even of its behaviour. I’m not saying it’s impossible, it’s 2018-07-11T09:00:25Z parjanya: just that as a linguist I can’t see how. 2018-07-11T09:00:43Z _death: remember that DWIM stands for Do What Interlisp Means ;) 2018-07-11T09:01:56Z shrdlu68: parjanya: I have the audacity to think I'll do it some day. 2018-07-11T09:02:32Z White_Flame: _death: heh 2018-07-11T09:03:10Z parjanya: shrdlu68: I hope you will manage :) I wonder what would it mean practically, hmm 2018-07-11T09:03:19Z White_Flame: parjanya: it all comes down to the ability to be able to form, update, and reuse general concepts, not having dictionaries of symbol definitions & strict grammar rules 2018-07-11T09:03:56Z White_Flame: as well as being able to ask clarifying questions, but that's been obvious for a long long time 2018-07-11T09:04:57Z parjanya: ah, that remidns me of some Lisp system that manipulated objects in 3d based on commands "put this on top of that" etc 2018-07-11T09:05:05Z White_Flame: that's shrdlue 2018-07-11T09:05:06Z White_Flame: -e 2018-07-11T09:05:33Z White_Flame: but it was still 100% strict human-written rule following 2018-07-11T09:05:44Z White_Flame: just with a nicely designed ruleset 2018-07-11T09:06:15Z White_Flame: but a fixed ruleset, and fixed grammar rules 2018-07-11T09:06:32Z TMA: and fixed and small domain 2018-07-11T09:06:33Z White_Flame: with compounded complexity in its design that it became pretty un-editable 2018-07-11T09:07:18Z scymtym joined #lisp 2018-07-11T09:07:41Z White_Flame: (these all might be fixable problems) 2018-07-11T09:08:35Z parjanya: well, I have no idea... but the concept is very very interesting 2018-07-11T09:10:57Z shifty quit (Ping timeout: 240 seconds) 2018-07-11T09:11:33Z shifty joined #lisp 2018-07-11T09:14:35Z _cosmonaut_ quit (Ping timeout: 256 seconds) 2018-07-11T09:16:05Z ebrasca quit (Ping timeout: 240 seconds) 2018-07-11T09:17:22Z pmicossi joined #lisp 2018-07-11T09:17:48Z orivej joined #lisp 2018-07-11T09:32:21Z jdz: parjanya: You might want to look at https://en.wikipedia.org/wiki/Attempto_Controlled_English. 2018-07-11T09:33:08Z _cosmonaut_ joined #lisp 2018-07-11T09:37:48Z graphene quit (Remote host closed the connection) 2018-07-11T09:38:28Z milanj_ joined #lisp 2018-07-11T09:39:06Z graphene joined #lisp 2018-07-11T09:41:27Z milanj quit (Ping timeout: 240 seconds) 2018-07-11T09:43:35Z dddddd joined #lisp 2018-07-11T09:44:35Z orivej quit (Ping timeout: 240 seconds) 2018-07-11T09:46:07Z graphene quit (Remote host closed the connection) 2018-07-11T09:47:20Z graphene joined #lisp 2018-07-11T09:48:43Z littlelisper joined #lisp 2018-07-11T09:49:33Z orivej joined #lisp 2018-07-11T09:50:28Z littlelisper: https://pastebin.com/kdS0DjJj warning while (requre :mcclim). mcclim works fine, but is there any way to clean the warning 2018-07-11T09:50:38Z housel quit (Remote host closed the connection) 2018-07-11T09:51:05Z housel joined #lisp 2018-07-11T09:51:50Z pagnol quit (Ping timeout: 276 seconds) 2018-07-11T09:53:10Z beach: littlelisper: I suggest you ask loke in #clim. 2018-07-11T09:53:21Z beach: ... or jackdaniel. 2018-07-11T09:53:51Z littlelisper: beach: ok i ll look in #clim 2018-07-11T10:02:33Z lumm joined #lisp 2018-07-11T10:04:49Z JuanDaugherty joined #lisp 2018-07-11T10:06:35Z m00natic joined #lisp 2018-07-11T10:07:08Z littlelisper left #lisp 2018-07-11T10:07:08Z AetherWind quit (Quit: Leaving) 2018-07-11T10:07:50Z isospin` joined #lisp 2018-07-11T10:09:27Z isospin quit (Ping timeout: 240 seconds) 2018-07-11T10:11:24Z Kaisyu quit (Quit: Connection closed for inactivity) 2018-07-11T10:12:12Z _cosmonaut_ quit (Ping timeout: 244 seconds) 2018-07-11T10:12:50Z makomo joined #lisp 2018-07-11T10:14:49Z _cosmonaut_ joined #lisp 2018-07-11T10:15:24Z froggey joined #lisp 2018-07-11T10:21:19Z random-nick joined #lisp 2018-07-11T10:22:46Z vlatkoB_ joined #lisp 2018-07-11T10:25:49Z vlatkoB quit (Ping timeout: 260 seconds) 2018-07-11T10:25:50Z _death: it's just asdf stupidity.. I removed the warning emitting code from my copy 2018-07-11T10:41:56Z daniel-s joined #lisp 2018-07-11T10:42:44Z trittweiler quit (Ping timeout: 260 seconds) 2018-07-11T10:43:12Z dmiles quit (Ping timeout: 244 seconds) 2018-07-11T10:44:04Z hhdave joined #lisp 2018-07-11T10:45:18Z logicmoo joined #lisp 2018-07-11T10:46:24Z pierpal quit (Quit: Poof) 2018-07-11T10:46:44Z pierpal joined #lisp 2018-07-11T10:48:27Z lumm quit (Ping timeout: 240 seconds) 2018-07-11T10:50:30Z surya joined #lisp 2018-07-11T10:52:31Z jmercouris joined #lisp 2018-07-11T10:52:37Z wigust- quit (Read error: Connection reset by peer) 2018-07-11T10:53:19Z jmercouris: So when you use DEFUN, what exactly happens? we somehow associate a symbol with a lambda? 2018-07-11T10:53:28Z jmercouris: is a defun creating a lambda under the hood? 2018-07-11T10:53:36Z wigust joined #lisp 2018-07-11T10:53:37Z jmercouris: Let's say I do something like (defparameter q #'(lambda (n) (* n n))) 2018-07-11T10:53:45Z jmercouris: why can't I then do (q 2) ? 2018-07-11T10:53:56Z jmercouris: why do I have to do (funcall q 2)? 2018-07-11T10:54:43Z loke: jmercouris: because when you do (FOO), you are funcalling the value in the function slot of the symbol 2018-07-11T10:55:05Z loke: (well, assuming there is no lexical binding of the function FOO) 2018-07-11T10:55:22Z jmercouris: who can I set the function slot of a symbol? 2018-07-11T10:55:25Z jmercouris: s/who/how 2018-07-11T10:55:29Z jmercouris: without using defun 2018-07-11T10:56:01Z jmercouris: Ah, so that is why a function and a variable can both have the same symbol, the symbol has different slots for each? 2018-07-11T10:56:45Z loke: jmercouris: You can do (setf (symbol-function 'foo) (lambda () (print "hello"))) 2018-07-11T10:57:02Z beach: jmercouris: There is no such thing as "a lambda". 2018-07-11T10:57:08Z _death: it's actually quite educational to expand defun and try to understand everything that happens.. for example on sbcl you're led to the global info db 2018-07-11T10:57:13Z jmercouris: okay, when I say lambda, I mean "anonymous function" 2018-07-11T10:57:34Z beach: jmercouris: Yes, DEFUN creates an anonymous function and associates the name with it. 2018-07-11T10:57:48Z jmercouris: very very interesting 2018-07-11T10:58:02Z jmercouris: that makes sense indeed 2018-07-11T10:58:16Z beach: jmercouris: There are (at least) two namespaces in Common Lisp, one for functions and one for variables. 2018-07-11T10:58:24Z jmercouris: how can I find out what slots the symbol class has? 2018-07-11T10:58:39Z jmercouris: beach: namespaces? like packages? 2018-07-11T10:58:46Z beach: jmercouris: When you type (foo x), FOO is looked up in the function namespace, and X in the variable namespace. 2018-07-11T10:58:55Z beach: jmercouris: No, orthogonal to packages. 2018-07-11T10:59:04Z jmercouris: Ok 2018-07-11T10:59:20Z beach: jmercouris: The function may not be stored in a slot of the symbol. 2018-07-11T10:59:30Z beach: jmercouris: In SICL, it is not, for instance. 2018-07-11T10:59:32Z jmercouris: Is that an implementation detaiL? 2018-07-11T10:59:36Z beach: Yes. 2018-07-11T10:59:43Z jmercouris: Okay, because I just did (describe 'symbol) in SBCL and it doesn't show any slots 2018-07-11T11:00:04Z beach: Try (describe 'car) instead. 2018-07-11T11:00:47Z jmercouris: I see 2018-07-11T11:01:23Z beach: jmercouris: You can use (SETF FDEFINITION) to associate a name with a function. 2018-07-11T11:01:33Z beach: clhs fdefinition. 2018-07-11T11:01:33Z specbot: Couldn't find anything for fdefinition.. 2018-07-11T11:01:35Z beach: clhs fdefinition 2018-07-11T11:01:36Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_fdefin.htm 2018-07-11T11:02:00Z pmicossi quit (Remote host closed the connection) 2018-07-11T11:02:04Z jmercouris: Aha 2018-07-11T11:02:22Z jmercouris: So, is it possible to for example, get the anonymous function associated with a symbol, and output it as a list? 2018-07-11T11:02:35Z beach: "it"? 2018-07-11T11:02:43Z jmercouris: let me rephrase 2018-07-11T11:03:10Z jmercouris: Is it possible to get the anonymous function associated with a symbol, and print the anonymous function to the REPL as a list 2018-07-11T11:03:37Z beach: Sure, (print (list symbol (fdefinition symbol))) 2018-07-11T11:03:38Z jmercouris: something like (defun xyz (x) (+ 1 x)) and then later retrieving (lambda (x) (+ 1 x)) and printing it 2018-07-11T11:04:03Z beach: jmercouris: Er, the lambda expression will typically be compiled by then. 2018-07-11T11:04:19Z beach: jmercouris: A lambda expression is not the same as a function. 2018-07-11T11:04:32Z jmercouris: Okay 2018-07-11T11:04:38Z jmercouris: is a function the compiled representation of a lambda expression? 2018-07-11T11:05:00Z beach: Sort of. There can be interpreted functions as well, of course. 2018-07-11T11:05:39Z beach: Try (compile nil (lambda (x) (+ x 2))) 2018-07-11T11:05:41Z jmercouris: So you can't really introspect and edit functions 2018-07-11T11:05:43Z beach: for instance. 2018-07-11T11:05:53Z beach: jmercouris: It is just native instructions. 2018-07-11T11:06:05Z beach: I suppose there is an underlying object that can be introspected. 2018-07-11T11:06:17Z beach: But that is highly implementation specific. 2018-07-11T11:06:20Z jmercouris: I see 2018-07-11T11:06:28Z milanj_ quit (Quit: This computer has gone to sleep) 2018-07-11T11:07:01Z beach: You can't take a Unix executable and edit the original C function (or Fortran, or ...) either. 2018-07-11T11:07:08Z jmercouris: Well, not easily 2018-07-11T11:07:13Z pierpal quit (Quit: Poof) 2018-07-11T11:07:14Z jmercouris: Or with any accuracy 2018-07-11T11:07:20Z jmercouris: but some have written some "decompilers" 2018-07-11T11:07:35Z pierpal joined #lisp 2018-07-11T11:07:43Z beach: They can't work in the most general case. 2018-07-11T11:07:44Z jmercouris: I was just thinking since lisp is just a live environment that it might be possible, for something like genetic tree programming 2018-07-11T11:07:53Z LdBeth: In the old days people do patch binary directly 2018-07-11T11:08:02Z beach: jmercouris: Sure, your Common Lisp system might save the lambda expression. 2018-07-11T11:08:07Z jmercouris: but it seems you would have to maintain lists with the original lambda expressions 2018-07-11T11:08:09Z beach: clhs function-lambda-expression 2018-07-11T11:08:09Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_fn_lam.htm 2018-07-11T11:08:18Z beach: jmercouris: Yes. 2018-07-11T11:08:48Z jmercouris: A lot to think about, thanks for explaining 2018-07-11T11:09:06Z beach: jmercouris: Put yourself in the position of a commercial Common Lisp vendor. If every customer could say (edit (fdefinition 'compile)) then they would have no trade secretes. 2018-07-11T11:09:18Z jmercouris: I guess I've never been in that position :D 2018-07-11T11:09:27Z beach: jmercouris: Also consider that the ANSI committee was largely composed of vendor representatives. 2018-07-11T11:09:41Z jmercouris: That makes sense, as they are the ones with any actual money 2018-07-11T11:09:49Z beach: Exactly. 2018-07-11T11:09:56Z _death: jmercouris: maybe pjb's ibcl lets you do that 2018-07-11T11:10:37Z jmercouris: _death: what specifically? 2018-07-11T11:10:52Z skapata joined #lisp 2018-07-11T11:10:54Z _death: inspect and edit definitions 2018-07-11T11:10:59Z _death: https://www.informatimago.com/develop/lisp/com/informatimago/small-cl-pgms/ibcl/index.html 2018-07-11T11:11:22Z jmercouris: Ah, I may check it out if I have some time later 2018-07-11T11:11:22Z beach: jmercouris: Also, you need to get used to thinking in terms of protocols. It is not just because there is a function called SYMBOL-FUNCTION that the symbol must have a slot containing the function. 2018-07-11T11:12:04Z beach: jmercouris: What should tip you off here is that function names can also be of the form (SETF ). 2018-07-11T11:12:07Z jmercouris: beach: Yeah, I guess the implementation can be whatever it wants behind this protocol, it's just that in A Gentle Introduction to Symbolic Computation, the author very frequently talks about things in terms of a very specific implementation in mind 2018-07-11T11:12:17Z jmercouris: so I am never sure whether that is the author just assuming, or if it is part of the specification 2018-07-11T11:12:47Z beach: jmercouris: He would not be the first one to make such incorrect assumptions. Even the Common Lisp HyperSpec uses "function slot of the symbol" sometimes. 2018-07-11T11:13:56Z markoong joined #lisp 2018-07-11T11:13:57Z jackdaniel: right, I had to "fix" eql to equal in a few places in ECL's compiler wrt function names 2018-07-11T11:14:00Z beach: clhs symbol-function 2018-07-11T11:14:00Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_symb_1.htm 2018-07-11T11:14:08Z beach: "Accesses the symbol's function cell." 2018-07-11T11:14:25Z jackdaniel: s/names/designators/ 2018-07-11T11:14:26Z jmercouris: Aha, tisk tisk author of the past! :D 2018-07-11T11:14:46Z jmercouris: Then again, maybe the hyperspec is lispworks specific 2018-07-11T11:14:52Z beach: Language like that can easily make people think that every symbol has a slot or a cell for the function. 2018-07-11T11:14:55Z jmercouris: and perhaps that is how it is within the lispworks implementation 2018-07-11T11:15:02Z jackdaniel: no, hyperspec is built from ANSI (last) draft 2018-07-11T11:15:05Z surya quit (Ping timeout: 240 seconds) 2018-07-11T11:15:13Z jackdaniel: so it has *nothing* lw specific in it 2018-07-11T11:15:15Z beach: jmercouris: The Common Lisp HyperSpec is derived from the standard. It essentially *is* the standard. 2018-07-11T11:15:25Z jmercouris: Okay, I take that back then 2018-07-11T11:15:47Z jackdaniel: hyperspec is a compilation of the standard document 2018-07-11T11:16:09Z jmercouris: Then why does lispworks own a copyright on it? 2018-07-11T11:16:25Z jackdaniel: lispworks owns copyright to this compilation of it 2018-07-11T11:16:52Z jackdaniel: for copyright-free version you could check out for instance http://cvberry.com/tech_writings/notes/common_lisp_standard_draft.html 2018-07-11T11:17:00Z jackdaniel: standard draft itself is public domain afaik 2018-07-11T11:17:06Z housel` joined #lisp 2018-07-11T11:17:10Z _death: because Kent Pitman, who is responsible for the CLHS, worked for LispWorks 2018-07-11T11:17:28Z housel quit (Read error: Connection reset by peer) 2018-07-11T11:17:38Z jmercouris: wow, 680 page draft, that is something 2018-07-11T11:17:51Z jmercouris: seems like a lot of thought went into this 2018-07-11T11:18:07Z jmercouris: I always just assumed they took the most popular features from the most popular implementations and just merged them together 2018-07-11T11:18:17Z jmercouris: I guess everything sounds easier on paper 2018-07-11T11:18:45Z _death: some of the committee's discussions are available online 2018-07-11T11:18:53Z jackdaniel: CL standard is a result of putting many knowledgeble people in one room and telling them to merge Lisps of the date into one standard 2018-07-11T11:18:56Z shrdlu68: Someone wrote a paper on the interaction of the committe members, something about communication styles. 2018-07-11T11:19:40Z shka: shrdlu68: that sounds interesting! 2018-07-11T11:19:42Z _death: if you want to know how it came to be there's http://dreamsongs.com/Files/HOPL2-Uncut.pdf 2018-07-11T11:20:35Z beach: jmercouris: On the contrary. They spent a lot of time and a lot of energy thinking about what could be done, given that it must be possible to write a high-performance compiler for the language. These are no dopes, as opposed to many other language designers. 2018-07-11T11:20:43Z _death: shrdlu68: maybe you're thinking about the research into early use of email based on the committee's discussions 2018-07-11T11:21:24Z jmercouris: beach: I believe it 2018-07-11T11:21:58Z jmercouris: especially since many other languages have a single inventor who created the language in what feels like a weekend worth of time 2018-07-11T11:22:06Z lumm joined #lisp 2018-07-11T11:22:14Z beach: jmercouris: Now, this was the 1990s and compiler technology has made some progress. So you will occasionally find a restriction that was justified at the time, but that could be relaxed nowadays. 2018-07-11T11:22:16Z jmercouris: for example, if you look at the story about the creation of ruby, it sounds like all the guy had to do was get emacs syntax highlighting to work, and that was his green light 2018-07-11T11:22:24Z shrdlu68: _death: Yes, it was an analysis of how people attempt to make up for the lack of non-verbal cues in communication, hence inventing symbols like :) 2018-07-11T11:22:52Z jmercouris: shrdlu68: those symbols are known as emoticons 2018-07-11T11:22:58Z shrdlu68: *in text communication. 2018-07-11T11:23:06Z beach: jmercouris: I don't know of Ruby in particular, but yes, there are many languages that have been created by people with no clue, and that's fine. What is NOT fine is that these languages sometimes catch on and become "standard". 2018-07-11T11:23:19Z shrdlu68: jmercouris: At the time of the paper's writing, I believe those symbols were a new phenomenon. 2018-07-11T11:23:35Z _death: I think Fahlman (a member of the CL standardization committee) is credited with the invention of the smiley.. 2018-07-11T11:24:12Z shrdlu68: What is this ":)" you speak of? 2018-07-11T11:24:17Z _death: https://www.cs.cmu.edu/~sef/sefSmiley.htm 2018-07-11T11:24:51Z jmercouris: _death: I think it is impossible to credit anyone with the invention of the smiley, we don't have a corpus of all text ever created 2018-07-11T11:25:17Z jmercouris: beach: yes, that is frustrating, especially for those of us who have to work in industry :D 2018-07-11T11:25:28Z _death: jmercouris: that's because you're thinking at the wrong scale.. back then very few people communicated that way 2018-07-11T11:25:49Z matijja joined #lisp 2018-07-11T11:25:53Z brettgilio joined #lisp 2018-07-11T11:26:11Z _death: jmercouris: or are you saying that nobody can be credited with the invention of anything because it could've been invented earlier in history 2018-07-11T11:26:19Z jmercouris: _death: More or less, yes 2018-07-11T11:26:26Z jmercouris: Unless we can sufficiently prove it 2018-07-11T11:26:37Z _death: jmercouris: the latter is not very interesting 2018-07-11T11:26:42Z jmercouris: but it has happened a lot where people "invent" things that have very clearly been already invented 2018-07-11T11:26:53Z beach: jmercouris: Most people who work in the software industry have even less of a clue than the inventors of the languages they are told to use. 2018-07-11T11:27:13Z jmercouris: let's consider heiroglyphics, might they not be considered emoticons? 2018-07-11T11:27:14Z _death: jmercouris: welp, if you find a smiley before Fahlman, you can revise its historiography 2018-07-11T11:27:35Z jmercouris: do you think no caveman had thought of drawing a smiley face? 2018-07-11T11:28:07Z surya joined #lisp 2018-07-11T11:28:12Z _death: fine, the smiley was invented by a caveman 2018-07-11T11:28:21Z jmercouris: hahaha :D 2018-07-11T11:28:25Z jmercouris: Alright, I'm done :D 2018-07-11T11:28:26Z LdBeth: A smile made of ASCII TEXT,? 2018-07-11T11:29:02Z jmercouris: beach: Unfortunately, the field is still too immature 2018-07-11T11:30:45Z shrdlu68: Perhaps we should start doubting whether it'll mature at all. 2018-07-11T11:31:03Z beach: It certainly won't happen by itself. 2018-07-11T11:31:48Z shrdlu68: Are we even actively seeking maturity? Seems to me we're like the fast fashion industry. 2018-07-11T11:32:00Z BitPuffin joined #lisp 2018-07-11T11:32:04Z jmercouris: People are looking for silver bullets 2018-07-11T11:32:17Z White_Flame: people are looking for paycheks 2018-07-11T11:32:48Z White_Flame: and there's celebrity to be had among the tech circles, too, by coining new terms from old definitions 2018-07-11T11:33:13Z White_Flame: silicon valley has taken the momentum away from those seeking maturity 2018-07-11T11:33:22Z LdBeth: “It was invented in the 70’s” 2018-07-11T11:33:27Z shrdlu68: I think we're in one of those systems that were discussed in Yudkowsky's "Inadequate Equilibria" 2018-07-11T11:34:15Z beach: Interesting. 2018-07-11T11:34:20Z vibs29 quit (Ping timeout: 268 seconds) 2018-07-11T11:34:39Z surya quit (Ping timeout: 260 seconds) 2018-07-11T11:34:52Z vibs29 joined #lisp 2018-07-11T11:34:59Z jmercouris: Available here online to read: https://equilibriabook.com/toc/ 2018-07-11T11:35:10Z jmercouris: at no cost 2018-07-11T11:35:51Z Arcaelyx quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-11T11:37:23Z dddddd quit (Ping timeout: 256 seconds) 2018-07-11T11:38:17Z surya joined #lisp 2018-07-11T11:39:00Z beach: shrdlu68: I might read that book some day. Thanks for pointing it out. 2018-07-11T11:39:22Z nullman quit (Ping timeout: 264 seconds) 2018-07-11T11:39:34Z Josh_2 joined #lisp 2018-07-11T11:40:06Z shrdlu68: beach: My pleasure. 2018-07-11T11:41:13Z nullman joined #lisp 2018-07-11T11:45:46Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-11T11:47:10Z milanj_ joined #lisp 2018-07-11T11:48:36Z muresanvlad_ quit (Quit: Salve) 2018-07-11T11:48:39Z skeuomorf quit (Ping timeout: 260 seconds) 2018-07-11T11:48:55Z muresanvlad_ joined #lisp 2018-07-11T12:00:04Z Kaisyu joined #lisp 2018-07-11T12:00:24Z scymtym_ joined #lisp 2018-07-11T12:00:38Z scymtym quit (Ping timeout: 265 seconds) 2018-07-11T12:01:04Z dddddd joined #lisp 2018-07-11T12:02:46Z mooshmoosh quit (Ping timeout: 264 seconds) 2018-07-11T12:04:35Z jmercouris: I'm trying to split apart a string into a list, based on two rules 2018-07-11T12:05:11Z jmercouris: here is an example "define fish :topic ocean" should split into (list "define" "fish" ":topic" "ocean") 2018-07-11T12:05:39Z jmercouris: here is a more challenging example: "define fishing rod :topic ocean" should split into (list "define" "fishing rod" ":topic" "ocean") 2018-07-11T12:07:37Z LdBeth: Ah, you mean tokenize 2018-07-11T12:07:46Z jmercouris: Yes, I am trying to write a tokenizer 2018-07-11T12:08:23Z jmercouris: The approach I am thinking about now is just splitting by spaces, and joining if the next term doesn't start with a ":" 2018-07-11T12:08:43Z jmercouris: with an exception of the first term 2018-07-11T12:09:19Z LdBeth: In such situation it’s better to have a keyword table maintained 2018-07-11T12:09:46Z jmercouris: keyword table? there an infinite amount of keywords, I don't want to have to update my tokenizer when a new keyword is invented 2018-07-11T12:12:43Z NoNumber joined #lisp 2018-07-11T12:12:53Z LdBeth: A keyword table like Lisp’s, where keywords are automatically interned to. 2018-07-11T12:13:05Z Josh_2 quit (Remote host closed the connection) 2018-07-11T12:15:06Z LdBeth: Especially useful if you want to parse some notations like 1*3+3 2018-07-11T12:15:21Z xaotuk joined #lisp 2018-07-11T12:16:05Z LdBeth: Where no delimiters are present between tokens 2018-07-11T12:16:57Z mooshmoosh joined #lisp 2018-07-11T12:18:26Z al-damiri quit (Quit: Connection closed for inactivity) 2018-07-11T12:20:16Z jmercouris: Okay, let's say I do have a keyword table, how would I use it? 2018-07-11T12:20:32Z jmercouris: wouldn't I still need to iterate and split based upon presence of keywords? 2018-07-11T12:22:11Z anewuser joined #lisp 2018-07-11T12:23:57Z Murii_ joined #lisp 2018-07-11T12:27:42Z brettgilio quit (Remote host closed the connection) 2018-07-11T12:37:56Z shka: jmercouris: if you are doing it from scratch... 2018-07-11T12:38:09Z jmercouris: I am, I just want a little defun, I'm almost done anyways 2018-07-11T12:38:41Z shka: what people here are using for numerical stuf in cl? i am looking namely for approximated integrals 2018-07-11T12:39:12Z anewuser quit (Read error: Connection reset by peer) 2018-07-11T12:39:35Z xaotuk quit (Ping timeout: 240 seconds) 2018-07-11T12:44:21Z eli_oat joined #lisp 2018-07-11T12:46:45Z LiamH joined #lisp 2018-07-11T13:02:06Z milanj_ quit (Quit: This computer has gone to sleep) 2018-07-11T13:02:28Z Bike joined #lisp 2018-07-11T13:03:51Z surya quit (Ping timeout: 240 seconds) 2018-07-11T13:04:33Z loke: shka: You can do exact integrals using Maxima 2018-07-11T13:05:24Z jkordani: beach: re: What should tip you off here is that function names can also be of the form (SETF ). 2018-07-11T13:05:27Z makomo quit (Quit: WeeChat 2.0.1) 2018-07-11T13:05:55Z EvW joined #lisp 2018-07-11T13:06:37Z jkordani: so the idea that a function associated with a symbol "is stored in a slot of the symbol" is actually an implementation specific description of "where to access a function" 2018-07-11T13:06:53Z beach: Exactly. 2018-07-11T13:07:34Z mindCrime joined #lisp 2018-07-11T13:07:36Z beach: If there were a function slot for each symbol, there would then have to be two, one for the function named after the symbol and another for the function named (SETF ). 2018-07-11T13:07:53Z jkordani: I don't understand that part 2018-07-11T13:08:29Z beach: It's not that important. I guess some implementations would have two "cells" in each symbol. 2018-07-11T13:08:44Z beach: But you can look at it historically as well... 2018-07-11T13:09:05Z beach: Before the standard, there were no functions named (SETF ). 2018-07-11T13:09:22Z beach: So implementations that existed than might have a single function cell in each symbol. 2018-07-11T13:09:35Z jkordani: well that last sentence still doesn't make sense to me, what is a function named (setf ...). 2018-07-11T13:19:33Z White_Flame: sure, I'm just curious about the implementation detail & tradeoffs 2018-07-11T13:19:44Z beach: Of course. 2018-07-11T13:19:51Z Bike: it's just a hash lookup, isn't it? 2018-07-11T13:20:20Z beach: When the name is not known at compile time, yes. 2018-07-11T13:20:31Z Bike: the variable case. i imagine most implementations do basically a hash 2018-07-11T13:20:50Z beach: No, most implementation access the function cell in the symbol. 2018-07-11T13:20:53Z beach: White_Flame: http://metamodular.com/environments.pdf 2018-07-11T13:20:54Z White_Flame: well, most implementations probably have the symbol-function as a slot on the symbol object itself 2018-07-11T13:21:00Z Bike: er. right, you could store it right in the... right right 2018-07-11T13:21:10Z White_Flame: the READ is generally not part of it 2018-07-11T13:21:12Z pjb joined #lisp 2018-07-11T13:21:27Z Bike: i was thinking of other environment things 2018-07-11T13:21:36Z pjb is now known as Guest41056 2018-07-11T13:21:44Z Bike: like i think sbcl stores compiler macros and type definitions in a global table rather than the symbol 2018-07-11T13:22:12Z White_Flame: it might reduce the memory footprint 2018-07-11T13:22:33Z White_Flame: given the ratio of fdefined symbols vs non-fdefined ones, and the overhead of the hashtable 2018-07-11T13:23:22Z beach: White_Flame: My motivation was multi-user, sandboxing, and bootstrapping. 2018-07-11T13:23:45Z White_Flame: yes, I have those desires myself. Just not to embark on a total rewrite myself :) 2018-07-11T13:24:09Z beach: Oh, are you the maintainer of an implementation? 2018-07-11T13:24:15Z beach: I guess I must have missed that. 2018-07-11T13:24:38Z White_Flame: not of a CL implementation, but I like many others have tons of notes on a lisp-derived language 2018-07-11T13:24:49Z White_Flame: I've implemented quite a few languages of varying sorts for internal commercial use 2018-07-11T13:24:51Z beach: Oh, I see. 2018-07-11T13:25:29Z warweasle joined #lisp 2018-07-11T13:26:08Z Bike: honestly, it kind of surprises me how first class environments aren't in anything important. we all used them when we wrote our first scheme implementation 2018-07-11T13:26:31Z Bike: but even in scheme proper they're like, "namespaces" or something 2018-07-11T13:26:38Z shka: hm 2018-07-11T13:27:26Z beach: Bike: I think most suggested implementations take a hash-table lookup hit for each function call, and that is unacceptable. 2018-07-11T13:27:48Z beach: Bike: Scheme people don't care as much because they are often not into performance as much as Common Lisp people are. 2018-07-11T13:28:12Z Guest41056 quit (Ping timeout: 256 seconds) 2018-07-11T13:28:16Z Bike: yeah, i think it's a disconnect with compilation 2018-07-11T13:28:32Z beach: Bike: I think my main contribution with that paper is a solution to that problem. 2018-07-11T13:28:35Z Bike: i've implemented a scheme derivative (not mine) with them, but the language overall was outright hostile to compilation 2018-07-11T13:28:42Z beach: I see. 2018-07-11T13:29:04Z serviteur joined #lisp 2018-07-11T13:29:18Z Bike: and yeah, your load time thing is neat. 2018-07-11T13:29:28Z beach: Thanks! 2018-07-11T13:29:28Z White_Flame: at some point, probably after I'm retired, I might attempt a JIT/dynarec Lisp implementation 2018-07-11T13:29:31Z Bike: it's too bad about how hard sandboxing CL is 2018-07-11T13:30:21Z warweasle: White_Flame: SafeLisp? 2018-07-11T13:30:21Z test1600 quit (Ping timeout: 264 seconds) 2018-07-11T13:30:30Z White_Flame: FastLisp :) 2018-07-11T13:30:50Z warweasle: DesignedByComitteeLisp 2018-07-11T13:31:07Z White_Flame: or at least, FigureOutYourOwnDeclarationsLisp 2018-07-11T13:35:04Z serviteur quit (Remote host closed the connection) 2018-07-11T13:35:31Z serviteur joined #lisp 2018-07-11T13:35:47Z warweasle: MyDogsLisp 2018-07-11T13:35:59Z jmercouris: Sandboxing CL is not hard 2018-07-11T13:36:00Z isospin` quit (Quit: ERC (IRC client for Emacs 26.1)) 2018-07-11T13:36:04Z jmercouris: just make a VM and run CL in the VM 2018-07-11T13:36:07Z jmercouris: voila, CL sandboxed 2018-07-11T13:36:26Z jmercouris: or make a BSD Jail if you don't want to make a VM 2018-07-11T13:37:22Z jackdaniel: security is not a problem, just put the computer offline 2018-07-11T13:37:50Z TRS-80 joined #lisp 2018-07-11T13:37:53Z Guest41056 joined #lisp 2018-07-11T13:37:53Z jmercouris: physical access security is also a type of security 2018-07-11T13:38:03Z jmercouris: you'd be best off dismantling the machine into individual atoms 2018-07-11T13:38:37Z TRS-80: (hello (everyone))! 2018-07-11T13:38:47Z beach: Hello TRS-80. 2018-07-11T13:39:21Z kaun joined #lisp 2018-07-11T13:39:49Z Bike: individual atoms would bond with each other and worse, possibly atoms of an attacker. totally insecure 2018-07-11T13:40:23Z TRS-80: having bit of issue in Emacs trying to set up CalDAV sync using org-caldav, however I feel like my problem is lisp related, missing parenthesis, backtick, etc... because I had it all working last step, but next incremental step now not working. Pasta incoming. 2018-07-11T13:40:38Z matijja quit (Ping timeout: 276 seconds) 2018-07-11T13:40:39Z jmercouris: TRS-80: elisp is not common lisp 2018-07-11T13:41:20Z jackdaniel: TRS-80: Emacs questions are usually asked on #emacs 2018-07-11T13:41:30Z jackdaniel: this channel is about CL (as jmercouris said) lookup the topic 2018-07-11T13:41:55Z TRS-80: tried there, no reply (yet?) 2018-07-11T13:42:39Z beach: TRS-80: #lisp is better in that respect, but unfortunately (for you) reserved for Common Lisp. 2018-07-11T13:42:45Z jackdaniel: IRC is an asynchronous protocol, getting an answer may take time (or questions may be not answered) - either way that's the place to ask such questions 2018-07-11T13:43:00Z jackdaniel: this is a good essay about asking questions btw: http://catb.org/~esr/faqs/smart-questions.html 2018-07-11T13:43:05Z warweasle: There is no better example of the iterated 3-tank problem than why common lispers uses emacs. 2018-07-11T13:43:16Z beach: I once asked a question in some Linux music channel and it took someone a few weeks to answer. :) 2018-07-11T13:43:43Z jmercouris: TRS-80: you could ask in #lispcafe 2018-07-11T13:43:50Z jmercouris: many of the people on this channel are there 2018-07-11T13:43:53Z kaun: beach: kudos to your patience! 2018-07-11T13:44:19Z warweasle: TRS-80: This is the dark underbelly of the internet. It was one of the first applications to gain traction and is still in use because it is so simple. 2018-07-11T13:44:41Z warweasle: And us old geysers don't like change. 2018-07-11T13:44:57Z beach: warweasle: What is the "iterated 3-tank problem"? 2018-07-11T13:45:21Z Guest41056 quit (Ping timeout: 240 seconds) 2018-07-11T13:45:25Z beach: kaun: Yeah, I wasn't in a hurry and I would rather have the experts work on it. :) 2018-07-11T13:45:36Z warweasle: You know the 3 tank problem where there are 3 tanks, strong, medium and weak? Well the weak one usually wins. 2018-07-11T13:45:41Z warweasle: Now add more tanks. 2018-07-11T13:46:00Z kaun: Are pre-RTFM questions OK here? I was wondering if visibility of fields in CLOS classes could be controlled? 2018-07-11T13:46:15Z beach: warweasle: Never heard about that problem before. 2018-07-11T13:46:21Z EvW quit (Ping timeout: 240 seconds) 2018-07-11T13:46:26Z flip214: kaun: "visibility" as in "when reflecting"? 2018-07-11T13:46:26Z minion: flip214, memo from jmercouris: Thanks for the heads up, I'll have to consider the tradeoffs in distribution vs execution time (e.g. the binary size vs startup time) 2018-07-11T13:46:26Z beach: kaun: Yes, use packages. 2018-07-11T13:46:37Z TRS-80: kaun: did you see the link jackdaniel just posted? lol 2018-07-11T13:47:07Z kaun: nope! 2018-07-11T13:47:43Z TRS-80: warweasle: I'm not so young myself. Not old but not young. 2018-07-11T13:47:54Z serviteur: define old 2018-07-11T13:47:54Z kaun: Wasn't it sufficiently smart to qualify the question as pre-RTFM? ;-) 2018-07-11T13:47:54Z beach: kaun: The package system is used to control visibility of any name that is a symbol, and that includes slot names. 2018-07-11T13:48:05Z warweasle: TRS-80: GET OFF MY LAWN! (See, I'm older) 2018-07-11T13:48:25Z EvW joined #lisp 2018-07-11T13:48:31Z jmercouris: TRS-80: Not everyone in this channel agrees with everything everyone else says 2018-07-11T13:48:41Z TRS-80: warweasle: you have no idea how often I say that (I don't actually even have a laen, but...) 2018-07-11T13:48:46Z matijja joined #lisp 2018-07-11T13:49:06Z beach: jmercouris: I totally agree. 2018-07-11T13:49:06Z kaun: beach: thanks. 2018-07-11T13:49:23Z warweasle: jmercouris: Yes we do! 2018-07-11T13:49:29Z shka: i can disagree with someone just to prove the point 2018-07-11T13:49:31Z shka: :P 2018-07-11T13:49:45Z jmercouris: I was just trying to make the point, that I clicked the link, and disagreed with it 2018-07-11T13:50:01Z daniel-s quit (Remote host closed the connection) 2018-07-11T13:50:14Z jmercouris: The introduction immediately put me off, makes it sound like I have to go through some gang initiation to get support for my problems 2018-07-11T13:50:40Z xaotuk joined #lisp 2018-07-11T13:51:01Z warweasle: jmercouris: What about our lisp gang sign? 2018-07-11T13:51:09Z graphene quit (Read error: Connection reset by peer) 2018-07-11T13:51:49Z warweasle: Oh, wait. We were rolled into the Bloods after their corporate buyout... 2018-07-11T13:51:57Z warweasle: I think we are Disney now. 2018-07-11T13:52:24Z kaun: I think SBCL's Nikode 2018-07-11T13:52:31Z graphene joined #lisp 2018-07-11T13:52:33Z varjag joined #lisp 2018-07-11T13:52:46Z kaun: mus wrote in some blog's comments, that ... 2018-07-11T13:52:52Z test1600 joined #lisp 2018-07-11T13:53:20Z kaun: ... the package system is brought too late in tutorials/guides. 2018-07-11T13:54:37Z Cymew quit (Remote host closed the connection) 2018-07-11T13:55:02Z beach: I believe it's the first thing handled in "Common Lisp Recipes". 2018-07-11T13:55:03Z Cymew joined #lisp 2018-07-11T13:55:12Z kaun: People who only started programming in the 21st century look for visibility control, I think. Not finding it soon enough increases the perception that Lisp isn't suited for typical systems. 2018-07-11T13:55:35Z beach: kaun: Please, not that kind of argument again. 2018-07-11T13:55:37Z jmercouris: I don't see why visibility control is important at all in general? 2018-07-11T13:55:50Z jmercouris: Okay, I'll hold my peace 2018-07-11T13:55:56Z jmercouris: s/peace/piece? 2018-07-11T13:56:16Z kaun: Well, I haven't read all of the guides. Gave up on Touretzky's as too basic, now happily munching through PAIP. 2018-07-11T13:57:08Z beach: kaun: We get lots of that kind of stuff here, and it gets really boring after a while. It seems directed to some kind of body of people in charge of everything abound Common Lisp, and the members of this body are told to do things differently, so that newcomers can be happier. The problem is that there is no such body, so nobody is listening. 2018-07-11T13:57:46Z beach: kaun: You are just going to have to roll up your sleeves and write one in the style that you would like to see. 2018-07-11T13:57:55Z warweasle: CLOS blew my mind when I first learned it. 2018-07-11T13:57:58Z surya joined #lisp 2018-07-11T13:58:37Z milanj_ joined #lisp 2018-07-11T13:58:40Z kaun: beach: It was an observation. I had to ask to get to know about it. It isn't something to be fixed. 2018-07-11T14:00:35Z kaun: beach: true. I think the biggest problem for fledgling hobbyists is the terseness of Lisp code; it makes the initial hobby projects look childish. 2018-07-11T14:01:09Z Guest41056 joined #lisp 2018-07-11T14:01:41Z Xach: I know I've thought more than once "how can something so small be useful?" and it usually is very, very useful. 2018-07-11T14:02:30Z loke: Hello xaxh 2018-07-11T14:02:32Z loke: xach 2018-07-11T14:02:34Z warweasle: Xach: PAIP's unification code was that for me. 2018-07-11T14:02:36Z jmercouris: (getf (list :salmon "fish of the sea") :salmon) -> "fish of the sea" 2018-07-11T14:03:09Z shrdlu68 quit (Ping timeout: 244 seconds) 2018-07-11T14:03:21Z Xach: hi loke 2018-07-11T14:03:27Z jmercouris: (getf (list (intern ":salmon") "fish of the sea") :salmon) -> nil 2018-07-11T14:03:30Z Xach: warweasle: yes! 2018-07-11T14:03:38Z loke: Hello Xach. I was about to bug you about 1530, but I noted it's been taken care of. :-) 2018-07-11T14:03:43Z jmercouris: I know I'm doing something wrong, but I'm trying to intern a symbol in the keyword package, from a string 2018-07-11T14:03:59Z Xach: jmercouris: (intern "SALMON" (find-package "KEYWORD")) is one way to do that. 2018-07-11T14:04:01Z beach: kaun: If you need help, all you have to do is ask. Common Lisp is not mainly meant for fledgling hobbyists, so I can see why they would have problems initially, especially if they expect a toy language. 2018-07-11T14:04:24Z Xach: jmercouris: as you know, ":" is not part of the symbol name, but a marker between the package name and the symbol name. 2018-07-11T14:04:38Z Xach: and keyword symbols print that info in a special way 2018-07-11T14:04:39Z jmercouris: Xach: I did not know, but now I won't forget, thanks 2018-07-11T14:05:11Z TRS-80: Xach jmercouris is this different in Emacs lisp? Looks very similar to me. 2018-07-11T14:05:19Z Xach: You could approximate what you want with (read-from-string ":salmon") 2018-07-11T14:05:31Z Xach: TRS-80: there are superficial similarities. 2018-07-11T14:05:48Z beach: Does Emacs Lisp have packages now? 2018-07-11T14:06:05Z gigetoo quit (Ping timeout: 240 seconds) 2018-07-11T14:06:10Z Guest41056 quit (Ping timeout: 256 seconds) 2018-07-11T14:06:15Z TRS-80: in fact jmercouris issue looks almost exactly like the one I'm wrestling with presently 2018-07-11T14:06:50Z kaun: beach: the problem is mainstream languages set expectations toy-language level, you need to gain perspective after learning a bit of CL to realize your hobbies can afford to be a lot more ambitious. 2018-07-11T14:07:10Z igemnace joined #lisp 2018-07-11T14:07:21Z TRS-80: beach: there are packages in Emacs, yes. And a package manager (package.el) And repositories (ELPA, Org, MELPA, etc.). Not sure if that answer your question? 2018-07-11T14:07:33Z flip214: can I TRACE a closure? 2018-07-11T14:07:42Z Xach: TRS-80: those are different types of package. 2018-07-11T14:08:11Z Xach: a different definition. 2018-07-11T14:08:17Z TRS-80: gotcha 2018-07-11T14:08:31Z beach: TRS-80: A package in Common Lisp is a mapping from symbols to objects. It is used to control access to "modules". 2018-07-11T14:08:35Z kuwze joined #lisp 2018-07-11T14:08:41Z brettgilio quit (Remote host closed the connection) 2018-07-11T14:08:46Z beach: TRS-80: We call what you refer to "systems". 2018-07-11T14:09:36Z TRS-80: interesting 2018-07-11T14:10:08Z shrdlu68 joined #lisp 2018-07-11T14:11:25Z TRS-80: I seem to be having very similar list related issue (well maybe not, I could be misunderstanding) but since I just had it working prior to latest step I feel like I am missing something simple, some ( or backtick or something. Anyway here it is: https://paste.pound-python.org/show/ue52FvKMIeqWyF8vBmTq/ Line 2 is what worked before, but line 7 now is not working. :/ 2018-07-11T14:11:36Z kaun quit 2018-07-11T14:11:49Z graphene quit (Read error: Connection reset by peer) 2018-07-11T14:13:42Z gigetoo joined #lisp 2018-07-11T14:15:29Z al-damiri joined #lisp 2018-07-11T14:17:16Z Inline joined #lisp 2018-07-11T14:17:48Z nowhere_man joined #lisp 2018-07-11T14:19:52Z housel` is now known as housel 2018-07-11T14:20:57Z _cosmonaut_ quit (Ping timeout: 240 seconds) 2018-07-11T14:20:58Z stnutt quit (Ping timeout: 260 seconds) 2018-07-11T14:21:17Z Cymew_ joined #lisp 2018-07-11T14:23:14Z terpri quit (Ping timeout: 260 seconds) 2018-07-11T14:24:27Z Cymew quit (Ping timeout: 240 seconds) 2018-07-11T14:26:47Z kerframil joined #lisp 2018-07-11T14:27:23Z xuxuru joined #lisp 2018-07-11T14:27:57Z xrash quit (Ping timeout: 244 seconds) 2018-07-11T14:29:45Z surya quit (Ping timeout: 264 seconds) 2018-07-11T14:32:53Z shrdlu68 quit (Ping timeout: 265 seconds) 2018-07-11T14:33:17Z jmercouris: TRS-80: this is not an elisp question, this is an emacs org-mode configuraiton question, you should ask on #emacs, there are many many users present 2018-07-11T14:33:25Z jmercouris: s/configuraiton/configuration 2018-07-11T14:33:41Z surya joined #lisp 2018-07-11T14:34:36Z Xach: frabjous day, july quicklisp dist update is now available. 2018-07-11T14:34:45Z Cymew_ quit (Remote host closed the connection) 2018-07-11T14:34:46Z beach: Excellent! 2018-07-11T14:34:51Z kuwze quit (Ping timeout: 252 seconds) 2018-07-11T14:35:29Z matijja quit (Ping timeout: 260 seconds) 2018-07-11T14:35:48Z kozy joined #lisp 2018-07-11T14:36:58Z FreeBirdLjj joined #lisp 2018-07-11T14:37:14Z stnutt joined #lisp 2018-07-11T14:37:21Z nowhere_man quit (Ping timeout: 240 seconds) 2018-07-11T14:37:37Z kozy quit (Remote host closed the connection) 2018-07-11T14:38:05Z mindCrime quit (Ping timeout: 240 seconds) 2018-07-11T14:38:25Z graphene joined #lisp 2018-07-11T14:39:21Z scymtym_ quit (Ping timeout: 240 seconds) 2018-07-11T14:40:55Z k4rtik joined #lisp 2018-07-11T14:41:00Z Cymew joined #lisp 2018-07-11T14:41:14Z kozy joined #lisp 2018-07-11T14:42:40Z kozy quit (Remote host closed the connection) 2018-07-11T14:44:14Z test1600 quit (Ping timeout: 260 seconds) 2018-07-11T14:45:22Z sabrac quit (Ping timeout: 264 seconds) 2018-07-11T14:45:23Z kozy joined #lisp 2018-07-11T14:45:59Z Cymew quit (Ping timeout: 260 seconds) 2018-07-11T14:46:27Z mejja joined #lisp 2018-07-11T14:46:32Z kozy quit (Remote host closed the connection) 2018-07-11T14:46:41Z sabrac joined #lisp 2018-07-11T14:47:04Z graphene quit (Ping timeout: 244 seconds) 2018-07-11T14:47:15Z Cymew joined #lisp 2018-07-11T14:48:52Z fikka joined #lisp 2018-07-11T14:49:53Z kozy joined #lisp 2018-07-11T14:50:24Z kozy quit (Remote host closed the connection) 2018-07-11T14:51:36Z serviteur quit (Remote host closed the connection) 2018-07-11T14:51:45Z xaotuk quit (Ping timeout: 256 seconds) 2018-07-11T14:52:04Z pierpal quit (Quit: Poof) 2018-07-11T14:52:13Z shifty quit (Ping timeout: 265 seconds) 2018-07-11T14:52:17Z Cymew quit (Ping timeout: 268 seconds) 2018-07-11T14:52:21Z antoszka: Better than the July the 5th Android Security Update! 2018-07-11T14:52:22Z kozy joined #lisp 2018-07-11T14:52:23Z pierpal joined #lisp 2018-07-11T14:52:38Z shka: antoszka: context? 2018-07-11T14:52:45Z antoszka: 16:34:36 Xach frabjous day, july quicklisp dist update is now available. 2018-07-11T14:53:02Z mindCrime joined #lisp 2018-07-11T14:53:24Z shka: and what about android security update? 2018-07-11T14:53:31Z Cymew joined #lisp 2018-07-11T14:54:45Z antoszka: Nothing, it was just a "funny" way to cheer upon the QL dist update announcement. 2018-07-11T14:54:53Z shka: oh, ok 2018-07-11T14:54:58Z antoszka: BTW, linedit craps out on this: 2018-07-11T14:55:00Z antoszka: (TERMINFO::LOAD-TERMINFO "screen-256color") 2018-07-11T14:55:02Z antoszka: source: (ERROR "Invalid file format") 2018-07-11T14:55:12Z antoszka: I pretty much certainly have a terminfo entry for that in the right place. 2018-07-11T14:55:27Z orivej quit (Ping timeout: 240 seconds) 2018-07-11T14:55:38Z antoszka: Not sure about the file format, though. 2018-07-11T14:55:46Z orivej joined #lisp 2018-07-11T14:56:15Z antoszka: When I, say, export TERM=xterm before launching sbcl it works correctly. 2018-07-11T14:56:33Z _cosmonaut_ joined #lisp 2018-07-11T14:56:48Z graphene joined #lisp 2018-07-11T14:58:21Z Cymew quit (Ping timeout: 240 seconds) 2018-07-11T14:59:48Z Cymew joined #lisp 2018-07-11T15:00:55Z jibanes quit (Ping timeout: 265 seconds) 2018-07-11T15:02:18Z jibanes joined #lisp 2018-07-11T15:03:03Z warweasle_ quit (Read error: Connection reset by peer) 2018-07-11T15:03:20Z warweasle_ joined #lisp 2018-07-11T15:04:42Z xaotuk joined #lisp 2018-07-11T15:04:47Z Cymew quit (Ping timeout: 256 seconds) 2018-07-11T15:05:22Z graphene quit (Read error: Connection reset by peer) 2018-07-11T15:05:56Z NoNumber quit (Remote host closed the connection) 2018-07-11T15:06:05Z warweasle__ joined #lisp 2018-07-11T15:06:10Z Josh_2 joined #lisp 2018-07-11T15:06:13Z fikka quit (Read error: Connection reset by peer) 2018-07-11T15:06:13Z Cymew joined #lisp 2018-07-11T15:06:23Z warweasle_ quit (Read error: Connection reset by peer) 2018-07-11T15:06:50Z gabiruh quit (Quit: ZNC - 1.6.0 - http://znc.in) 2018-07-11T15:06:59Z gabiruh joined #lisp 2018-07-11T15:07:36Z Inline quit (Quit: Leaving) 2018-07-11T15:08:37Z graphene joined #lisp 2018-07-11T15:09:41Z kozy quit (Remote host closed the connection) 2018-07-11T15:10:19Z graphene quit (Read error: Connection reset by peer) 2018-07-11T15:10:38Z Khisanth quit (Read error: Connection reset by peer) 2018-07-11T15:10:57Z Cymew quit (Ping timeout: 240 seconds) 2018-07-11T15:11:32Z antoszka: Looks like the screen thing is a different format with a different magic: 2018-07-11T15:11:33Z antoszka: ~ file /lib/terminfo/s/screen-256color /lib/terminfo/x/xterm 2018-07-11T15:11:35Z antoszka: /lib/terminfo/s/screen-256color: Compiled 32-bit terminfo entry "screen-256color" 2018-07-11T15:11:37Z antoszka: /lib/terminfo/x/xterm: Compiled terminfo entry "xterm" 2018-07-11T15:11:42Z kozy joined #lisp 2018-07-11T15:12:10Z antoszka: so the TERMINFO package might require an update as it only seems to support a single magic type: 2018-07-11T15:12:15Z antoszka: (let* ((magic (let ((whosit (read-short stream))) 2018-07-11T15:12:17Z antoszka: (if (= whosit #o432) 2018-07-11T15:12:19Z antoszka: whosit 2018-07-11T15:12:21Z antoszka: (error "Invalid file format")))) 2018-07-11T15:12:42Z Cymew joined #lisp 2018-07-11T15:14:29Z kozy quit (Remote host closed the connection) 2018-07-11T15:14:36Z Kaisyu quit (Quit: Connection closed for inactivity) 2018-07-11T15:14:50Z beach: I wrote some code for testing the Doug Lea style memory allocator that I wrote the other day. The testing code submits random sequences of requests for allocating or freeing chunks. I use a Markov process so that it is likely that there are long-ish sequences of allocations and long-ish sequences of frees. 2018-07-11T15:14:51Z Inline joined #lisp 2018-07-11T15:14:52Z beach: Memory is simulated, so each "memory" access takes a long time. I started a test with 10 million operations and it has been running for several hours. By now it has completed almost 3 million operations without any problem. 2018-07-11T15:15:30Z beach: shka: ↑ 2018-07-11T15:15:43Z shka: beach: congrats! 2018-07-11T15:15:47Z beach: Thanks. 2018-07-11T15:16:09Z beach: The allocator is now up to 385 lines of code. 2018-07-11T15:16:18Z antoszka: Xach: can I find the maintainer of a package from the quicklisp quicklisp dist? 2018-07-11T15:16:18Z kozy joined #lisp 2018-07-11T15:16:29Z beach: It will grow a bit as I introduce symbolic constants, write more comments, etc. 2018-07-11T15:16:57Z Cymew quit (Ping timeout: 240 seconds) 2018-07-11T15:16:57Z k4rtik quit (Ping timeout: 240 seconds) 2018-07-11T15:17:04Z shka: memory allocator developed at work is utter crap and was overwritting memory even after few years since first commit 2018-07-11T15:17:12Z shka: so i know that this is non trivial 2018-07-11T15:17:27Z emacsomancer quit (Remote host closed the connection) 2018-07-11T15:17:30Z beach: But Doug Lea's algorithm is really very simple. 2018-07-11T15:17:53Z kozy quit (Remote host closed the connection) 2018-07-11T15:18:05Z _cosmonaut_ quit (Ping timeout: 240 seconds) 2018-07-11T15:18:39Z emacsomancer joined #lisp 2018-07-11T15:18:41Z graphene joined #lisp 2018-07-11T15:18:46Z shka: beach: everything can be made complicated ;-) 2018-07-11T15:18:59Z Cymew joined #lisp 2018-07-11T15:19:41Z kozy joined #lisp 2018-07-11T15:20:13Z beach: I guess. But it is more likely that the person who wrote your allocator tried to come up with his or her own algorithm and data structure, and then just got it wrong. 2018-07-11T15:20:25Z shka: actually, he did 2018-07-11T15:20:33Z shka: but he is my boss :P 2018-07-11T15:20:52Z beach: Bosses often get it wrong. 2018-07-11T15:21:02Z shka: gladly, i don't work at this project anymore 2018-07-11T15:21:45Z EvW quit (Remote host closed the connection) 2018-07-11T15:23:09Z robotoad joined #lisp 2018-07-11T15:23:45Z Cymew quit (Ping timeout: 248 seconds) 2018-07-11T15:24:35Z orivej quit (Ping timeout: 240 seconds) 2018-07-11T15:25:00Z orivej joined #lisp 2018-07-11T15:25:14Z Cymew joined #lisp 2018-07-11T15:29:47Z beach: I picked Doug Lea's algorithm and data structure because Paul Wilson, in his allocator survey, found that this one is the best one he tested. Plus, like I said, it is dead simple. 2018-07-11T15:29:57Z Cymew quit (Ping timeout: 244 seconds) 2018-07-11T15:30:16Z Khisanth joined #lisp 2018-07-11T15:30:53Z kozy quit (Remote host closed the connection) 2018-07-11T15:31:30Z Cymew joined #lisp 2018-07-11T15:32:41Z kozy joined #lisp 2018-07-11T15:34:15Z robotoad quit (Quit: robotoad) 2018-07-11T15:36:04Z Cymew quit (Ping timeout: 268 seconds) 2018-07-11T15:36:15Z iskander joined #lisp 2018-07-11T15:36:26Z Xach: antoszka: not easily. it's easier to check out the quicklisp-projects repo. 2018-07-11T15:37:37Z orivej_ joined #lisp 2018-07-11T15:37:54Z orivej quit (Ping timeout: 260 seconds) 2018-07-11T15:41:35Z graphene quit (Remote host closed the connection) 2018-07-11T15:42:34Z housel quit (Remote host closed the connection) 2018-07-11T15:42:50Z graphene joined #lisp 2018-07-11T15:43:54Z blackwolf joined #lisp 2018-07-11T15:45:54Z varjag quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2018-07-11T15:51:16Z warweasle__ quit (Read error: Connection reset by peer) 2018-07-11T15:51:22Z warweasle_ joined #lisp 2018-07-11T15:51:27Z copec quit (Ping timeout: 245 seconds) 2018-07-11T15:51:33Z housel joined #lisp 2018-07-11T15:52:12Z shka: beach: just reading it 2018-07-11T15:52:30Z beach: The code? It is not pretty right now. 2018-07-11T15:52:44Z beach: There are a lot of "magic literals" in there. 2018-07-11T15:53:05Z copec joined #lisp 2018-07-11T15:53:21Z beach: And you might need the documentation (which does not quite reflect what I ended up coding). 2018-07-11T15:53:36Z shka: beach: survey 2018-07-11T15:53:43Z beach: Oh, OK. 2018-07-11T15:53:51Z beach: Excellent document! 2018-07-11T15:54:35Z shka: i would love to see updated version though 2018-07-11T15:54:45Z beach: Not going to happen. 2018-07-11T15:54:45Z surya quit (Ping timeout: 244 seconds) 2018-07-11T15:55:02Z shka: this much is certain 2018-07-11T15:55:03Z antoszka: Xach: thanks, I just found the library on github and filed an issue. 2018-07-11T15:55:17Z beach: shka: They basically conclude that all the research done on memory allocation prior to their survey came to the wrong conclusions because of bad assumptions. 2018-07-11T15:55:39Z shka: but i wonder how this would stack against slab/slob allocators 2018-07-11T15:55:51Z surya joined #lisp 2018-07-11T15:56:01Z k4rtik joined #lisp 2018-07-11T15:56:43Z robotoad joined #lisp 2018-07-11T15:57:27Z shka: well, article looks like impressive piece of work 2018-07-11T15:57:39Z shka: i will read it for sure 2018-07-11T15:58:06Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-11T15:58:38Z beach: I scanned the Wikipedia articles on SLAB, SLOB, SLUB and they look very specialized compared to what Doug Lea is doing. 2018-07-11T15:58:59Z beach: Specialized to specific situations in the kernel. 2018-07-11T15:59:11Z shka: yeah 2018-07-11T15:59:14Z shka: they are 2018-07-11T15:59:18Z Mutter joined #lisp 2018-07-11T15:59:57Z lumm quit (Ping timeout: 240 seconds) 2018-07-11T16:00:13Z beach: About the survey, when was it published again? 1990s? 2018-07-11T16:00:16Z EvW1 joined #lisp 2018-07-11T16:00:26Z shka: it looks like it 2018-07-11T16:00:32Z shka: but i can't see the date 2018-07-11T16:00:38Z shka: at least after 95 2018-07-11T16:02:02Z beach: I still get objections to my suggested memory management like "but what about fragmentation?", and this is despite the fact that it has been known for 20 years that fragmentation results were caused by incorrect assumptions about program behavior. For a field that is supposed to move as fast as CS, it is moving pretty slowly. 2018-07-11T16:02:29Z shka: CS is moving fast? 2018-07-11T16:02:35Z lumm joined #lisp 2018-07-11T16:02:39Z beach: "is supposed to" 2018-07-11T16:02:53Z shka: it has been pretty stagnate TBH 2018-07-11T16:03:04Z shka: right 2018-07-11T16:03:27Z emacsomancer quit (Ping timeout: 240 seconds) 2018-07-11T16:03:45Z pierpal quit (Quit: Poof) 2018-07-11T16:03:48Z Mutter quit (Quit: Mutter: www.mutterirc.com) 2018-07-11T16:04:02Z pierpal joined #lisp 2018-07-11T16:04:11Z shka: beach: those objections being that you don't try to defragmentate memory? 2018-07-11T16:04:46Z PinealGlandOptic joined #lisp 2018-07-11T16:04:57Z beach: Yes. That objects in the global heap do not move, and that I use an ordinary malloc()/free() style allocator for the "racks". 2018-07-11T16:05:25Z flamebeard quit 2018-07-11T16:06:09Z beach: Not only that. I also use nursery heaps that are compacting, so objects that are promoted to the global heap are very likely to be long-lived. 2018-07-11T16:06:26Z Domaldel quit (Quit: Leaving) 2018-07-11T16:06:36Z beach: I can be wrong of course, and only experience can tell, but I feel pretty good about this being the right way. 2018-07-11T16:07:43Z pjb joined #lisp 2018-07-11T16:12:03Z scymtym joined #lisp 2018-07-11T16:13:57Z xaotuk quit (Ping timeout: 240 seconds) 2018-07-11T16:14:29Z orivej_ quit (Ping timeout: 256 seconds) 2018-07-11T16:14:45Z Kundry_Wag joined #lisp 2018-07-11T16:18:00Z Murii_ quit (Ping timeout: 244 seconds) 2018-07-11T16:20:32Z terpri joined #lisp 2018-07-11T16:23:10Z buffergn0me joined #lisp 2018-07-11T16:25:01Z EvW1 quit (Ping timeout: 265 seconds) 2018-07-11T16:25:18Z karlosz quit (Quit: karlosz) 2018-07-11T16:29:57Z jmercouris quit (Ping timeout: 240 seconds) 2018-07-11T16:31:44Z shka: beach: well, having objects staying in one place is so common 2018-07-11T16:32:02Z shka: mostly because of C libs 2018-07-11T16:32:35Z shka: but nontheless, even in the land of JS, most browsers just don't bother with that 2018-07-11T16:32:36Z beach: Sure. They have no choice. 2018-07-11T16:33:14Z shka: so it looks like consensus is that copying GC is not worth the trouble 2018-07-11T16:33:29Z beach: I would not go that far. 2018-07-11T16:33:46Z beach: I do have nursery collectors that are compacting. 2018-07-11T16:33:53Z shka: well, I can because nobody listens to me anyway :-) 2018-07-11T16:34:05Z beach: Aww! :( 2018-07-11T16:35:49Z beach: There is also the question of performance. 2018-07-11T16:36:11Z beach: malloc()/free() is a much slower mechanism than bumping a pointer. 2018-07-11T16:36:38Z beach: So in a Common Lisp environment where presumably allocation is more frequent, it is good to have something faster. 2018-07-11T16:37:24Z beach: My plan is for the nursery to be fast, and to handle short-lived objects. 2018-07-11T16:37:57Z beach: Plus the nursery is a sliding collector, so the ages of objects are much more precise than in a semi-space copying collector. 2018-07-11T16:38:12Z beach: I am hoping objects get promoted only if they are very likely to be long lived. 2018-07-11T16:38:14Z didi: Just one data point, but my current problem isn't with the speed of the GC, but with the space it needs to work. It needs almost double the memory to work. 2018-07-11T16:39:07Z beach: didi: Yes, that's another characteristic of a traditional semi-space copying collector. 2018-07-11T16:40:32Z beach: didi: Though, if you look at the literature, basically any collector has this kind of trade-off. If you give it significantly less than twice the amount of memory you actually need, it is going to collect increasingly more often. 2018-07-11T16:40:38Z JuanDaugherty: CS as a whole moves fast in some areas, particularly hardware but there's the generational turnover 2018-07-11T16:41:00Z JuanDaugherty: which tends to form a perpetually callow workforce 2018-07-11T16:41:10Z hhdave quit (Ping timeout: 264 seconds) 2018-07-11T16:41:17Z didi: beach: In my case, I would gladly take this offer. 2018-07-11T16:41:48Z didi: It's the difference between having a result eventually against no results at all. 2018-07-11T16:42:08Z beach: didi: I see. Well the sliding collector can be tuned for that. 2018-07-11T16:42:20Z warweasle__ joined #lisp 2018-07-11T16:42:22Z didi: Nice. 2018-07-11T16:42:27Z lumm quit (Ping timeout: 240 seconds) 2018-07-11T16:42:40Z JuanDaugherty: some cultures also move faster than others, compare CL in 1989 vs now to SML then vs haskell now 2018-07-11T16:42:50Z warweasle_ quit (Read error: Connection reset by peer) 2018-07-11T16:43:47Z shka: JuanDaugherty: haskell is paradgim shift 2018-07-11T16:43:55Z shka: CL is still CL 2018-07-11T16:44:03Z shka: so it is not exactly fair 2018-07-11T16:44:15Z shka: you can compare CL to Shen or other, novel lisp 2018-07-11T16:44:17Z JuanDaugherty: alls fair in love and CS 2018-07-11T16:44:20Z shka: anyway, time to go home! 2018-07-11T16:44:32Z shka: good bye 2018-07-11T16:44:39Z beach: shka: take care! 2018-07-11T16:44:41Z graphene quit (Remote host closed the connection) 2018-07-11T16:45:25Z shka: beach: anyway, i don't see anything wrong with your assumption and they seem to follow my expirence closely 2018-07-11T16:45:32Z kerframil quit (Quit: Leaving) 2018-07-11T16:45:35Z shka: so yeah 2018-07-11T16:45:40Z pierpal quit (Quit: Poof) 2018-07-11T16:45:58Z pierpal joined #lisp 2018-07-11T16:46:00Z graphene joined #lisp 2018-07-11T16:50:57Z didi quit (Remote host closed the connection) 2018-07-11T16:51:21Z buffergn0me quit (Ping timeout: 264 seconds) 2018-07-11T16:53:12Z m00natic quit (Remote host closed the connection) 2018-07-11T16:56:02Z andrei-n quit (Read error: Connection reset by peer) 2018-07-11T16:56:24Z andrei-n joined #lisp 2018-07-11T17:05:35Z nowhere_man joined #lisp 2018-07-11T17:17:17Z NoNumber joined #lisp 2018-07-11T17:18:52Z surya quit (Read error: Connection reset by peer) 2018-07-11T17:21:17Z pjb quit (Remote host closed the connection) 2018-07-11T17:21:40Z milanj_ quit (Quit: This computer has gone to sleep) 2018-07-11T17:22:19Z pjb joined #lisp 2018-07-11T17:22:42Z pjb is now known as Guest77796 2018-07-11T17:23:51Z k4rtik quit (Ping timeout: 240 seconds) 2018-07-11T17:24:21Z phoe: Hey people 2018-07-11T17:24:27Z phoe: I just worked around the issue with LISP-BINARY 2018-07-11T17:24:43Z phoe: I split the file binary.lisp in two halves and it compiles on SBCL under normal heap sized. 2018-07-11T17:24:47Z phoe: sizes. 2018-07-11T17:26:20Z pjb` joined #lisp 2018-07-11T17:26:35Z Guest77796 quit (Read error: Connection reset by peer) 2018-07-11T17:27:14Z pierpal quit (Quit: Poof) 2018-07-11T17:27:33Z pierpal joined #lisp 2018-07-11T17:38:38Z p_l: JuanDaugherty: a lot of Haskell "speed" was due to explicit disregard for usability outside of academic papers 2018-07-11T17:39:34Z JuanDaugherty: i take it you mean speed of development, given that it was gradual from the mid 90s 2018-07-11T17:40:47Z warweasle_ joined #lisp 2018-07-11T17:41:02Z warweasle__ quit (Read error: Connection reset by peer) 2018-07-11T17:42:23Z JuanDaugherty: it inflated during the 96-06 period to roughly the current thing, then deepened 2018-07-11T17:43:13Z warweasle_ quit (Read error: Connection reset by peer) 2018-07-11T17:43:16Z p_l: JuanDaugherty: well, code evolution etc. 2018-07-11T17:43:22Z warweasle_ joined #lisp 2018-07-11T17:43:23Z JuanDaugherty: cl on the other more or less just stagnated, insofar as innovation is concerned, with a solid free implementation and some pkgs being the main thing I know of 2018-07-11T17:43:31Z JuanDaugherty: *hand 2018-07-11T17:44:12Z JuanDaugherty: not that that's necessarily a bad thing in a mature culture 2018-07-11T17:44:35Z p_l: JuanDaugherty: a lot of difference is that Haskell is the baby of academic PL research, you can see similar effort in Racket which has same case 2018-07-11T17:44:38Z JuanDaugherty: maintaining a good thing is better than friviolous innovation 2018-07-11T17:44:41Z shka_ joined #lisp 2018-07-11T17:44:55Z JuanDaugherty: lookin at you blarney starsoup 2018-07-11T17:45:22Z JuanDaugherty: it's baby of those that want CS to be pure math 2018-07-11T17:45:51Z phoe gently nudges JuanDaugherty and p_l a little bit towards #lispcafe 2018-07-11T17:46:04Z k4rtik joined #lisp 2018-07-11T17:46:18Z mflem joined #lisp 2018-07-11T17:47:12Z warweasle_ quit (Read error: Connection reset by peer) 2018-07-11T17:47:25Z warweasle_ joined #lisp 2018-07-11T17:49:27Z orivej joined #lisp 2018-07-11T17:50:07Z warweasle_ quit (Read error: Connection reset by peer) 2018-07-11T17:50:19Z warweasle_ joined #lisp 2018-07-11T17:50:26Z groovy2shoes quit (Quit: moritura te salutat) 2018-07-11T17:52:09Z Josh_2 quit (Read error: Connection reset by peer) 2018-07-11T18:00:24Z karlosz joined #lisp 2018-07-11T18:04:57Z karlosz quit (Ping timeout: 244 seconds) 2018-07-11T18:08:01Z jasmith quit (Ping timeout: 248 seconds) 2018-07-11T18:09:27Z Josh_2 joined #lisp 2018-07-11T18:11:42Z lumm joined #lisp 2018-07-11T18:13:13Z ym quit (Ping timeout: 244 seconds) 2018-07-11T18:13:22Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-11T18:16:27Z w17t joined #lisp 2018-07-11T18:16:29Z w17t quit (Max SendQ exceeded) 2018-07-11T18:17:30Z jasom: beach: One thing I've noticed is that some of the literature assumes most allocations are small; e.g. comparisons of space overhead in mark/sweek vs. semispace often assume that the typical allocation size is 2 words (i.e. a cons cell). I also agree with didi, in that a lot of real world code these days run on VMs, which are often quite tightly memory bound, so going over your memory allocation means swapping, 2018-07-11T18:17:32Z jasom: which hurts more than more frequent GCs. Also I have often seen SBCL quit with the heap exhausted just because it is so conservative about when to GC that it waits until it is too late... 2018-07-11T18:18:25Z JuanDaugherty quit (Quit: Exeunt) 2018-07-11T18:19:00Z w17t joined #lisp 2018-07-11T18:19:03Z w17t quit (Max SendQ exceeded) 2018-07-11T18:19:25Z jasom: Were earlier time-share systems that lisp ran on single address space? VMs tend to have fixed partitioning of RAM, which means CPU time can be time shared, but memory cannot... 2018-07-11T18:22:19Z shrdlu68 joined #lisp 2018-07-11T18:24:25Z sauvin quit (Read error: Connection reset by peer) 2018-07-11T18:25:05Z groovy2shoes joined #lisp 2018-07-11T18:25:41Z warweasle__ joined #lisp 2018-07-11T18:26:03Z warweasle_ quit (Read error: Connection reset by peer) 2018-07-11T18:31:34Z EvW joined #lisp 2018-07-11T18:34:18Z rjid joined #lisp 2018-07-11T18:35:25Z rjid left #lisp 2018-07-11T18:37:30Z gabiruh quit (Ping timeout: 244 seconds) 2018-07-11T18:38:00Z gabiruh joined #lisp 2018-07-11T18:42:58Z random-nick quit (Ping timeout: 264 seconds) 2018-07-11T18:45:17Z p_l: jasom: VMs can have both dynamic and static ram setups 2018-07-11T18:45:35Z p_l: jasom: for GC size, there's tunable 2018-07-11T18:45:37Z jasom: p_l: see "tend to have" 2018-07-11T18:46:02Z p_l: jasom: also, a lot of problems with GC'ed languages these days is at the huge heap sizes 2018-07-11T18:46:05Z jasom: when renting space on someone elses machine, RAM is the primary cost. 2018-07-11T18:46:37Z p_l: yeah, ram tends to be scarcer resource than CPU 2018-07-11T18:47:00Z p_l: reminds me that I should reduce the core count on my custer 2018-07-11T18:47:49Z jasom: The graph on the left was not made by me, but it fits my experience with SBCL: https://tech.grammarly.com/assets/articles/lisp-mem.jpg 2018-07-11T18:48:25Z jasom: for maximizing throughput you put off GC as long as possible, but that has repercussions... 2018-07-11T18:48:37Z p_l: jasom: yes 2018-07-11T18:49:07Z p_l: Azul, Shenandoah and similar make for nice solutions, but they aren't exactly doable for SBCL 2018-07-11T18:49:29Z p_l: (they should be trivial for some implementations though) 2018-07-11T18:49:36Z jasom: I ran into a similar issue with a wear-leveling flash file system. It would have great throughput, but then just stop responding for 30 seconds. Investigation determined that it was delaying moving data as long as possible to decrease write amplification. 2018-07-11T18:49:43Z rawste joined #lisp 2018-07-11T18:50:05Z jasom: p_l: well the graph on the right was made after implementing a simple workaround for sbcl (just manually GC on a timer) 2018-07-11T18:50:26Z p_l: jasom: that's sometimes called "metronome" approach, and comes from realtime GC 2018-07-11T18:50:44Z jasom: It also tuned the nursery size actually (rereading what they did now). 2018-07-11T18:51:04Z p_l: implementing Metronome would be interesting 2018-07-11T18:51:18Z jasom: p_l: though the true metronome requires an incremental collector; if you set aside X% of CPU time for GCing and you can GC incrementally, you are now realtime. 2018-07-11T18:51:55Z jasom: or rather you can achieve realtime. True hard realtime systems require a lot of analysis, so it's the job of the various tools to make analysis tractible. 2018-07-11T18:51:59Z p_l: jasom: well, so long as you ensure that GC runs within specified quanta and not any longer you technically have metronome 2018-07-11T18:52:16Z p_l: jasom: I believe IBM implementation used wall-clock, not cpu time 2018-07-11T18:53:01Z jasom: the two are closely related on fixed-clock single-core systems 2018-07-11T18:53:22Z jasom: but you are probably right, wall-clock is what matters in the final analysis 2018-07-11T18:53:34Z Ven`` joined #lisp 2018-07-11T18:54:10Z jasom: but yes, SBCL with a 1GB heap and a background thread invoking the GC every few seconds can probably be made to meet a hard realtime requirement of 2-3 seconds :) 2018-07-11T18:54:30Z jasom: though there are a troublingly large number of places where GC is excluded in the runtime. 2018-07-11T18:56:21Z scymtym quit (Ping timeout: 240 seconds) 2018-07-11T18:58:02Z anewuser joined #lisp 2018-07-11T19:00:21Z asdf123 quit (Remote host closed the connection) 2018-07-11T19:03:01Z asdf123 joined #lisp 2018-07-11T19:06:30Z lumm quit (Read error: Connection reset by peer) 2018-07-11T19:07:29Z lumm joined #lisp 2018-07-11T19:08:19Z lumm_ joined #lisp 2018-07-11T19:08:20Z k4rtik quit (Ping timeout: 256 seconds) 2018-07-11T19:08:32Z saki joined #lisp 2018-07-11T19:09:57Z chiyosaki quit (Ping timeout: 240 seconds) 2018-07-11T19:10:47Z pierpal quit (Quit: Poof) 2018-07-11T19:11:06Z pierpal joined #lisp 2018-07-11T19:12:05Z lumm quit (Ping timeout: 240 seconds) 2018-07-11T19:12:05Z lumm_ is now known as lumm 2018-07-11T19:13:48Z igemnace quit (Remote host closed the connection) 2018-07-11T19:15:56Z random-nick joined #lisp 2018-07-11T19:21:45Z Murii_ joined #lisp 2018-07-11T19:21:48Z graphene quit (Remote host closed the connection) 2018-07-11T19:23:01Z graphene joined #lisp 2018-07-11T19:24:58Z nowhere_man joined #lisp 2018-07-11T19:25:23Z Arcaelyx joined #lisp 2018-07-11T19:26:50Z pierpal quit (Quit: Poof) 2018-07-11T19:27:10Z pierpal joined #lisp 2018-07-11T19:34:41Z warweasle_ joined #lisp 2018-07-11T19:36:13Z warweasle__ quit (Ping timeout: 256 seconds) 2018-07-11T19:36:21Z nowhere_man quit (Ping timeout: 240 seconds) 2018-07-11T19:36:58Z andrei-n quit (Ping timeout: 264 seconds) 2018-07-11T19:42:02Z _whitelogger quit (Remote host closed the connection) 2018-07-11T19:44:15Z _whitelogger joined #lisp 2018-07-11T19:46:59Z shka_ quit (Ping timeout: 260 seconds) 2018-07-11T19:49:27Z TRS-80 quit (Ping timeout: 240 seconds) 2018-07-11T19:50:19Z warweasle_ quit (Read error: Connection reset by peer) 2018-07-11T19:50:22Z warweasle__ joined #lisp 2018-07-11T19:51:38Z warweasle__ quit (Read error: Connection reset by peer) 2018-07-11T19:51:49Z warweasle__ joined #lisp 2018-07-11T19:52:04Z karlosz joined #lisp 2018-07-11T19:52:29Z pierpal quit (Quit: Poof) 2018-07-11T19:52:47Z pierpal joined #lisp 2018-07-11T19:53:41Z housel quit (Read error: Connection reset by peer) 2018-07-11T19:54:57Z shrdlu68 quit (Ping timeout: 240 seconds) 2018-07-11T19:56:38Z scymtym joined #lisp 2018-07-11T19:57:35Z warweasle quit (Quit: rcirc on GNU Emacs 24.4.1) 2018-07-11T20:03:00Z EvW quit (Ping timeout: 265 seconds) 2018-07-11T20:06:01Z warweasle__ quit (Read error: Connection reset by peer) 2018-07-11T20:06:22Z warweasle joined #lisp 2018-07-11T20:21:03Z karlosz quit (Quit: karlosz) 2018-07-11T20:21:24Z terpri quit (Ping timeout: 260 seconds) 2018-07-11T20:22:50Z beach: jasom: I think I understand. 2018-07-11T20:22:51Z karlosz joined #lisp 2018-07-11T20:28:52Z TRS-80 joined #lisp 2018-07-11T20:29:40Z hvxgr quit (Quit: leaving) 2018-07-11T20:31:38Z anewuser quit (Ping timeout: 256 seconds) 2018-07-11T20:32:46Z ym joined #lisp 2018-07-11T20:34:41Z quazimodo quit (Ping timeout: 248 seconds) 2018-07-11T20:35:22Z anewuser joined #lisp 2018-07-11T20:36:08Z EvW1 joined #lisp 2018-07-11T20:36:49Z quazimodo joined #lisp 2018-07-11T20:36:54Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2018-07-11T20:38:12Z warweasle quit (Read error: Connection reset by peer) 2018-07-11T20:38:31Z warweasle joined #lisp 2018-07-11T20:38:47Z EvW1 quit (Remote host closed the connection) 2018-07-11T20:40:21Z karlosz quit (Ping timeout: 240 seconds) 2018-07-11T20:42:08Z pierpal quit (Remote host closed the connection) 2018-07-11T20:42:09Z TRS-80 quit (Ping timeout: 248 seconds) 2018-07-11T20:45:38Z angavrilov quit (Remote host closed the connection) 2018-07-11T20:47:02Z warweasle quit (Read error: Connection reset by peer) 2018-07-11T20:47:12Z warweasle joined #lisp 2018-07-11T20:47:21Z mindCrime quit (Ping timeout: 240 seconds) 2018-07-11T20:58:52Z rawste quit (Quit: Quit...) 2018-07-11T20:59:59Z vlatkoB_ quit (Remote host closed the connection) 2018-07-11T21:00:19Z k4rtik joined #lisp 2018-07-11T21:09:59Z warweasle quit (Read error: Connection reset by peer) 2018-07-11T21:10:12Z warweasle joined #lisp 2018-07-11T21:13:35Z stacksmith: Good morning. Is there some hook in the pretty-printer to track its progress across the list being printed? For instance to know what object is printed on a fresh line, etc. 2018-07-11T21:14:42Z warweasle quit (Read error: Connection reset by peer) 2018-07-11T21:14:42Z warweasle_ joined #lisp 2018-07-11T21:14:44Z xaotuk joined #lisp 2018-07-11T21:15:39Z hvxgr joined #lisp 2018-07-11T21:16:27Z dddddd quit (Ping timeout: 240 seconds) 2018-07-11T21:17:44Z Murii_ quit (Remote host closed the connection) 2018-07-11T21:18:02Z pierpa joined #lisp 2018-07-11T21:20:23Z milanj joined #lisp 2018-07-11T21:20:24Z test1600 joined #lisp 2018-07-11T21:21:21Z k4rtik quit (Ping timeout: 240 seconds) 2018-07-11T21:23:34Z k4rtik joined #lisp 2018-07-11T21:23:34Z k4rtik quit (Changing host) 2018-07-11T21:23:34Z k4rtik joined #lisp 2018-07-11T21:23:48Z test1600 quit (Client Quit) 2018-07-11T21:23:55Z dddddd joined #lisp 2018-07-11T21:26:06Z graphene quit (Remote host closed the connection) 2018-07-11T21:27:20Z graphene joined #lisp 2018-07-11T21:29:14Z housel joined #lisp 2018-07-11T21:29:43Z warweasle_ quit (Read error: Connection reset by peer) 2018-07-11T21:29:53Z mooshmoosh quit (Read error: Connection reset by peer) 2018-07-11T21:30:19Z warweasle_ joined #lisp 2018-07-11T21:30:54Z mooshmoosh joined #lisp 2018-07-11T21:32:14Z karlosz joined #lisp 2018-07-11T21:33:55Z jfb4 joined #lisp 2018-07-11T21:34:25Z LiamH quit (Quit: Leaving.) 2018-07-11T21:35:03Z Bike quit (Ping timeout: 252 seconds) 2018-07-11T21:35:27Z lumm quit (Ping timeout: 240 seconds) 2018-07-11T21:35:34Z warweasle_ quit (Read error: Connection reset by peer) 2018-07-11T21:35:46Z warweasle joined #lisp 2018-07-11T21:38:10Z karlosz quit (Ping timeout: 264 seconds) 2018-07-11T21:39:15Z xrash joined #lisp 2018-07-11T21:40:06Z warweasle quit (Client Quit) 2018-07-11T21:45:27Z xaotuk quit (Ping timeout: 268 seconds) 2018-07-11T21:48:19Z Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-11T21:54:04Z pjb` is now known as pjb 2018-07-11T21:54:21Z k4rtik quit (Ping timeout: 240 seconds) 2018-07-11T21:58:25Z Ven`` joined #lisp 2018-07-11T21:59:51Z pjb quit (Ping timeout: 240 seconds) 2018-07-11T21:59:59Z Ven`` quit (Client Quit) 2018-07-11T22:00:54Z karlosz joined #lisp 2018-07-11T22:01:37Z pagnol joined #lisp 2018-07-11T22:01:46Z pjb joined #lisp 2018-07-11T22:02:10Z pjb is now known as Guest69217 2018-07-11T22:03:50Z Bike joined #lisp 2018-07-11T22:04:42Z Smokitch quit 2018-07-11T22:05:46Z karlosz quit (Ping timeout: 264 seconds) 2018-07-11T22:07:21Z hhdave joined #lisp 2018-07-11T22:07:24Z Guest69217 quit (Ping timeout: 256 seconds) 2018-07-11T22:09:02Z karlosz joined #lisp 2018-07-11T22:09:14Z Jesin joined #lisp 2018-07-11T22:09:42Z k4rtik joined #lisp 2018-07-11T22:10:52Z shifty joined #lisp 2018-07-11T22:11:12Z Guest69217 joined #lisp 2018-07-11T22:14:03Z zooey quit (Ping timeout: 250 seconds) 2018-07-11T22:14:52Z random-nick quit (Read error: Connection reset by peer) 2018-07-11T22:16:28Z Guest69217 quit (Ping timeout: 256 seconds) 2018-07-11T22:17:46Z hhdave quit (Ping timeout: 264 seconds) 2018-07-11T22:18:50Z terpri joined #lisp 2018-07-11T22:19:24Z sjl_ quit (Quit: WeeChat 2.2-dev) 2018-07-11T22:19:24Z zooey joined #lisp 2018-07-11T22:19:45Z blackwolf quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2018-07-11T22:21:40Z karlosz quit (Quit: karlosz) 2018-07-11T22:21:57Z sjl quit (Ping timeout: 240 seconds) 2018-07-11T22:24:21Z terpri quit (Ping timeout: 264 seconds) 2018-07-11T22:30:29Z Guest69217 joined #lisp 2018-07-11T22:30:54Z k4rtik quit (Ping timeout: 265 seconds) 2018-07-11T22:33:33Z mejja quit (Quit: mejja) 2018-07-11T22:35:44Z Guest69217 quit (Ping timeout: 256 seconds) 2018-07-11T22:40:24Z Guest69217 joined #lisp 2018-07-11T22:42:36Z jasmith joined #lisp 2018-07-11T22:43:43Z housel quit (Remote host closed the connection) 2018-07-11T22:44:36Z Guest69217 quit (Remote host closed the connection) 2018-07-11T22:45:16Z pagnol quit (Ping timeout: 268 seconds) 2018-07-11T22:45:48Z Guest69217 joined #lisp 2018-07-11T22:50:41Z caltelt_ joined #lisp 2018-07-11T22:51:05Z Guest69217 quit (Remote host closed the connection) 2018-07-11T22:54:57Z caltelt_ quit (Ping timeout: 240 seconds) 2018-07-11T22:57:27Z brettgilio joined #lisp 2018-07-11T22:57:54Z shifty quit (Ping timeout: 244 seconds) 2018-07-11T22:58:11Z Guest69217 joined #lisp 2018-07-11T22:58:29Z nirved quit (Ping timeout: 255 seconds) 2018-07-11T22:58:40Z Jesin quit (Quit: Leaving) 2018-07-11T22:59:19Z mange joined #lisp 2018-07-11T23:00:03Z Josh_2 quit (Quit: ERC (IRC client for Emacs 25.3.1)) 2018-07-11T23:00:17Z Khisanth quit (Ping timeout: 248 seconds) 2018-07-11T23:02:33Z housel joined #lisp 2018-07-11T23:03:05Z cods quit (Ping timeout: 240 seconds) 2018-07-11T23:07:08Z pillton: You could use the pretty print dispatch tables. 2018-07-11T23:07:14Z pillton: clhs 22.2.1.4 2018-07-11T23:07:14Z specbot: Pretty Print Dispatch Tables: http://www.lispworks.com/reference/HyperSpec/Body/22_bad.htm 2018-07-11T23:07:34Z robotoad quit (Quit: robotoad) 2018-07-11T23:09:00Z pillton: It won't tell you what object is printed on a fresh line, but you could possibly use a custom stream and an entry in the dispatch table to get that information. 2018-07-11T23:09:38Z pillton: What do you need the information for? 2018-07-11T23:10:32Z Guest69217 quit (Ping timeout: 265 seconds) 2018-07-11T23:11:14Z TRS-80 joined #lisp 2018-07-11T23:13:00Z Khisanth joined #lisp 2018-07-11T23:14:23Z Guest69217 joined #lisp 2018-07-11T23:18:17Z xuxuru quit (Quit: xuxuru) 2018-07-11T23:19:03Z stacksmith: pillton: a browser/debugger of sorts. I would love to not reinvent the wheel with layout/indentation but have some idea about where things wind up. 2018-07-11T23:19:18Z caltelt joined #lisp 2018-07-11T23:19:35Z al-damiri quit (Quit: Connection closed for inactivity) 2018-07-11T23:19:53Z pillton: You might get ideas from the SLIME inspector. 2018-07-11T23:20:05Z stacksmith: Yeah, that's my next stop. 2018-07-11T23:20:26Z Guest69217 quit (Ping timeout: 276 seconds) 2018-07-11T23:28:27Z TRS-80 quit (Quit: WeeChat 1.6) 2018-07-11T23:30:36Z kerframil joined #lisp 2018-07-11T23:34:58Z kozy quit (Remote host closed the connection) 2018-07-11T23:40:27Z robotoad joined #lisp 2018-07-11T23:44:57Z Kaisyu joined #lisp 2018-07-11T23:49:43Z Josh_2 joined #lisp 2018-07-11T23:50:03Z sjl joined #lisp 2018-07-11T23:53:06Z xuxuru joined #lisp 2018-07-11T23:53:52Z kozy joined #lisp 2018-07-11T23:55:48Z BitPuffin quit (Remote host closed the connection) 2018-07-12T00:03:00Z markoong quit (Ping timeout: 244 seconds) 2018-07-12T00:08:04Z jasmith quit (Quit: Leaving) 2018-07-12T00:09:20Z eli_oat quit (Quit: eli_oat) 2018-07-12T00:21:08Z terpri joined #lisp 2018-07-12T00:34:54Z jonh joined #lisp 2018-07-12T00:43:33Z dddddd quit (Remote host closed the connection) 2018-07-12T00:46:59Z xuxuru quit (Quit: xuxuru) 2018-07-12T00:51:33Z Kundry_Wag quit (Remote host closed the connection) 2018-07-12T00:59:53Z jasmith joined #lisp 2018-07-12T01:04:32Z Josh_2 quit (Remote host closed the connection) 2018-07-12T01:11:10Z rumbler31 joined #lisp 2018-07-12T01:19:54Z hhdave joined #lisp 2018-07-12T01:21:46Z graphene quit (Remote host closed the connection) 2018-07-12T01:23:07Z graphene joined #lisp 2018-07-12T01:23:10Z subroot joined #lisp 2018-07-12T01:23:57Z hhdave quit (Ping timeout: 240 seconds) 2018-07-12T01:24:16Z Kundry_Wag joined #lisp 2018-07-12T01:25:15Z Kundry_Wag_ joined #lisp 2018-07-12T01:28:57Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-12T01:30:34Z anewuser quit (Ping timeout: 260 seconds) 2018-07-12T01:36:28Z anewuser joined #lisp 2018-07-12T01:42:34Z robotoad quit (Quit: robotoad) 2018-07-12T01:45:35Z anewuser quit (Read error: Connection reset by peer) 2018-07-12T01:45:55Z nicht joined #lisp 2018-07-12T01:45:55Z nicht quit (Max SendQ exceeded) 2018-07-12T01:47:00Z smasta joined #lisp 2018-07-12T01:48:18Z light2yellow quit (Quit: light2yellow) 2018-07-12T01:48:36Z Kundry_Wag_ quit (Remote host closed the connection) 2018-07-12T01:49:08Z Kundry_Wag joined #lisp 2018-07-12T01:49:40Z subroot quit (Read error: Connection reset by peer) 2018-07-12T01:53:27Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-12T01:59:59Z Kundry_Wag joined #lisp 2018-07-12T02:02:50Z k4rtik joined #lisp 2018-07-12T02:02:50Z k4rtik quit (Changing host) 2018-07-12T02:02:50Z k4rtik joined #lisp 2018-07-12T02:03:57Z logicmoo quit (Ping timeout: 240 seconds) 2018-07-12T02:04:13Z buffergn0me joined #lisp 2018-07-12T02:04:56Z Kundry_Wag quit (Ping timeout: 244 seconds) 2018-07-12T02:05:22Z dmiles joined #lisp 2018-07-12T02:09:09Z Kundry_Wag joined #lisp 2018-07-12T02:09:48Z Kundry_Wag_ joined #lisp 2018-07-12T02:10:24Z robotoad joined #lisp 2018-07-12T02:13:21Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-12T02:16:05Z jibanes quit (Ping timeout: 240 seconds) 2018-07-12T02:18:04Z jibanes joined #lisp 2018-07-12T02:19:23Z pierpa quit (Quit: Page closed) 2018-07-12T02:27:25Z rumbler31 quit (Remote host closed the connection) 2018-07-12T02:33:11Z smasta quit (Quit: WeeChat 2.1) 2018-07-12T02:33:58Z smasta joined #lisp 2018-07-12T02:40:06Z milanj quit (Quit: This computer has gone to sleep) 2018-07-12T02:41:49Z fluke` quit (Read error: Connection reset by peer) 2018-07-12T02:42:40Z fluke` joined #lisp 2018-07-12T02:45:19Z Kundry_Wag joined #lisp 2018-07-12T02:47:09Z EvW joined #lisp 2018-07-12T02:49:21Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-12T02:51:29Z karlosz joined #lisp 2018-07-12T02:52:23Z beach: Good morning everyone! 2018-07-12T02:57:02Z Bike quit (Quit: Lost terminal) 2018-07-12T03:01:46Z karlosz quit (Ping timeout: 244 seconds) 2018-07-12T03:04:46Z skapata quit (Remote host closed the connection) 2018-07-12T03:06:06Z karlosz joined #lisp 2018-07-12T03:11:03Z pierpal joined #lisp 2018-07-12T03:16:09Z blep-on-external: hello beach 2018-07-12T03:16:48Z blep-on-external: how do i get all the class slots of a class? i've tried sb-mop:class-slots but it doesn't have applicable methods for the symbol or an instance of the class 2018-07-12T03:17:32Z al-damiri joined #lisp 2018-07-12T03:18:27Z karlosz quit (Ping timeout: 240 seconds) 2018-07-12T03:18:53Z pillton: blep-on-external: (sb-mop:class-slots (find-class 'my-class)) 2018-07-12T03:18:59Z blep-on-external: never mind, found it. 2018-07-12T03:22:15Z brettgilio quit (Remote host closed the connection) 2018-07-12T03:22:45Z blep-on-external: oh, i was missing find-class. 2018-07-12T03:23:00Z brettgilio joined #lisp 2018-07-12T03:23:25Z blep-on-external: cl-mop:slot-names seems more specific to what i want to do 2018-07-12T03:23:34Z blep-on-external: thanks though 2018-07-12T03:27:43Z shka_ joined #lisp 2018-07-12T03:27:51Z beach: mop class-slots 2018-07-12T03:27:52Z specbot: http://metamodular.com/CLOS-MOP/class-slots.html 2018-07-12T03:28:20Z beach: blep-on-external: What is the class you are trying with? 2018-07-12T03:29:21Z beach: blep-on-external: More generally, what are you trying to do? 2018-07-12T03:40:55Z AetherWind joined #lisp 2018-07-12T03:43:34Z buffergn0me quit (Ping timeout: 260 seconds) 2018-07-12T03:44:21Z EvW quit (Ping timeout: 240 seconds) 2018-07-12T03:46:31Z k4rtik quit (Ping timeout: 265 seconds) 2018-07-12T03:51:40Z MinnowTaur joined #lisp 2018-07-12T03:57:02Z _whitelogger quit (Remote host closed the connection) 2018-07-12T03:59:15Z _whitelogger joined #lisp 2018-07-12T03:59:49Z Kundry_Wag_ quit (Remote host closed the connection) 2018-07-12T04:00:21Z Kundry_Wag joined #lisp 2018-07-12T04:05:05Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-12T04:05:11Z blep-on-external: i'm done 2018-07-12T04:05:24Z blep-on-external: i just wrote a method to turn message objects into json strings 2018-07-12T04:06:20Z blep-on-external: https://pastebin.com/X5TVZDMD 2018-07-12T04:11:43Z beach: blep-on-external: Either you have TABs in your code that pastebin can not handle, or you line starting with COLLECT is incorrectly indented. 2018-07-12T04:12:23Z jasmith quit (Quit: Leaving) 2018-07-12T04:16:05Z k4rtik joined #lisp 2018-07-12T04:21:04Z Kundry_Wag joined #lisp 2018-07-12T04:21:59Z isospin joined #lisp 2018-07-12T04:25:47Z raynold joined #lisp 2018-07-12T04:26:10Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-12T04:27:47Z Kundry_Wag joined #lisp 2018-07-12T04:28:35Z Kundry_Wag_ joined #lisp 2018-07-12T04:32:11Z Kundry_Wag quit (Ping timeout: 244 seconds) 2018-07-12T04:33:44Z caltelt quit (Ping timeout: 244 seconds) 2018-07-12T04:33:57Z k4rtik quit (Ping timeout: 240 seconds) 2018-07-12T04:51:47Z kaun joined #lisp 2018-07-12T04:51:59Z EvW1 joined #lisp 2018-07-12T04:52:17Z daniel-s joined #lisp 2018-07-12T05:05:23Z Kundry_Wag_ quit (Remote host closed the connection) 2018-07-12T05:05:57Z Kundry_Wag joined #lisp 2018-07-12T05:06:36Z brettgilio quit (Quit: Leaving) 2018-07-12T05:10:29Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-12T05:15:34Z kaun quit 2018-07-12T05:15:37Z pagnol joined #lisp 2018-07-12T05:18:21Z Inline quit (Quit: Leaving) 2018-07-12T05:18:41Z mooshmoosh quit (Ping timeout: 244 seconds) 2018-07-12T05:20:15Z sauvin joined #lisp 2018-07-12T05:28:21Z EvW1 quit (Ping timeout: 240 seconds) 2018-07-12T05:37:00Z rippa joined #lisp 2018-07-12T05:43:22Z mange quit (Ping timeout: 268 seconds) 2018-07-12T05:45:33Z pagnol quit (Ping timeout: 244 seconds) 2018-07-12T05:49:25Z Smokitch joined #lisp 2018-07-12T05:51:42Z dcluna quit (Read error: Connection reset by peer) 2018-07-12T05:52:30Z graphene quit (Remote host closed the connection) 2018-07-12T05:53:50Z graphene joined #lisp 2018-07-12T05:56:38Z dcluna joined #lisp 2018-07-12T05:56:54Z brettgilio joined #lisp 2018-07-12T05:56:57Z dmiles quit (Ping timeout: 240 seconds) 2018-07-12T06:01:12Z dmiles joined #lisp 2018-07-12T06:06:19Z brettg_ joined #lisp 2018-07-12T06:07:35Z brettgilio quit (Ping timeout: 240 seconds) 2018-07-12T06:12:28Z kerframil quit (Ping timeout: 256 seconds) 2018-07-12T06:28:08Z shrdlu68 joined #lisp 2018-07-12T06:34:14Z k4rtik joined #lisp 2018-07-12T06:34:15Z brettg_ quit (Quit: Leaving) 2018-07-12T06:37:26Z vlatkoB joined #lisp 2018-07-12T06:39:17Z scymtym quit (Ping timeout: 244 seconds) 2018-07-12T06:40:01Z elfmacs joined #lisp 2018-07-12T06:42:07Z robotoad quit (Quit: robotoad) 2018-07-12T06:50:43Z Kundry_Wag joined #lisp 2018-07-12T06:51:24Z k4rtik quit (Ping timeout: 260 seconds) 2018-07-12T06:51:29Z shrdlu68: "In general, Common Lisp is a type-safe language. A Common Lisp compiler is responsible for inserting dynamic checks for operations whose type safety cannot be proven statically. However, a programmer may indicate that a program should be compiled with a lower level of dynamic type-checking." -- What does (safety 0) do? 2018-07-12T06:51:38Z nirved joined #lisp 2018-07-12T06:52:10Z shrdlu68: Does it mean I won't get the usual "var is of type X, expecting type Y"? 2018-07-12T06:52:18Z beach: shrdlu68: Depends on the implementation. 2018-07-12T06:52:34Z beach: shrdlu68: Array bounds checks may be omitted. 2018-07-12T06:53:10Z SaganMan quit (Ping timeout: 264 seconds) 2018-07-12T06:53:12Z beach: shrdlu68: It may believe you when you say something is a fixnum, and act accordingly. 2018-07-12T06:53:20Z shrdlu68: Hmm, meaning one could get a segfault? 2018-07-12T06:53:25Z pillton: The standard allows array bounds checks to be omitted at safety 3. 2018-07-12T06:53:26Z beach: Oh, definitely. 2018-07-12T06:53:38Z beach: pillton: Oh, OK. 2018-07-12T06:53:54Z beach: shrdlu68: Yes, definitely segmentation faults are possible. 2018-07-12T06:54:40Z pillton: clhs 1.4.4.3 2018-07-12T06:54:40Z specbot: The ``Arguments and Values'' Section of a Dictionary Entry: http://www.lispworks.com/reference/HyperSpec/Body/01_ddc.htm 2018-07-12T06:54:53Z pillton: "Except as explicitly specified otherwise, the consequences are undefined if these type restrictions are violated." 2018-07-12T06:55:05Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-12T06:55:27Z pillton: The standard defines no exceptional situations for aref. 2018-07-12T06:56:22Z beach: Yeah, that surprises some people. 2018-07-12T06:56:40Z pillton: It surprised me. SBCL made me lazy. 2018-07-12T06:56:59Z White_Flame: also, a big ol' "In general," in the beginning of shrdlu68's quote leaves leeway there, too 2018-07-12T06:57:17Z pillton: Even using ELT on a list is unsafe. 2018-07-12T06:57:34Z pillton: "Should signal an error of type type-error if index is not a valid sequence index for sequence. " 2018-07-12T06:58:17Z flamebeard joined #lisp 2018-07-12T06:58:28Z pillton: Anyway, what the standard allows and what sane people do are two different things. 2018-07-12T06:58:52Z shrdlu68: I should pay closer attention to exception types, never noticed array out of bounds exception was not standard. 2018-07-12T06:58:54Z pillton: Oh, I am not implying that the standard is insane. 2018-07-12T06:59:12Z pillton: Well, not all of it. 2018-07-12T06:59:16Z pillton: I digress. 2018-07-12T06:59:35Z White_Flame: sanity is relative to time frames. Pathnames, for instance, are kind of insane nowadays 2018-07-12T06:59:41Z beach: The purpose of WSCL is to clarify many such situations, like requiring errors to be signaled in safe code. 2018-07-12T07:00:23Z pillton: I must admit. I have never really understood the definition of safe code given clhs 1.4.4.3. 2018-07-12T07:01:25Z beach: Oh, you are putting too much interpretation into the word. 2018-07-12T07:01:56Z beach: The definition is that SAFETY is 3. 2018-07-12T07:02:15Z beach: It's like "simple" rewrite systems. There is nothing simple about them. 2018-07-12T07:02:34Z pillton: Well, that solves that mystery. 2018-07-12T07:02:39Z surya joined #lisp 2018-07-12T07:03:11Z pillton: Thank you. 2018-07-12T07:03:15Z beach: Sure. 2018-07-12T07:03:27Z beach: But I understand what you feel. Hence WSCL. 2018-07-12T07:05:00Z SaganMan joined #lisp 2018-07-12T07:11:06Z shka_: UB area is CL is large 2018-07-12T07:11:22Z shka_: writing portable code is not super easy 2018-07-12T07:11:38Z shka_: so, yeah, WSCL makes sense 2018-07-12T07:12:02Z brettgilio joined #lisp 2018-07-12T07:12:41Z brettgilio quit (Max SendQ exceeded) 2018-07-12T07:12:50Z makomo joined #lisp 2018-07-12T07:13:12Z brettgilio joined #lisp 2018-07-12T07:14:29Z makomo quit (Client Quit) 2018-07-12T07:14:52Z makomo joined #lisp 2018-07-12T07:17:07Z scymtym joined #lisp 2018-07-12T07:18:42Z milanj joined #lisp 2018-07-12T07:19:38Z p_l: Hmm, large UB? Anyone got a metric for that? 2018-07-12T07:19:51Z makomo quit (Ping timeout: 240 seconds) 2018-07-12T07:19:59Z shrdlu68 quit (Remote host closed the connection) 2018-07-12T07:21:52Z makomo joined #lisp 2018-07-12T07:22:53Z Domaldel joined #lisp 2018-07-12T07:23:04Z Domaldel quit (Remote host closed the connection) 2018-07-12T07:23:37Z akkad: there is sbcl, and nothing else. portability a non-issue 2018-07-12T07:23:54Z beach: Hard to quantify of course, but it is probably worse than most people think after a casual read of the Common Lisp HyperSpec. But I am guessing it is not as bad as some languages like C. 2018-07-12T07:25:08Z shrdlu68 joined #lisp 2018-07-12T07:26:02Z angavrilov joined #lisp 2018-07-12T07:30:16Z phoe: akkad: d'oh, other implementations are used as well 2018-07-12T07:30:29Z shrdlu68 quit (Ping timeout: 260 seconds) 2018-07-12T07:31:13Z surya_ joined #lisp 2018-07-12T07:31:16Z shrdlu68 joined #lisp 2018-07-12T07:31:17Z shka_ quit (Ping timeout: 268 seconds) 2018-07-12T07:32:25Z Cymew joined #lisp 2018-07-12T07:32:56Z shrdlu68 quit (Client Quit) 2018-07-12T07:33:35Z akkad: awesome lisp says to just use sbcl 2018-07-12T07:34:21Z surya quit (Ping timeout: 240 seconds) 2018-07-12T07:35:12Z akkad: phoe: what do you use? 2018-07-12T07:35:56Z vlatkoB quit (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.) 2018-07-12T07:37:35Z dddddd joined #lisp 2018-07-12T07:40:32Z igemnace joined #lisp 2018-07-12T07:41:15Z Smokitch quit 2018-07-12T07:42:35Z mflem quit (Read error: Connection reset by peer) 2018-07-12T07:43:59Z jackdaniel: what is awesome lisp? also, that is pretty dumb advice, unless provided as a simplified instruction for a real newbies. 2018-07-12T07:44:25Z jackdaniel: if we didn't care about portability, but "just write" for sbcl there wouldn't be a need for a standard and we'd be in a similar situation python or clojure are 2018-07-12T07:44:33Z jackdaniel: that is - specification defined by implementation 2018-07-12T07:44:38Z phoe: akkad: sbcl and ccl on x8664, ecl on android and abcl on JVMs 2018-07-12T07:46:09Z jackdaniel: clisp on minix3; ecl on haiku :) 2018-07-12T07:46:33Z jackdaniel: and lispworks on producation (that's what I've been told) 2018-07-12T07:46:53Z jackdaniel: ;p getting back to my (hopefully portable) toys 2018-07-12T07:47:05Z nullman quit (Ping timeout: 240 seconds) 2018-07-12T07:50:32Z vlatkoB joined #lisp 2018-07-12T07:51:24Z brettgilio quit (Quit: Leaving) 2018-07-12T07:52:49Z nullman joined #lisp 2018-07-12T07:52:57Z SaganMan quit (Ping timeout: 240 seconds) 2018-07-12T07:55:57Z makomo quit (Ping timeout: 240 seconds) 2018-07-12T07:56:00Z buffergn0me joined #lisp 2018-07-12T07:59:04Z Deknos joined #lisp 2018-07-12T08:01:38Z shrdlu68 joined #lisp 2018-07-12T08:01:45Z d4ryus1 is now known as d4ryus 2018-07-12T08:04:05Z chiyosaki joined #lisp 2018-07-12T08:06:04Z saki quit (Ping timeout: 260 seconds) 2018-07-12T08:06:10Z al-damiri quit (Quit: Connection closed for inactivity) 2018-07-12T08:07:05Z hhdave joined #lisp 2018-07-12T08:08:40Z beach: jackdaniel: The concept of a standard that is independent of implementations and of the organizations that supply implementations is pretty hard to grasp, especially these days, when single-implementation languages and benevolent-dictator languages are not only commonplace, but also used by industry projects that think of themselves as being serious. 2018-07-12T08:08:40Z chiyosaki quit (Ping timeout: 244 seconds) 2018-07-12T08:17:17Z jackdaniel: I like to look at standards from the humanism standpoint 2018-07-12T08:17:51Z jackdaniel: I can imagine our civilization getting doomed; only printed standards and programs survived 2018-07-12T08:18:06Z jackdaniel: and some alien civilization recreating virtual machine to run our "heritage" 2018-07-12T08:18:40Z jackdaniel: of course I'm half-joking here, but looking at standards this way may help making the topic a little easier to grasp 2018-07-12T08:19:30Z beach: You have a vivid imagination. :) 2018-07-12T08:19:38Z trittweiler joined #lisp 2018-07-12T08:19:59Z jackdaniel: thank you 2018-07-12T08:21:21Z shrdlu68 quit (Ping timeout: 264 seconds) 2018-07-12T08:21:24Z beach: But, and I know I have said this before, for any industry project that thinks of itself as being serious, using a language with an independent standard is a must, or else they must take precautions and figure out what to do if the "language" they have chosen should disappear, quit being maintained, or be altered in some major way. 2018-07-12T08:21:34Z shrdlu68 joined #lisp 2018-07-12T08:21:46Z beach: They might have to hire compiler experts then. And they probably don't even know where to find one, nor what to pay such a person. 2018-07-12T08:23:08Z hhdave quit (Ping timeout: 244 seconds) 2018-07-12T08:26:00Z Deknos left #lisp 2018-07-12T08:27:32Z hhdave joined #lisp 2018-07-12T08:28:00Z dim: beach: what about companies using their own home-grown and home-steered projects/language, such as Google with Go or Mozilla with Rust (I think), or Oracle with Java? 2018-07-12T08:30:46Z ebrasca: They are big. 2018-07-12T08:30:53Z beach: dim: That's fine because they will then have hired people who are capable of maintaining that stuff. 2018-07-12T08:30:57Z shka: and not so smart if you ask me! 2018-07-12T08:31:02Z saki joined #lisp 2018-07-12T08:31:04Z nowhere_man joined #lisp 2018-07-12T08:34:49Z shrdlu68 quit (Ping timeout: 256 seconds) 2018-07-12T08:35:19Z shrdlu68 joined #lisp 2018-07-12T08:36:03Z shifty joined #lisp 2018-07-12T08:40:06Z shrdlu68: t/ex 2018-07-12T08:40:06Z shrdlu68 quit (Client Quit) 2018-07-12T08:40:29Z aeth: akkad, jackdaniel: I find a good compromise between painful portability and no portability is to write for one implementation and then test it on one or two supported others. Technically, they could all violate the standard in the same way, but at least you're not tied to *one* 2018-07-12T08:42:49Z aeth: It's pretty easy to run on both SBCL and CCL. On the other hand, ABCL and CLISP are probably the hardest to support. 2018-07-12T08:42:58Z Folkol_ quit (Ping timeout: 264 seconds) 2018-07-12T08:43:17Z Cymew: Aren't CLISP that old crap that should just go home and die? 2018-07-12T08:43:28Z Cymew: Hmm. "Isn't" 2018-07-12T08:43:43Z aeth: CLISP is... unusual. I think its fixnum is 48 bits. Its long float is arbitrary precision. etc. 2018-07-12T08:43:46Z beach: Cymew: What is the point of such utterances? 2018-07-12T08:44:06Z aeth: ABCL is more excusably unusual. It has to run on the JVM. 2018-07-12T08:44:13Z aeth: If you *really* want to be portable, test on them. 2018-07-12T08:44:43Z dim: I'm still missing the ABCL facility to create a .jar from a .asd 2018-07-12T08:44:44Z Cymew: beach: If that is the old implementation I'm thinking of, I think it is such a corner case that it can be disregarded for compatibility reasons. 2018-07-12T08:45:18Z beach: Cymew: That is no excuse for inflammatory phrases like your first one. 2018-07-12T08:45:23Z Cymew: I probably should have been clearer, yes. 2018-07-12T08:45:24Z dim: as soon as that's possible, I'll have a look at having pgloader.jar and also using JDBC on that platform, that'd be great really for supporting some commercial databases and other niche ones 2018-07-12T08:45:43Z aeth: Cymew: CLISP is the interpreted implementation that's semi-active (no new release in a long time, but not dead), but tons of resources from 2000-2010 recommended it so it'll live for a long time. 2018-07-12T08:45:46Z daniel-s quit (Remote host closed the connection) 2018-07-12T08:46:00Z White_Flame: I don't recall CLISP ever being characterized as being incompatible 2018-07-12T08:46:01Z aeth: It's also possible that it'll be active again because it's not dead. 2018-07-12T08:47:01Z White_Flame: the 3 major things is that it's slower than native compiled implementations, it has fast bigmath, and it's easy to get running on new/unsupported platforms 2018-07-12T08:47:05Z Cymew: White_Flame: I have read descriptions of its implementation of CLOS to be very peculiar. 2018-07-12T08:47:26Z beach: Cymew: karlosz is in fact writing a Cleavir-based compiler for CLISP as a GSoC project. 2018-07-12T08:48:07Z Cymew: Interesting idea. 2018-07-12T08:50:03Z aeth: I'd say that the most annoying thing about CLISP is that it doesn't support single-float and double-float specialized arrays. When a specialized array isn't supported, you just get T arrays instead. *Tons* of libraries assume float arrays (or byte arrays) even though the standard only requires bit and character arrays. Those libraries will (slowly) run in CLISP, but without any sort of benefit in the type system. 2018-07-12T08:51:23Z aeth: Implementations with long-float (not just CLISP) also have an interesting issue with pi. pi is technically long-float, but in most implementations that's also a double-float so some people erronously assume pi is a double-float. So CLISP has the opposite issue there, where it supports something (long-float) that most popular implementations don't. 2018-07-12T08:52:19Z aeth: s/long-float/a long-float larger than a double-float/ 2018-07-12T08:53:00Z aeth: (don't replace "pi is technically a long-float" with that substitution, though.) 2018-07-12T08:55:39Z aeth: (CLISP does support byte arrays, so I might have been unclear there. I was just saying that that's another thing libraries assume.) 2018-07-12T08:55:55Z BitPuffin joined #lisp 2018-07-12T08:56:55Z White_Flame: as specialized vectors or simple arrays? :-P 2018-07-12T08:57:17Z White_Flame: that's a problem I keep hitting. Half the libs want specialized VECTOR, the other half want specialized SIMPLE-ARRAY 2018-07-12T08:57:24Z buffergn0me quit (Ping timeout: 260 seconds) 2018-07-12T08:59:06Z _death: when I started learning lisp I used clisp on windows (and sbcl on linux) .. it was slow, but usable for many tasks.. it also has a small image size 2018-07-12T08:59:19Z aeth: White_Flame: a (simple-array single-float (*)) is a (vector single-float *) afaik (but not the other way around afaik) 2018-07-12T08:59:49Z aeth: _death: And there's the right answer for what you do NOT want to use SBCL for. When you need a small image size! 2018-07-12T08:59:53Z _death: it also has a nice manual 2018-07-12T09:00:38Z White_Flame: yeah, flexi-streams will build a vector for me, then I need to convert to simple-array to give it to the websocket lib 2018-07-12T09:02:04Z orivej quit (Ping timeout: 260 seconds) 2018-07-12T09:02:09Z _death: flexi-streams has many faults.. some of them can be fixed without creating backwards compatibility issues, but that particular one I'm not sure 2018-07-12T09:02:16Z aeth: A simple-array is usually what you want if you even remotely care about performance (assuming you're not using one of the features that a nonsimple array has). It gives more guarantees as to the structure of the thing. 2018-07-12T09:02:23Z aeth: At least a 1D simple-array. 2018-07-12T09:02:35Z smasta quit (Ping timeout: 256 seconds) 2018-07-12T09:04:34Z White_Flame: yep, I think a real failing of the spec is that simple-vector cannot be specialized 2018-07-12T09:05:28Z White_Flame: however, when you think about it, when you're dynamically building up a buffer from a stream, the backing data can't be simple 2018-07-12T09:07:04Z igemnace quit (Remote host closed the connection) 2018-07-12T09:07:16Z aeth: Yes it can. You could e.g. just have a fixed size. 2018-07-12T09:08:13Z nowhere_man quit (Remote host closed the connection) 2018-07-12T09:08:17Z aeth: You would need some way to communicate that it's only meaningful up to a certain index. A general library should probably just use the 2nd return value to do it, but I'd personally put it in a struct to store the value. 2018-07-12T09:09:02Z nowhere_man joined #lisp 2018-07-12T09:09:07Z aeth: Obviously this is probably going to waste space (but also risk running out of space), but make things faster. 2018-07-12T09:09:10Z aeth: A tradeoff. 2018-07-12T09:12:14Z White_Flame: and re-copy to larger ones manually, or keep a chain of them, etc 2018-07-12T09:12:23Z White_Flame: because you don' tknow the size ahead of time 2018-07-12T09:12:27Z pagnol joined #lisp 2018-07-12T09:12:44Z White_Flame: could be 16 bytes, could be 16MB 2018-07-12T09:14:34Z aeth: You could even have the user be in control 2018-07-12T09:14:59Z aeth: i.e. feed in the array, if it's too large, then allow the user to continue 2018-07-12T09:15:14Z aeth: So you as the user would be checking the 2nd return value 2018-07-12T09:15:41Z Smokitch joined #lisp 2018-07-12T09:17:07Z Kundry_Wag joined #lisp 2018-07-12T09:19:08Z aeth: s/if it's too large/if the data is too large for the array/ 2018-07-12T09:21:51Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-12T09:22:56Z nowhere_man quit (Remote host closed the connection) 2018-07-12T09:26:04Z nowhere_man joined #lisp 2018-07-12T09:27:20Z chiyosaki joined #lisp 2018-07-12T09:27:20Z chiyosaki quit (Client Quit) 2018-07-12T09:28:27Z saki quit (Ping timeout: 268 seconds) 2018-07-12T09:30:32Z saki joined #lisp 2018-07-12T09:31:06Z nowhere_man quit (Remote host closed the connection) 2018-07-12T09:31:14Z kerframil joined #lisp 2018-07-12T09:32:27Z nowhere_man joined #lisp 2018-07-12T09:34:15Z cods joined #lisp 2018-07-12T09:34:51Z froggey quit (Ping timeout: 240 seconds) 2018-07-12T09:36:40Z froggey joined #lisp 2018-07-12T09:36:45Z froggey quit (Changing host) 2018-07-12T09:36:45Z froggey joined #lisp 2018-07-12T09:36:59Z cods quit (Changing host) 2018-07-12T09:36:59Z cods joined #lisp 2018-07-12T09:40:05Z Smokitch quit 2018-07-12T09:40:27Z saki quit (Ping timeout: 240 seconds) 2018-07-12T09:41:57Z _cosmonaut_ joined #lisp 2018-07-12T09:42:21Z saki joined #lisp 2018-07-12T09:43:23Z mrm is now known as l 2018-07-12T09:43:30Z l is now known as mrm 2018-07-12T09:45:37Z Smokitch joined #lisp 2018-07-12T09:46:22Z lumm joined #lisp 2018-07-12T09:48:02Z housel quit (Remote host closed the connection) 2018-07-12T09:48:28Z housel joined #lisp 2018-07-12T09:49:30Z elfmacs quit (Ping timeout: 256 seconds) 2018-07-12T09:50:49Z Smokitch quit 2018-07-12T09:51:16Z igemnace joined #lisp 2018-07-12T09:51:39Z xuxuru joined #lisp 2018-07-12T09:55:01Z brettgilio joined #lisp 2018-07-12T09:58:32Z lthms: hi 2018-07-12T09:58:53Z beach: Hello lthms. 2018-07-12T10:01:26Z beach: lthms: Are you new here? I don't recognize your nick. 2018-07-12T10:01:53Z lthms: I am indeed, I am here thanks to borodust 2018-07-12T10:02:01Z beach: Oh, OK. 2018-07-12T10:02:05Z beach: Welcome then. 2018-07-12T10:02:23Z lthms: thanks! 2018-07-12T10:04:17Z White_Flame: aeth: needing human involvement in a communications crossbar doesn't seem like the greatest idea... 2018-07-12T10:04:54Z White_Flame: "oh, I need to wait for the admin to notice the server's sldb window before my response gets returned" 2018-07-12T10:05:01Z xuxuru quit (Quit: xuxuru) 2018-07-12T10:05:14Z phoe: Afternoon 2018-07-12T10:05:59Z Kundry_Wag joined #lisp 2018-07-12T10:06:13Z beach: Hello phoe. 2018-07-12T10:06:48Z phoe: Hey beach - been a while. 2018-07-12T10:07:04Z phoe: I got sucked up by various things to do in life. 2018-07-12T10:07:06Z phoe: (again) 2018-07-12T10:07:11Z beach: Oh! 2018-07-12T10:07:22Z beach: Sorry to hear that (I guess). 2018-07-12T10:07:25Z lthms: i was wondering, has anyone here tried to write some async database code in common lisp? do you have anything to advice? 2018-07-12T10:07:36Z phoe: lthms: what kind of database do you mean? 2018-07-12T10:07:57Z lthms: anyone really, I don't have any strong opinion on the matter 2018-07-12T10:07:59Z phoe: beach: I'm alive, I just did things that I didn't really enjoy doing. The stuff that's required to function and such, but nothing really enjoyable. 2018-07-12T10:08:28Z varjag joined #lisp 2018-07-12T10:08:37Z phoe: lthms: that's a pretty big question when it comes to choosing databases though; what are your needs? what kind of data will you store? what functionality for modifying and retrieving it will you need? how is your data modeled and structured? 2018-07-12T10:08:51Z White_Flame: lthms: threads, messages, just the same as any other language. Just make sure your DB connector library is threadsafe 2018-07-12T10:09:17Z phoe: because there are object stores in pure Lisp, there are bindings to various SQL and NoSQL databases out there. 2018-07-12T10:09:47Z White_Flame: lthms: depending on your workload, maybe put your requests into a job queue and have some fixed number of DB connections pulling from it 2018-07-12T10:10:15Z White_Flame: but again, that's no different in Lisp than any other language 2018-07-12T10:10:45Z phoe: well, yeah, I've been using postgres recently and it's just a matter of making ten connections to the database, and suddenly you can have ten DB queries running at once. 2018-07-12T10:11:00Z nowhere_man quit (Ping timeout: 268 seconds) 2018-07-12T10:11:05Z Kundry_Wag quit (Ping timeout: 276 seconds) 2018-07-12T10:11:30Z lthms: phoe: which lib did you use to use postgres? I saw there are plenty 2018-07-12T10:11:52Z phoe: lthms: postmodern 2018-07-12T10:12:14Z phoe: I saw it used very commonly around here 2018-07-12T10:14:30Z brettgilio quit (Remote host closed the connection) 2018-07-12T10:14:37Z antoszka: Yeah, I second postmodern. 2018-07-12T10:16:03Z brettgilio joined #lisp 2018-07-12T10:16:14Z brettgilio quit (Remote host closed the connection) 2018-07-12T10:16:17Z lthms: okay, I will try to have a look. Thanks! 2018-07-12T10:16:49Z phoe: lthms: no problem 2018-07-12T10:17:00Z phoe: ask us any questions you might have 2018-07-12T10:19:46Z markoong joined #lisp 2018-07-12T10:19:46Z random-nick joined #lisp 2018-07-12T10:20:32Z random-nick quit (Remote host closed the connection) 2018-07-12T10:21:59Z random-nick joined #lisp 2018-07-12T10:23:30Z vlatkoB_ joined #lisp 2018-07-12T10:23:39Z random-nick quit (Client Quit) 2018-07-12T10:25:51Z random-nick joined #lisp 2018-07-12T10:26:33Z random-nick quit (Read error: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number) 2018-07-12T10:27:12Z vlatkoB quit (Ping timeout: 265 seconds) 2018-07-12T10:28:44Z random-nick joined #lisp 2018-07-12T10:39:57Z housel quit (Remote host closed the connection) 2018-07-12T10:44:42Z quazimodo quit (Ping timeout: 244 seconds) 2018-07-12T10:45:10Z quazimodo joined #lisp 2018-07-12T10:48:00Z raynold quit (Quit: Connection closed for inactivity) 2018-07-12T10:48:36Z Smokitch joined #lisp 2018-07-12T10:52:34Z kerframil left #lisp 2018-07-12T10:59:54Z pagnol quit (Ping timeout: 260 seconds) 2018-07-12T11:00:23Z AetherWind quit (Quit: Leaving) 2018-07-12T11:02:56Z SaganMan joined #lisp 2018-07-12T11:03:44Z mathrick quit (Ping timeout: 276 seconds) 2018-07-12T11:04:41Z random-nick quit (Remote host closed the connection) 2018-07-12T11:08:39Z _cosmonaut_ quit (Ping timeout: 260 seconds) 2018-07-12T11:14:44Z ebrasca: Can I do someting like in unix? 2018-07-12T11:14:45Z ebrasca: (with-open-file (file #P "/dev/sdc1") 2018-07-12T11:14:45Z ebrasca: (loop :repeat 10 :do (write-byte (read-byte file)))) 2018-07-12T11:17:03Z Josh_2 joined #lisp 2018-07-12T11:17:22Z milanj quit (Quit: This computer has gone to sleep) 2018-07-12T11:19:19Z loke: ebrasca: cat? 2018-07-12T11:19:36Z loke: You want to cat the first 10 bytes of /dev/sdc? 2018-07-12T11:19:39Z ebrasca: How to read files like /dev/sdc1 or /dev/random with pure common lisp? 2018-07-12T11:20:03Z loke: ebrasca: What you did should work 2018-07-12T11:20:15Z loke: it doesn/t 2018-07-12T11:20:16Z loke: ? 2018-07-12T11:20:34Z ebrasca: # is not a binary input stream. 2018-07-12T11:21:03Z ebrasca: I like to make my fat32 portable. 2018-07-12T11:21:14Z loke: ebrasca: (with-open-file (s #p"..." :element-type '(unsigned-byte 8)) ...) 2018-07-12T11:22:35Z Kundry_Wag joined #lisp 2018-07-12T11:22:54Z ebrasca: loke: Thank you. 2018-07-12T11:27:08Z Kundry_Wag quit (Ping timeout: 265 seconds) 2018-07-12T11:29:44Z varjag quit (Ping timeout: 276 seconds) 2018-07-12T11:30:41Z ebrasca quit (Ping timeout: 244 seconds) 2018-07-12T11:34:03Z milanj joined #lisp 2018-07-12T11:35:37Z ebrasca joined #lisp 2018-07-12T11:41:21Z brettgilio joined #lisp 2018-07-12T11:42:45Z nowhere_man joined #lisp 2018-07-12T11:46:04Z varjag joined #lisp 2018-07-12T11:47:52Z shrdlu68 joined #lisp 2018-07-12T11:49:54Z angular_mike_ quit 2018-07-12T11:50:39Z varjag quit (Ping timeout: 260 seconds) 2018-07-12T11:52:15Z elfmacs joined #lisp 2018-07-12T11:53:05Z shrdlu68 quit (Ping timeout: 248 seconds) 2018-07-12T11:53:40Z brettgilio quit (Remote host closed the connection) 2018-07-12T11:53:58Z angular_mike_2 joined #lisp 2018-07-12T11:55:17Z random-nick joined #lisp 2018-07-12T11:56:55Z random-nick quit (Read error: Connection reset by peer) 2018-07-12T12:03:05Z pagnol joined #lisp 2018-07-12T12:06:39Z random-nick joined #lisp 2018-07-12T12:09:54Z shrdlu68 joined #lisp 2018-07-12T12:11:07Z jmercouris joined #lisp 2018-07-12T12:12:18Z jmercouris: I'm trying to take a long string, and split it into stringths of a max length, but only at word boundaries 2018-07-12T12:12:32Z jmercouris: so something like "this is a very long string" could split at "a" 2018-07-12T12:12:38Z pierpal quit (Quit: Poof) 2018-07-12T12:12:48Z jmercouris: rather than splittin in between "ve" and "ry" from "very" 2018-07-12T12:12:55Z jmercouris: s/splittin/splitting 2018-07-12T12:12:56Z pierpal joined #lisp 2018-07-12T12:14:41Z jmercouris: any lib anyone know of? or will I have to implement this? 2018-07-12T12:15:28Z Posterdati quit (Ping timeout: 265 seconds) 2018-07-12T12:16:48Z Xach: jmercouris: i don't know of a public library 2018-07-12T12:17:32Z jmercouris: Interestingly enough, I am asking because I want to make "pargraphs" of text in Vecto 2018-07-12T12:17:47Z Xach: I have done that so many times for my graphics toys. 2018-07-12T12:17:55Z jmercouris: Do you have a snippet you can share? 2018-07-12T12:18:04Z igemnace quit (Ping timeout: 260 seconds) 2018-07-12T12:18:18Z Xach: The general strategy I use is to categorize characters as breakable, then add words, and when a threshold is reached, go back to the last breakable character. 2018-07-12T12:18:19Z TMA: jmercouris: if it is meant for human consumption, I recomend you to look up the algorithm used in TeX. 2018-07-12T12:18:31Z Xach: So a space is breakable, in some contexts a hyphen is breakable 2018-07-12T12:18:57Z jmercouris: TMA: it is meant for humans, but not really, it is just a legal requirement, nobody reads it 2018-07-12T12:19:52Z Xach: jmercouris: https://www.xach.com/tmp/paginator.lisp 2018-07-12T12:19:59Z TMA: jmercouris: then use a long line with a scrollbar :) 2018-07-12T12:20:17Z shrdlu68 quit (Ping timeout: 244 seconds) 2018-07-12T12:20:28Z jmercouris: Xach: Thank you 2018-07-12T12:20:31Z jmercouris: TMA: I have to produce a graphic 2018-07-12T12:20:39Z jmercouris: For printed purposes 2018-07-12T12:20:40Z Xach: jmercouris: that generic algorithm can be used to break arbitrary things into lines. 2018-07-12T12:21:13Z shrdlu68 joined #lisp 2018-07-12T12:21:51Z LdBeth: TeX use the notion “badness” to break lines 2018-07-12T12:22:41Z jmercouris: So I have to transform my strings into a list of objects? 2018-07-12T12:23:30Z Kundry_Wag joined #lisp 2018-07-12T12:23:33Z Xach: jmercouris: Who is that question for? 2018-07-12T12:23:37Z jmercouris: Xach: For you 2018-07-12T12:23:55Z jmercouris: because I see these defgenerics, and I assume I have to implement methods for them 2018-07-12T12:24:20Z Xach: jmercouris: You could specialize them on characters, and use other context to give meaning to "width". 2018-07-12T12:24:55Z Xach: jmercouris: https://www.xach.com/tmp/glyphlayout.lisp shows how i used it for http://wigflip.com/minifesto/ 2018-07-12T12:26:35Z shrdlu68 quit (Ping timeout: 240 seconds) 2018-07-12T12:27:02Z jmercouris: Hmm, I see 2018-07-12T12:27:18Z jmercouris: Okay, I understand 2018-07-12T12:27:21Z shrdlu68 joined #lisp 2018-07-12T12:27:26Z jmercouris: I think I will write my own implementation, for the educational value 2018-07-12T12:27:45Z jmercouris: thanks for the example Xach 2018-07-12T12:28:17Z Kundry_Wag quit (Ping timeout: 248 seconds) 2018-07-12T12:29:04Z wigust- joined #lisp 2018-07-12T12:29:26Z Smokitch quit 2018-07-12T12:31:33Z wigust quit (Ping timeout: 264 seconds) 2018-07-12T12:33:55Z Arcaelyx quit (Quit: Textual IRC Client: www.textualapp.com) 2018-07-12T12:34:19Z LiamH joined #lisp 2018-07-12T12:35:27Z shrdlu68 quit (Ping timeout: 240 seconds) 2018-07-12T12:36:09Z brettgilio joined #lisp 2018-07-12T12:36:34Z shrdlu68 joined #lisp 2018-07-12T12:37:03Z shrdlu68 quit (Client Quit) 2018-07-12T12:47:09Z xrash quit (Ping timeout: 244 seconds) 2018-07-12T12:51:11Z m00natic joined #lisp 2018-07-12T12:52:07Z mindCrime joined #lisp 2018-07-12T13:00:25Z brettgilio quit (Ping timeout: 265 seconds) 2018-07-12T13:01:39Z Murii_ joined #lisp 2018-07-12T13:02:19Z thuffir joined #lisp 2018-07-12T13:03:43Z Bike joined #lisp 2018-07-12T13:04:01Z dlowe: I have a really amazingly awful but extremely succinct thing that will do it 2018-07-12T13:04:24Z brettgilio joined #lisp 2018-07-12T13:06:31Z dlowe: (cl-ppcre:all-matches-as-strings "\\S(?:\\S{0,79}|.{0,79}(?=\\s+|$))" str) 2018-07-12T13:06:55Z dlowe: replace 79 with whatever width you want. 2018-07-12T13:07:45Z antoszka: what are you catching with that regex? 2018-07-12T13:07:45Z dlowe: I managed to work that out for a tiny irc client I wrote. I needed something to break long titles in a tooltip 2018-07-12T13:07:55Z dlowe: antoszka: bugs :D 2018-07-12T13:08:00Z antoszka: ah 2018-07-12T13:08:05Z dlowe: nothing, actually 2018-07-12T13:08:17Z dlowe: (?: starts a non-capturing group 2018-07-12T13:08:56Z dlowe: (?= is a positive lookahead 2018-07-12T13:11:19Z dlowe: The main work is done by .{0,79}(?=\s+|$) which says, basically, any number of characters up to 79 which is followed by a space or end of line. 2018-07-12T13:11:37Z stnutt quit (Ping timeout: 260 seconds) 2018-07-12T13:11:57Z acolarh quit (Ping timeout: 240 seconds) 2018-07-12T13:13:22Z stnutt joined #lisp 2018-07-12T13:13:32Z brettgilio quit (Quit: Leaving) 2018-07-12T13:14:03Z jackdaniel: mm, regexp 2018-07-12T13:14:11Z thuffir quit (Ping timeout: 256 seconds) 2018-07-12T13:17:37Z Kundry_Wag joined #lisp 2018-07-12T13:18:17Z stnutt quit (Ping timeout: 276 seconds) 2018-07-12T13:20:35Z orivej joined #lisp 2018-07-12T13:20:44Z stnutt joined #lisp 2018-07-12T13:24:06Z Folkol_ joined #lisp 2018-07-12T13:25:23Z acolarh joined #lisp 2018-07-12T13:26:58Z stnutt quit (Ping timeout: 260 seconds) 2018-07-12T13:28:29Z warweasle joined #lisp 2018-07-12T13:28:36Z stnutt joined #lisp 2018-07-12T13:29:49Z dlowe: \S{0,79} captures the case where there wasn't any space, so it just breaks it at the boundary 2018-07-12T13:32:03Z patlv joined #lisp 2018-07-12T13:35:14Z Inline joined #lisp 2018-07-12T13:37:35Z Posterdati joined #lisp 2018-07-12T13:37:51Z kajo quit (Ping timeout: 240 seconds) 2018-07-12T13:48:15Z karlosz joined #lisp 2018-07-12T13:54:02Z PinealGlandOptic quit (Quit: leaving) 2018-07-12T13:56:05Z isospin left #lisp 2018-07-12T13:58:21Z _cosmonaut_ joined #lisp 2018-07-12T13:58:59Z sjl_ joined #lisp 2018-07-12T13:59:22Z karlosz quit (Quit: karlosz) 2018-07-12T14:02:17Z kuwze joined #lisp 2018-07-12T14:07:27Z pagnol quit (Ping timeout: 240 seconds) 2018-07-12T14:22:21Z patlv left #lisp 2018-07-12T14:30:08Z pfdietz quit 2018-07-12T14:31:37Z surya_ quit (Remote host closed the connection) 2018-07-12T14:32:24Z crsc joined #lisp 2018-07-12T14:35:51Z elfmacs quit (Ping timeout: 240 seconds) 2018-07-12T14:36:02Z jmercouris quit (Remote host closed the connection) 2018-07-12T14:36:18Z jmercouris joined #lisp 2018-07-12T14:36:25Z Folkol_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-12T14:36:52Z jmercouris: how can I do (loop for item in list do ...) and also have an index? e.g. a count of how many elements I've iterated? 2018-07-12T14:37:03Z jmercouris: is there something in the loop macro, or do I need a separate counter? 2018-07-12T14:39:26Z flamebeard quit 2018-07-12T14:40:09Z beach: (loop for item in list for index from 0 do...) 2018-07-12T14:40:28Z jmercouris: Thanks 2018-07-12T14:40:33Z beach: Sure. 2018-07-12T14:40:34Z jmercouris: I literally just figured it out just before you said it 2018-07-12T14:40:41Z jmercouris: I didn't realize that you could have multiple for clauses 2018-07-12T14:40:47Z TMA: jmercouris: add another for clause: (loop for i in '(a b c) for j from 1 collect (cons i j)) 2018-07-12T14:40:51Z beach: clhs loop 2018-07-12T14:40:51Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/m_loop.htm 2018-07-12T14:41:18Z jmercouris: but I also had written my second for clause stupidly 2018-07-12T14:41:23Z beach: jmercouris: See that page? ↑ 2018-07-12T14:41:34Z jmercouris: I had written "for index from 1 to (length list)" 2018-07-12T14:41:42Z jmercouris: I see that page, but I don't understand its grammar 2018-07-12T14:41:43Z beach: jmercouris: See the * in {variable-clause}* 2018-07-12T14:42:05Z beach: jmercouris: That's the Kleene star. 2018-07-12T14:42:09Z jmercouris: I see that star 2018-07-12T14:42:16Z beach: jmercouris: meaning 0 or more occurences. 2018-07-12T14:42:20Z beach: occurrences. 2018-07-12T14:42:30Z beach: jmercouris: It is standard in language theory. 2018-07-12T14:42:48Z beach: jmercouris: Similarly, + means 1 or more occurrences. 2018-07-12T14:43:08Z beach: jmercouris: So there can be 0 or more VARIABLE-CLAUSEs. 2018-07-12T14:43:23Z jmercouris: Okay, so far I am following 2018-07-12T14:43:33Z beach: jmercouris: And a VARIABLE-CLAUSE can be a FOR-AS-CLAUSE. 2018-07-12T14:44:07Z jmercouris: that's from this line: variable-clause::= with-clause | initial-final | for-as-clause 2018-07-12T14:44:07Z jmercouris: ? 2018-07-12T14:44:13Z beach: jmercouris: So you can have as many FOR-AS-CLAUSes as you like. 2018-07-12T14:44:17Z beach: Yes. 2018-07-12T14:44:29Z beach: The vertical bar means OR in BNF. 2018-07-12T14:44:45Z jmercouris: Ah, this is a BNF grammar, right I remember we talked about this months ago 2018-07-12T14:44:51Z beach: BNF means Backus Naur Form 2018-07-12T14:44:54Z jmercouris: I don't remember under what context 2018-07-12T14:45:01Z jmercouris: I'm familiar, and I even knew it at one point 2018-07-12T14:45:07Z jmercouris: I was playing a lot with lex and yacc, and wrote a lisp in C 2018-07-12T14:45:38Z k4rtik joined #lisp 2018-07-12T14:45:44Z jmercouris: IIRC the CLHS is not a pure BNF they have some different syntax? 2018-07-12T14:45:46Z beach: jmercouris: Notice also that every VARIABLE-CLAUSE must precede every MAIN-CLAUSE. 2018-07-12T14:46:15Z beach: So you can't have a FOR-AS after a WHILE clause, for example. 2018-07-12T14:46:21Z jmercouris: ah, so all the VARIABLE-CLAUSEs must appear before the MAIN CLAUSES 2018-07-12T14:46:43Z beach: clhs 1.4.1.2 2018-07-12T14:46:43Z specbot: Modified BNF Syntax: http://www.lispworks.com/reference/HyperSpec/Body/01_dab.htm 2018-07-12T14:46:45Z jmercouris: and you know this because of this line: [name-clause] {variable-clause}* {main-clause}*? 2018-07-12T14:46:52Z beach: jmercouris: Yes. 2018-07-12T14:47:02Z jmercouris: because the * means 0 or more 2018-07-12T14:47:22Z beach: No, because main-clause follows variable-clause in the order. 2018-07-12T14:47:29Z beach: The order is important unless the notation is used that says it isn't. 2018-07-12T14:47:33Z beach: Standard BNF again. 2018-07-12T14:47:33Z jmercouris: Yes, yes 2018-07-12T14:47:40Z jmercouris: Sorry my thoughts weren't well formed 2018-07-12T14:47:42Z jmercouris: but Yes, I get it 2018-07-12T14:47:53Z jmercouris: and then a main clause can be composed of: main-clause::= unconditional | accumulation | conditional | termination-test | initial-final ? 2018-07-12T14:47:56Z jmercouris: which are then also defined below 2018-07-12T14:48:05Z beach: You got it. 2018-07-12T14:48:15Z jmercouris: Aha, I got it indeed 2018-07-12T14:48:29Z jmercouris: Okay, I finally know how to read this page 2018-07-12T14:48:34Z beach: Great! 2018-07-12T14:48:36Z jmercouris: only about 16 or so months in :D 2018-07-12T14:48:39Z jmercouris: maybe less, not sure 2018-07-12T14:48:42Z jmercouris: Thank you! 2018-07-12T14:48:47Z beach: Anytime. 2018-07-12T14:48:51Z beach: I consider it an investement. 2018-07-12T14:48:55Z beach: investment 2018-07-12T14:49:06Z jmercouris: Maybe I'll write a blog post then :P 2018-07-12T14:49:20Z jmercouris: perhaps help some others who have no idea what that stuff means 2018-07-12T14:49:26Z thuffir joined #lisp 2018-07-12T14:50:28Z Smokitch joined #lisp 2018-07-12T14:50:54Z shifty quit (Ping timeout: 260 seconds) 2018-07-12T14:51:42Z scymtym_ joined #lisp 2018-07-12T14:52:19Z jack_rabbit quit (Quit: Leaving) 2018-07-12T14:52:22Z beach: The latter point was what I was referring to. 2018-07-12T14:52:27Z k4rtik quit (Ping timeout: 240 seconds) 2018-07-12T14:52:52Z jmercouris: gotcha, it is good at least that there is a chat log to persist some domain knowledge 2018-07-12T14:53:00Z jmercouris: even if other publications are never made 2018-07-12T14:53:50Z scymtym quit (Ping timeout: 276 seconds) 2018-07-12T14:54:13Z beach: I guess so. In this case, though, there is no additional information compared to the Common Lisp HyperSpec. 2018-07-12T15:03:36Z FreeBirdLjj joined #lisp 2018-07-12T15:04:55Z fikka joined #lisp 2018-07-12T15:05:31Z beach: YAY! My Common Lisp implementation of Doug Lea's allocator algorithm just passed the test consisting of 10 million randomly generated ALLOCATE and FREE operations. 2018-07-12T15:05:57Z thuffir quit (Ping timeout: 240 seconds) 2018-07-12T15:06:30Z shka: beach: goooooooooood 2018-07-12T15:06:37Z beach: I use two basic operations, one for reading a memory location and one for writing a memory location. In the test, I am simulating those operations by reading and writing to a Common Lisp vector. 2018-07-12T15:07:32Z beach: In a real system, those would be replaced by special operators that actually read and write memory. 2018-07-12T15:09:17Z beach: So much for the idea that it is impossible to write memory allocators, garbage collectors, etc., in Common Lisp. 2018-07-12T15:10:34Z DingoSaar joined #lisp 2018-07-12T15:11:46Z zigpaw: I wonder how lisp machines had gc implemented? 2018-07-12T15:12:35Z beach: I am guessing in a similar way. They must have had Lisp function able to access raw memory. 2018-07-12T15:14:08Z beach: But the GC technique they used was not great if I understand things right. 2018-07-12T15:14:33Z beach: There has been considerable progress in garbage collection since, mainly thanks to Java. 2018-07-12T15:14:37Z shka: it was 80s 2018-07-12T15:15:02Z shka: don't expect to much 2018-07-12T15:15:44Z beach: I think I read somewhere that it was faster to reboot than to wait for the GC. 2018-07-12T15:15:54Z shka: impossible 2018-07-12T15:16:02Z shka: lisp machines took forever to boot 2018-07-12T15:16:22Z beach: I guess I must be misremembering then. 2018-07-12T15:19:36Z robotoad joined #lisp 2018-07-12T15:20:13Z josemanuel joined #lisp 2018-07-12T15:20:47Z edgar-rft joined #lisp 2018-07-12T15:27:12Z MoziM quit (Quit: WeeChat 2.1) 2018-07-12T15:27:28Z MoziM joined #lisp 2018-07-12T15:28:00Z ravndal quit (Quit: WeeChat 2.1) 2018-07-12T15:29:41Z ravndal joined #lisp 2018-07-12T15:31:27Z nimiux_ quit (Ping timeout: 244 seconds) 2018-07-12T15:31:38Z lumm_ joined #lisp 2018-07-12T15:31:40Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-12T15:31:46Z lumm quit (Ping timeout: 256 seconds) 2018-07-12T15:31:46Z joast quit (Quit: Leaving.) 2018-07-12T15:32:14Z lumm_ is now known as lumm 2018-07-12T15:33:49Z nimiux joined #lisp 2018-07-12T15:34:32Z pagnol joined #lisp 2018-07-12T15:37:45Z karlosz joined #lisp 2018-07-12T15:39:23Z thuffir joined #lisp 2018-07-12T15:39:52Z Achylles joined #lisp 2018-07-12T15:40:17Z housel joined #lisp 2018-07-12T15:41:47Z fikka quit (Ping timeout: 244 seconds) 2018-07-12T15:42:26Z phoe: sigh 2018-07-12T15:42:32Z mathrick joined #lisp 2018-07-12T15:43:03Z Achylles quit (Remote host closed the connection) 2018-07-12T15:43:35Z thuffir quit (Ping timeout: 240 seconds) 2018-07-12T15:43:51Z phoe: I wanted to chain individual tasks together into a bigger flow 2018-07-12T15:44:01Z phoe: And I ended up yak shaving a separate library for that 2018-07-12T15:47:47Z graphene quit (Remote host closed the connection) 2018-07-12T15:49:05Z graphene joined #lisp 2018-07-12T15:50:24Z nowhere_man quit (Ping timeout: 260 seconds) 2018-07-12T15:53:15Z joast joined #lisp 2018-07-12T15:55:15Z jasom quit (Ping timeout: 245 seconds) 2018-07-12T15:57:48Z jasom joined #lisp 2018-07-12T15:58:13Z skapata joined #lisp 2018-07-12T15:58:56Z eli_oat joined #lisp 2018-07-12T16:01:25Z pagnol quit (Ping timeout: 244 seconds) 2018-07-12T16:04:48Z k4rtik joined #lisp 2018-07-12T16:10:54Z pseudonymous_ joined #lisp 2018-07-12T16:12:48Z FreeBirdLjj joined #lisp 2018-07-12T16:13:59Z karlosz quit (Quit: karlosz) 2018-07-12T16:14:33Z thuffir joined #lisp 2018-07-12T16:16:06Z pjb joined #lisp 2018-07-12T16:17:18Z zmt00 joined #lisp 2018-07-12T16:18:03Z fikka joined #lisp 2018-07-12T16:19:29Z swampflared quit (Ping timeout: 256 seconds) 2018-07-12T16:21:21Z FreeBirdLjj quit (Ping timeout: 248 seconds) 2018-07-12T16:22:36Z fikka quit (Ping timeout: 244 seconds) 2018-07-12T16:22:52Z mflem joined #lisp 2018-07-12T16:24:29Z igemnace joined #lisp 2018-07-12T16:32:27Z jmercouris quit (Ping timeout: 240 seconds) 2018-07-12T16:33:19Z fikka joined #lisp 2018-07-12T16:36:27Z thuffir quit (Ping timeout: 240 seconds) 2018-07-12T16:36:32Z troydm quit (Quit: What is Hope? That all of your wishes and all of your dreams come true? To turn back time because things were not supposed to happen like that (C) Rau Le Creuset) 2018-07-12T16:37:14Z zmt01 joined #lisp 2018-07-12T16:37:37Z raynold joined #lisp 2018-07-12T16:38:16Z fikka quit (Ping timeout: 268 seconds) 2018-07-12T16:39:57Z zmt00 quit (Ping timeout: 240 seconds) 2018-07-12T16:40:18Z jmercouris joined #lisp 2018-07-12T16:40:59Z swampflared joined #lisp 2018-07-12T16:44:26Z zmt01 quit (Ping timeout: 268 seconds) 2018-07-12T16:45:03Z fikka joined #lisp 2018-07-12T16:45:03Z hhdave quit (Ping timeout: 268 seconds) 2018-07-12T16:45:35Z shka_ joined #lisp 2018-07-12T16:46:35Z pierpal quit (Quit: Poof) 2018-07-12T16:46:51Z pierpal joined #lisp 2018-07-12T16:47:19Z zmt01 joined #lisp 2018-07-12T16:49:14Z cage_ joined #lisp 2018-07-12T16:49:28Z fikka quit (Ping timeout: 244 seconds) 2018-07-12T16:50:29Z bjorkintosh joined #lisp 2018-07-12T16:50:30Z swampflared quit (Ping timeout: 244 seconds) 2018-07-12T16:52:26Z fikka joined #lisp 2018-07-12T16:54:33Z thuffir joined #lisp 2018-07-12T16:54:53Z jmercouris quit (Remote host closed the connection) 2018-07-12T16:56:46Z Tristam quit (Ping timeout: 264 seconds) 2018-07-12T16:57:11Z FreeBirdLjj joined #lisp 2018-07-12T16:59:13Z Tristam joined #lisp 2018-07-12T17:01:19Z Tristam quit (Excess Flood) 2018-07-12T17:01:46Z Tristam joined #lisp 2018-07-12T17:02:39Z silverbeard00 joined #lisp 2018-07-12T17:05:19Z m00natic quit (Remote host closed the connection) 2018-07-12T17:06:27Z thuffir quit (Ping timeout: 240 seconds) 2018-07-12T17:08:11Z Kaisyu quit (Quit: Connection closed for inactivity) 2018-07-12T17:10:03Z silverbeard00 quit (Quit: BitchX-1.2.1-377-gd4c6123 -- just do it.) 2018-07-12T17:10:53Z milanj quit (Quit: This computer has gone to sleep) 2018-07-12T17:14:48Z graphene quit (Read error: Connection reset by peer) 2018-07-12T17:16:07Z graphene joined #lisp 2018-07-12T17:19:24Z thuffir joined #lisp 2018-07-12T17:23:44Z thuffir quit (Ping timeout: 260 seconds) 2018-07-12T17:25:46Z graphene quit (Remote host closed the connection) 2018-07-12T17:26:59Z graphene joined #lisp 2018-07-12T17:29:09Z milanj joined #lisp 2018-07-12T17:29:25Z thuffir joined #lisp 2018-07-12T17:31:06Z pierpal quit (Quit: Poof) 2018-07-12T17:31:23Z pierpal joined #lisp 2018-07-12T17:34:14Z thuffir quit (Ping timeout: 260 seconds) 2018-07-12T17:36:05Z thuffir joined #lisp 2018-07-12T17:42:08Z kaun joined #lisp 2018-07-12T17:43:01Z j0ni joined #lisp 2018-07-12T17:47:47Z graphene quit (Read error: Connection reset by peer) 2018-07-12T17:48:10Z lumm_ joined #lisp 2018-07-12T17:49:04Z graphene joined #lisp 2018-07-12T17:49:22Z PJ_ joined #lisp 2018-07-12T17:50:03Z pierpal quit (Read error: Connection reset by peer) 2018-07-12T17:50:28Z zooey quit (Remote host closed the connection) 2018-07-12T17:50:37Z varjag joined #lisp 2018-07-12T17:50:49Z zooey joined #lisp 2018-07-12T17:51:27Z lumm quit (Ping timeout: 240 seconds) 2018-07-12T17:51:28Z lumm_ is now known as lumm 2018-07-12T17:52:34Z fikka quit (Ping timeout: 264 seconds) 2018-07-12T17:52:38Z pierpal joined #lisp 2018-07-12T17:52:45Z PJ_: I am considering learning common lisp, as I really like the lisp paradigm. However, I am starting to do a lot more high-level GPU work, what are the recommended GPU options for common lisp that are readily maintained? Also is openacc a possibility? 2018-07-12T17:53:42Z stacksmith: CEPL if you are talking about rendering... 2018-07-12T17:57:26Z PJ_: not really rendering, ie not gaming/images etc. More compute on the GPU, linear algebra and other big compute 2018-07-12T17:59:19Z thuffir quit (Ping timeout: 260 seconds) 2018-07-12T17:59:26Z TMA: PJ_: you need to use GPU driver libraries that have C (or C++) in mind. anything else is an uphill battle -- and that includes the popular python bindings for the machine learning on GPU 2018-07-12T17:59:54Z kuwze quit (Ping timeout: 252 seconds) 2018-07-12T18:02:07Z PJ_: @TMA thanks, that seems to be my main barrier to entry. Currently doing a lot of deeplearning, machine learning and general data analysis in python. This is great, but I would like to 2018-07-12T18:02:53Z TMA: PJ_: it can be done in common lisp, the interactive development is certainly great, but it has its cost too 2018-07-12T18:03:36Z PJ_: use the expressiveness of lisp in some cases. Dabbled in clojure and I liked the lisp way :), but GPUs are becoming more and more prevalent. 2018-07-12T18:05:57Z lumm quit (Ping timeout: 240 seconds) 2018-07-12T18:06:26Z pagnol joined #lisp 2018-07-12T18:08:37Z TMA: PJ_: nowadays it is similar to the driver support early this century: if you wanted to use the hardware, you had to use microsoft windows or write your own. today the gpu support for non-c/c++ languages is the same: write your own;; it has been done already, but do not expect mainstream-level support available 2018-07-12T18:09:03Z blackwolf joined #lisp 2018-07-12T18:14:21Z phoe: Is there a SET-SUM function anywhere? Something that's an analogue of SET-DIFFERENCE. 2018-07-12T18:14:31Z phoe: (set-sum '(1 2 3) (2 3 4)) ;=> (1 2 3 4) 2018-07-12T18:14:54Z phoe: Something perhaps more efficient than REMOVE-DUPLICATES APPEND. 2018-07-12T18:16:09Z trittweiler: clhs union 2018-07-12T18:16:09Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_unionc.htm 2018-07-12T18:17:12Z phoe: oooh right 2018-07-12T18:17:24Z phoe: I was thinking that it would be named SET-UNION for some reason. 2018-07-12T18:17:36Z thuffir joined #lisp 2018-07-12T18:23:27Z _cosmonaut_ quit (Ping timeout: 240 seconds) 2018-07-12T18:26:35Z pjb: PJ_: have a look at cl-cuda. 2018-07-12T18:27:01Z pjb: phoe: it's called UNION ! 2018-07-12T18:27:13Z pjb: and of course, there's also INTERSECTION. 2018-07-12T18:27:33Z graphene quit (Remote host closed the connection) 2018-07-12T18:28:50Z graphene joined #lisp 2018-07-12T18:29:16Z pjb: phoe: that said, if you want more efficiency, use bit-vectors or integers. 2018-07-12T18:30:18Z pjb: (logior #b0111 #b1110) #| --> 15 |# and (bit-ior #*0111 #*1110) #| --> #*1111 |# are basically O(1). 2018-07-12T18:31:22Z PJ_: @pjb cl-cuda looks great, it does seem more lower level though, if there isn't a higher level alternative, then it seems that may be the way to go. Just more stuff to learn :) 2018-07-12T18:31:33Z thuffir quit (Ping timeout: 264 seconds) 2018-07-12T18:34:58Z scymtym_: PJ_: maybe https://github.com/melisgl/mgl-mat is interesting for you 2018-07-12T18:35:46Z scymtym_: and of course https://github.com/melisgl/mgl 2018-07-12T18:36:01Z troydm joined #lisp 2018-07-12T18:36:49Z thuffir joined #lisp 2018-07-12T18:38:59Z varjagg joined #lisp 2018-07-12T18:41:05Z thuffir quit (Ping timeout: 240 seconds) 2018-07-12T18:41:09Z varjag quit (Ping timeout: 264 seconds) 2018-07-12T18:41:36Z subroot joined #lisp 2018-07-12T18:42:06Z phoe: I have a graph described by a list of edges. Which library-and-function should I use to check if the graph contains cycles? 2018-07-12T18:43:20Z phoe: Oh right, the graph's directed. 2018-07-12T18:43:33Z varjagg is now known as varjag 2018-07-12T18:44:27Z thuffir joined #lisp 2018-07-12T18:46:46Z lumm joined #lisp 2018-07-12T18:46:53Z kaun: Can the runtime detect trivial cycles in a linked list? 2018-07-12T18:47:18Z phoe: kaun: what do you mean, runtime? 2018-07-12T18:47:22Z phoe: And what do you mean, trivial cycles? 2018-07-12T18:47:36Z jasom: PJ_: you may also consider looking at clasp, which was specifically designed for allowing lisp to drive C++ libraries (I've not used it myself though) 2018-07-12T18:47:55Z kaun: noob here, so, I assumed you can build a circular list using cons. 2018-07-12T18:48:45Z phoe: kaun: yes, you can do that 2018-07-12T18:48:51Z thuffir quit (Ping timeout: 240 seconds) 2018-07-12T18:48:51Z kaun: runtime? I should have said CL function. 2018-07-12T18:49:19Z phoe: (let ((cyclic-list (cons nil nil))) (setf (cdr cyclic-list) cyclic-list)) 2018-07-12T18:49:26Z phoe: be wary of printing that thing though 2018-07-12T18:49:33Z phoe: set *print-circle* to T before doing so 2018-07-12T18:50:08Z shka_: jasom: ecl 2018-07-12T18:50:41Z phoe: ecl interoperates best with C, not with C++ 2018-07-12T18:50:47Z phoe: (AFAIU) 2018-07-12T18:51:20Z kaun: Yeah, is there a CL function to detect the presence of a cycle? Maybe whatever *print-circle* nil would use? 2018-07-12T18:52:39Z slyrus_: phoe, epigraph:find-cycle maybe? 2018-07-12T18:52:51Z TMA: clhs length 2018-07-12T18:52:51Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_length.htm 2018-07-12T18:53:10Z kaun: hmmm 2018-07-12T18:54:03Z pjb: kaun: com.informatimago.common-lisp.cesarum.utility:topological-sort 2018-07-12T18:54:22Z thuffir joined #lisp 2018-07-12T18:54:36Z TMA: kaun: list-length returns nil for circular lists 2018-07-12T18:54:51Z pjb: kaun: unless you mean that you want to find cycles specifically in circular lists? 2018-07-12T18:55:03Z pjb: com.informatimago.common-lisp.cesarum.list:proper-list-p 2018-07-12T18:55:18Z pjb: com.informatimago.common-lisp.cesarum.list:list-lengths 2018-07-12T18:56:03Z phoe: slyrus_: I did not know that library 2018-07-12T18:56:04Z phoe: let me see 2018-07-12T18:56:06Z pjb: phoe: you want topological-sort. 2018-07-12T18:56:45Z pjb: or find-cycles which uses it. 2018-07-12T18:57:40Z kaun: pjb: yes, I meant circular lists? Can C 2018-07-12T18:57:44Z pjb: err, I'm wrong, find-cycles uses find-shortest-path, not topological-sort. 2018-07-12T18:57:55Z pjb: kaun: but phoe meant just graphs ;-) 2018-07-12T18:58:31Z kaun: doing a circular buffer with wrap-around 2018-07-12T18:58:47Z kaun: i was riffing off his question. 2018-07-12T18:58:50Z pjb: (cl:list-length '(a b . #1=(c d e))) #| --> 5 |# (com.informatimago.common-lisp.cesarum.list:list-lengths '(a b . #1=(c d e))) #| --> 5 ; 0 |# 2018-07-12T18:59:08Z kaun: his/her, sorry. 2018-07-12T18:59:33Z pjb: (cl:list-length '(a b . #1=(c d e . #1#))) #| --> nil |# (com.informatimago.common-lisp.cesarum.list:list-lengths '(a b . #1=(c d e . #1#))) #| --> 2 ; 3 |# 2018-07-12T18:59:40Z random-nick quit (Ping timeout: 244 seconds) 2018-07-12T18:59:54Z pjb: so you may prefer list-lengths, if you need to know where the cycle begins, and how long it is. 2018-07-12T19:00:40Z kaun: ok. cool, thanks. 2018-07-12T19:00:50Z pjb: phoe: it will depend on whether you want to find the cycles, or just to know if there are some. 2018-07-12T19:02:37Z cage_ quit (Quit: Leaving) 2018-07-12T19:02:47Z pjb: phoe: cf. https://github.com/informatimago/lisp/blob/master/tools/check-uses.lisp 2018-07-12T19:03:17Z pjb: and https://github.com/informatimago/lisp/blob/master/tools/dependency-cycles.lisp 2018-07-12T19:04:01Z phoe: pjb: I just want to detect them, I don't need to know what they are. 2018-07-12T19:04:09Z phoe: Or rather - I want to signal an error if there exists a cycle. 2018-07-12T19:04:21Z slyrus_: man, reading PEP 572 I'm glad I use a language that doesn't distinguish between expressions and statements. 2018-07-12T19:04:58Z pjb: (defun has-cycles-p (nodes lessp) (/= (length (topological-sort nodes lessp)) (length nodes))) 2018-07-12T19:05:12Z kaun quit 2018-07-12T19:06:07Z NoNumber left #lisp 2018-07-12T19:06:51Z pjb: slyrus: keep reading and try: (if (let ((match (match-re …))) (report-match match) (setf match (find-next match)) match) (do-it)) ;-) 2018-07-12T19:06:54Z thuffir quit (Ping timeout: 244 seconds) 2018-07-12T19:07:14Z pjb: slyrus_: python is just broken, they will have to write PEP forever. 2018-07-12T19:07:35Z pjb: Who would have believed they already have more than 572 of them!?!? 2018-07-12T19:08:52Z pjb: The max PEP number is 3333. There are only 972 symbols exported from CL! 2018-07-12T19:08:56Z jeosol joined #lisp 2018-07-12T19:09:03Z pjb: (there are holes, but still). 2018-07-12T19:09:18Z pjb: And they dare call it a language for beginners! 2018-07-12T19:09:55Z shka_: python is weirdly designed 2018-07-12T19:09:55Z nowhere_man joined #lisp 2018-07-12T19:09:55Z shka_: not sure if it is actually designed 2018-07-12T19:10:09Z thuffir joined #lisp 2018-07-12T19:10:31Z dlowe: are you referring to Python, the excellent compiler for Common Lisp? 2018-07-12T19:10:35Z k4rtik quit (Ping timeout: 276 seconds) 2018-07-12T19:10:35Z gector quit (Read error: Connection reset by peer) 2018-07-12T19:10:41Z dlowe: because that's on topic :p 2018-07-12T19:10:41Z shka_: eeeeee no 2018-07-12T19:10:44Z jeosol: morning guys 2018-07-12T19:11:00Z shka_: besides there was no compiler of common lisp called python as far i can tell 2018-07-12T19:11:09Z shka_: because there was no common lisp back then 2018-07-12T19:12:52Z nickenchuggets joined #lisp 2018-07-12T19:12:52Z nickenchuggets quit (Changing host) 2018-07-12T19:12:52Z nickenchuggets joined #lisp 2018-07-12T19:12:54Z dlowe: the cmucl native code compiler is called Python 2018-07-12T19:13:04Z fikka joined #lisp 2018-07-12T19:13:09Z dlowe: far preceding other popular uses 2018-07-12T19:13:15Z shka_: oh, ok 2018-07-12T19:13:26Z jeosol: is anyone here running a cl-web application with multiple users (requiring management of user permissions, control access, etc)? there is a preference for django but I will prefer CL is possible. This is will be production use. 2018-07-12T19:13:55Z shka_: jeosol: cl-web is some sort of framework? 2018-07-12T19:13:56Z jeosol: I wanted to consult the oracle before proposing anything ... :-) 2018-07-12T19:14:24Z jeosol: btw, I know of caveman2 and radiance 2018-07-12T19:14:33Z dlowe: jeosol: Reply hazy. Try again later. 2018-07-12T19:14:47Z shka_: didn't use caveman2 myself, radiance is cool 2018-07-12T19:14:55Z dlowe: jeosol: j/k 2018-07-12T19:15:21Z jeosol: shka_: thanks. 2018-07-12T19:16:05Z jeosol: would prefer an option that would handle a complicated piece of backend software. 2018-07-12T19:17:14Z fikka quit (Ping timeout: 244 seconds) 2018-07-12T19:20:16Z sukaeto: I've been pretty happy with caveman2 2018-07-12T19:22:44Z orivej quit (Ping timeout: 260 seconds) 2018-07-12T19:23:49Z EvW joined #lisp 2018-07-12T19:32:56Z jeosol: sukaeto: thanks for the input. Are you using this in some type production code? 2018-07-12T19:33:57Z sukaeto: jeosol: yes 2018-07-12T19:34:07Z sukaeto: it's an internal tool, so it doesn't have a ton of users 2018-07-12T19:34:12Z sukaeto: but it holds up quite nicely 2018-07-12T19:35:00Z sukaeto: since it's easy to use different backends with clack, it makes development convenient 2018-07-12T19:35:24Z sukaeto: you can just start a background thread using hunchentoot in your REPL, but set up workers using fcgi in prod 2018-07-12T19:35:36Z orivej joined #lisp 2018-07-12T19:36:22Z thuffir quit (Ping timeout: 264 seconds) 2018-07-12T19:38:58Z random-nick joined #lisp 2018-07-12T19:40:27Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2018-07-12T19:41:45Z warweasle quit (Quit: rcirc on GNU Emacs 24.4.1) 2018-07-12T19:44:42Z Smokitch quit 2018-07-12T19:48:51Z EvW quit (Ping timeout: 240 seconds) 2018-07-12T19:49:14Z Josh_2 quit (Quit: ERC (IRC client for Emacs 25.3.1)) 2018-07-12T19:53:04Z sjl_ quit (Ping timeout: 260 seconds) 2018-07-12T20:00:41Z jeosol: sakaeto: ok, it's the "setting workers piece" I'll need to learn/get into. 2018-07-12T20:01:06Z jeosol: also good to know caveman2 hold's nicely for your case. 2018-07-12T20:01:26Z graphene quit (Remote host closed the connection) 2018-07-12T20:02:47Z graphene joined #lisp 2018-07-12T20:03:02Z makomo joined #lisp 2018-07-12T20:07:04Z shka_ quit (Ping timeout: 260 seconds) 2018-07-12T20:07:24Z karlosz joined #lisp 2018-07-12T20:11:13Z sjl_ joined #lisp 2018-07-12T20:12:52Z sendai_ joined #lisp 2018-07-12T20:13:47Z DingoSaar quit (Remote host closed the connection) 2018-07-12T20:14:29Z DingoSaar joined #lisp 2018-07-12T20:16:11Z FreeBirdLjj joined #lisp 2018-07-12T20:16:34Z azimut quit (Ping timeout: 268 seconds) 2018-07-12T20:19:39Z aeth: White_Flame: Not human involvement at runtime, human involvement at programmer time. I meant the user of the library, not the user of the program. 2018-07-12T20:19:52Z hph^ quit (Remote host closed the connection) 2018-07-12T20:20:27Z hph^ joined #lisp 2018-07-12T20:20:28Z hph^ quit (Max SendQ exceeded) 2018-07-12T20:20:51Z hph^ joined #lisp 2018-07-12T20:20:51Z hph^ quit (Max SendQ exceeded) 2018-07-12T20:21:36Z hph^ joined #lisp 2018-07-12T20:21:36Z hph^ quit (Max SendQ exceeded) 2018-07-12T20:21:57Z hph^ joined #lisp 2018-07-12T20:21:58Z hph^ quit (Max SendQ exceeded) 2018-07-12T20:22:14Z MoziM quit (Ping timeout: 260 seconds) 2018-07-12T20:22:30Z hph^ joined #lisp 2018-07-12T20:22:31Z hph^ quit (Max SendQ exceeded) 2018-07-12T20:23:38Z FreeBirdLjj quit (Ping timeout: 265 seconds) 2018-07-12T20:24:17Z MoziM joined #lisp 2018-07-12T20:25:47Z DingoSaar quit (Remote host closed the connection) 2018-07-12T20:27:21Z karlosz quit (Quit: karlosz) 2018-07-12T20:27:30Z k4rtik joined #lisp 2018-07-12T20:29:34Z milanj quit (Quit: This computer has gone to sleep) 2018-07-12T20:31:35Z scymtym_ quit (Ping timeout: 240 seconds) 2018-07-12T20:33:48Z vlatkoB_ quit (Remote host closed the connection) 2018-07-12T20:34:04Z karlosz joined #lisp 2018-07-12T20:35:11Z xificurC quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2018-07-12T20:35:36Z Jesin joined #lisp 2018-07-12T20:36:09Z Josh_2 joined #lisp 2018-07-12T20:38:59Z karlosz quit (Ping timeout: 276 seconds) 2018-07-12T20:39:08Z nowhere_man quit (Remote host closed the connection) 2018-07-12T20:39:29Z nowhere_man joined #lisp 2018-07-12T20:39:35Z makomo quit (Ping timeout: 256 seconds) 2018-07-12T20:43:07Z angavrilov quit (Remote host closed the connection) 2018-07-12T20:46:54Z subroot quit (Read error: Connection reset by peer) 2018-07-12T20:47:08Z Lord_Nightmare quit (Ping timeout: 244 seconds) 2018-07-12T20:48:12Z PJ_ quit (Ping timeout: 252 seconds) 2018-07-12T20:52:29Z scymtym joined #lisp 2018-07-12T20:53:37Z fikka joined #lisp 2018-07-12T20:58:12Z igemnace quit (Quit: WeeChat 2.1) 2018-07-12T21:03:09Z rumbler31 joined #lisp 2018-07-12T21:03:17Z pierpa joined #lisp 2018-07-12T21:04:26Z Lord_Nightmare joined #lisp 2018-07-12T21:05:23Z j0ni quit (Remote host closed the connection) 2018-07-12T21:05:29Z rumbler31 quit (Remote host closed the connection) 2018-07-12T21:10:53Z kajo joined #lisp 2018-07-12T21:13:26Z brettgilio joined #lisp 2018-07-12T21:16:24Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2018-07-12T21:22:38Z Murii_ quit (Remote host closed the connection) 2018-07-12T21:23:20Z LiamH quit (Quit: Leaving.) 2018-07-12T21:26:14Z lumm_ joined #lisp 2018-07-12T21:28:05Z EvW1 joined #lisp 2018-07-12T21:29:21Z lumm quit (Ping timeout: 240 seconds) 2018-07-12T21:29:23Z lumm_ is now known as lumm 2018-07-12T21:32:17Z varjag quit (Ping timeout: 248 seconds) 2018-07-12T21:35:08Z brettgilio quit (Remote host closed the connection) 2018-07-12T21:37:35Z lumm quit (Ping timeout: 240 seconds) 2018-07-12T21:37:49Z brettgilio joined #lisp 2018-07-12T21:38:19Z DingoSaar joined #lisp 2018-07-12T21:40:51Z EvW1 quit (Ping timeout: 240 seconds) 2018-07-12T21:44:08Z mindCrime quit (Ping timeout: 268 seconds) 2018-07-12T21:44:48Z lumm joined #lisp 2018-07-12T21:45:16Z al-damiri joined #lisp 2018-07-12T21:45:16Z smasta joined #lisp 2018-07-12T21:46:46Z EvW joined #lisp 2018-07-12T21:48:39Z varjag joined #lisp 2018-07-12T21:51:05Z Folkol_ joined #lisp 2018-07-12T21:52:31Z FreeBirdLjj joined #lisp 2018-07-12T21:52:40Z xrash joined #lisp 2018-07-12T21:53:09Z varjag quit (Ping timeout: 264 seconds) 2018-07-12T21:57:16Z Folkol_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-12T21:57:50Z sjl_ quit (Quit: WeeChat 2.2-dev) 2018-07-12T21:57:55Z FreeBirdLjj quit (Ping timeout: 244 seconds) 2018-07-12T21:58:34Z Folkol_ joined #lisp 2018-07-12T21:59:01Z karlosz joined #lisp 2018-07-12T21:59:49Z EvW quit (Ping timeout: 265 seconds) 2018-07-12T22:00:24Z brettgilio quit (Quit: Leaving) 2018-07-12T22:01:54Z Folkol_ quit (Client Quit) 2018-07-12T22:07:57Z Bike quit (Ping timeout: 252 seconds) 2018-07-12T22:09:02Z karlosz quit (Quit: karlosz) 2018-07-12T22:09:13Z varjag joined #lisp 2018-07-12T22:09:21Z karlosz joined #lisp 2018-07-12T22:10:56Z milanj joined #lisp 2018-07-12T22:12:35Z koenig quit (Ping timeout: 255 seconds) 2018-07-12T22:13:21Z varjag quit (Ping timeout: 240 seconds) 2018-07-12T22:13:33Z nowhere_man quit (Read error: Connection reset by peer) 2018-07-12T22:14:35Z koenig joined #lisp 2018-07-12T22:14:59Z lumm quit (Quit: lumm) 2018-07-12T22:19:57Z stnutt quit (Ping timeout: 260 seconds) 2018-07-12T22:21:14Z Lord_Nightmare quit (Ping timeout: 260 seconds) 2018-07-12T22:21:53Z acolarh quit (Ping timeout: 248 seconds) 2018-07-12T22:23:34Z nowhere_man joined #lisp 2018-07-12T22:24:37Z blackwolf quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2018-07-12T22:25:36Z nowhere_man quit (Remote host closed the connection) 2018-07-12T22:26:53Z FreeBirdLjj joined #lisp 2018-07-12T22:27:11Z nowhere_man joined #lisp 2018-07-12T22:27:13Z kerframil joined #lisp 2018-07-12T22:27:21Z k4rtik quit (Ping timeout: 240 seconds) 2018-07-12T22:27:24Z kerframil left #lisp 2018-07-12T22:29:51Z varjag joined #lisp 2018-07-12T22:31:35Z Jesin quit (Ping timeout: 240 seconds) 2018-07-12T22:32:08Z karlosz quit (Quit: karlosz) 2018-07-12T22:33:27Z Jesin joined #lisp 2018-07-12T22:33:39Z ntqz joined #lisp 2018-07-12T22:34:39Z varjag quit (Ping timeout: 260 seconds) 2018-07-12T22:34:43Z acolarh joined #lisp 2018-07-12T22:39:43Z mange joined #lisp 2018-07-12T22:40:31Z karlosz joined #lisp 2018-07-12T22:43:04Z random-nick quit (Read error: Connection reset by peer) 2018-07-12T22:44:42Z Josh_2: Parenscript is used to generate Javascript right? 2018-07-12T22:47:22Z Lord_Nightmare joined #lisp 2018-07-12T22:50:15Z varjag joined #lisp 2018-07-12T22:52:58Z karlosz quit (Quit: karlosz) 2018-07-12T22:54:27Z varjag quit (Ping timeout: 240 seconds) 2018-07-12T22:55:37Z k4rtik joined #lisp 2018-07-12T22:55:52Z Bike joined #lisp 2018-07-12T22:56:39Z robotoad quit (Quit: robotoad) 2018-07-12T22:58:37Z BitPuffin quit (Remote host closed the connection) 2018-07-12T22:59:46Z FreeBirdLjj quit (Ping timeout: 264 seconds) 2018-07-12T23:03:27Z k4rtik quit (Ping timeout: 240 seconds) 2018-07-12T23:04:24Z troydm quit (Ping timeout: 260 seconds) 2018-07-12T23:05:29Z troydm joined #lisp 2018-07-12T23:06:48Z graphene quit (Read error: Connection reset by peer) 2018-07-12T23:07:09Z jasom: Josh_2: correct 2018-07-12T23:07:33Z jasom: Josh_2: Parenscript macros are common lisp, and it is a DSL for generating javascript. 2018-07-12T23:08:03Z graphene joined #lisp 2018-07-12T23:08:06Z Josh_2: *thumbs up* 2018-07-12T23:09:50Z Josh_2: Thanks :D 2018-07-12T23:10:21Z quazimodo quit (Remote host closed the connection) 2018-07-12T23:12:09Z quazimodo joined #lisp 2018-07-12T23:17:14Z rumbler31 joined #lisp 2018-07-12T23:20:05Z quazimodo quit (Ping timeout: 240 seconds) 2018-07-12T23:23:21Z fikka quit (Ping timeout: 256 seconds) 2018-07-12T23:24:02Z Kaisyu joined #lisp 2018-07-12T23:26:20Z caltelt joined #lisp 2018-07-12T23:31:02Z brettgilio joined #lisp 2018-07-12T23:33:27Z pagnol quit (Ping timeout: 240 seconds) 2018-07-12T23:34:11Z Josh_2 quit (Remote host closed the connection) 2018-07-12T23:40:21Z EvW joined #lisp 2018-07-12T23:42:20Z pjb quit (Read error: Connection reset by peer) 2018-07-12T23:43:02Z pjb joined #lisp 2018-07-12T23:47:27Z ym quit (Ping timeout: 240 seconds) 2018-07-12T23:50:11Z nowhereman_ joined #lisp 2018-07-12T23:50:23Z nowhere_man quit (Read error: Connection reset by peer) 2018-07-12T23:50:50Z dddddd quit (Remote host closed the connection) 2018-07-12T23:54:50Z JuanDaugherty joined #lisp 2018-07-13T00:03:01Z Kundry_Wag quit (Remote host closed the connection) 2018-07-13T00:09:40Z gabiruh quit (Ping timeout: 244 seconds) 2018-07-13T00:14:40Z quazimodo joined #lisp 2018-07-13T00:14:48Z fikka joined #lisp 2018-07-13T00:14:49Z quazimod1 joined #lisp 2018-07-13T00:14:55Z quazimod2 joined #lisp 2018-07-13T00:18:07Z FreeBirdLjj joined #lisp 2018-07-13T00:19:13Z fikka quit (Ping timeout: 248 seconds) 2018-07-13T00:25:30Z karlosz joined #lisp 2018-07-13T00:26:08Z raynold quit (Quit: Connection closed for inactivity) 2018-07-13T00:26:57Z Arcaelyx joined #lisp 2018-07-13T00:29:57Z acolarh quit (Ping timeout: 240 seconds) 2018-07-13T00:33:20Z brettgilio quit (Quit: Leaving) 2018-07-13T00:38:33Z brettgilio joined #lisp 2018-07-13T00:43:42Z acolarh joined #lisp 2018-07-13T00:47:39Z karlosz quit (Quit: karlosz) 2018-07-13T00:50:25Z quazimodo quit (Quit: leaving) 2018-07-13T00:50:28Z quazimod2 quit (Quit: leaving) 2018-07-13T00:50:30Z quazimod1 quit (Quit: leaving) 2018-07-13T00:53:21Z EvW quit (Ping timeout: 240 seconds) 2018-07-13T00:54:22Z Lord_Nightmare quit (Ping timeout: 264 seconds) 2018-07-13T00:55:21Z Xach: 2018-07-13T00:55:57Z elfmacs joined #lisp 2018-07-13T00:57:06Z Lord_Nightmare joined #lisp 2018-07-13T01:00:17Z brettgilio quit (Remote host closed the connection) 2018-07-13T01:01:36Z Pixel_Outlaw joined #lisp 2018-07-13T01:08:33Z elfmacs quit (Quit: WeeChat 2.1) 2018-07-13T01:10:59Z FreeBirdLjj quit (Ping timeout: 260 seconds) 2018-07-13T01:17:29Z ``Erik joined #lisp 2018-07-13T01:21:27Z Kundry_Wag joined #lisp 2018-07-13T01:25:57Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-13T01:29:52Z swampflared joined #lisp 2018-07-13T01:32:16Z Kundry_Wag_ joined #lisp 2018-07-13T01:32:56Z Kundry_W_ joined #lisp 2018-07-13T01:33:57Z zmt01 quit (Ping timeout: 240 seconds) 2018-07-13T01:34:48Z al-damiri quit (Quit: Connection closed for inactivity) 2018-07-13T01:35:03Z gabiruh joined #lisp 2018-07-13T01:36:27Z Kundry_Wag_ quit (Ping timeout: 240 seconds) 2018-07-13T01:40:09Z pjb quit (Remote host closed the connection) 2018-07-13T01:42:11Z pjb joined #lisp 2018-07-13T01:42:35Z pjb is now known as Guest9950 2018-07-13T01:45:27Z raynold joined #lisp 2018-07-13T01:48:28Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-13T01:48:52Z nickenchuggets joined #lisp 2018-07-13T01:48:52Z nickenchuggets quit (Changing host) 2018-07-13T01:48:52Z nickenchuggets joined #lisp 2018-07-13T01:50:25Z markoong quit (Ping timeout: 244 seconds) 2018-07-13T01:52:57Z fikka joined #lisp 2018-07-13T01:57:39Z fikka quit (Ping timeout: 260 seconds) 2018-07-13T01:59:08Z blep-on-external uploaded an image: lukd.png (106KB) < https://matrix.org/_matrix/media/v1/download/ponies.im/7b926b5e35069d2e9bca6fa0e6fe5605 > 2018-07-13T01:59:10Z blep-on-external: a small comparison 2018-07-13T01:59:27Z DingoSaar quit (Ping timeout: 240 seconds) 2018-07-13T02:02:56Z stacksmith: Sigh. 2018-07-13T02:03:31Z blep-on-external: sorry 2018-07-13T02:13:26Z acolarh quit (Read error: Connection reset by peer) 2018-07-13T02:14:05Z acolarh joined #lisp 2018-07-13T02:14:08Z robotoad joined #lisp 2018-07-13T02:14:14Z FreeBirdLjj joined #lisp 2018-07-13T02:17:23Z rumbler31 quit (Remote host closed the connection) 2018-07-13T02:19:35Z k4rtik joined #lisp 2018-07-13T02:19:50Z Kundry_W_ quit (Quit: Leaving...) 2018-07-13T02:20:07Z Kundry_Wag joined #lisp 2018-07-13T02:21:31Z milanj quit (Quit: This computer has gone to sleep) 2018-07-13T02:24:10Z fikka joined #lisp 2018-07-13T02:28:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-13T02:39:05Z JuanDaugherty quit (Quit: Exeunt) 2018-07-13T02:43:39Z beach: Good morning everyone! 2018-07-13T02:45:41Z anewuser joined #lisp 2018-07-13T02:52:32Z Guest995` joined #lisp 2018-07-13T02:53:28Z Guest9950 quit (Ping timeout: 256 seconds) 2018-07-13T02:56:09Z iridioid joined #lisp 2018-07-13T02:57:27Z smasta quit (Ping timeout: 240 seconds) 2018-07-13T02:57:32Z theemacsshibe[m]: hi beach 2018-07-13T02:58:29Z skapata quit (Remote host closed the connection) 2018-07-13T02:58:37Z k4rtik quit (Ping timeout: 244 seconds) 2018-07-13T02:59:53Z graphene quit (Remote host closed the connection) 2018-07-13T03:01:07Z graphene joined #lisp 2018-07-13T03:04:28Z nickenchuggets quit (Quit: Leaving) 2018-07-13T03:05:57Z k4rtik joined #lisp 2018-07-13T03:11:33Z pierpa quit (Quit: Page closed) 2018-07-13T03:14:38Z gabiruh quit (Ping timeout: 244 seconds) 2018-07-13T03:15:22Z Guest995` quit (Remote host closed the connection) 2018-07-13T03:17:28Z buffergn0me joined #lisp 2018-07-13T03:17:32Z Guest995` joined #lisp 2018-07-13T03:17:51Z FreeBirdLjj quit (Ping timeout: 265 seconds) 2018-07-13T03:22:01Z vtomole joined #lisp 2018-07-13T03:22:25Z jack_rabbit joined #lisp 2018-07-13T03:23:21Z brettgilio joined #lisp 2018-07-13T03:24:21Z vaporatorius quit (Ping timeout: 240 seconds) 2018-07-13T03:29:58Z EvW1 joined #lisp 2018-07-13T03:30:06Z Guest995` quit (Remote host closed the connection) 2018-07-13T03:32:01Z Guest995` joined #lisp 2018-07-13T03:35:11Z k4rtik quit (Quit: WeeChat 2.1) 2018-07-13T03:35:19Z shka_ joined #lisp 2018-07-13T03:35:57Z MoziM quit (Ping timeout: 240 seconds) 2018-07-13T03:35:58Z bjorkintosh quit (Quit: Leaving) 2018-07-13T03:38:40Z MoziM joined #lisp 2018-07-13T03:44:30Z Kundry_Wag quit (Quit: Leaving...) 2018-07-13T03:45:47Z fikka joined #lisp 2018-07-13T03:50:17Z fikka quit (Ping timeout: 244 seconds) 2018-07-13T03:50:34Z Guest995` quit (Read error: Connection reset by peer) 2018-07-13T03:50:54Z jasmith joined #lisp 2018-07-13T03:52:03Z Guest995` joined #lisp 2018-07-13T03:56:54Z pierpal quit (Quit: Poof) 2018-07-13T03:57:14Z pierpal joined #lisp 2018-07-13T04:00:21Z EvW1 quit (Ping timeout: 240 seconds) 2018-07-13T04:04:21Z Pixel_Outlaw quit (Remote host closed the connection) 2018-07-13T04:06:47Z myrkraverk quit (Remote host closed the connection) 2018-07-13T04:12:58Z isospin joined #lisp 2018-07-13T04:13:00Z AetherWind joined #lisp 2018-07-13T04:15:38Z Guest995` quit (Ping timeout: 256 seconds) 2018-07-13T04:22:41Z Inline quit (Quit: Leaving) 2018-07-13T04:32:57Z brettgilio quit (Ping timeout: 240 seconds) 2018-07-13T04:33:42Z Guest995` joined #lisp 2018-07-13T04:34:35Z Lord_Nightmare quit (Ping timeout: 240 seconds) 2018-07-13T04:37:24Z graphene quit (Remote host closed the connection) 2018-07-13T04:38:30Z Lord_Nightmare joined #lisp 2018-07-13T04:38:46Z graphene joined #lisp 2018-07-13T04:38:52Z Guest995` quit (Ping timeout: 256 seconds) 2018-07-13T04:41:21Z mindCrime_ quit (Ping timeout: 240 seconds) 2018-07-13T04:44:09Z mindCrime_ joined #lisp 2018-07-13T04:45:33Z brettgilio joined #lisp 2018-07-13T04:48:57Z terpri quit (Ping timeout: 240 seconds) 2018-07-13T04:49:42Z caltelt quit (Ping timeout: 244 seconds) 2018-07-13T04:51:34Z beach: A new version of the specification of the SICL memory allocator is now available in case someone feels like reviewing it: http://metamodular.com/allocator.pdf 2018-07-13T04:52:57Z igemnace joined #lisp 2018-07-13T05:02:30Z FreeBirdLjj joined #lisp 2018-07-13T05:03:34Z terpri joined #lisp 2018-07-13T05:08:44Z anewuser quit (Quit: anewuser) 2018-07-13T05:12:43Z brettgilio quit (Remote host closed the connection) 2018-07-13T05:16:06Z brettgilio joined #lisp 2018-07-13T05:16:09Z FreeBirdLjj quit (Ping timeout: 268 seconds) 2018-07-13T05:17:10Z omilu quit (Remote host closed the connection) 2018-07-13T05:17:21Z orivej quit (Ping timeout: 240 seconds) 2018-07-13T05:21:59Z Bike quit (Quit: Lost terminal) 2018-07-13T05:23:11Z MinnowTaur quit (Remote host closed the connection) 2018-07-13T05:29:32Z MinnowTaur joined #lisp 2018-07-13T05:30:50Z pierpal quit (Quit: Poof) 2018-07-13T05:31:09Z pierpal joined #lisp 2018-07-13T05:33:34Z karswell quit (Read error: Connection reset by peer) 2018-07-13T05:34:00Z fikka joined #lisp 2018-07-13T05:34:10Z karswell joined #lisp 2018-07-13T05:38:45Z fikka quit (Ping timeout: 264 seconds) 2018-07-13T05:40:36Z vtomole quit (Ping timeout: 252 seconds) 2018-07-13T05:41:16Z daniel-s joined #lisp 2018-07-13T05:48:09Z wewewe joined #lisp 2018-07-13T05:49:32Z faraco joined #lisp 2018-07-13T05:50:10Z faraco quit (Client Quit) 2018-07-13T05:50:21Z buffergn0me quit (Ping timeout: 240 seconds) 2018-07-13T05:50:37Z faraco joined #lisp 2018-07-13T05:50:38Z faraco quit (Changing host) 2018-07-13T05:50:38Z faraco joined #lisp 2018-07-13T05:51:01Z wewewe: hmm 2018-07-13T05:51:08Z faraco quit (Client Quit) 2018-07-13T05:51:15Z wewewe quit (Client Quit) 2018-07-13T05:51:58Z stacksmith: beach: looks good! 2018-07-13T05:52:06Z beach: Thanks! 2018-07-13T05:52:13Z beach: It works too it seems. :) 2018-07-13T05:53:18Z stacksmith: That's even better than just looking good. 2018-07-13T05:53:28Z beach: I agree. 2018-07-13T05:54:09Z nickenchuggets joined #lisp 2018-07-13T05:54:09Z nickenchuggets quit (Changing host) 2018-07-13T05:54:09Z nickenchuggets joined #lisp 2018-07-13T06:00:10Z shifty joined #lisp 2018-07-13T06:12:50Z nickenchuggets quit (Quit: Leaving) 2018-07-13T06:19:26Z brettgilio quit (Remote host closed the connection) 2018-07-13T06:19:50Z flamebeard joined #lisp 2018-07-13T06:27:02Z Smokitch joined #lisp 2018-07-13T06:27:21Z froggey quit (Ping timeout: 244 seconds) 2018-07-13T06:28:44Z vlatkoB joined #lisp 2018-07-13T06:32:26Z shrdlu68 joined #lisp 2018-07-13T06:38:43Z iridioid quit (Ping timeout: 244 seconds) 2018-07-13T06:39:43Z mange quit (Remote host closed the connection) 2018-07-13T06:43:53Z beach: shrdlu68: I think that book has some very deep insight. It is quite hard to read though, so I am taking my time. But it has already given me some interesting understanding of some parts of society that concern me. 2018-07-13T06:44:28Z karswell quit (Remote host closed the connection) 2018-07-13T06:45:11Z karswell joined #lisp 2018-07-13T06:45:33Z LdBeth: Good afternoon 2018-07-13T06:45:38Z beach: Hello LdBeth. 2018-07-13T06:47:07Z beach: shrdlu68: I don't know whether the author is going to mention it, but it occurred to me right away that commercial software development is an inadequate equilibrium, which is why free software is often able to do "better" in terms of some quality metric. 2018-07-13T06:50:28Z quazimodo joined #lisp 2018-07-13T06:51:07Z shrdlu68: beach: Indeed, the book made me appreciate how powerful behavioral economics is at creating useful models of complex systems. 2018-07-13T06:51:27Z beach: I can see that. 2018-07-13T06:51:55Z FreeBirdLjj joined #lisp 2018-07-13T06:53:27Z TMA: shrdlu68: beach: which book are you talking about? I am unable to find it in logs 2018-07-13T06:53:54Z beach: https://equilibriabook.com/toc/ 2018-07-13T06:54:31Z TMA: gratias tibi ago 2018-07-13T06:55:37Z Kundry_Wag joined #lisp 2018-07-13T06:57:35Z brendyn quit (Ping timeout: 240 seconds) 2018-07-13T07:00:03Z fikka joined #lisp 2018-07-13T07:00:39Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-13T07:01:51Z shka_ quit (Ping timeout: 240 seconds) 2018-07-13T07:04:33Z fikka quit (Ping timeout: 244 seconds) 2018-07-13T07:05:04Z FreeBirdLjj quit (Ping timeout: 244 seconds) 2018-07-13T07:11:16Z shrdlu68 quit (Ping timeout: 244 seconds) 2018-07-13T07:12:07Z shrdlu68 joined #lisp 2018-07-13T07:12:56Z thuffir joined #lisp 2018-07-13T07:13:17Z Folkol_ joined #lisp 2018-07-13T07:18:12Z rumbler31 joined #lisp 2018-07-13T07:18:23Z brendyn joined #lisp 2018-07-13T07:20:19Z brendarn joined #lisp 2018-07-13T07:21:57Z thuffir quit (Ping timeout: 240 seconds) 2018-07-13T07:23:09Z brendyn quit (Ping timeout: 264 seconds) 2018-07-13T07:24:18Z daniel-s quit (Remote host closed the connection) 2018-07-13T07:24:52Z mflem quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2018-07-13T07:25:22Z thuffir joined #lisp 2018-07-13T07:25:28Z dim quit (Ping timeout: 256 seconds) 2018-07-13T07:32:09Z shrdlu68 quit (Ping timeout: 264 seconds) 2018-07-13T07:32:29Z pierpal quit (Ping timeout: 260 seconds) 2018-07-13T07:34:11Z fikka joined #lisp 2018-07-13T07:37:51Z shrdlu68 joined #lisp 2018-07-13T07:40:39Z slyrus_ quit (Ping timeout: 260 seconds) 2018-07-13T07:41:52Z pagnol joined #lisp 2018-07-13T07:43:00Z xificurC joined #lisp 2018-07-13T07:43:33Z shrdlu68 quit (Ping timeout: 264 seconds) 2018-07-13T07:44:00Z shrdlu68 joined #lisp 2018-07-13T07:45:37Z milanj joined #lisp 2018-07-13T07:46:24Z thuffir quit (Ping timeout: 244 seconds) 2018-07-13T07:48:27Z brendarn quit (Ping timeout: 240 seconds) 2018-07-13T07:48:27Z rumbler31 quit (Remote host closed the connection) 2018-07-13T07:49:27Z shrdlu68 quit (Ping timeout: 240 seconds) 2018-07-13T07:50:10Z shrdlu68 joined #lisp 2018-07-13T07:52:10Z slyrus_ joined #lisp 2018-07-13T07:57:13Z nowhereman_ quit (Ping timeout: 265 seconds) 2018-07-13T07:59:34Z thuffir joined #lisp 2018-07-13T08:02:01Z dim joined #lisp 2018-07-13T08:03:59Z hhdave_ joined #lisp 2018-07-13T08:06:14Z brendarn joined #lisp 2018-07-13T08:10:59Z thuffir quit (Ping timeout: 260 seconds) 2018-07-13T08:14:29Z scymtym quit (Ping timeout: 260 seconds) 2018-07-13T08:16:18Z thuffir joined #lisp 2018-07-13T08:16:22Z fikka quit (Ping timeout: 244 seconds) 2018-07-13T08:22:08Z karswell quit (Ping timeout: 256 seconds) 2018-07-13T08:25:30Z angavrilov joined #lisp 2018-07-13T08:26:01Z varjag joined #lisp 2018-07-13T08:26:32Z shka: good morning 2018-07-13T08:27:57Z thuffir quit (Ping timeout: 240 seconds) 2018-07-13T08:28:47Z beach: Hello shka. 2018-07-13T08:31:02Z scymtym joined #lisp 2018-07-13T08:31:57Z hajovonta joined #lisp 2018-07-13T08:33:12Z nowhereman_ joined #lisp 2018-07-13T08:34:43Z brendarn quit (Ping timeout: 256 seconds) 2018-07-13T08:34:54Z iridioid joined #lisp 2018-07-13T08:39:18Z _cosmonaut_ joined #lisp 2018-07-13T08:39:27Z iridioid quit (Ping timeout: 240 seconds) 2018-07-13T08:39:38Z thuffir joined #lisp 2018-07-13T08:41:14Z FreeBirdLjj joined #lisp 2018-07-13T08:41:23Z froggey joined #lisp 2018-07-13T08:44:29Z hajovonta: hello 2018-07-13T08:45:17Z earl-ducaine quit (Read error: Connection reset by peer) 2018-07-13T08:46:05Z thuffir quit (Ping timeout: 240 seconds) 2018-07-13T08:49:56Z earl-ducaine joined #lisp 2018-07-13T08:51:58Z BitPuffin joined #lisp 2018-07-13T08:52:48Z brendyn joined #lisp 2018-07-13T08:53:34Z nowhereman_ quit (Ping timeout: 244 seconds) 2018-07-13T08:55:02Z xuxuru joined #lisp 2018-07-13T08:55:20Z shrdlu68: hajovonta: Morning. 2018-07-13T08:56:06Z nowhereman_ joined #lisp 2018-07-13T08:58:40Z random-nick joined #lisp 2018-07-13T09:03:37Z FreeBirdLjj quit (Ping timeout: 256 seconds) 2018-07-13T09:11:06Z shrdlu68 quit (Ping timeout: 268 seconds) 2018-07-13T09:11:35Z shrdlu68 joined #lisp 2018-07-13T09:17:16Z shrdlu68 quit (Ping timeout: 268 seconds) 2018-07-13T09:17:46Z shrdlu68 joined #lisp 2018-07-13T09:18:16Z orivej joined #lisp 2018-07-13T09:18:16Z milanj quit (Quit: This computer has gone to sleep) 2018-07-13T09:20:43Z Kundry_Wag joined #lisp 2018-07-13T09:21:06Z xuxuru quit (Quit: xuxuru) 2018-07-13T09:22:26Z surya joined #lisp 2018-07-13T09:23:13Z shrdlu68 quit (Ping timeout: 248 seconds) 2018-07-13T09:23:56Z shrdlu68 joined #lisp 2018-07-13T09:25:54Z Kundry_Wag quit (Ping timeout: 268 seconds) 2018-07-13T09:28:57Z shrdlu68 quit (Ping timeout: 240 seconds) 2018-07-13T09:30:11Z shrdlu68 joined #lisp 2018-07-13T09:43:51Z surya quit (Ping timeout: 240 seconds) 2018-07-13T09:45:23Z pierpal joined #lisp 2018-07-13T09:47:53Z elfmacs joined #lisp 2018-07-13T09:49:53Z shrdlu68 quit (Ping timeout: 244 seconds) 2018-07-13T09:50:33Z shrdlu68 joined #lisp 2018-07-13T09:50:41Z Smokitch_ joined #lisp 2018-07-13T09:53:01Z m00natic joined #lisp 2018-07-13T09:53:27Z Smokitch quit (Ping timeout: 240 seconds) 2018-07-13T09:54:55Z nowhereman_ quit (Read error: Connection reset by peer) 2018-07-13T09:55:05Z nowhere_man joined #lisp 2018-07-13T09:56:03Z gabiruh joined #lisp 2018-07-13T10:01:27Z nowhere_man quit (Ping timeout: 240 seconds) 2018-07-13T10:01:39Z raynold quit (Quit: Connection closed for inactivity) 2018-07-13T10:07:42Z isospin` joined #lisp 2018-07-13T10:07:47Z Kundry_Wag joined #lisp 2018-07-13T10:09:31Z gabiruh quit (Ping timeout: 244 seconds) 2018-07-13T10:09:58Z isospin quit (Ping timeout: 264 seconds) 2018-07-13T10:11:51Z orivej quit (Ping timeout: 240 seconds) 2018-07-13T10:12:58Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-13T10:17:15Z w17t joined #lisp 2018-07-13T10:19:25Z Kaisyu quit (Quit: Connection closed for inactivity) 2018-07-13T10:27:40Z Younder quit (Remote host closed the connection) 2018-07-13T10:30:24Z pagnol quit (Ping timeout: 260 seconds) 2018-07-13T10:30:29Z FreeBirdLjj joined #lisp 2018-07-13T10:32:42Z milanj joined #lisp 2018-07-13T10:35:40Z iridioid joined #lisp 2018-07-13T10:40:31Z iridioid quit (Ping timeout: 244 seconds) 2018-07-13T10:42:27Z w17t quit (Ping timeout: 240 seconds) 2018-07-13T10:44:10Z kori quit (Changing host) 2018-07-13T10:44:10Z kori joined #lisp 2018-07-13T10:44:25Z chiyosaki joined #lisp 2018-07-13T10:45:41Z saki quit (Ping timeout: 244 seconds) 2018-07-13T10:45:53Z isospin` left #lisp 2018-07-13T10:57:29Z gabiruh joined #lisp 2018-07-13T10:57:35Z chiyosaki quit (Ping timeout: 240 seconds) 2018-07-13T10:57:38Z quazimodo quit (Ping timeout: 276 seconds) 2018-07-13T10:57:47Z MoziM quit (Ping timeout: 268 seconds) 2018-07-13T10:57:56Z quazimodo joined #lisp 2018-07-13T10:58:23Z jmercouris joined #lisp 2018-07-13T10:59:15Z saki joined #lisp 2018-07-13T10:59:18Z jmercouris: how to go from '(0 1 2 3) to '((0 1) (2 3))? 2018-07-13T10:59:56Z jmercouris: I can think of a naieve loop based way to do it 2018-07-13T11:00:00Z jmercouris: but there must be a better way 2018-07-13T11:00:00Z MoziM joined #lisp 2018-07-13T11:00:31Z w17t joined #lisp 2018-07-13T11:02:27Z shrdlu68: Better in what way? 2018-07-13T11:02:39Z jmercouris: less lines of code 2018-07-13T11:02:40Z dim: alexandria:plist-alist does that I think 2018-07-13T11:02:40Z EvW1 joined #lisp 2018-07-13T11:03:01Z dim: well no it gives ((0 . 1) (2 . 3)) of course 2018-07-13T11:03:04Z jmercouris: dim: close enough, it makes a list of cons cells 2018-07-13T11:03:06Z jmercouris: I can work with that 2018-07-13T11:03:08Z jmercouris: thank you 2018-07-13T11:03:13Z dim: it gives an alist 2018-07-13T11:03:31Z jmercouris: yes 2018-07-13T11:03:33Z dim: I like higher order naming for those structures based on cons cells 2018-07-13T11:03:57Z FreeBirdLjj quit (Ping timeout: 264 seconds) 2018-07-13T11:05:27Z elfmacs quit (Ping timeout: 256 seconds) 2018-07-13T11:05:33Z markoong joined #lisp 2018-07-13T11:14:27Z shka: i was wondering 2018-07-13T11:20:59Z chiyosaki joined #lisp 2018-07-13T11:21:05Z saki quit (Ping timeout: 248 seconds) 2018-07-13T11:26:51Z EvW1 quit (Ping timeout: 240 seconds) 2018-07-13T11:27:40Z lumm joined #lisp 2018-07-13T11:27:57Z fikka joined #lisp 2018-07-13T11:37:54Z jdz: I think in other languages/libraries this is called "chunk". 2018-07-13T11:38:06Z jdz: Take a sequence, and cut it into chunks. 2018-07-13T11:41:41Z AetherWind quit (Quit: Leaving) 2018-07-13T11:42:24Z ofi joined #lisp 2018-07-13T11:47:52Z EvW joined #lisp 2018-07-13T11:51:08Z pierpal quit (Quit: Poof) 2018-07-13T11:51:26Z pierpal joined #lisp 2018-07-13T11:52:51Z chiyosaki quit (Ping timeout: 240 seconds) 2018-07-13T11:53:02Z saki joined #lisp 2018-07-13T11:53:36Z sebastien__ joined #lisp 2018-07-13T11:53:36Z sebastien__ quit (Remote host closed the connection) 2018-07-13T11:53:38Z nowhere_man joined #lisp 2018-07-13T11:53:58Z lumm_ joined #lisp 2018-07-13T11:57:26Z lumm quit (Ping timeout: 276 seconds) 2018-07-13T11:57:27Z lumm_ is now known as lumm 2018-07-13T11:58:40Z lumm_ joined #lisp 2018-07-13T12:00:49Z fikka quit (Ping timeout: 260 seconds) 2018-07-13T12:01:59Z lumm quit (Ping timeout: 260 seconds) 2018-07-13T12:02:00Z lumm_ is now known as lumm 2018-07-13T12:02:34Z saki quit (Ping timeout: 260 seconds) 2018-07-13T12:02:49Z saki joined #lisp 2018-07-13T12:10:09Z DemolitionMan joined #lisp 2018-07-13T12:17:40Z Kundry_Wag joined #lisp 2018-07-13T12:17:46Z housel quit (Remote host closed the connection) 2018-07-13T12:21:52Z FreeBirdLjj joined #lisp 2018-07-13T12:24:58Z eminhi joined #lisp 2018-07-13T12:25:57Z pagnol joined #lisp 2018-07-13T12:26:02Z pierpal quit (Quit: Poof) 2018-07-13T12:26:22Z pierpal joined #lisp 2018-07-13T12:27:20Z Kundry_Wag quit (Ping timeout: 276 seconds) 2018-07-13T12:36:23Z iridioid joined #lisp 2018-07-13T12:36:39Z milanj quit (Quit: This computer has gone to sleep) 2018-07-13T12:38:30Z Kundry_Wag joined #lisp 2018-07-13T12:38:35Z elfmacs joined #lisp 2018-07-13T12:40:59Z scymtym quit (Ping timeout: 276 seconds) 2018-07-13T12:41:13Z iridioid quit (Ping timeout: 256 seconds) 2018-07-13T12:42:06Z eminhi quit (Remote host closed the connection) 2018-07-13T12:47:15Z milanj joined #lisp 2018-07-13T12:49:15Z rumbler31 joined #lisp 2018-07-13T12:50:48Z graphene quit (Read error: Connection reset by peer) 2018-07-13T12:51:50Z pdv joined #lisp 2018-07-13T12:52:45Z orivej joined #lisp 2018-07-13T12:53:08Z graphene joined #lisp 2018-07-13T12:54:26Z fikka joined #lisp 2018-07-13T12:57:26Z Lord_Nightmare quit (Ping timeout: 244 seconds) 2018-07-13T12:58:43Z LiamH joined #lisp 2018-07-13T12:59:14Z fikka quit (Ping timeout: 256 seconds) 2018-07-13T12:59:47Z orivej quit (Ping timeout: 265 seconds) 2018-07-13T13:00:03Z sjl_ joined #lisp 2018-07-13T13:00:04Z pdv quit (Quit: Mutter: www.mutterirc.com) 2018-07-13T13:01:15Z chiyosaki joined #lisp 2018-07-13T13:01:18Z w17t quit (Quit: Leaving) 2018-07-13T13:04:49Z saki quit (Ping timeout: 268 seconds) 2018-07-13T13:05:18Z daniel-s joined #lisp 2018-07-13T13:05:36Z pagnol quit (Read error: Connection reset by peer) 2018-07-13T13:05:54Z warweasle joined #lisp 2018-07-13T13:08:18Z bigfondue quit (Ping timeout: 256 seconds) 2018-07-13T13:10:19Z karlosz joined #lisp 2018-07-13T13:12:48Z graphene quit (Remote host closed the connection) 2018-07-13T13:14:08Z graphene joined #lisp 2018-07-13T13:15:26Z FreeBirdLjj quit (Ping timeout: 276 seconds) 2018-07-13T13:15:59Z Inline joined #lisp 2018-07-13T13:17:14Z phoe: well 2018-07-13T13:17:19Z phoe: I ended up writing a lot of cod 2018-07-13T13:17:22Z phoe: e 2018-07-13T13:17:32Z ebrasca: phoe: Hi 2018-07-13T13:17:35Z phoe: it's time to take a step back, document and refactor it 2018-07-13T13:17:37Z phoe: ebrasca: heyy 2018-07-13T13:18:00Z ebrasca: can you give link? 2018-07-13T13:18:52Z mindCrime joined #lisp 2018-07-13T13:19:32Z rumbler31 quit (Remote host closed the connection) 2018-07-13T13:20:25Z eminhi joined #lisp 2018-07-13T13:22:19Z sjl_: /b 4 2018-07-13T13:22:24Z sjl_: whops 2018-07-13T13:23:02Z elfmacs quit (Ping timeout: 256 seconds) 2018-07-13T13:23:44Z phoe: ebrasca: https://github.com/phoe/waveflow/ 2018-07-13T13:25:26Z phoe: There is no documentation and little tests though. 2018-07-13T13:25:51Z shifty quit (Ping timeout: 244 seconds) 2018-07-13T13:26:46Z Bike joined #lisp 2018-07-13T13:27:59Z dim: mmm, how to debug a “Control stack exhausted (no more space for function call frames).” when you can't reproduce the bug?! 2018-07-13T13:29:22Z bigfondue joined #lisp 2018-07-13T13:29:39Z ofi quit (Remote host closed the connection) 2018-07-13T13:30:21Z scymtym joined #lisp 2018-07-13T13:30:32Z phoe: dim: give us the (whole long) stacktrace 2018-07-13T13:31:10Z phoe: or rather - look for repetitions inside it 2018-07-13T13:31:23Z phoe: if there's a function or a group of functions that keeps on repeating, that's where you need to look 2018-07-13T13:31:35Z dim: https://github.com/dimitri/pgloader/issues/810#issuecomment-404822140 2018-07-13T13:31:37Z phoe: and if there's not - the case becomes much, *much* more interesting 2018-07-13T13:31:41Z dim: I don't have such information phoe 2018-07-13T13:31:59Z dim: I guess it was more a rhetoric question 2018-07-13T13:32:12Z phoe: dim: well then, rhetoric question, rhetoric answer (: 2018-07-13T13:32:32Z phoe: if you can't reproduce it then it's not an issue; if you can reproduce it, then you can get a stacktrace 2018-07-13T13:33:16Z dim: pgloader is a little different from other CL systems, it's an application that I'm not typically the user of 2018-07-13T13:33:26Z dim: so I have users who reports bug, and sometimes I can't reproduce 2018-07-13T13:33:54Z phoe: dim: when it encounters fatal errors, it SHOULD save stacktraces somewhere. 2018-07-13T13:34:09Z al-damiri joined #lisp 2018-07-13T13:34:13Z phoe: if the user reports a bug, then they should give you the respective stacktrace as a part of the bug report. 2018-07-13T13:34:43Z phoe: if it is not designed to save stacktraces, then you have a thing to implement. (: 2018-07-13T13:34:45Z dim: --debug reports the stacktrace 2018-07-13T13:34:51Z dim: I'm not sure why not in that case 2018-07-13T13:35:49Z dim: see https://github.com/dimitri/pgloader/blob/master/src/main.lisp#L295 2018-07-13T13:36:33Z dim: oh I see, the error is caught in the handler-case, not the handler-bind, somehow, preventing the stacktrace from being printed out... 2018-07-13T13:36:55Z jmercouris: is there any way to get the path of the currently running lisp image? (from a saved binary) 2018-07-13T13:37:00Z phoe: yes, I see. 2018-07-13T13:37:02Z dim: (because it seems like I have hooked the stack trace printing at the wrong place) 2018-07-13T13:37:07Z phoe: jmercouris: from the OS, I think? 2018-07-13T13:37:12Z jmercouris: phoe: Can you expand? 2018-07-13T13:37:22Z jmercouris: maybe someone has wrapped this in UIOP? or somethign? 2018-07-13T13:37:25Z shrdlu68: jmercouris: argv 2018-07-13T13:37:33Z dim: you might find it somewhere in /proc/? 2018-07-13T13:37:52Z Bike: if you mean a dumped executable, couldn't you use argv[0] 2018-07-13T13:38:16Z jmercouris: how do I access argv within lisp? 2018-07-13T13:38:24Z phoe: dim: the first thing I saw when I looked at that was "handler-case on top of handler-bind... this sounds fishy" 2018-07-13T13:38:28Z jmercouris: is it implementation specific? 2018-07-13T13:38:41Z phoe: (uiop:argv0) 2018-07-13T13:38:43Z dim: it prints KABOOM!, it should print the backtrace 2018-07-13T13:39:03Z dim: phoe: real life is fishy 2018-07-13T13:39:15Z jmercouris: ah, simple as that, thank you 2018-07-13T13:39:21Z phoe: jmercouris: as long as you deployed using UIOP tools. 2018-07-13T13:39:25Z jmercouris: Indeed I have 2018-07-13T13:39:41Z phoe: then it should work. 2018-07-13T13:40:23Z jmercouris: Damnit, that doesn't show the full path 2018-07-13T13:40:33Z jmercouris: well, depending on how the OS launches 2018-07-13T13:40:52Z jmercouris: well, it is a start, gotta go for now 2018-07-13T13:42:11Z hajovonta quit (Quit: hajovonta) 2018-07-13T13:42:22Z fikka joined #lisp 2018-07-13T13:43:19Z Bike: what are you using it for? 2018-07-13T13:43:34Z Bike: if you have resources in the same directory, i think uiop has specific things forthat 2018-07-13T13:43:57Z xrash quit (Ping timeout: 240 seconds) 2018-07-13T13:45:49Z graphene quit (Remote host closed the connection) 2018-07-13T13:46:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-13T13:47:05Z graphene joined #lisp 2018-07-13T13:47:59Z jmercouris: Bike: I do have resources, thats exactly what I'm trying to load 2018-07-13T13:48:34Z Bike: https://common-lisp.net/project/asdf/asdf/Miscellaneous-Functions.html not for executables, tho 2018-07-13T13:51:08Z sjl_: shinmera's deploy does this https://github.com/Shinmera/deploy/blob/7bd96ba3f88a424e03394de1adadf4a4993f849c/toolkit.lisp#L77-L80 for its resource directory 2018-07-13T13:52:49Z fikka joined #lisp 2018-07-13T13:56:48Z graphene quit (Remote host closed the connection) 2018-07-13T13:56:58Z JuanDaugherty joined #lisp 2018-07-13T13:57:51Z fikka quit (Ping timeout: 268 seconds) 2018-07-13T13:58:22Z graphene joined #lisp 2018-07-13T13:58:23Z lumm quit (Read error: Connection reset by peer) 2018-07-13T14:00:17Z iridioid joined #lisp 2018-07-13T14:00:26Z Murii_ joined #lisp 2018-07-13T14:03:16Z rippa joined #lisp 2018-07-13T14:04:45Z skapata joined #lisp 2018-07-13T14:05:53Z wigust- quit (Ping timeout: 248 seconds) 2018-07-13T14:05:58Z wigust joined #lisp 2018-07-13T14:07:21Z phoe: I was looking for a library that would allow me to do things like https://plaster.tymoon.eu/view/852#852 2018-07-13T14:07:38Z phoe: Where I can define individual steps, and elsewhere declare how they depend on each other and in which order they should execute 2018-07-13T14:07:43Z phoe: perhaps synchronously, perhaps asynchronously 2018-07-13T14:08:39Z phoe: And also define the classes of the things I call waves* here, so they'd do different things depending on their classes 2018-07-13T14:10:07Z karlosz quit (Quit: karlosz) 2018-07-13T14:11:30Z Josh_2 joined #lisp 2018-07-13T14:13:11Z fikka joined #lisp 2018-07-13T14:15:12Z FreeBirdLjj joined #lisp 2018-07-13T14:15:38Z Folkol_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-13T14:17:25Z karlosz joined #lisp 2018-07-13T14:17:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-13T14:20:23Z elfmacs joined #lisp 2018-07-13T14:23:39Z fikka joined #lisp 2018-07-13T14:25:16Z daniel-s quit (Remote host closed the connection) 2018-07-13T14:27:08Z Inline quit (Remote host closed the connection) 2018-07-13T14:28:34Z fikka quit (Ping timeout: 264 seconds) 2018-07-13T14:29:52Z Smokitch_ quit 2018-07-13T14:33:10Z jmercouris: sjl: snippet was very useful, I did something like it thanks 2018-07-13T14:37:38Z lumm joined #lisp 2018-07-13T14:40:22Z voidlily quit (Read error: Connection reset by peer) 2018-07-13T14:40:47Z graphene quit (Remote host closed the connection) 2018-07-13T14:41:27Z _cosmonaut_ quit (Ping timeout: 240 seconds) 2018-07-13T14:42:05Z graphene joined #lisp 2018-07-13T14:43:40Z fikka joined #lisp 2018-07-13T14:45:00Z Inline joined #lisp 2018-07-13T14:45:22Z voidlily joined #lisp 2018-07-13T14:46:57Z Lord_Nightmare joined #lisp 2018-07-13T14:47:27Z elfmacs quit (Ping timeout: 240 seconds) 2018-07-13T14:47:42Z voidlily quit (Remote host closed the connection) 2018-07-13T14:47:59Z JuanDaugherty quit (Quit: Exeunt) 2018-07-13T14:48:01Z fikka quit (Ping timeout: 248 seconds) 2018-07-13T14:48:15Z voidlily joined #lisp 2018-07-13T14:48:21Z voidlily quit (Remote host closed the connection) 2018-07-13T14:48:23Z JuanDaugherty joined #lisp 2018-07-13T14:49:05Z jack_rabbit quit (Quit: Leaving) 2018-07-13T14:49:54Z cage_ joined #lisp 2018-07-13T14:52:46Z voidlily joined #lisp 2018-07-13T14:53:34Z Folkol_ joined #lisp 2018-07-13T14:54:53Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-13T14:55:09Z FreeBirdLjj joined #lisp 2018-07-13T14:56:21Z Cymew quit (Remote host closed the connection) 2018-07-13T14:57:08Z _cosmonaut_ joined #lisp 2018-07-13T15:03:59Z fikka joined #lisp 2018-07-13T15:05:13Z flamebeard quit 2018-07-13T15:07:13Z jmercouris left #lisp 2018-07-13T15:09:00Z fikka quit (Ping timeout: 256 seconds) 2018-07-13T15:13:30Z Folkol_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-13T15:14:45Z nowhere_man quit (Ping timeout: 264 seconds) 2018-07-13T15:14:46Z fikka joined #lisp 2018-07-13T15:15:38Z pagnol joined #lisp 2018-07-13T15:15:58Z brendyn quit (Read error: No route to host) 2018-07-13T15:16:10Z pagnol quit (Remote host closed the connection) 2018-07-13T15:16:43Z brendyn joined #lisp 2018-07-13T15:18:55Z nowhere_man joined #lisp 2018-07-13T15:19:33Z fikka quit (Ping timeout: 264 seconds) 2018-07-13T15:20:01Z nowhereman_ joined #lisp 2018-07-13T15:20:02Z nowhere_man quit (Read error: Connection reset by peer) 2018-07-13T15:21:50Z kuwze joined #lisp 2018-07-13T15:24:51Z orivej joined #lisp 2018-07-13T15:26:27Z lumm quit (Ping timeout: 240 seconds) 2018-07-13T15:26:45Z _cosmonaut_ quit (Ping timeout: 244 seconds) 2018-07-13T15:29:52Z xificurC quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2018-07-13T15:31:17Z EvW quit (Ping timeout: 276 seconds) 2018-07-13T15:34:45Z fikka joined #lisp 2018-07-13T15:37:34Z Xach: /win 3 2018-07-13T15:38:15Z lumm joined #lisp 2018-07-13T15:39:20Z housel joined #lisp 2018-07-13T15:39:30Z graphene quit (Remote host closed the connection) 2018-07-13T15:39:34Z fikka quit (Ping timeout: 260 seconds) 2018-07-13T15:39:46Z cage_ quit (Remote host closed the connection) 2018-07-13T15:39:47Z fe[nl]ix: Xach: 3-0 ? 2018-07-13T15:40:04Z cage_ joined #lisp 2018-07-13T15:40:46Z graphene joined #lisp 2018-07-13T15:41:46Z Khisanth quit (Ping timeout: 264 seconds) 2018-07-13T15:42:40Z jibanes quit (Ping timeout: 265 seconds) 2018-07-13T15:44:06Z jibanes joined #lisp 2018-07-13T15:45:15Z fikka joined #lisp 2018-07-13T15:46:32Z surya joined #lisp 2018-07-13T15:46:58Z graphene quit (Remote host closed the connection) 2018-07-13T15:48:15Z graphene joined #lisp 2018-07-13T15:49:53Z fikka quit (Ping timeout: 248 seconds) 2018-07-13T15:54:40Z Khisanth joined #lisp 2018-07-13T15:58:53Z Xach sold a physical object today that was created in part by a lisp program 2018-07-13T15:59:38Z Josh_2: was it from a cad program? 2018-07-13T16:00:40Z brettgilio joined #lisp 2018-07-13T16:00:42Z vap1 joined #lisp 2018-07-13T16:01:18Z Kundry_Wag quit (Remote host closed the connection) 2018-07-13T16:01:34Z vaporatorius joined #lisp 2018-07-13T16:03:34Z jasom: beach: read the allocator description; looks like a reasonably sane malloc implementation. The only "gotcha" I see is if that some allocation patterns could generate very large bins. 2018-07-13T16:04:17Z jasom: of course if those allocation patterns are unlikely in real-world code it's probably a non-issue. 2018-07-13T16:05:04Z beach: jasom: Thanks. By "big" I presume you mean "with many chunks in them"? 2018-07-13T16:05:10Z jasom: beach: correct 2018-07-13T16:05:16Z fikka joined #lisp 2018-07-13T16:05:43Z beach: I don't know. But this technique is from Doug Lea and it is known to be the best one around. 2018-07-13T16:05:51Z surya quit (Ping timeout: 240 seconds) 2018-07-13T16:06:08Z Xach: Josh_2: No, it was a sign. The design and layout was done in lisp (including parsing curves out of the font file) and a lisp program emitted a vector file for a vinyl cutter. 2018-07-13T16:06:34Z beach: jasom: Plus, I will catch many short-lived objects in the nursery. Objects that get promoted to this heap are likely to be long lived. 2018-07-13T16:06:59Z Xach: (The font was a unique one I commissioned from a font designer, but that part wasn't lisp) 2018-07-13T16:07:48Z k4rtik joined #lisp 2018-07-13T16:07:48Z k4rtik quit (Changing host) 2018-07-13T16:07:48Z k4rtik joined #lisp 2018-07-13T16:08:11Z jasom: Right, but real world mallocs are ultimately about heuristics; if you have linear probing of unbounded length linked lists, there is the potential for slow performance, so it's all about choosing an algorithm where that is unlikely to happen. 2018-07-13T16:08:17Z beach: jasom: I think it is virtually impossible to judge an an allocator or a GC from the looks of it. So I intend to put in "meters" in the code. The size of bins would be an obvious candidate. 2018-07-13T16:08:38Z beach: jasom: Sure, I agree. 2018-07-13T16:08:45Z Kundry_Wag joined #lisp 2018-07-13T16:08:53Z beach: jasom: I just don't have any data either way to give a straight answer. 2018-07-13T16:09:21Z beach: jasom: I can say this though... 2018-07-13T16:09:38Z jasom: also be aware that malloc implementations are limited by their API; all you get is a pointer which means that you need to store the metadata next to the data. There are some allocation patterns for which this is highly suboptimal so I've seen C code with non-malloc allocators for just this reason. 2018-07-13T16:10:02Z beach: jasom: If there are big bins like that, it means that the chunks could not be coerced with others. And Paul Wilson's result makes that very unlikely. 2018-07-13T16:10:13Z fikka quit (Ping timeout: 265 seconds) 2018-07-13T16:10:13Z jasom: beach: I believe that 2018-07-13T16:10:46Z beach: jasom: Yes, I totally agree with everything you say. Again, I am counting on the nursery collectors to filter the problematic stuff. 2018-07-13T16:10:54Z jasom: excellent! 2018-07-13T16:11:35Z beach: This is even more true since the nursery collectors use a sliding GC algorithm, so that the relative age of objects that are promoted is very precisely known. 2018-07-13T16:11:38Z rumbler31 joined #lisp 2018-07-13T16:12:34Z rumbler31 quit (Remote host closed the connection) 2018-07-13T16:13:00Z beach: So objects that are promoted together in the global heap are very likely used by the same point in the application. I did not include this optimization in my description, but it is described by Doug Lea: if no perfect fit is found, then the previous big block is reused again, so that objects stay together. 2018-07-13T16:13:27Z jasom: The worst fragmentation I ever saw was with a real-time allocator that was disallowed any unbounded iteration, so it never moved allocations up in bins, just down... 2018-07-13T16:14:18Z beach: Er, what does "up" and "down" mean here? 2018-07-13T16:14:23Z jasom: in size category 2018-07-13T16:14:39Z beach: So it only ever split existing chunks. Never coalesced? 2018-07-13T16:14:41Z jasom: small chunks were binned, large chunks were traditional malloc. 2018-07-13T16:14:45Z jasom: correct. 2018-07-13T16:14:56Z skapata quit (Remote host closed the connection) 2018-07-13T16:15:04Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-13T16:15:28Z beach: How is that related to disallowing unbounded iteration? Oh, because reusing blocks would make it unable to bound the time? 2018-07-13T16:16:02Z fikka joined #lisp 2018-07-13T16:16:16Z jasom: right it would either require significant space overhead for a non-in-place store of blocks for a bin, or it would have to walk a list like yours does, neither of which was acceptible 2018-07-13T16:16:33Z beach: Got it. Nasty case indeed. 2018-07-13T16:17:22Z jasom: then someone with a non-embedded background decided to allocate a bunch of temporary stuff in a C++ std::list early on in the program, and suddenly no large allocations were possible :( 2018-07-13T16:17:41Z beach: Heh! 2018-07-13T16:20:46Z fikka quit (Ping timeout: 264 seconds) 2018-07-13T16:21:37Z FreeBirdLjj joined #lisp 2018-07-13T16:23:36Z pjb joined #lisp 2018-07-13T16:24:00Z nowhereman_ quit (Ping timeout: 268 seconds) 2018-07-13T16:24:21Z thuffir joined #lisp 2018-07-13T16:26:03Z Josh_2: Xach what's the sign for? 2018-07-13T16:27:24Z Xach: Josh_2: it's a decoration, it replicates a style of town line sign that is unique to Maine, and slowly being replaced with generic signs as the old ones wear out. 2018-07-13T16:27:44Z Xach: mainetownline.com is a lisp-powered website to make them as graphics 2018-07-13T16:27:53Z iridioid quit (Ping timeout: 256 seconds) 2018-07-13T16:28:30Z vap1 quit (Quit: Leaving) 2018-07-13T16:30:01Z DingoSaar joined #lisp 2018-07-13T16:32:09Z Josh_2: idk if my internet is being slow but that site took a while to load 2018-07-13T16:32:30Z Xach: It's in montreal and not part of a CDN or anything. 2018-07-13T16:32:46Z beach: Josh_2: Lisp is slow. Everyone knows that. 2018-07-13T16:33:23Z Josh_2: was faster using drakma, so am gonna assume it was my browser 2018-07-13T16:33:41Z Josh_2: yes, real slow, like a snail 2018-07-13T16:35:49Z thuffir quit (Ping timeout: 256 seconds) 2018-07-13T16:36:05Z fikka joined #lisp 2018-07-13T16:38:57Z hhdave_ quit (Ping timeout: 240 seconds) 2018-07-13T16:40:31Z iridioid joined #lisp 2018-07-13T16:40:49Z fikka quit (Ping timeout: 260 seconds) 2018-07-13T16:41:09Z mindCrime quit (Ping timeout: 264 seconds) 2018-07-13T16:44:46Z orivej quit (Ping timeout: 244 seconds) 2018-07-13T16:46:29Z fikka joined #lisp 2018-07-13T16:48:25Z sjl_: fast here, NY VPNed to SF 2018-07-13T16:50:41Z pagnol joined #lisp 2018-07-13T16:51:12Z ntqz quit 2018-07-13T16:51:13Z fikka quit (Ping timeout: 248 seconds) 2018-07-13T16:53:18Z Josh_2: sat here wondering why I can't connec to my hunchentoot site, turns out I had 127.0.0.1/4242 instead of 127.0.0.1:4242 Q_Q 2018-07-13T16:56:47Z DingoSaar quit (Ping timeout: 256 seconds) 2018-07-13T16:57:09Z stacksmith: Good morning. Could someone clarify: what namespace are slot names in? 2018-07-13T16:59:22Z nowhereman_ joined #lisp 2018-07-13T16:59:31Z thuffir joined #lisp 2018-07-13T17:01:43Z dlowe: slot names are symbols. They can be in any package. 2018-07-13T17:02:15Z dlowe: amusingly, slot initargs can also be in any package - they aren't limited to the keyword package. 2018-07-13T17:02:36Z Smokitch joined #lisp 2018-07-13T17:02:42Z dlowe: I've seen a reasonable article that we should be using non-keyword initargs to prevent collision between different users of a class 2018-07-13T17:03:31Z Bike: if you mean "namespace" like how variable and function bindings are separated, they're not in a global namespace. they're particular to the class. 2018-07-13T17:03:40Z stacksmith: dlowe: yeah, by namespace I mean function/var/type etc. 2018-07-13T17:03:55Z akkad: clos is pretty damn bad, as it makes all the other oo models feel insufficient imho 2018-07-13T17:05:21Z kuwze quit (Ping timeout: 252 seconds) 2018-07-13T17:05:57Z stacksmith: Is there a place in CLHS or elsewhere that lists the separate binding spaces? I've counted 7 but would love to see an authoritative list... 2018-07-13T17:06:33Z fikka joined #lisp 2018-07-13T17:06:39Z dlowe: stacksmith: maybe it doesn't matter that much. 2018-07-13T17:06:47Z jasom: stacksmith: I'm pretty sure there isn't anything in the spec; google "lisp-n" for lists other people have come up with 2018-07-13T17:07:36Z dlowe: lisp-1 vs lisp-2 was an interesting implementation question. This lisp-n business is just useless pedanticism. 2018-07-13T17:08:05Z dlowe: Now, I appreciate useless pedanticism as much as any nerd, but we've been hammering that this for 30 years and it's time to find some new jokes. 2018-07-13T17:08:09Z shka_ joined #lisp 2018-07-13T17:09:07Z jasom: also are we talking only about things with symbol names, or do packages count too? 2018-07-13T17:09:27Z Bike: clhs 3.1.1.1 2018-07-13T17:09:27Z specbot: The Global Environment: http://www.lispworks.com/reference/HyperSpec/Body/03_aaa.htm 2018-07-13T17:09:28Z mflem joined #lisp 2018-07-13T17:09:31Z Bike: closest thing to a list 2018-07-13T17:09:35Z m00natic quit (Remote host closed the connection) 2018-07-13T17:09:50Z stacksmith: Not asking just to start an argument - I am happy with whatever n is. I actually need to know (I think) to analyze source for my project. Just knowing the symbol is not sufficient - I need to know what kind of a binding is implied, and where the binding takes place... 2018-07-13T17:10:43Z Bike: another measure is introspection tools. sbcl's interface to swank has sixteen forms of global definition that aren't sbcl specific 2018-07-13T17:10:50Z Bike: some of them overlap namespace, like defmacro and defun 2018-07-13T17:10:51Z dlowe: I can make my own namespace by just making a hash table and populating it with symbol keys 2018-07-13T17:11:07Z fikka quit (Ping timeout: 244 seconds) 2018-07-13T17:12:10Z stacksmith: Bike: could you point me to the said sbcl's swank interface? Do you mean the implementation-specific files in the swank project? 2018-07-13T17:12:18Z Bike: i do. 2018-07-13T17:12:24Z Bike: specifically, the variable *definition-types* 2018-07-13T17:13:09Z Bike: it's basically: declarations, packages, method combinations, classes, setf expanders, functions, compiler macros, variables, types. 2018-07-13T17:13:47Z Bike: oh, and you sorta need another namespace for struct definitions that aren't classes. 2018-07-13T17:13:48Z graphene quit (Remote host closed the connection) 2018-07-13T17:14:09Z jasom: I think that only variable, function/macro/operators, declarations and tagbody tags are lexically scoped, but I might be wrong. 2018-07-13T17:14:14Z stacksmith: Bike: functions, macros, compiler macros and setf expanders seem to share a 'namespace'... 2018-07-13T17:14:26Z Bike: functions and macros do 2018-07-13T17:14:38Z Bike: the other two are separate 2018-07-13T17:14:51Z Bike: as in, you can have a compiler macro and a function with the same name. 2018-07-13T17:15:01Z graphene joined #lisp 2018-07-13T17:15:19Z stacksmith: Bike: ah. 2018-07-13T17:15:22Z jasom: and if you define a setf expander than the (setf foo) function is ignored 2018-07-13T17:15:44Z Bike: the clhs page on lexical environments includes blocks also, but that's pretty much the same as tagbody tags 2018-07-13T17:16:17Z jasom: totally forgot about blocks, those are part of it too 2018-07-13T17:16:26Z stacksmith: tags and blocks are strictly lexical and have no global meaning, correct? 2018-07-13T17:16:36Z dlowe: slots also have no global meaning 2018-07-13T17:17:34Z Bike: there are no global blocks or tags, no. 2018-07-13T17:19:40Z brettgilio quit (Remote host closed the connection) 2018-07-13T17:20:36Z brettgilio joined #lisp 2018-07-13T17:22:47Z stacksmith: Are restarts in a separate space? 2018-07-13T17:23:29Z JuanDaugherty quit (Remote host closed the connection) 2018-07-13T17:23:44Z jdz quit (Ping timeout: 256 seconds) 2018-07-13T17:23:51Z jdz joined #lisp 2018-07-13T17:24:31Z Bike: they're not lexical 2018-07-13T17:24:48Z graphene quit (Remote host closed the connection) 2018-07-13T17:24:52Z lumm quit (Ping timeout: 256 seconds) 2018-07-13T17:26:05Z graphene joined #lisp 2018-07-13T17:26:06Z acolarh quit (Ping timeout: 265 seconds) 2018-07-13T17:27:11Z fikka joined #lisp 2018-07-13T17:28:45Z xuxuru joined #lisp 2018-07-13T17:28:52Z graphene quit (Read error: Connection reset by peer) 2018-07-13T17:28:53Z igemnace quit (Remote host closed the connection) 2018-07-13T17:29:11Z stacksmith: Bike: right, but is the dynamic binding separate from other bindings for that symbol? 2018-07-13T17:29:26Z dlowe: stacksmith: yes, they're separate 2018-07-13T17:30:07Z graphene joined #lisp 2018-07-13T17:31:46Z stacksmith: I am now up to 10. 1) var/symbol-macros 2)fun/macro 3)compiler-macro 4)setf expander 5)classes/types 6)restarts 7)method combinations 8)declarations 9)tags 10)blocks 2018-07-13T17:31:51Z fikka quit (Ping timeout: 240 seconds) 2018-07-13T17:32:11Z JuanDaugherty joined #lisp 2018-07-13T17:33:28Z stacksmith: and packages. 2018-07-13T17:33:40Z Bike: why are you conflating lexical and global bindings? 2018-07-13T17:34:47Z mathrick quit (Ping timeout: 276 seconds) 2018-07-13T17:35:47Z lumm joined #lisp 2018-07-13T17:36:38Z stacksmith: Bike: looking at source, it does not seem to matter. depending on context, some symbols require a lexical 'search' for the binding site and if not found, have a global meaning. Others are lexical-only - like tags. And slots names come from classes. I think. 2018-07-13T17:36:44Z mathrick joined #lisp 2018-07-13T17:37:05Z Bike: matter to what? 2018-07-13T17:37:18Z jasom: Bike: he's writing a static analyzer 2018-07-13T17:37:42Z fikka joined #lisp 2018-07-13T17:39:05Z acolarh joined #lisp 2018-07-13T17:39:19Z ebrasca quit (Read error: No route to host) 2018-07-13T17:39:28Z ebrasca joined #lisp 2018-07-13T17:39:38Z stacksmith: I was trying to use the sbcl walker but it seems to skip some parts of source, and does not provide information about _where_ the bindings actually take place. 2018-07-13T17:40:06Z Bike: i'm not sure what you mean by "where". 2018-07-13T17:40:30Z Bike: it's not like lexical bindings have to "occur" somehow at runtime. 2018-07-13T17:41:02Z Kundry_Wag quit (Remote host closed the connection) 2018-07-13T17:41:48Z stacksmith: In some situations, like refactoring names, you want to identify the origination of names. 2018-07-13T17:42:41Z fikka quit (Ping timeout: 256 seconds) 2018-07-13T17:45:27Z lumm quit (Ping timeout: 240 seconds) 2018-07-13T17:46:09Z thuffir quit (Ping timeout: 260 seconds) 2018-07-13T17:47:41Z fikka joined #lisp 2018-07-13T17:48:46Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-13T17:49:27Z thuffir joined #lisp 2018-07-13T17:50:29Z Kundry_Wag joined #lisp 2018-07-13T17:51:09Z Kundry_Wag quit (Remote host closed the connection) 2018-07-13T17:51:23Z stacksmith: The location of the lexical binding site in source affects the meaning of symbols with that name in the subtree of the source. Knowing the namespace of a reference is important - you dont want to rename a tag with the same name as a lexical variable, for instance. Or a global variable. Hence the conflation of global and lexical bindings. 2018-07-13T17:51:24Z Kundry_Wag joined #lisp 2018-07-13T17:52:01Z fikka quit (Ping timeout: 248 seconds) 2018-07-13T17:52:17Z skapata joined #lisp 2018-07-13T17:57:32Z shrdlu68 quit (Ping timeout: 276 seconds) 2018-07-13T17:58:04Z lumm joined #lisp 2018-07-13T17:58:49Z stacksmith: Is there a lexical form of setf-expander? 2018-07-13T17:59:51Z Folkol quit (Read error: Connection reset by peer) 2018-07-13T18:00:30Z Folkol joined #lisp 2018-07-13T18:04:06Z stacksmith: CLHS says "If a define-setf-expander form appears as a top level form, ..." which seems to imply that it may be used inside a definition, but the scoping is not clear... 2018-07-13T18:04:13Z nowhereman_ quit (Ping timeout: 256 seconds) 2018-07-13T18:06:30Z Bike: it's global. 2018-07-13T18:06:46Z Bike: pretty much every global defining form has a clause like that. 2018-07-13T18:07:05Z Bike: that said, lexical function bindings affect setf bindings 2018-07-13T18:07:50Z fikka joined #lisp 2018-07-13T18:10:10Z brettgilio quit (Remote host closed the connection) 2018-07-13T18:10:34Z stacksmith: Bike: what does it mean if the form is not a top level form? I am confused. Could you elaborate on how lexical function bindings affect setf bindings? 2018-07-13T18:10:41Z thuffir quit (Ping timeout: 248 seconds) 2018-07-13T18:11:09Z Bike: are you asking what being a "top level form" means? 2018-07-13T18:11:51Z lumm quit (Read error: Connection reset by peer) 2018-07-13T18:12:32Z fikka quit (Ping timeout: 268 seconds) 2018-07-13T18:13:05Z iridioid quit (Ping timeout: 240 seconds) 2018-07-13T18:14:20Z thuffir joined #lisp 2018-07-13T18:20:50Z rpg joined #lisp 2018-07-13T18:23:50Z stacksmith: Yikes. Call me dense, but what the heck happens if a defining macro is inside another definition? It appears that there are no compile-time effects for that form (or the rest of the file), but at some later time - like the next file? 2018-07-13T18:24:21Z jasom: stacksmith: defmacro says exactly what happens if it's not a toplevel form. 2018-07-13T18:25:17Z jasom: the compiler need not store the definition of it, so strange things can happen. Ultimately just don't do that 2018-07-13T18:25:32Z milanj quit (Quit: This computer has gone to sleep) 2018-07-13T18:25:38Z stacksmith: jasom: it says what happens if it is a toplevel form, but not if it is not... 2018-07-13T18:25:57Z jasom: stacksmith: then the compiler doesn't have to stor, but it could if it wanted to 2018-07-13T18:27:17Z jasom: stacksmith: from a practical point of view, your analysis tool could be free to reject code with non-toplevel defmacros 2018-07-13T18:28:15Z stacksmith: jasom: is there a reason the spec doesn't just say that defining macros _should_ be toplevel? Is there a situation where it is useful otherwise, or would be problematic if so stipulated? 2018-07-13T18:28:22Z jasom: non-toplevel DEFUNs have some uses (e.g. a defun inside a let), but I'm strugging to think of any use for a non-toplevel defmacro 2018-07-13T18:28:27Z fikka joined #lisp 2018-07-13T18:29:01Z xuxuru quit (Quit: xuxuru) 2018-07-13T18:29:46Z Kundry_Wag quit (Remote host closed the connection) 2018-07-13T18:30:37Z Bike: stacksmith: if it's not toplevel it doesn't have the effects described if it's toplevel, namely, being done at compile time. the same as any other form, its effects will occur when it's executed. so if it's in a function body, the global macro binding will be made when the function is called and control reaches the defmacro form. 2018-07-13T18:32:04Z Kundry_Wag joined #lisp 2018-07-13T18:32:43Z cage_ quit (Remote host closed the connection) 2018-07-13T18:32:54Z al-damiri quit (Quit: Connection closed for inactivity) 2018-07-13T18:32:59Z stacksmith: Bike: thanks. 2018-07-13T18:33:07Z fikka quit (Ping timeout: 256 seconds) 2018-07-13T18:33:28Z Bike: but no, you don't usually want to do that. 2018-07-13T18:35:52Z Kundry_W_ joined #lisp 2018-07-13T18:36:20Z Kundry_Wag quit (Read error: Connection reset by peer) 2018-07-13T18:37:10Z dddddd joined #lisp 2018-07-13T18:38:57Z fikka joined #lisp 2018-07-13T18:40:52Z stacksmith: Usually you don't macroexpand at runtime, I suppose. But binding a global function at runtime is valid, isn't it? CLHS states that there are no compile-time side effects for defun and the definition is not even available. So a defun deep inside another function body will get compiled with the surrounding function but bound when the surrounding function is executed, correct? 2018-07-13T18:42:53Z stacksmith: I mean when the inner defun is reached, of course, not just the surrounding function. 2018-07-13T18:43:21Z fikka quit (Ping timeout: 240 seconds) 2018-07-13T18:44:27Z jasom: there are limitations to redefining functions though, related to the rules of when it is permissible to inline 2018-07-13T18:45:23Z jasom: but yes, (funcall 'foo) (defun foo () ...) (funcall 'foo) ;; <-- the second funcall will get the new definition of foo 2018-07-13T18:45:47Z jasom: and this is true regardless of whether or not it happens at the toplevel 2018-07-13T18:47:04Z jasom: you can also (setf (fdefinition foo) ...) though 2018-07-13T18:47:11Z Kundry_W_ quit (Remote host closed the connection) 2018-07-13T18:47:31Z jasom: using defun inside a function definition is IMO less idiomatic 2018-07-13T18:48:24Z jasom: you provably cannot do a lot of useful static analysis on unrestricted CL code, so you'll need to determine a subset you are going to work with 2018-07-13T18:48:54Z brettgilio joined #lisp 2018-07-13T18:49:08Z fikka joined #lisp 2018-07-13T18:53:25Z fikka quit (Ping timeout: 244 seconds) 2018-07-13T18:53:43Z pfdietz joined #lisp 2018-07-13T18:53:57Z nowhereman_ joined #lisp 2018-07-13T18:56:57Z stacksmith: Ideally I would restrict the subset to thing actually defined by the standard, but sometimes it's a little hard to figure out as I am only an egg. 2018-07-13T18:57:26Z milanj joined #lisp 2018-07-13T18:58:23Z DingoSaar joined #lisp 2018-07-13T18:58:30Z random-nick quit (Ping timeout: 256 seconds) 2018-07-13T19:02:54Z stacksmith: jasom: I am assuming modern compilers know that you are fiddling with a global function binding, whether it's by setfing fdefinitions or defunning inside a function body, and compile an indirect call. It seems in some cases you can make it impossible to figure out, which should also default the compile to a runtime-safe behaviour. But is there a CLHS restriction of where defun may be located, if not at toplevel? 2018-07-13T19:06:02Z iridioid joined #lisp 2018-07-13T19:06:19Z stacksmith: Or is it just 'undefined behaviour'? 2018-07-13T19:07:36Z k4rtik quit (Ping timeout: 265 seconds) 2018-07-13T19:09:01Z k4rtik joined #lisp 2018-07-13T19:09:10Z fikka joined #lisp 2018-07-13T19:09:24Z Bike: there's no restriction on where defuns go. there doesn't need to be 2018-07-13T19:09:42Z Bike: there are restrictions on how redefinitions take effect, is all 2018-07-13T19:13:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-13T19:14:14Z k4rtik quit (Ping timeout: 276 seconds) 2018-07-13T19:14:19Z Kundry_Wag joined #lisp 2018-07-13T19:14:46Z stacksmith: I truly appreciate the help of all who answered. 2018-07-13T19:15:48Z Kundry_Wag quit (Remote host closed the connection) 2018-07-13T19:15:52Z stacksmith: Is there a static analysis library for CL? I haven't found much - and I can see why... 2018-07-13T19:17:43Z pfdietz: Not that I know of. Macros could be a problem. 2018-07-13T19:19:37Z stacksmith: There are more problems than I ever imagined. A walker almost does the trick, but the walkers I've seen do not correlate source forms to walked forms or provide adequate hooks to definitively walk a form and identify every subform. 2018-07-13T19:19:59Z fikka joined #lisp 2018-07-13T19:22:00Z karlosz quit (Quit: karlosz) 2018-07-13T19:24:16Z pfdietz: A source object can occur more than once in a form, so any such linkage would require some representation of the path down to the objecr. 2018-07-13T19:24:21Z fikka quit (Ping timeout: 240 seconds) 2018-07-13T19:25:25Z random-nick joined #lisp 2018-07-13T19:26:18Z xrash joined #lisp 2018-07-13T19:26:48Z stacksmith: Ideally, the walker would literally walk the source tree with a callback on every cons, providing environmental info and data about the car. I don't care about macroexpansions other than the side-effects such as new bindings, etc. 2018-07-13T19:27:33Z stacksmith: But no. Apparently I am unique in this desire. 2018-07-13T19:28:22Z JuanDaugherty quit (Quit: Exeunt) 2018-07-13T19:28:28Z stacksmith: One would think in the last 60 years or so someone - anyone - would want something like that. 2018-07-13T19:29:21Z warweasle quit (Quit: rcirc on GNU Emacs 24.4.1) 2018-07-13T19:30:09Z fikka joined #lisp 2018-07-13T19:30:28Z pfdietz quit (Read error: Connection reset by peer) 2018-07-13T19:30:57Z iridioid quit (Ping timeout: 240 seconds) 2018-07-13T19:31:47Z iridioid joined #lisp 2018-07-13T19:35:09Z fikka quit (Ping timeout: 265 seconds) 2018-07-13T19:35:37Z Kundry_Wag joined #lisp 2018-07-13T19:35:37Z Kundry_Wag quit (Remote host closed the connection) 2018-07-13T19:35:50Z Kundry_Wag joined #lisp 2018-07-13T19:36:05Z thuffir quit (Ping timeout: 240 seconds) 2018-07-13T19:36:55Z jasom: walkers usually don't walk trees, they walk already read-in forms. 2018-07-13T19:37:07Z jasom: Someone (beach?) has done some work for representation of lisp source code. 2018-07-13T19:37:36Z Kundry_Wag quit (Remote host closed the connection) 2018-07-13T19:37:57Z jasom: You not only lose source locations, but also things like #+/#- and comments when you operate on code already processed with READ 2018-07-13T19:38:45Z jasom: stacksmith: well it's not *just* that nobody's done it, but doing it in the general case is impossible so there is no general purpose tool. 2018-07-13T19:39:18Z jasom: most lisp code includes macros not part of the standard that implement new bindings, so you can't not care about macroexpansions 2018-07-13T19:39:24Z Kundry_Wag joined #lisp 2018-07-13T19:39:26Z Kundry_Wag quit (Remote host closed the connection) 2018-07-13T19:39:30Z pfdietz joined #lisp 2018-07-13T19:40:03Z jasom: and you can't just macroexpand the code because implementations are free to macroexpand standard forms to code that includes non-standard special operators 2018-07-13T19:40:16Z fikka joined #lisp 2018-07-13T19:40:51Z stacksmith: jasom: yeah, I understand. As for macros - by not caring I mean I don't want to see/get callbacks for macroexpansions, but just get a report about new bindings. 2018-07-13T19:40:52Z ebrasca quit (Read error: Connection reset by peer) 2018-07-13T19:41:14Z ebrasca joined #lisp 2018-07-13T19:41:22Z raynold joined #lisp 2018-07-13T19:41:39Z Kundry_Wag joined #lisp 2018-07-13T19:44:34Z fikka quit (Ping timeout: 244 seconds) 2018-07-13T19:44:35Z brettgilio quit (Remote host closed the connection) 2018-07-13T19:46:30Z vlatkoB quit (Remote host closed the connection) 2018-07-13T19:46:48Z Bike: walkers exist. compilers are walkers. some implementations include a more general mapping interface. 2018-07-13T19:46:49Z ebrasca quit (Read error: Connection reset by peer) 2018-07-13T19:46:57Z ebrasca joined #lisp 2018-07-13T19:47:15Z Kundry_Wag quit (Remote host closed the connection) 2018-07-13T19:47:38Z stacksmith: I've been using SBCL's... Bike - have you used others? 2018-07-13T19:47:58Z Kundry_Wag joined #lisp 2018-07-13T19:48:13Z Bike: well, i work with the sicl compiler a lot 2018-07-13T19:48:30Z Bike: michael raskin also wrote a weirdly named walker that might be good 2018-07-13T19:49:16Z Bike: https://gitlab.common-lisp.net/mraskin/agnostic-lizard/ 2018-07-13T19:50:18Z stacksmith: I came across HTML library that had a walker, now can't remember which. Saw lizard, dwim, damnit... 2018-07-13T19:50:20Z cornett joined #lisp 2018-07-13T19:50:40Z stacksmith: Does sicl have a clean walker? 2018-07-13T19:50:43Z ebrasca quit (Read error: Connection reset by peer) 2018-07-13T19:50:47Z Kundry_Wag quit (Remote host closed the connection) 2018-07-13T19:50:52Z ebrasca joined #lisp 2018-07-13T19:52:14Z Bike: not exactly. it generates an intermediate representation that can be mapped over. 2018-07-13T19:52:40Z Kundry_Wag joined #lisp 2018-07-13T19:52:41Z aeth: Bike: not weirdly named, normally named. 2018-07-13T19:52:43Z Kundry_Wag quit (Remote host closed the connection) 2018-07-13T19:53:00Z lumm joined #lisp 2018-07-13T19:53:02Z aeth: adjective-animal is a reasonable naming scheme if you want uniqueness. 2018-07-13T19:53:29Z aeth: Only drawback is it's probably hard to find in Quicklisp 2018-07-13T19:53:37Z shrdlu68 joined #lisp 2018-07-13T19:54:26Z stacksmith: Right. Most of the time those who walk don't mind transforming what's ahead/abandoning what's behind... 2018-07-13T19:55:13Z stacksmith: Bike: does the intermediate representation maintain references back to original forms? 2018-07-13T19:55:58Z Bike: it retains source positions, but there's not really a 1:1 correspondence anyway. 2018-07-13T19:56:12Z Kundry_Wag joined #lisp 2018-07-13T19:58:01Z Bike: literal source forms are kind of a bad format for real analysis 2018-07-13T19:58:35Z brettgilio joined #lisp 2018-07-13T19:59:17Z Kundry_Wag quit (Remote host closed the connection) 2018-07-13T19:59:31Z Kundry_Wag joined #lisp 2018-07-13T19:59:31Z dlowe: maybe so, but when you output the results of your analysis, your poor human needs to find the spot in their (text) codebase. 2018-07-13T19:59:42Z dlowe: pity the human 2018-07-13T20:00:06Z Kundry_Wag quit (Remote host closed the connection) 2018-07-13T20:00:16Z fikka joined #lisp 2018-07-13T20:00:45Z Bike: yeah, that's what the source positions are for. 2018-07-13T20:00:50Z stacksmith: Right. I often wish there was a way to extend conses to stash extra data and yet have everything work. 2018-07-13T20:02:51Z dlowe: well you can 2018-07-13T20:02:58Z dlowe: just make conses have more slots 2018-07-13T20:02:59Z Bike: accessory hash table 2018-07-13T20:03:13Z dlowe: as long as car and cdr still work, no one will notice 2018-07-13T20:04:29Z stacksmith: dlowe: does that really work? I thought conses are subject to black magic inside. 2018-07-13T20:04:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-13T20:04:41Z Bike: i have no idea what dlowe has in mind 2018-07-13T20:05:12Z dlowe: (defclass cons () ((car :accessor car :initarg :car) (cdr :accessor cdr :initarg cdr) (text-location :accessor text-location)) 2018-07-13T20:05:16Z aeth: You can write your own custom conses out of structs. You'd lose about 30% performance, though. 2018-07-13T20:05:27Z aeth: Classes will in general be even worse for performance here. 2018-07-13T20:05:33Z dlowe: or you can edit the conses of your implementation :D 2018-07-13T20:05:51Z Bike: okay, but you'd also need a way to read source text that produces those conses 2018-07-13T20:06:48Z dlowe: Sure. 2018-07-13T20:06:54Z stacksmith: SBCL's cons is a primitive object... Do you think that walkers don't mind walking shit conses as long as car and cdr work and the class name is 'cons'? 2018-07-13T20:07:12Z dlowe: stacksmith: how would they know? 2018-07-13T20:07:19Z dlowe: but yes, they'd be slower 2018-07-13T20:07:29Z Bike: they would know because they're written to call cl:car and cl:cdr 2018-07-13T20:07:39Z Bike: you'd have to hack the walker code to use your cons package 2018-07-13T20:07:41Z Kundry_Wag joined #lisp 2018-07-13T20:07:41Z dlowe: well, yes. 2018-07-13T20:07:51Z stacksmith: Interesting. 2018-07-13T20:07:52Z dlowe: a simple shadowed package 2018-07-13T20:08:01Z dlowe: if SERIES can do it, why not HACKY-CONS 2018-07-13T20:08:02Z Bike: if you want source code but with extra location information attached, beach's CST systems work for that 2018-07-13T20:08:18Z Bike: also have a reader that produces them, so you don't need to do weird shit 2018-07-13T20:08:38Z dlowe: there's still some weird shit involved, sadly 2018-07-13T20:08:59Z dlowe: because conses produced by #. and company will still be standard conses 2018-07-13T20:09:04Z stacksmith: I would need more than location, but a bunch of binding-related info, etc. 2018-07-13T20:09:08Z stacksmith: But yeah. 2018-07-13T20:09:31Z dlowe: stacksmith: I think at this point, you might as well just stop calling what you have conses and start calling them AST nodes 2018-07-13T20:09:43Z Bike: the binding related information is not apparent from mere parsing 2018-07-13T20:09:57Z Bike: dlowe: beach does stuff for arbitrary reader macros 2018-07-13T20:10:21Z HighMemoryDaemon joined #lisp 2018-07-13T20:10:36Z stacksmith: Binding information is largely available from walking, which includes looking into macros and such. 2018-07-13T20:10:44Z fikka joined #lisp 2018-07-13T20:10:44Z Bike: that's not parsing, yes 2018-07-13T20:11:15Z Bike: stacksmith: you could have somewhat freaky, but legal code like (progn #1=(print *x*) (let ((*x* 19)) #1#)). in this case there is one (print *x*) cons that refers to two different bindings. 2018-07-13T20:11:17Z stacksmith: AST nodes is fine - the interesting part is that you can actually compile these. 2018-07-13T20:11:19Z Bike: i really recommend using some kind of internal representation. 2018-07-13T20:11:29Z HighMemoryDaemon: Is Practical Common Lisp the best starting point for someone looking to learn the language? 2018-07-13T20:11:46Z stacksmith: Or convert back to source after refactoring masturbations. 2018-07-13T20:12:00Z Bike: HighMemoryDaemon: if you've programmed before it's pretty good, yeah. 2018-07-13T20:13:21Z HighMemoryDaemon: Bike: Very amazing that it is completely free online. I wish the physical book wasn't so expensive or I'd love to support the author by purchasing it. 2018-07-13T20:15:29Z fikka quit (Ping timeout: 260 seconds) 2018-07-13T20:15:44Z angavrilov quit (Remote host closed the connection) 2018-07-13T20:17:02Z housel quit (Remote host closed the connection) 2018-07-13T20:17:16Z housel joined #lisp 2018-07-13T20:17:49Z varjag quit (Ping timeout: 260 seconds) 2018-07-13T20:20:35Z xrash quit (Ping timeout: 265 seconds) 2018-07-13T20:21:14Z fikka joined #lisp 2018-07-13T20:23:21Z pierpal quit (Quit: Poof) 2018-07-13T20:23:40Z pierpal joined #lisp 2018-07-13T20:24:16Z kerframil joined #lisp 2018-07-13T20:25:03Z shrdlu68 quit (Read error: Connection reset by peer) 2018-07-13T20:25:05Z mindCrime_ quit (Ping timeout: 276 seconds) 2018-07-13T20:25:59Z fikka quit (Ping timeout: 260 seconds) 2018-07-13T20:26:16Z Kundry_Wag quit (Remote host closed the connection) 2018-07-13T20:28:37Z Kundry_Wag joined #lisp 2018-07-13T20:29:24Z shrdlu68 joined #lisp 2018-07-13T20:29:52Z brettgilio quit (Remote host closed the connection) 2018-07-13T20:30:47Z HighMemoryDaemon quit (Quit: ERC (IRC client for Emacs 25.2.2)) 2018-07-13T20:30:58Z moei quit (Quit: Leaving...) 2018-07-13T20:31:15Z kaun joined #lisp 2018-07-13T20:31:26Z fikka joined #lisp 2018-07-13T20:33:30Z scymtym: stacksmith: i second Bike's suggestion of using a non-s-expr representation and the eclector and concrete-syntax-tree libraries (now in quicklisp) specifically. this is a test i made using those in which the lexical variable X and a reference to it are correctly associated despite some obfuscation: https://techfak.de/~jmoringe/eclector-cst-toy-macrolet.png 2018-07-13T20:34:17Z graphene quit (Remote host closed the connection) 2018-07-13T20:35:34Z graphene joined #lisp 2018-07-13T20:35:43Z fikka quit (Ping timeout: 244 seconds) 2018-07-13T20:36:50Z brettgilio joined #lisp 2018-07-13T20:38:25Z ineiros_ quit (Ping timeout: 248 seconds) 2018-07-13T20:39:16Z varjag joined #lisp 2018-07-13T20:39:20Z thuffir joined #lisp 2018-07-13T20:40:32Z pierpal quit (Read error: Connection reset by peer) 2018-07-13T20:40:42Z Smokitch quit 2018-07-13T20:40:46Z pierpal joined #lisp 2018-07-13T20:40:51Z kaun quit (Quit: IRC for Sailfish 0.9) 2018-07-13T20:43:09Z Bike quit (Ping timeout: 252 seconds) 2018-07-13T20:43:27Z thuffir quit (Ping timeout: 240 seconds) 2018-07-13T20:47:36Z pdv joined #lisp 2018-07-13T20:48:36Z brettgilio quit (Remote host closed the connection) 2018-07-13T20:49:18Z pierpa joined #lisp 2018-07-13T20:49:22Z thuffir joined #lisp 2018-07-13T20:51:01Z pdv quit (Client Quit) 2018-07-13T20:51:24Z fikka joined #lisp 2018-07-13T20:53:35Z thuffir quit (Ping timeout: 240 seconds) 2018-07-13T20:56:19Z fikka quit (Ping timeout: 260 seconds) 2018-07-13T20:58:57Z iridioid quit (Ping timeout: 240 seconds) 2018-07-13T21:00:16Z papachan quit (Quit: WeeChat 2.1) 2018-07-13T21:01:49Z fikka joined #lisp 2018-07-13T21:04:18Z pdv joined #lisp 2018-07-13T21:05:45Z k4rtik joined #lisp 2018-07-13T21:05:45Z k4rtik quit (Changing host) 2018-07-13T21:05:45Z k4rtik joined #lisp 2018-07-13T21:06:40Z Pixel_Outlaw joined #lisp 2018-07-13T21:06:49Z fikka quit (Ping timeout: 260 seconds) 2018-07-13T21:08:46Z varjag quit (Ping timeout: 264 seconds) 2018-07-13T21:10:19Z Bike joined #lisp 2018-07-13T21:10:33Z anunnaki quit (Ping timeout: 264 seconds) 2018-07-13T21:11:27Z lumm quit (Ping timeout: 240 seconds) 2018-07-13T21:11:30Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2018-07-13T21:11:38Z lthms left #lisp 2018-07-13T21:11:59Z fikka joined #lisp 2018-07-13T21:12:48Z kerframil quit (Ping timeout: 256 seconds) 2018-07-13T21:13:05Z anunnaki joined #lisp 2018-07-13T21:13:20Z rumbler31 joined #lisp 2018-07-13T21:14:00Z pierpal quit (Read error: Connection reset by peer) 2018-07-13T21:14:48Z graphene quit (Remote host closed the connection) 2018-07-13T21:15:53Z thuffir joined #lisp 2018-07-13T21:16:01Z shka_ quit (Ping timeout: 244 seconds) 2018-07-13T21:16:06Z graphene joined #lisp 2018-07-13T21:16:44Z fikka quit (Ping timeout: 260 seconds) 2018-07-13T21:17:27Z libre-man quit (Ping timeout: 256 seconds) 2018-07-13T21:22:32Z fikka joined #lisp 2018-07-13T21:24:19Z mindCrime_ joined #lisp 2018-07-13T21:25:48Z graphene quit (Remote host closed the connection) 2018-07-13T21:25:50Z shrdlu68 quit (Read error: Connection reset by peer) 2018-07-13T21:25:59Z kerframil joined #lisp 2018-07-13T21:26:19Z zmt01 joined #lisp 2018-07-13T21:27:05Z fikka quit (Ping timeout: 256 seconds) 2018-07-13T21:27:12Z graphene joined #lisp 2018-07-13T21:27:16Z thuffir quit (Ping timeout: 244 seconds) 2018-07-13T21:27:17Z housel quit (Read error: Connection reset by peer) 2018-07-13T21:27:17Z ineiros joined #lisp 2018-07-13T21:27:32Z housel joined #lisp 2018-07-13T21:27:53Z subroot joined #lisp 2018-07-13T21:28:32Z EvW joined #lisp 2018-07-13T21:29:32Z shrdlu68 joined #lisp 2018-07-13T21:29:58Z swampflared quit (Ping timeout: 244 seconds) 2018-07-13T21:29:58Z Oddity quit (Ping timeout: 244 seconds) 2018-07-13T21:30:35Z libre-man joined #lisp 2018-07-13T21:32:41Z fikka joined #lisp 2018-07-13T21:32:46Z LiamH quit (Quit: Leaving.) 2018-07-13T21:34:16Z pdv quit (Remote host closed the connection) 2018-07-13T21:36:33Z Oddity joined #lisp 2018-07-13T21:37:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-13T21:38:19Z fikka joined #lisp 2018-07-13T21:38:49Z rumbler31 quit (Remote host closed the connection) 2018-07-13T21:40:29Z sjl_ quit (Ping timeout: 276 seconds) 2018-07-13T21:41:09Z karlosz joined #lisp 2018-07-13T21:44:51Z nickenchuggets joined #lisp 2018-07-13T21:44:51Z nickenchuggets quit (Changing host) 2018-07-13T21:44:51Z nickenchuggets joined #lisp 2018-07-13T21:46:01Z kerframil quit (Quit: Leaving) 2018-07-13T21:47:59Z housel quit (Read error: Connection reset by peer) 2018-07-13T21:49:47Z rumbler31 joined #lisp 2018-07-13T21:49:48Z orivej joined #lisp 2018-07-13T21:49:57Z shrdlu68 quit (Ping timeout: 240 seconds) 2018-07-13T21:54:27Z raynold quit (Quit: brb reboot) 2018-07-13T21:54:53Z housel joined #lisp 2018-07-13T21:55:51Z moei joined #lisp 2018-07-13T21:57:06Z patlv joined #lisp 2018-07-13T21:58:34Z Murii_ quit (Remote host closed the connection) 2018-07-13T21:59:20Z pfdietz quit (Ping timeout: 276 seconds) 2018-07-13T22:04:32Z josemanuel quit (Quit: leaving) 2018-07-13T22:10:54Z fikka quit (Quit: leaving) 2018-07-13T22:11:13Z fikka joined #lisp 2018-07-13T22:11:23Z dxtr quit (Read error: Connection reset by peer) 2018-07-13T22:16:28Z dxtr joined #lisp 2018-07-13T22:19:10Z rumbler31 quit (Remote host closed the connection) 2018-07-13T22:19:29Z random-nick quit (Ping timeout: 265 seconds) 2018-07-13T22:19:46Z iridioid joined #lisp 2018-07-13T22:19:46Z rumbler31 joined #lisp 2018-07-13T22:19:49Z rumbler31 quit (Remote host closed the connection) 2018-07-13T22:19:51Z k4rtik quit (Ping timeout: 240 seconds) 2018-07-13T22:20:26Z rumbler31 joined #lisp 2018-07-13T22:23:10Z patlv quit (Ping timeout: 264 seconds) 2018-07-13T22:26:03Z eminhi quit (Remote host closed the connection) 2018-07-13T22:32:21Z rumbler3_ joined #lisp 2018-07-13T22:33:15Z rumbler31 quit (Read error: Connection reset by peer) 2018-07-13T22:46:21Z dxtr quit (Ping timeout: 240 seconds) 2018-07-13T22:48:22Z patlv joined #lisp 2018-07-13T22:53:10Z iridioid quit (Ping timeout: 264 seconds) 2018-07-13T22:57:40Z robotoad quit (Quit: robotoad) 2018-07-13T23:04:17Z brettgilio joined #lisp 2018-07-13T23:05:18Z anunnaki is now known as vertigo 2018-07-13T23:05:56Z k4rtik joined #lisp 2018-07-13T23:06:05Z brettgilio quit (Remote host closed the connection) 2018-07-13T23:06:24Z patlv quit (Ping timeout: 260 seconds) 2018-07-13T23:07:35Z stacksmith: scymtym: looks interesting, thanks. 2018-07-13T23:08:35Z brettgilio joined #lisp 2018-07-13T23:08:58Z subr joined #lisp 2018-07-13T23:10:19Z monoda joined #lisp 2018-07-13T23:10:43Z subroot quit (Ping timeout: 244 seconds) 2018-07-13T23:11:32Z monoda_ joined #lisp 2018-07-13T23:11:32Z thuffir joined #lisp 2018-07-13T23:13:53Z monoda__ joined #lisp 2018-07-13T23:14:46Z housel quit (Read error: Connection reset by peer) 2018-07-13T23:14:56Z sjl: ugh, reconsidering my redefining of /= as NOT= after I just lost 10m debugging why (\= n m) was returning t when n and m were both 1 2018-07-13T23:15:33Z monoda quit (Ping timeout: 265 seconds) 2018-07-13T23:15:43Z Bike: huh? 2018-07-13T23:16:14Z anewuser joined #lisp 2018-07-13T23:16:41Z sjl: I had (\= n m) in my code 2018-07-13T23:16:46Z sjl: the function is called /= 2018-07-13T23:16:48Z brettgilio quit (Remote host closed the connection) 2018-07-13T23:16:51Z monoda_ quit (Ping timeout: 240 seconds) 2018-07-13T23:16:51Z EvW quit (Ping timeout: 240 seconds) 2018-07-13T23:16:51Z Bike: oh, so it was =. right. 2018-07-13T23:16:51Z sjl: forward-slash-equals 2018-07-13T23:16:56Z sjl: so it read in as = 2018-07-13T23:18:31Z monoda joined #lisp 2018-07-13T23:19:37Z Kundry_Wag quit (Remote host closed the connection) 2018-07-13T23:20:01Z housel joined #lisp 2018-07-13T23:22:19Z monoda__ quit (Ping timeout: 265 seconds) 2018-07-13T23:22:29Z pagnol quit (Quit: Ex-Chat) 2018-07-13T23:24:10Z DemolitionMan quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2018-07-13T23:25:13Z monoda quit (Ping timeout: 265 seconds) 2018-07-13T23:30:05Z dmiles quit (Ping timeout: 240 seconds) 2018-07-13T23:36:38Z patlv joined #lisp 2018-07-13T23:41:07Z brettgilio joined #lisp 2018-07-13T23:42:58Z dmiles joined #lisp 2018-07-13T23:43:17Z pjb: sjl: I sympathize. Having used MS-DOS and MS-Windows leaves your brains so deteriorated for life. Poor little guy! 2018-07-13T23:43:28Z pierpal joined #lisp 2018-07-13T23:43:43Z ntqz joined #lisp 2018-07-13T23:44:09Z pjb: Confusing / with \ is like confusing your left and your right. 2018-07-13T23:44:15Z sjl: pjb: yeah, it's similar to how prologed emacs use leaves you illiterate, able to communicate only in monosyllabic grunts of "ctrl, meta, meta h" 2018-07-13T23:44:41Z pjb: Or with in-extension command names, with M-x do-this-and-that 2018-07-13T23:44:52Z sjl: unfortunate risks of the profession 2018-07-13T23:46:42Z shifty joined #lisp 2018-07-13T23:47:16Z brettgilio quit (Remote host closed the connection) 2018-07-13T23:49:19Z White_Flame: \= is the Prolog syntax for "does not unify", so maybe that was in your history somewhere 2018-07-13T23:50:14Z aeth: It's also an uncommon smilie, probably better depicted as :-/ 2018-07-13T23:52:10Z sjl: White_Flame: damn, I didn't even think of that. I'm in the middle of the Prolog class SWI is doing this summer. 2018-07-13T23:52:21Z sjl: That explains it. 2018-07-13T23:52:39Z housel` joined #lisp 2018-07-13T23:53:43Z subr quit (Read error: Connection reset by peer) 2018-07-13T23:53:57Z housel quit (Ping timeout: 240 seconds) 2018-07-13T23:56:11Z k4rtik quit (Ping timeout: 244 seconds) 2018-07-13T23:57:22Z brettgilio joined #lisp 2018-07-13T23:57:57Z patlv quit (Ping timeout: 240 seconds) 2018-07-14T00:04:27Z dddddd quit (Remote host closed the connection) 2018-07-14T00:05:28Z robotoad joined #lisp 2018-07-14T00:07:21Z housel` is now known as housel 2018-07-14T00:08:18Z slyrus quit (Quit: slyrus) 2018-07-14T00:08:37Z slyrus joined #lisp 2018-07-14T00:09:21Z fluke` quit (Read error: Connection reset by peer) 2018-07-14T00:10:36Z xrash joined #lisp 2018-07-14T00:10:47Z fluke` joined #lisp 2018-07-14T00:11:40Z SaganMan quit (Quit: WeeChat 1.6) 2018-07-14T00:14:37Z fluke` quit (Remote host closed the connection) 2018-07-14T00:17:22Z pierpal quit (Ping timeout: 244 seconds) 2018-07-14T00:21:09Z brettgilio quit (Remote host closed the connection) 2018-07-14T00:22:05Z Kundry_Wag joined #lisp 2018-07-14T00:24:05Z dmiles quit (Ping timeout: 244 seconds) 2018-07-14T00:26:01Z jasom: as usual, the problem can be blamed on prolog. 2018-07-14T00:26:40Z Kundry_Wag quit (Ping timeout: 244 seconds) 2018-07-14T00:27:21Z stylewarning: hello friends 2018-07-14T00:27:42Z jibanes quit (Ping timeout: 244 seconds) 2018-07-14T00:28:04Z fikka quit (Ping timeout: 260 seconds) 2018-07-14T00:28:36Z LdBeth: Greetings. 2018-07-14T00:29:32Z jibanes joined #lisp 2018-07-14T00:32:01Z brettgilio joined #lisp 2018-07-14T00:33:18Z fikka joined #lisp 2018-07-14T00:35:55Z brettgilio quit (Remote host closed the connection) 2018-07-14T00:37:00Z orivej quit (Ping timeout: 244 seconds) 2018-07-14T00:37:33Z brettgilio joined #lisp 2018-07-14T00:38:00Z brettgilio quit (Remote host closed the connection) 2018-07-14T00:38:34Z fikka quit (Ping timeout: 260 seconds) 2018-07-14T00:38:44Z brettgilio joined #lisp 2018-07-14T00:39:18Z orivej joined #lisp 2018-07-14T00:42:41Z DingoSaar quit (Ping timeout: 248 seconds) 2018-07-14T00:43:42Z fikka joined #lisp 2018-07-14T00:44:12Z patlv joined #lisp 2018-07-14T00:48:01Z BitPuffin quit (Remote host closed the connection) 2018-07-14T00:48:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T00:50:25Z Kundry_Wag joined #lisp 2018-07-14T00:53:48Z fikka joined #lisp 2018-07-14T00:55:33Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-14T00:57:05Z flip214 quit (Ping timeout: 248 seconds) 2018-07-14T00:58:42Z fikka quit (Ping timeout: 244 seconds) 2018-07-14T01:03:15Z brettgilio quit (Remote host closed the connection) 2018-07-14T01:05:50Z ntqz quit 2018-07-14T01:08:25Z karswell joined #lisp 2018-07-14T01:11:27Z nowhereman_ quit (Ping timeout: 240 seconds) 2018-07-14T01:12:57Z nowhereman_ joined #lisp 2018-07-14T01:13:55Z fikka joined #lisp 2018-07-14T01:14:50Z sjl quit (Quit: WeeChat 2.2-dev) 2018-07-14T01:16:48Z graphene quit (Remote host closed the connection) 2018-07-14T01:18:06Z graphene joined #lisp 2018-07-14T01:18:49Z fikka quit (Ping timeout: 260 seconds) 2018-07-14T01:18:59Z Josh_2 quit (Remote host closed the connection) 2018-07-14T01:19:56Z MinnowTaur quit (Remote host closed the connection) 2018-07-14T01:24:23Z fikka joined #lisp 2018-07-14T01:25:18Z Kundry_Wag joined #lisp 2018-07-14T01:26:15Z graphene quit (Remote host closed the connection) 2018-07-14T01:26:58Z mindCrime_ quit (Excess Flood) 2018-07-14T01:27:24Z mindCrime_ joined #lisp 2018-07-14T01:27:36Z graphene joined #lisp 2018-07-14T01:29:09Z fikka quit (Ping timeout: 264 seconds) 2018-07-14T01:30:28Z robotoad quit (Quit: robotoad) 2018-07-14T01:33:24Z markoong quit (Ping timeout: 260 seconds) 2018-07-14T01:34:42Z fikka joined #lisp 2018-07-14T01:39:42Z robotoad joined #lisp 2018-07-14T01:39:57Z fikka quit (Ping timeout: 264 seconds) 2018-07-14T01:43:49Z brettgilio joined #lisp 2018-07-14T01:48:34Z mindCrime_ quit (Ping timeout: 260 seconds) 2018-07-14T01:54:56Z fikka joined #lisp 2018-07-14T01:58:37Z FreeBirdLjj joined #lisp 2018-07-14T01:59:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T02:02:44Z red-dot joined #lisp 2018-07-14T02:02:46Z FreeBirdLjj quit (Ping timeout: 244 seconds) 2018-07-14T02:03:18Z brettgilio quit (Remote host closed the connection) 2018-07-14T02:05:20Z fikka joined #lisp 2018-07-14T02:07:07Z DingoSaar joined #lisp 2018-07-14T02:08:15Z flip214 joined #lisp 2018-07-14T02:08:16Z flip214 quit (Changing host) 2018-07-14T02:08:16Z flip214 joined #lisp 2018-07-14T02:10:09Z fikka quit (Ping timeout: 260 seconds) 2018-07-14T02:12:06Z milanj quit (Quit: This computer has gone to sleep) 2018-07-14T02:13:37Z jibanes quit (Ping timeout: 244 seconds) 2018-07-14T02:15:21Z fikka joined #lisp 2018-07-14T02:15:29Z mindCrime_ joined #lisp 2018-07-14T02:15:31Z pierpa quit (Quit: Page closed) 2018-07-14T02:15:33Z tll joined #lisp 2018-07-14T02:15:43Z jibanes joined #lisp 2018-07-14T02:16:27Z brettgilio joined #lisp 2018-07-14T02:19:04Z buffergn0me joined #lisp 2018-07-14T02:19:19Z rumbler3_ quit (Remote host closed the connection) 2018-07-14T02:19:49Z fikka quit (Ping timeout: 244 seconds) 2018-07-14T02:22:06Z pjb` joined #lisp 2018-07-14T02:23:20Z pjb quit (Ping timeout: 256 seconds) 2018-07-14T02:26:19Z brettgilio quit (Quit: Leaving) 2018-07-14T02:30:03Z _whitelogger quit (Remote host closed the connection) 2018-07-14T02:32:15Z _whitelogger joined #lisp 2018-07-14T02:34:09Z patlv quit (Remote host closed the connection) 2018-07-14T02:34:38Z patlv joined #lisp 2018-07-14T02:34:47Z k4rtik joined #lisp 2018-07-14T02:35:52Z fikka joined #lisp 2018-07-14T02:37:20Z graphene quit (Remote host closed the connection) 2018-07-14T02:38:39Z graphene joined #lisp 2018-07-14T02:38:51Z patlv quit (Ping timeout: 240 seconds) 2018-07-14T02:40:05Z graphene quit (Remote host closed the connection) 2018-07-14T02:40:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T02:40:42Z Kundry_W_ joined #lisp 2018-07-14T02:40:57Z k4rtik quit (Ping timeout: 240 seconds) 2018-07-14T02:41:29Z graphene joined #lisp 2018-07-14T02:41:57Z pjb` quit (Remote host closed the connection) 2018-07-14T02:43:08Z pjb` joined #lisp 2018-07-14T02:45:22Z pierpal joined #lisp 2018-07-14T02:45:44Z Kundry_W_ quit (Ping timeout: 260 seconds) 2018-07-14T02:46:21Z fikka joined #lisp 2018-07-14T02:50:41Z fikka quit (Ping timeout: 248 seconds) 2018-07-14T02:56:04Z nsrahmad joined #lisp 2018-07-14T02:56:37Z fikka joined #lisp 2018-07-14T03:00:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T03:02:27Z quazimodo quit (Ping timeout: 240 seconds) 2018-07-14T03:04:27Z quazimodo joined #lisp 2018-07-14T03:08:30Z graphene quit (Read error: Connection reset by peer) 2018-07-14T03:09:48Z graphene joined #lisp 2018-07-14T03:16:27Z fikka joined #lisp 2018-07-14T03:18:14Z pjb` quit (Remote host closed the connection) 2018-07-14T03:18:46Z graphene quit (Remote host closed the connection) 2018-07-14T03:19:48Z pjb` joined #lisp 2018-07-14T03:19:50Z rumbler31 joined #lisp 2018-07-14T03:20:05Z graphene joined #lisp 2018-07-14T03:20:26Z jeosol: CL = best programming language there is, when you hit that sweet spot 2018-07-14T03:20:31Z jeosol: morning guys 2018-07-14T03:20:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T03:22:23Z pjb` quit (Remote host closed the connection) 2018-07-14T03:22:59Z Kundry_Wag quit (Remote host closed the connection) 2018-07-14T03:23:32Z Kundry_Wag joined #lisp 2018-07-14T03:24:06Z pjb` joined #lisp 2018-07-14T03:24:27Z rumbler31 quit (Ping timeout: 240 seconds) 2018-07-14T03:26:57Z fikka joined #lisp 2018-07-14T03:27:26Z fikka quit (Read error: Connection reset by peer) 2018-07-14T03:27:28Z graphene quit (Remote host closed the connection) 2018-07-14T03:28:45Z anewuser quit (Quit: anewuser) 2018-07-14T03:28:45Z graphene joined #lisp 2018-07-14T03:28:54Z buffergn0me quit (Ping timeout: 260 seconds) 2018-07-14T03:29:46Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-14T03:30:06Z jkordani quit (Read error: Connection reset by peer) 2018-07-14T03:31:51Z slyrus_ quit (Ping timeout: 268 seconds) 2018-07-14T03:32:14Z pjb` quit (Remote host closed the connection) 2018-07-14T03:32:45Z karlosz quit (Ping timeout: 264 seconds) 2018-07-14T03:34:15Z pierpal quit (Quit: Poof) 2018-07-14T03:34:26Z pjb` joined #lisp 2018-07-14T03:34:31Z pierpal joined #lisp 2018-07-14T03:35:21Z lavaflow_ quit (Ping timeout: 240 seconds) 2018-07-14T03:37:42Z igemnace joined #lisp 2018-07-14T03:38:17Z stylewarning: jeosol: CL could be better 2018-07-14T03:39:00Z pjb` quit (Remote host closed the connection) 2018-07-14T03:39:06Z graphene quit (Remote host closed the connection) 2018-07-14T03:39:29Z lavaflow_ joined #lisp 2018-07-14T03:40:22Z pjb` joined #lisp 2018-07-14T03:41:32Z graphene joined #lisp 2018-07-14T03:43:35Z brettgilio joined #lisp 2018-07-14T03:43:40Z graphene quit (Remote host closed the connection) 2018-07-14T03:44:58Z graphene joined #lisp 2018-07-14T03:45:21Z slyrus_ joined #lisp 2018-07-14T03:47:17Z fikka joined #lisp 2018-07-14T03:47:57Z pjb` quit (Remote host closed the connection) 2018-07-14T03:49:23Z brettgilio quit (Remote host closed the connection) 2018-07-14T03:51:32Z nsrahmad quit (Ping timeout: 265 seconds) 2018-07-14T03:51:47Z fikka quit (Ping timeout: 244 seconds) 2018-07-14T03:57:28Z slyrus_ quit (Ping timeout: 244 seconds) 2018-07-14T04:00:02Z emacsomancer joined #lisp 2018-07-14T04:01:03Z Kundry_Wag joined #lisp 2018-07-14T04:02:06Z edgar-rft: stylewarning, what's wrong with CopyLeft? 2018-07-14T04:02:23Z EvW joined #lisp 2018-07-14T04:02:48Z stylewarning: CopyLeft could have cool things like recursive structures and parametric polymorphism and jump tables 2018-07-14T04:03:03Z edgar-rft: that's definitely true 2018-07-14T04:03:08Z stylewarning: (: 2018-07-14T04:03:39Z edgar-rft jumps on his table 2018-07-14T04:03:53Z parjanya: recursively? 2018-07-14T04:04:21Z DingoSaar quit (Ping timeout: 240 seconds) 2018-07-14T04:05:09Z caltelt joined #lisp 2018-07-14T04:06:55Z emacsomancer quit (Read error: Connection reset by peer) 2018-07-14T04:07:37Z fikka joined #lisp 2018-07-14T04:08:22Z edgar-rft: I'll curse when I fall down 2018-07-14T04:08:55Z edgar-rft: Then you can rcurse 2018-07-14T04:09:04Z edgar-rft: *recurse 2018-07-14T04:09:46Z slyrus_ joined #lisp 2018-07-14T04:10:40Z PuercoPop: What I would like is an extensible environment to develop in similar to Smalltalk. McCLIM is the best FLOSS alternative in that direction that I know of. But as they say, "Write the code you want to see in the World" 2018-07-14T04:12:27Z fikka quit (Ping timeout: 244 seconds) 2018-07-14T04:14:38Z stylewarning: parjanya: I want to DEFSTRUCT A and B with them referring to one another with :type and not have CL croak 2018-07-14T04:16:38Z parjanya quit (Read error: Connection reset by peer) 2018-07-14T04:20:59Z rumbler31 joined #lisp 2018-07-14T04:22:49Z housel quit (Remote host closed the connection) 2018-07-14T04:23:04Z housel joined #lisp 2018-07-14T04:25:11Z Bike: definition forms not based on compile time side effecting? wack 2018-07-14T04:25:44Z fikka joined #lisp 2018-07-14T04:26:24Z rumbler31 quit (Ping timeout: 244 seconds) 2018-07-14T04:30:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T04:31:56Z Pixel_Outlaw quit (Quit: Leaving) 2018-07-14T04:34:27Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-14T04:36:13Z fikka joined #lisp 2018-07-14T04:38:27Z orivej quit (Ping timeout: 268 seconds) 2018-07-14T04:38:59Z Bike quit (Quit: Lost terminal) 2018-07-14T04:40:05Z patlv joined #lisp 2018-07-14T04:41:10Z fikka quit (Ping timeout: 264 seconds) 2018-07-14T04:46:27Z fikka joined #lisp 2018-07-14T04:48:33Z slyrus_ quit (Ping timeout: 248 seconds) 2018-07-14T04:49:00Z patlv quit (Remote host closed the connection) 2018-07-14T04:49:25Z patlv joined #lisp 2018-07-14T04:50:51Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T04:53:34Z SaganMan joined #lisp 2018-07-14T04:53:38Z graphene quit (Remote host closed the connection) 2018-07-14T04:53:45Z igemnace quit (Remote host closed the connection) 2018-07-14T04:54:57Z graphene joined #lisp 2018-07-14T04:56:52Z fikka joined #lisp 2018-07-14T05:01:39Z fikka quit (Ping timeout: 260 seconds) 2018-07-14T05:02:25Z slyrus_ joined #lisp 2018-07-14T05:05:05Z brettgilio joined #lisp 2018-07-14T05:06:54Z fikka joined #lisp 2018-07-14T05:07:27Z patlv quit (Ping timeout: 240 seconds) 2018-07-14T05:08:12Z brettgilio quit (Remote host closed the connection) 2018-07-14T05:09:56Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-14T05:11:25Z brettgilio joined #lisp 2018-07-14T05:11:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T05:17:02Z fikka joined #lisp 2018-07-14T05:20:27Z mflem quit (Read error: Connection reset by peer) 2018-07-14T05:21:10Z Oddity quit (Ping timeout: 244 seconds) 2018-07-14T05:21:41Z fikka quit (Ping timeout: 244 seconds) 2018-07-14T05:22:02Z brettgilio quit (Remote host closed the connection) 2018-07-14T05:23:38Z brettgilio joined #lisp 2018-07-14T05:26:20Z buffergn0me joined #lisp 2018-07-14T05:28:06Z Oddity joined #lisp 2018-07-14T05:34:27Z graphene quit (Remote host closed the connection) 2018-07-14T05:34:58Z brettgilio quit (Remote host closed the connection) 2018-07-14T05:35:44Z eminhi joined #lisp 2018-07-14T05:35:44Z graphene joined #lisp 2018-07-14T05:37:09Z fikka joined #lisp 2018-07-14T05:37:16Z beach: Good morning everyone! 2018-07-14T05:39:42Z brettgilio joined #lisp 2018-07-14T05:40:55Z brettgilio quit (Remote host closed the connection) 2018-07-14T05:41:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T05:42:30Z nowhereman_ quit (Read error: Connection reset by peer) 2018-07-14T05:42:42Z nowhere_man joined #lisp 2018-07-14T05:42:47Z brettgilio joined #lisp 2018-07-14T05:48:03Z fikka joined #lisp 2018-07-14T05:48:53Z brettgilio quit (Remote host closed the connection) 2018-07-14T05:52:32Z brettgilio joined #lisp 2018-07-14T05:52:51Z EvW quit (Ping timeout: 240 seconds) 2018-07-14T05:53:09Z fikka quit (Ping timeout: 264 seconds) 2018-07-14T05:54:18Z nika joined #lisp 2018-07-14T05:58:18Z fikka joined #lisp 2018-07-14T06:00:04Z skapata quit (Remote host closed the connection) 2018-07-14T06:02:56Z fikka quit (Ping timeout: 268 seconds) 2018-07-14T06:03:17Z eminhi quit (Remote host closed the connection) 2018-07-14T06:04:50Z k4rtik joined #lisp 2018-07-14T06:07:27Z pierpal quit (Quit: Poof) 2018-07-14T06:07:45Z pierpal joined #lisp 2018-07-14T06:10:58Z ebrasca quit (Read error: Connection reset by peer) 2018-07-14T06:11:07Z ebrasca joined #lisp 2018-07-14T06:14:22Z shrdlu68 joined #lisp 2018-07-14T06:18:12Z fikka joined #lisp 2018-07-14T06:22:39Z fikka quit (Ping timeout: 244 seconds) 2018-07-14T06:23:16Z wxie joined #lisp 2018-07-14T06:25:32Z housel quit (Remote host closed the connection) 2018-07-14T06:27:23Z SN joined #lisp 2018-07-14T06:28:49Z shrdlu68 quit (Ping timeout: 256 seconds) 2018-07-14T06:29:21Z red-dot quit (Ping timeout: 240 seconds) 2018-07-14T06:29:28Z SN is now known as red-dot 2018-07-14T06:30:53Z shrdlu68 joined #lisp 2018-07-14T06:31:09Z FreeBirdLjj joined #lisp 2018-07-14T06:31:30Z pjb joined #lisp 2018-07-14T06:31:53Z Kundry_Wag joined #lisp 2018-07-14T06:35:39Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-14T06:37:37Z red-dot joined #lisp 2018-07-14T06:37:45Z rippa joined #lisp 2018-07-14T06:38:26Z fikka joined #lisp 2018-07-14T06:39:20Z jasmith quit (Ping timeout: 276 seconds) 2018-07-14T06:40:57Z thuffir quit (Ping timeout: 240 seconds) 2018-07-14T06:41:24Z jasmith joined #lisp 2018-07-14T06:43:09Z fikka quit (Ping timeout: 260 seconds) 2018-07-14T06:46:33Z buffergn0me quit (Ping timeout: 264 seconds) 2018-07-14T06:47:22Z vlatkoB joined #lisp 2018-07-14T06:49:16Z fikka joined #lisp 2018-07-14T06:51:01Z milanj joined #lisp 2018-07-14T06:51:37Z thuffir joined #lisp 2018-07-14T06:52:57Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-14T06:53:53Z fikka quit (Ping timeout: 248 seconds) 2018-07-14T06:58:34Z nickenchuggets quit (Quit: Leaving) 2018-07-14T07:02:44Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2018-07-14T07:03:57Z slyrus_ quit (Ping timeout: 240 seconds) 2018-07-14T07:04:05Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-14T07:04:41Z saki joined #lisp 2018-07-14T07:05:25Z jasmith quit (Quit: Leaving) 2018-07-14T07:05:52Z eminhi joined #lisp 2018-07-14T07:06:27Z chiyosaki quit (Ping timeout: 240 seconds) 2018-07-14T07:09:14Z fikka joined #lisp 2018-07-14T07:09:35Z froggey quit (Ping timeout: 240 seconds) 2018-07-14T07:12:20Z jasmith joined #lisp 2018-07-14T07:12:37Z k4rtik quit (Ping timeout: 268 seconds) 2018-07-14T07:12:46Z FreeBirdLjj joined #lisp 2018-07-14T07:13:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T07:16:40Z froggey joined #lisp 2018-07-14T07:16:50Z ebrasca quit (Remote host closed the connection) 2018-07-14T07:17:26Z slyrus_ joined #lisp 2018-07-14T07:18:13Z nirved quit (Quit: Leaving) 2018-07-14T07:18:25Z brettgilio quit (Remote host closed the connection) 2018-07-14T07:19:44Z fikka joined #lisp 2018-07-14T07:22:51Z Kundry_Wag joined #lisp 2018-07-14T07:24:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T07:28:02Z Kundry_Wag quit (Ping timeout: 268 seconds) 2018-07-14T07:29:14Z shrdlu68 quit (Ping timeout: 260 seconds) 2018-07-14T07:29:49Z fikka joined #lisp 2018-07-14T07:31:06Z shrdlu68 joined #lisp 2018-07-14T07:34:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T07:39:56Z fikka joined #lisp 2018-07-14T07:40:32Z fikka quit (Read error: Connection reset by peer) 2018-07-14T07:40:42Z pseudonymous_ quit (Quit: Leaving) 2018-07-14T07:44:09Z thuffir quit (Ping timeout: 264 seconds) 2018-07-14T07:52:57Z caltelt quit (Ping timeout: 240 seconds) 2018-07-14T07:57:20Z shrdlu68 quit (Ping timeout: 276 seconds) 2018-07-14T07:57:57Z wxie quit (Quit: Bye.) 2018-07-14T08:00:23Z fikka joined #lisp 2018-07-14T08:05:10Z fikka quit (Ping timeout: 264 seconds) 2018-07-14T08:09:00Z lavaflow_ quit (Read error: Connection reset by peer) 2018-07-14T08:09:47Z lavaflow_ joined #lisp 2018-07-14T08:13:10Z pjb quit (Remote host closed the connection) 2018-07-14T08:18:31Z johnnymacs joined #lisp 2018-07-14T08:19:41Z johnnymacs: Linked lists are turing complete yes? 2018-07-14T08:20:44Z fikka joined #lisp 2018-07-14T08:21:48Z beach: johnnymacs: What on earth is that supposed to mean? Linked lists do not have any computation power. 2018-07-14T08:22:10Z shka_ joined #lisp 2018-07-14T08:23:46Z angavrilov joined #lisp 2018-07-14T08:24:49Z johnnymacs: Is it not true that I can represent the number five as a linked list 5 deep and represent subtractionf rom that list as popping the the list 3 times to get a list 2 deep. And isn't it true that I can represent an array as a list, and isn't it true that I can represent an integer reteurn value as a list, and isn't it true I can represent and integer input value as a list? 2018-07-14T08:25:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T08:27:59Z beach: I think you need to read up on Turing completeness. 2018-07-14T08:29:12Z johnnymacs: Isn't it true that early lisps were implemented using only linked lists? 2018-07-14T08:30:03Z stylewarning: johnnymacs: representation of values is only a part of any sort of computing device/program/interpreter/etc 2018-07-14T08:30:19Z stylewarning: johnnymacs: What is the thing that actually transforms those lists? 2018-07-14T08:30:48Z stylewarning: Even if we can represent 2 and 3 as lists, who is in charge of computing, say, 2+3 as a list? 2018-07-14T08:31:09Z fikka joined #lisp 2018-07-14T08:31:22Z johnnymacs: c I suppose 2018-07-14T08:33:14Z stylewarning: Whatever that “something” is—an interpreter—is what you can have a conversation about Turing completeness over 2018-07-14T08:33:34Z LdBeth: stylewarning: you may be interested in lambda calculus 2018-07-14T08:34:18Z johnnymacs: I think I understand now thank you 2018-07-14T08:34:35Z stylewarning: LdBeth: how about System Fω? :) 2018-07-14T08:35:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T08:38:53Z LdBeth: Just get back from Forth, now I learned how to program without lists 2018-07-14T08:40:27Z Kundry_Wag joined #lisp 2018-07-14T08:41:13Z fikka joined #lisp 2018-07-14T08:44:51Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-14T08:45:46Z fikka quit (Ping timeout: 244 seconds) 2018-07-14T08:49:44Z orivej joined #lisp 2018-07-14T08:57:47Z johnnymacs quit (Ping timeout: 276 seconds) 2018-07-14T09:00:32Z Folkol_ joined #lisp 2018-07-14T09:01:32Z Kundry_Wag joined #lisp 2018-07-14T09:01:33Z Folkol_ quit (Client Quit) 2018-07-14T09:01:44Z fikka joined #lisp 2018-07-14T09:03:13Z Folkol_ joined #lisp 2018-07-14T09:06:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T09:12:08Z fikka joined #lisp 2018-07-14T09:16:46Z fikka quit (Ping timeout: 244 seconds) 2018-07-14T09:17:16Z pdv joined #lisp 2018-07-14T09:20:13Z pdv quit (Client Quit) 2018-07-14T09:20:19Z dddddd joined #lisp 2018-07-14T09:21:27Z BitPuffin joined #lisp 2018-07-14T09:25:36Z SaganMan: Morning! 2018-07-14T09:29:38Z rozenglass joined #lisp 2018-07-14T09:30:29Z thuffir joined #lisp 2018-07-14T09:32:11Z fikka joined #lisp 2018-07-14T09:34:51Z Kundry_Wag quit (Ping timeout: 244 seconds) 2018-07-14T09:35:04Z thuffir quit (Ping timeout: 268 seconds) 2018-07-14T09:36:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T09:37:34Z thuffir joined #lisp 2018-07-14T09:41:26Z Folkol_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-14T09:42:38Z fikka joined #lisp 2018-07-14T09:43:19Z beach: Hello SaganMan. 2018-07-14T09:43:50Z SaganMan: Hello beach, how is your day? 2018-07-14T09:43:59Z beach: So far so good. Yours? 2018-07-14T09:47:15Z fikka quit (Ping timeout: 244 seconds) 2018-07-14T09:48:17Z fluke` joined #lisp 2018-07-14T09:49:27Z thuffir quit (Ping timeout: 240 seconds) 2018-07-14T09:49:28Z Folkol_ joined #lisp 2018-07-14T09:49:46Z stacksmith: counted 2018-07-14T09:50:19Z stacksmith: Sorry, wrong window. 2018-07-14T09:51:34Z Murii_ joined #lisp 2018-07-14T09:52:45Z SaganMan: beach: Good. How is your research going? 2018-07-14T09:52:59Z fikka joined #lisp 2018-07-14T09:53:27Z SaganMan: stacksmith: haha, nice nick. What are you? data structures nerd? 2018-07-14T09:54:20Z thuffir joined #lisp 2018-07-14T09:56:58Z beach: SaganMan: According to plan. Thanks! 2018-07-14T09:57:53Z fikka quit (Ping timeout: 248 seconds) 2018-07-14T09:58:39Z stacksmith: Sagan, some kind of nerd. data structures will do. 2018-07-14T09:59:22Z pdv joined #lisp 2018-07-14T09:59:46Z adlai joined #lisp 2018-07-14T10:02:52Z adlai left #lisp 2018-07-14T10:07:09Z Kundry_Wag joined #lisp 2018-07-14T10:11:49Z adlai joined #lisp 2018-07-14T10:12:21Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-14T10:13:11Z fikka joined #lisp 2018-07-14T10:13:47Z random-nick joined #lisp 2018-07-14T10:17:01Z faraco joined #lisp 2018-07-14T10:17:02Z faraco quit (Changing host) 2018-07-14T10:17:02Z faraco joined #lisp 2018-07-14T10:17:29Z faraco quit (Client Quit) 2018-07-14T10:17:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T10:23:37Z fikka joined #lisp 2018-07-14T10:26:13Z pdv_ joined #lisp 2018-07-14T10:26:13Z pdv quit (Read error: Connection reset by peer) 2018-07-14T10:27:29Z thuffir quit (Ping timeout: 276 seconds) 2018-07-14T10:28:31Z fikka quit (Ping timeout: 256 seconds) 2018-07-14T10:31:39Z pdv_ quit (Quit: Mutter: www.mutterirc.com) 2018-07-14T10:32:11Z faraco joined #lisp 2018-07-14T10:32:11Z faraco quit (Changing host) 2018-07-14T10:32:11Z faraco joined #lisp 2018-07-14T10:32:13Z faraco quit (Client Quit) 2018-07-14T10:32:37Z markoong joined #lisp 2018-07-14T10:33:36Z fikka joined #lisp 2018-07-14T10:35:31Z faraco joined #lisp 2018-07-14T10:35:31Z faraco quit (Changing host) 2018-07-14T10:35:31Z faraco joined #lisp 2018-07-14T10:35:37Z faraco quit (Client Quit) 2018-07-14T10:36:30Z lumm joined #lisp 2018-07-14T10:37:12Z pdv_ joined #lisp 2018-07-14T10:38:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T10:38:38Z Folkol_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-14T10:39:28Z eminhi quit (Remote host closed the connection) 2018-07-14T10:40:31Z pdv_ quit (Client Quit) 2018-07-14T10:40:34Z lumm quit (Client Quit) 2018-07-14T10:40:52Z pdv_ joined #lisp 2018-07-14T10:40:56Z Folkol_ joined #lisp 2018-07-14T10:41:10Z lumm joined #lisp 2018-07-14T10:43:56Z fikka joined #lisp 2018-07-14T10:44:00Z pdv_ quit (Client Quit) 2018-07-14T10:44:25Z fikka quit (Read error: Connection reset by peer) 2018-07-14T10:48:21Z lnostdal quit (Ping timeout: 256 seconds) 2018-07-14T10:49:10Z pdv_ joined #lisp 2018-07-14T10:49:20Z thuffir joined #lisp 2018-07-14T10:51:32Z pdv_ quit (Client Quit) 2018-07-14T10:54:58Z SaganMan quit (Ping timeout: 264 seconds) 2018-07-14T10:57:45Z pdv_ joined #lisp 2018-07-14T10:59:14Z lumm quit (Ping timeout: 260 seconds) 2018-07-14T11:04:19Z fikka joined #lisp 2018-07-14T11:05:36Z pdv_ quit (Remote host closed the connection) 2018-07-14T11:06:41Z thuffir quit (Ping timeout: 248 seconds) 2018-07-14T11:08:51Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T11:13:07Z xrash quit (Ping timeout: 268 seconds) 2018-07-14T11:14:46Z fikka joined #lisp 2018-07-14T11:14:49Z thuffir joined #lisp 2018-07-14T11:15:26Z igemnace joined #lisp 2018-07-14T11:19:39Z fikka quit (Ping timeout: 260 seconds) 2018-07-14T11:20:48Z Kevslinger quit (Quit: Connection closed for inactivity) 2018-07-14T11:24:44Z fikka joined #lisp 2018-07-14T11:25:07Z lumm joined #lisp 2018-07-14T11:29:33Z fikka quit (Ping timeout: 244 seconds) 2018-07-14T11:32:07Z pierpal quit (Quit: Poof) 2018-07-14T11:32:22Z Kundry_Wag joined #lisp 2018-07-14T11:32:23Z pierpal joined #lisp 2018-07-14T11:38:05Z Folkol_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-14T11:39:28Z Folkol_ joined #lisp 2018-07-14T11:44:52Z fikka joined #lisp 2018-07-14T11:47:55Z Inline left #lisp 2018-07-14T11:48:35Z thuffir quit (Read error: Connection reset by peer) 2018-07-14T11:49:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T11:50:00Z Josh_2 joined #lisp 2018-07-14T11:55:42Z fikka joined #lisp 2018-07-14T11:56:08Z pjb joined #lisp 2018-07-14T11:57:02Z lnostdal joined #lisp 2018-07-14T11:57:44Z User_ joined #lisp 2018-07-14T12:00:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T12:01:22Z User_ quit (Remote host closed the connection) 2018-07-14T12:01:27Z rpg joined #lisp 2018-07-14T12:01:41Z d4ryus1 joined #lisp 2018-07-14T12:02:17Z makomo joined #lisp 2018-07-14T12:02:59Z User_ joined #lisp 2018-07-14T12:03:44Z User_ quit (Remote host closed the connection) 2018-07-14T12:04:27Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-14T12:04:34Z d4ryus quit (Ping timeout: 264 seconds) 2018-07-14T12:05:46Z fikka joined #lisp 2018-07-14T12:06:21Z pioneer42 joined #lisp 2018-07-14T12:10:59Z fikka quit (Ping timeout: 260 seconds) 2018-07-14T12:14:29Z thuffir joined #lisp 2018-07-14T12:16:03Z fikka joined #lisp 2018-07-14T12:16:20Z Bike joined #lisp 2018-07-14T12:17:13Z jeosol: stylewarning: I missed your comment, about CL being better. My comment yesterday was because I discovered a nasty date related bug in my large code base. It didn't take long to fix the change, just need to add :before defmethod 2018-07-14T12:18:04Z jeosol: regarding your comment being better. That's possible. I mostly focus on the (my) application side and try to do most things as I understand the language 2018-07-14T12:18:13Z jeosol: btw, morning guys 2018-07-14T12:19:09Z thuffir quit (Ping timeout: 260 seconds) 2018-07-14T12:20:16Z jeosol: what is the best way to read the output log file (can get as large as 10MB) of a program that runs for several hours, typically 2 to 7 hours. I have to do this for multiple cases also. 2018-07-14T12:20:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T12:21:40Z jeosol: The reason I want to read the file, is that it emits several messages during the run, e.g., changes in the state of the program, current simulation time (infer % complete), and other info that may be useful to make dynamic changes for next run 2018-07-14T12:22:32Z nika quit (Quit: Leaving...) 2018-07-14T12:23:03Z jeosol: For an example of such a message, here is one (running tail -f file) => STEP 1011 TIME= 5607.00 DAYS ( +2.0 DAYS REPT 1 ITS) (9-MAY-2031) 2018-07-14T12:24:39Z jeosol: In this case and for this message, I would be picking up information about TIME (5607 days) and DATE (9-MAY-2031). I figure I'll use some time of regex but it would not be efficient to read the whole file each time (methinks) 2018-07-14T12:26:04Z fikka joined #lisp 2018-07-14T12:30:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T12:36:06Z patlv joined #lisp 2018-07-14T12:36:20Z fikka joined #lisp 2018-07-14T12:40:51Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T12:45:38Z mprelude joined #lisp 2018-07-14T12:45:53Z mprelude quit (Client Quit) 2018-07-14T12:46:21Z fikka joined #lisp 2018-07-14T12:50:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T12:51:03Z gravicappa joined #lisp 2018-07-14T12:51:52Z karlosz joined #lisp 2018-07-14T12:52:09Z _death: what's wrong with reading it line by line? 2018-07-14T12:52:44Z lnostdal quit (Ping timeout: 244 seconds) 2018-07-14T12:52:46Z kobain joined #lisp 2018-07-14T12:57:01Z fikka joined #lisp 2018-07-14T13:01:31Z fikka quit (Ping timeout: 244 seconds) 2018-07-14T13:01:45Z Cthulhux quit (Changing host) 2018-07-14T13:01:45Z Cthulhux joined #lisp 2018-07-14T13:05:52Z lnostdal joined #lisp 2018-07-14T13:07:43Z lumm quit (Ping timeout: 244 seconds) 2018-07-14T13:08:17Z ebrasca joined #lisp 2018-07-14T13:08:19Z milanj_ joined #lisp 2018-07-14T13:09:46Z igemnace quit (Quit: WeeChat 2.1) 2018-07-14T13:10:57Z lnostdal quit (Ping timeout: 240 seconds) 2018-07-14T13:11:04Z milanj quit (Ping timeout: 260 seconds) 2018-07-14T13:11:56Z ebrasca quit (Remote host closed the connection) 2018-07-14T13:12:32Z ebrasca joined #lisp 2018-07-14T13:17:01Z fikka joined #lisp 2018-07-14T13:19:20Z thuffir joined #lisp 2018-07-14T13:21:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T13:25:34Z karlosz quit (Quit: karlosz) 2018-07-14T13:26:03Z jmercouris joined #lisp 2018-07-14T13:27:28Z fikka joined #lisp 2018-07-14T13:28:54Z patlv quit (Ping timeout: 244 seconds) 2018-07-14T13:32:03Z SaganMan joined #lisp 2018-07-14T13:32:04Z fikka quit (Ping timeout: 260 seconds) 2018-07-14T13:35:04Z patlv joined #lisp 2018-07-14T13:37:32Z fikka joined #lisp 2018-07-14T13:38:34Z patlv quit (Client Quit) 2018-07-14T13:41:00Z elfmacs joined #lisp 2018-07-14T13:41:50Z SlowJimmy joined #lisp 2018-07-14T13:41:57Z makomo quit (Ping timeout: 240 seconds) 2018-07-14T13:42:19Z fikka quit (Ping timeout: 256 seconds) 2018-07-14T13:42:58Z thuffir quit (Ping timeout: 264 seconds) 2018-07-14T13:43:08Z mprelude joined #lisp 2018-07-14T13:43:31Z jmercouris quit (Remote host closed the connection) 2018-07-14T13:43:42Z mprelude quit (Client Quit) 2018-07-14T13:43:57Z jmercouris joined #lisp 2018-07-14T13:44:16Z makomo joined #lisp 2018-07-14T13:44:48Z graphene quit (Remote host closed the connection) 2018-07-14T13:45:36Z karlosz joined #lisp 2018-07-14T13:46:24Z graphene joined #lisp 2018-07-14T13:47:38Z fikka joined #lisp 2018-07-14T13:51:35Z kuribas joined #lisp 2018-07-14T13:51:46Z kuribas: hi, where can I find documentation on #. ? 2018-07-14T13:51:56Z beach: clhs #. 2018-07-14T13:51:56Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/02_dhf.htm 2018-07-14T13:52:05Z kuribas: beach: thanks 2018-07-14T13:52:12Z beach: Anytime. 2018-07-14T13:52:29Z fikka quit (Ping timeout: 260 seconds) 2018-07-14T13:57:12Z SlowJimmy quit (Read error: Connection reset by peer) 2018-07-14T13:58:16Z fikka joined #lisp 2018-07-14T14:01:02Z lnostdal joined #lisp 2018-07-14T14:02:18Z Kundry_Wag joined #lisp 2018-07-14T14:03:00Z fikka quit (Ping timeout: 244 seconds) 2018-07-14T14:03:27Z jeosol: _death: The file grows each time. hmm. I guess I don't understand how the file stream will work in this case. 2018-07-14T14:04:19Z thuffir joined #lisp 2018-07-14T14:04:35Z lumm joined #lisp 2018-07-14T14:09:13Z lumm quit (Client Quit) 2018-07-14T14:11:05Z SlowJimmy joined #lisp 2018-07-14T14:13:12Z lumm joined #lisp 2018-07-14T14:16:07Z jasmith quit (Quit: Leaving) 2018-07-14T14:17:05Z thuffir quit (Ping timeout: 248 seconds) 2018-07-14T14:18:18Z fikka joined #lisp 2018-07-14T14:20:27Z TCZ joined #lisp 2018-07-14T14:22:20Z jasmith joined #lisp 2018-07-14T14:22:38Z caltelt joined #lisp 2018-07-14T14:23:09Z fikka quit (Ping timeout: 244 seconds) 2018-07-14T14:23:21Z ym joined #lisp 2018-07-14T14:24:29Z thuffir joined #lisp 2018-07-14T14:27:02Z lumm_ joined #lisp 2018-07-14T14:30:10Z bsund joined #lisp 2018-07-14T14:30:24Z lumm quit (Ping timeout: 260 seconds) 2018-07-14T14:30:25Z lumm_ is now known as lumm 2018-07-14T14:31:34Z thuffir quit (Ping timeout: 260 seconds) 2018-07-14T14:34:05Z kobain quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2018-07-14T14:34:20Z thuffir joined #lisp 2018-07-14T14:35:16Z TCZ quit (Quit: Leaving) 2018-07-14T14:35:27Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-14T14:35:59Z Kevslinger joined #lisp 2018-07-14T14:36:28Z skapata joined #lisp 2018-07-14T14:37:11Z pjb quit (Remote host closed the connection) 2018-07-14T14:38:36Z pjb joined #lisp 2018-07-14T14:38:37Z fikka joined #lisp 2018-07-14T14:39:01Z pjb is now known as Guest61398 2018-07-14T14:39:05Z thuffir quit (Ping timeout: 268 seconds) 2018-07-14T14:39:48Z graphene quit (Remote host closed the connection) 2018-07-14T14:40:27Z milanj_ quit (Quit: This computer has gone to sleep) 2018-07-14T14:41:09Z graphene joined #lisp 2018-07-14T14:43:21Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T14:43:23Z lumm_ joined #lisp 2018-07-14T14:45:09Z igemnace joined #lisp 2018-07-14T14:46:21Z lumm quit (Ping timeout: 240 seconds) 2018-07-14T14:46:21Z lumm_ is now known as lumm 2018-07-14T14:48:26Z Aukai joined #lisp 2018-07-14T14:48:31Z elfmacs quit (Quit: WeeChat 2.1) 2018-07-14T14:49:03Z fikka joined #lisp 2018-07-14T14:49:12Z Aukai quit (Client Quit) 2018-07-14T14:49:34Z fikka quit (Read error: Connection reset by peer) 2018-07-14T14:49:45Z Aukai joined #lisp 2018-07-14T14:52:34Z lumm quit (Ping timeout: 260 seconds) 2018-07-14T14:54:33Z Aukai quit (Client Quit) 2018-07-14T14:55:16Z nanoz joined #lisp 2018-07-14T14:59:13Z fikka joined #lisp 2018-07-14T14:59:32Z nsrahmad joined #lisp 2018-07-14T14:59:49Z lumm joined #lisp 2018-07-14T15:02:06Z Guest61398 quit (Ping timeout: 256 seconds) 2018-07-14T15:03:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T15:04:29Z lumm quit (Ping timeout: 256 seconds) 2018-07-14T15:11:09Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-14T15:12:47Z graphene quit (Remote host closed the connection) 2018-07-14T15:14:04Z graphene joined #lisp 2018-07-14T15:15:40Z Kundry_Wag joined #lisp 2018-07-14T15:19:35Z fikka joined #lisp 2018-07-14T15:19:51Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-14T15:24:17Z fikka quit (Ping timeout: 248 seconds) 2018-07-14T15:24:53Z nsrahmad quit (Remote host closed the connection) 2018-07-14T15:25:12Z nsrahmad joined #lisp 2018-07-14T15:27:13Z Guest61398 joined #lisp 2018-07-14T15:27:23Z Josh_2 quit (Quit: ERC (IRC client for Emacs 25.3.1)) 2018-07-14T15:27:47Z Josh_2 joined #lisp 2018-07-14T15:30:27Z thuffir joined #lisp 2018-07-14T15:30:28Z wigust quit (Read error: Connection reset by peer) 2018-07-14T15:31:20Z Guest61398 quit (Remote host closed the connection) 2018-07-14T15:31:47Z SlowJimmy left #lisp 2018-07-14T15:33:01Z wigust joined #lisp 2018-07-14T15:33:38Z Guest61398 joined #lisp 2018-07-14T15:36:04Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-14T15:38:09Z Kundry_Wag joined #lisp 2018-07-14T15:38:45Z Folkol_ quit (Ping timeout: 264 seconds) 2018-07-14T15:38:50Z Kundry_Wag_ joined #lisp 2018-07-14T15:39:23Z nsrahmad_ joined #lisp 2018-07-14T15:39:36Z nsrahmad quit (Remote host closed the connection) 2018-07-14T15:39:53Z fikka joined #lisp 2018-07-14T15:40:47Z Guest61398 quit (Ping timeout: 276 seconds) 2018-07-14T15:42:44Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-14T15:44:07Z bsund quit (Remote host closed the connection) 2018-07-14T15:44:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T15:45:04Z karlosz quit (Quit: karlosz) 2018-07-14T15:45:48Z graphene quit (Remote host closed the connection) 2018-07-14T15:47:09Z graphene joined #lisp 2018-07-14T15:47:25Z beach: I think I have a more complete specification of the SICL garbage collector(s): http://metamodular.com/garbage-collector.pdf 2018-07-14T15:47:45Z beach: It is a bit long, but several pages are dedicated to examples. 2018-07-14T15:48:39Z dieggsy left #lisp 2018-07-14T15:48:40Z nsrahmad_ quit (Read error: Connection reset by peer) 2018-07-14T15:49:11Z Guest61398 joined #lisp 2018-07-14T15:49:29Z dieggsy joined #lisp 2018-07-14T15:50:17Z fikka joined #lisp 2018-07-14T15:50:25Z Guest61398 is now known as pjb 2018-07-14T15:52:52Z sjl joined #lisp 2018-07-14T15:55:21Z karlosz joined #lisp 2018-07-14T15:55:33Z fikka quit (Ping timeout: 268 seconds) 2018-07-14T15:56:10Z caltelt: kuribas: Also, more generally, I've found the Shapsign entry helpful in the past. 2018-07-14T15:56:55Z caltelt: clhs 2.4.8 2018-07-14T15:56:55Z specbot: Sharpsign: http://www.lispworks.com/reference/HyperSpec/Body/02_dh.htm 2018-07-14T15:57:49Z shka_ quit (Quit: Konversation terminated!) 2018-07-14T16:00:14Z Kundry_Wag_ quit (Ping timeout: 260 seconds) 2018-07-14T16:01:00Z fikka joined #lisp 2018-07-14T16:01:12Z red-dot joined #lisp 2018-07-14T16:05:29Z fikka quit (Ping timeout: 260 seconds) 2018-07-14T16:07:54Z shka_ joined #lisp 2018-07-14T16:09:47Z k4rtik joined #lisp 2018-07-14T16:10:56Z fikka joined #lisp 2018-07-14T16:15:47Z fikka quit (Ping timeout: 244 seconds) 2018-07-14T16:16:23Z caltelt: beach: as an intruder from jvmland, should be an interesting read 2018-07-14T16:16:45Z beach: Good. 2018-07-14T16:17:38Z Baggers joined #lisp 2018-07-14T16:18:55Z beach: caltelt: Speaking of JVM, I have read several papers on excellent compacting garbage collectors for Java, but then at the same time I hear that the default garbage collector is of type stop-the-world. I can't quite reconcile the two pieces of information. 2018-07-14T16:25:52Z faraco joined #lisp 2018-07-14T16:25:52Z faraco quit (Changing host) 2018-07-14T16:25:52Z faraco joined #lisp 2018-07-14T16:25:58Z kajo quit (Ping timeout: 256 seconds) 2018-07-14T16:26:00Z caltelt: Depends on which version of Java we're talking about. I think the original GC for the JVM was stop-the-world, but latest versions use the ParallelGC. 2018-07-14T16:27:21Z shka_: beach: jvm has more then one GC usable 2018-07-14T16:27:21Z k4rtik quit (Ping timeout: 240 seconds) 2018-07-14T16:27:53Z caltelt: Nowadays, the three main GC's I know of that people use are Parallel, Concurrent Mark Sweep, and (the new shiny) G1 gc 2018-07-14T16:28:10Z beach: OK, thanks. 2018-07-14T16:28:52Z shka_: G1 was actually available prior, but it was not default 2018-07-14T16:29:52Z k4rtik joined #lisp 2018-07-14T16:30:11Z mercourisj joined #lisp 2018-07-14T16:30:58Z fikka joined #lisp 2018-07-14T16:33:05Z jmercouris quit (Ping timeout: 240 seconds) 2018-07-14T16:35:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T16:36:57Z jibanes quit (Ping timeout: 240 seconds) 2018-07-14T16:38:49Z jibanes joined #lisp 2018-07-14T16:41:27Z fikka joined #lisp 2018-07-14T16:43:48Z faraco quit (Quit: Leaving) 2018-07-14T16:45:23Z Kundry_Wag joined #lisp 2018-07-14T16:45:51Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T16:46:09Z robotoad quit (Quit: robotoad) 2018-07-14T16:50:45Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-14T16:51:33Z fikka joined #lisp 2018-07-14T16:52:10Z DingoSaar joined #lisp 2018-07-14T16:54:02Z robotoad joined #lisp 2018-07-14T16:55:01Z nowhere_man quit (Ping timeout: 265 seconds) 2018-07-14T16:56:45Z fikka quit (Ping timeout: 264 seconds) 2018-07-14T16:57:47Z buffergn0me joined #lisp 2018-07-14T16:59:13Z dddddd quit (Remote host closed the connection) 2018-07-14T17:00:36Z lumm joined #lisp 2018-07-14T17:01:21Z gabiruh quit (Ping timeout: 248 seconds) 2018-07-14T17:01:41Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-14T17:03:53Z gabiruh joined #lisp 2018-07-14T17:07:56Z Ven`` joined #lisp 2018-07-14T17:08:57Z shifty quit (Ping timeout: 240 seconds) 2018-07-14T17:12:00Z fikka joined #lisp 2018-07-14T17:12:52Z mflem joined #lisp 2018-07-14T17:15:07Z red-dot joined #lisp 2018-07-14T17:16:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T17:17:18Z p_l: caltelt: ParallelGC is stop the world 2018-07-14T17:17:47Z gabiruh quit (Ping timeout: 244 seconds) 2018-07-14T17:17:52Z p_l: caltelt: Concurrent GC does concurrent marking but stops the world for final pass 2018-07-14T17:17:59Z p_l: G1 still stops the world 2018-07-14T17:18:43Z p_l: Shenandoah (latest) doesn't stop the world unless required (too slow compaction rate while concurrent, critical lack of free memory) 2018-07-14T17:19:11Z k4rtik quit (Ping timeout: 265 seconds) 2018-07-14T17:19:56Z Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-14T17:20:21Z Kundry_Wag joined #lisp 2018-07-14T17:20:30Z p_l: beach: stop-the-world and compacting also aren't exclusive, but orthogonal (and usually compacting *force* stop the world unless you deal with multi-processor lispm or system where forwarding pointers were made through Software (Shenandoah, Azul) 2018-07-14T17:20:57Z Kundry_Wag_ joined #lisp 2018-07-14T17:22:27Z fikka joined #lisp 2018-07-14T17:24:30Z Kundry_Wag quit (Ping timeout: 244 seconds) 2018-07-14T17:24:38Z test1600 joined #lisp 2018-07-14T17:24:48Z makomo: hello 2018-07-14T17:25:21Z Posterdati quit (Ping timeout: 240 seconds) 2018-07-14T17:26:46Z makomo: i need some advice regarding a DSL within lisp i'm going to build. (as i've probably mentioned before) it will be used to define and simulate hardware. now, i would want most of the language to be statically typed, so that everything is chcked *before* the simulation is run 2018-07-14T17:27:05Z fikka quit (Ping timeout: 244 seconds) 2018-07-14T17:27:58Z makomo: since the DSL is embedded within lisp, what would be the best way to do stuff like type checking? do i really want to walk the lispy AST and go from that, or should i use macros and expand into stuff that will assert the correctness of these DSL programs? 2018-07-14T17:28:13Z caltelt: Also of note, those GC's are only for the standard openjdk/hotspot JVM's. Other implementations such as IBM have their own GC's (and heap layouts) 2018-07-14T17:29:16Z stylewarning: makomo: If your DSL is statically typed, then you should, in your DSL, either declare the types, or do type inference. In any case, a type analysis would be good for safety. 2018-07-14T17:29:57Z stylewarning: makomo: when you translate your DSL into Lisp, you can declare all of the types within Lisp. You can even be especially good about data allocation so no GC happens. 2018-07-14T17:31:37Z makomo: stylewarning: hm, what do you mean when i "translate it into Lisp"? to me it already is Lisp :-D. do you mean something like "after the DSL stuff expands into code that will build the model of the simulation (using Lisp's data structures)"? 2018-07-14T17:31:52Z makomo: i.e., let the DSL expand into code that builds the model, and then check that model? 2018-07-14T17:31:52Z stylewarning: Yes that’s what I mean 2018-07-14T17:32:06Z makomo: rather than trying to stuff the checking within the expansion 2018-07-14T17:32:27Z stylewarning: No, reverse order. You analyze the model for type safety and the like, then expand it into fully-typed, type-safe 2018-07-14T17:32:29Z stylewarning: code 2018-07-14T17:32:48Z fikka joined #lisp 2018-07-14T17:33:14Z makomo: stylewarning: how do i get to the model though without "codewalking" the thing myself? 2018-07-14T17:33:39Z stylewarning: It’s hard to answer without knowing the design of your DSL 2018-07-14T17:34:12Z makomo: stylewarning: what i have in my mind is: DSL (Lisp macros) -> expand into Lisp code that builds the model using CLOS and other stuff 2018-07-14T17:34:32Z makomo: i.e. defining a component will be translated into something like (make-instance 'component ...) 2018-07-14T17:34:37Z stylewarning: Do you have some ideas of what the syntax of the macros would be? 2018-07-14T17:35:07Z makomo: yes, stuff like (defcomponent ) 2018-07-14T17:35:18Z makomo: almost like defclass 2018-07-14T17:35:39Z stylewarning: How do components combine? 2018-07-14T17:36:15Z makomo: stylewarning: hierarchically -- one component can have zero or more subcomponents 2018-07-14T17:36:39Z makomo: for example, (defcomponent processor ... (:subcomponents (m memory addr data))) 2018-07-14T17:36:58Z Bike: how do types factor in here? something like "don't connected an output pin to another output pin" doesn't seem like it requires walking or any runtime checks 2018-07-14T17:37:06Z stylewarning: What does it mean to have a sub-component though? How does it interact with other components? 2018-07-14T17:37:33Z fikka quit (Ping timeout: 264 seconds) 2018-07-14T17:37:41Z makomo: stylewarning: "addr" and "data" specify that internal wires that are named ADDR and DATA are connected to the two pins of the memory, and that's how they communicate 2018-07-14T17:37:52Z makomo: there are processes within the processor and the memory that use these wires 2018-07-14T17:38:12Z makomo: Bike: and also like being able to assign from pin A to pin B only if they're of the same width 2018-07-14T17:38:39Z makomo: yes, it shouldn't require any checks while the simulation is running, only while it is being "compiled" 2018-07-14T17:39:09Z makomo: but how/where should i implement these checks? within these DSL macros? as an after-step after the model is built (by the DSL macros)? 2018-07-14T17:39:32Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-14T17:39:57Z Posterdati joined #lisp 2018-07-14T17:40:17Z k4rtik joined #lisp 2018-07-14T17:40:40Z Bike: mm, i would say verify it once you've wired up all the intermediate structures you get from the macros 2018-07-14T17:41:04Z Bike: so that e.g. if you define two components you can redefine one without worrying about the other until you're actually ready to go, kind of thing 2018-07-14T17:41:11Z beach: p_l: Thanks for the information. 2018-07-14T17:41:20Z gabiruh joined #lisp 2018-07-14T17:41:42Z makomo: Bike: mhm, that seems to make more sense for me, since it's more modular that way. the checking of the model is done after it has been constructed 2018-07-14T17:41:45Z makomo: seems better separated 2018-07-14T17:41:59Z p_l: beach: your complaint reminds me of how annoyingly fragmented and "hidden" of sorts information about GC is :( 2018-07-14T17:42:00Z stylewarning: Also be sure to understand the difference between a component specification (which you can inspect in terms of wire widths, inputs, outputs, etc.) and actual components (which may or may not be CLOS instances at the end; they may be funky efficient compiled code, etc) 2018-07-14T17:42:16Z stylewarning: makomo: ^ 2018-07-14T17:42:18Z makomo: stylewarning: yup, definitely. that's one of the key concepts :-) 2018-07-14T17:42:28Z fikka joined #lisp 2018-07-14T17:42:32Z makomo: there are -SPEC and classes for components and processes 2018-07-14T17:43:10Z stylewarning: If you defclass a component, I actually suggest you defclass a component-specification. Then you use these specifications to build a model, then you compile that model. 2018-07-14T17:43:14Z makomo: being some name of course 2018-07-14T17:43:30Z beach: p_l: Yes, I see. The published techniques are pretty informative, but what a particular system does may not be very transparent. 2018-07-14T17:44:16Z k4rtik quit (Client Quit) 2018-07-14T17:44:17Z makomo: stylewarning: for me, "model" are the component/process specifications. the "non-spec" classes are just particular instances of this specification/model that will be actually run 2018-07-14T17:44:46Z k4rtik joined #lisp 2018-07-14T17:44:47Z k4rtik quit (Changing host) 2018-07-14T17:44:47Z k4rtik joined #lisp 2018-07-14T17:45:27Z makomo: stylewarning: by "defclass a component" do you mean "define a component", i.e. define it using this DSL? 2018-07-14T17:45:38Z stylewarning: makomo: A class shouldn’t be the substrate in which you store specifications, and instances shouldn’t be implementations of those specifications, in my opinion 2018-07-14T17:46:33Z makomo: oh, that's what you mean -- like, i shouldn't represent a component's specification using a CLOS class, but rather a CLOS object (which is an instance of the SOMETHING-SPEC class)? 2018-07-14T17:46:47Z stylewarning: Yes right 2018-07-14T17:47:13Z makomo: yup, that's what i currently have. i did think about representing the components' specs as actual CLOS classes though, but that would require MOP trickery and stuff 2018-07-14T17:47:14Z fikka quit (Ping timeout: 244 seconds) 2018-07-14T17:47:34Z stylewarning: Whatever “machine” you’re building will require a graph or tree of these component spec instances, which you can walk and check regarding pins and whatever. 2018-07-14T17:47:45Z makomo: and i'm still not clear on the benefits i would get (except "neat" stuff like instances of these classes corresponding to instances of the specifications, the wires being just plain slots, etc.) 2018-07-14T17:48:02Z makomo: stylewarning: mhm, definitely. why would you avoid using CLOS classes like this though? 2018-07-14T17:48:19Z skidd0 joined #lisp 2018-07-14T17:48:20Z stylewarning: I think MOP should be used when one wants to introspect and reflect on CLOS itself. 2018-07-14T17:48:39Z Bike: or make a new clos if you need it, but i don't think you would for this 2018-07-14T17:48:48Z stylewarning: Yeah or that 2018-07-14T17:49:17Z makomo: stylewarning: hmm idk. i don't have that much experience with MOP, but this seemed like one of those "wow it fits really nicely as an idea here" kind of things 2018-07-14T17:49:25Z stylewarning: Using MOP here is, IMO, gratuitous shoehorning of a problem into a somewhat unnatural and overly expressive framework 2018-07-14T17:49:32Z makomo: i.e. the fact that a "class" from this object language corresponds to a class within my host language is pretty cool 2018-07-14T17:49:48Z makomo: hm yeah, i guess i can agree with that 2018-07-14T17:49:58Z makomo: seems a bit overengineered 2018-07-14T17:50:07Z stylewarning: But do you want your components to carry the same dynamicism as a CLOS class? 2018-07-14T17:50:22Z stylewarning: Runtime redefinable, untyped, subclassable, etc etc? 2018-07-14T17:50:26Z makomo: probably not, yeah 2018-07-14T17:50:35Z makomo: althought i'm still wondering about inheritance 2018-07-14T17:50:37Z makomo: although* 2018-07-14T17:51:01Z skidd0: is there an easy way to get a member of a list (of structs) by a slot value (an id i've set)? 2018-07-14T17:51:30Z pjb: (find slot-value list-of-structs :key (function slot-accessor)) 2018-07-14T17:51:45Z Kundry_Wag_ quit (Quit: Leaving...) 2018-07-14T17:51:45Z pjb: (find slot-value list-of-structs :key (function slot-accessor) :test (function some-other-equal-function)) 2018-07-14T17:51:58Z pjb: by defaut, the values are compared with EQL. 2018-07-14T17:52:01Z skidd0: i could loop through all the elements in the list and stop when I find it, but i'm figuring there's a built-in or simpler answer 2018-07-14T17:52:03Z Kundry_Wag joined #lisp 2018-07-14T17:52:05Z skidd0: oh thanks pjb 2018-07-14T17:52:33Z skidd0: that's what i was looking for 2018-07-14T17:52:57Z stylewarning: makomo: Having component-specs doesn’t stop you, by the way, from generating component classes when you compile your model. Maybe that’s the easiest way to prototype it at first 2018-07-14T17:53:11Z test1600_ joined #lisp 2018-07-14T17:53:38Z makomo: stylewarning: mhm, true. i'll definitely go with that approach for now 2018-07-14T17:54:54Z skidd0: pjb: so the first slot-value is the one i'm looking to find, right? 2018-07-14T17:55:04Z skidd0: (find this-one ..) 2018-07-14T17:55:10Z pjb: You can take the last with :from-end t 2018-07-14T17:55:27Z DingoSaar quit (Ping timeout: 240 seconds) 2018-07-14T17:55:32Z stylewarning: makomo: I wouldn’t even worry about the DSL bit at first. I’d start by defining classes and all that stuff without a macro just to nail down exactly what you want 2018-07-14T17:56:14Z makomo: stylewarning: yup, yup, that's how i've started. for now the DSL bit is completley imaginary 2018-07-14T17:56:19Z test1600 quit (Ping timeout: 260 seconds) 2018-07-14T17:56:38Z stylewarning: Top-down development of a DSL is only good if you’ve decided on what you’re doing pretty articulately. Otherwise it turns into spaghetti 🍝 2018-07-14T17:56:45Z makomo: as you said, first i want to build the whole simulator and related parts within lisp. macros are just a finish touch 2018-07-14T17:56:50Z makomo: mhm 2018-07-14T17:56:52Z makomo: finishing* 2018-07-14T17:57:04Z stylewarning: Yes great 2018-07-14T17:57:35Z makomo: stylewarning: and regarding code generation/compilation of these processes? the processes themselves are arbitrary code, and i'm thinking about how exactly this code should be generated 2018-07-14T17:58:09Z stylewarning: makomo: the processes may be arbitrary code but you should limit how data is input or output 2018-07-14T17:58:52Z makomo: the macros could expand into lambdas that would store this code, but if i want to add type checking and similar later on, i can't just create these lambdas right away 2018-07-14T17:59:09Z makomo: stylewarning: hmm how exactly? 2018-07-14T17:59:11Z stylewarning: As in, a component’s code shouldn’t know about the other components at all 2018-07-14T17:59:58Z stylewarning: Component code just have “ports” (maybe lambda arguments if there’s no temporal aspect to this) for tx/rx of data 2018-07-14T18:00:37Z makomo: oh, definitely, yes 2018-07-14T18:01:16Z mercourisj quit (Remote host closed the connection) 2018-07-14T18:01:24Z makomo: a component's process only has access to the wires internal to the process (including its pins). the fact that these wires are connected to other components is a separate thing 2018-07-14T18:01:28Z stylewarning: Maybe the code should even have explicit time parameters, so you can simulate what happens in any individual timestep. This again gets into exactly the type of thing you’d like to simulate. 2018-07-14T18:01:44Z jmercouris joined #lisp 2018-07-14T18:01:49Z stylewarning: (Note that SICP has a little circuit simulator in chapter 3 or something) 2018-07-14T18:01:51Z krwq joined #lisp 2018-07-14T18:03:00Z edgar-rft: "little circuit" like SMD? :-) 2018-07-14T18:03:07Z fikka joined #lisp 2018-07-14T18:03:22Z makomo: stylewarning: mhm, but that's something that's out of scope for this software i think 2018-07-14T18:03:45Z makomo: at least if i understood you correctly (i'm thinking of stuff like transport and inertial delays that VHDL has) 2018-07-14T18:05:09Z makomo: stylewarning: however, one of the things i would like to do is to compile the code (to Lisp), rather than interpret it myself. what i'm not sure about is whether this code should be put into lambdas when the DSL macros are expanded, or should it be done "manually" by me, using COMPILE, etc.? 2018-07-14T18:05:15Z nanoz quit (Quit: Leaving) 2018-07-14T18:05:45Z rpg joined #lisp 2018-07-14T18:06:10Z makomo: (also, this means that primitives like signal assignment, etc. would be either macros or functions that would call appropriate lisp functions and modify the instantiated model under the hood) 2018-07-14T18:06:17Z lumm quit (Ping timeout: 268 seconds) 2018-07-14T18:07:21Z Smokitch joined #lisp 2018-07-14T18:07:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T18:13:35Z fikka joined #lisp 2018-07-14T18:14:32Z stylewarning: makomo: you can generate LAMBDA code and compile it 2018-07-14T18:14:50Z makomo: stylewarning: right, so that would be the latter, i.e. using COMPILE? 2018-07-14T18:15:19Z stylewarning: Yes, unless the lambdas are generated at macro expansion time 2018-07-14T18:15:25Z stylewarning: Then you don’t need to use COMPILE 2018-07-14T18:15:39Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-14T18:15:48Z makomo: stylewarning: yes, of course 2018-07-14T18:17:11Z makomo: i'll go with that currently and see how it goes 2018-07-14T18:18:29Z fikka quit (Ping timeout: 260 seconds) 2018-07-14T18:18:38Z milanj_ joined #lisp 2018-07-14T18:18:50Z kuribas quit (Quit: ERC (IRC client for Emacs 24.5.1)) 2018-07-14T18:19:30Z Josh_2 quit (Quit: ERC (IRC client for Emacs 25.3.1)) 2018-07-14T18:24:41Z rpg quit (Quit: Textual IRC Client: www.textualapp.com) 2018-07-14T18:25:49Z EvW1 joined #lisp 2018-07-14T18:28:52Z SlowJimmy joined #lisp 2018-07-14T18:32:05Z red-dot joined #lisp 2018-07-14T18:32:06Z tll quit (Quit: tll) 2018-07-14T18:32:27Z thuffir quit (Ping timeout: 240 seconds) 2018-07-14T18:33:36Z fikka joined #lisp 2018-07-14T18:38:21Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T18:39:19Z thuffir joined #lisp 2018-07-14T18:40:07Z robotoad quit (Max SendQ exceeded) 2018-07-14T18:41:49Z lumm joined #lisp 2018-07-14T18:43:21Z thuffir quit (Ping timeout: 240 seconds) 2018-07-14T18:44:00Z fikka joined #lisp 2018-07-14T18:45:26Z Kundry_W_ joined #lisp 2018-07-14T18:46:31Z skidd0 quit (Quit: 0/) 2018-07-14T18:48:49Z fikka quit (Ping timeout: 260 seconds) 2018-07-14T18:49:19Z thuffir joined #lisp 2018-07-14T18:49:35Z Kundry_W_ quit (Ping timeout: 240 seconds) 2018-07-14T18:51:22Z makomo quit (Ping timeout: 264 seconds) 2018-07-14T18:52:18Z robotoad joined #lisp 2018-07-14T18:54:00Z fikka joined #lisp 2018-07-14T18:57:45Z pierpal quit (Quit: Poof) 2018-07-14T18:58:04Z pierpal joined #lisp 2018-07-14T18:58:44Z fikka quit (Ping timeout: 260 seconds) 2018-07-14T19:00:33Z k4rtik quit (Ping timeout: 268 seconds) 2018-07-14T19:01:21Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-14T19:03:37Z Josh_2 joined #lisp 2018-07-14T19:04:42Z fikka joined #lisp 2018-07-14T19:06:21Z EvW1 quit (Ping timeout: 240 seconds) 2018-07-14T19:09:14Z Josh_2 quit (Quit: ERC (IRC client for Emacs 25.3.1)) 2018-07-14T19:09:21Z fikka quit (Ping timeout: 248 seconds) 2018-07-14T19:10:24Z Josh_2 joined #lisp 2018-07-14T19:11:34Z cal joined #lisp 2018-07-14T19:12:08Z Josh_2 quit (Client Quit) 2018-07-14T19:14:49Z Josh_2 joined #lisp 2018-07-14T19:14:56Z nickenchuggets joined #lisp 2018-07-14T19:18:24Z brettgilio joined #lisp 2018-07-14T19:19:56Z pjb quit (Ping timeout: 256 seconds) 2018-07-14T19:21:32Z brettgilio quit (Remote host closed the connection) 2018-07-14T19:22:04Z brettgilio joined #lisp 2018-07-14T19:23:41Z pjb joined #lisp 2018-07-14T19:24:05Z pjb is now known as Guest73521 2018-07-14T19:24:40Z fikka joined #lisp 2018-07-14T19:25:49Z graphene quit (Read error: Connection reset by peer) 2018-07-14T19:27:08Z graphene joined #lisp 2018-07-14T19:27:21Z thuffir quit (Ping timeout: 264 seconds) 2018-07-14T19:29:12Z Guest73521 quit (Ping timeout: 265 seconds) 2018-07-14T19:29:39Z fikka quit (Ping timeout: 260 seconds) 2018-07-14T19:31:05Z buffergn0me quit (Ping timeout: 244 seconds) 2018-07-14T19:31:19Z lavaflow_ quit (Read error: Connection reset by peer) 2018-07-14T19:31:54Z Kundry_Wag joined #lisp 2018-07-14T19:31:57Z cal quit (Ping timeout: 240 seconds) 2018-07-14T19:32:34Z Kundry_Wag_ joined #lisp 2018-07-14T19:32:40Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-14T19:33:47Z lavaflow_ joined #lisp 2018-07-14T19:34:02Z brettgilio quit (Remote host closed the connection) 2018-07-14T19:34:03Z Guest73521 joined #lisp 2018-07-14T19:35:10Z fikka joined #lisp 2018-07-14T19:35:31Z Kundry_Wag_ quit (Client Quit) 2018-07-14T19:35:47Z Kundry_Wag_ joined #lisp 2018-07-14T19:36:58Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-14T19:37:46Z brettgilio joined #lisp 2018-07-14T19:39:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T19:40:34Z graphene quit (Remote host closed the connection) 2018-07-14T19:41:53Z graphene joined #lisp 2018-07-14T19:45:11Z fikka joined #lisp 2018-07-14T19:47:09Z caltelt quit (Ping timeout: 264 seconds) 2018-07-14T19:49:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T19:53:33Z SlowJimmy left #lisp 2018-07-14T19:53:42Z figurelisp joined #lisp 2018-07-14T19:54:23Z figurelisp: When i write 'this 'is 'madness in emacs slime repl why does it only returns last symbol as output? Why not all three? 2018-07-14T19:54:46Z angavrilov quit (Remote host closed the connection) 2018-07-14T19:55:18Z Bike: cos it only reads one form at a time. 2018-07-14T19:55:27Z fikka joined #lisp 2018-07-14T19:56:09Z figurelisp: Bike: I don't understand what you mean by one form 2018-07-14T19:56:23Z Bike: well, you put in three things. 2018-07-14T19:56:57Z figurelisp: then why does SBCL in terminal returns all three? 2018-07-14T19:57:33Z Bike: i suppose sbcl doesn't clear the input buffer after every repl read like emacs does, or something. 2018-07-14T19:58:17Z figurelisp: so the correct output is returning last symbol 2018-07-14T19:58:48Z graphene quit (Remote host closed the connection) 2018-07-14T19:58:59Z klltkr joined #lisp 2018-07-14T20:00:01Z fikka quit (Ping timeout: 244 seconds) 2018-07-14T20:00:08Z graphene joined #lisp 2018-07-14T20:01:29Z Bike: there's not really a "correct" or "incorrect", it's just however the repl feels like working 2018-07-14T20:02:04Z Bike: since you're giving it weird input 2018-07-14T20:02:57Z figurelisp: ok 2018-07-14T20:04:17Z Folkol_ joined #lisp 2018-07-14T20:05:49Z Smokitch quit 2018-07-14T20:07:03Z Guest73521 left #lisp 2018-07-14T20:09:27Z thuffir joined #lisp 2018-07-14T20:10:12Z mflem quit (Ping timeout: 245 seconds) 2018-07-14T20:14:49Z cal joined #lisp 2018-07-14T20:15:07Z edgar-rft: makomo: electrical circuits usually contain circular components (feedback paths), have you considered that in your hierarchical topology? 2018-07-14T20:15:37Z parjanya joined #lisp 2018-07-14T20:15:49Z fikka joined #lisp 2018-07-14T20:16:32Z brontosaurusrex joined #lisp 2018-07-14T20:16:52Z brontosaurusrex: Trying to follow this : https://mitpress.mit.edu/sites/default/files/sicp/full-text/book/book-Z-H-10.html#%_sec_1.1.2 2018-07-14T20:17:00Z red-dot joined #lisp 2018-07-14T20:17:11Z brontosaurusrex: And it appears i would need something called Scheme dialect of lisp 2018-07-14T20:17:22Z brontosaurusrex: what to install? (Debian stretch) 2018-07-14T20:17:31Z Bike: yes, sicp is written to use scheme. i believe Racket has a sicp mode. 2018-07-14T20:17:38Z Bike: but you want #scheme for scheme info. 2018-07-14T20:18:01Z mindCrime_ quit (Ping timeout: 265 seconds) 2018-07-14T20:18:22Z nullman quit (Ping timeout: 264 seconds) 2018-07-14T20:19:14Z gabiruh quit (Ping timeout: 260 seconds) 2018-07-14T20:19:51Z nullman joined #lisp 2018-07-14T20:20:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T20:20:47Z graphene quit (Remote host closed the connection) 2018-07-14T20:21:37Z parjanya quit (Read error: Connection reset by peer) 2018-07-14T20:21:43Z brontosaurusrex: So there is a scheme dialect of lisp and there are various dialects of scheme ... ? 2018-07-14T20:21:51Z caltelt joined #lisp 2018-07-14T20:21:59Z graphene joined #lisp 2018-07-14T20:22:13Z Bike: something like that. the distinction between "dialect" and "language" is almost as vague as it is in natural language. 2018-07-14T20:22:13Z brontosaurusrex: Like this https://packages.debian.org/stretch/lisp/oaklisp 2018-07-14T20:22:14Z pierpal quit (Remote host closed the connection) 2018-07-14T20:22:16Z edgar-rft: there is *one* Common Lisp specification, everything else is a mess 2018-07-14T20:22:40Z Bike: i recommend asking what scheme to get for sicp in #scheme. i'm sure they have heard that exact question many times. 2018-07-14T20:22:57Z brontosaurusrex: ok, so to write (define var 2), what do i need? < simplified question 2018-07-14T20:23:10Z brontosaurusrex: Bike: I dont see sicp in repos 2018-07-14T20:23:17Z Bike: hey. look at what i said. 2018-07-14T20:23:50Z brontosaurusrex: racket? 2018-07-14T20:23:58Z Bike: no, the part where i say to ask #scheme. 2018-07-14T20:24:00Z Bike: the irc channel. 2018-07-14T20:24:09Z edgar-rft: brontosaurusrex, this is a COMMON LISP channel, ask in #scheme (because they kow it better than we) 2018-07-14T20:24:18Z brontosaurusrex: ok, thanks. 2018-07-14T20:24:18Z thuffir quit (Ping timeout: 244 seconds) 2018-07-14T20:25:04Z karlosz quit (Quit: karlosz) 2018-07-14T20:26:15Z fikka joined #lisp 2018-07-14T20:26:45Z EvW joined #lisp 2018-07-14T20:29:29Z thuffir joined #lisp 2018-07-14T20:29:49Z nowhere_man joined #lisp 2018-07-14T20:30:49Z graphene quit (Remote host closed the connection) 2018-07-14T20:30:57Z fikka quit (Ping timeout: 248 seconds) 2018-07-14T20:32:04Z froggey quit (Ping timeout: 260 seconds) 2018-07-14T20:32:08Z graphene joined #lisp 2018-07-14T20:32:35Z parjanya joined #lisp 2018-07-14T20:33:41Z Kundry_Wag_ quit (Quit: Leaving...) 2018-07-14T20:33:59Z froggey joined #lisp 2018-07-14T20:35:57Z thuffir quit (Ping timeout: 240 seconds) 2018-07-14T20:36:29Z lumm quit (Quit: lumm) 2018-07-14T20:36:51Z slyrus_ quit (Ping timeout: 240 seconds) 2018-07-14T20:41:45Z gabiruh joined #lisp 2018-07-14T20:44:06Z pierpa joined #lisp 2018-07-14T20:44:56Z figurelisp quit (Remote host closed the connection) 2018-07-14T20:45:15Z vlatkoB quit (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.) 2018-07-14T20:46:16Z fikka joined #lisp 2018-07-14T20:48:59Z slyrus_ joined #lisp 2018-07-14T20:49:05Z gravicappa quit (Remote host closed the connection) 2018-07-14T20:50:30Z cal quit (Read error: Connection reset by peer) 2018-07-14T20:51:10Z fikka quit (Ping timeout: 244 seconds) 2018-07-14T20:52:48Z graphene quit (Remote host closed the connection) 2018-07-14T20:52:52Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-14T20:54:06Z graphene joined #lisp 2018-07-14T20:58:27Z Posterdati quit (Ping timeout: 240 seconds) 2018-07-14T20:59:10Z igemnace quit (Ping timeout: 264 seconds) 2018-07-14T20:59:19Z thuffir joined #lisp 2018-07-14T20:59:39Z pagnol joined #lisp 2018-07-14T21:00:16Z k4rtik joined #lisp 2018-07-14T21:00:17Z k4rtik quit (Changing host) 2018-07-14T21:00:17Z k4rtik joined #lisp 2018-07-14T21:01:52Z zmt00 joined #lisp 2018-07-14T21:04:44Z zmt01 quit (Ping timeout: 260 seconds) 2018-07-14T21:05:19Z brettgilio quit (Quit: Goodbye!) 2018-07-14T21:05:26Z zmt01 joined #lisp 2018-07-14T21:06:57Z fikka joined #lisp 2018-07-14T21:08:13Z zmt00 quit (Ping timeout: 244 seconds) 2018-07-14T21:08:19Z mm__redacted joined #lisp 2018-07-14T21:10:09Z kajo joined #lisp 2018-07-14T21:10:48Z zmt01 quit (Ping timeout: 244 seconds) 2018-07-14T21:11:25Z Posterdati joined #lisp 2018-07-14T21:11:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T21:11:44Z orivej quit (Ping timeout: 260 seconds) 2018-07-14T21:12:58Z graphene quit (Remote host closed the connection) 2018-07-14T21:14:22Z graphene joined #lisp 2018-07-14T21:14:48Z graphene quit (Remote host closed the connection) 2018-07-14T21:16:20Z graphene joined #lisp 2018-07-14T21:17:28Z fikka joined #lisp 2018-07-14T21:17:30Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-14T21:21:35Z mindCrime_ joined #lisp 2018-07-14T21:21:55Z jmercouris quit (Remote host closed the connection) 2018-07-14T21:22:09Z jmercouris joined #lisp 2018-07-14T21:22:14Z fikka quit (Ping timeout: 260 seconds) 2018-07-14T21:27:28Z fikka joined #lisp 2018-07-14T21:29:33Z Jesin quit (Quit: Leaving) 2018-07-14T21:30:17Z pjb joined #lisp 2018-07-14T21:30:40Z pjb is now known as Guest6009 2018-07-14T21:31:30Z brontosaurusrex quit (Quit: brontosaurusrex) 2018-07-14T21:31:51Z Guest6009 is now known as pjb` 2018-07-14T21:32:06Z moei quit (Quit: Leaving...) 2018-07-14T21:32:08Z pjb` quit (Client Quit) 2018-07-14T21:33:16Z buffergn0me joined #lisp 2018-07-14T21:33:32Z xrash joined #lisp 2018-07-14T21:33:48Z red-dot joined #lisp 2018-07-14T21:34:54Z rumbler31 joined #lisp 2018-07-14T21:37:40Z graphene quit (Remote host closed the connection) 2018-07-14T21:39:01Z graphene joined #lisp 2018-07-14T21:39:39Z rumbler31 quit (Ping timeout: 268 seconds) 2018-07-14T21:44:05Z jibanes quit (Ping timeout: 240 seconds) 2018-07-14T21:46:22Z jibanes joined #lisp 2018-07-14T21:46:52Z Folkol_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-14T21:49:08Z lumm joined #lisp 2018-07-14T21:49:14Z lavaflow_ quit (Read error: No route to host) 2018-07-14T21:51:55Z gabiruh quit (Ping timeout: 256 seconds) 2018-07-14T22:00:17Z dddddd joined #lisp 2018-07-14T22:00:51Z caltelt quit (Ping timeout: 240 seconds) 2018-07-14T22:03:44Z brontosaurusrex joined #lisp 2018-07-14T22:05:55Z karlosz joined #lisp 2018-07-14T22:07:21Z beach quit (Ping timeout: 240 seconds) 2018-07-14T22:12:21Z EvW quit (Ping timeout: 240 seconds) 2018-07-14T22:14:16Z pdv_ joined #lisp 2018-07-14T22:15:23Z pdv_ quit (Client Quit) 2018-07-14T22:15:37Z brontosaurusrex quit (Quit: brontosaurusrex) 2018-07-14T22:18:21Z mindCrime_ quit (Ping timeout: 240 seconds) 2018-07-14T22:19:50Z pdv_ joined #lisp 2018-07-14T22:20:05Z nowhere_man joined #lisp 2018-07-14T22:22:49Z EvW1 joined #lisp 2018-07-14T22:25:33Z thuffir quit (Ping timeout: 264 seconds) 2018-07-14T22:27:22Z pdv_ quit (Ping timeout: 264 seconds) 2018-07-14T22:29:35Z gabiruh joined #lisp 2018-07-14T22:30:57Z shka_ quit (Ping timeout: 240 seconds) 2018-07-14T22:34:18Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-14T22:34:33Z gabiruh quit (Ping timeout: 264 seconds) 2018-07-14T22:39:23Z k4rtik quit (Ping timeout: 276 seconds) 2018-07-14T22:39:29Z karlosz quit (Quit: karlosz) 2018-07-14T22:43:06Z gabiruh joined #lisp 2018-07-14T22:58:16Z caltelt joined #lisp 2018-07-14T22:59:33Z random-nick quit (Read error: Connection reset by peer) 2018-07-14T22:59:57Z JuanDaugherty joined #lisp 2018-07-14T23:05:02Z robotoad quit (Quit: robotoad) 2018-07-14T23:14:33Z hphat^ joined #lisp 2018-07-14T23:14:34Z hphat^ quit (Max SendQ exceeded) 2018-07-14T23:14:58Z hphat^ joined #lisp 2018-07-14T23:14:59Z hphat^ quit (Max SendQ exceeded) 2018-07-14T23:15:13Z Josh_2 quit (Quit: ERC (IRC client for Emacs 25.3.1)) 2018-07-14T23:15:23Z hphat^ joined #lisp 2018-07-14T23:15:24Z hphat^ quit (Max SendQ exceeded) 2018-07-14T23:15:48Z hphat^ joined #lisp 2018-07-14T23:15:49Z hphat^ quit (Max SendQ exceeded) 2018-07-14T23:16:11Z hphat^ joined #lisp 2018-07-14T23:16:11Z hphat^ quit (Max SendQ exceeded) 2018-07-14T23:16:33Z hphat^ joined #lisp 2018-07-14T23:16:34Z hphat^ quit (Max SendQ exceeded) 2018-07-14T23:18:51Z red-dot joined #lisp 2018-07-14T23:19:29Z fikka quit (Ping timeout: 260 seconds) 2018-07-14T23:19:50Z moei joined #lisp 2018-07-14T23:21:48Z ebrasca: How I can extend functionality of read-byte in standard CL? 2018-07-14T23:25:13Z fikka joined #lisp 2018-07-14T23:29:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T23:30:54Z Bike: with the gray streams extension, you can define methods on the stream-read-byte function. 2018-07-14T23:31:21Z Murii_ quit (Remote host closed the connection) 2018-07-14T23:33:10Z ebrasca: Is it truly necessary to have portable code? 2018-07-14T23:33:22Z Bike: huh? 2018-07-14T23:34:02Z caltelt: if you want it to be portable, yes? 2018-07-14T23:35:11Z fikka joined #lisp 2018-07-14T23:39:51Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T23:40:29Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-14T23:40:54Z nickenchuggets joined #lisp 2018-07-14T23:40:54Z nickenchuggets quit (Changing host) 2018-07-14T23:40:54Z nickenchuggets joined #lisp 2018-07-14T23:43:06Z shifty joined #lisp 2018-07-14T23:44:24Z jmercouris: interop between lisp and prolog? 2018-07-14T23:45:27Z fikka joined #lisp 2018-07-14T23:46:17Z ebrasca: Now I am thinking more in mezzano and other common lisp (sbcl). 2018-07-14T23:47:19Z klltkr quit (Remote host closed the connection) 2018-07-14T23:47:27Z DGASAU quit (Remote host closed the connection) 2018-07-14T23:47:35Z NoNumber joined #lisp 2018-07-14T23:47:41Z DGASAU joined #lisp 2018-07-14T23:49:49Z pagnol quit (Ping timeout: 260 seconds) 2018-07-14T23:49:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-14T23:51:35Z pioneer42 left #lisp 2018-07-14T23:51:54Z lumm quit (Quit: lumm) 2018-07-14T23:55:33Z fikka joined #lisp 2018-07-14T23:56:28Z lumm joined #lisp 2018-07-14T23:58:25Z DGASAU` joined #lisp 2018-07-14T23:59:13Z DGASAU quit (Remote host closed the connection) 2018-07-14T23:59:17Z klltkr joined #lisp 2018-07-15T00:00:01Z kozy quit (Remote host closed the connection) 2018-07-15T00:00:19Z fikka quit (Ping timeout: 260 seconds) 2018-07-15T00:00:47Z kozy joined #lisp 2018-07-15T00:05:21Z |3b|` quit (Ping timeout: 240 seconds) 2018-07-15T00:05:39Z fikka joined #lisp 2018-07-15T00:07:24Z SaganMan quit (Quit: WeeChat 1.6) 2018-07-15T00:09:39Z gabiruh quit (Ping timeout: 260 seconds) 2018-07-15T00:10:09Z fikka quit (Ping timeout: 248 seconds) 2018-07-15T00:11:57Z jmercouris quit (Ping timeout: 265 seconds) 2018-07-15T00:13:49Z Oladon joined #lisp 2018-07-15T00:26:09Z fikka joined #lisp 2018-07-15T00:27:51Z edgar-rft: ebrasca, what's your specific problem with cl:read-byte? (just curious) 2018-07-15T00:29:53Z orivej joined #lisp 2018-07-15T00:30:45Z fikka quit (Ping timeout: 244 seconds) 2018-07-15T00:33:22Z ebrasca: edgar-rft: Thinking how to make my FAT32 work wich other CLs. 2018-07-15T00:33:59Z ebrasca: edgar-rft: I need some method to add FAT32 read-byte. 2018-07-15T00:34:04Z edgar-rft: in other words: you need to read 32-bit bytes? 2018-07-15T00:34:29Z ebrasca: I need to make my custom read-byte. 2018-07-15T00:34:42Z Bike: i thought read-byte already did that. 2018-07-15T00:34:50Z ebrasca: In mezzano there is generic read-byte and then it specializes. 2018-07-15T00:35:00Z Bike: on what, the stream? 2018-07-15T00:35:08Z ebrasca: Yes 2018-07-15T00:35:19Z Bike: because that's exactly what gray streams provides, and most implementations support the extension. 2018-07-15T00:36:39Z ebrasca: Mezzano have someting called sys.gray . 2018-07-15T00:38:13Z BitPuffin quit (Remote host closed the connection) 2018-07-15T00:38:31Z ebrasca: I think it uses flexi-streams and trivial-gray-streams stream libraries. 2018-07-15T00:40:56Z terpri quit (Quit: Leaving) 2018-07-15T00:41:09Z jibanes quit (Ping timeout: 260 seconds) 2018-07-15T00:42:56Z jibanes joined #lisp 2018-07-15T00:46:30Z fikka joined #lisp 2018-07-15T00:46:31Z thelostlambda joined #lisp 2018-07-15T00:46:33Z Bike: trivial-gray-streams is just a portability wrapper over the gray streams extension. 2018-07-15T00:51:22Z fikka quit (Ping timeout: 264 seconds) 2018-07-15T00:51:52Z gabiruh joined #lisp 2018-07-15T00:53:10Z pierpa quit (Quit: Page closed) 2018-07-15T01:03:57Z buffergn0me quit (Ping timeout: 240 seconds) 2018-07-15T01:04:06Z buffergn0me joined #lisp 2018-07-15T01:06:46Z fikka joined #lisp 2018-07-15T01:08:21Z test1600_ quit (Ping timeout: 240 seconds) 2018-07-15T01:09:24Z Baggers quit (Remote host closed the connection) 2018-07-15T01:11:05Z Baggers joined #lisp 2018-07-15T01:11:21Z fikka quit (Ping timeout: 240 seconds) 2018-07-15T01:11:51Z buffergn0me quit (Ping timeout: 240 seconds) 2018-07-15T01:14:29Z ebrasca: Is metamorphosis = complexity ? 2018-07-15T01:14:41Z Bike: what? 2018-07-15T01:15:03Z pierpal joined #lisp 2018-07-15T01:15:11Z Bike: is "metamorphosis" the name of a library or are you referring to butterfly development or what 2018-07-15T01:15:37Z ebrasca: I am thinking about change of forms. 2018-07-15T01:17:15Z fikka joined #lisp 2018-07-15T01:17:48Z ebrasca: How butterfly development apply to programing? 2018-07-15T01:17:59Z Bike: no idea mate 2018-07-15T01:19:01Z ebrasca: I think they can chenge they form to some point. 2018-07-15T01:19:29Z ebrasca: And CL can change form like one butterfly. 2018-07-15T01:19:36Z Jasko joined #lisp 2018-07-15T01:20:08Z ebrasca: But butterfly in his transformation lose some mass. 2018-07-15T01:20:23Z ebrasca: Is there someting like this in CL? 2018-07-15T01:21:04Z EvW1 quit (Ping timeout: 265 seconds) 2018-07-15T01:22:16Z fikka quit (Ping timeout: 268 seconds) 2018-07-15T01:25:31Z Kundry_Wag joined #lisp 2018-07-15T01:27:58Z edgar-rft: one can perfectly morph in 1 dimension, so methamorphosis must not necessarily be complex 2018-07-15T01:28:00Z fikka joined #lisp 2018-07-15T01:28:16Z Jasko quit (Quit: Leaving) 2018-07-15T01:30:22Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-15T01:32:14Z fikka quit (Ping timeout: 244 seconds) 2018-07-15T01:33:57Z markoong quit (Ping timeout: 240 seconds) 2018-07-15T01:34:30Z lumm quit (Ping timeout: 256 seconds) 2018-07-15T01:36:15Z JuanDaugherty quit (Quit: Exeunt) 2018-07-15T01:37:34Z fikka joined #lisp 2018-07-15T01:39:26Z dddddd quit (Remote host closed the connection) 2018-07-15T01:42:24Z fikka quit (Ping timeout: 260 seconds) 2018-07-15T01:45:44Z subroot joined #lisp 2018-07-15T01:46:22Z graphene quit (Remote host closed the connection) 2018-07-15T01:47:41Z gector joined #lisp 2018-07-15T01:47:41Z graphene joined #lisp 2018-07-15T01:47:48Z subr joined #lisp 2018-07-15T01:48:03Z fikka joined #lisp 2018-07-15T01:49:57Z subroot quit (Ping timeout: 240 seconds) 2018-07-15T01:52:00Z FreeBirdLjj joined #lisp 2018-07-15T01:52:23Z fikka quit (Ping timeout: 244 seconds) 2018-07-15T01:56:31Z FreeBirdLjj quit (Ping timeout: 244 seconds) 2018-07-15T01:57:28Z Pixel_Outlaw joined #lisp 2018-07-15T02:00:23Z zooey quit (Remote host closed the connection) 2018-07-15T02:00:25Z caltelt: Is there anything similar to clojure's edn for cl? A way to read in a safe subset of the language that can be used for data transfer, conf files, etc? 2018-07-15T02:01:52Z robotoad joined #lisp 2018-07-15T02:04:41Z edgar-rft: there's read-line returning one line as a string plus a parser for safe tokens, to be written by *you* 2018-07-15T02:06:15Z anewuser joined #lisp 2018-07-15T02:06:38Z sjl quit (Quit: WeeChat 2.2-dev) 2018-07-15T02:07:36Z caltelt: so...glorious json it is then... 2018-07-15T02:08:03Z fikka joined #lisp 2018-07-15T02:09:38Z graphene quit (Remote host closed the connection) 2018-07-15T02:11:10Z graphene joined #lisp 2018-07-15T02:12:32Z fikka quit (Ping timeout: 244 seconds) 2018-07-15T02:14:02Z robotoad quit (Quit: robotoad) 2018-07-15T02:15:21Z rozenglass quit (Ping timeout: 240 seconds) 2018-07-15T02:15:52Z robotoad joined #lisp 2018-07-15T02:16:12Z Oladon quit (Quit: Leaving.) 2018-07-15T02:25:25Z Baggers quit (Remote host closed the connection) 2018-07-15T02:27:10Z HighMemoryDaemon joined #lisp 2018-07-15T02:27:31Z HighMemoryDaemon: Why isn't this returning true? 2018-07-15T02:27:36Z HighMemoryDaemon: (setf emp1 '(:gender 'male)) 2018-07-15T02:27:36Z HighMemoryDaemon: (eq (getf emp1 :gender) 'male) 2018-07-15T02:27:49Z robotoad quit (Quit: robotoad) 2018-07-15T02:28:45Z fikka joined #lisp 2018-07-15T02:30:51Z k4rtik joined #lisp 2018-07-15T02:30:53Z HighMemoryDaemon: solved it. It's because I declared the entire list as a symbol 2018-07-15T02:30:56Z HighMemoryDaemon left #lisp 2018-07-15T02:32:55Z zooey joined #lisp 2018-07-15T02:33:12Z fikka quit (Ping timeout: 244 seconds) 2018-07-15T02:33:18Z moei quit (Read error: Connection reset by peer) 2018-07-15T02:33:53Z moei joined #lisp 2018-07-15T02:34:19Z Bike: that doesn't mean anything. it's not returning true because (getf emp1 :gender) will be the list (QUOTE MALE). 2018-07-15T02:34:53Z subr quit (Quit: Leaving) 2018-07-15T02:35:12Z subroot joined #lisp 2018-07-15T02:43:54Z robotoad joined #lisp 2018-07-15T02:44:09Z housel joined #lisp 2018-07-15T02:46:15Z brettgilio joined #lisp 2018-07-15T02:49:01Z fikka joined #lisp 2018-07-15T02:53:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-15T02:54:34Z FreeBirdLjj joined #lisp 2018-07-15T02:59:26Z fikka joined #lisp 2018-07-15T03:04:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-15T03:04:11Z zooey quit (Remote host closed the connection) 2018-07-15T03:08:07Z zooey joined #lisp 2018-07-15T03:09:39Z fikka joined #lisp 2018-07-15T03:10:23Z beach joined #lisp 2018-07-15T03:10:29Z k4rtik quit (Ping timeout: 260 seconds) 2018-07-15T03:10:59Z beach: Good morning everyone! 2018-07-15T03:11:33Z milanj_ quit (Quit: This computer has gone to sleep) 2018-07-15T03:13:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-15T03:18:23Z Kundry_Wag joined #lisp 2018-07-15T03:19:19Z subroot quit (Quit: Leaving) 2018-07-15T03:19:39Z fikka joined #lisp 2018-07-15T03:23:45Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-15T03:23:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-15T03:24:21Z skapata quit (Ping timeout: 240 seconds) 2018-07-15T03:25:19Z skapata joined #lisp 2018-07-15T03:30:19Z fikka joined #lisp 2018-07-15T03:31:15Z anewuser quit (Quit: anewuser) 2018-07-15T03:32:33Z edgar-rft quit (Read error: Connection reset by peer) 2018-07-15T03:34:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-15T03:38:24Z blep-on-external: hi beach 2018-07-15T03:40:21Z fikka joined #lisp 2018-07-15T03:45:29Z fikka quit (Ping timeout: 260 seconds) 2018-07-15T03:48:57Z skapata quit (Ping timeout: 240 seconds) 2018-07-15T03:50:38Z graphene quit (Remote host closed the connection) 2018-07-15T03:50:38Z fikka joined #lisp 2018-07-15T03:51:58Z graphene joined #lisp 2018-07-15T03:55:21Z fikka quit (Ping timeout: 244 seconds) 2018-07-15T03:57:30Z buffergn0me joined #lisp 2018-07-15T04:04:39Z karlosz joined #lisp 2018-07-15T04:05:10Z skapata joined #lisp 2018-07-15T04:10:38Z fikka joined #lisp 2018-07-15T04:15:22Z fikka quit (Ping timeout: 264 seconds) 2018-07-15T04:24:27Z Kundry_Wag joined #lisp 2018-07-15T04:27:18Z Pixel_Outlaw quit (Quit: Leaving) 2018-07-15T04:28:51Z orivej quit (Ping timeout: 240 seconds) 2018-07-15T04:29:10Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-15T04:31:18Z fikka joined #lisp 2018-07-15T04:33:41Z Bike quit (Quit: Lost terminal) 2018-07-15T04:35:39Z kushal quit (Remote host closed the connection) 2018-07-15T04:35:53Z kushal joined #lisp 2018-07-15T04:36:21Z fikka quit (Ping timeout: 264 seconds) 2018-07-15T04:37:36Z skapata quit (Remote host closed the connection) 2018-07-15T04:38:02Z Oladon joined #lisp 2018-07-15T04:40:00Z karlosz quit (Quit: karlosz) 2018-07-15T04:51:36Z fikka joined #lisp 2018-07-15T04:56:01Z fikka quit (Ping timeout: 248 seconds) 2018-07-15T04:57:22Z Oladon quit (Ping timeout: 264 seconds) 2018-07-15T04:59:18Z k4rtik joined #lisp 2018-07-15T05:01:51Z kushal quit (Remote host closed the connection) 2018-07-15T05:02:05Z kushal joined #lisp 2018-07-15T05:04:17Z krwq quit (Remote host closed the connection) 2018-07-15T05:11:51Z fikka joined #lisp 2018-07-15T05:13:40Z hello joined #lisp 2018-07-15T05:16:29Z fikka quit (Ping timeout: 260 seconds) 2018-07-15T05:17:57Z Kundry_Wag joined #lisp 2018-07-15T05:22:18Z fikka joined #lisp 2018-07-15T05:22:25Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-15T05:27:21Z fikka quit (Ping timeout: 264 seconds) 2018-07-15T05:33:56Z brettgilio quit (Quit: Goodbye!) 2018-07-15T05:37:59Z EvW joined #lisp 2018-07-15T05:42:41Z fikka joined #lisp 2018-07-15T05:46:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-15T05:47:40Z hello quit (Quit: Page closed) 2018-07-15T05:53:06Z fikka joined #lisp 2018-07-15T05:57:54Z fikka quit (Ping timeout: 260 seconds) 2018-07-15T05:58:31Z thuffir joined #lisp 2018-07-15T05:58:36Z slyrus_: edgar, caltelt what about something like https://github.com/phoe/safe-read ? 2018-07-15T05:59:29Z k4rtik quit (Ping timeout: 248 seconds) 2018-07-15T06:01:00Z surya joined #lisp 2018-07-15T06:03:16Z fikka joined #lisp 2018-07-15T06:05:21Z thuffir quit (Ping timeout: 240 seconds) 2018-07-15T06:08:24Z fikka quit (Ping timeout: 260 seconds) 2018-07-15T06:08:49Z Kundry_Wag joined #lisp 2018-07-15T06:08:59Z payphone is now known as takkl 2018-07-15T06:09:09Z takkl is now known as payphone 2018-07-15T06:09:20Z thuffir joined #lisp 2018-07-15T06:10:51Z EvW quit (Ping timeout: 240 seconds) 2018-07-15T06:13:21Z Kundry_Wag quit (Ping timeout: 248 seconds) 2018-07-15T06:13:26Z fikka joined #lisp 2018-07-15T06:13:53Z thuffir quit (Ping timeout: 248 seconds) 2018-07-15T06:17:57Z fikka quit (Ping timeout: 244 seconds) 2018-07-15T06:19:19Z thuffir joined #lisp 2018-07-15T06:19:29Z phoe quit (Ping timeout: 260 seconds) 2018-07-15T06:20:26Z phoe joined #lisp 2018-07-15T06:20:54Z cpn-uml joined #lisp 2018-07-15T06:24:19Z SlowJimmy joined #lisp 2018-07-15T06:25:28Z NotSoFastJames joined #lisp 2018-07-15T06:25:37Z thuffir quit (Ping timeout: 248 seconds) 2018-07-15T06:25:39Z MichaelRaskin joined #lisp 2018-07-15T06:27:16Z caltelt_ joined #lisp 2018-07-15T06:27:20Z caltelt quit (Read error: Connection reset by peer) 2018-07-15T06:29:18Z thuffir joined #lisp 2018-07-15T06:29:24Z SlowJimmy quit (Ping timeout: 260 seconds) 2018-07-15T06:29:50Z NotSoFastJames quit (Ping timeout: 244 seconds) 2018-07-15T06:33:48Z fikka joined #lisp 2018-07-15T06:33:58Z thuffir quit (Ping timeout: 264 seconds) 2018-07-15T06:34:59Z thuffir joined #lisp 2018-07-15T06:38:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-15T06:38:57Z thuffir quit (Ping timeout: 240 seconds) 2018-07-15T06:40:34Z froggey quit (Ping timeout: 264 seconds) 2018-07-15T06:41:16Z igemnace joined #lisp 2018-07-15T06:42:31Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-15T06:44:16Z fikka joined #lisp 2018-07-15T06:44:24Z thuffir joined #lisp 2018-07-15T06:46:19Z test1600 joined #lisp 2018-07-15T06:47:02Z froggey joined #lisp 2018-07-15T06:48:57Z fikka quit (Ping timeout: 244 seconds) 2018-07-15T06:49:14Z thuffir quit (Ping timeout: 260 seconds) 2018-07-15T06:50:38Z FreeBirdLjj joined #lisp 2018-07-15T06:54:11Z charh quit (Quit: leaving) 2018-07-15T06:54:33Z thuffir joined #lisp 2018-07-15T06:55:15Z edgar-rft joined #lisp 2018-07-15T06:55:56Z Murii_ joined #lisp 2018-07-15T06:58:02Z vlatkoB joined #lisp 2018-07-15T06:58:57Z thuffir quit (Ping timeout: 240 seconds) 2018-07-15T06:59:23Z surya quit (Remote host closed the connection) 2018-07-15T07:00:12Z anon_ quit (Ping timeout: 268 seconds) 2018-07-15T07:02:33Z surya joined #lisp 2018-07-15T07:04:18Z fikka joined #lisp 2018-07-15T07:05:43Z thuffir joined #lisp 2018-07-15T07:08:55Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-15T07:08:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-15T07:11:43Z makomo joined #lisp 2018-07-15T07:12:38Z surya quit (Remote host closed the connection) 2018-07-15T07:12:56Z angavrilov joined #lisp 2018-07-15T07:14:08Z surya joined #lisp 2018-07-15T07:14:12Z surya_ joined #lisp 2018-07-15T07:14:46Z fikka joined #lisp 2018-07-15T07:15:18Z surya_ quit (Client Quit) 2018-07-15T07:16:27Z surya quit (Remote host closed the connection) 2018-07-15T07:17:06Z surya joined #lisp 2018-07-15T07:18:24Z shifty quit (Ping timeout: 260 seconds) 2018-07-15T07:19:34Z fikka quit (Ping timeout: 260 seconds) 2018-07-15T07:24:04Z orivej joined #lisp 2018-07-15T07:24:47Z fikka joined #lisp 2018-07-15T07:29:37Z fikka quit (Ping timeout: 248 seconds) 2018-07-15T07:36:49Z robotoad quit (Read error: Connection reset by peer) 2018-07-15T07:38:54Z robotoad joined #lisp 2018-07-15T07:41:24Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-15T07:41:45Z cpn-uml left #lisp 2018-07-15T07:45:18Z fikka joined #lisp 2018-07-15T07:49:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-15T07:50:54Z nanoz joined #lisp 2018-07-15T07:52:48Z graphene quit (Remote host closed the connection) 2018-07-15T07:53:14Z sendai_ quit (Quit: ZNC 1.6.5 - http://znc.in) 2018-07-15T07:53:34Z nanozz joined #lisp 2018-07-15T07:54:06Z graphene joined #lisp 2018-07-15T07:55:15Z kozy quit (Remote host closed the connection) 2018-07-15T07:55:41Z fikka joined #lisp 2018-07-15T07:56:15Z robotoad quit (Quit: robotoad) 2018-07-15T07:56:21Z makomo quit (Ping timeout: 240 seconds) 2018-07-15T07:56:27Z nanoz quit (Ping timeout: 240 seconds) 2018-07-15T07:57:35Z buffergn0me quit (Ping timeout: 240 seconds) 2018-07-15T07:58:45Z azimut joined #lisp 2018-07-15T08:00:24Z fikka quit (Ping timeout: 260 seconds) 2018-07-15T08:00:50Z brettgilio joined #lisp 2018-07-15T08:02:50Z thuffir quit (Ping timeout: 244 seconds) 2018-07-15T08:04:34Z thuffir joined #lisp 2018-07-15T08:05:53Z fikka joined #lisp 2018-07-15T08:08:06Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-15T08:10:33Z fikka quit (Ping timeout: 264 seconds) 2018-07-15T08:12:35Z _death: trivial-gray-streams should also export CLOSE since it's part of the Gray proposal 2018-07-15T08:13:12Z red-dot joined #lisp 2018-07-15T08:20:05Z Kundry_Wag joined #lisp 2018-07-15T08:24:21Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-15T08:24:47Z haom joined #lisp 2018-07-15T08:25:29Z thuffir quit (Ping timeout: 260 seconds) 2018-07-15T08:25:52Z fikka joined #lisp 2018-07-15T08:30:03Z _whitelogger quit (Remote host closed the connection) 2018-07-15T08:30:51Z fikka quit (Ping timeout: 268 seconds) 2018-07-15T08:30:53Z thuffir joined #lisp 2018-07-15T08:32:17Z _whitelogger joined #lisp 2018-07-15T08:33:07Z pdv_ joined #lisp 2018-07-15T08:33:54Z pierpal quit (Quit: Poof) 2018-07-15T08:34:12Z pierpal joined #lisp 2018-07-15T08:36:57Z pdv_ quit (Client Quit) 2018-07-15T08:41:53Z graphene quit (Remote host closed the connection) 2018-07-15T08:42:57Z Khisanth quit (Ping timeout: 240 seconds) 2018-07-15T08:43:15Z graphene joined #lisp 2018-07-15T08:46:32Z fikka joined #lisp 2018-07-15T08:48:27Z Folkol_ joined #lisp 2018-07-15T08:50:02Z test1600 quit (Read error: Connection reset by peer) 2018-07-15T08:50:53Z fikka quit (Ping timeout: 244 seconds) 2018-07-15T08:52:24Z FreeBirdLjj joined #lisp 2018-07-15T08:55:40Z random-nick joined #lisp 2018-07-15T08:55:53Z rozenglass joined #lisp 2018-07-15T08:56:35Z Khisanth joined #lisp 2018-07-15T09:03:25Z acolarh quit (Ping timeout: 256 seconds) 2018-07-15T09:05:07Z kozy joined #lisp 2018-07-15T09:06:49Z fikka joined #lisp 2018-07-15T09:11:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-15T09:11:41Z shka_ joined #lisp 2018-07-15T09:12:04Z orivej quit (Ping timeout: 244 seconds) 2018-07-15T09:15:43Z kuwze joined #lisp 2018-07-15T09:17:17Z fikka joined #lisp 2018-07-15T09:17:35Z acolarh joined #lisp 2018-07-15T09:19:18Z brettgilio quit (Quit: Goodbye!) 2018-07-15T09:20:19Z pagnol joined #lisp 2018-07-15T09:22:02Z fikka quit (Ping timeout: 268 seconds) 2018-07-15T09:22:25Z brettgilio joined #lisp 2018-07-15T09:25:40Z makomo joined #lisp 2018-07-15T09:28:30Z brettgilio quit (Quit: Goodbye!) 2018-07-15T09:33:57Z milanj_ joined #lisp 2018-07-15T09:34:09Z dddddd joined #lisp 2018-07-15T09:37:39Z fikka joined #lisp 2018-07-15T09:41:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-15T09:42:42Z Folkol_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-15T09:43:53Z rumbler31 joined #lisp 2018-07-15T09:44:14Z whartung quit (Ping timeout: 268 seconds) 2018-07-15T09:46:29Z nanozz quit (Ping timeout: 256 seconds) 2018-07-15T09:48:06Z fikka joined #lisp 2018-07-15T09:48:54Z pdv_ joined #lisp 2018-07-15T09:48:54Z rumbler31 quit (Ping timeout: 260 seconds) 2018-07-15T09:49:18Z pdv_ quit (Client Quit) 2018-07-15T09:51:51Z FreeBirdLjj quit (Ping timeout: 244 seconds) 2018-07-15T09:52:40Z whartung joined #lisp 2018-07-15T09:52:59Z fikka quit (Ping timeout: 260 seconds) 2018-07-15T09:53:27Z gravicappa joined #lisp 2018-07-15T09:58:14Z fikka joined #lisp 2018-07-15T10:01:24Z Kundry_Wag joined #lisp 2018-07-15T10:02:42Z fikka quit (Ping timeout: 244 seconds) 2018-07-15T10:07:05Z Kundry_Wag quit (Ping timeout: 276 seconds) 2018-07-15T10:08:21Z caltelt_ quit (Remote host closed the connection) 2018-07-15T10:08:39Z caltelt_ joined #lisp 2018-07-15T10:12:57Z caltelt_ quit (Ping timeout: 240 seconds) 2018-07-15T10:13:53Z lumm joined #lisp 2018-07-15T10:18:16Z fikka joined #lisp 2018-07-15T10:21:53Z makomo quit (Ping timeout: 248 seconds) 2018-07-15T10:21:56Z makomo_ joined #lisp 2018-07-15T10:22:05Z jmercouris joined #lisp 2018-07-15T10:23:19Z fikka quit (Ping timeout: 260 seconds) 2018-07-15T10:25:27Z rozenglass quit (Ping timeout: 240 seconds) 2018-07-15T10:27:27Z lumm quit (Ping timeout: 240 seconds) 2018-07-15T10:27:27Z random-nick quit (Ping timeout: 240 seconds) 2018-07-15T10:28:44Z fikka joined #lisp 2018-07-15T10:30:20Z rozenglass joined #lisp 2018-07-15T10:33:11Z fikka quit (Ping timeout: 244 seconds) 2018-07-15T10:33:24Z mrcom joined #lisp 2018-07-15T10:33:59Z mrcom: I really hate CLHS hell... 2018-07-15T10:34:09Z makomo_: edgar-rft: regarding your comment about feedback paths -- yes, it's possible to model those as well since pins can be used as input, output or both 2018-07-15T10:34:30Z mrcom: How do you declare a type def for a function with keywords? 2018-07-15T10:34:41Z shifty joined #lisp 2018-07-15T10:34:41Z thuffir quit (Ping timeout: 248 seconds) 2018-07-15T10:35:46Z lnostdal quit (Ping timeout: 244 seconds) 2018-07-15T10:36:11Z mrcom: e.g., given (defun foo (a &key b)) (declare (type fixnum a) (type list b)) ...) 2018-07-15T10:37:32Z mrcom: What's the type declaration for (defun baz (f) (declare (type <> f))) ? 2018-07-15T10:37:54Z surya quit (Ping timeout: 260 seconds) 2018-07-15T10:38:28Z mrcom: And I'm not looking for (declare (type function f)) :) 2018-07-15T10:39:26Z fikka joined #lisp 2018-07-15T10:39:28Z Josh_2 joined #lisp 2018-07-15T10:41:16Z Smokitch joined #lisp 2018-07-15T10:43:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-15T10:44:38Z rumbler31 joined #lisp 2018-07-15T10:46:05Z kajo quit (Ping timeout: 276 seconds) 2018-07-15T10:48:39Z trittweiler: mrcom: (declare (type function f)) 2018-07-15T10:48:43Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-15T10:49:05Z rumbler31 quit (Ping timeout: 240 seconds) 2018-07-15T10:49:17Z fikka joined #lisp 2018-07-15T10:49:38Z mrcom: That's what I wound up doing :/ But the better really, really hates losing to the good. 2018-07-15T10:49:43Z trittweiler: (declare (type (function (fixnum &key (:b list)))) 2018-07-15T10:49:59Z mrcom: Thx! 2018-07-15T10:50:19Z FreeBirdLjj joined #lisp 2018-07-15T10:51:00Z trittweiler: I'd be surprised if there's a compiler that does anything more with that specification in praxis that it wouldn't do with (declare (type function f)) 2018-07-15T10:52:42Z mrcom: I'm looking more for type checking than optimizing. SBCL definitely checks when it compiles apply or funcall. 2018-07-15T10:53:55Z fikka quit (Ping timeout: 256 seconds) 2018-07-15T10:53:59Z pierpal quit (Quit: Poof) 2018-07-15T10:54:05Z trittweiler: When you declare a parameter to be a function, and you funcall that parameter, the compiler doesn't need to go through an implicit call to fdefinition. (As symbols and lists of form '(setf foo) are also callable) 2018-07-15T10:54:14Z pierpal joined #lisp 2018-07-15T10:54:47Z vhost-_remote quit (Ping timeout: 265 seconds) 2018-07-15T10:57:27Z housel quit (Read error: Connection reset by peer) 2018-07-15T10:57:55Z housel joined #lisp 2018-07-15T10:59:14Z Bike joined #lisp 2018-07-15T10:59:31Z fikka joined #lisp 2018-07-15T11:04:09Z fikka quit (Ping timeout: 260 seconds) 2018-07-15T11:09:35Z BitPuffin joined #lisp 2018-07-15T11:09:43Z fikka joined #lisp 2018-07-15T11:11:05Z random-nick joined #lisp 2018-07-15T11:11:27Z pagnol quit (Ping timeout: 240 seconds) 2018-07-15T11:14:21Z fikka quit (Ping timeout: 240 seconds) 2018-07-15T11:19:46Z fikka joined #lisp 2018-07-15T11:23:57Z FreeBirdLjj quit (Ping timeout: 256 seconds) 2018-07-15T11:24:34Z fikka quit (Ping timeout: 260 seconds) 2018-07-15T11:24:49Z red-dot joined #lisp 2018-07-15T11:26:00Z markoong joined #lisp 2018-07-15T11:29:59Z fikka joined #lisp 2018-07-15T11:30:31Z fikka quit (Read error: Connection reset by peer) 2018-07-15T11:31:45Z lnostdal joined #lisp 2018-07-15T11:40:13Z fikka joined #lisp 2018-07-15T11:40:36Z nirved joined #lisp 2018-07-15T11:42:35Z igemnace quit (Ping timeout: 240 seconds) 2018-07-15T11:42:35Z nirved quit (Read error: Connection reset by peer) 2018-07-15T11:44:18Z Posterdati quit (Remote host closed the connection) 2018-07-15T11:45:14Z fikka quit (Ping timeout: 276 seconds) 2018-07-15T11:45:24Z rumbler31 joined #lisp 2018-07-15T11:48:06Z Posterdati joined #lisp 2018-07-15T11:50:02Z rumbler31 quit (Ping timeout: 268 seconds) 2018-07-15T11:52:31Z FreeBirdLjj joined #lisp 2018-07-15T11:55:00Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-15T12:00:34Z fikka joined #lisp 2018-07-15T12:04:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-15T12:10:57Z lnostdal quit (Ping timeout: 240 seconds) 2018-07-15T12:10:59Z fikka joined #lisp 2018-07-15T12:15:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-15T12:20:51Z makomo_ quit (Ping timeout: 240 seconds) 2018-07-15T12:21:02Z fikka joined #lisp 2018-07-15T12:22:25Z lumm joined #lisp 2018-07-15T12:24:50Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-15T12:25:48Z fikka quit (Ping timeout: 268 seconds) 2018-07-15T12:27:12Z haom left #lisp 2018-07-15T12:27:38Z Baggers joined #lisp 2018-07-15T12:28:16Z lumm_ joined #lisp 2018-07-15T12:30:34Z red-dot joined #lisp 2018-07-15T12:31:58Z lumm quit (Ping timeout: 268 seconds) 2018-07-15T12:31:59Z lumm_ is now known as lumm 2018-07-15T12:41:30Z fikka joined #lisp 2018-07-15T12:45:58Z fikka quit (Ping timeout: 244 seconds) 2018-07-15T12:46:17Z rumbler31 joined #lisp 2018-07-15T12:47:47Z pierpal quit (Quit: Poof) 2018-07-15T12:47:47Z lumm quit (Read error: Connection reset by peer) 2018-07-15T12:48:05Z pierpal joined #lisp 2018-07-15T12:50:37Z rumbler31 quit (Ping timeout: 244 seconds) 2018-07-15T12:51:32Z karlosz joined #lisp 2018-07-15T12:51:53Z lumm joined #lisp 2018-07-15T13:00:32Z JuanDaugherty joined #lisp 2018-07-15T13:00:48Z graphene quit (Remote host closed the connection) 2018-07-15T13:01:48Z fikka joined #lisp 2018-07-15T13:02:10Z graphene joined #lisp 2018-07-15T13:06:30Z fikka quit (Ping timeout: 268 seconds) 2018-07-15T13:07:16Z lumm_ joined #lisp 2018-07-15T13:09:34Z lumm quit (Ping timeout: 260 seconds) 2018-07-15T13:09:35Z lumm_ is now known as lumm 2018-07-15T13:11:28Z knx joined #lisp 2018-07-15T13:14:49Z nika joined #lisp 2018-07-15T13:16:13Z makomo_ joined #lisp 2018-07-15T13:22:07Z fikka joined #lisp 2018-07-15T13:22:13Z surya joined #lisp 2018-07-15T13:24:09Z xrash quit (Ping timeout: 260 seconds) 2018-07-15T13:24:51Z EvW joined #lisp 2018-07-15T13:26:04Z makomo_ quit (Quit: WeeChat 2.0.1) 2018-07-15T13:26:22Z makomo joined #lisp 2018-07-15T13:26:55Z fikka quit (Ping timeout: 256 seconds) 2018-07-15T13:28:42Z lumm quit (Ping timeout: 268 seconds) 2018-07-15T13:29:19Z lumm joined #lisp 2018-07-15T13:32:34Z fikka joined #lisp 2018-07-15T13:32:44Z anon joined #lisp 2018-07-15T13:32:45Z anon quit (Changing host) 2018-07-15T13:32:45Z anon joined #lisp 2018-07-15T13:33:06Z fikka quit (Read error: Connection reset by peer) 2018-07-15T13:33:08Z anon is now known as Guest38519 2018-07-15T13:33:11Z karswell quit (Remote host closed the connection) 2018-07-15T13:38:50Z lumm quit (Quit: lumm) 2018-07-15T13:39:19Z lumm joined #lisp 2018-07-15T13:40:06Z Smokitch quit 2018-07-15T13:41:04Z kozy quit (Ping timeout: 260 seconds) 2018-07-15T13:41:14Z kozy joined #lisp 2018-07-15T13:42:49Z fikka joined #lisp 2018-07-15T13:47:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-15T13:57:25Z User__ joined #lisp 2018-07-15T13:58:52Z User__ quit (Remote host closed the connection) 2018-07-15T13:59:12Z w17t joined #lisp 2018-07-15T13:59:20Z lnostdal joined #lisp 2018-07-15T14:03:10Z fikka joined #lisp 2018-07-15T14:03:37Z rozenglass quit (Read error: Connection reset by peer) 2018-07-15T14:07:51Z EvW quit (Ping timeout: 240 seconds) 2018-07-15T14:08:05Z pjb joined #lisp 2018-07-15T14:08:09Z fikka quit (Ping timeout: 264 seconds) 2018-07-15T14:08:46Z makomo quit (Ping timeout: 264 seconds) 2018-07-15T14:08:53Z rozenglass joined #lisp 2018-07-15T14:10:08Z skapata joined #lisp 2018-07-15T14:11:40Z milanj_ quit (Quit: This computer has gone to sleep) 2018-07-15T14:13:37Z flip214: trittweiler: with SBCL and (optimize speed) the disassembly with the different declare statements is quite different... 2018-07-15T14:13:53Z subroot joined #lisp 2018-07-15T14:14:12Z flip214: https://pastebin.com/Lc4BD8uL 2018-07-15T14:14:32Z flip214: with an exact declaration, SBCL can jump to the non-keyword parsing entrypoint. 2018-07-15T14:14:52Z flip214: and so doesn't even need to build a list of keyword arguments... 2018-07-15T14:18:27Z surya quit (Ping timeout: 244 seconds) 2018-07-15T14:19:13Z jfb4` joined #lisp 2018-07-15T14:19:45Z makomo joined #lisp 2018-07-15T14:20:45Z jfb4 quit (Ping timeout: 256 seconds) 2018-07-15T14:21:57Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-15T14:22:50Z w17t quit (Quit: Leaving) 2018-07-15T14:22:53Z Arcaelyx quit (Quit: Textual IRC Client: www.textualapp.com) 2018-07-15T14:23:11Z w17t joined #lisp 2018-07-15T14:23:24Z fikka joined #lisp 2018-07-15T14:26:18Z lumm quit (Ping timeout: 256 seconds) 2018-07-15T14:27:09Z lumm joined #lisp 2018-07-15T14:27:45Z fikka quit (Ping timeout: 244 seconds) 2018-07-15T14:27:51Z subroot quit (Read error: Connection reset by peer) 2018-07-15T14:37:18Z asarch joined #lisp 2018-07-15T14:41:42Z rozenglass quit (Ping timeout: 244 seconds) 2018-07-15T14:44:08Z fikka joined #lisp 2018-07-15T14:47:41Z JuanDaugherty quit (Quit: Exeunt) 2018-07-15T14:47:50Z rumbler31 joined #lisp 2018-07-15T14:48:33Z fikka quit (Ping timeout: 248 seconds) 2018-07-15T14:52:17Z rumbler31 quit (Ping timeout: 248 seconds) 2018-07-15T14:56:33Z FreeBirdLjj joined #lisp 2018-07-15T14:57:43Z lumm quit (Ping timeout: 244 seconds) 2018-07-15T15:01:03Z igemnace joined #lisp 2018-07-15T15:04:21Z fikka joined #lisp 2018-07-15T15:08:04Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-15T15:08:21Z FreeBirdLjj joined #lisp 2018-07-15T15:09:09Z fikka quit (Ping timeout: 260 seconds) 2018-07-15T15:09:10Z Oladon joined #lisp 2018-07-15T15:09:35Z robotoad joined #lisp 2018-07-15T15:10:35Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-15T15:14:54Z fikka joined #lisp 2018-07-15T15:19:25Z fikka quit (Ping timeout: 244 seconds) 2018-07-15T15:20:02Z Kaisyu joined #lisp 2018-07-15T15:20:26Z sjl joined #lisp 2018-07-15T15:26:38Z TCZ joined #lisp 2018-07-15T15:27:07Z red-dot joined #lisp 2018-07-15T15:29:31Z TCZ quit (Client Quit) 2018-07-15T15:31:06Z ebrasca quit (Remote host closed the connection) 2018-07-15T15:33:17Z gabiruh quit (Ping timeout: 256 seconds) 2018-07-15T15:34:15Z lumm joined #lisp 2018-07-15T15:34:38Z klltkr quit (Remote host closed the connection) 2018-07-15T15:34:50Z fikka joined #lisp 2018-07-15T15:39:28Z fikka quit (Ping timeout: 265 seconds) 2018-07-15T15:45:39Z fikka joined #lisp 2018-07-15T15:49:14Z DemolitionMan joined #lisp 2018-07-15T15:49:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-15T15:54:11Z pjb quit (Ping timeout: 276 seconds) 2018-07-15T15:54:13Z random-nick: why is define-condition not called defcondition? 2018-07-15T15:55:49Z fikka joined #lisp 2018-07-15T15:55:52Z beach: random-nick: There is usually no point in asking "why" in such situations. This is true both for programming languages and natural languages. At some point, there was a mysterious consensus that one was better than the other. That's all there is to it usually. 2018-07-15T15:57:01Z beach: random-nick: Why is it called "tooth brush" but "dental floss" in English? Why not "dental brush" and "tooth floss"? 2018-07-15T15:59:01Z pagnol joined #lisp 2018-07-15T15:59:27Z beach: random-nick: You also have define-compiler-macro, define-method-combination, define-modify-macro, define-setf-expander, define-symbol-macro. 2018-07-15T16:00:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-15T16:00:30Z random-nick: but those already have multiple words 2018-07-15T16:01:13Z beach: You are searching for logic and consistency where none is to be had. 2018-07-15T16:01:29Z jackdaniel: random-nick: one (made up) reason could be, that defun and defmacro were heritage from older lisps, while "modern" way for naming macros when CL was standarized was using define-* and the were to add conditions to the language 2018-07-15T16:01:51Z jackdaniel: s/and the/and they/ 2018-07-15T16:02:14Z random-nick: jackdaniel: but what about defsetf? 2018-07-15T16:02:27Z random-nick: or defgeneric 2018-07-15T16:02:29Z beach: random-nick: So why is it called DEFGENERIC rather than DEFINE-GENERIC-FUNCTION? 2018-07-15T16:02:51Z beach: random-nick: Get over it. There is no logic reason for it. 2018-07-15T16:02:55Z jackdaniel: random-nick: I've given you a made up excuse, there could be others. I wouldn't bother with figuring that out 2018-07-15T16:03:03Z beach: random-nick: jackdaniel said "made up". 2018-07-15T16:03:04Z jackdaniel: there are more annoying inconsistencies in CL, like argument order in aref and gethash for that instance 2018-07-15T16:03:07Z random-nick: okay 2018-07-15T16:03:51Z robotoad quit (Ping timeout: 244 seconds) 2018-07-15T16:04:00Z pjb joined #lisp 2018-07-15T16:04:36Z jmercouris: hence CL21 2018-07-15T16:05:30Z jackdaniel: I haven't seen even one project which would use CL21; I've only seen people praising or ignoring it ;-) 2018-07-15T16:05:47Z jmercouris: I've never used it, simply because the problems it addresses don't bother me enough 2018-07-15T16:05:50Z Bike: hopefully cl21 doesn't focus on john wilkins crap 2018-07-15T16:05:55Z jmercouris: if there were enough people using CL21, I had have no problem using it 2018-07-15T16:06:00Z fikka joined #lisp 2018-07-15T16:06:01Z jmercouris: I'd have* 2018-07-15T16:06:27Z jmercouris: but since nobody is using it, I'm not about to write inconsistent code 2018-07-15T16:07:13Z jackdaniel: how inconsistent? 2018-07-15T16:10:34Z fikka quit (Ping timeout: 244 seconds) 2018-07-15T16:12:57Z shifty quit (Ping timeout: 264 seconds) 2018-07-15T16:14:37Z pjb: there's nothing inconsistent in a CL program to (:use "CL21") instead of (:use "CL"). 2018-07-15T16:14:54Z pjb: clim applications (:use "CLIM") instead of (:use "CL"); they're not inconsistent! 2018-07-15T16:16:13Z robotoad joined #lisp 2018-07-15T16:17:48Z graphene quit (Remote host closed the connection) 2018-07-15T16:19:08Z graphene joined #lisp 2018-07-15T16:19:33Z gabiruh joined #lisp 2018-07-15T16:21:39Z Kundry_Wag joined #lisp 2018-07-15T16:23:07Z jackdaniel: CLIM-LISP actually 2018-07-15T16:23:24Z jackdaniel: but yes, putting aside this details that's correct 2018-07-15T16:23:53Z jmercouris: jackdaniel: code inconsistent with the rest of the community 2018-07-15T16:24:48Z pjb: jmercouris: using dependencies doesn't make the code inconsistent. 2018-07-15T16:24:53Z jackdaniel: how inconsistent? is code using alexandria inconsistent with anything? 2018-07-15T16:24:54Z pjb: This is not a criteria. 2018-07-15T16:25:04Z pjb: The only criteria, is whether your code is conforming or not. 2018-07-15T16:25:13Z jackdaniel: or if I use named-readtables and I have #f as lambda dispatch - is it inconsistent? 2018-07-15T16:25:25Z pjb: (and there is unfortunately a lot of code that is not conforming: that is dependent on specificities of eg. sbcl). 2018-07-15T16:26:00Z fikka joined #lisp 2018-07-15T16:27:01Z JuanDaugherty joined #lisp 2018-07-15T16:27:41Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-15T16:28:12Z JuanDaugherty: by CLIM i take it people mean mcclim these days, is it production ready now? 2018-07-15T16:29:07Z nullniverse joined #lisp 2018-07-15T16:29:21Z jackdaniel: define production ready 2018-07-15T16:29:49Z jackdaniel: it is something what may be used to write applications 2018-07-15T16:30:18Z JuanDaugherty: usable for an app that can be distributed for use by others 2018-07-15T16:30:22Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-15T16:30:36Z jackdaniel: sure, why not 2018-07-15T16:30:43Z fikka quit (Ping timeout: 244 seconds) 2018-07-15T16:31:02Z JuanDaugherty: without expecting them to debug or develop around shortcomings/lack of completion in CLIM 2018-07-15T16:31:51Z JuanDaugherty: the why not is because some years ago it was not in that state, at least as far as use with sbcl 2018-07-15T16:31:53Z jackdaniel: usually writing complete applications requires some debugging and developing around shortcomings of used libraries. if that's your definition then it is not production ready ;) 2018-07-15T16:32:18Z JuanDaugherty: "them" referred to end users of the distribution 2018-07-15T16:32:47Z jmercouris quit (Ping timeout: 244 seconds) 2018-07-15T16:33:37Z jackdaniel: well, that depends then solely on the programmer. if he exposes interfaces which allow corruping application from the end-user point of view, then they will be able to corrupt it. but I truly don't think it is any library-specific problem, just a matter of testing and programming / qa effort 2018-07-15T16:34:43Z JuanDaugherty: ty, and that's based on use of it? 2018-07-15T16:35:17Z JuanDaugherty: (i.e. the current thing) 2018-07-15T16:35:20Z jackdaniel: what's based on use of it? I've stated an opinion about all software above, not CLIM particularily 2018-07-15T16:35:42Z JuanDaugherty: ah, y that was my question 2018-07-15T16:36:40Z JuanDaugherty: i wrote my first program in 1974, jackdaniel 2018-07-15T16:36:45Z jackdaniel: biggest shortcomming one could find is that McCLIM depends on X server running currently to have something displayed on the screen 2018-07-15T16:36:53Z jackdaniel: good for you, JuanDaugherty 2018-07-15T16:37:09Z jackdaniel: I wasn't born then, so I can't tell how impressive that is 2018-07-15T16:37:25Z JuanDaugherty: i'm good with that i'm not a fan of wayland or whatever 2018-07-15T16:38:00Z jackdaniel: limitation is more painful when you consider distribution for Windows or OSX - that requires installing X-server by hand 2018-07-15T16:38:24Z JuanDaugherty: no, i'm not interested in those platforms for this 2018-07-15T16:38:51Z nanoz joined #lisp 2018-07-15T16:38:55Z JuanDaugherty: my default gui is smalltalk, so squeak can handle them 2018-07-15T16:39:20Z red-dot joined #lisp 2018-07-15T16:39:57Z JuanDaugherty: ('this' being a number cl packages with generic windowing interfaces) 2018-07-15T16:47:46Z angavrilov quit (Read error: No route to host) 2018-07-15T16:49:17Z rumbler31 joined #lisp 2018-07-15T16:49:48Z nicht joined #lisp 2018-07-15T16:49:49Z nicht quit (Max SendQ exceeded) 2018-07-15T16:50:17Z jmercouris joined #lisp 2018-07-15T16:50:35Z jmercouris: pjb: well, writing code with dependencies in mind 2018-07-15T16:50:41Z jmercouris: and consider also the fact that cl21 has changes to the way you deal with hashes, etc 2018-07-15T16:50:48Z jmercouris: this WILL be inconsistent to how others deal with them 2018-07-15T16:50:52Z jmercouris: and this will cause friction 2018-07-15T16:51:10Z Intensity quit (Read error: Connection reset by peer) 2018-07-15T16:51:16Z _death: CL is a product of a variety of traditions, languages, people.. it is not a theoretical ideal of a single mind, so inconsistencies are expected. that "CL21" thing is one person's (abandoned?) take on how things should be, with its own inconsistencies and oddities.. its name was not well chosen 2018-07-15T16:51:44Z jmercouris: _death: Not sure if it is abandoned, maybe 2018-07-15T16:51:51Z jmercouris: it is public domain, and a long time since no updates 2018-07-15T16:52:00Z jmercouris: but, I don't want to get into the "what is abandoned" debate 2018-07-15T16:52:14Z jmercouris: also agreed, the name is terrible 2018-07-15T16:52:58Z _death: so if you flip "CL21" in your mind to "SOMEGUYSLISP" you'll see that there's no real reason to even mention it 2018-07-15T16:53:27Z rumbler31 quit (Ping timeout: 244 seconds) 2018-07-15T16:53:51Z jmercouris: interesting thought experiment 2018-07-15T16:55:16Z JuanDaugherty: it's not abandonded if cl21.org being up means that 2018-07-15T16:55:32Z flip214: beach: Congratulations! 2018-07-15T16:56:52Z flip214: though, TBH, Croatia is much nearer to us ;) 2018-07-15T16:59:23Z JuanDaugherty took a bbc quiz to find 'your secret nationality' and it came out Romanian 2018-07-15T16:59:42Z JuanDaugherty: *secret nationality 2018-07-15T16:59:50Z wigust- joined #lisp 2018-07-15T17:00:09Z JuanDaugherty: oh had personality types in mind thought I'd said that 2018-07-15T17:00:26Z nsrahmad joined #lisp 2018-07-15T17:01:41Z JuanDaugherty: my impression is that caveats aside, if you are reasonably conscientious about explicitly invoking gc in sbcl it's not really a performance hit 2018-07-15T17:02:45Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-15T17:03:05Z wigust quit (Ping timeout: 276 seconds) 2018-07-15T17:03:22Z FreeBirdLjj joined #lisp 2018-07-15T17:06:54Z JuanDaugherty wonders what the diff between ql clim and mcclim is 2018-07-15T17:07:24Z FreeBirdLjj quit (Ping timeout: 244 seconds) 2018-07-15T17:08:32Z Intensity joined #lisp 2018-07-15T17:09:57Z mflem joined #lisp 2018-07-15T17:10:25Z nullniverse quit (Ping timeout: 248 seconds) 2018-07-15T17:14:04Z graphene quit (Remote host closed the connection) 2018-07-15T17:14:13Z Oladon quit (Quit: Leaving.) 2018-07-15T17:14:18Z JuanDaugherty now, having tried the demo, understands what was meant about X being at issue 2018-07-15T17:15:21Z graphene joined #lisp 2018-07-15T17:16:25Z JuanDaugherty: fwiw, jackdaniel 1974 was a lot like 2018 with appropriate substitutions, e.g. 'nixon' for 'trump' 2018-07-15T17:17:05Z lumm quit (Ping timeout: 240 seconds) 2018-07-15T17:18:05Z grumble1 joined #lisp 2018-07-15T17:18:13Z grumble quit (Read error: Connection reset by peer) 2018-07-15T17:18:21Z grumble1 is now known as grumbe 2018-07-15T17:18:22Z grumbe is now known as grumble 2018-07-15T17:23:28Z asarch: "The following restarts are available: SKIP :R1 skip (IN-PACKAGE ASDF-USER), RETRY :R2 retry (IN-PACKAGE ASDF-USER), ..., Break 1 ASDF0[5]>" 2018-07-15T17:23:42Z asarch: How can I give an answer to clisp? 2018-07-15T17:23:55Z Bike: probably type ":r1" or whatever and hit enter 2018-07-15T17:24:20Z asarch: D'oh! 2018-07-15T17:24:22Z asarch: Thank you! 2018-07-15T17:24:38Z asarch: I was pressing A-C-R-:-1 :-P 2018-07-15T17:25:16Z Folkol_ joined #lisp 2018-07-15T17:30:26Z acolarh quit (Ping timeout: 268 seconds) 2018-07-15T17:34:47Z graphene quit (Remote host closed the connection) 2018-07-15T17:36:23Z graphene joined #lisp 2018-07-15T17:38:26Z random-nick quit (Read error: Connection reset by peer) 2018-07-15T17:39:52Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-15T17:40:23Z buffergn0me joined #lisp 2018-07-15T17:41:44Z Kundry_Wag joined #lisp 2018-07-15T17:42:41Z fikka joined #lisp 2018-07-15T17:43:36Z graphene quit (Remote host closed the connection) 2018-07-15T17:43:39Z acolarh joined #lisp 2018-07-15T17:44:51Z graphene joined #lisp 2018-07-15T17:47:06Z beach: flip214: I'll forward the congrats to my (admittedly small) family. She is a French citizen. 2018-07-15T17:47:14Z fikka quit (Ping timeout: 260 seconds) 2018-07-15T17:48:18Z beach: flip214: Unless, of course, you meant to congratulate me for having a near-complete version of the specification if the SICL garbage collectors of course. 2018-07-15T17:55:55Z klltkr joined #lisp 2018-07-15T17:59:29Z brendyn quit (Ping timeout: 260 seconds) 2018-07-15T18:07:01Z nsrahmad quit (Quit: Leaving) 2018-07-15T18:09:55Z Xach: 2018-07-15T18:12:47Z anewuser joined #lisp 2018-07-15T18:12:53Z buffergn0me quit (Remote host closed the connection) 2018-07-15T18:20:19Z nickenchuggets joined #lisp 2018-07-15T18:20:19Z nickenchuggets quit (Changing host) 2018-07-15T18:20:19Z nickenchuggets joined #lisp 2018-07-15T18:20:38Z random-nick joined #lisp 2018-07-15T18:26:41Z Kaisyu quit (Quit: Connection closed for inactivity) 2018-07-15T18:27:24Z jackdaniel: JuanDaugherty: clim system is just one of subsystems of McCLIM 2018-07-15T18:27:41Z jackdaniel: loading only CLIM won't give you a working GUI library 2018-07-15T18:27:49Z jackdaniel: perhaps we should change the system name to avoid such confusion 2018-07-15T18:28:15Z jackdaniel: or, even better, provide one system for core McCLIM system and a few other for extensions / applications / demos 2018-07-15T18:28:31Z jackdaniel: right now core system is split into at least 6 systems afaik 2018-07-15T18:29:03Z red-dot joined #lisp 2018-07-15T18:35:43Z Domaldel joined #lisp 2018-07-15T18:36:48Z easye quit (Remote host closed the connection) 2018-07-15T18:36:49Z makomo quit (Ping timeout: 260 seconds) 2018-07-15T18:37:11Z fikka joined #lisp 2018-07-15T18:37:11Z sjl quit (Quit: WeeChat 2.2-dev) 2018-07-15T18:37:21Z Kundry_Wag quit (Remote host closed the connection) 2018-07-15T18:37:55Z Kundry_Wag joined #lisp 2018-07-15T18:40:48Z nika quit (Quit: Leaving...) 2018-07-15T18:41:24Z specbot quit (Read error: No route to host) 2018-07-15T18:41:24Z minion quit (Read error: No route to host) 2018-07-15T18:41:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-15T18:42:05Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-15T18:42:58Z specbot joined #lisp 2018-07-15T18:42:58Z minion joined #lisp 2018-07-15T18:50:05Z Intensity quit (Changing host) 2018-07-15T18:50:05Z Intensity joined #lisp 2018-07-15T18:50:43Z Oladon joined #lisp 2018-07-15T18:53:09Z shka_ quit (Ping timeout: 260 seconds) 2018-07-15T18:53:49Z shka_ joined #lisp 2018-07-15T19:01:57Z nanoz quit (Ping timeout: 240 seconds) 2018-07-15T19:06:54Z shka1 joined #lisp 2018-07-15T19:07:07Z Murii_ quit (Remote host closed the connection) 2018-07-15T19:09:14Z DonVlad joined #lisp 2018-07-15T19:09:29Z shka_ quit (Ping timeout: 260 seconds) 2018-07-15T19:11:24Z DonVlad_ joined #lisp 2018-07-15T19:14:33Z kushal quit (Remote host closed the connection) 2018-07-15T19:14:48Z kushal joined #lisp 2018-07-15T19:15:02Z DonVlad quit (Ping timeout: 265 seconds) 2018-07-15T19:15:32Z EvW joined #lisp 2018-07-15T19:23:57Z JuanDaugherty: i did mcclim. 2018-07-15T19:23:57Z graphene quit (Read error: Connection reset by peer) 2018-07-15T19:24:17Z JuanDaugherty: when I went to run the demo hit the X rendering extension thing 2018-07-15T19:24:40Z asarch quit (Quit: Leaving) 2018-07-15T19:25:15Z graphene joined #lisp 2018-07-15T19:28:30Z klltkr quit (Remote host closed the connection) 2018-07-15T19:29:32Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-15T19:29:37Z makomo joined #lisp 2018-07-15T19:30:58Z red-dot joined #lisp 2018-07-15T19:35:24Z JuanDaugherty: as far the confusion, it was only at the point of looking at what ql offerred in re "CLIM" and by intuition I made the right choice 2018-07-15T19:39:26Z brettgilio joined #lisp 2018-07-15T19:40:21Z igemnace quit (Ping timeout: 256 seconds) 2018-07-15T19:43:36Z orivej joined #lisp 2018-07-15T19:46:25Z EvW quit (Remote host closed the connection) 2018-07-15T19:46:35Z EvW joined #lisp 2018-07-15T19:47:09Z jeosol: morning guys 2018-07-15T19:47:49Z d4ryus1 is now known as d4ryus 2018-07-15T19:48:08Z pbadams joined #lisp 2018-07-15T19:50:19Z orivej quit (Ping timeout: 260 seconds) 2018-07-15T19:51:03Z rumbler31 joined #lisp 2018-07-15T19:51:07Z dxtr joined #lisp 2018-07-15T19:51:27Z JuanDaugherty: moin jeosol 2018-07-15T19:52:20Z jeosol: what is the better way to run a lisp code remotely?. I will be away soon, but I can ssh to the linux box. I don't have executables created right now. I am aware of nohup but then I need to create some script? non? 2018-07-15T19:52:30Z jeosol: or executable 2018-07-15T19:52:41Z jeosol: morning JuanDuagherty. 2018-07-15T19:52:51Z JuanDaugherty: there are a variety of solutions 2018-07-15T19:53:02Z JuanDaugherty: right now I just run in tmux and detach 2018-07-15T19:53:03Z jeosol: I wanted to see if you guys do something special, or the old, normal linux way is okay 2018-07-15T19:53:22Z dxtr quit (Client Quit) 2018-07-15T19:53:22Z jeosol: I did some search I saw "screen ..." and nohup 2018-07-15T19:53:46Z JuanDaugherty: in the past I used detachtty 2018-07-15T19:54:04Z JuanDaugherty: and there are lisp implementation pkgs that handle 2018-07-15T19:54:43Z dxtr joined #lisp 2018-07-15T19:56:06Z rumbler31 quit (Ping timeout: 256 seconds) 2018-07-15T19:56:13Z JuanDaugherty: i think ur supposed to just be able to use shebang in sbcl but I've never tried it 2018-07-15T19:56:53Z jeosol: ok, thanks. did a quick read up on tmux, and other options. 2018-07-15T19:57:17Z dxtr quit (Client Quit) 2018-07-15T20:03:14Z jeosol: ok, I need to give this some thought since I'm still testing. for now, I just create new functions (to test new options) and just run it after loading. 2018-07-15T20:03:32Z Kundry_Wag joined #lisp 2018-07-15T20:09:27Z brettgilio quit (Quit: ERC (IRC client for Emacs 26.1)) 2018-07-15T20:13:27Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-15T20:13:51Z nickenchuggets joined #lisp 2018-07-15T20:13:51Z nickenchuggets quit (Changing host) 2018-07-15T20:13:51Z nickenchuggets joined #lisp 2018-07-15T20:15:01Z klltkr joined #lisp 2018-07-15T20:16:05Z Folkol_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-15T20:17:03Z karlosz quit (Quit: karlosz) 2018-07-15T20:17:32Z gravicappa quit (Ping timeout: 244 seconds) 2018-07-15T20:18:13Z brettgilio joined #lisp 2018-07-15T20:22:18Z karlosz joined #lisp 2018-07-15T20:24:35Z w17t quit (Quit: Leaving) 2018-07-15T20:25:05Z fikka joined #lisp 2018-07-15T20:25:26Z Kundry_W_ joined #lisp 2018-07-15T20:26:56Z pierpa joined #lisp 2018-07-15T20:27:09Z light2yellow joined #lisp 2018-07-15T20:27:35Z karlosz quit (Quit: karlosz) 2018-07-15T20:29:35Z Kundry_W_ quit (Ping timeout: 240 seconds) 2018-07-15T20:29:44Z karlosz joined #lisp 2018-07-15T20:29:46Z fikka quit (Ping timeout: 264 seconds) 2018-07-15T20:30:01Z brettgilio quit (Remote host closed the connection) 2018-07-15T20:31:30Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-15T20:32:29Z red-dot joined #lisp 2018-07-15T20:33:20Z karlosz quit (Client Quit) 2018-07-15T20:36:08Z caltelt_ joined #lisp 2018-07-15T20:39:59Z shifty joined #lisp 2018-07-15T20:45:45Z vlatkoB quit (Remote host closed the connection) 2018-07-15T20:52:08Z rumbler31 joined #lisp 2018-07-15T20:52:31Z karlosz joined #lisp 2018-07-15T20:56:48Z rumbler31 quit (Ping timeout: 244 seconds) 2018-07-15T20:57:51Z light2yellow quit (Quit: light2yellow) 2018-07-15T20:58:09Z shka1 quit (Ping timeout: 248 seconds) 2018-07-15T21:01:18Z charh joined #lisp 2018-07-15T21:02:12Z pierpa quit (Ping timeout: 252 seconds) 2018-07-15T21:03:47Z DonVlad_ quit 2018-07-15T21:05:37Z karlosz quit (Quit: karlosz) 2018-07-15T21:13:45Z shka1 joined #lisp 2018-07-15T21:19:28Z Kundry_Wag quit (Remote host closed the connection) 2018-07-15T21:20:05Z Kundry_Wag joined #lisp 2018-07-15T21:22:32Z |3b| joined #lisp 2018-07-15T21:24:21Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-15T21:24:23Z EvW quit (Ping timeout: 276 seconds) 2018-07-15T21:26:01Z jmercouris: jeosol: you can run slime still on a remote machine 2018-07-15T21:26:52Z graphene quit (Remote host closed the connection) 2018-07-15T21:27:15Z jmercouris: jeosol: https://www.common-lisp.net/project/slime/doc/html/Connecting-to-a-remote-lisp.html 2018-07-15T21:27:21Z jmercouris: not a really good description, but that's the idea 2018-07-15T21:27:31Z jmercouris: description isn't thorough 2018-07-15T21:28:00Z jmercouris: if you click the links, it goes into a practical explanation 2018-07-15T21:28:10Z graphene joined #lisp 2018-07-15T21:32:57Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-15T21:33:05Z pierpal quit (Ping timeout: 240 seconds) 2018-07-15T21:35:05Z shka1 quit (Ping timeout: 240 seconds) 2018-07-15T21:43:09Z JuanDaugherty quit (Quit: Exeunt) 2018-07-15T21:44:03Z robotoad quit (Quit: robotoad) 2018-07-15T21:46:29Z EvW joined #lisp 2018-07-15T21:49:50Z Domaldel quit (Quit: Leaving) 2018-07-15T21:50:01Z equwal joined #lisp 2018-07-15T21:50:17Z graphene quit (Remote host closed the connection) 2018-07-15T21:51:37Z graphene joined #lisp 2018-07-15T21:52:49Z rumbler31 joined #lisp 2018-07-15T21:55:08Z orivej joined #lisp 2018-07-15T21:55:40Z edgar-rft quit (Quit: edgar-rft) 2018-07-15T21:55:44Z equwal quit (Remote host closed the connection) 2018-07-15T21:56:09Z Kundry_Wag_ joined #lisp 2018-07-15T21:56:45Z Kundry_Wag_ quit (Remote host closed the connection) 2018-07-15T21:57:12Z NoNumber quit (Remote host closed the connection) 2018-07-15T21:57:15Z rumbler31 quit (Ping timeout: 244 seconds) 2018-07-15T21:57:17Z Kundry_Wag joined #lisp 2018-07-15T22:01:34Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-15T22:05:10Z Kundry_Wag joined #lisp 2018-07-15T22:08:19Z subroot joined #lisp 2018-07-15T22:09:39Z Kundry_Wag quit (Ping timeout: 244 seconds) 2018-07-15T22:12:17Z pierpa joined #lisp 2018-07-15T22:13:24Z fikka joined #lisp 2018-07-15T22:15:05Z pbadams quit (Ping timeout: 276 seconds) 2018-07-15T22:16:16Z brettgilio joined #lisp 2018-07-15T22:16:58Z jmercouris quit (Remote host closed the connection) 2018-07-15T22:17:08Z milanj_ joined #lisp 2018-07-15T22:17:51Z fikka quit (Ping timeout: 240 seconds) 2018-07-15T22:21:47Z DemolitionMan quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2018-07-15T22:22:33Z orivej quit (Ping timeout: 264 seconds) 2018-07-15T22:25:11Z Kundry_Wag joined #lisp 2018-07-15T22:25:53Z Kundry_Wag_ joined #lisp 2018-07-15T22:28:27Z orivej joined #lisp 2018-07-15T22:29:27Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-15T22:29:27Z shifty quit (Ping timeout: 240 seconds) 2018-07-15T22:30:55Z vsync quit (Ping timeout: 256 seconds) 2018-07-15T22:31:16Z red-dot joined #lisp 2018-07-15T22:36:02Z _whitelogger quit (Remote host closed the connection) 2018-07-15T22:36:36Z random-nick quit (Read error: Connection reset by peer) 2018-07-15T22:38:15Z _whitelogger joined #lisp 2018-07-15T22:39:19Z brettgilio quit (Remote host closed the connection) 2018-07-15T22:45:11Z brettgilio joined #lisp 2018-07-15T22:45:47Z rumbler31 joined #lisp 2018-07-15T22:49:00Z edgar-rft joined #lisp 2018-07-15T22:59:02Z brettgilio quit (Remote host closed the connection) 2018-07-15T22:59:55Z brettgilio joined #lisp 2018-07-15T23:00:43Z zooey quit (Ping timeout: 250 seconds) 2018-07-15T23:00:59Z kdas_ joined #lisp 2018-07-15T23:02:18Z brettgilio quit (Remote host closed the connection) 2018-07-15T23:02:24Z zooey joined #lisp 2018-07-15T23:03:02Z kushal quit (Quit: ZNC 1.7.0 - https://znc.in) 2018-07-15T23:06:30Z vsync joined #lisp 2018-07-15T23:07:05Z Baggers quit (Remote host closed the connection) 2018-07-15T23:08:47Z brettgilio joined #lisp 2018-07-15T23:09:52Z subr joined #lisp 2018-07-15T23:12:09Z subroot quit (Ping timeout: 260 seconds) 2018-07-15T23:12:12Z lumm joined #lisp 2018-07-15T23:12:26Z xuxuru joined #lisp 2018-07-15T23:13:22Z equwal joined #lisp 2018-07-15T23:19:38Z xuxuru quit (Quit: xuxuru) 2018-07-15T23:20:18Z Kaisyu joined #lisp 2018-07-15T23:22:01Z sjl joined #lisp 2018-07-15T23:22:30Z pagnol quit (Ping timeout: 244 seconds) 2018-07-15T23:24:50Z kjeldahl quit (Ping timeout: 245 seconds) 2018-07-15T23:25:14Z Kundry_Wag joined #lisp 2018-07-15T23:26:00Z kjeldahl joined #lisp 2018-07-15T23:27:27Z vhost- joined #lisp 2018-07-15T23:27:27Z vhost- quit (Changing host) 2018-07-15T23:27:27Z vhost- joined #lisp 2018-07-15T23:27:38Z jlarocco quit (Read error: Connection reset by peer) 2018-07-15T23:29:21Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-15T23:30:09Z xrash joined #lisp 2018-07-15T23:30:09Z lumm quit (Quit: lumm) 2018-07-15T23:38:57Z klltkr quit (Remote host closed the connection) 2018-07-15T23:39:46Z patlv joined #lisp 2018-07-15T23:41:05Z kjeldahl quit (Ping timeout: 245 seconds) 2018-07-15T23:41:06Z orivej quit (Ping timeout: 244 seconds) 2018-07-15T23:44:52Z White_Flame: jeosol: you can also just ssh -X into your remote box and launch emacs, to bring up a remote environment on your screen 2018-07-15T23:45:17Z kjeldahl joined #lisp 2018-07-15T23:45:32Z White_Flame: while it's simple, it can hurt though if you drop your connection at an inopportune time 2018-07-15T23:47:09Z brettgilio quit (Read error: Connection reset by peer) 2018-07-15T23:50:24Z equwal: I used to do remote lisp programming to keep logs of IRC. TRAMP works really well once you get it setup and move past the learning cure: https://www.emacswiki.org/emacs/TrampMode. Also, there is no input lag, and no risk of data loss. 2018-07-15T23:50:25Z Arcaelyx joined #lisp 2018-07-15T23:53:24Z X-Scale joined #lisp 2018-07-15T23:59:02Z equwal: The basic idea is it seamlessly sets up your buffers to download, be edited, and upload when you do normal file-open and save commands in emacs. 2018-07-15T23:59:25Z kjeldahl quit (Ping timeout: 245 seconds) 2018-07-16T00:01:42Z fikka joined #lisp 2018-07-16T00:04:32Z kjeldahl joined #lisp 2018-07-16T00:06:21Z fikka quit (Ping timeout: 264 seconds) 2018-07-16T00:07:20Z patlv quit (Remote host closed the connection) 2018-07-16T00:07:46Z patlv joined #lisp 2018-07-16T00:10:56Z mange joined #lisp 2018-07-16T00:17:20Z Kundry_Wag_ quit (Remote host closed the connection) 2018-07-16T00:17:56Z Kundry_Wag joined #lisp 2018-07-16T00:21:17Z jack_rabbit joined #lisp 2018-07-16T00:22:10Z Kundry_Wag_ joined #lisp 2018-07-16T00:22:21Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-16T00:29:40Z Josh_2 quit (Ping timeout: 244 seconds) 2018-07-16T00:34:33Z sauvin quit (Remote host closed the connection) 2018-07-16T00:35:12Z nullniverse joined #lisp 2018-07-16T00:35:47Z sauvin joined #lisp 2018-07-16T00:36:02Z pjb quit (Ping timeout: 256 seconds) 2018-07-16T00:36:37Z markoong quit (Read error: Connection reset by peer) 2018-07-16T00:40:50Z pjb joined #lisp 2018-07-16T00:41:13Z pjb is now known as Guest23048 2018-07-16T00:46:43Z Guest23048 quit (Remote host closed the connection) 2018-07-16T00:47:49Z patlv quit (Ping timeout: 260 seconds) 2018-07-16T00:49:40Z Guest23048 joined #lisp 2018-07-16T00:54:13Z JuanDaugherty joined #lisp 2018-07-16T00:58:06Z Guest23048 quit (Remote host closed the connection) 2018-07-16T00:59:50Z johnnymacs joined #lisp 2018-07-16T01:04:41Z Guest23048 joined #lisp 2018-07-16T01:05:02Z robotoad joined #lisp 2018-07-16T01:06:47Z johnnymacs quit (Remote host closed the connection) 2018-07-16T01:09:51Z Guest23048 quit (Ping timeout: 240 seconds) 2018-07-16T01:12:04Z patlv joined #lisp 2018-07-16T01:12:34Z brettgilio joined #lisp 2018-07-16T01:14:16Z skapata quit (Remote host closed the connection) 2018-07-16T01:15:59Z BitPuffin quit (Remote host closed the connection) 2018-07-16T01:23:18Z ravndal quit (Remote host closed the connection) 2018-07-16T01:23:27Z terpri joined #lisp 2018-07-16T01:24:35Z Guest23048 joined #lisp 2018-07-16T01:25:33Z ravndal joined #lisp 2018-07-16T01:26:13Z Oladon quit (Quit: Leaving.) 2018-07-16T01:29:52Z Guest23048 quit (Ping timeout: 256 seconds) 2018-07-16T01:31:02Z brettgilio quit (Remote host closed the connection) 2018-07-16T01:31:04Z Kundry_Wag joined #lisp 2018-07-16T01:32:43Z brettgilio joined #lisp 2018-07-16T01:32:48Z daniel-s joined #lisp 2018-07-16T01:34:02Z brettgilio quit (Remote host closed the connection) 2018-07-16T01:34:33Z brettgilio joined #lisp 2018-07-16T01:35:45Z Kundry_Wag quit (Ping timeout: 268 seconds) 2018-07-16T01:45:33Z pierpal joined #lisp 2018-07-16T01:45:46Z Pixel_Outlaw joined #lisp 2018-07-16T01:47:08Z pierpa quit (Quit: Page closed) 2018-07-16T01:49:35Z Kundry_Wag_ quit (Quit: Leaving...) 2018-07-16T01:49:40Z Guest23048 joined #lisp 2018-07-16T01:49:50Z Kundry_Wag joined #lisp 2018-07-16T01:49:57Z fikka joined #lisp 2018-07-16T01:50:11Z karlosz joined #lisp 2018-07-16T01:54:54Z fikka quit (Ping timeout: 260 seconds) 2018-07-16T01:55:39Z dmiles joined #lisp 2018-07-16T01:58:46Z Guest23048 quit (Ping timeout: 256 seconds) 2018-07-16T02:01:07Z dmiles quit (Ping timeout: 244 seconds) 2018-07-16T02:02:39Z pierpal quit (Read error: Connection reset by peer) 2018-07-16T02:02:59Z pierpal joined #lisp 2018-07-16T02:04:02Z milanj_ quit (Quit: This computer has gone to sleep) 2018-07-16T02:05:05Z robotoad quit (Quit: robotoad) 2018-07-16T02:10:22Z Guest23048 joined #lisp 2018-07-16T02:10:51Z dmiles joined #lisp 2018-07-16T02:12:34Z rumbler31 quit (Remote host closed the connection) 2018-07-16T02:12:51Z EvW quit (Ping timeout: 240 seconds) 2018-07-16T02:12:59Z patlv quit (Ping timeout: 260 seconds) 2018-07-16T02:13:28Z pierpal quit (Read error: Connection reset by peer) 2018-07-16T02:13:43Z pierpal joined #lisp 2018-07-16T02:17:32Z Guest23048 quit (Ping timeout: 276 seconds) 2018-07-16T02:21:41Z nullniverse quit (Quit: Leaving) 2018-07-16T02:22:12Z eli_oat1 joined #lisp 2018-07-16T02:23:38Z pierpal quit (Quit: Poof) 2018-07-16T02:24:07Z pierpal joined #lisp 2018-07-16T02:34:56Z marvin2 joined #lisp 2018-07-16T02:37:14Z AetherWind joined #lisp 2018-07-16T02:44:23Z fikka joined #lisp 2018-07-16T02:45:01Z JuanDaugherty quit (Quit: Exeunt) 2018-07-16T02:46:59Z rozenglass joined #lisp 2018-07-16T02:47:17Z kajo joined #lisp 2018-07-16T02:49:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-16T02:50:29Z robotoad joined #lisp 2018-07-16T02:51:04Z karlosz quit (Quit: karlosz) 2018-07-16T02:52:12Z brettgilio quit (Remote host closed the connection) 2018-07-16T02:55:55Z igemnace joined #lisp 2018-07-16T02:55:57Z subr quit (Read error: Connection reset by peer) 2018-07-16T03:09:21Z dddddd quit (Remote host closed the connection) 2018-07-16T03:09:27Z brettgilio joined #lisp 2018-07-16T03:16:01Z loke: So odd... It was pointed out on #emacs that CLHS doesn't seem to specify what the default comparator for FIND is. I know it's EQL, but where does it actually say so in the CLHS? 2018-07-16T03:17:58Z Kundry_Wag quit (Remote host closed the connection) 2018-07-16T03:18:33Z Kundry_Wag joined #lisp 2018-07-16T03:19:00Z Lord_Nightmare: has anyone considered making a more updated spec for common lisp than the 1988 one? how would one even create a commitee to do that? 2018-07-16T03:19:14Z Lord_Nightmare: is there a common lisp steering commitee? 2018-07-16T03:19:24Z Bike: clhs 17.2.2 2018-07-16T03:19:25Z specbot: Satisfying a One-Argument Test: http://www.lispworks.com/reference/HyperSpec/Body/17_bb.htm 2018-07-16T03:19:27Z Bike: @loke 2018-07-16T03:19:36Z loke: Thanks bike 2018-07-16T03:19:51Z Bike: whoops, i meant 17.2.1 2018-07-16T03:20:13Z Bike: it's a page that probably ought to be linked from more pages than it is 2018-07-16T03:20:43Z Bike: Lord_Nightmare: yes, pay ansi a whole lot of money, no 2018-07-16T03:20:58Z loke: Bike, yeah. I noticed. . :-) 2018-07-16T03:21:00Z loke: Thanks 2018-07-16T03:22:59Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-16T03:24:33Z Kundry_Wag joined #lisp 2018-07-16T03:26:40Z eli_oat1 quit (Quit: Leaving.) 2018-07-16T03:28:14Z makomo quit (Ping timeout: 260 seconds) 2018-07-16T03:28:45Z milanj_ joined #lisp 2018-07-16T03:29:50Z Kundry_Wag quit (Ping timeout: 268 seconds) 2018-07-16T03:30:20Z brettgilio quit (Remote host closed the connection) 2018-07-16T03:31:13Z panji joined #lisp 2018-07-16T03:34:11Z Pixel_Outlaw quit (Quit: Leaving) 2018-07-16T03:36:50Z ldb joined #lisp 2018-07-16T03:38:35Z fikka joined #lisp 2018-07-16T03:42:42Z slyrus1 joined #lisp 2018-07-16T03:42:54Z fikka quit (Ping timeout: 244 seconds) 2018-07-16T03:46:04Z anewuser quit (Quit: anewuser) 2018-07-16T03:49:15Z brettgilio joined #lisp 2018-07-16T03:49:49Z Kundry_Wag joined #lisp 2018-07-16T03:51:04Z kdas_ is now known as kushal 2018-07-16T03:59:27Z equwal quit (Remote host closed the connection) 2018-07-16T04:03:58Z Bike quit (Quit: Lost terminal) 2018-07-16T04:04:45Z brettgilio quit (Remote host closed the connection) 2018-07-16T04:07:20Z aeth: Lord_Nightmare: You would have to get the authors of the various implementations to agree to it. At a bare minimum, SBCL and CCL. Either not participating would probably be enough to kill the effort. Of course, the other implementations (especially ECL, SICL, and Clasp, which are all active on IRC) should ideally also participate. 2018-07-16T04:08:15Z aeth: You don't need a new *ANSI standard*. It's not like any of us use the ANSI standard, anyway. We all use the Hyperspec and/or a freely available draft of the ANSI standard. 2018-07-16T04:09:53Z aeth: What you'd probably get are threads, unicode, paths, and whatever's currently trendy (pure functional programming? lazy lists? async/await?). 2018-07-16T04:09:59Z aeth: But you'd have to convince a lot of different people. 2018-07-16T04:10:58Z aeth: s/paths/fixed paths/ 2018-07-16T04:12:57Z beach: Good morning everyone! 2018-07-16T04:13:04Z mrcom: aeth: sandboxed environments (Forget who's into that. beach: ?) 2018-07-16T04:13:24Z aeth: Also local package nicknames. That's another one that comes up all of the time. 2018-07-16T04:17:00Z ldb quit (Quit: ERC (IRC client for Emacs 26.1)) 2018-07-16T04:17:19Z brendyn joined #lisp 2018-07-16T04:23:46Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-16T04:25:18Z Kundry_Wag joined #lisp 2018-07-16T04:29:55Z Kundry_Wag quit (Ping timeout: 244 seconds) 2018-07-16T04:31:12Z krwq joined #lisp 2018-07-16T04:32:48Z beach: Lord_Nightmare: Designing a language is tricky business. We are lucky that Common Lisp was designed by a collection of very smart and highly knowledgeable people, in contrast to some of the languages in use today. It is very easy to get it wrong if you are not a language expert and a compiler expert. 2018-07-16T04:32:48Z beach: Furthermore, Common Lisp has a commercial aspect to it as well. There are the two major vendors that need to be taken into account. So a committee would have to include representatives for them as well as people who know their technical details and their computing history. 2018-07-16T04:33:18Z fikka joined #lisp 2018-07-16T04:36:58Z aeth: The free implementations that I know of are SBCL, CCL, ECL, ABCL, CLISP, CMUCL, MKCL, Clasp, Mezzano (I think it uses SBCL for bootstrapping and then runs its own implementation in the OS itself), and SICL. The commercial implementations that I know of are Allegro, LispWorks, Scieneer, Genera, and mocl. 2018-07-16T04:37:40Z fikka quit (Ping timeout: 244 seconds) 2018-07-16T04:37:53Z Folkol_ joined #lisp 2018-07-16T04:38:26Z aeth: If you wanted to be complete you could probably get away with just having representatives from SBCL, CCL, ECL, ABCL, CLISP, CMUCL, Clasp, SICL, Allegro, and LispWorks. That's 10: 8 FOSS and 2 commercial. 2018-07-16T04:39:05Z aeth: There are also other implementations that are dead, like GCL. 2018-07-16T04:40:56Z aeth: Those are just the implementations. There are other interests that would want representation, too. 2018-07-16T04:42:19Z dmiles quit (Ping timeout: 244 seconds) 2018-07-16T04:42:33Z aeth: Even getting 10 people to agree on things would be difficult, though. 2018-07-16T04:47:42Z brettgilio joined #lisp 2018-07-16T04:51:53Z igemnace quit (Quit: WeeChat 2.1) 2018-07-16T04:53:24Z Lord_Nightmare quit (Ping timeout: 260 seconds) 2018-07-16T04:56:51Z pierpal quit (Quit: Poof) 2018-07-16T04:57:08Z pierpal joined #lisp 2018-07-16T04:57:23Z loli quit (Quit: WeeChat 2.1) 2018-07-16T04:57:46Z shka1 joined #lisp 2018-07-16T04:58:34Z brettgilio quit (Remote host closed the connection) 2018-07-16T04:58:37Z loli joined #lisp 2018-07-16T04:58:50Z rippa joined #lisp 2018-07-16T05:00:14Z Lord_Nightmare joined #lisp 2018-07-16T05:01:43Z krwq: is there a way to get function/macro signature without defining a macro wrapper for defining them? (external library ok) 2018-07-16T05:02:14Z krwq: or how does slime do it 2018-07-16T05:02:21Z beach: clhs function-lambda-expression 2018-07-16T05:02:21Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_fn_lam.htm 2018-07-16T05:02:37Z krwq: thank you beach! 2018-07-16T05:02:48Z beach: Anytime. Read the page carefully though. 2018-07-16T05:03:45Z krwq: beach: before reading - does the page cover macros? 2018-07-16T05:04:02Z beach: I don't remember. Probably not. 2018-07-16T05:04:30Z beach: It is not required to return anything useful. The commercial vendors would be very upset if you could get the source of their compiler for instance. 2018-07-16T05:04:31Z vlatkoB joined #lisp 2018-07-16T05:07:02Z krwq: beach: do you perhaps know of any library which would tell me compiler/interpreter infered types for the arguments as well? 2018-07-16T05:07:31Z beach: I think there is some code like that, but I don't personally remember where. 2018-07-16T05:07:56Z brettgilio joined #lisp 2018-07-16T05:12:47Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-16T05:13:48Z dmiles joined #lisp 2018-07-16T05:22:40Z Lord_Nightmare: from what i gather, genera/opengenera seems pretty dead, except for a few people keeping it alive by keeping lisp machines running, and to some extent emulation 2018-07-16T05:23:14Z Lord_Nightmare: the only reason symbolics still exists in any form i think is because of some long government maintenance contracts, and i don't see those lasting more than another decade at most 2018-07-16T05:23:49Z jeosol: Morning beach. One virtual beer for you. 2018-07-16T05:23:53Z moei quit (Quit: Leaving...) 2018-07-16T05:24:03Z Lord_Nightmare: hopefully once the money dries up, whoever owns it will dump what's left of it open under some sort of usable open source license 2018-07-16T05:24:20Z jeosol: Congratulations!!! to my French brethren for the world cup victory. 2018-07-16T05:24:59Z jeosol: btw, good discussion regarding CL above. One of my friends, not a CL user told me why I used a dead language ... lol 2018-07-16T05:25:19Z jeosol: for my project. 2018-07-16T05:26:26Z Lord_Nightmare: my issue with common lisp is from hearing that a lot of the idiosyncrasies in it date to incompatible implementations amongs the early lisp machines and forks in the late 70s/early 80s, which is why there are five subtly different equality comparison operators 2018-07-16T05:27:00Z Lord_Nightmare: and at least some of 'common lisp' was gathering up a lot of these differences and canonizing many of them in a giant common framework 2018-07-16T05:27:55Z Lord_Nightmare: its been 30 years since 1988, and much of the reasoning for having redundancy like there originally was is no longer really relevant anymore 2018-07-16T05:28:42Z Lord_Nightmare: I'm not advocating chopping anythig out of the language, but deprecating some stuff might be a good idea, for later removal 2018-07-16T05:29:06Z beach: jeosol: I'll transmit it to my (admittedly small) family who is a French citizen. 2018-07-16T05:29:07Z Lord_Nightmare: (i mean i'm not advocating chopping anything out immediately) 2018-07-16T05:29:14Z beach: jeosol: She is not much into beer though. 2018-07-16T05:29:33Z beach: Lord_Nightmare: What do you want with Genera? 2018-07-16T05:29:42Z beach: Lord_Nightmare: We can do better than that. 2018-07-16T05:30:02Z Lord_Nightmare: nothing, right now. I'd rather use a lisp implementation like SBCL that I can use on a modern system without having to jump through hoops 2018-07-16T05:31:01Z Lord_Nightmare: my issue with genera is i think it should probably be lumped in the 'dead' pile, at least very soon 2018-07-16T05:31:27Z Lord_Nightmare: unless the current owner(s) of symbolics want to keep it around, of course 2018-07-16T05:31:28Z red-dot joined #lisp 2018-07-16T05:31:39Z beach: Lord_Nightmare: I don't quite understand what your agenda is. Why do you care about things you don't use? 2018-07-16T05:32:12Z beach: And who would be in charge of doing this "lumping"? 2018-07-16T05:32:14Z Lord_Nightmare: Musings, pie in the sky ideas which will never come to fruition :( 2018-07-16T05:32:21Z Lord_Nightmare: i haven't a clue. 2018-07-16T05:32:32Z Lord_Nightmare: i was just wondering if the idea had been considered before 2018-07-16T05:33:36Z Lord_Nightmare: anyway, I'm cluttering up the channel with my harebrained schemes, i'll shut up now. 2018-07-16T05:33:38Z Cymew joined #lisp 2018-07-16T05:34:22Z beach: Lord_Nightmare: Ideas about updating the standard pop up here regularly, usually by relative newbies who know nothing about language design, compiler technology, garbage collection technology, synchronization primitives, or anything. They also know nothing about standardization, and the complex social interactions required to create a language like Common Lisp. 2018-07-16T05:34:29Z mrcom: Lord_Nightmare: Comes up frequently. It's kind of a rite of passage :) 2018-07-16T05:35:15Z Cymew quit (Remote host closed the connection) 2018-07-16T05:35:26Z mrcom: Tidying-up is a powerful human drive. 2018-07-16T05:35:33Z Kundry_Wag joined #lisp 2018-07-16T05:35:42Z Cymew joined #lisp 2018-07-16T05:36:11Z mrcom: Fortunately, often, it's exceeded by drive to procastinate. 2018-07-16T05:40:34Z Kundry_Wag quit (Ping timeout: 268 seconds) 2018-07-16T05:41:47Z rozenglass quit (Remote host closed the connection) 2018-07-16T05:45:37Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-16T05:48:17Z Cymew quit (Ping timeout: 248 seconds) 2018-07-16T05:53:02Z brettgilio quit (Remote host closed the connection) 2018-07-16T05:59:00Z flamebeard joined #lisp 2018-07-16T05:59:55Z brettgilio joined #lisp 2018-07-16T06:03:29Z beach: Lord_Nightmare: I do have a project to update the standard, but it is VERY modest compared to most suggestions I see here: https://github.com/robert-strandh/Well-Specified-Common-Lisp 2018-07-16T06:04:16Z Lord_Nightmare: ok 2018-07-16T06:04:51Z chiyosaki joined #lisp 2018-07-16T06:04:52Z chiyosaki quit (Client Quit) 2018-07-16T06:05:06Z Lord_Nightmare: my idea was more to 'mark the less useful leftovers which could probably be removed', since i understand the roots of common lisp are over 50 years old and a lot of people poured a lot of thought into it 2018-07-16T06:05:09Z mm__redacted quit (Read error: Connection reset by peer) 2018-07-16T06:05:21Z Kundry_Wag joined #lisp 2018-07-16T06:05:24Z Lord_Nightmare: let me read thos 2018-07-16T06:05:26Z Lord_Nightmare: this 2018-07-16T06:05:53Z mm__redacted joined #lisp 2018-07-16T06:06:18Z beach: Lord_Nightmare: That would be one of the less useful modifications. People can just ignore them. They only pose problems to people implementing Common Lisp systems. 2018-07-16T06:06:22Z saki quit (Ping timeout: 264 seconds) 2018-07-16T06:06:26Z Guest38519 quit (Read error: Connection reset by peer) 2018-07-16T06:06:44Z beach: Anyway, got to go. 2018-07-16T06:06:48Z Lord_Nightmare: i'm starting to understand that 2018-07-16T06:06:51Z Lord_Nightmare: l8r 2018-07-16T06:07:08Z saki joined #lisp 2018-07-16T06:10:09Z kdas_ joined #lisp 2018-07-16T06:10:09Z krwq quit (Ping timeout: 244 seconds) 2018-07-16T06:10:14Z Kundry_Wag quit (Ping timeout: 276 seconds) 2018-07-16T06:10:14Z saturn2 quit (Ping timeout: 276 seconds) 2018-07-16T06:11:01Z kushal quit (Ping timeout: 250 seconds) 2018-07-16T06:12:48Z anon joined #lisp 2018-07-16T06:12:48Z anon quit (Changing host) 2018-07-16T06:12:48Z anon joined #lisp 2018-07-16T06:13:12Z anon is now known as Guest48278 2018-07-16T06:15:00Z orivej joined #lisp 2018-07-16T06:16:14Z caltelt_ quit (Ping timeout: 260 seconds) 2018-07-16T06:20:21Z froggey quit (Ping timeout: 240 seconds) 2018-07-16T06:20:42Z fikka joined #lisp 2018-07-16T06:20:43Z Kundry_Wag joined #lisp 2018-07-16T06:21:11Z kajo quit (Remote host closed the connection) 2018-07-16T06:22:05Z kajo joined #lisp 2018-07-16T06:22:25Z flip214: beach: both, of course - winning, and completing! ;) 2018-07-16T06:22:26Z froggey joined #lisp 2018-07-16T06:22:31Z pillton quit (Quit: ERC (IRC client for Emacs 26.1)) 2018-07-16T06:25:05Z fikka quit (Ping timeout: 248 seconds) 2018-07-16T06:31:54Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-16T06:34:27Z moei joined #lisp 2018-07-16T06:35:08Z red-dot joined #lisp 2018-07-16T06:37:45Z saturn2 joined #lisp 2018-07-16T06:37:46Z LdBeth: Good afternoon 2018-07-16T06:51:05Z scymtym quit (Ping timeout: 240 seconds) 2018-07-16T06:51:32Z brettgilio quit (Remote host closed the connection) 2018-07-16T06:53:45Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-16T06:59:05Z easye joined #lisp 2018-07-16T07:01:23Z daniel-s quit (Remote host closed the connection) 2018-07-16T07:04:14Z wigust- quit (Quit: ZNC 1.7.0 - https://znc.in) 2018-07-16T07:07:27Z nirved joined #lisp 2018-07-16T07:08:10Z beach: flip214: Thanks! 2018-07-16T07:08:17Z beach: Hello LdBeth. 2018-07-16T07:10:10Z wigust joined #lisp 2018-07-16T07:13:36Z thijso joined #lisp 2018-07-16T07:15:33Z moei quit (Quit: Leaving...) 2018-07-16T07:18:36Z ofi joined #lisp 2018-07-16T07:25:21Z shka1 quit (Ping timeout: 265 seconds) 2018-07-16T07:25:35Z nirved quit (Ping timeout: 244 seconds) 2018-07-16T07:26:00Z kdas_ is now known as kushal 2018-07-16T07:29:35Z xaotuk joined #lisp 2018-07-16T07:30:18Z caltelt_ joined #lisp 2018-07-16T07:33:51Z ioa left #lisp 2018-07-16T07:37:55Z scymtym joined #lisp 2018-07-16T07:38:46Z orivej quit (Ping timeout: 264 seconds) 2018-07-16T07:39:51Z orivej joined #lisp 2018-07-16T07:41:57Z xaotuk quit (Ping timeout: 240 seconds) 2018-07-16T07:45:37Z angavrilov joined #lisp 2018-07-16T07:49:53Z marvin2 quit (Ping timeout: 248 seconds) 2018-07-16T07:50:08Z fikka joined #lisp 2018-07-16T07:51:26Z fikka quit (Client Quit) 2018-07-16T07:51:43Z fikka joined #lisp 2018-07-16T07:51:54Z orivej quit (Ping timeout: 260 seconds) 2018-07-16T07:52:17Z Smokitch joined #lisp 2018-07-16T07:52:31Z mflem quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2018-07-16T07:56:09Z ofi quit (Remote host closed the connection) 2018-07-16T07:57:06Z ofi joined #lisp 2018-07-16T08:02:39Z pagnol joined #lisp 2018-07-16T08:05:42Z Cymew joined #lisp 2018-07-16T08:08:43Z panji left #lisp 2018-07-16T08:10:26Z mingus joined #lisp 2018-07-16T08:13:14Z nirved joined #lisp 2018-07-16T08:15:18Z mange quit (Remote host closed the connection) 2018-07-16T08:18:57Z pierpal quit (Ping timeout: 240 seconds) 2018-07-16T08:19:00Z muresanvlad_: how often does the garbage collector is called on average? 2018-07-16T08:19:25Z beach: muresanvlad_: That depends a lot on the behavior of your application. 2018-07-16T08:19:44Z muresanvlad_: very true 2018-07-16T08:19:56Z beach: muresanvlad_: Some people write applications that never allocate any memory. In that case the garbage collector is never alled. 2018-07-16T08:19:56Z muresanvlad_: but on average, can I expect it to be called once a second? 2018-07-16T08:19:58Z beach: called. 2018-07-16T08:21:32Z nirved quit (Ping timeout: 276 seconds) 2018-07-16T08:23:49Z trittweiler: muresanvlad_, In a C program, how often do you think malloc is called on average? 2018-07-16T08:24:13Z nirved joined #lisp 2018-07-16T08:24:48Z graphene quit (Remote host closed the connection) 2018-07-16T08:24:50Z muresanvlad_: it's quite different. The GC can be called when you create a new variable,string or function 2018-07-16T08:25:41Z muresanvlad_: I wouldn't say malloc is called often though 2018-07-16T08:25:57Z pagnol quit (Ping timeout: 240 seconds) 2018-07-16T08:26:05Z graphene joined #lisp 2018-07-16T08:26:38Z trittweiler: Doesn't it depend on the way the program is written? A C program doing a lot of text processing, would call malloc quite often, no? 2018-07-16T08:27:19Z muresanvlad_: right, I just wanted to know for an average small program how often the gc can be called once per second 2018-07-16T08:27:36Z muresanvlad_: aproximative ofc 2018-07-16T08:27:46Z loke: muresanvlad_: It's more like once every few seconds for a minor collection (very fast) 2018-07-16T08:28:25Z loke: Major collections (the ones that take time) could be run every few minutes, even for large applciations. In some cases, several hours can pass. 2018-07-16T08:28:26Z muresanvlad_: ^ that kind of response I was looking for 2018-07-16T08:28:47Z muresanvlad_: major collections? 2018-07-16T08:28:56Z loke: The ones that collect the older generations. 2018-07-16T08:29:24Z loke: Usually, GC's split their heap into generations, since it has been shown that most memory gets collected almost instantaneously. 2018-07-16T08:29:28Z muresanvlad_: so the marking stages doesn't go deeper every time? 2018-07-16T08:30:00Z muresanvlad_ is now known as Murii__ 2018-07-16T08:30:04Z beach: muresanvlad_: There are small programs that don't allocate any memory, and there are others that allocate a lot. It is completely meaningless to talk about averages here. 2018-07-16T08:30:07Z loke: So memory gets allocated on the young generation, and after a while gets “promoted”. The old generation is only GC'ed when it fills up, which means that it can take quite some time becfore the majority of memory is ever GC'ed 2018-07-16T08:31:09Z loke: But, as Beach noted, different applications have different requirements. 2018-07-16T08:31:54Z loke: If you really want to, you can always look at the GC in a specific implementation (and its settings) and then write a program that directly targets theat particular GC implementation. 2018-07-16T08:32:26Z loke: Just like you can write programs that directly target the malloc implementation in a given operating system and trigger some naty behaviour (like fragmentation) 2018-07-16T08:33:33Z aeth: jeosol: The French drink virtual wine, not virtual beer. 2018-07-16T08:34:21Z xrash quit (Ping timeout: 240 seconds) 2018-07-16T08:34:38Z beach: Murii__: Why do you care how often the garbage collector is called anyway? 2018-07-16T08:35:02Z Murii__: For getting an idea how much of an impact it has over the performance 2018-07-16T08:35:25Z beach: Murii__: Usually, none. 2018-07-16T08:35:34Z loke: Murii__: The number of times it gets called tells you nothing about its perfomance. 2018-07-16T08:35:41Z beach: Murii__: It can be amortized over the allocations your program executes. 2018-07-16T08:35:47Z Murii__: those checks ain't cheap 2018-07-16T08:36:09Z aeth: If you need to avoid the GC in part of your program or profile exactly where/when the allocations happen/etc., SBCL ime is the easiest for this. 2018-07-16T08:36:11Z Murii__: traversing the root and seeing which is marked and which is not 2018-07-16T08:36:22Z beach: Murii__: I think you are confused about what the GC does, and why it is called. 2018-07-16T08:37:43Z aeth: Murii__: It's pretty easy to see exactly how much or how little the GC is called in SBCL 2018-07-16T08:37:47Z aeth: Iirc, there's even a way to log it 2018-07-16T08:37:55Z beach: Murii__: There is a very deep result in the GC literature which is that as the size of your heap increases compared to the working set of your application, the cost of garbage collection as a fraction of your application execution time goes to 0. 2018-07-16T08:38:40Z Murii__: perhaps 2018-07-16T08:39:07Z beach: Murii__: People also imagine that manual memory management like malloc()/free() is cheaper than tracing garbage collection. That is not true at all. 2018-07-16T08:39:19Z Murii__: doubt that 2018-07-16T08:40:05Z beach: Murii__: Now I *know* that you are confused. 2018-07-16T08:40:22Z shifty joined #lisp 2018-07-16T08:40:31Z beach: Murii__: The amount of work that malloc()/free() have to do is definitely not negligible. Do you know how an implementation of those works? 2018-07-16T08:41:06Z Murii__: I do not, do you? 2018-07-16T08:41:11Z Murii__: does anyone here? 2018-07-16T08:41:17Z beach: I definitely do. 2018-07-16T08:41:33Z aeth: Murii__: You can see a lot about what's going on in SBCL's GC with the stuff mentioned here (and its profiling stuff in general): http://www.sbcl.org/manual/#Garbage-Collection 2018-07-16T08:41:36Z aeth: Write some test cases. 2018-07-16T08:41:37Z Murii__: you must be a very smart and dedicated C programmer 2018-07-16T08:41:47Z beach: Murii__: I just implemented a version of Doug Lea's algorithm, and I studied Paul Wilson's excellent survey paper about memory allocators. 2018-07-16T08:42:20Z heisig joined #lisp 2018-07-16T08:42:57Z beach: Murii__: Again you are confused. The algorithms used by typical malloc()/free() implementations can be learned without writing a single line of C code. They general purpose allocator techniques that work in any language. 2018-07-16T08:43:40Z schweers` joined #lisp 2018-07-16T08:43:41Z beach: They ARE general purpose... 2018-07-16T08:44:00Z Murii__: malloc will be called either way when you create a new variable in Lisp 2018-07-16T08:44:11Z beach: Murii__: Absolutely not. 2018-07-16T08:44:15Z aeth: Murii__: You probably shouldn't call beach a C programmer. 2018-07-16T08:44:31Z beach: Murii__: I think you need to read up on how garbage collection works. 2018-07-16T08:45:01Z Murii__: Why? Because I said malloc is called when you create a new variable? 2018-07-16T08:45:07Z Murii__: that's absolutely true 2018-07-16T08:45:18Z beach: Murii__: Nope. 2018-07-16T08:45:20Z loke: I also have experience in the subject. More so than the average programmer at the very least. I think a lot of people on this channel know what they are talking about. 2018-07-16T08:46:13Z Folkol_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-16T08:46:39Z lieven: Murii__: go read up on the boehm-gc stuff for example. There are cases of existing C programs speeding up when linked with it. It basically replaces the stdlib's malloc/free pair with its own where free is a nop and does gc. 2018-07-16T08:48:29Z caltelt_ quit (Ping timeout: 265 seconds) 2018-07-16T08:49:09Z makomo joined #lisp 2018-07-16T08:50:27Z Kundry_Wag joined #lisp 2018-07-16T08:51:02Z makomo quit (Client Quit) 2018-07-16T08:53:14Z schweers`: beach: a garbage collecting system would not necessarily have anything directly resembling malloc, right? 2018-07-16T08:53:25Z loke: lieven: More accurate would be to say that it ‘may’ do GC. 2018-07-16T08:54:00Z loke: schweers: if you define malloc() as being “something that provides free memory to whomever requests it” then it must have. :-) 2018-07-16T08:54:21Z Posterdati: aeth: there was a prometheus/grafana example of sbcl GC statistics!!! 2018-07-16T08:54:23Z schweers`: I mean malloc as in malloc(3) 2018-07-16T08:54:39Z beach: schweers`: Exactly. 2018-07-16T08:54:40Z jackdaniel waits for infinite-memory-systems, where no garbage needs to be freed or collected :-) 2018-07-16T08:54:49Z schweers`: as in, only provide the amount of bytes one wants allocated. 2018-07-16T08:54:51Z beach: schweers`: It is usually much more efficient than that. 2018-07-16T08:55:07Z schweers`: thanks beach :) 2018-07-16T08:55:10Z Murii__: schweers`, boehm-gc under UNIX uses either malloc, sbrk, or mmap 2018-07-16T08:55:18Z Posterdati: aeth: https://github.com/deadtrickster/prometheus.cl 2018-07-16T08:55:57Z schweers`: Murii__: quite possible, I wanted to know if it must be this way for all garbage collectors. I assumed that this is not the case, and beach confirmed this. 2018-07-16T08:56:00Z loke: jackdaniel: Some application are written as such. I've seen very memory hugly Java applications running with the GC turned off. They just restart the application every night (effectively creating a single GC :-) ) 2018-07-16T08:56:13Z loke: hungry 2018-07-16T08:56:34Z schweers`: loke: my bias tells me that this is stupid. is there a legitimate reason for this? 2018-07-16T08:57:07Z loke: (they don't actually turn it off, but they set the heap size to a ridiculous size, and tune it so that it only GC's if it absolutely needs to, which is never) 2018-07-16T08:57:12Z beach: schweers`: A good Common Lisp system will have a "nursery", i.e. a generation of youngest objects from which new objects are allocated. And they use a copying collector, so that allocation is just a matter of testing and incrementing a pointer. 2018-07-16T08:57:14Z Folkol_ joined #lisp 2018-07-16T08:57:47Z schweers`: wow, that really sounds like cheap allocation! I had no idea! 2018-07-16T08:58:10Z loke: schweers: well, they are essentially working around limitations in the software. As the customer dataset grew, they needed more and more heap. Once they git a heap size of around 50 GB or more, the full GC took so long that it blocked transactions in the system. 2018-07-16T08:58:18Z beach: schweers`: Whereas the standard implementation of malloc() has to look for a best-fit block among all free blocks in memory. 2018-07-16T08:58:19Z loke: s/git/hit/ 2018-07-16T08:58:56Z loke: beach: No need to even test the pointer. An allocation is literally just an ADD instruction. 2018-07-16T08:59:10Z schweers`: loke: my question may sound naive but ... why not have smaller collections on the way? As far as I know, the jvm has this as default behavior anyway, right? 2018-07-16T08:59:12Z beach: loke: The heap might be full no? 2018-07-16T08:59:21Z loke: beach: You set of a readonly memory page after the free heap, and then you'll get a SEGV when you hit it, which can trigger a minor GC 2018-07-16T08:59:39Z beach: loke: Sure, that's one possibility. 2018-07-16T08:59:51Z loke: beach: That's how it's usualyl implemented. 2018-07-16T09:00:14Z beach: loke: I am surprised but I believe you. 2018-07-16T09:00:22Z loke: beach: THat' 2018-07-16T09:00:55Z loke: beach: That's the reason why you can't load the JVM into SBCL wusing FFI. Both of them tries to handle SEGV and they confuse eachother leading to a crash. 2018-07-16T09:01:06Z beach: Heh. 2018-07-16T09:02:33Z loke: it saves a conditional jump instruction (and perhaps a CMP, depending on how you lay things out in memory) per allocation. That adds up. 2018-07-16T09:03:28Z beach: I would think that cost would be swamped by the necessity of allocating memory in order to initialize the object allocated. Plus, the branch-prediction logic will guess the right thing almost all the time. 2018-07-16T09:03:43Z larme quit (Quit: WeeChat 2.1) 2018-07-16T09:03:55Z beach: loke: But, I do believe you. 2018-07-16T09:04:38Z trittweiler: Posterdati, Might want to add a short section in the beginning what this is about. I didn't know what Prometheus.io is, and because the name of the library is essentially the same as that service, I didn't quite get it at first. (Usually, the convention used to be to call this thing cl-prometheus rather than prometheus.cl, but that's just names.) 2018-07-16T09:04:48Z loke: beach: I'm sure it's possible to avoid page table hackery, but how much you gain I don't know. 2018-07-16T09:05:05Z loke: The benefot of not doing it would be that you can easily link in the Java VM in the same process, which would be useful. 2018-07-16T09:05:05Z schweers`: it seems to me that low level languages like C have done so much optimization, that this way of handling memory and optimizing it is completely lost to them. 2018-07-16T09:05:10Z beach: loke: Me neither. But I'll find out one day. 2018-07-16T09:05:15Z trittweiler: Posterdati, I find the numbers in the tables confusing too. Is it really N (operations) per second? In that case, the implementation via mutex wins? 2018-07-16T09:05:43Z beach: schweers`: They can't do better if they assume that objects won't move once allocated. 2018-07-16T09:05:50Z Posterdati: trittweiler: ? 2018-07-16T09:05:54Z schweers`: exactly 2018-07-16T09:06:27Z schweers`: Is moving objects not at least somewhat expensive? It seems so to me, but then again, I don’t know much about GC. 2018-07-16T09:06:28Z Posterdati: trittweiler: what? 2018-07-16T09:06:29Z trittweiler: Posterdati, oh that link you posted, that's not your project? Sorry 2018-07-16T09:06:39Z Posterdati: trittweiler: no, it isn 2018-07-16T09:06:40Z Posterdati: trittweiler: no, it isn't 2018-07-16T09:06:46Z beach: schweers`: In my opinion, this is the reason for the complexity of C++. They made the decision from day 1 to use manual memory management. 2018-07-16T09:07:15Z schweers`: complexity ... that’s a nice way of putting it :-P 2018-07-16T09:07:27Z beach: schweers`: Sure, moving objects is not free. 2018-07-16T09:07:36Z Posterdati: beach: the complexity of C++ came from strostrup which is a puppet of the Majors 2018-07-16T09:07:37Z larme joined #lisp 2018-07-16T09:08:04Z Posterdati: beach: c++ it is clearly a patch work 2018-07-16T09:08:07Z _cosmonaut_ joined #lisp 2018-07-16T09:08:09Z krrrcks joined #lisp 2018-07-16T09:08:36Z schweers`: not to bash on Stroustroup, but it seems to me like C++ is a quick hack gone too far. 2018-07-16T09:09:12Z beach: Posterdati: Here is how I see it. Common Lisp and other modern languages enforce uniform reference semantics. That is impractical without GC. Without it, you must distinguish between objects and pointers to them and you must be very careful when counting references and/or copying objects. That is a large part of the complexity of C++. 2018-07-16T09:09:13Z loke: schweers`: You should bash on him, because you're totally correct. 2018-07-16T09:10:01Z schweers`: nah, I disagree with him on language design, but I can kind of see how this can happen. Also, he did a remarkable job, in a way. I couldn’t have done what he has. Also, it was a different time. 2018-07-16T09:10:03Z Posterdati: beach: not to mention the different versions of c++ 2018-07-16T09:10:16Z schweers`: I /do/ however bash on people who insist, that the language should still be used 2018-07-16T09:10:33Z shka: C++ is amazing set of features that don't really work together 2018-07-16T09:10:37Z shka: AKA bad design 2018-07-16T09:10:41Z schweers`: well, maybe for some really weird niche platform. But I guess there are better languages today for any purpose. 2018-07-16T09:10:47Z Posterdati: shka: lol 2018-07-16T09:11:05Z shka: manual memory managment is probabbly not the only reason behind it 2018-07-16T09:11:20Z orivej joined #lisp 2018-07-16T09:11:28Z shka: personally i blame "let's put everything in!" mentality 2018-07-16T09:11:31Z schweers`: shka: templates look like botched design to me too 2018-07-16T09:12:00Z Posterdati: schweers: don't recall them to me, please... 2018-07-16T09:12:17Z jackdaniel: imo "let's put everything in!" is very lispish mentality 2018-07-16T09:12:32Z Posterdati: schweers: at my 40s I totally abandon c++ and learn CL due to templates 2018-07-16T09:12:44Z shka: jackdaniel: yeah, but somehow C++ failed at that really badly 2018-07-16T09:12:48Z schweers`: Posterdati: seems like a sane thing to do ;) 2018-07-16T09:12:50Z trittweiler: beach: C++ tries really hard to make it possible to use the stack for allocations because allocating on the stack is cheap (it's just a pointer increment! - oh the irony) 2018-07-16T09:13:03Z schweers`: trittweiler: LOL 2018-07-16T09:13:04Z beach: trittweiler: Heh! 2018-07-16T09:13:06Z Posterdati: schweers: it was, it was my friend! 2018-07-16T09:13:47Z Posterdati: schweers: In my case the Conrad Barsky song is fullfilled 2018-07-16T09:13:54Z figurelisp joined #lisp 2018-07-16T09:14:09Z shka: honestly, what amazes me the most in CL is that most things work together 2018-07-16T09:15:37Z shka: on conceptual level almost everything is compatible 2018-07-16T09:15:41Z schweers`: shka: I’m afraid I don’t recall any details, but I remembering thinking that some things in CL seemed weird and somewhat arbitrary, until I got how they work together. Then it just seemed (and seems) amazing. 2018-07-16T09:16:00Z Posterdati: well every languages has got its own purpose, I still don't catch the c++ purpose, I mean it is not for system programming, nor for AI, databases? Who knows... 2018-07-16T09:16:28Z aeth: trittweiler: CL has (declare (dynamic-extent foo)) for possible stack allocations. http://www.lispworks.com/documentation/HyperSpec/Body/d_dynami.htm 2018-07-16T09:17:01Z schweers`: Posterdati: it is sometimes used for embedded devices, as it has some features which make it a little more pleasant to use than C. Which says more about C than C++, if you ask me. 2018-07-16T09:17:36Z Posterdati: schweers: on Arduino is nice, but not desiderable, I use to program them using c... 2018-07-16T09:18:09Z schweers`: guess why I dislike embedded devices! 2018-07-16T09:18:32Z aeth: C++ seems to be very popular in high performance and/or real-time programs, e.g. game engines. 2018-07-16T09:18:43Z Posterdati: really? 2018-07-16T09:19:08Z skeuomorf joined #lisp 2018-07-16T09:19:11Z schweers`: aeth: I wonder how much of this is just history, and how other languages (CL in particular) would fare in this domain 2018-07-16T09:19:14Z Posterdati: I found a lot of c++ in products like rhinoceros 2018-07-16T09:19:25Z aeth: Pretty much every game engine is C++, even if they let you use a different language for the part you write (like Unity's C#) 2018-07-16T09:19:30Z skeuomorf left #lisp 2018-07-16T09:19:37Z EvW1 joined #lisp 2018-07-16T09:19:38Z fikka quit (Ping timeout: 256 seconds) 2018-07-16T09:20:13Z aeth: schweers`: Well, as far as history goes, in the 1980s games were written mostly in asm, and portable games were written that way until probably 2004 or so. In the 1990s, games got to use C and about 15 years ago they switched to C++. 2018-07-16T09:20:36Z Kundry_W_ joined #lisp 2018-07-16T09:23:35Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-16T09:23:38Z shifty quit (Remote host closed the connection) 2018-07-16T09:24:16Z marvin4 joined #lisp 2018-07-16T09:25:14Z Kundry_W_ quit (Ping timeout: 260 seconds) 2018-07-16T09:25:16Z schweers`: But even if CL were not a good candidate for AAA games, I guess that other languages might. Rust maybe? 2018-07-16T09:25:26Z schweers`: which is probably still awful 2018-07-16T09:25:42Z schweers`: anyway, this has gone a little off-topic 2018-07-16T09:26:41Z araujo joined #lisp 2018-07-16T09:26:42Z araujo quit (Changing host) 2018-07-16T09:26:42Z araujo joined #lisp 2018-07-16T09:27:32Z Folkol_ quit (Quit: Textual IRC Client: www.textualapp.com) 2018-07-16T09:28:24Z shka: schweers`: writing game engines is not the same as writing games 2018-07-16T09:29:06Z pagnol joined #lisp 2018-07-16T09:29:09Z schweers`: shka: true, but I know too little about either to form an informed opinion 2018-07-16T09:30:23Z Folkol_ joined #lisp 2018-07-16T09:34:08Z shka: schweers`: needlessly to say, currently you can simply grab unreal engine or unity engine and stick to it 2018-07-16T09:34:23Z shka: if you can somehow embedd lisp in it, you are golden 2018-07-16T09:34:43Z aeth: schweers`: The big problem with writing a game engine in Common Lisp (or, really, anything that's not C++) is that you have to do everything yourself instead of using existing solutions. 2018-07-16T09:34:58Z aeth: shka: That probably wouldn't work, but you could probably embed it in Godot 2018-07-16T09:35:00Z _death: did you realy suggest a language created less than a decade ago and constantly changing for a huge codebase? 2018-07-16T09:35:00Z dkrm quit (Quit: WeeChat 2.1) 2018-07-16T09:35:11Z aeth: _death: It's already being done 2018-07-16T09:35:19Z schweers`: I didn’t realize that there were so many libraries that game engine developers could use. 2018-07-16T09:35:55Z schweers`: _death: in case you meant me suggesting rust, it was just a wild idea. I’m not seriously suggesting it, no. 2018-07-16T09:35:58Z _death: aeth: that foolish decisions are made is not an argument.. 2018-07-16T09:36:27Z Posterdati: aeth: https://www.simplygon.com/#get 2018-07-16T09:36:38Z Posterdati: aeth: it is cheap :) 2018-07-16T09:36:46Z shka: aeth: do you suggest it is impossible? 2018-07-16T09:37:03Z Posterdati: aeth: anyway works on PS4 so it is not only for windows 10 2018-07-16T09:37:33Z aeth: shka: Interfacing CL with Unity or Unreal? It may or may not be impossible, but it's probably a bad idea. 2018-07-16T09:38:20Z aeth: Godot has https://godotengine.org/article/godot-getting-more-languages 2018-07-16T09:38:54Z aeth: But CL would be a better engine language than scripting language imo. 2018-07-16T09:39:46Z aeth: As for Rust: https://www.reddit.com/r/rust/comments/78bowa/hey_this_is_kyren_from_chucklefish_we_make_and/ 2018-07-16T09:40:16Z dkrm joined #lisp 2018-07-16T09:42:14Z shka: anyway, i have problem with swank and tramp mode in emacs 2018-07-16T09:42:20Z aeth: This is definitely more of a #lispgames topic than a #lisp topic 2018-07-16T09:42:40Z shka: i am attempting to compile form using c-c c-c in file opened with tramp mode (ssh( 2018-07-16T09:42:54Z shka: but it won't work because of type error 2018-07-16T09:43:09Z shka: newest swank and slime on both sides 2018-07-16T09:43:12Z shka: it used to work 2018-07-16T09:43:24Z shka: what can be wrong? 2018-07-16T09:44:47Z _death: aeth: skimming it I did not see any indication of the code base size.. anyway, to me Rust is one of the most distasteful languages in use.. so I may be biased ;) 2018-07-16T09:45:04Z acolarh quit (Ping timeout: 260 seconds) 2018-07-16T09:46:41Z lumm joined #lisp 2018-07-16T09:46:46Z fikka joined #lisp 2018-07-16T09:49:13Z AetherWind quit (Quit: Leaving) 2018-07-16T09:51:53Z fikka quit (Ping timeout: 276 seconds) 2018-07-16T09:56:54Z acolarh joined #lisp 2018-07-16T10:00:20Z random-nick joined #lisp 2018-07-16T10:05:26Z eminhi joined #lisp 2018-07-16T10:08:07Z Kundry_Wag joined #lisp 2018-07-16T10:09:39Z m00natic joined #lisp 2018-07-16T10:12:51Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-16T10:12:55Z eminhi: hi, I'm getting a new deprecation warning in asdf 2018-07-16T10:12:58Z eminhi: Deprecated recursive use of (ASDF/OPERATE:OPERATE 'ASDF/LISP-ACTION:TEST-OP 2018-07-16T10:13:01Z eminhi: '("bugg-ba/test")) while visiting (ASDF/LISP-ACTION:TEST-OP "bugg-ba")) 2018-07-16T10:14:22Z eminhi: is recusive use of asdf operations b/w systems deprecated? 2018-07-16T10:20:32Z orivej quit (Ping timeout: 268 seconds) 2018-07-16T10:22:21Z EvW1 quit (Ping timeout: 240 seconds) 2018-07-16T10:24:51Z BitPuffin joined #lisp 2018-07-16T10:25:47Z vlatkoB_ joined #lisp 2018-07-16T10:26:45Z skapata joined #lisp 2018-07-16T10:29:30Z vlatkoB quit (Ping timeout: 265 seconds) 2018-07-16T10:35:12Z figurelisp quit (Ping timeout: 244 seconds) 2018-07-16T10:35:43Z lumm quit (Ping timeout: 244 seconds) 2018-07-16T10:36:05Z nirved quit (Ping timeout: 276 seconds) 2018-07-16T10:36:31Z Cymew quit (Remote host closed the connection) 2018-07-16T10:46:02Z hajovonta joined #lisp 2018-07-16T10:53:06Z igemnace joined #lisp 2018-07-16T10:56:27Z figurelisp joined #lisp 2018-07-16T10:57:42Z fikka joined #lisp 2018-07-16T10:59:10Z Folkol_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-16T10:59:40Z hajovonta quit (Quit: hajovonta) 2018-07-16T10:59:56Z hajovonta joined #lisp 2018-07-16T11:00:17Z hajovonta: hi 2018-07-16T11:01:50Z figurelisp: where did you guys learn dataq structures in lisp? Not the data structures implemented in lisp but to try to implement them.In a functional way 2018-07-16T11:02:19Z fikka quit (Ping timeout: 256 seconds) 2018-07-16T11:03:35Z eminhi: Finally figured out, that the warning i got was due to defining test-system to run tests in test-op, not on load-op. 2018-07-16T11:04:15Z dddddd joined #lisp 2018-07-16T11:07:28Z hajovonta: figurelisp: read lots of books and keep programming in lisp. 2018-07-16T11:07:54Z LdBeth: figurelisp: as long as you not modify it, it is immutable data structure 2018-07-16T11:08:43Z mejja joined #lisp 2018-07-16T11:09:47Z graphene quit (Remote host closed the connection) 2018-07-16T11:10:15Z hajovonta: unfortunately sometimes I had to look up functions like append and such in the beginning 2018-07-16T11:10:22Z hajovonta: to see if they are destructive or not 2018-07-16T11:10:46Z hajovonta: it would help if it were obvious from the naming :) 2018-07-16T11:11:04Z graphene joined #lisp 2018-07-16T11:12:32Z figurelisp: there are books that teach to implement data structures like trees, graphs in imperative programming languages like java,c++ and others adn there is also data structures books for haskell, ML. Are there no books like these for Common lisp? 2018-07-16T11:12:40Z figurelisp: hajovonta: LdBeth 2018-07-16T11:14:27Z froggey quit (Ping timeout: 240 seconds) 2018-07-16T11:16:22Z LdBeth: figurelisp: if you have already read those books i think the only additional thing you have to do is learning CLOS, which gives you the ability to implement complex data structures in CL 2018-07-16T11:16:24Z froggey joined #lisp 2018-07-16T11:20:18Z Kundry_Wag joined #lisp 2018-07-16T11:20:37Z LdBeth: And how to use the inspector 2018-07-16T11:20:56Z LdBeth: (It is a statement) 2018-07-16T11:21:15Z Kundry_Wag_ joined #lisp 2018-07-16T11:25:05Z Kundry_Wag quit (Ping timeout: 265 seconds) 2018-07-16T11:25:14Z beach: figurelisp: An implementation in Common Lisp of some data structure would use exactly the same elements as are used in other languages. Common Lisp has vectors, lists, and standard objects which provide those elements. 2018-07-16T11:26:07Z hajovonta: it's not really harder or easier to implement complex data structures in CL than in other languages 2018-07-16T11:26:12Z hajovonta: the principles are the same. 2018-07-16T11:26:18Z beach: Exactly. 2018-07-16T11:26:24Z hajovonta: but it's admittedly more fun. 2018-07-16T11:27:57Z hajovonta: but, there is a fun book for CL I can recommend, Land of Lisp 2018-07-16T11:28:02Z hajovonta: landoflisp.com 2018-07-16T11:28:43Z beach: figurelisp: Now, what do you mean by "In a functional way"? Do you mean that the data structure is persistent (in the sense that applying an operation to it generates a new instance and leaves the original one intact), or do you mean that you want to implement traditional data structures that can be mutated but you want to use a functional style for the implementation? 2018-07-16T11:28:45Z hajovonta: it shows how to implement data structures for simple CL games. 2018-07-16T11:29:08Z hajovonta: there is even a section for functional programming. 2018-07-16T11:29:14Z random-nick quit (Read error: Connection reset by peer) 2018-07-16T11:30:16Z beach: figurelisp: If it is the former, then you just follow the literature on how such data structures are implemented. If it is the latter, then you are looking in the wrong direction, because Common Lisp is not a particularly "functional" language in that respect. You would rather use standard objects and generic functions in an imperative style. 2018-07-16T11:33:12Z figurelisp: by functional I mean no mutation 2018-07-16T11:33:30Z beach: figurelisp: I understand that part. 2018-07-16T11:33:58Z beach: figurelisp: I am asking whether you are referring to the property of the data structure you want to implement, or to the programming style to do it. 2018-07-16T11:34:39Z figurelisp: programming style i think 2018-07-16T11:35:08Z figurelisp: like the basic dataq structures are implemented in haskell but they are functional 2018-07-16T11:35:09Z beach: figurelisp: You can do that in Common Lisp, but that's not the typical Common Lisp style. 2018-07-16T11:35:13Z Kundry_Wag_ quit (Remote host closed the connection) 2018-07-16T11:35:20Z eminhi quit (Quit: leaving) 2018-07-16T11:35:28Z Kundry_Wag joined #lisp 2018-07-16T11:36:01Z figurelisp: I don't know much about functional programming so i am not certain how they are implemented. I was thinking to learn functional paradigm through CL 2018-07-16T11:36:02Z Kundry_Wag quit (Remote host closed the connection) 2018-07-16T11:36:31Z antoszka: figurelisp: You can, but CL won't really be helping you with that. 2018-07-16T11:36:55Z figurelisp: ok 2018-07-16T11:37:08Z beach: figurelisp: What antoszka says. Common Lisp shines with its object system, its condition system, etc. Not for its support for functional programming. 2018-07-16T11:37:33Z Cymew joined #lisp 2018-07-16T11:37:34Z antoszka: figurelisp: It doesn't force you into functional thinking (like Clojure/Haskell do), nor does it really provide any strictly functional facilities. 2018-07-16T11:37:38Z beach: But you can definitely use a functional style in Common Lisp. It is often done to implement macros for instance. 2018-07-16T11:37:42Z antoszka: Sure. 2018-07-16T11:39:17Z figurelisp: My main objective is to learn CL. Now i am reading CL:gentle introduction but after that i thought the next path would be to learn how to implement basic data strucutes. that's all what i want to achieve right now 2018-07-16T11:39:46Z beach: figurelisp: That's a good idea. But I would scratch the "functional" goal then. 2018-07-16T11:39:53Z figurelisp: ok 2018-07-16T11:40:06Z beach: figurelisp: You would have simpler data structures and a more natural Common Lisp programming style. 2018-07-16T11:40:30Z figurelisp: But i am stil not clear on how to proceed on learning data structure path 2018-07-16T11:40:58Z beach: figurelisp: Perhaps you should start with something simple, and we can show you. 2018-07-16T11:41:19Z beach: figurelisp: Like a stack, for instance. 2018-07-16T11:41:42Z figurelisp: so what you are saying is I should try to implement it on my own and then ask for help and code review here? 2018-07-16T11:41:52Z edgar-rft: figurelisp, there'a ton of builtin data structures you can use, we would need to know more details what you need exactly 2018-07-16T11:42:01Z beach: Or, we can show you, and you can do the next one. 2018-07-16T11:42:12Z beach: figurelisp: It's up to you. 2018-07-16T11:42:18Z figurelisp: ok 2018-07-16T11:42:30Z figurelisp: but how did you learn 2018-07-16T11:42:43Z beach: figurelisp: The stack is particularly simple for the very simple case, but I can show you situations where the simple case is inadequate. 2018-07-16T11:43:14Z beach: figurelisp: (defclass stack () ((%contents :initform '() :accessor contents))) 2018-07-16T11:43:44Z beach: figurelisp: (defgeneric push (item stack)) (defgeneric pop (stack)) (defgeneric emptyp (stack)) 2018-07-16T11:44:35Z beach: figurelisp: (defmethod push (item (stack stack)) (push item (contents stack))) 2018-07-16T11:44:37Z beach: figurelisp: (defmethod emptyp (stack) (null (contents stack))) 2018-07-16T11:44:42Z figurelisp: beach: sorry to interrupt but i will not be abel to understand it right now. I'll complete the introdution book and then i'll learn from you 2018-07-16T11:44:47Z figurelisp: very soory 2018-07-16T11:44:49Z beach: OK. 2018-07-16T11:44:50Z hajovonta: figurelisp: I did Project Euler exercises 2018-07-16T11:45:02Z hajovonta: and learnt through doing. I recommend the same 2018-07-16T11:45:08Z beach: figurelisp: Let us know when you want help. 2018-07-16T11:45:11Z figurelisp: hajovonta: ok 2018-07-16T11:45:17Z figurelisp: thank you beach 2018-07-16T11:45:19Z lumm joined #lisp 2018-07-16T11:45:43Z figurelisp: thank you everyoen 2018-07-16T11:45:57Z hajovonta: beach: oh come on. (defparameter stack nil) (push 1 stack) (push 2 stack) (pop stack):) 2018-07-16T11:46:36Z beach: hajovonta: That won't respect the most elementary restriction on an imperative data structure, namely that it has its own first-class identity. 2018-07-16T11:46:53Z flamebeard quit 2018-07-16T11:46:56Z LdBeth: Now we want a dequeue 2018-07-16T11:47:25Z orivej joined #lisp 2018-07-16T11:47:51Z beach: hajovonta: Try (defparameter stack2 stack1) then (push 234 stack1). For it to be moodular, stack2 must change as well. Otherwise, your implementation is showing in the interface which is unacceptable. 2018-07-16T11:47:58Z cyberlard quit (Ping timeout: 256 seconds) 2018-07-16T11:48:01Z beach: hajovonta: Elementary data structure design. 2018-07-16T11:48:39Z flamebeard joined #lisp 2018-07-16T11:49:04Z beach: hajovonta: The Common Lisp list is not an abstract data type. I call it a "concrete" one. So it can be used to implement an abstract data type, but it can't be used as such by itself. 2018-07-16T11:52:07Z fikka joined #lisp 2018-07-16T11:52:31Z LdBeth: I would prefer an array with a fill pointer 2018-07-16T11:53:11Z beach: LdBeth: Like I hinted, there are problems with each one. 2018-07-16T11:53:50Z beach: LdBeth: The array with a fill pointer has the problem that you can not guarantee, nor even come close to, O(1) complexity for the operations. 2018-07-16T11:54:27Z beach: LdBeth: The list version has the problem that if you want a stack of (say) DNA letters, then storing 2 bits costs you 126 bits overhead. 2018-07-16T11:55:50Z beach: LdBeth: So it is not a simple question of preferring one to the other. It has to do with conforming to specifications. In the case of a stack, I can eliminate both problems with a slightly more complicated implementation. 2018-07-16T11:57:11Z hajovonta: it would be interesting to create a closure-based implementation and see comparisons. 2018-07-16T11:57:49Z rumbler31 joined #lisp 2018-07-16T11:57:58Z fikka quit (Ping timeout: 268 seconds) 2018-07-16T11:58:02Z beach: hajovonta: That would be essentially the same as the one that uses a standard class above, except it would be less flexible. 2018-07-16T11:58:17Z beach: hajovonta: The closure would play the same role as the instance of the standard class. 2018-07-16T11:58:54Z pierpal joined #lisp 2018-07-16T12:05:15Z LdBeth: Closure is just one kind of data structure 2018-07-16T12:06:56Z Kundry_Wag joined #lisp 2018-07-16T12:07:20Z pierpal quit (Quit: Poof) 2018-07-16T12:07:37Z Kundry_Wag_ joined #lisp 2018-07-16T12:07:39Z pierpal joined #lisp 2018-07-16T12:09:49Z Kundry_Wag_ quit (Remote host closed the connection) 2018-07-16T12:11:27Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-16T12:11:47Z rumbler31 quit (Remote host closed the connection) 2018-07-16T12:11:47Z shka: i use flexichains as queues 2018-07-16T12:12:24Z shka: if that's even relevant here 2018-07-16T12:12:29Z shka: ^_^ 2018-07-16T12:12:51Z Folkol quit (Ping timeout: 244 seconds) 2018-07-16T12:15:04Z fikka joined #lisp 2018-07-16T12:15:52Z cyberlard joined #lisp 2018-07-16T12:17:41Z Kundry_Wag joined #lisp 2018-07-16T12:18:15Z Kundry_Wag_ joined #lisp 2018-07-16T12:18:16Z Kundry_Wag_ quit (Read error: Connection reset by peer) 2018-07-16T12:18:46Z Kundry_Wag quit (Read error: Connection reset by peer) 2018-07-16T12:18:52Z Kundry_Wag_ joined #lisp 2018-07-16T12:20:09Z LdBeth: beach: why array with fill pointer can’t guarantee O(1) complexity, except you mean when the stack is full and needs to be resized 2018-07-16T12:22:51Z Kundry_Wag_ quit (Ping timeout: 240 seconds) 2018-07-16T12:23:39Z Kundry_Wag joined #lisp 2018-07-16T12:24:22Z Murii__ quit (Ping timeout: 256 seconds) 2018-07-16T12:24:48Z hajovonta: beach: I would think, after reading let over lambda, that closures are more flexible than using objects. 2018-07-16T12:24:53Z hajovonta: on a certain level. 2018-07-16T12:25:14Z hajovonta: but for a particular task, it may be impractical to use them. 2018-07-16T12:26:43Z LdBeth no lambda :( 2018-07-16T12:26:58Z random-nick joined #lisp 2018-07-16T12:27:33Z LdBeth: Yes lambda is proven capable for anything, but don’t take it as everything 2018-07-16T12:28:05Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-16T12:28:13Z _death: objects are poor man's closures, and vice versa.. 2018-07-16T12:29:22Z acolarh quit (Ping timeout: 265 seconds) 2018-07-16T12:33:34Z Smokitch quit 2018-07-16T12:36:51Z nowhere_man joined #lisp 2018-07-16T12:38:19Z pagnol quit (Ping timeout: 260 seconds) 2018-07-16T12:41:16Z nowhereman joined #lisp 2018-07-16T12:41:27Z nowhere_man quit (Ping timeout: 245 seconds) 2018-07-16T12:41:40Z nowhereman is now known as Guest39745 2018-07-16T12:42:18Z milanj_ quit (Quit: This computer has gone to sleep) 2018-07-16T12:42:47Z acolarh joined #lisp 2018-07-16T12:49:59Z pierpal quit (Quit: Poof) 2018-07-16T12:50:16Z pierpal joined #lisp 2018-07-16T12:50:34Z DGASAU` is now known as DGASAU 2018-07-16T12:51:50Z Kundry_Wag joined #lisp 2018-07-16T12:57:17Z Bike joined #lisp 2018-07-16T12:57:51Z schweers` quit (Ping timeout: 240 seconds) 2018-07-16T12:59:47Z graphene quit (Read error: Connection reset by peer) 2018-07-16T13:01:07Z graphene joined #lisp 2018-07-16T13:02:41Z daniel-s joined #lisp 2018-07-16T13:03:46Z schjetne joined #lisp 2018-07-16T13:08:12Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-16T13:14:35Z mindCrime joined #lisp 2018-07-16T13:14:41Z pjb joined #lisp 2018-07-16T13:14:55Z red-dot joined #lisp 2018-07-16T13:16:06Z pfdietz joined #lisp 2018-07-16T13:16:24Z pagnol joined #lisp 2018-07-16T13:18:14Z Kundry_W_ joined #lisp 2018-07-16T13:18:46Z pfdietz: Vectors with fill pointers can implement stacks in O(1) amortized time per operation. 2018-07-16T13:20:02Z pfdietz: This is fine unless you have real time constraints, or if you're trying to make the stack "fully persistent" (where updates can be done on past versions in a branching model of time.) 2018-07-16T13:21:26Z beach: pfdietz: Correct. I was referring to the worst-case complexity of one single operation. 2018-07-16T13:21:55Z beach: hajovonta: You would be thinking wrong. 2018-07-16T13:22:22Z pfdietz: It's possible to get to O(1) worst case time by a more clever approach, where the copying to the new larger vector is spread out over O(n) updates. This still doesn't help with full persistence though. 2018-07-16T13:22:29Z beach: hajovonta: You can't stick an auxiliary method that specialized according to the particular type of the closure. 2018-07-16T13:22:32Z beach: ... for instance. 2018-07-16T13:22:36Z Kundry_W_ quit (Ping timeout: 244 seconds) 2018-07-16T13:23:06Z pfdietz: Another lispy example of this is implementation of a queue with stacks. Using two stacks you can do queue ops in O(1) amortized time, but you can also do it in O(1) worst case time with some effort. 2018-07-16T13:23:13Z mindCrime quit (Ping timeout: 248 seconds) 2018-07-16T13:23:18Z beach: pfdietz: The better solution that solves both problems is to use a list of constant-size vectors. 2018-07-16T13:24:05Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-16T13:25:32Z kuwze quit (Quit: Page closed) 2018-07-16T13:25:33Z beach: pfdietz: Interestingly, when I came up with that solution, I checked it with the algorithms and data structures expert in the lab (I do not consider myself an expert, though I may have to rethink that), and he had never heard of it, nor had he ever contemplated the problems with the list or the vector solution (space vs real-time). 2018-07-16T13:25:39Z patlv joined #lisp 2018-07-16T13:25:43Z flip214: ping easye 2018-07-16T13:26:25Z pjb quit (Ping timeout: 248 seconds) 2018-07-16T13:27:07Z shka: that does not sound expertish to me 2018-07-16T13:27:19Z pjb joined #lisp 2018-07-16T13:27:21Z beach: I agree. That's what surprised me. 2018-07-16T13:27:50Z shka: btw, how is your data structure book going? 2018-07-16T13:27:54Z pfdietz: I don't understand. 2018-07-16T13:28:07Z pjb is now known as Guest1775 2018-07-16T13:28:07Z beach: shka: No progress for some time. Still nearly finished. 2018-07-16T13:28:13Z shka: oh, ok 2018-07-16T13:28:20Z beach: pfdietz: Which part? The problems or the solution? 2018-07-16T13:28:22Z Guest1775 is now known as pjb` 2018-07-16T13:28:41Z pjb` is now known as pjb 2018-07-16T13:29:08Z nika_ joined #lisp 2018-07-16T13:29:14Z pfdietz: What you said is not making sense, so I'm not sure which. 2018-07-16T13:29:26Z Kundry_Wag joined #lisp 2018-07-16T13:29:28Z shka: it makes perfect sense actually 2018-07-16T13:29:44Z pfdietz: Not making sense TO ME. :) 2018-07-16T13:29:47Z shka: ok 2018-07-16T13:29:50Z shka: can i explain? 2018-07-16T13:29:53Z pfdietz: Yes 2018-07-16T13:29:59Z beach: pfdietz: Using a list to implement a stack has the problem that each element takes 2 words. So if you want a stack of bits or of DNA letters, you wast a lot of space. 2018-07-16T13:30:04Z beach: pfdietz: Agreed? 2018-07-16T13:30:08Z pfdietz: Yes 2018-07-16T13:30:28Z pfdietz: Ah, so the point was to save space, thus the vectors? Ok. 2018-07-16T13:30:36Z warweasle joined #lisp 2018-07-16T13:30:47Z beach: pfdietz: If you use a vector instead, you are sacrificing real-time behavior, so you can't propose it to gamers for instance. Occasionally an operation may take linear time. 2018-07-16T13:31:28Z beach: If you use a list of constant-size vectors, you can have vectors of bits, and provided the vector is big enough, you can make the 2 words waste arbitrarily small. 2018-07-16T13:31:52Z Zhivago: Gamers don't really care about real-time -- they just care about latency spikes. In practice they just make things excessively fast enough that the spikes they do get are acceptable. 2018-07-16T13:31:56Z pfdietz: There's a theme in data structure design where you layer two different kinds of data structures, using a different one for small chunks. This looks like an example of that. 2018-07-16T13:32:10Z beach: pfdietz: Furthermore, you only ever need to allocate a constant-size vector and you never need to move more than that many objects, so you have constant time operations. 2018-07-16T13:32:47Z beach: Zhivago: Fine, you got me. I should have used a different example. 2018-07-16T13:33:10Z pfdietz: And the overhead of the links can be spread over the length of the vectors, and so can be made as small as desired. 2018-07-16T13:33:16Z Folkol joined #lisp 2018-07-16T13:33:35Z beach: Yes, that's what I meant by "you can make the 2 words waste arbitrarily small". 2018-07-16T13:33:42Z pfdietz: I understand now. 2018-07-16T13:33:53Z beach: Great! I haven't totally lost my ability to explain. 2018-07-16T13:33:55Z beach: Phew! 2018-07-16T13:33:56Z Zhivago: I think you'll find that gamers are happy with the terrible things that STL does to extensible vectors in most cases. :) 2018-07-16T13:34:03Z TMA: Zhivago: constrained latency is one way to define a real-time system 2018-07-16T13:34:13Z Zhivago: They're just not so happy about unbounded latency spikes from things like GC. 2018-07-16T13:34:30Z pfdietz: Where I was not clear was that you were reducing the space overhead, minimizing the constant. 2018-07-16T13:34:54Z beach: Zhivago: I actually don't care much about that particular use case. I chose the wrong example. Again, I'm sorry. 2018-07-16T13:34:54Z lumm quit (Ping timeout: 260 seconds) 2018-07-16T13:34:59Z shka: there are areas in modern game engines that should be real time 2018-07-16T13:35:08Z beach: pfdietz: I see. 2018-07-16T13:35:14Z milanj_ joined #lisp 2018-07-16T13:36:22Z shka: anyway, it you can have hard real time behavior as a component in system that is supposed to have soft real time characteristics without drawback, you potentially can save yourself headache when optimizing 2018-07-16T13:37:14Z shka: and yes, STL vectors realocations can supermurder your performance 2018-07-16T13:37:33Z shka: especially if it is combined with memory fragmentation 2018-07-16T13:37:38Z shka: and usually it is 2018-07-16T13:37:52Z shka: ... and this is how is stopped worry and loved the GC 2018-07-16T13:38:34Z eli_oat1 joined #lisp 2018-07-16T13:39:02Z shka: manual memory managment is just so time consuming and prone to errors 2018-07-16T13:39:29Z shka: and you will need to put so much extra effort just to get even with GC 2018-07-16T13:41:06Z eli_oat1 quit (Client Quit) 2018-07-16T13:41:11Z schweers` joined #lisp 2018-07-16T13:44:21Z pjb: Sometimes, stacks are not stacks, but trees… 2018-07-16T13:45:08Z shka: sometimes vectors are not vectors, but trees... 2018-07-16T13:45:33Z pjb: it's easier to make trees of cons cells :-) 2018-07-16T13:45:54Z shka: debatable 2018-07-16T13:46:16Z EvW joined #lisp 2018-07-16T13:47:45Z beach: pjb: Clearly, for the side-effect-free version of the stack, the vector solution is totally out. The list of constant-size vectors might still be acceptable. 2018-07-16T13:48:13Z beach: pjb: In fact, now that I think of it, it is entirely feasible. 2018-07-16T13:49:02Z beach: pjb: If you have very small objects, like bits or DNA letters, you can copy the entire thing very efficiently, so you are no worse off than with a pure list. 2018-07-16T13:49:21Z beach: pjb: And if you have large objects, you converge toward the pure list solution anyway. 2018-07-16T13:49:33Z beach: pjb: Glad you pointed that out. :) 2018-07-16T13:51:02Z pjb: This is why we have programmers: there are always special circumstances that require specific data structures and algorithms. 2018-07-16T13:51:25Z beach: Indeed. 2018-07-16T13:52:16Z JuanDaugherty joined #lisp 2018-07-16T13:52:56Z flamebeard quit 2018-07-16T13:57:22Z EvW quit (Ping timeout: 260 seconds) 2018-07-16T13:57:47Z LiamH joined #lisp 2018-07-16T13:59:36Z sjl_ joined #lisp 2018-07-16T14:03:12Z Kundry_Wag_ joined #lisp 2018-07-16T14:05:22Z vlad_ joined #lisp 2018-07-16T14:07:31Z scymtym_ joined #lisp 2018-07-16T14:08:02Z saki quit (Quit: saki) 2018-07-16T14:08:07Z moei joined #lisp 2018-07-16T14:09:25Z scymtym quit (Ping timeout: 265 seconds) 2018-07-16T14:09:59Z shrdlu68 joined #lisp 2018-07-16T14:11:04Z igemnace quit (Ping timeout: 260 seconds) 2018-07-16T14:12:16Z rumbler31 joined #lisp 2018-07-16T14:13:57Z pjb quit (Ping timeout: 240 seconds) 2018-07-16T14:14:57Z shrdlu68 quit (Ping timeout: 248 seconds) 2018-07-16T14:15:56Z shrdlu68 joined #lisp 2018-07-16T14:16:33Z rumbler31 quit (Ping timeout: 248 seconds) 2018-07-16T14:16:49Z hajovonta quit (Quit: hajovonta) 2018-07-16T14:18:15Z DingoSaar joined #lisp 2018-07-16T14:18:25Z mindCrime joined #lisp 2018-07-16T14:20:10Z patlv quit (Ping timeout: 264 seconds) 2018-07-16T14:21:27Z milanj_ quit (Quit: This computer has gone to sleep) 2018-07-16T14:21:30Z pagnol quit (Ping timeout: 265 seconds) 2018-07-16T14:21:39Z shrdlu68 quit (Ping timeout: 268 seconds) 2018-07-16T14:22:08Z shrdlu68 joined #lisp 2018-07-16T14:22:38Z patlv joined #lisp 2018-07-16T14:23:58Z igemnace joined #lisp 2018-07-16T14:24:30Z saki joined #lisp 2018-07-16T14:26:23Z puchacz joined #lisp 2018-07-16T14:26:45Z hhdave joined #lisp 2018-07-16T14:27:42Z shrdlu68 quit (Ping timeout: 244 seconds) 2018-07-16T14:28:25Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-16T14:28:57Z pagnol joined #lisp 2018-07-16T14:32:08Z patlv quit (Ping timeout: 268 seconds) 2018-07-16T14:33:18Z shrdlu68 joined #lisp 2018-07-16T14:33:24Z shrdlu68 quit (Client Quit) 2018-07-16T14:33:28Z light2yellow joined #lisp 2018-07-16T14:34:02Z flip214: Xach: "The libraries were last updated on April 30, 2018." << yesterday, IIRC 2018-07-16T14:34:35Z flip214: would it be too much to ask that "Beta" gets removed from the documentation pages, eg. https://www.quicklisp.org/beta/releases.html (URL and text)? 2018-07-16T14:35:24Z red-dot joined #lisp 2018-07-16T14:35:41Z brettgilio joined #lisp 2018-07-16T14:35:42Z Kundry_Wag_ quit (Ping timeout: 256 seconds) 2018-07-16T14:35:45Z lumm joined #lisp 2018-07-16T14:37:09Z Libre joined #lisp 2018-07-16T14:38:52Z lumm quit (Read error: Connection reset by peer) 2018-07-16T14:43:40Z ofi quit (Remote host closed the connection) 2018-07-16T14:48:01Z JuanDaugherty: so the problem I was having with mcclim demo was due to trying to run under vnc 2018-07-16T14:48:19Z beach: Oh, good not know. 2018-07-16T14:48:36Z JuanDaugherty: couldn't find the one I tried but another similar worked fine with regular X 2018-07-16T14:48:47Z JuanDaugherty: under xmonad actually 2018-07-16T14:55:47Z patlv joined #lisp 2018-07-16T14:55:54Z FreeBirdLjj joined #lisp 2018-07-16T14:55:58Z brettgilio quit (Remote host closed the connection) 2018-07-16T14:56:35Z heisig quit (Quit: Leaving) 2018-07-16T14:56:45Z Bike: somewhat to my surprise, you can pass any input stream to LOAD, as far as i can tell. but if you do, and the stream has no associated file, i'm not sure what *load-truename* and *load-pathname* ought to be bound to. anyone know? 2018-07-16T14:56:57Z DingoSaar quit (Ping timeout: 240 seconds) 2018-07-16T14:58:45Z JuanDaugherty: maybe /dev/null ? 2018-07-16T14:59:42Z Bike: on sbcl it's still nil, looks like 2018-07-16T15:00:23Z JuanDaugherty: i thought you meant you needed to bind to some file 2018-07-16T15:00:28Z shka: this sounds like neat feature 2018-07-16T15:01:24Z milanj_ joined #lisp 2018-07-16T15:01:43Z Bike: I mean, for example, in (with-input-from-string (s ("print *load-pathname*)") (load s)), what is printed. 2018-07-16T15:01:48Z JuanDaugherty: standard input would be a choice to if you wanted to accept more 2018-07-16T15:01:52Z Bike: "(print i mean. 2018-07-16T15:01:59Z JuanDaugherty: *a choice too 2018-07-16T15:02:01Z Kaisyu quit (Quit: Connection closed for inactivity) 2018-07-16T15:02:35Z Bike: that's not how load-pathname works. 2018-07-16T15:02:50Z beach: Bike: Good question. I don't see the answer to it anywhere. Something for WSCL to specify, it seems. 2018-07-16T15:02:54Z JuanDaugherty: oh yeah forgot context 2018-07-16T15:05:19Z Xach: flip214: Thanks for the notice. I have a few updates to do for the web page! 2018-07-16T15:05:45Z kuwze joined #lisp 2018-07-16T15:07:56Z Libre quit (Quit: Mutter: www.mutterirc.com) 2018-07-16T15:15:10Z Inline joined #lisp 2018-07-16T15:16:31Z blackwolf joined #lisp 2018-07-16T15:18:16Z figurelisp: do you people have job in CL? 2018-07-16T15:18:42Z figurelisp: if yes in what field? Is it tough to find jobs in CL? 2018-07-16T15:19:29Z mflem joined #lisp 2018-07-16T15:19:36Z shka: it is tough, majority of people here don't have lisp jobs 2018-07-16T15:20:12Z figurelisp: so they do personal projects in lisp to get better in lisp? 2018-07-16T15:20:49Z figurelisp: beach must have a job in lisp 2018-07-16T15:20:53Z figurelisp: i guess 2018-07-16T15:21:04Z Posterdati quit (Ping timeout: 260 seconds) 2018-07-16T15:21:08Z daniel-s quit (Remote host closed the connection) 2018-07-16T15:22:42Z LdBeth: Unfortunately I don’t think it’s easy to get a CL job 2018-07-16T15:23:07Z LdBeth: I mean not 2018-07-16T15:23:29Z figurelisp: what 2018-07-16T15:23:30Z subroot joined #lisp 2018-07-16T15:23:40Z beach: figurelisp: I am a researcher and I have chosen Common Lisp both as my research project and as a vehicle to accomplish it. 2018-07-16T15:23:55Z figurelisp: amazing 2018-07-16T15:24:16Z vlad_ is now known as Murii 2018-07-16T15:24:30Z beach: It's because where I work, we don't have the pressure they have in some countries to get grants, etc. So I can choose what I do. 2018-07-16T15:27:45Z JuanDaugherty quit (Quit: Exeunt) 2018-07-16T15:31:18Z figurelisp quit (Quit: Lost terminal) 2018-07-16T15:34:44Z Posterdati joined #lisp 2018-07-16T15:35:02Z pierre__ joined #lisp 2018-07-16T15:35:54Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-16T15:36:01Z shka: "They said i can do anything, so i made common lisp" 2018-07-16T15:36:23Z pierpal quit (Quit: Poof) 2018-07-16T15:36:40Z pierpal joined #lisp 2018-07-16T15:37:11Z Kundry_Wag_ joined #lisp 2018-07-16T15:37:58Z pagnol quit (Ping timeout: 244 seconds) 2018-07-16T15:39:38Z red-dot joined #lisp 2018-07-16T15:39:52Z LdBeth: Basically I learned Lisp because I’m not required to learn any particular PL and out of mania on retro computing 2018-07-16T15:39:53Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-16T15:42:16Z shka: LdBeth: and then it turns out that CL is actually moderatly modern 2018-07-16T15:42:23Z shka: annoying, i know :P 2018-07-16T15:43:30Z xuxuru joined #lisp 2018-07-16T15:44:47Z xuxuru quit (Client Quit) 2018-07-16T15:45:23Z LdBeth: Actually CLtL2 is written before I was born. So I consider it as retro. Plz forgive me if that annoys you 2018-07-16T15:45:27Z varjag joined #lisp 2018-07-16T15:45:58Z shka: yeah, but design is not outdated 2018-07-16T15:46:22Z xuxuru joined #lisp 2018-07-16T15:46:40Z shka: partly because of general computer stagnation 2018-07-16T15:47:31Z Bike: lisp doesn't even let you do anything fun like "char* main = " 2018-07-16T15:48:22Z MinnowTaur joined #lisp 2018-07-16T15:49:04Z patlv quit (Ping timeout: 260 seconds) 2018-07-16T15:49:09Z shka: unfortunatly it is not retard oriented language 2018-07-16T15:49:15Z shka: :( 2018-07-16T15:49:39Z Bike: don't use medical terms as insults, please 2018-07-16T15:50:26Z shka: is it considered contemprorary medical term anyway? 2018-07-16T15:50:42Z Bike: as an adjective, usually. 2018-07-16T15:51:37Z shka: ok, then: stupidity oriented programming 2018-07-16T15:51:49Z LdBeth: Just because it’s strong typed. In untyped lambda calculus even Y combinator can be applied to an int 2018-07-16T15:52:05Z Bike: you mean a church numeral? 2018-07-16T15:54:11Z LdBeth: Exactly 2018-07-16T15:56:59Z pierpal quit (Read error: Connection reset by peer) 2018-07-16T15:57:18Z pierpal joined #lisp 2018-07-16T16:01:27Z k4rtik joined #lisp 2018-07-16T16:01:27Z k4rtik quit (Changing host) 2018-07-16T16:01:27Z k4rtik joined #lisp 2018-07-16T16:03:29Z Kundry_Wag quit (Remote host closed the connection) 2018-07-16T16:07:04Z Kundry_Wag joined #lisp 2018-07-16T16:10:44Z charh quit (Quit: bye.) 2018-07-16T16:10:44Z Kundry_Wag_ quit (Ping timeout: 265 seconds) 2018-07-16T16:13:39Z pjb joined #lisp 2018-07-16T16:16:01Z xuxuru quit (Quit: xuxuru) 2018-07-16T16:16:21Z xuxuru joined #lisp 2018-07-16T16:19:04Z FreeBirdLjj joined #lisp 2018-07-16T16:24:20Z chiyosaki joined #lisp 2018-07-16T16:27:21Z saki quit (Ping timeout: 264 seconds) 2018-07-16T16:29:37Z milanj_ quit (Read error: Connection reset by peer) 2018-07-16T16:29:50Z Folkol quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-16T16:30:00Z milanj_ joined #lisp 2018-07-16T16:30:21Z _cosmonaut_ quit (Ping timeout: 264 seconds) 2018-07-16T16:31:31Z xuxuru quit (Quit: xuxuru) 2018-07-16T16:32:04Z milanj__ joined #lisp 2018-07-16T16:32:05Z milanj_ quit (Read error: Connection reset by peer) 2018-07-16T16:35:52Z wheelsucker joined #lisp 2018-07-16T16:40:36Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-16T16:41:57Z lnostdal quit (Ping timeout: 240 seconds) 2018-07-16T16:42:15Z hhdave quit (Ping timeout: 268 seconds) 2018-07-16T16:43:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-16T16:43:35Z Murii quit (Ping timeout: 240 seconds) 2018-07-16T16:45:54Z kaun joined #lisp 2018-07-16T16:47:58Z kaun quit (Client Quit) 2018-07-16T16:49:19Z Arcaelyx quit (Quit: Textual IRC Client: www.textualapp.com) 2018-07-16T16:53:15Z schweers` quit (Remote host closed the connection) 2018-07-16T16:53:21Z fikka joined #lisp 2018-07-16T16:55:28Z xaotuk joined #lisp 2018-07-16T16:57:04Z jasom: beach: where does your funding come from, if not grants? 2018-07-16T16:57:37Z fikka quit (Ping timeout: 248 seconds) 2018-07-16T17:05:23Z edgar-rft: from the heavenly gods of Lisp I assume :-) 2018-07-16T17:05:47Z MoziM quit (Quit: WeeChat 2.1) 2018-07-16T17:06:26Z edgar-rft: The good thing is that today you don't even need money to work with Lisp. 2018-07-16T17:07:11Z flip214: Xach: you're welcome! what about the "Beta"? 2018-07-16T17:09:16Z Folkol joined #lisp 2018-07-16T17:10:39Z brendyn quit (Ping timeout: 256 seconds) 2018-07-16T17:13:15Z igemnace quit (Remote host closed the connection) 2018-07-16T17:14:07Z ikki joined #lisp 2018-07-16T17:22:33Z FreeBirdLjj quit (Ping timeout: 256 seconds) 2018-07-16T17:22:59Z igemnace joined #lisp 2018-07-16T17:26:27Z jfb4` quit (Ping timeout: 240 seconds) 2018-07-16T17:26:49Z patlv joined #lisp 2018-07-16T17:27:59Z nika_ quit (Quit: Leaving...) 2018-07-16T17:28:29Z jfb4`` joined #lisp 2018-07-16T17:30:58Z jfb4`` quit (Remote host closed the connection) 2018-07-16T17:31:24Z red-dot joined #lisp 2018-07-16T17:31:39Z jfb4`` joined #lisp 2018-07-16T17:32:39Z Xach: flip214: That is not going to change for a while yet 2018-07-16T17:32:51Z k4rtik quit (Ping timeout: 240 seconds) 2018-07-16T17:33:07Z igemnace quit (Remote host closed the connection) 2018-07-16T17:36:38Z Folkol_ joined #lisp 2018-07-16T17:37:37Z scymtym__ joined #lisp 2018-07-16T17:37:44Z scymtym_ quit (Ping timeout: 256 seconds) 2018-07-16T17:39:16Z graphene quit (Remote host closed the connection) 2018-07-16T17:39:42Z kuwze quit (Ping timeout: 252 seconds) 2018-07-16T17:39:47Z fikka joined #lisp 2018-07-16T17:39:54Z jfb4``` joined #lisp 2018-07-16T17:40:05Z patlv quit (Ping timeout: 240 seconds) 2018-07-16T17:40:07Z flip214: hmmm, I'd hoped that sending money would fix that 2018-07-16T17:40:27Z flip214: https://github.com/pcostanza/closer-mop says "This page is taking way too long to load." 2018-07-16T17:40:33Z graphene joined #lisp 2018-07-16T17:40:48Z beach: jasom: It is called "salary". 2018-07-16T17:40:56Z jfb4`` quit (Ping timeout: 244 seconds) 2018-07-16T17:41:51Z flip214: oh, github is "down" (for some values of "down") 2018-07-16T17:41:58Z lnostdal joined #lisp 2018-07-16T17:44:13Z jfb4```` joined #lisp 2018-07-16T17:44:39Z fikka quit (Ping timeout: 256 seconds) 2018-07-16T17:45:40Z jfb4``` quit (Ping timeout: 256 seconds) 2018-07-16T17:49:19Z k4rtik joined #lisp 2018-07-16T17:49:25Z jfb4````` joined #lisp 2018-07-16T17:50:27Z jfb4```` quit (Ping timeout: 240 seconds) 2018-07-16T17:54:21Z jfb4````` quit (Ping timeout: 240 seconds) 2018-07-16T17:55:18Z pjb quit (Ping timeout: 256 seconds) 2018-07-16T17:56:31Z kerrhau joined #lisp 2018-07-16T17:56:32Z kerrhau quit (Changing host) 2018-07-16T17:56:32Z kerrhau joined #lisp 2018-07-16T17:57:19Z milanj__ quit (Quit: This computer has gone to sleep) 2018-07-16T17:57:57Z Xach: flip214: Unfortunately not 2018-07-16T18:00:12Z patlv joined #lisp 2018-07-16T18:03:46Z klltkr joined #lisp 2018-07-16T18:04:55Z pjb joined #lisp 2018-07-16T18:05:18Z pjb is now known as Guest67110 2018-07-16T18:08:13Z Kundry_Wag_ joined #lisp 2018-07-16T18:09:54Z Guest67110 quit (Ping timeout: 256 seconds) 2018-07-16T18:13:34Z patlv quit (Ping timeout: 264 seconds) 2018-07-16T18:14:04Z brettgilio joined #lisp 2018-07-16T18:19:01Z Guest67110 joined #lisp 2018-07-16T18:19:09Z shka1 joined #lisp 2018-07-16T18:20:16Z kajo quit (Ping timeout: 265 seconds) 2018-07-16T18:22:05Z kajo joined #lisp 2018-07-16T18:23:50Z lumm joined #lisp 2018-07-16T18:23:51Z Guest67110 quit (Ping timeout: 240 seconds) 2018-07-16T18:27:39Z sauvin quit (Remote host closed the connection) 2018-07-16T18:27:39Z gravicappa joined #lisp 2018-07-16T18:28:16Z wigust- joined #lisp 2018-07-16T18:29:36Z varjag quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2018-07-16T18:30:57Z lumm quit (Ping timeout: 248 seconds) 2018-07-16T18:30:57Z karlosz joined #lisp 2018-07-16T18:31:34Z wigust quit (Ping timeout: 244 seconds) 2018-07-16T18:31:54Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-16T18:32:12Z makomo joined #lisp 2018-07-16T18:35:19Z Smokitch joined #lisp 2018-07-16T18:37:16Z Kundry_Wag quit (Remote host closed the connection) 2018-07-16T18:38:15Z Kundry_Wag joined #lisp 2018-07-16T18:39:12Z Guest67110 joined #lisp 2018-07-16T18:40:02Z random-nick quit (Ping timeout: 268 seconds) 2018-07-16T18:40:17Z FreeBirdLjj joined #lisp 2018-07-16T18:40:34Z Kundry_Wag_ quit (Ping timeout: 260 seconds) 2018-07-16T18:41:26Z red-dot joined #lisp 2018-07-16T18:43:57Z Guest67110 quit (Ping timeout: 245 seconds) 2018-07-16T18:45:27Z orivej quit (Ping timeout: 240 seconds) 2018-07-16T18:51:47Z pfdietz2 joined #lisp 2018-07-16T18:53:35Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2018-07-16T18:54:05Z Guest67110 joined #lisp 2018-07-16T18:58:11Z Murii joined #lisp 2018-07-16T18:58:18Z pierpal quit (Quit: Poof) 2018-07-16T18:58:36Z pierpal joined #lisp 2018-07-16T19:00:25Z random-nick joined #lisp 2018-07-16T19:00:42Z varjag joined #lisp 2018-07-16T19:01:53Z Guest67110 quit (Remote host closed the connection) 2018-07-16T19:03:24Z itruslove quit (Remote host closed the connection) 2018-07-16T19:03:24Z Guest76646 quit (Remote host closed the connection) 2018-07-16T19:03:26Z milanj__ joined #lisp 2018-07-16T19:06:34Z pierpal quit (Quit: Poof) 2018-07-16T19:06:51Z pierpal joined #lisp 2018-07-16T19:08:32Z Guest67110 joined #lisp 2018-07-16T19:09:03Z karlosz quit (Quit: karlosz) 2018-07-16T19:09:07Z fikka joined #lisp 2018-07-16T19:09:57Z gravicappa quit (Remote host closed the connection) 2018-07-16T19:11:09Z zfree joined #lisp 2018-07-16T19:13:23Z Guest67110 quit (Remote host closed the connection) 2018-07-16T19:13:49Z fikka quit (Ping timeout: 260 seconds) 2018-07-16T19:14:25Z Folkol_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-16T19:14:47Z jkordani joined #lisp 2018-07-16T19:17:15Z pagnol joined #lisp 2018-07-16T19:17:42Z Guest67110 joined #lisp 2018-07-16T19:23:21Z k4rtik quit (Ping timeout: 240 seconds) 2018-07-16T19:25:21Z Guest67110 quit (Ping timeout: 240 seconds) 2018-07-16T19:27:24Z DingoSaar joined #lisp 2018-07-16T19:28:36Z warweasle quit (Quit: rcirc on GNU Emacs 24.4.1) 2018-07-16T19:30:18Z Guest67110 joined #lisp 2018-07-16T19:30:51Z eli_oat1 joined #lisp 2018-07-16T19:33:03Z DingoSaar quit (Ping timeout: 244 seconds) 2018-07-16T19:35:11Z MoziM joined #lisp 2018-07-16T19:38:51Z Guest67110 quit (Ping timeout: 240 seconds) 2018-07-16T19:41:57Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-16T19:41:59Z papachan joined #lisp 2018-07-16T19:42:53Z pagnol quit (Remote host closed the connection) 2018-07-16T19:44:29Z eli_oat1 quit (Quit: Leaving.) 2018-07-16T19:44:36Z Guest67110 joined #lisp 2018-07-16T19:49:30Z Guest67110 quit (Remote host closed the connection) 2018-07-16T19:50:42Z pjb joined #lisp 2018-07-16T19:55:59Z wigust- quit (Quit: ZNC 1.7.0 - https://znc.in) 2018-07-16T19:58:27Z MoziM quit (Quit: WeeChat 2.1) 2018-07-16T19:58:42Z vlatkoB_ quit (Remote host closed the connection) 2018-07-16T19:59:12Z fikka joined #lisp 2018-07-16T19:59:32Z Kundry_Wag quit (Remote host closed the connection) 2018-07-16T20:00:46Z Kundry_Wag joined #lisp 2018-07-16T20:00:46Z Kundry_Wag quit (Remote host closed the connection) 2018-07-16T20:01:02Z Kundry_Wag joined #lisp 2018-07-16T20:01:44Z karlosz joined #lisp 2018-07-16T20:04:03Z FreeBirdLjj joined #lisp 2018-07-16T20:04:24Z DingoSaar joined #lisp 2018-07-16T20:04:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-16T20:06:29Z Kundry_Wag quit (Remote host closed the connection) 2018-07-16T20:08:11Z FreeBirdLjj quit (Ping timeout: 244 seconds) 2018-07-16T20:09:06Z Murii quit (Remote host closed the connection) 2018-07-16T20:11:52Z Kundry_Wag joined #lisp 2018-07-16T20:13:04Z sendai_ joined #lisp 2018-07-16T20:15:25Z shka1 quit (Ping timeout: 244 seconds) 2018-07-16T20:15:26Z orivej joined #lisp 2018-07-16T20:16:49Z azimut quit (Ping timeout: 260 seconds) 2018-07-16T20:22:10Z HighMemoryDaemon joined #lisp 2018-07-16T20:22:49Z patlv joined #lisp 2018-07-16T20:23:00Z HighMemoryDaemon: Can Lisp be compiled to machine code that can be ran on computers without [insert common lisp implementation] installed? 2018-07-16T20:24:08Z brettgilio: HighMemoryDaemon: Yes, of course there are lisps that compile to native. 2018-07-16T20:24:20Z brettgilio: That is one of the strengths of lisp. 2018-07-16T20:24:24Z eli_oat1 joined #lisp 2018-07-16T20:24:34Z brettgilio: The fact that most of them interface with C to render complete native runtimes. 2018-07-16T20:24:36Z random-nick: HighMemoryDaemon: does that disqualify implementations that bundle themselves with your executable? 2018-07-16T20:24:37Z Bike: you generally need some kind of support library, though. 2018-07-16T20:24:42Z trittweiler: Note: he's asking to run the binary without a Lisp runtime 2018-07-16T20:25:09Z random-nick: yeah, you'll always need at least a part of implementation 2018-07-16T20:25:10Z HighMemoryDaemon: Bike: What would the support library do? 2018-07-16T20:25:29Z Bike: provide definitions of standard functions. like libc. 2018-07-16T20:25:32Z random-nick: even if you somehow don't use any standard functions and macros you still have the garbage collector 2018-07-16T20:25:32Z Bike: beefier though. 2018-07-16T20:26:02Z trittweiler: HighMemoryDaemon, ECL can get you binaries that simply depend on a libecl.so dynlib. 2018-07-16T20:27:11Z sjl_: depends on what you mean by "installed". If you s-l-a-d on sbcl, it can produce a single binary that doesn't need anything else on the target machine to run. 2018-07-16T20:27:25Z random-nick: HighMemoryDaemon: SBCL can save a full image of the running system as an executable 2018-07-16T20:27:46Z sjl_: That binary will happen to include SBCL itself, so whether you consider that to be "installing" SBCL on the target machine depends on your definition of installing, I guess. 2018-07-16T20:27:55Z aeth: As far as standalone binaries, SBCL wil be the fastest, but the largest, so it depends on what you want. Probably unsuitable for a tiny script, but probably most suitable for a game or large application. 2018-07-16T20:28:31Z puchacz quit (Quit: Konversation terminated!) 2018-07-16T20:28:43Z random-nick: also, a big downside of SBCL is the static limit on heap size 2018-07-16T20:29:51Z sjl_: I've never found it to be a very big downside, for the kind of stuff I write 2018-07-16T20:30:58Z earl-ducaine: HighMemoryDaemon: For the sake of completeness: the degree of local support needed for compiled code is unspecified, i.e. implementation dependant and can be , and for modern common ilsp often is, zero 2018-07-16T20:31:47Z HighMemoryDaemon: Just compiled a console hello world program in SBCL. 42 megabytes in total. 2018-07-16T20:31:54Z hvxgr_ joined #lisp 2018-07-16T20:32:16Z Posterdati quit (Ping timeout: 256 seconds) 2018-07-16T20:32:36Z Bike: beeeeef 2018-07-16T20:33:31Z aeth: On the other hand, even graphical applications are much larger than 42 MB these days. Bloat. 2018-07-16T20:33:39Z aeth: (Although you can somewhat avoid that with vector assets.) 2018-07-16T20:33:46Z aeth: s/even graphical/even small graphical/ 2018-07-16T20:33:51Z pjb: HighMemoryDaemon: with ecl, you can also generate a static library libecl.a, and link your program statically, so the executable doesn't rely on a shared library to be pre-installed. 2018-07-16T20:34:17Z HighMemoryDaemon: pjb: That's interesting. Will have to check it out. 2018-07-16T20:34:18Z random-nick: HighMemoryDaemon: yes, that's because SBCL includes itself in every executable 2018-07-16T20:34:25Z random-nick: as in, the whole thing 2018-07-16T20:34:35Z sjl_: HighMemoryDaemon: Right, that includes SBCL itself. e.g. if your hello world app crashes you'll get the full debugger and Lisp environment. 2018-07-16T20:36:20Z marvin4: is there a way to avoid packing sbcl together with every executable? or do language spec require full enivornment available at runtime 2018-07-16T20:36:21Z aeth: I wonder if that makes some antiviruses false positive on SBCL 2018-07-16T20:36:30Z red-dot joined #lisp 2018-07-16T20:37:45Z Bike: i don't think sbcl supports an "sbcl library", but ecl does. 2018-07-16T20:37:49Z pjb: marvin4: yes, instead of using sbcl, use another CL implementation. Then sbcl won't include itself with the executable. 2018-07-16T20:37:49Z xaotuk quit (Ping timeout: 260 seconds) 2018-07-16T20:37:58Z Bike: seriously, you could just not answer 2018-07-16T20:38:11Z pjb: aeth: that's because lisp implementation write to executable memory. 2018-07-16T20:38:12Z Kundry_Wag_ joined #lisp 2018-07-16T20:38:36Z HighMemoryDaemon: What are the most common uses of Lisp in the modern day? GUI applications, web servers, AI, ..? I have a feeling that with a lot of uses you don't need to worry about compiling to native machine code. 2018-07-16T20:38:43Z dxtr joined #lisp 2018-07-16T20:38:53Z pjb: HighMemoryDaemon: https://franz.com/success/ 2018-07-16T20:39:03Z aeth: pjb: So what you're saying is that Lisp is unprotected from buffer overflows? :o 2018-07-16T20:39:21Z pjb: Worse! It's unprotected from self-modifying programs! 2018-07-16T20:39:27Z Bike: compiling to native code is usually useful. compiling gives you static error checks, and machine code is generally faster than interpretation. 2018-07-16T20:39:33Z pjb: Can you imagine? We can use CL:COMPILE at run-time! 2018-07-16T20:39:37Z pjb: Anathema! 2018-07-16T20:39:49Z eli_oat1 quit (Quit: Leaving.) 2018-07-16T20:39:52Z Bike: it is a general purpose programming language. do people ask what java is "for"? it's such a weird question to me 2018-07-16T20:40:02Z aeth: HighMemoryDaemon: Two uses are common enough for their own channels: #lispgames and #lispweb 2018-07-16T20:40:34Z aeth: Lisp was also traditionally very large in AI, but it was mainly used for old school AI, not machine learning, so relatively speaking it's probably much smaller there than it was. 2018-07-16T20:41:51Z pjb: and then, there's cl-cuda… 2018-07-16T20:42:04Z earl-ducaine: HighMemoryDaemon: If you're concerned about the size there are various compression schemes you could lookat. 2018-07-16T20:42:24Z Bike: i think sbcl already incorporates several, so it might be hard to squeeze it much more 2018-07-16T20:42:24Z Smokitch quit 2018-07-16T20:42:43Z Josh_2 joined #lisp 2018-07-16T20:42:46Z earl-ducaine: HighMemoryDaemon: A quick export shows that gzip will compress it into a 12M file. 2018-07-16T20:43:07Z Bike: huh... oh wait, maybe gzipping cores was a build option or something. 2018-07-16T20:43:11Z DonVlad joined #lisp 2018-07-16T20:43:31Z Bike: yes it is. but also to s-l-a-d. 2018-07-16T20:43:51Z Bike: you give it a number that's just passed to zlib 2018-07-16T20:43:59Z earl-ducaine: HighMemoryDaemon: (sbcl) Presumably the executable has various sparse memorry areas that are simply read into their location when the executable is loaded. 2018-07-16T20:45:19Z Posterdati joined #lisp 2018-07-16T20:45:50Z HighMemoryDaemon: aeth: Game development in Lisp sounds particularly interesting. 2018-07-16T20:46:13Z NotSpooky joined #lisp 2018-07-16T20:46:38Z varjag quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2018-07-16T20:47:25Z Kundry_Wag quit (Remote host closed the connection) 2018-07-16T20:48:41Z HighMemoryDaemon: earl-ducaine: That's cool. With Gzip are you just talking about reducing the download size for the end user or is their a way to actually zip an executable that unzips on launch? 2018-07-16T20:48:53Z karlosz quit (Quit: karlosz) 2018-07-16T20:48:57Z X-Scale quit (Ping timeout: 240 seconds) 2018-07-16T20:49:11Z Bike: if you use sb-core-compression, i believe it's the latter 2018-07-16T20:49:19Z aeth: HighMemoryDaemon: here's a bunch of them: https://dto.itch.io/ https://itch.io/jam/lisp-game-jam-2018/results 2018-07-16T20:49:28Z aeth: Not everything in the Lisp Game Jam is Common Lisp 2018-07-16T20:50:31Z karlosz joined #lisp 2018-07-16T20:50:38Z earl-ducaine: HighMemoryDaemon: Just running Bike's suggestion.... it's the latter. 2018-07-16T20:50:59Z pfdietz2 quit (Ping timeout: 276 seconds) 2018-07-16T20:51:27Z Posterdati quit (Read error: Connection reset by peer) 2018-07-16T20:52:01Z karlosz quit (Client Quit) 2018-07-16T20:53:48Z zotan quit (Ping timeout: 256 seconds) 2018-07-16T20:53:51Z scymtym__ quit (Ping timeout: 240 seconds) 2018-07-16T20:54:25Z karlosz joined #lisp 2018-07-16T20:57:11Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2018-07-16T20:58:14Z earl-ducaine: HighMemoryDaemon: Launch plain SBCL from bash shell and past this lisp code https://gist.github.com/earl-ducaine/c1a59ab3d9384d318fbe715abbff0eb6 into the terminal 2018-07-16T20:59:39Z zotan joined #lisp 2018-07-16T20:59:39Z angavrilov quit (Remote host closed the connection) 2018-07-16T21:03:47Z vxe quit (Quit: ZNC 1.7.0 - https://znc.in) 2018-07-16T21:04:35Z vxe joined #lisp 2018-07-16T21:04:48Z Kundry_Wag joined #lisp 2018-07-16T21:04:49Z Kundry_Wag quit (Remote host closed the connection) 2018-07-16T21:04:51Z Bike quit (Ping timeout: 252 seconds) 2018-07-16T21:07:25Z pierpa joined #lisp 2018-07-16T21:07:26Z karlosz quit (Quit: karlosz) 2018-07-16T21:08:00Z EvW1 joined #lisp 2018-07-16T21:08:14Z Posterdati joined #lisp 2018-07-16T21:08:24Z ntqz joined #lisp 2018-07-16T21:10:17Z HighMemoryDaemon: earl-ducaine: Quite easy, thanks! 2018-07-16T21:10:55Z Kundry_Wag_ quit (Ping timeout: 256 seconds) 2018-07-16T21:11:02Z brettgilio quit (Remote host closed the connection) 2018-07-16T21:11:18Z brettgilio joined #lisp 2018-07-16T21:13:57Z kajo quit (Quit: From my rotting body, flowers shall grow and I am in them and that is eternity. -- E. M.) 2018-07-16T21:14:26Z scymtym joined #lisp 2018-07-16T21:15:16Z HighMemoryDaemon: earl-ducaine: One thing I'm confused about though is the ":save-lisp-and-die" that is attached to the function name. I'm not so confused as to what it does but what is that syntax feature of Lisp called? I haven't seen that before. 2018-07-16T21:15:49Z karlosz joined #lisp 2018-07-16T21:15:52Z sjl_: HighMemoryDaemon: save-lisp-and-die is the name of the function. sb-ext is the package 2018-07-16T21:16:25Z HighMemoryDaemon: sjl_: Thank you. 2018-07-16T21:16:52Z X-Scale joined #lisp 2018-07-16T21:16:55Z HighMemoryDaemon: Think channel is super helpful! Glad the Lisp community is like that. 2018-07-16T21:17:31Z HighMemoryDaemon: *This 2018-07-16T21:17:34Z sjl_: you could also (use-package :sb-ext) first, and then just use (save-lisp-and-die ...) but that would import a ton of other stuff you don't need, so usually people just use the package-qualified name for stuff like that. 2018-07-16T21:18:31Z HighMemoryDaemon: Oh cool. 2018-07-16T21:18:58Z playful-owl joined #lisp 2018-07-16T21:19:22Z DonVlad quit 2018-07-16T21:19:26Z karlosz quit (Client Quit) 2018-07-16T21:20:07Z kajo joined #lisp 2018-07-16T21:20:23Z vsync quit (Quit: ZNC - http://znc.sourceforge.net) 2018-07-16T21:21:38Z LiamH quit (Quit: Leaving.) 2018-07-16T21:21:55Z vsync joined #lisp 2018-07-16T21:23:08Z HighMemoryDaemon: Using the "time" command on Linux, I can see that a compiled+gzipped "hello lisp" app takes 0.15s to execute. The compiled+not-compressed "hello lisp" app takes 0.02s to execute. 2018-07-16T21:23:12Z pierpal quit (Quit: Poof) 2018-07-16T21:23:21Z Kundry_Wag joined #lisp 2018-07-16T21:23:34Z pierpal joined #lisp 2018-07-16T21:25:09Z sjl_: right, it takes time to decompress it first. it's a tradeoff between disk space and startup time 2018-07-16T21:25:50Z HighMemoryDaemon: Doesn't affect performance once in un-compresses though, right? 2018-07-16T21:26:03Z HighMemoryDaemon: *once it finishes uncompressing 2018-07-16T21:26:05Z sjl_: right 2018-07-16T21:28:46Z brettgilio quit (Remote host closed the connection) 2018-07-16T21:30:40Z brettgilio joined #lisp 2018-07-16T21:32:32Z subr joined #lisp 2018-07-16T21:32:35Z scymtym: there is also the minor difference that multiple SBCL processes cannot share as many memory pages when compression is used 2018-07-16T21:34:32Z subroot quit (Ping timeout: 276 seconds) 2018-07-16T21:36:58Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-16T21:37:21Z EvW1 quit (Ping timeout: 240 seconds) 2018-07-16T21:38:29Z DingoSaar quit (Ping timeout: 260 seconds) 2018-07-16T21:39:24Z saki joined #lisp 2018-07-16T21:40:57Z chiyosaki quit (Ping timeout: 240 seconds) 2018-07-16T21:42:48Z Bike joined #lisp 2018-07-16T21:43:24Z red-dot joined #lisp 2018-07-16T21:45:05Z makomo quit (Ping timeout: 248 seconds) 2018-07-16T21:47:13Z HighMemoryDaemon quit (Quit: Leaving) 2018-07-16T21:47:19Z fikka joined #lisp 2018-07-16T21:47:24Z troydm quit (Quit: What is Hope? That all of your wishes and all of your dreams come true? To turn back time because things were not supposed to happen like that (C) Rau Le Creuset) 2018-07-16T21:47:54Z troydm joined #lisp 2018-07-16T21:48:08Z drduck joined #lisp 2018-07-16T21:48:59Z drduck: Howdy. What's an actively maintained library for common-lisp that's similar to hibernate for java, in that it's an ORM mapping tool? 2018-07-16T21:49:21Z drduck: Hopefully with support for SBCL :P 2018-07-16T21:49:45Z EvW joined #lisp 2018-07-16T21:50:39Z rumbler31 joined #lisp 2018-07-16T21:51:49Z saki quit (Ping timeout: 268 seconds) 2018-07-16T21:52:09Z saki joined #lisp 2018-07-16T21:52:29Z fikka quit (Ping timeout: 260 seconds) 2018-07-16T21:52:38Z _death: personally I don't use ORMs, but I think an actively maintained one is https://github.com/fukamachi/mito 2018-07-16T21:53:11Z FreeBirdLjj joined #lisp 2018-07-16T21:53:39Z mindCrime quit (Ping timeout: 260 seconds) 2018-07-16T21:54:50Z k4rtik joined #lisp 2018-07-16T21:58:25Z FreeBirdLjj quit (Ping timeout: 248 seconds) 2018-07-16T22:05:05Z patlv quit (Ping timeout: 240 seconds) 2018-07-16T22:06:02Z patlv joined #lisp 2018-07-16T22:09:50Z jasom: has mito replaced integral? 2018-07-16T22:10:09Z jasom just checked and the readme for integral indeed suggests that it has 2018-07-16T22:12:00Z mejja quit (Quit: mejja) 2018-07-16T22:13:14Z k4rtik quit (Ping timeout: 265 seconds) 2018-07-16T22:20:50Z brettgilio quit (Remote host closed the connection) 2018-07-16T22:22:27Z patlv quit (Ping timeout: 240 seconds) 2018-07-16T22:23:50Z k4rtik joined #lisp 2018-07-16T22:28:08Z caltelt_ joined #lisp 2018-07-16T22:30:17Z fikka joined #lisp 2018-07-16T22:30:36Z blackwolf quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2018-07-16T22:31:06Z FreeBirdLjj joined #lisp 2018-07-16T22:32:16Z pioneer42 joined #lisp 2018-07-16T22:35:50Z rumbler31 quit (Remote host closed the connection) 2018-07-16T22:36:33Z caltelt_ quit (Remote host closed the connection) 2018-07-16T22:41:09Z random-nick quit (Ping timeout: 268 seconds) 2018-07-16T22:42:47Z sjl_ quit (Ping timeout: 276 seconds) 2018-07-16T22:43:10Z k4rtik quit (Ping timeout: 256 seconds) 2018-07-16T22:44:45Z FreeBirdLjj quit (Ping timeout: 264 seconds) 2018-07-16T22:51:14Z EvW quit (Ping timeout: 276 seconds) 2018-07-16T22:53:38Z robotoad quit (Quit: robotoad) 2018-07-16T22:53:47Z graphene quit (Remote host closed the connection) 2018-07-16T22:55:02Z graphene joined #lisp 2018-07-16T22:55:56Z akkad: pure drivers can be written in lisp without need to drop to cffi 2018-07-16T23:02:43Z robotoad joined #lisp 2018-07-16T23:08:06Z Kundry_Wag_ joined #lisp 2018-07-16T23:10:57Z dyelar joined #lisp 2018-07-16T23:11:36Z drduck: Is there a good tensorflow binding for common lisp lying around anywhere? 2018-07-16T23:12:29Z gabiruh quit (Read error: Connection reset by peer) 2018-07-16T23:14:05Z gabiruh joined #lisp 2018-07-16T23:14:41Z akkad: yeah awesome list has many listed 2018-07-16T23:14:59Z akkad: awesome.cl 2018-07-16T23:15:31Z aeth: Any list that lists GCL among its recommendations is so incredibly uncurated that I wouldn't trust anything on it. 2018-07-16T23:15:48Z akkad: aeth: don't hate on what is hip, or awesome 2018-07-16T23:15:57Z akkad: aeth: you're over 30 I take it 2018-07-16T23:16:19Z aeth: Turning 28 next month. I guess I have to stop programming soon. 2018-07-16T23:16:35Z akkad: and it's list gets out of date often, to show you inperfections that it is done by hand. 2018-07-16T23:16:50Z patlv joined #lisp 2018-07-16T23:17:05Z aeth: For that list to have gotten out of date and have GCL on it, it would have had to be written in 2005 or so. 2018-07-16T23:18:11Z aeth: I bet someone could get Genera added to the list. 2018-07-16T23:18:13Z pierre__ quit (Quit: pierre__) 2018-07-16T23:19:52Z dyelar quit (Quit: Leaving.) 2018-07-16T23:25:49Z Kundry_Wag quit (Remote host closed the connection) 2018-07-16T23:26:13Z marvin4 is now known as marvin2 2018-07-16T23:27:57Z patlv quit (Ping timeout: 264 seconds) 2018-07-16T23:28:34Z thelostlambda quit (Remote host closed the connection) 2018-07-16T23:32:59Z Kaisyu joined #lisp 2018-07-16T23:35:39Z brendyn joined #lisp 2018-07-16T23:41:21Z Kundry_Wag_ quit (Ping timeout: 248 seconds) 2018-07-16T23:43:25Z patlv joined #lisp 2018-07-16T23:43:38Z Guest39745 quit (Ping timeout: 244 seconds) 2018-07-16T23:44:01Z cods quit (Ping timeout: 248 seconds) 2018-07-16T23:45:43Z Guest39745 joined #lisp 2018-07-16T23:45:54Z jasom: awesome.cl I believe post-dates GCL not being worth recommending. 2018-07-16T23:46:40Z jasom: We should have a "If you say you are using X on #lisp, we won't laugh you out of the channel" curated list. 2018-07-16T23:46:44Z cods joined #lisp 2018-07-16T23:49:40Z akkad: cleavir can resurrect gcl too no? 2018-07-16T23:50:14Z aeth: If you're going to recommend a bunch of things in the same category, you should be opinionated and not just list them alphabetically. e.g. I'd recommend trying SBCL, CCL, and ECL in that order. awesome-cl puts SBCL last because it's alphabetical and ultra-niche ABCL first! 2018-07-16T23:53:27Z cmatei quit (Ping timeout: 240 seconds) 2018-07-16T23:55:09Z brettgilio joined #lisp 2018-07-16T23:55:54Z cmatei joined #lisp 2018-07-16T23:57:19Z patlv quit (Ping timeout: 260 seconds) 2018-07-16T23:57:43Z akkad: true 2018-07-16T23:58:17Z akkad: but cl has an image issue, and this goes a long ways to teach potential developers how cool it is 2018-07-17T00:00:03Z p_l: akkad: GCL is deader than dead 2018-07-17T00:00:24Z akkad: xemacs still has users 2018-07-17T00:00:25Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-17T00:00:29Z p_l: I do wonder how much the mistake of trying for CLtL2 before ANSI led to it 2018-07-17T00:00:38Z p_l: akkad: XEmacs never got as dead as GCL 2018-07-17T00:01:24Z Xach: gcl is still alive 2018-07-17T00:01:35Z Xach: i'll box the ears of anyone who says otherwise! 2018-07-17T00:01:51Z p_l: akkad: when GCL was making doornails look lively, XEmacs was still something I would suggest over Emacs :) 2018-07-17T00:02:02Z p_l: (partially because of better MULE and unicode) 2018-07-17T00:02:05Z aeth: akkad: It's not good for the image of CL (a dead implementation that's barely supported by the ecosystem does not make a good first impression) or for the security of CL programmers (SBCL or CCL would patch a security issue next month... GCL would patch it in 5 years maybe?) to recommend inactive implementations. 2018-07-17T00:03:15Z p_l ponders if Genera might not have actually wider usage than GCL now 2018-07-17T00:04:11Z aeth: It's a lot harder to determine things about commercial implementations. It's likely they're not in the ASDF+Quicklisp ecosystem with the rest of us and if there's some issue it *could* still be patched quickly through a commercial support contract even if there's one user. 2018-07-17T00:05:41Z akkad: Franz patches weekly. LW not so much 2018-07-17T00:07:36Z aeth: I'm talking about obscure commercial implementations. 2018-07-17T00:07:47Z aeth: Everyone knows LW and Allegro are alive 2018-07-17T00:08:20Z aeth: aeth-lisp is also alive if someone is willing to pay $500,000 a year or whatever. Even if it has basically 0 presence anywhere else. 2018-07-17T00:08:39Z Josh_2: nope not giffing you that moneys bad aeth 2018-07-17T00:10:41Z m00natic quit (Remote host closed the connection) 2018-07-17T00:10:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-17T00:11:20Z aeth: Josh_2: It's a lot harder than it looks. I can't just "git clone https://github.com/sbcl/sbcl.git" because I also have to find-and-replace all instances of the strings "SBCL", "sbcl", "Steel Bank Common Lisp", etc., except on the relevant copyright/contributor pages, etc. 2018-07-17T00:11:57Z krrrcks quit (Ping timeout: 240 seconds) 2018-07-17T00:12:19Z brettgilio quit (Remote host closed the connection) 2018-07-17T00:13:44Z krrrcks joined #lisp 2018-07-17T00:15:15Z aeth: (That's obvious satire, but soemone *did* make a commercial fork of CMUCL.) 2018-07-17T00:16:05Z Josh_2: bad aeth 2018-07-17T00:16:08Z Josh_2: xD 2018-07-17T00:16:33Z akkad: it's unfree so, typical. 2018-07-17T00:17:55Z pierpal quit (Ping timeout: 256 seconds) 2018-07-17T00:20:26Z Kundry_Wag joined #lisp 2018-07-17T00:23:05Z patlv joined #lisp 2018-07-17T00:25:19Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-17T00:25:19Z Oladon joined #lisp 2018-07-17T00:26:10Z skapata quit (Remote host closed the connection) 2018-07-17T00:27:58Z BitPuffin quit (Remote host closed the connection) 2018-07-17T00:30:08Z brettgilio joined #lisp 2018-07-17T00:30:25Z red-dot joined #lisp 2018-07-17T00:31:01Z pfdietz: acl2 was keeping gcl alive, wasn't it? But they moved on. 2018-07-17T00:32:39Z playful-owl quit (Quit: leaving) 2018-07-17T00:34:07Z Xach: maxima 2018-07-17T00:36:24Z rumbler31 joined #lisp 2018-07-17T00:36:53Z Kundry_Wag joined #lisp 2018-07-17T00:37:38Z Kundry_Wag_ joined #lisp 2018-07-17T00:41:09Z rumbler31 quit (Ping timeout: 264 seconds) 2018-07-17T00:42:01Z Kundry_Wag quit (Ping timeout: 268 seconds) 2018-07-17T00:43:13Z p_l: aeth: SCL is kinda dead, moxcl is probably alive but isn't a full implementation, Liquid, Franz and Genera are in similar state of undead (you can still get support), I actually don't know about Interlisp because it feels at times that the owners forgot there was a language implementation under the program they were selling 2018-07-17T00:43:57Z light2yellow quit (Quit: light2yellow) 2018-07-17T00:44:05Z p_l: Corman died to be reborn opensourced, MCL died in the OSX transition iirc 2018-07-17T00:44:27Z patlv quit (Ping timeout: 240 seconds) 2018-07-17T00:44:29Z p_l: anything else from the CL world? 2018-07-17T00:45:00Z pjb quit (Ping timeout: 256 seconds) 2018-07-17T00:45:15Z p_l: (I'm ignoring implementations that died back on DOS or were so obscure good luck finding mentions, let alone software or parts) 2018-07-17T00:47:17Z warweasle joined #lisp 2018-07-17T00:47:25Z fikka joined #lisp 2018-07-17T00:49:21Z gjvc joined #lisp 2018-07-17T00:51:36Z Beep-Lord joined #lisp 2018-07-17T00:51:51Z fikka quit (Ping timeout: 240 seconds) 2018-07-17T00:53:51Z equwal joined #lisp 2018-07-17T00:56:10Z pjb joined #lisp 2018-07-17T00:56:34Z pjb is now known as Guest12397 2018-07-17T00:56:38Z FreeBirdLjj joined #lisp 2018-07-17T01:01:08Z FreeBirdLjj quit (Ping timeout: 244 seconds) 2018-07-17T01:02:01Z brettgilio quit (Remote host closed the connection) 2018-07-17T01:02:32Z Guest12397 quit (Ping timeout: 276 seconds) 2018-07-17T01:03:51Z Beep-Lord quit (Ping timeout: 265 seconds) 2018-07-17T01:03:58Z Kundry_Wag_ quit (Ping timeout: 264 seconds) 2018-07-17T01:06:13Z Guest12397 joined #lisp 2018-07-17T01:06:21Z subr quit (Quit: Leaving) 2018-07-17T01:06:36Z subroot joined #lisp 2018-07-17T01:08:05Z Josh_2 quit (Quit: ERC (IRC client for Emacs 25.3.1)) 2018-07-17T01:08:12Z phenoble quit (Ping timeout: 265 seconds) 2018-07-17T01:10:22Z wheelsucker quit (Ping timeout: 256 seconds) 2018-07-17T01:10:51Z Guest12397 quit (Ping timeout: 240 seconds) 2018-07-17T01:22:06Z Guest12397 joined #lisp 2018-07-17T01:28:05Z Guest12397 quit (Ping timeout: 240 seconds) 2018-07-17T01:28:42Z Kundry_Wag joined #lisp 2018-07-17T01:29:16Z Kundry_Wag_ joined #lisp 2018-07-17T01:30:12Z Guest12397 joined #lisp 2018-07-17T01:30:16Z Kundry_W_ joined #lisp 2018-07-17T01:32:23Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-17T01:32:42Z nickenchuggets joined #lisp 2018-07-17T01:33:21Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-17T01:35:03Z fikka joined #lisp 2018-07-17T01:35:10Z Kundry_W_ quit (Ping timeout: 264 seconds) 2018-07-17T01:35:26Z Guest12397 quit (Ping timeout: 256 seconds) 2018-07-17T01:36:34Z robotoad quit (Quit: robotoad) 2018-07-17T01:37:03Z FreeBirdLjj joined #lisp 2018-07-17T01:39:21Z fikka quit (Ping timeout: 240 seconds) 2018-07-17T01:42:12Z aeth: Is there a way to define a function with a defclass given some custom metaclass? It's very trivial with a defclass* macro, but I'm not sure how it can be done in the MOP. (setf (fdefinition foo) (lambda (...) ...)) in ensure-class-using-class :before? 2018-07-17T01:42:55Z dddddd quit (Ping timeout: 256 seconds) 2018-07-17T01:43:01Z Guest12397 joined #lisp 2018-07-17T01:45:47Z Guest12397 quit (Remote host closed the connection) 2018-07-17T01:45:47Z red-dot joined #lisp 2018-07-17T01:47:50Z dddddd joined #lisp 2018-07-17T01:48:30Z Oladon quit (Quit: Leaving.) 2018-07-17T01:48:31Z Guest12397 joined #lisp 2018-07-17T01:49:18Z gousuto joined #lisp 2018-07-17T01:49:19Z gousuto quit (Changing host) 2018-07-17T01:49:19Z gousuto joined #lisp 2018-07-17T01:52:40Z nickenchuggets quit (Ping timeout: 265 seconds) 2018-07-17T01:54:51Z Guest12397 quit (Ping timeout: 240 seconds) 2018-07-17T02:00:42Z Kundry_Wag joined #lisp 2018-07-17T02:02:41Z Guest12397 joined #lisp 2018-07-17T02:04:30Z rumbler31 joined #lisp 2018-07-17T02:04:57Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-17T02:05:33Z warweasle quit (Remote host closed the connection) 2018-07-17T02:05:54Z warweasle joined #lisp 2018-07-17T02:07:11Z robotoad joined #lisp 2018-07-17T02:07:44Z Guest12397 quit (Ping timeout: 256 seconds) 2018-07-17T02:09:37Z FreeBirdLjj quit (Ping timeout: 248 seconds) 2018-07-17T02:10:13Z rumbler31 quit (Remote host closed the connection) 2018-07-17T02:11:02Z cgay_ joined #lisp 2018-07-17T02:13:28Z cmatei quit (Ping timeout: 244 seconds) 2018-07-17T02:15:24Z pierpal joined #lisp 2018-07-17T02:16:18Z cmatei joined #lisp 2018-07-17T02:17:52Z EvW joined #lisp 2018-07-17T02:20:48Z milanj__ quit (Quit: This computer has gone to sleep) 2018-07-17T02:23:18Z Guest12397 joined #lisp 2018-07-17T02:24:30Z Bike: oh, you mean, during the course of a defclass, define a function 2018-07-17T02:24:45Z AetherWind joined #lisp 2018-07-17T02:24:46Z Bike: :before method sounds right to me. you don't get to control the macroexpansion to put a defun in there, if that's what you're hoping for. 2018-07-17T02:25:17Z cornett left #lisp 2018-07-17T02:26:36Z equwal: I'm not sure I understand what aeth means either. Are you talking about polymorphism? 2018-07-17T02:27:01Z pierpa quit (Quit: Page closed) 2018-07-17T02:27:49Z Oladon joined #lisp 2018-07-17T02:28:33Z fikka joined #lisp 2018-07-17T02:28:42Z Guest12397 quit (Ping timeout: 256 seconds) 2018-07-17T02:30:28Z Kundry_Wag joined #lisp 2018-07-17T02:30:58Z LdBeth: aeth: you mean funcallable instance? 2018-07-17T02:31:22Z Bike: i think aeth just wants a defclass of their custom metaclass to define more functions than just accessors. 2018-07-17T02:31:35Z dddddd quit (Remote host closed the connection) 2018-07-17T02:32:03Z aeth: Bike: right 2018-07-17T02:32:09Z terpri quit (Ping timeout: 264 seconds) 2018-07-17T02:33:03Z aeth: I have it, but it's not particularly pretty. I can't just (setf (fdefinition foo) (lambda (...) ...)) because I have macroish things I want to do so I have to (setf (fdefinition foo) (eval `(lambda (...) ...))) 2018-07-17T02:33:06Z fikka quit (Ping timeout: 244 seconds) 2018-07-17T02:33:07Z LdBeth: I think defined initialize method for the metaclass can do that 2018-07-17T02:33:21Z aeth: And I also have to wrap it in an eval-when in CCL because of course CCL is picky about things and wants extra eval-whens 2018-07-17T02:33:32Z Bike: whoa, whoa, what 2018-07-17T02:33:49Z Bike: oh by "macroish things" you mean the source will be different 2018-07-17T02:33:56Z Bike: no idea about eval-when though 2018-07-17T02:34:15Z aeth: Bike: https://gitlab.com/zombie-raptor/zombie-raptor/commit/036af6464f6517c13bed17416c7317391d733db4 2018-07-17T02:35:10Z Kundry_Wag quit (Ping timeout: 244 seconds) 2018-07-17T02:35:17Z Guest12397 joined #lisp 2018-07-17T02:35:24Z aeth: I now have the source of the shader class definition itself down to just: https://gitlab.com/zombie-raptor/zombie-raptor/blob/036af6464f6517c13bed17416c7317391d733db4/data/shader.lisp#L89-146 2018-07-17T02:36:13Z aeth: I guess the next step is seeing if I can generate the check-types in the setter automatically and perhaps doing the constructor type checks (via the generated function) automatically 2018-07-17T02:36:26Z aeth: s/the setter/the setters/ 2018-07-17T02:36:26Z DataLinkDroid quit (Read error: Connection reset by peer) 2018-07-17T02:36:40Z Bike: yeah i have no idea why eval-when would be necessary here. 2018-07-17T02:37:30Z Bike: but let me see if i have this right- you define a global function for every slot that takes an instance and checks that slot? 2018-07-17T02:37:52Z Bike: or just one check- for the class that does all of them 2018-07-17T02:38:46Z sjl quit (Quit: WeeChat 2.2-dev) 2018-07-17T02:39:14Z aeth: Bike: I define a check-foo that checks the type of every slot that has a reader. This can be called separately since CLOS objects can't really be trusted even with the constructor and setters having type checks. 2018-07-17T02:40:02Z karlosz joined #lisp 2018-07-17T02:40:03Z aeth: I also add :before to every writer to ensure that the types are checked. Atm, I do this manually, but it probably won't be that hard to do it automatically now that I have everything set up. 2018-07-17T02:40:27Z Bike: you could just define a :before on (setf slot-value-using-class) since you have your own slotd class anyway. 2018-07-17T02:40:36Z Guest12397 quit (Ping timeout: 256 seconds) 2018-07-17T02:40:58Z aeth: Bike: And that would cover with-accessors, with-slots, and the constructor all together? 2018-07-17T02:41:31Z Bike: everything goes through (setf slot-value-using-class), yes. 2018-07-17T02:41:36Z aeth: great 2018-07-17T02:41:53Z aeth: That simplifies things a lot 2018-07-17T02:44:35Z itruslove joined #lisp 2018-07-17T02:45:46Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-17T02:47:30Z sjl joined #lisp 2018-07-17T02:48:06Z giraffe joined #lisp 2018-07-17T02:48:48Z pierpal quit (Quit: Poof) 2018-07-17T02:49:05Z pierpal joined #lisp 2018-07-17T02:49:13Z Guest12397 joined #lisp 2018-07-17T02:54:20Z Guest12397 quit (Ping timeout: 276 seconds) 2018-07-17T02:55:42Z equwal: After several years of lisping this CLOS stuff still confuses me a great deal. In one ear and out the other. Hopefully it will click sometime. 2018-07-17T02:56:25Z rozenglass joined #lisp 2018-07-17T02:56:26Z pierpal quit (Read error: Connection reset by peer) 2018-07-17T02:56:33Z xsperry joined #lisp 2018-07-17T02:56:46Z loke: equThat part of it is complicated? 2018-07-17T02:57:21Z warweasle quit (Ping timeout: 240 seconds) 2018-07-17T02:57:36Z Guest12397 joined #lisp 2018-07-17T02:58:00Z equwal: I just have a hard time remembering all the details, and knowing when it is better than the functional paradigm I am accustomed to. 2018-07-17T02:58:51Z equwal: Do you recommend any resources? I've read Peter Siebel's book and Graham's On Lisp sections on CLOS, but I don't really get still. 2018-07-17T02:59:11Z sjl: Keene's CLOS book is short, but was very helpful for me. 2018-07-17T02:59:17Z JuanDaugherty joined #lisp 2018-07-17T03:00:52Z Guest12397 quit (Remote host closed the connection) 2018-07-17T03:01:25Z Kundry_Wag_ quit (Remote host closed the connection) 2018-07-17T03:02:01Z Kundry_Wag joined #lisp 2018-07-17T03:05:27Z cgay_ quit (Ping timeout: 240 seconds) 2018-07-17T03:05:49Z equwal: I found myself a copy, I'll definitely give this a read. 2018-07-17T03:05:53Z equwal: Thanks! 2018-07-17T03:06:19Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-17T03:07:43Z aeth: I think there's only one person here who really knows CLOS 2018-07-17T03:08:07Z Guest12397 joined #lisp 2018-07-17T03:11:11Z equwal: I think the main problem for me is that CLOS is so much bigger than any object orientation I have tried to do before. 'Thing's huge. 2018-07-17T03:12:13Z aeth: And it's just underspecified enough for there to be annoying incompatibilities between implementations. 2018-07-17T03:12:51Z Guest12397 quit (Ping timeout: 240 seconds) 2018-07-17T03:13:06Z xsperry: what is your opinion of lisp-1 vs lisp-2 as far as functional programming go? and is there a way to reduce boilerplate in lisp-2 when doing that style of programming with some smart use of macros? 2018-07-17T03:13:26Z pierpal joined #lisp 2018-07-17T03:15:17Z sjl quit (Quit: WeeChat 2.2-dev) 2018-07-17T03:16:01Z equwal: Well I like doing things like this ((lambda (x) x) 1) in scheme, whereas in lisp you must do (funcall #'(lambda (x) x) 1) which is not as cool. 2018-07-17T03:16:44Z Kundry_Wag joined #lisp 2018-07-17T03:17:14Z aeth: symbol-macrolet like in with-accessors 2018-07-17T03:17:29Z xsperry: I was thinking something like this... (funcall (funcall 'f 10) 20) vs ((f 10) 20) 2018-07-17T03:17:30Z aeth: it won't help you with that particular case (although you *can* drop the #') but it can help when funcalling named things 2018-07-17T03:17:32Z equwal: But you get to do things like (define list (list) list) and have it work, whereas (define list (lst) lst) is not so good. I'm not really sure, but I know I've seen very good discussion on both sides. 2018-07-17T03:17:41Z xsperry: equwal your lambda example actually works in CL. 2018-07-17T03:17:44Z EvW quit (Ping timeout: 265 seconds) 2018-07-17T03:18:20Z equwal: Good point. 2018-07-17T03:18:26Z equwal: Let me get a better example. 2018-07-17T03:18:34Z xsperry: (funcall (funcall 'f 10) 20) vs ((f 10) 20) ? :) 2018-07-17T03:18:49Z xsperry: (mentioned above) 2018-07-17T03:19:06Z equwal: Oh partial application 2018-07-17T03:19:31Z xsperry: no. just calling a function stored in f variable, and then calling the function it returned 2018-07-17T03:19:48Z xsperry: (actually I guess that is partial application) 2018-07-17T03:19:53Z equwal: Well yes. 2018-07-17T03:19:57Z equwal: That is the same :P 2018-07-17T03:20:05Z xsperry: :) 2018-07-17T03:20:37Z xsperry: anything we can do in CL to make that more readable? custom macros included 2018-07-17T03:20:51Z xsperry: by more readable, I mean less verbose 2018-07-17T03:21:30Z mange joined #lisp 2018-07-17T03:21:36Z Kundry_Wag quit (Ping timeout: 265 seconds) 2018-07-17T03:21:40Z equwal: Yeah partial application is a mess. I'm not sure where I stand on the lisp-1 lisp-2, definitely pluses to both sides. 2018-07-17T03:22:15Z equwal: I think clojure does something like ((partial 1+) 1) => 2 2018-07-17T03:23:00Z stacksmith: Good morning. Apologies for slightly off-topic question.. Can someone help me out with roswell? I royally screwed up my environment by deleting an old version of sbcl-bin... 2018-07-17T03:24:07Z xsperry: I only played with clojure briefly, but if f is a variable that stores a function that returns a function, I am pretty sure what I typed above will work.. ie ((f 10) 20) 2018-07-17T03:25:16Z equwal: Right, but you can make the function f like (partial f 10) out of a function (defun f2 (x y) something) 2018-07-17T03:26:14Z equwal: So you could do (funcall (partial f 10) 20) or whatever, which is marginally more readable I guess. 2018-07-17T03:26:24Z xsperry: yeah, true 2018-07-17T03:26:39Z NotSpooky quit (Quit: Leaving) 2018-07-17T03:27:20Z Guest12397 joined #lisp 2018-07-17T03:27:33Z xsperry: actually I guess what I'd really like is do it in CL like haskell does it. where this would be just f 10 20 (since (defun f2 (x y) ..) equivalent in haskell is really just a function that takes one argument and returns a function that takes another) 2018-07-17T03:28:13Z xsperry: which would be ((f 10) 20) in lisp syntax, even if we defined f as (defun f (x y) ..) 2018-07-17T03:28:15Z xsperry: which would be ((f 10) 20) in lisp syntax, even if we defined f as (defun f (x y) ..) 2018-07-17T03:28:20Z xsperry: (sorry) 2018-07-17T03:28:35Z equwal: Yes, I know exactly what you mean. You don't want to have to (defun f (x) (lambda (y) (+ x y))) 2018-07-17T03:28:53Z xsperry: right 2018-07-17T03:29:09Z equwal: You want to be able to (defun f (&rest stuff) (apply #'+ stuff)) 2018-07-17T03:32:28Z Guest123` joined #lisp 2018-07-17T03:32:33Z Guest12397 quit (Remote host closed the connection) 2018-07-17T03:33:21Z aindilis quit (Ping timeout: 240 seconds) 2018-07-17T03:33:38Z aeth: Bike: "you could just define a :before on (setf slot-value-using-class)" I can't get that to work. It doesn't seem to be called. 2018-07-17T03:34:01Z loke: aeth: what did you try? 2018-07-17T03:34:18Z tll joined #lisp 2018-07-17T03:34:31Z aeth: The only thing that has any noticable effect at all is (defmethod slot-value-using-class :before (class object slot) ...) which gives an SBCL error, which makes sense because I'm probably redefining some built-in. 2018-07-17T03:34:52Z Bike: mop s-v-u-c 2018-07-17T03:34:52Z specbot: slot-value-using-class: http://metamodular.com/CLOS-MOP/slot-value-using-class.html 2018-07-17T03:35:05Z aeth: loke: I'm trying (defmethod (setf slot-value-using-class) :before (new-value class object (slot slot-with-checked-type)) ...) 2018-07-17T03:35:12Z loke: aeth: you need to defmethod sb-mop:slot-value-using-class 2018-07-17T03:35:34Z loke: (or use closer-mop) 2018-07-17T03:35:45Z Bike: where does it have t he reader and writer semantics... 2018-07-17T03:36:26Z gjvc quit (Quit: leaving) 2018-07-17T03:36:53Z loke: aeth: I'm pretty sure you are notpicking up slot-value-using-class from the correct package (which is why you need to use SB-MOP, or load closer-mop so that you get a standard interface to it) 2018-07-17T03:37:08Z aeth: I'm using closer-mop 2018-07-17T03:37:11Z Bike: if that was the case i don't see why the unqualified method would cause an error. 2018-07-17T03:37:24Z loke: so did you defmethod CLOSER-MOP:SLOT-VALUE-USING-CLASS? 2018-07-17T03:37:33Z pierpal quit (Ping timeout: 265 seconds) 2018-07-17T03:37:43Z Guest123` quit (Remote host closed the connection) 2018-07-17T03:38:00Z aeth: loke: Yes, and if I M-. it it'll take me to SBCL's definition (or it would if it had a valid builddir) 2018-07-17T03:38:07Z tll quit (Read error: Connection reset by peer) 2018-07-17T03:38:11Z loke: aeth: Show some code 2018-07-17T03:38:31Z aeth: (defmethod (setf slot-value-using-class) :before (new-value class object (slot slot-with-checked-type)) (format t "~S ~S~%" new-value (slot-definition-checked-type slot)) (check-type new-value integer)) 2018-07-17T03:38:43Z aeth: That should have two visible side effects. It should print and it should almost always fail 2018-07-17T03:38:59Z aeth: I've also tried it with the class given 2018-07-17T03:39:03Z Bike: 7.5.2 says they go through slot-value 2018-07-17T03:39:24Z tll joined #lisp 2018-07-17T03:40:27Z tll quit (Client Quit) 2018-07-17T03:40:33Z Guest123` joined #lisp 2018-07-17T03:40:56Z equwal: I whipped up some partial application last month and just uncovered that file, I'll just dump the code here. The function we are looking at is called partial. This is why I brought up this "solution," which really solves a different problem then "how can we write (funcall (funcall ...) better, and instead solves the problem "how can we take a two argument function and make it partially applied to one argument." 2018-07-17T03:41:05Z equwal: (defmacro generate-lambda (lambda-list body) 2018-07-17T03:41:05Z equwal: `#'(lambda ,lambda-list ,body)) 2018-07-17T03:41:05Z equwal: (defmacro partial-aux (func &rest args) 2018-07-17T03:41:05Z equwal: (with-gensyms (function new-args llist) 2018-07-17T03:41:08Z equwal: `(let ((,function ,func) 2018-07-17T03:41:11Z equwal: (,new-args (mapcar #'eval ',args))) 2018-07-17T03:41:14Z equwal: (let ((,llist (nthcdr (length ,new-args) 2018-07-17T03:41:19Z equwal: (stop-at-special (sb-introspect:function-lambda-list ,function))))) 2018-07-17T03:41:19Z equwal: `(generate-lambda ,,llist (funcall ,,function ,@(append ,new-args ,llist))))))) 2018-07-17T03:41:22Z equwal: (defmacro partial (func &rest args) 2018-07-17T03:41:25Z equwal: (eval `(partial-aux ,func ,@args))) ;; Example call: (funcall (partial #'subst 1 2) '(1 2 3)) --> (1 1 3) 2018-07-17T03:41:25Z Bike: when you paste more than one line, put it in an external website, please, equwal 2018-07-17T03:41:28Z equwal: (defun stop-at-special (list &optional acc) 2018-07-17T03:41:32Z equwal: (if (or (null list) 2018-07-17T03:41:35Z equwal: (some #'(lambda (y) (equalp (car list) y)) 2018-07-17T03:41:38Z equwal: '(&key &optional)));Deliberately breaks on &rest and &body. 2018-07-17T03:41:41Z equwal: (reverse acc) 2018-07-17T03:41:45Z equwal: (stop-at-special (cdr list) (cons (car list) acc)))) 2018-07-17T03:41:48Z Bike: fuck's sake 2018-07-17T03:41:49Z equwal: (defmacro with-gensyms (symbols &body body) 2018-07-17T03:41:49Z equwal: `(let (,@(mapcar #'(lambda (sym) 2018-07-17T03:41:52Z equwal: `(,sym ',(gensym))) symbols)) 2018-07-17T03:41:55Z equwal: ,@body)) 2018-07-17T03:41:58Z equwal: 2018-07-17T03:42:09Z equwal: Sorry man. 2018-07-17T03:42:12Z equwal: https://pastebin.com/mDY1dM9c 2018-07-17T03:42:48Z pierpal joined #lisp 2018-07-17T03:43:55Z JuanDaugherty quit (Quit: Exeunt) 2018-07-17T03:45:28Z Bike: hm, i don't see any output on sbcl for setf svuc either 2018-07-17T03:45:31Z xsperry: equwal thanks a lot for the effort! but I was thinking of tackling this from the other way around.. from the call site. so I can use all the functions that are available. 2018-07-17T03:45:46Z Guest123` quit (Ping timeout: 256 seconds) 2018-07-17T03:47:03Z xsperry: (defun f (x y) .. ) to turn (f 10) into (lambda (x) (f 10 x)). and also to make curried functions callable like this ((f 10) 20), not like this (funcall (f 10) 20) 2018-07-17T03:47:29Z xsperry: would this be even possible? it would obviously only work in the body of my macro 2018-07-17T03:47:49Z equwal: Definitely it is possible, but I don't know how you would do it yet. 2018-07-17T03:48:16Z patlv joined #lisp 2018-07-17T03:48:17Z Bike: the latter isn't really possible without a silly level of hacks. 2018-07-17T03:49:00Z equwal: I agree. 2018-07-17T03:50:09Z Guest123` joined #lisp 2018-07-17T03:50:39Z subroot quit (Ping timeout: 260 seconds) 2018-07-17T03:53:38Z LdBeth: equwal: CL21 provides some syntactic sugar for easier writing anonymous function. 2018-07-17T03:54:24Z Bike: https://pastebin.com/DKJMUPCB here's the first one. be warned: it sucks 2018-07-17T03:54:27Z orivej quit (Ping timeout: 240 seconds) 2018-07-17T03:55:02Z equwal: I'll decifer this schonfinkel 2018-07-17T03:55:24Z Guest123` quit (Ping timeout: 256 seconds) 2018-07-17T03:56:27Z patlv quit (Ping timeout: 240 seconds) 2018-07-17T03:57:00Z sauvin joined #lisp 2018-07-17T03:57:11Z fikka joined #lisp 2018-07-17T03:57:51Z aeth: Bike, loke: This is what I have now. https://gitlab.com/zombie-raptor/zombie-raptor/blob/1e63646bb9af1d00223b9130868274915398b62a/util/util.lisp#L445-491 2018-07-17T03:58:01Z aeth: And no matter how many side effects I add, it never happens. 2018-07-17T03:58:20Z Bike: you don't need the call-next-methods... 2018-07-17T03:58:23Z aeth: And whatever combination of whatever 2018-07-17T03:58:29Z Bike: but yeah, i think sbcl might be skipping it 2018-07-17T03:58:35Z marusich joined #lisp 2018-07-17T03:59:01Z aeth: Not just SBCL 2018-07-17T03:59:09Z aeth: CCL also lets invalid things happen 2018-07-17T03:59:20Z aeth: e.g. I can set the name to 42. (let ((s (make-instance 'shader :name :hello :stage :fragment-shader :source ""))) (setf (zombie-raptor/data/shader::name s) 42) (zombie-raptor/data/shader::name s)) 2018-07-17T03:59:23Z loke: aeth: You might want to try with a dfifferent metaclass 2018-07-17T03:59:38Z Bike: what's wrong with this metaclass 2018-07-17T03:59:47Z loke: you'r eusing standard-class, no? 2018-07-17T04:00:05Z Bike: no, there's a checked-types metaclass. 2018-07-17T04:00:06Z xsperry: Bike interesting! I'll play with your and equal's code. I am curious, and I must be missing something, but why would the other thing require silly level of hacks? ((x 10) 20) is only legal in CL if x is lambda, as far as I know. so can't we just prepend all ((x .. ) .. ) forms with funcall? 2018-07-17T04:00:06Z aeth: I stripped out as much as I could and I've been changing around as much as I can in those 50ish lines for the past few hours 2018-07-17T04:00:21Z xsperry: equwal* 2018-07-17T04:00:28Z Bike: xsperry: there is no mechanism to do such prepension. 2018-07-17T04:00:32Z Bike: is that a word? oh well. 2018-07-17T04:00:45Z Bike: prépension is, in french 2018-07-17T04:00:58Z equwal: Look at Bike's solution, or https://rosettacode.org/wiki/Partial_function_application#Common_Lisp for a macroless thing that messes with the symbol table. 2018-07-17T04:01:05Z equwal: My solution is worse. 2018-07-17T04:01:33Z aeth: Doesn't Alexandria have partial function application with curry/rcurry? 2018-07-17T04:01:52Z equwal: But you can't ((f 10) 20) without scheme. I'm trying to recall why, but I suspect Bike knows the specific reason. 2018-07-17T04:01:53Z Bike: yes. it's essentially like the definition on rosetta here, though maybe with a compiler macro too 2018-07-17T04:02:06Z Bike: xsperry said why already. only ((lambda ...) ...) is legal 2018-07-17T04:02:10Z fikka quit (Ping timeout: 264 seconds) 2018-07-17T04:02:15Z Bike: that's just syntax. 2018-07-17T04:02:32Z loke: aeth: This works for me: http://pasted.co/17ab6e8e 2018-07-17T04:02:34Z equwal: But ((f 10) 20) works in Scheme, because that's just the syntax. 2018-07-17T04:03:24Z Bike: yes. 2018-07-17T04:03:52Z loke: Technically, it works in scheme because the first element in a form is evaluated, while it isn't in CL 2018-07-17T04:04:10Z Zhivago: You can ((lambda (x) (+ x 1)) 2) if you like. 2018-07-17T04:04:42Z Guest123` joined #lisp 2018-07-17T04:04:58Z Zhivago: There is no principled reason that ((f 10 ) 20) shouldn't work in CL also -- it's just not supported. 2018-07-17T04:05:03Z equwal: Okay then. 2018-07-17T04:06:49Z LdBeth: It’s still possible for (#c(f 10) 20) to work 2018-07-17T04:06:52Z xsperry: just so we are both on the same page, I am talking about this syntax only working in custom macro, that would walk the entire tree, and prend funcall to all such forms where car is a list. why wouldn't this work? 2018-07-17T04:06:57Z xsperry: s/both/all 2018-07-17T04:07:31Z Bike: oh. that wouldn't work because you can't really walk code simply like that. 2018-07-17T04:08:00Z Oladon quit (Quit: Leaving.) 2018-07-17T04:08:09Z LdBeth: xsperry: (let (funcall (x 10) ... 2018-07-17T04:08:57Z LdBeth: If the macro is two simple, it’s very possible to get get invalid code 2018-07-17T04:09:18Z vaporatorius quit (Remote host closed the connection) 2018-07-17T04:09:23Z Guest123` quit (Remote host closed the connection) 2018-07-17T04:10:44Z rumbler31 joined #lisp 2018-07-17T04:11:18Z xsperry: good example.. it would break all the macros where ((..)) is legal 2018-07-17T04:12:47Z brettgilio joined #lisp 2018-07-17T04:13:12Z xsperry: and we can't just check if ((x ..) ..) x is a function. because even if it is, (let ((x 10)) ..) should still be left untouched 2018-07-17T04:14:16Z loke: Technically, it works in scheme because the first element in a form is evaluated, while it isn't in CL 2018-07-17T04:14:19Z loke: Oops 2018-07-17T04:14:21Z equwal: Looks like parser stuff to me. 2018-07-17T04:14:37Z equwal: loke: what makes you sure that is why? 2018-07-17T04:14:50Z loke: equwal: Well, it's more complicated than that 2018-07-17T04:15:19Z loke: Even if CL did evaluate the first element, you wouldn't get Scheme's behaviour 2018-07-17T04:15:21Z karlosz quit (Ping timeout: 256 seconds) 2018-07-17T04:15:23Z rumbler31 quit (Ping timeout: 268 seconds) 2018-07-17T04:15:27Z aeth: loke: The problem is slot 2018-07-17T04:15:44Z Bike: oh, shit, wait 2018-07-17T04:15:51Z loke: equwal: The problem is that you can have separate value and function bindings for a symbol. 2018-07-17T04:15:52Z Bike: you subclassed DIRECT slot definition 2018-07-17T04:15:54Z Bike: Doh 2018-07-17T04:16:26Z Bike: hm or maybe that's not it 2018-07-17T04:16:30Z aeth: Bike: I already thought of that. My current version subclasses standard-slot-definition and then I have double-inheriting versions for direct and effective 2018-07-17T04:16:52Z equwal: loke: in other words it is tangentially related to the lisp-1 lisp-2 debate we started out with. 2018-07-17T04:17:31Z loke: Here's the most recent code I wrote that implemented a custom metaclass and overriding SLOT-VALUE-USING-CLASS: 2018-07-17T04:17:32Z loke: https://github.com/cicakhq/potato/blob/master/src/potato/metaclasses.lisp#L180 2018-07-17T04:17:57Z aeth: Bike: Okay, so I do get the side effect if I have the signatures (new-value (class checked-types) object slot) and ((class checked-types) object slot) 2018-07-17T04:18:11Z aeth: And if I make the side effect (format t "~S~%" (class-of slot)) I get # 2018-07-17T04:18:28Z equwal: xsperry: I think you could get what you want by messing around with a parser. Flip to page 26 of SICP for details. There are problems with this kind of compiler, but whatever. http://web.mit.edu/alexmv/6.037/sicp.pdf 2018-07-17T04:18:44Z Bike: mop effective-slot-de-cl 2018-07-17T04:18:44Z specbot: Couldn't find anything for effective-slot-de-cl. 2018-07-17T04:18:54Z Bike: mop effective-slot-definition-class 2018-07-17T04:18:54Z specbot: http://metamodular.com/CLOS-MOP/effective-slot-definition-class.html 2018-07-17T04:19:31Z Bike: mm, maybe since you didn't define a method on compute-slots, it loses the :checked-type initarg 2018-07-17T04:19:50Z Bike: er not that one 2018-07-17T04:20:14Z Bike: the... slot mixy one.... 2018-07-17T04:20:24Z Bike: compute-effective-slot-definition. that one 2018-07-17T04:20:32Z equwal: so the substitution model, replace ((f 10) 20) where f is definted using Bike's schonfinkel with ((lambda f (10)) 20) and you are in business. 2018-07-17T04:21:22Z equwal: But really at this point I feel like hairs are being split. 2018-07-17T04:21:34Z loke: equwal: It could, but what would you do if F returns a symbol? 2018-07-17T04:22:21Z equwal: I see. 2018-07-17T04:23:28Z aeth: This is what I have right now, btw, for the people following along. https://gitlab.com/zombie-raptor/zombie-raptor/blob/bbcfec7857cd8e7b38f9c27c875c8bf2ea879377/util/util.lisp#L445-487 2018-07-17T04:23:38Z loke: equwal: You could probably define (X ...) to be equivalent to (funcall X ...), but that was never done. 2018-07-17T04:23:43Z aeth: (And, yes, I'm commiting semi-broken code straight to master, which is evil.) 2018-07-17T04:23:44Z Bike: i'm sticking with my diagnosis 2018-07-17T04:24:30Z Kundry_Wag joined #lisp 2018-07-17T04:24:30Z equwal: loke: Yeah, I think the easiest way is to merge the symbol and function tables into a Lisp-1 at this point. 2018-07-17T04:24:55Z loke: equwal: Easy, yes. That's why Scheme did it. They wanted to be simple. It's less useful though. 2018-07-17T04:26:25Z Zhivago: It doesn't matter for this -- given (a b c) which has been macroexpanded to evaluate, a names a function. Allowing a to be a function name producing form wouldn't affect lisp-1 vs lisp-2. 2018-07-17T04:26:35Z aeth: Well, I didn't import standard-effective-slot-definition and I did *NOT* get an error. Fixing that didn't fix it, though. 2018-07-17T04:26:51Z Bike: hey. aeth. compute-effective-slot-definition. i'm tellin ya 2018-07-17T04:26:53Z aeth: Apparently you can just inherit from random non-existent things without issues 2018-07-17T04:27:08Z Bike: forward referencing a superclass, sure. 2018-07-17T04:27:16Z Bike: there'd be a problem if yuou were actually instantiating the class, but you aren't 2018-07-17T04:28:12Z terpri joined #lisp 2018-07-17T04:28:29Z equwal: Zhivago: The loke asked what if #'a produces a symbol name. The answer is everything breaks because we are in a lisp-2 2018-07-17T04:29:09Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-17T04:31:03Z marusich quit (Quit: Leaving) 2018-07-17T04:32:34Z zfree quit (Read error: Connection reset by peer) 2018-07-17T04:32:57Z aeth: Bike: What is compute-effective-slot-definition supposed to return? 2018-07-17T04:33:15Z Bike: it takes a list of all the inherited direct slot definitions and returns an effective slot definition 2018-07-17T04:33:29Z Bike: the standard method doesn't know jack about your class and its extra slot, so it ignores it 2018-07-17T04:33:42Z Bike: bye 2018-07-17T04:33:43Z Bike quit (Quit: Lost terminal) 2018-07-17T04:34:38Z equwal: / 2018-07-17T04:34:41Z equwal: / 2018-07-17T04:39:03Z loke: Here's my implementation of said method: https://github.com/cicakhq/potato/blob/master/src/potato/metaclasses.lisp#L109 2018-07-17T04:40:40Z equwal: | | \ \ / /|----- 2018-07-17T04:40:40Z equwal: | | \ \/ / | 2018-07-17T04:40:40Z equwal: | |__ \ / |----- 2018-07-17T04:40:40Z equwal: | _ | / / | 2018-07-17T04:40:43Z equwal: ||_| | / / | 2018-07-17T04:40:46Z equwal: |____| / / |----- 2018-07-17T04:40:51Z equwal left #lisp 2018-07-17T04:43:44Z zfree joined #lisp 2018-07-17T04:44:21Z Guest39745 quit (Ping timeout: 240 seconds) 2018-07-17T04:45:56Z LdBeth: gg, I believe it’s easier to work out a basic lambda calculator rather than hacking on CL’s read and eval behavior 2018-07-17T04:46:34Z zfree quit (Remote host closed the connection) 2018-07-17T04:47:33Z pierpal quit (Quit: Poof) 2018-07-17T04:47:51Z pierpal joined #lisp 2018-07-17T04:51:13Z brettgilio quit (Remote host closed the connection) 2018-07-17T04:52:52Z fikka joined #lisp 2018-07-17T04:57:51Z fikka quit (Ping timeout: 256 seconds) 2018-07-17T05:00:11Z zfree joined #lisp 2018-07-17T05:00:44Z Inline quit (Quit: Leaving) 2018-07-17T05:01:22Z orivej joined #lisp 2018-07-17T05:04:44Z zfree quit (Client Quit) 2018-07-17T05:05:03Z aeth: Is there a way to get the return value of a method when I'm in an :after method? 2018-07-17T05:05:25Z loke: aeth: no 2018-07-17T05:05:39Z aeth: compute-effective-slot-definition is simply too complicated, but if I can take the end result of it and set the unbound check-type value then everything would work 2018-07-17T05:05:40Z loke: aethUse :AROUND for that. 2018-07-17T05:06:48Z kajo quit (Ping timeout: 256 seconds) 2018-07-17T05:07:52Z kajo joined #lisp 2018-07-17T05:08:20Z pierpal quit (Quit: Poof) 2018-07-17T05:08:39Z pierpal joined #lisp 2018-07-17T05:08:44Z shka1 joined #lisp 2018-07-17T05:14:53Z zfree joined #lisp 2018-07-17T05:15:20Z zfree quit (Client Quit) 2018-07-17T05:17:55Z orivej quit (Ping timeout: 244 seconds) 2018-07-17T05:18:00Z aeth: Okay, so the issue is here: https://github.com/sbcl/sbcl/blob/c5db3dca77303b6f0601601e064c0a3b05deb4a8/src/pcl/std-class.lisp#L1210-L1214 2018-07-17T05:18:35Z aeth: In my effective-slot-definition-class method, I was checking for checked-type. If checked-type was present, I returned (find-class 'effective-slot-with-checked-type) and otherwise I returned (call-next-method) 2018-07-17T05:18:45Z aeth: checked-type is always nil 2018-07-17T05:19:01Z aeth: This is because the initargs are (compute-effective-slot-definition-initargs class dslotds) 2018-07-17T05:19:15Z aeth: They're hardcoded to be the standard initargs 2018-07-17T05:19:29Z vlatkoB joined #lisp 2018-07-17T05:20:20Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T05:22:10Z beach: Good morning everyone! 2018-07-17T05:22:10Z Colleen: beach: karlosz said 8 hours, 52 minutes ago: yes, thats the special casing i am talking about 2018-07-17T05:22:10Z Colleen: beach: karlosz said 8 hours, 30 minutes ago: also, you surely must mean right hand side of the assignmnet 2018-07-17T05:22:10Z Colleen: beach: karlosz said 8 hours, 15 minutes ago: err, scratch that. the variable being assigned to is what we both mean. its not a terribly complex special case to add, but i fear that any manipulation with assignment instructions will end up having to test for something similar 2018-07-17T05:22:40Z ntqz joined #lisp 2018-07-17T05:22:40Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T05:27:44Z kerrhau quit (Ping timeout: 276 seconds) 2018-07-17T05:29:34Z ntqz joined #lisp 2018-07-17T05:29:38Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T05:30:08Z ntqz joined #lisp 2018-07-17T05:36:40Z drduck` joined #lisp 2018-07-17T05:39:06Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T05:41:00Z EvW joined #lisp 2018-07-17T05:41:24Z ntqz joined #lisp 2018-07-17T05:41:41Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T05:41:51Z ofi joined #lisp 2018-07-17T05:44:04Z ntqz joined #lisp 2018-07-17T05:44:04Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T05:45:27Z EvW quit (Ping timeout: 256 seconds) 2018-07-17T05:45:34Z aindilis joined #lisp 2018-07-17T05:46:22Z ntqz joined #lisp 2018-07-17T05:47:19Z fikka joined #lisp 2018-07-17T05:50:52Z himmAllRIght17 quit (Ping timeout: 256 seconds) 2018-07-17T05:51:59Z fikka quit (Ping timeout: 260 seconds) 2018-07-17T05:52:13Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T05:53:03Z himmAllRIght17 joined #lisp 2018-07-17T05:54:34Z ntqz joined #lisp 2018-07-17T05:56:38Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T05:58:45Z aeth: loke: Well, now it works in SBCL and CCL. https://gitlab.com/zombie-raptor/zombie-raptor/blob/6f0360991ee3f27f4a918397d98a6713dd1211ca/util/util.lisp#L447-495 2018-07-17T05:58:52Z aeth: Using assert with typep instead of check-type is ugly, though 2018-07-17T05:58:59Z ntqz joined #lisp 2018-07-17T06:00:09Z aeth: Apparently I can't use change-class with the MOP slot classes so the only way I could think of writing the implementation via :around is to make them all effective-slot-with-checked-type and use nil for the ones that don't actually have a type to check. 2018-07-17T06:00:14Z MichaelRaskin quit (Quit: MichaelRaskin) 2018-07-17T06:00:14Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T06:02:32Z ntqz joined #lisp 2018-07-17T06:04:02Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T06:05:20Z robotoad quit (Quit: robotoad) 2018-07-17T06:05:53Z Kundry_Wag joined #lisp 2018-07-17T06:06:24Z ntqz joined #lisp 2018-07-17T06:06:25Z impulse- quit (Ping timeout: 248 seconds) 2018-07-17T06:10:06Z saki quit (Quit: saki) 2018-07-17T06:10:42Z Kundry_Wag quit (Ping timeout: 268 seconds) 2018-07-17T06:13:27Z shka1 quit (Ping timeout: 240 seconds) 2018-07-17T06:14:39Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T06:17:00Z ntqz joined #lisp 2018-07-17T06:17:38Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T06:18:18Z ofi quit (Remote host closed the connection) 2018-07-17T06:20:00Z ntqz joined #lisp 2018-07-17T06:21:49Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T06:22:44Z flamebeard joined #lisp 2018-07-17T06:24:05Z ntqz joined #lisp 2018-07-17T06:24:19Z ebzzry quit (Quit: WeeChat 2.1) 2018-07-17T06:25:24Z flamebeard quit (Client Quit) 2018-07-17T06:28:51Z snits quit (Ping timeout: 240 seconds) 2018-07-17T06:28:51Z igemnace joined #lisp 2018-07-17T06:29:08Z snits joined #lisp 2018-07-17T06:30:21Z xaotuk joined #lisp 2018-07-17T06:31:10Z ebzzry joined #lisp 2018-07-17T06:32:31Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T06:33:27Z scymtym quit (Ping timeout: 240 seconds) 2018-07-17T06:33:52Z impulse joined #lisp 2018-07-17T06:34:48Z ntqz joined #lisp 2018-07-17T06:35:27Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T06:37:16Z xificurC joined #lisp 2018-07-17T06:37:49Z ntqz joined #lisp 2018-07-17T06:39:19Z fikka joined #lisp 2018-07-17T06:39:49Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T06:41:38Z Folkol_ joined #lisp 2018-07-17T06:42:11Z ntqz joined #lisp 2018-07-17T06:44:47Z ofi joined #lisp 2018-07-17T06:46:47Z ravndal quit (Ping timeout: 244 seconds) 2018-07-17T06:49:51Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T06:52:16Z ntqz joined #lisp 2018-07-17T06:52:45Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T06:55:06Z ntqz joined #lisp 2018-07-17T06:55:10Z Smokitch joined #lisp 2018-07-17T06:57:03Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T06:57:34Z impulse quit (Ping timeout: 268 seconds) 2018-07-17T06:59:35Z ntqz joined #lisp 2018-07-17T07:00:10Z flamebeard joined #lisp 2018-07-17T07:00:30Z ravndal joined #lisp 2018-07-17T07:06:42Z saki joined #lisp 2018-07-17T07:07:30Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T07:07:46Z gousuto quit (Read error: Connection reset by peer) 2018-07-17T07:08:12Z gousuto joined #lisp 2018-07-17T07:08:12Z gousuto quit (Changing host) 2018-07-17T07:08:12Z gousuto joined #lisp 2018-07-17T07:08:39Z gousuto quit (Read error: Connection reset by peer) 2018-07-17T07:09:02Z gousuto joined #lisp 2018-07-17T07:09:02Z gousuto quit (Changing host) 2018-07-17T07:09:02Z gousuto joined #lisp 2018-07-17T07:09:50Z ntqz joined #lisp 2018-07-17T07:09:54Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T07:10:26Z xaotuk quit (Ping timeout: 276 seconds) 2018-07-17T07:10:27Z igemnace quit (Quit: WeeChat 2.2) 2018-07-17T07:10:28Z ntqz joined #lisp 2018-07-17T07:10:59Z rumbler31 joined #lisp 2018-07-17T07:11:51Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T07:12:55Z scymtym joined #lisp 2018-07-17T07:13:12Z shrdlu68 joined #lisp 2018-07-17T07:13:42Z angavrilov joined #lisp 2018-07-17T07:13:48Z Guest39745 joined #lisp 2018-07-17T07:14:13Z ntqz joined #lisp 2018-07-17T07:14:48Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T07:14:52Z schweers` joined #lisp 2018-07-17T07:17:07Z ntqz joined #lisp 2018-07-17T07:18:27Z shrdlu68 quit (Ping timeout: 240 seconds) 2018-07-17T07:18:51Z schweers quit (Ping timeout: 240 seconds) 2018-07-17T07:19:12Z shrdlu68 joined #lisp 2018-07-17T07:21:32Z impulse joined #lisp 2018-07-17T07:24:30Z shrdlu68 quit (Ping timeout: 256 seconds) 2018-07-17T07:24:52Z shrdlu68 joined #lisp 2018-07-17T07:25:22Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T07:25:27Z gravicappa joined #lisp 2018-07-17T07:26:10Z Kundry_Wag joined #lisp 2018-07-17T07:27:57Z ntqz joined #lisp 2018-07-17T07:28:28Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T07:30:10Z shrdlu68 quit (Ping timeout: 256 seconds) 2018-07-17T07:30:28Z mflem quit (Read error: Connection reset by peer) 2018-07-17T07:30:44Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-17T07:30:49Z ntqz joined #lisp 2018-07-17T07:31:02Z shrdlu68 joined #lisp 2018-07-17T07:32:51Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T07:35:11Z ntqz joined #lisp 2018-07-17T07:35:42Z housel quit (Read error: Connection reset by peer) 2018-07-17T07:36:58Z shrdlu68 quit (Ping timeout: 264 seconds) 2018-07-17T07:37:13Z shrdlu68 joined #lisp 2018-07-17T07:37:33Z gousuto quit (Read error: Connection reset by peer) 2018-07-17T07:41:17Z rumbler31 quit (Remote host closed the connection) 2018-07-17T07:42:21Z fikka quit (Quit: leaving) 2018-07-17T07:42:40Z fikka joined #lisp 2018-07-17T07:42:49Z shrdlu68 quit (Ping timeout: 260 seconds) 2018-07-17T07:43:22Z shrdlu68 joined #lisp 2018-07-17T07:43:52Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T07:45:05Z araujo quit (Ping timeout: 248 seconds) 2018-07-17T07:47:39Z schweers` quit (Remote host closed the connection) 2018-07-17T07:48:18Z ntqz joined #lisp 2018-07-17T07:48:47Z shrdlu68 quit (Ping timeout: 244 seconds) 2018-07-17T07:49:32Z shrdlu68 joined #lisp 2018-07-17T07:50:42Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T07:52:02Z ofi quit (Remote host closed the connection) 2018-07-17T07:53:00Z ntqz joined #lisp 2018-07-17T07:53:12Z ofi joined #lisp 2018-07-17T07:53:22Z capisce quit (Read error: No route to host) 2018-07-17T07:53:30Z capisce joined #lisp 2018-07-17T07:53:35Z shrdlu68 quit (Ping timeout: 240 seconds) 2018-07-17T07:54:41Z shrdlu68 joined #lisp 2018-07-17T07:58:54Z makomo joined #lisp 2018-07-17T07:59:07Z shrdlu68 quit (Client Quit) 2018-07-17T08:01:12Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T08:02:35Z hhdave joined #lisp 2018-07-17T08:03:51Z ntqz joined #lisp 2018-07-17T08:03:53Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T08:04:27Z ntqz joined #lisp 2018-07-17T08:05:04Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T08:05:21Z Oddity quit (Read error: Connection reset by peer) 2018-07-17T08:06:35Z mange quit (Remote host closed the connection) 2018-07-17T08:06:52Z milanj__ joined #lisp 2018-07-17T08:06:59Z heisig joined #lisp 2018-07-17T08:09:28Z ntqz joined #lisp 2018-07-17T08:11:36Z MoziM joined #lisp 2018-07-17T08:13:57Z saki quit (Ping timeout: 240 seconds) 2018-07-17T08:15:35Z Oddity joined #lisp 2018-07-17T08:16:17Z saki joined #lisp 2018-07-17T08:16:45Z impulse quit (Ping timeout: 256 seconds) 2018-07-17T08:18:00Z Murii__ joined #lisp 2018-07-17T08:18:12Z Kundry_Wag joined #lisp 2018-07-17T08:18:59Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T08:21:06Z faraco joined #lisp 2018-07-17T08:21:07Z faraco quit (Changing host) 2018-07-17T08:21:07Z faraco joined #lisp 2018-07-17T08:21:36Z subroot joined #lisp 2018-07-17T08:22:59Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-17T08:23:23Z ntqz joined #lisp 2018-07-17T08:23:42Z rozenglass quit (Read error: Connection reset by peer) 2018-07-17T08:23:49Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T08:24:17Z impulse joined #lisp 2018-07-17T08:26:16Z ntqz joined #lisp 2018-07-17T08:26:22Z panji joined #lisp 2018-07-17T08:26:54Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T08:29:15Z ntqz joined #lisp 2018-07-17T08:36:13Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T08:36:19Z faraco quit (Quit: Leaving) 2018-07-17T08:38:35Z ntqz joined #lisp 2018-07-17T08:38:42Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T08:39:14Z ntqz joined #lisp 2018-07-17T08:42:57Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T08:44:35Z dddddd joined #lisp 2018-07-17T08:46:21Z _cosmonaut_ joined #lisp 2018-07-17T08:47:47Z ntqz joined #lisp 2018-07-17T08:48:02Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T08:50:21Z ntqz joined #lisp 2018-07-17T08:53:53Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T08:55:05Z lumm joined #lisp 2018-07-17T08:55:11Z subroot quit (Read error: Connection reset by peer) 2018-07-17T08:58:23Z ntqz joined #lisp 2018-07-17T09:01:16Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T09:03:33Z ntqz joined #lisp 2018-07-17T09:06:02Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T09:06:57Z light2yellow joined #lisp 2018-07-17T09:10:41Z ntqz joined #lisp 2018-07-17T09:11:04Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T09:13:22Z ntqz joined #lisp 2018-07-17T09:13:45Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T09:16:02Z ntqz joined #lisp 2018-07-17T09:16:58Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T09:19:17Z ntqz joined #lisp 2018-07-17T09:21:57Z FreeBirdLjj joined #lisp 2018-07-17T09:26:39Z FreeBirdLjj quit (Ping timeout: 260 seconds) 2018-07-17T09:28:57Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T09:31:20Z ntqz joined #lisp 2018-07-17T09:31:46Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T09:34:24Z shka: hello 2018-07-17T09:34:36Z shka: i have question regarding changelog of sbcl 1.4.3 2018-07-17T09:34:41Z shka: "bug fix: fixed heap exhaustion bug when consing millions of small objects " 2018-07-17T09:35:06Z shka: how this would manifest? 2018-07-17T09:35:15Z shka: just heap exhausted game over? 2018-07-17T09:35:21Z m00natic joined #lisp 2018-07-17T09:35:39Z random-nick joined #lisp 2018-07-17T09:36:40Z ntqz joined #lisp 2018-07-17T09:37:24Z Murii__ quit (Quit: Salve) 2018-07-17T09:37:36Z Murii joined #lisp 2018-07-17T09:41:53Z panji quit (Ping timeout: 248 seconds) 2018-07-17T09:46:26Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T09:53:12Z ntqz joined #lisp 2018-07-17T09:55:43Z nirved joined #lisp 2018-07-17T10:01:16Z nirved quit (Quit: Leaving) 2018-07-17T10:03:29Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T10:05:51Z ntqz joined #lisp 2018-07-17T10:06:29Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T10:08:37Z Kundry_Wag joined #lisp 2018-07-17T10:10:48Z ntqz joined #lisp 2018-07-17T10:10:48Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T10:13:03Z ntqz joined #lisp 2018-07-17T10:13:29Z Kundry_Wag quit (Ping timeout: 244 seconds) 2018-07-17T10:21:15Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T10:23:30Z ntqz joined #lisp 2018-07-17T10:24:16Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T10:25:30Z Folkol_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-17T10:26:33Z jmercouris joined #lisp 2018-07-17T10:26:37Z ntqz joined #lisp 2018-07-17T10:26:55Z jmercouris: can someone explain this? (REDUCE #'* NIL) -> 1 (REDUCE #'+ NIL)-> 0 2018-07-17T10:28:06Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T10:28:54Z jmercouris: it makes literally no sense to me 2018-07-17T10:29:26Z jackdaniel: jmercouris: it is enough to look in the spec for definition of * and + functions 2018-07-17T10:29:37Z jackdaniel: and how they behave if no numbers are supplied 2018-07-17T10:29:50Z jmercouris: I see 2018-07-17T10:29:54Z jmercouris: and why is * -> 1? 2018-07-17T10:29:59Z trittweiler: shka: You can git blame NEWS in the sbcl git repository, to determine which commit the changelog entry is about. Usually, changes come with tests. See https://github.com/sbcl/sbcl/commit/dfddbc8ada - you could try that test in sbcl 1.4.2 to see exactly what happens. But yes, to me that reads like game over. 2018-07-17T10:30:23Z ntqz joined #lisp 2018-07-17T10:30:23Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T10:30:29Z beach: jmercouris: It's the neutral element for multiplication. 2018-07-17T10:30:36Z jackdaniel: because (*) is by definition = 1, part of the spec. it is only natural, because neutral element for multiplication is 1 2018-07-17T10:30:43Z jackdaniel: heh, too late 2018-07-17T10:30:54Z jmercouris: I understand it doesn't effect the value 2018-07-17T10:30:58Z jmercouris: but why wouldn't it instead return an error? 2018-07-17T10:31:06Z jmercouris: like insufficient number of parameters or something? 2018-07-17T10:31:13Z LdBeth: It’s very natural from a math perspective 2018-07-17T10:31:18Z jmercouris: is there some implementation reason? or is it just so defined? 2018-07-17T10:31:35Z beach: jmercouris: It is defined that way in mathematics and in Common Lisp. 2018-07-17T10:31:42Z trittweiler: jmercouris, it is defined so to play nicely with REDUCE :) 2018-07-17T10:32:05Z jackdaniel: you would be suprised what happens, if you supply negative number of arguments, try it! :-) 2018-07-17T10:32:09Z Folkol quit (Read error: Connection reset by peer) 2018-07-17T10:32:09Z jmercouris: so when I write 5 * 5 = 10, I'm really writing 5 1 5 = 10? 2018-07-17T10:32:18Z beach: No. 2018-07-17T10:32:19Z AetherWind quit (Quit: Leaving) 2018-07-17T10:32:35Z beach: And it is 25. 2018-07-17T10:32:38Z jmercouris: lol 2018-07-17T10:32:40Z jmercouris: sorry 2018-07-17T10:32:42Z ntqz joined #lisp 2018-07-17T10:32:51Z jmercouris: whoops :D 2018-07-17T10:33:30Z jmercouris: okay, so to multiply something, we agree that you need at least two values, right? 2018-07-17T10:33:40Z DataLinkDroid joined #lisp 2018-07-17T10:33:41Z jackdaniel: um, no? 2018-07-17T10:33:47Z LdBeth: No 2018-07-17T10:33:47Z trittweiler: shka, there should also be a mail on sbcl-devel around dec 4, 2017, about this problem - as per the commit message 2018-07-17T10:33:55Z jmercouris: Okay, explain to me, how multiplication of a single value works? 2018-07-17T10:34:12Z jackdaniel: (* n) === n 2018-07-17T10:34:13Z jmercouris: as far as I am concerned, you need a source number, and a multiple 2018-07-17T10:34:22Z beach: jmercouris: https://en.wikipedia.org/wiki/Product_(mathematics) 2018-07-17T10:34:28Z jmercouris: you've still provided a multiple, but it is just a value of 1 2018-07-17T10:34:30Z varjag joined #lisp 2018-07-17T10:34:31Z beach: . The product of no factors at all is known as the empty product, and is equal to 1. 2018-07-17T10:35:15Z beach: jmercouris: Under "Product of sequences" on that page. 2018-07-17T10:36:05Z jackdaniel: do you have *any* practical purpose of these questions, or you just broadly share your amusement? (given you know [from the spec] how * and + functions work when supplied with 0 arguments)? 2018-07-17T10:36:06Z jmercouris: okay 2018-07-17T10:36:09Z jmercouris: so I knew it was just bullshit 2018-07-17T10:36:12Z jmercouris: https://en.wikipedia.org/wiki/Empty_product 2018-07-17T10:36:18Z Folkol joined #lisp 2018-07-17T10:36:20Z jmercouris: "It is by convention equal to the multiplicative identity 1 " 2018-07-17T10:36:37Z shka: trittweiler: i will try to dig this out 2018-07-17T10:36:37Z jmercouris: I need to know all the way down why something is the way it is 2018-07-17T10:36:46Z beach: Why is that "bullshit"? 2018-07-17T10:36:55Z scymtym: jmercouris: (*) emulates a syntactic convention from mathematics that is convenient for associative operations with a neutral element. consider (list (* 1 2 3 4) (* (* 1 2) (* 3 4)) (* (* 1) (* 2 3 4)) (* (*) (* 1 2 3 4))) 2018-07-17T10:36:56Z jmercouris: because it is just convention 2018-07-17T10:37:03Z jmercouris: there is not a reason behind it 2018-07-17T10:37:12Z beach: It's a very practical convention. 2018-07-17T10:37:19Z jmercouris: practical it may be, but it is still arbitrary 2018-07-17T10:37:29Z beach: No, it is not arbitrary. 2018-07-17T10:37:38Z _death: conventions aren't necessarily arbitrary.. 2018-07-17T10:37:44Z beach: Having it be 0 or 32 by convention would not work. 2018-07-17T10:37:47Z jmercouris: okay, fine, it is not arbitrary, but it is still not grounded in something that satisfies me 2018-07-17T10:37:58Z beach: jmercouris: That's VERY DIFFERENT. 2018-07-17T10:38:06Z jmercouris: at least I now understand though, kind of 2018-07-17T10:38:41Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T10:38:44Z LdBeth: Because I math it’s even valid for 0/0 2018-07-17T10:38:45Z beach: jmercouris: You may want to try (AND) and (OR) in addition to (+) and (*) 2018-07-17T10:39:04Z jmercouris: beach: what do you mean? 2018-07-17T10:39:23Z beach: I mean, you might want to type those forms as well. 2018-07-17T10:39:25Z jackdaniel: jmercouris: since you want to dig from the groud up to computing, start here: https://en.wikipedia.org/wiki/Abelian_group 2018-07-17T10:39:38Z jackdaniel: and see you in 10y when you finish with studying math basics ;-) 2018-07-17T10:40:07Z scymtym: jackdaniel: commutativity is not needed, though 2018-07-17T10:40:12Z jmercouris: jackdaniel: I'm okay without :D, perhaps my curiousity is not as strong as I thought 2018-07-17T10:40:23Z beach: Apparently. 2018-07-17T10:40:27Z beach: It ought to be though. 2018-07-17T10:40:49Z jmercouris: beach: I like computer science, but I don't like math 2018-07-17T10:40:50Z beach: Intellectual curiosity is the basis of much learning. 2018-07-17T10:40:53Z loke: However... The single-argument version of ‘/’ _is_ arbitrary though (but useful) 2018-07-17T10:40:56Z loke: Yes? 2018-07-17T10:40:59Z jmercouris: I hve a deep distaste for math 2018-07-17T10:41:01Z ntqz joined #lisp 2018-07-17T10:41:02Z jmercouris: s/hve/have 2018-07-17T10:41:09Z beach: jmercouris: I am sorry to hear that. 2018-07-17T10:41:12Z jackdaniel: it is not something to brag about 2018-07-17T10:41:22Z jmercouris: jackdaniel: am I bragging? 2018-07-17T10:41:25Z jackdaniel: scymtym: you mean operations on floats? 2018-07-17T10:41:41Z jmercouris: I am simply being honest 2018-07-17T10:41:51Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T10:41:55Z jackdaniel: (and such:) 2018-07-17T10:41:56Z jmercouris: it's not like I am proud or anything, I don't think I've ever brought it up on this channel before 2018-07-17T10:42:19Z LdBeth: I should look at J’s introductory, i remember there’s a section gives a explain about that 2018-07-17T10:42:27Z gigetoo quit (Ping timeout: 240 seconds) 2018-07-17T10:42:41Z LdBeth: See you in few minutes 2018-07-17T10:42:48Z jmercouris: beach: Yeah, it is because math is quite difficult for me, at least certain types of math, I'm very good at geometry, physics, but not so good with discrete mathematics and algebra 2018-07-17T10:42:56Z scymtym: jackdaniel: an Abelian group is a group plus commutativity if i recall correctly, but the commutativity is not relevant to this discussion (i completely agree with pointing out the concept of a group as the underlying reason, though) 2018-07-17T10:43:12Z jackdaniel: ah, OK 2018-07-17T10:43:15Z jackdaniel: I misunderstood 2018-07-17T10:43:56Z fikka quit (Ping timeout: 244 seconds) 2018-07-17T10:44:14Z ntqz joined #lisp 2018-07-17T10:44:37Z xsperry quit (Quit: CGI:IRC (Session timeout)) 2018-07-17T10:44:58Z pioneer42 left #lisp 2018-07-17T10:47:57Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T10:49:13Z MoziM quit (Quit: WeeChat 2.1) 2018-07-17T10:49:51Z xaotuk joined #lisp 2018-07-17T10:49:57Z BitPuffin joined #lisp 2018-07-17T10:50:05Z gigetoo joined #lisp 2018-07-17T10:51:51Z Posterdati quit (Ping timeout: 240 seconds) 2018-07-17T10:52:26Z ntqz joined #lisp 2018-07-17T10:53:21Z LdBeth: Well, then, J just tells 0 = +/ 0$0, 1 = */ 0$0,and I have to explain what’s identity and rank to make it more clean. So i give up. 2018-07-17T10:53:31Z jmercouris: I guess the real problem with languages like python is primitive operators change the function order 2018-07-17T10:53:39Z jmercouris: so normally you might say in python function_call(x, y z) 2018-07-17T10:53:49Z jmercouris: but of course for the + operator you nest it between two numbers 2018-07-17T10:54:03Z jmercouris: so the order is now different, which makes it impossible to express nil * nil 2018-07-17T10:54:19Z jmercouris: of course removing "nil" and replacing it with nothing 2018-07-17T10:54:30Z jmercouris: https://en.wikipedia.org/wiki/Empty_product#In_computer_programming 2018-07-17T10:55:38Z shka: python has multiple problems 2018-07-17T10:56:04Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T10:58:17Z fikka joined #lisp 2018-07-17T10:58:22Z ntqz joined #lisp 2018-07-17T10:58:28Z heisig: Which are, luckily, off-topic :) 2018-07-17T10:58:50Z shka: well, cl also has problems 2018-07-17T10:58:57Z beach: Nah! 2018-07-17T10:59:03Z jmercouris: I think it has a few 2018-07-17T10:59:13Z jmercouris: but I haven't really mastered the language enough to truly criticize it 2018-07-17T10:59:24Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T10:59:30Z jmercouris: I can only say that the naming conventions, and the argument order are very confusing frequently 2018-07-17T10:59:47Z shka: but at least cl seems to be more solidly designed 2018-07-17T11:00:25Z shka: probabbly, one extra standard version would fix everything that is suboptimal 2018-07-17T11:00:34Z orivej joined #lisp 2018-07-17T11:00:54Z jmercouris: I would be very much in favor of this, but I understand it would take a lot of work from many people 2018-07-17T11:01:44Z ntqz joined #lisp 2018-07-17T11:01:45Z LdBeth: A superset language is easier than new specification 2018-07-17T11:02:01Z jmercouris: Yes, this argument comes up every time, and it is valid, but it would feel nice to have a new specification 2018-07-17T11:02:10Z beach: There are SO many more important things to do than to update the standard this way. 2018-07-17T11:02:20Z jmercouris: something about a new, unified, super squeaky clean spec sounds nice to me 2018-07-17T11:02:31Z tfb: I think the diffference is that, if you feel that CL is creaky (which I do slightly, now), you can, in almost all cases, make your own variant which is not and which will run on top of the existing language. You can't do that in Python without serious pain 2018-07-17T11:03:32Z LdBeth: jmercouris: schemers wrong door : P 2018-07-17T11:04:05Z xaotuk quit (Ping timeout: 240 seconds) 2018-07-17T11:04:12Z tfb: beach: yes, agree -- if you want a new better (for you) CL implement one on top of the old CL, which is what we all do. 2018-07-17T11:05:10Z jmercouris: yes, but if everyone is doing that, wouldn't it be nice to have a unified set of improvements? 2018-07-17T11:05:24Z jmercouris: I don't mean to beat a dead horse, so I'll stop now 2018-07-17T11:05:36Z LdBeth: Out of curiosity, has anyone implemented Scheme on top of CL? 2018-07-17T11:05:40Z Posterdati joined #lisp 2018-07-17T11:06:15Z jmercouris: https://github.com/SeijiKoide/scheme-in-cl 2018-07-17T11:07:39Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T11:07:51Z makomo quit (Ping timeout: 240 seconds) 2018-07-17T11:09:12Z makomo joined #lisp 2018-07-17T11:09:55Z LdBeth: I’m looking for a more recent one which implements pattern match based macro 2018-07-17T11:12:05Z ntqz joined #lisp 2018-07-17T11:13:57Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T11:16:21Z jmercouris: what does "D" in "DTRACE" stand for? 2018-07-17T11:18:30Z ntqz joined #lisp 2018-07-17T11:20:21Z fikka quit (Ping timeout: 256 seconds) 2018-07-17T11:20:23Z Folkol_ joined #lisp 2018-07-17T11:21:57Z orivej quit (Ping timeout: 264 seconds) 2018-07-17T11:22:27Z Posterdati: D = Deadful 2018-07-17T11:22:30Z fikka joined #lisp 2018-07-17T11:23:51Z aeth quit (Ping timeout: 240 seconds) 2018-07-17T11:25:47Z aeth joined #lisp 2018-07-17T11:26:45Z jackdaniel: CL lacks semantics for efficient (i.e without emulation) implementation of call/cc 2018-07-17T11:27:20Z fikka quit (Ping timeout: 244 seconds) 2018-07-17T11:27:20Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T11:27:22Z jackdaniel: so it would by hard I think to implement non-toy scheme in CL 2018-07-17T11:27:55Z tfb: jmercouris: dynamic 2018-07-17T11:28:07Z tfb: assuming you mean the thing that originated in solaris 2018-07-17T11:29:42Z ntqz joined #lisp 2018-07-17T11:30:56Z beach: jackdaniel: Only if you insist on a fairly direct translation from Scheme to Common Lisp. 2018-07-17T11:32:43Z beach: jackdaniel: OK, I guess that's what you meant by "without emulation". 2018-07-17T11:33:22Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T11:33:44Z tfb: beach: I think it's only interesting if the shim is fairly thin (so, say, you could call into and out of Schemy things) as otherwise you might as well just use one of the 9 billion existing schemes 2018-07-17T11:34:05Z beach: Yes, I see. 2018-07-17T11:35:29Z fikka joined #lisp 2018-07-17T11:35:55Z ntqz joined #lisp 2018-07-17T11:38:27Z rumbler31 joined #lisp 2018-07-17T11:40:59Z xaotuk joined #lisp 2018-07-17T11:41:46Z saki quit (Ping timeout: 256 seconds) 2018-07-17T11:42:15Z jackdaniel: right, I'm not claiming that you can't write Scheme compiler in CL (vice versa is possible too) - both are general purpose programming languages after all 2018-07-17T11:42:44Z beach: Right. 2018-07-17T11:44:59Z saki joined #lisp 2018-07-17T11:45:21Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T11:45:29Z jmercouris: tfb: I was thinking in the context of gentle introduction to symbolic computation 2018-07-17T11:46:49Z JuanDaugherty joined #lisp 2018-07-17T11:47:39Z ntqz joined #lisp 2018-07-17T11:47:55Z rumbler31 quit (Remote host closed the connection) 2018-07-17T11:52:09Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T11:52:58Z tfb: jmercouris: I certainly think implementing little Lisps in CL is interesting. 2018-07-17T11:54:28Z ntqz joined #lisp 2018-07-17T11:56:24Z pierpal quit (Quit: Poof) 2018-07-17T11:56:32Z jmercouris: tfb: I didn't say anything about little lisps in cl? 2018-07-17T11:56:45Z pierpal joined #lisp 2018-07-17T11:58:27Z jackdaniel: why do you ask that? shouldn't you know what you did say? 2018-07-17T11:58:33Z jackdaniel: (or didn't) 2018-07-17T11:58:55Z tfb: Oh sorry, I was getting confused between the dtrace thing and the scheme-in-CL thing 2018-07-17T11:59:10Z tfb: jmercouris: sorry, see prev msg 2018-07-17T12:01:34Z Smokitch quit 2018-07-17T12:02:29Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T12:03:39Z JuanDaugherty quit (Quit: Exeunt) 2018-07-17T12:04:33Z jmercouris: I see 2018-07-17T12:04:47Z cgay_ joined #lisp 2018-07-17T12:04:49Z jmercouris: whoops :) 2018-07-17T12:04:51Z ntqz joined #lisp 2018-07-17T12:04:51Z schweers joined #lisp 2018-07-17T12:05:06Z sthalik joined #lisp 2018-07-17T12:06:45Z Folkol quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-17T12:08:18Z markoong joined #lisp 2018-07-17T12:09:11Z pierpal quit (Quit: Poof) 2018-07-17T12:09:30Z pierpal joined #lisp 2018-07-17T12:09:43Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T12:12:02Z ntqz joined #lisp 2018-07-17T12:20:03Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T12:22:23Z ntqz joined #lisp 2018-07-17T12:23:47Z terpri quit (Ping timeout: 268 seconds) 2018-07-17T12:27:21Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T12:31:53Z ntqz joined #lisp 2018-07-17T12:35:04Z Folkol joined #lisp 2018-07-17T12:36:47Z graphene quit (Remote host closed the connection) 2018-07-17T12:37:51Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T12:38:07Z graphene joined #lisp 2018-07-17T12:39:24Z tfb: jmercouris: and I guess 'detailed'? 2018-07-17T12:39:45Z Satou joined #lisp 2018-07-17T12:40:06Z ntqz joined #lisp 2018-07-17T12:41:11Z vaporatorius joined #lisp 2018-07-17T12:41:12Z vaporatorius quit (Changing host) 2018-07-17T12:41:12Z vaporatorius joined #lisp 2018-07-17T12:41:26Z vap1 joined #lisp 2018-07-17T12:42:04Z jmercouris: could be, that would make sense 2018-07-17T12:42:37Z Satou quit (Client Quit) 2018-07-17T12:42:41Z X-Scale quit (Ping timeout: 248 seconds) 2018-07-17T12:44:06Z karlosz joined #lisp 2018-07-17T12:45:01Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T12:47:25Z ntqz joined #lisp 2018-07-17T12:47:30Z krrrcks quit (Ping timeout: 256 seconds) 2018-07-17T12:47:41Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T12:47:46Z EvW joined #lisp 2018-07-17T12:49:10Z krrrcks joined #lisp 2018-07-17T12:51:19Z wigust joined #lisp 2018-07-17T12:52:24Z vaporatorius quit (Quit: Leaving) 2018-07-17T12:54:06Z ntqz joined #lisp 2018-07-17T12:54:35Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T12:59:09Z ntqz joined #lisp 2018-07-17T13:00:01Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T13:02:21Z ntqz joined #lisp 2018-07-17T13:02:56Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T13:05:24Z ntqz joined #lisp 2018-07-17T13:05:42Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T13:10:29Z ntqz joined #lisp 2018-07-17T13:10:38Z Bike joined #lisp 2018-07-17T13:10:58Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T13:13:19Z ntqz joined #lisp 2018-07-17T13:13:38Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T13:15:54Z ntqz joined #lisp 2018-07-17T13:19:55Z patlv joined #lisp 2018-07-17T13:20:28Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T13:22:02Z brendyn quit (Ping timeout: 244 seconds) 2018-07-17T13:22:50Z ntqz joined #lisp 2018-07-17T13:23:24Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T13:25:02Z jmercouris quit (Remote host closed the connection) 2018-07-17T13:25:16Z Raybih joined #lisp 2018-07-17T13:25:45Z ntqz joined #lisp 2018-07-17T13:25:54Z Kundry_Wag_ joined #lisp 2018-07-17T13:28:08Z graphene quit (Remote host closed the connection) 2018-07-17T13:28:13Z Kundry_Wag_ quit (Client Quit) 2018-07-17T13:28:29Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T13:29:02Z mindCrime joined #lisp 2018-07-17T13:29:34Z graphene joined #lisp 2018-07-17T13:29:51Z karlosz quit (Quit: karlosz) 2018-07-17T13:30:06Z Kundry_Wag joined #lisp 2018-07-17T13:30:49Z ntqz joined #lisp 2018-07-17T13:31:04Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T13:31:05Z jmercouris joined #lisp 2018-07-17T13:31:51Z EvW quit (Ping timeout: 240 seconds) 2018-07-17T13:33:21Z fikka quit (Ping timeout: 248 seconds) 2018-07-17T13:34:34Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-17T13:35:25Z ntqz joined #lisp 2018-07-17T13:38:03Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T13:40:24Z ntqz joined #lisp 2018-07-17T13:41:48Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T13:46:15Z ntqz joined #lisp 2018-07-17T13:48:27Z rumbler31 joined #lisp 2018-07-17T13:48:31Z warweasle joined #lisp 2018-07-17T13:48:43Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T13:52:50Z rumbler31 quit (Ping timeout: 265 seconds) 2018-07-17T13:53:09Z ntqz joined #lisp 2018-07-17T13:54:26Z karlosz joined #lisp 2018-07-17T13:55:11Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T13:57:50Z ntqz joined #lisp 2018-07-17T13:58:35Z patlv quit (Ping timeout: 240 seconds) 2018-07-17T14:00:37Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T14:03:02Z ntqz joined #lisp 2018-07-17T14:03:22Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T14:05:13Z Kundry_Wag joined #lisp 2018-07-17T14:05:41Z ntqz joined #lisp 2018-07-17T14:08:04Z sjl joined #lisp 2018-07-17T14:09:51Z Kundry_Wag quit (Ping timeout: 268 seconds) 2018-07-17T14:12:48Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T14:13:30Z xaotuk quit (Remote host closed the connection) 2018-07-17T14:15:06Z slyrus1 quit (Quit: slyrus1) 2018-07-17T14:15:08Z ntqz joined #lisp 2018-07-17T14:18:08Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T14:20:13Z terpri joined #lisp 2018-07-17T14:20:31Z ntqz joined #lisp 2018-07-17T14:20:33Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T14:21:03Z ntqz joined #lisp 2018-07-17T14:21:16Z Raybih quit 2018-07-17T14:21:20Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T14:21:37Z kingcons joined #lisp 2018-07-17T14:22:34Z jeosol_ joined #lisp 2018-07-17T14:22:58Z JuanDaugherty joined #lisp 2018-07-17T14:23:43Z ntqz joined #lisp 2018-07-17T14:24:12Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T14:24:27Z jeosol_: morning guys 2018-07-17T14:25:32Z beach: Hello jeosol_. 2018-07-17T14:26:21Z jeosol_: anyone following AWS summit in NY. It will be nice to see how CL plays into most of these. As a single developer, I am trying to see how I get my apps to scale if I get to that step 2018-07-17T14:26:24Z jeosol_: morning beach 2018-07-17T14:26:34Z ntqz joined #lisp 2018-07-17T14:26:37Z graphene quit (Remote host closed the connection) 2018-07-17T14:28:01Z graphene joined #lisp 2018-07-17T14:28:36Z graphene quit (Remote host closed the connection) 2018-07-17T14:29:22Z broccolistem quit (Ping timeout: 245 seconds) 2018-07-17T14:30:00Z graphene joined #lisp 2018-07-17T14:30:32Z housel joined #lisp 2018-07-17T14:30:43Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T14:31:58Z jeosol_: jmercouris: thanks for your input about running my remote jobs. I saw it but could not respond back. My use case is a bit crazy, something between running in slime and running jobs on LINUX command line after launching SBCL 2018-07-17T14:33:22Z jeosol_: So what I do normally, I have a monitor on one side with code, and some linux terminals. Since I am testing different configs, I usually create a new defun, and just run it on the a linux terminal. 2018-07-17T14:34:54Z JuanDaugherty: somehow it doesn't seem like AWS can be amazon web services 2018-07-17T14:35:08Z ntqz joined #lisp 2018-07-17T14:35:17Z JuanDaugherty: except for the scaling part 2018-07-17T14:35:36Z mindCrime quit (Ping timeout: 256 seconds) 2018-07-17T14:35:46Z Kundry_Wag joined #lisp 2018-07-17T14:35:50Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T14:37:14Z jeosol_: JuanDuagherty: Sorry I didn't make that clear enough, but yes, AWS -> Amazon Web Services 2018-07-17T14:37:37Z jeosol_: I have been interested in the AI/ML/DS capabilities 2018-07-17T14:37:47Z graphene quit (Read error: Connection reset by peer) 2018-07-17T14:37:59Z jeosol_: the->their 2018-07-17T14:38:10Z JuanDaugherty: most 'apps' don't even have parallelization opportunities other than serving many users and that's highly routinized by such places and various pkgs now 2018-07-17T14:38:12Z ntqz joined #lisp 2018-07-17T14:38:35Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T14:39:09Z graphene joined #lisp 2018-07-17T14:39:22Z JuanDaugherty: DS? 2018-07-17T14:39:24Z asarch joined #lisp 2018-07-17T14:39:33Z jeosol_: ah my bad Jaun. .. 2018-07-17T14:39:39Z JuanDaugherty: deep search? 2018-07-17T14:39:41Z jeosol_: I meant Data Science 2018-07-17T14:39:44Z JuanDaugherty: ah 2018-07-17T14:39:49Z jeosol_: oh really sorry about that 2018-07-17T14:40:01Z Kundry_Wag quit (Ping timeout: 248 seconds) 2018-07-17T14:40:03Z pierpal quit (Quit: Poof) 2018-07-17T14:40:10Z fikka joined #lisp 2018-07-17T14:40:18Z slyrus1 joined #lisp 2018-07-17T14:40:19Z pierpal joined #lisp 2018-07-17T14:40:48Z JuanDaugherty: they do have some offerings in those categories, i'd be surprised if they use lisp though 2018-07-17T14:40:57Z ntqz joined #lisp 2018-07-17T14:41:05Z jeosol_: I have had interests in Gabor Melis AI/ML library and the CLML library, and wanted to pick these up. Latter still have issues with license. For Gabor's code, I made small changes to work in a recent SBCL license, 2018-07-17T14:41:33Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T14:41:37Z jeosol_: I trained the model on my linux box, it was taking over two days to train and I killed the job. I think Gabor said he used GPU machines 2018-07-17T14:42:11Z JuanDaugherty checks if AWS offers GPUs 2018-07-17T14:42:14Z jeosol_: Yes, Juan, they have several offerings. I think it is mostly C++, Python and Java based on the low-level frameworks 2018-07-17T14:42:46Z jeosol_: JuanDuagherty: Yes, that is the plan eventually, take up the code there and if I can things to improve 2018-07-17T14:43:57Z ntqz joined #lisp 2018-07-17T14:44:10Z JuanDaugherty: confirmed 2018-07-17T14:44:22Z JuanDaugherty: they even have EC2 GPUs 2018-07-17T14:45:08Z JuanDaugherty: just to see what it was like I tried a 99 thread EC2 a couple months ago 2018-07-17T14:45:19Z Kundry_Wag joined #lisp 2018-07-17T14:45:44Z JuanDaugherty: lparallel is the likely suspect here i presume 2018-07-17T14:45:52Z jeosol_: thanks for that info. I will try to get back to this soon. 2018-07-17T14:46:01Z jeosol_: You mean you used the lparallel library? 2018-07-17T14:46:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-17T14:47:36Z Inline joined #lisp 2018-07-17T14:48:23Z JuanDaugherty: i meant it is a way of getting back on topic 2018-07-17T14:50:37Z lumm quit (Ping timeout: 245 seconds) 2018-07-17T14:50:48Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T14:50:55Z jeosol_: Oh ok. 2018-07-17T14:54:15Z JuanDaugherty: doesn't look like it's been updated in 3 y 2018-07-17T14:54:22Z _cosmonaut_ quit (Ping timeout: 264 seconds) 2018-07-17T14:55:19Z ntqz joined #lisp 2018-07-17T14:55:33Z nika_ joined #lisp 2018-07-17T14:56:42Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T14:57:04Z JuanDaugherty: ql shows two more recent pkgs though 2018-07-17T14:57:48Z FreeBirdLjj joined #lisp 2018-07-17T14:57:57Z saki quit (Ping timeout: 240 seconds) 2018-07-17T14:58:38Z JuanDaugherty: only one of which is general lisp parallelization 2018-07-17T14:59:28Z JuanDaugherty: igess it's only newer in ql,(cl-parallel) 2018-07-17T14:59:36Z skapata joined #lisp 2018-07-17T15:01:10Z ntqz joined #lisp 2018-07-17T15:01:37Z ofi quit (Remote host closed the connection) 2018-07-17T15:01:40Z jeosol_: JuanD ...: I didn't get your lparallel comment, it was probably from a different conversation 2018-07-17T15:01:58Z EvW1 joined #lisp 2018-07-17T15:02:11Z skapata quit (Read error: Connection reset by peer) 2018-07-17T15:02:16Z flamebeard quit 2018-07-17T15:04:40Z surya joined #lisp 2018-07-17T15:05:00Z skapata joined #lisp 2018-07-17T15:05:20Z DingoSaar joined #lisp 2018-07-17T15:06:21Z EvW1 quit (Ping timeout: 240 seconds) 2018-07-17T15:09:33Z _cosmonaut_ joined #lisp 2018-07-17T15:09:42Z fikka joined #lisp 2018-07-17T15:09:46Z JuanDaugherty: disregard 2018-07-17T15:10:38Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T15:11:59Z Smokitch joined #lisp 2018-07-17T15:13:48Z jeosol_: hmmm, 2018-07-17T15:13:51Z jeosol_: I will like to discuss with folks running lisp related applications on the web. Even when using other language frameworks around the core engine in lisp. 2018-07-17T15:15:00Z JuanDaugherty: you'll get pushback here if you don't limit yourself to common lisp 2018-07-17T15:15:13Z ntqz joined #lisp 2018-07-17T15:15:18Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T15:15:21Z robotoad joined #lisp 2018-07-17T15:15:50Z ntqz joined #lisp 2018-07-17T15:15:52Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T15:16:07Z marvin2 quit 2018-07-17T15:16:13Z mindCrime joined #lisp 2018-07-17T15:16:35Z ntqz joined #lisp 2018-07-17T15:16:43Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T15:17:59Z eli_oat quit (Quit: eli_oat) 2018-07-17T15:18:17Z eli_oat joined #lisp 2018-07-17T15:18:37Z lumm joined #lisp 2018-07-17T15:19:07Z ntqz joined #lisp 2018-07-17T15:19:11Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T15:19:37Z ntqz joined #lisp 2018-07-17T15:19:38Z EvW joined #lisp 2018-07-17T15:20:18Z jeosol_: Ok, thanks for the info Juan... 2018-07-17T15:20:18Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T15:20:21Z jeosol_: sorry about that. 2018-07-17T15:20:35Z robotoad quit (Read error: Connection reset by peer) 2018-07-17T15:21:04Z jeosol_: The intent was to connect and not discuss that here. I do understand the focus of this forum. 2018-07-17T15:21:56Z robotoad joined #lisp 2018-07-17T15:22:54Z pierpal quit (Quit: Poof) 2018-07-17T15:22:59Z beach: jeosol_: I think the topic says what it is. 2018-07-17T15:23:04Z JuanDaugherty: based on what I've looked at since we started talking, as far as common lisp is concerned lparallel still seems the default choice, imo anyway 2018-07-17T15:23:14Z pierpal joined #lisp 2018-07-17T15:23:31Z jeosol_: apologies to you guys, I didn't intend to cause any problems 2018-07-17T15:24:09Z jeosol_: Like I said, I am just looking for users with similar issues as I am facing so we can share ideas. Intent was not to discuss that here .. 2018-07-17T15:24:26Z EvW quit (Ping timeout: 276 seconds) 2018-07-17T15:24:52Z ntqz joined #lisp 2018-07-17T15:25:11Z jmercouris: jeosol_: no problem 2018-07-17T15:25:11Z JuanDaugherty: no worries. Are you in Korea? 2018-07-17T15:25:33Z jmercouris: jeosol_: I'm running lisp applications on the web 2018-07-17T15:26:12Z al-damiri joined #lisp 2018-07-17T15:29:19Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T15:30:43Z jeosol_: JaunD...: no, not in Korea. 2018-07-17T15:31:24Z JuanDaugherty: ah. I wonder how well the CLIM web stuff works, in remote browsers 2018-07-17T15:32:05Z JuanDaugherty: (or if it even does (as opposed to some other client)) 2018-07-17T15:32:30Z vlad_ joined #lisp 2018-07-17T15:33:07Z vlad_ is now known as DonVlad 2018-07-17T15:33:42Z ntqz joined #lisp 2018-07-17T15:34:28Z k4rtik joined #lisp 2018-07-17T15:34:28Z k4rtik quit (Changing host) 2018-07-17T15:34:28Z k4rtik joined #lisp 2018-07-17T15:34:45Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T15:35:01Z mflem joined #lisp 2018-07-17T15:39:00Z beach: Here is an idea: When I compile SICL code to HIR on SBCL, the functions created would be subclasses of STANDARD-FUNCALLABLE-OBJECT. I would have a slot in that subclass that contains a "code object". 2018-07-17T15:39:07Z beach: The code object would have information about mappings from source locations to values of the "program counter" in the form of a place in the HIR code. It would also have tables that map HIR locations to other HIR locations for various debugger stepping functions. 2018-07-17T15:39:10Z ntqz joined #lisp 2018-07-17T15:39:19Z beach: At strategic points in the HIR code, I generate code to interrogate a hash table to determine whether the current thread runs under the control of the debugger. If so, it further interrogates to determine whether it is at a breakpoint. 2018-07-17T15:39:20Z beach: If so, it waits on a semaphore that is associated with the thread. The debugger uses the code object to find source location for the breakpoint. The debugger can set more breakpoints, and it then signals on the semaphore to make the application thread continue its execution. 2018-07-17T15:40:25Z serghey joined #lisp 2018-07-17T15:40:26Z beach: er, I think the class name is FUNCALLABLE-STANDARD-OBJECT. 2018-07-17T15:40:34Z serghey: list 2018-07-17T15:40:39Z serghey left #lisp 2018-07-17T15:40:40Z nsrahmad joined #lisp 2018-07-17T15:40:45Z beach: mop funcallable-standard-object 2018-07-17T15:40:45Z specbot: http://metamodular.com/CLOS-MOP/class-funcallable-standard-object.html 2018-07-17T15:40:48Z vlatkoB quit (Remote host closed the connection) 2018-07-17T15:42:02Z dlowe: the standard object that makes calling fun 2018-07-17T15:42:20Z beach: Heh. 2018-07-17T15:43:22Z shka1 joined #lisp 2018-07-17T15:43:34Z jackdaniel: funny :) 2018-07-17T15:44:38Z vlatkoB joined #lisp 2018-07-17T15:45:57Z k4rtik quit (Quit: WeeChat 2.2) 2018-07-17T15:46:07Z k4rtik joined #lisp 2018-07-17T15:46:08Z k4rtik quit (Changing host) 2018-07-17T15:46:08Z k4rtik joined #lisp 2018-07-17T15:46:14Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T15:46:21Z TMA: beach: ordinary debuggers use hardware breakpoints (interrupt when program counter is equal to this value) or just modify the code to "interrupt now"; I think you might achieve the one-thread debuggee, other thread runs the same code with duplicating the debugged code with breakpoints (so as the HW not to triger and to have modifiable copy) 2018-07-17T15:47:35Z TMA: beach: the only caveat is that (funcall (symbol-function XXX) ...) equivalent machinery needs to use the debugee code if one is available 2018-07-17T15:48:12Z beach: TMA: Not sure I follow. But I can't use hardware breakpoints here, because I don't want to dig deep into SBCL to find out low-level details. 2018-07-17T15:48:37Z ntqz joined #lisp 2018-07-17T15:49:07Z jeosol_: jmercouris: thanks for the info. It seems my recent issues are out of focus for this forum. I'll need to follow up later. 2018-07-17T15:49:31Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T15:49:57Z beach: TMA: I also don't want to modify the code, even though it might be possible to not break in some situations. 2018-07-17T15:51:27Z Khisanth quit (Ping timeout: 240 seconds) 2018-07-17T15:51:38Z TMA: beach: I see. With those two additional conditions other debuggers are not subjected to, you do not have much options except to instrument the code heavily as per your design. 2018-07-17T15:51:52Z ntqz joined #lisp 2018-07-17T15:52:22Z beach: Yes, that decision was already made. This suggestion was about actually running and debugging SICL code inside SBCL. 2018-07-17T15:53:24Z Kundry_Wag quit (Remote host closed the connection) 2018-07-17T15:54:47Z ntqz quit (Read error: Connection reset by peer) 2018-07-17T15:54:58Z beach: TMA: By instrumenting the code this way, in the final system I can trivially debug system code like SYMBOL-VALUE without having the system die on me. And I can debug the debugger. 2018-07-17T15:55:28Z surya quit (Remote host closed the connection) 2018-07-17T15:56:33Z saki joined #lisp 2018-07-17T15:56:43Z beach: Hardware breakpoints may work in the final system. But I need to figure out how to avoid stopping when the thread is not debugged. 2018-07-17T15:57:51Z kajo quit (Ping timeout: 240 seconds) 2018-07-17T15:59:13Z ntqz joined #lisp 2018-07-17T16:02:09Z _cosmonaut_ quit (Ping timeout: 248 seconds) 2018-07-17T16:02:48Z ntqz quit (Client Quit) 2018-07-17T16:05:17Z Khisanth joined #lisp 2018-07-17T16:14:31Z Kundry_Wag joined #lisp 2018-07-17T16:17:24Z Kundry_Wag quit (Remote host closed the connection) 2018-07-17T16:22:46Z JuanDaugherty quit (Quit: Exeunt) 2018-07-17T16:23:18Z Guest39745 quit (Remote host closed the connection) 2018-07-17T16:24:20Z Kundry_Wag joined #lisp 2018-07-17T16:24:37Z karlosz quit (Quit: karlosz) 2018-07-17T16:24:57Z beach: What's the name of that library that provides a uniform way of examining backtraces across implementation? 2018-07-17T16:25:22Z beach: across implementations. 2018-07-17T16:25:24Z Xach: beach: trivial-backtrace is one way 2018-07-17T16:25:32Z jasmith quit (Ping timeout: 276 seconds) 2018-07-17T16:25:42Z beach: I think that's the one I was thinking of. Thanks. 2018-07-17T16:25:43Z Xach: beach: i believe there is another, less trivial, but the name escapes me 2018-07-17T16:26:02Z beach: I see. 2018-07-17T16:26:05Z Folkol quit (Ping timeout: 240 seconds) 2018-07-17T16:26:23Z Bike: shinmera's dissect? 2018-07-17T16:26:29Z shka1 quit (Remote host closed the connection) 2018-07-17T16:26:55Z kingcons: shinmera's output is pretty amazing 2018-07-17T16:26:55Z shka1 joined #lisp 2018-07-17T16:27:03Z sthalik quit (Quit: leaving) 2018-07-17T16:27:07Z Xach: output? is that part of quicklisp? 2018-07-17T16:27:26Z jasmith joined #lisp 2018-07-17T16:27:27Z kingcons: Sorry, I meant his volume of production. 2018-07-17T16:27:44Z kingcons: I don't generate much lisp these days. :) 2018-07-17T16:27:49Z Xach: on the internet, it can be difficult to distinguish ironic stupidity from legitimate stupidity 2018-07-17T16:27:51Z Guest39745 joined #lisp 2018-07-17T16:28:30Z beach: What I would need for my suggested debugging interface is to get to the function object that is executing in a particular stack frame. 2018-07-17T16:32:16Z Guest39745 quit (Remote host closed the connection) 2018-07-17T16:32:59Z Guest39745 joined #lisp 2018-07-17T16:33:59Z hhdave quit (Ping timeout: 276 seconds) 2018-07-17T16:34:57Z jmercouris quit (Ping timeout: 240 seconds) 2018-07-17T16:40:32Z nsrahmad quit (Remote host closed the connection) 2018-07-17T16:40:51Z nsrahmad joined #lisp 2018-07-17T16:43:05Z jasmith quit (Ping timeout: 240 seconds) 2018-07-17T16:50:54Z wheelsucker joined #lisp 2018-07-17T16:53:17Z Folkol joined #lisp 2018-07-17T16:56:28Z Folkol quit (Client Quit) 2018-07-17T16:57:02Z nsrahmad quit (Quit: Leaving) 2018-07-17T16:57:39Z EvW1 joined #lisp 2018-07-17T16:58:38Z jealousmonk joined #lisp 2018-07-17T17:13:05Z heisig quit (Quit: Leaving) 2018-07-17T17:13:17Z Guest39745 quit (Read error: Connection reset by peer) 2018-07-17T17:13:36Z hvxgr quit (Quit: leaving) 2018-07-17T17:15:42Z sauvin quit (Remote host closed the connection) 2018-07-17T17:17:03Z jeosol_ quit (Ping timeout: 252 seconds) 2018-07-17T17:18:24Z nika_ quit (Quit: Leaving...) 2018-07-17T17:21:07Z patlv joined #lisp 2018-07-17T17:21:36Z rpg joined #lisp 2018-07-17T17:23:41Z Guest39745 joined #lisp 2018-07-17T17:29:21Z k4rtik quit (Ping timeout: 240 seconds) 2018-07-17T17:29:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-17T17:33:34Z Folkol_ quit (Quit: Textual IRC Client: www.textualapp.com) 2018-07-17T17:40:51Z schweers quit (Ping timeout: 240 seconds) 2018-07-17T17:44:49Z lumm quit (Ping timeout: 260 seconds) 2018-07-17T17:45:48Z scymtym quit (Ping timeout: 265 seconds) 2018-07-17T17:45:56Z orivej joined #lisp 2018-07-17T17:47:15Z Folkol joined #lisp 2018-07-17T17:49:17Z fikka joined #lisp 2018-07-17T17:49:30Z Firewalcker joined #lisp 2018-07-17T17:50:32Z Kaisyu quit (Quit: Connection closed for inactivity) 2018-07-17T17:51:12Z jasmith joined #lisp 2018-07-17T17:52:21Z EvW1 quit (Ping timeout: 240 seconds) 2018-07-17T17:59:40Z scymtym joined #lisp 2018-07-17T18:01:37Z k4rtik joined #lisp 2018-07-17T18:02:08Z housel quit (Read error: Connection reset by peer) 2018-07-17T18:02:36Z housel joined #lisp 2018-07-17T18:04:11Z kajo joined #lisp 2018-07-17T18:04:48Z Arcaelyx joined #lisp 2018-07-17T18:04:57Z equwal joined #lisp 2018-07-17T18:07:16Z patlv quit (Ping timeout: 268 seconds) 2018-07-17T18:08:34Z kajo quit (Client Quit) 2018-07-17T18:09:10Z kajo joined #lisp 2018-07-17T18:09:45Z patlv joined #lisp 2018-07-17T18:11:04Z pfdietz2 joined #lisp 2018-07-17T18:12:19Z fikka quit (Ping timeout: 256 seconds) 2018-07-17T18:12:21Z pfdietz2: I read this paper on mutation testing at Google. I was surprised to see one of the 7 languages involved was Common Lisp. https://ai.google/research/pubs/pub46584 2018-07-17T18:14:44Z Smokitch quit 2018-07-17T18:16:31Z patlv quit (Ping timeout: 268 seconds) 2018-07-17T18:16:31Z equwal quit (Ping timeout: 268 seconds) 2018-07-17T18:16:40Z X-Scale joined #lisp 2018-07-17T18:18:27Z lnostdal quit (Read error: Connection reset by peer) 2018-07-17T18:20:11Z brettgilio joined #lisp 2018-07-17T18:22:52Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-17T18:23:37Z xificurC quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2018-07-17T18:25:52Z xificurC joined #lisp 2018-07-17T18:27:35Z orivej quit (Ping timeout: 240 seconds) 2018-07-17T18:28:54Z lumm joined #lisp 2018-07-17T18:29:07Z cgay: oh neat, hadn't seen that. The Lisp is due to the acquisition of ITA Software. 2018-07-17T18:32:06Z orivej joined #lisp 2018-07-17T18:32:22Z fikka joined #lisp 2018-07-17T18:33:27Z random-nick quit (Ping timeout: 240 seconds) 2018-07-17T18:36:51Z fikka quit (Ping timeout: 240 seconds) 2018-07-17T18:41:31Z zooey quit (Ping timeout: 250 seconds) 2018-07-17T18:42:51Z fikka joined #lisp 2018-07-17T18:45:01Z JuanDaugherty joined #lisp 2018-07-17T18:46:01Z hvxgr joined #lisp 2018-07-17T18:46:52Z zooey joined #lisp 2018-07-17T18:47:21Z JuanDaugherty: pfdietz, it looks tacked on, only occurs in the two charts 2018-07-17T18:47:49Z fikka quit (Ping timeout: 260 seconds) 2018-07-17T18:50:19Z kyby64 joined #lisp 2018-07-17T18:52:51Z fikka joined #lisp 2018-07-17T18:56:33Z pierpal quit (Quit: Poof) 2018-07-17T18:56:51Z pierpal joined #lisp 2018-07-17T18:57:44Z fikka quit (Ping timeout: 260 seconds) 2018-07-17T18:58:18Z random-nick joined #lisp 2018-07-17T18:58:40Z djh quit (Ping timeout: 256 seconds) 2018-07-17T18:58:55Z djh joined #lisp 2018-07-17T19:03:05Z fikka joined #lisp 2018-07-17T19:04:34Z JuanDaugherty quit (Quit: Exeunt) 2018-07-17T19:05:48Z nightfly quit (Quit: WeeChat 1.5) 2018-07-17T19:07:09Z graphene quit (Remote host closed the connection) 2018-07-17T19:07:51Z fikka quit (Ping timeout: 240 seconds) 2018-07-17T19:08:21Z graphene joined #lisp 2018-07-17T19:08:27Z DingoSaar quit (Ping timeout: 265 seconds) 2018-07-17T19:09:45Z akkad left #lisp 2018-07-17T19:13:09Z fikka joined #lisp 2018-07-17T19:17:56Z fikka quit (Ping timeout: 256 seconds) 2018-07-17T19:19:22Z light2yellow quit (Quit: light2yellow) 2018-07-17T19:19:54Z k4rtik quit (Ping timeout: 260 seconds) 2018-07-17T19:21:55Z lnostdal joined #lisp 2018-07-17T19:23:47Z fikka joined #lisp 2018-07-17T19:24:31Z Kundry_Wag quit (Read error: Connection reset by peer) 2018-07-17T19:24:40Z Kundry_Wag joined #lisp 2018-07-17T19:27:11Z nickenchuggets joined #lisp 2018-07-17T19:27:11Z nickenchuggets quit (Changing host) 2018-07-17T19:27:11Z nickenchuggets joined #lisp 2018-07-17T19:27:11Z lumm quit (Read error: Connection reset by peer) 2018-07-17T19:27:46Z Guest39745 quit (Remote host closed the connection) 2018-07-17T19:28:09Z Josh_2 joined #lisp 2018-07-17T19:28:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-17T19:29:57Z gravicappa quit (Ping timeout: 256 seconds) 2018-07-17T19:33:40Z lumm joined #lisp 2018-07-17T19:33:49Z fikka joined #lisp 2018-07-17T19:34:27Z orivej quit (Ping timeout: 240 seconds) 2018-07-17T19:34:42Z vlatkoB quit (Remote host closed the connection) 2018-07-17T19:37:36Z Guest39745 joined #lisp 2018-07-17T19:38:31Z Firewalcker left #lisp 2018-07-17T19:38:34Z fikka quit (Ping timeout: 260 seconds) 2018-07-17T19:40:19Z varjag quit (Ping timeout: 260 seconds) 2018-07-17T19:44:04Z fikka joined #lisp 2018-07-17T19:45:52Z kingcons left #lisp 2018-07-17T19:45:53Z robotoad quit (Read error: Connection reset by peer) 2018-07-17T19:46:16Z patlv joined #lisp 2018-07-17T19:46:29Z robotoad joined #lisp 2018-07-17T19:48:57Z fikka quit (Ping timeout: 264 seconds) 2018-07-17T19:50:37Z xificurC quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2018-07-17T19:51:02Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-17T19:52:52Z xificurC joined #lisp 2018-07-17T19:56:49Z Guest39745 quit (Read error: Connection reset by peer) 2018-07-17T19:58:06Z varjag joined #lisp 2018-07-17T19:58:07Z Guest39745 joined #lisp 2018-07-17T20:02:12Z robotoad quit (Read error: Connection reset by peer) 2018-07-17T20:02:18Z robotoad_ joined #lisp 2018-07-17T20:03:01Z robotoad_ quit (Read error: Connection reset by peer) 2018-07-17T20:03:13Z robotoad joined #lisp 2018-07-17T20:04:04Z fikka joined #lisp 2018-07-17T20:04:48Z warweasle quit (Quit: home) 2018-07-17T20:05:57Z shka1 quit (Ping timeout: 240 seconds) 2018-07-17T20:08:35Z terpri quit (Ping timeout: 240 seconds) 2018-07-17T20:08:54Z fikka quit (Ping timeout: 260 seconds) 2018-07-17T20:09:10Z X-Scale quit (Ping timeout: 244 seconds) 2018-07-17T20:12:23Z X-Scale joined #lisp 2018-07-17T20:12:46Z brettgilio quit (Remote host closed the connection) 2018-07-17T20:14:34Z fikka joined #lisp 2018-07-17T20:14:54Z brettgilio joined #lisp 2018-07-17T20:15:05Z fikka quit (Read error: Connection reset by peer) 2018-07-17T20:21:48Z fikka joined #lisp 2018-07-17T20:25:49Z Posterdati: pfdietz2: not at all since Peter Norvig is working at Google 2018-07-17T20:26:11Z brettgilio quit (Remote host closed the connection) 2018-07-17T20:27:39Z brettgilio joined #lisp 2018-07-17T20:28:43Z Guest123` joined #lisp 2018-07-17T20:34:29Z JuanDaugherty joined #lisp 2018-07-17T20:36:33Z slyrus1 quit (Ping timeout: 244 seconds) 2018-07-17T20:37:21Z slyrus_ quit (Ping timeout: 240 seconds) 2018-07-17T20:39:16Z Guest123` is now known as pjb 2018-07-17T20:43:13Z kerrhau joined #lisp 2018-07-17T20:43:14Z kerrhau quit (Changing host) 2018-07-17T20:43:14Z kerrhau joined #lisp 2018-07-17T20:43:17Z Josh_2 quit (Remote host closed the connection) 2018-07-17T20:44:41Z angavrilov quit (Remote host closed the connection) 2018-07-17T20:47:14Z warweasle joined #lisp 2018-07-17T20:48:07Z varjag quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2018-07-17T20:48:49Z slyrus_ joined #lisp 2018-07-17T20:49:13Z pierpa joined #lisp 2018-07-17T20:49:37Z robotoad_ joined #lisp 2018-07-17T20:49:38Z robotoad quit (Read error: Connection reset by peer) 2018-07-17T20:50:14Z jfb4 joined #lisp 2018-07-17T20:51:30Z warweasle quit (Client Quit) 2018-07-17T20:52:13Z JuanDaugherty quit (Quit: Exeunt) 2018-07-17T20:52:39Z charh joined #lisp 2018-07-17T20:57:21Z skapata quit (Ping timeout: 240 seconds) 2018-07-17T20:57:21Z robotoad_ quit (Read error: Connection reset by peer) 2018-07-17T20:57:58Z patlv quit (Ping timeout: 264 seconds) 2018-07-17T20:58:06Z robotoad joined #lisp 2018-07-17T21:00:52Z emacsomancer joined #lisp 2018-07-17T21:06:41Z k4rtik joined #lisp 2018-07-17T21:14:48Z brettgilio quit (Remote host closed the connection) 2018-07-17T21:15:15Z patlv joined #lisp 2018-07-17T21:19:53Z mindCrime quit (Ping timeout: 256 seconds) 2018-07-17T21:20:48Z kyby64 quit (Quit: Page closed) 2018-07-17T21:21:56Z kerrhau quit (Ping timeout: 276 seconds) 2018-07-17T21:30:36Z Bike quit (Ping timeout: 252 seconds) 2018-07-17T21:33:04Z mooshmoosh joined #lisp 2018-07-17T21:35:04Z xificurC quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2018-07-17T21:35:30Z hhdave_ joined #lisp 2018-07-17T21:35:42Z aeth quit (Ping timeout: 268 seconds) 2018-07-17T21:36:36Z xificurC joined #lisp 2018-07-17T21:37:06Z slyrus quit (Quit: slyrus) 2018-07-17T21:37:23Z aeth joined #lisp 2018-07-17T21:37:33Z mooshmoosh quit (Ping timeout: 268 seconds) 2018-07-17T21:41:04Z jealousmonk quit (Quit: Leaving) 2018-07-17T21:41:57Z wheelsucker quit (Remote host closed the connection) 2018-07-17T21:44:45Z mooshmoosh joined #lisp 2018-07-17T21:45:03Z DingoSaar joined #lisp 2018-07-17T21:46:20Z Jesin joined #lisp 2018-07-17T21:47:24Z arduo joined #lisp 2018-07-17T21:48:11Z slyrus joined #lisp 2018-07-17T21:48:37Z orivej joined #lisp 2018-07-17T21:48:45Z sknx joined #lisp 2018-07-17T21:49:51Z pjb quit (Ping timeout: 240 seconds) 2018-07-17T21:57:27Z patlv quit (Ping timeout: 240 seconds) 2018-07-17T21:58:20Z pfdietz2 quit (Ping timeout: 276 seconds) 2018-07-17T21:59:22Z DonVlad quit (Remote host closed the connection) 2018-07-17T21:59:46Z ``Erik quit (Ping timeout: 264 seconds) 2018-07-17T22:01:49Z klltkr quit (Remote host closed the connection) 2018-07-17T22:03:50Z pjb joined #lisp 2018-07-17T22:04:15Z pjb is now known as Guest83554 2018-07-17T22:05:33Z terpri joined #lisp 2018-07-17T22:08:20Z patlv joined #lisp 2018-07-17T22:08:55Z Bike joined #lisp 2018-07-17T22:10:14Z slyrus_ quit (Ping timeout: 268 seconds) 2018-07-17T22:11:54Z Xach: peter norvig is not especially known for current CL hacking 2018-07-17T22:11:57Z random-nick quit (Ping timeout: 240 seconds) 2018-07-17T22:15:58Z sjl quit (Ping timeout: 264 seconds) 2018-07-17T22:21:40Z slyrus_ joined #lisp 2018-07-17T22:22:34Z fikka quit (Ping timeout: 268 seconds) 2018-07-17T22:24:09Z brendyn joined #lisp 2018-07-17T22:25:05Z hifitim joined #lisp 2018-07-17T22:25:27Z makomo quit (Ping timeout: 240 seconds) 2018-07-17T22:26:09Z whartung: I dunno if he’s hacking anything right now, but he apparently drifted over to Python a long time ago. 2018-07-17T22:27:06Z klltkr joined #lisp 2018-07-17T22:27:45Z hhdave_ quit (Quit: hhdave_) 2018-07-17T22:27:58Z xificurC quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2018-07-17T22:29:41Z xificurC joined #lisp 2018-07-17T22:29:56Z drduck: He recently said, at a 2017 LispNYC talk, that lisp is mostly dead. :( 2018-07-17T22:30:40Z drduck: https://vimeo.com/215418110 2018-07-17T22:30:47Z drduck: Starting at 4:05 2018-07-17T22:31:51Z fikka joined #lisp 2018-07-17T22:32:06Z drduck: Also that there's a big difference between mostly dead and dead, though. 2018-07-17T22:33:30Z Guest39745 quit (Quit: Konversation terminated!) 2018-07-17T22:33:41Z Guest39745 joined #lisp 2018-07-17T22:34:09Z Guest39745 is now known as nowhere_man 2018-07-17T22:34:31Z xificurC quit (Client Quit) 2018-07-17T22:35:02Z xificurC joined #lisp 2018-07-17T22:37:51Z k4rtik quit (Ping timeout: 240 seconds) 2018-07-17T22:41:09Z patlv quit (Ping timeout: 260 seconds) 2018-07-17T22:46:38Z kerrhau joined #lisp 2018-07-17T22:46:38Z kerrhau quit (Changing host) 2018-07-17T22:46:39Z kerrhau joined #lisp 2018-07-17T22:47:38Z equwal joined #lisp 2018-07-17T22:48:22Z rpg joined #lisp 2018-07-17T22:50:04Z equwal left #lisp 2018-07-17T22:51:42Z patlv joined #lisp 2018-07-17T22:51:48Z Ziemas quit (Remote host closed the connection) 2018-07-17T22:52:48Z graphene quit (Read error: Connection reset by peer) 2018-07-17T22:53:18Z Ziemas joined #lisp 2018-07-17T22:54:04Z WhoTookMyName joined #lisp 2018-07-17T22:54:11Z graphene joined #lisp 2018-07-17T22:54:12Z WhoTookMyName quit (Client Quit) 2018-07-17T22:55:08Z drduck: Am I able to get the latest version of SBCL on macOS? 2018-07-17T22:55:14Z equwal joined #lisp 2018-07-17T22:56:19Z patlv quit (Ping timeout: 260 seconds) 2018-07-17T22:59:36Z equwal quit (Remote host closed the connection) 2018-07-17T23:01:49Z robotoad quit (Quit: robotoad) 2018-07-17T23:03:46Z Guest83554 quit (Read error: Connection reset by peer) 2018-07-17T23:04:35Z lumm quit (Quit: lumm) 2018-07-17T23:05:20Z Xach: drduck: yes, if you build it yourself from a not-latest version. 2018-07-17T23:12:05Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-17T23:13:08Z DingoSaar quit (Ping timeout: 268 seconds) 2018-07-17T23:16:12Z equwal joined #lisp 2018-07-17T23:19:49Z Pixel_Outlaw joined #lisp 2018-07-17T23:21:09Z equwal quit (Ping timeout: 268 seconds) 2018-07-17T23:21:33Z patlv joined #lisp 2018-07-17T23:26:57Z fikka quit (Ping timeout: 248 seconds) 2018-07-17T23:27:13Z hifitim quit (Quit: Leaving) 2018-07-17T23:27:28Z robotoad joined #lisp 2018-07-17T23:30:44Z Jesin quit (Ping timeout: 260 seconds) 2018-07-17T23:32:13Z pierpal quit (Ping timeout: 244 seconds) 2018-07-17T23:37:23Z orivej quit (Ping timeout: 244 seconds) 2018-07-17T23:45:14Z drduck: Can anyone speak on if there are any differences in the hot reload capabilities SLIME provides lisp compared to that of which an IDE provides java? 2018-07-17T23:45:46Z Kaisyu joined #lisp 2018-07-17T23:46:28Z whartung: sure gimme a minute 2018-07-17T23:48:35Z drduck: Okydoke. Trying to get a grip on the differences. Very interested to hear. :) 2018-07-17T23:49:13Z rumbler31 joined #lisp 2018-07-17T23:49:43Z emacsomancer left #lisp 2018-07-17T23:52:44Z JuanDaugherty joined #lisp 2018-07-17T23:53:40Z whartung: Ok, so. 2018-07-17T23:53:50Z rumbler31 quit (Ping timeout: 268 seconds) 2018-07-17T23:55:01Z whartung: I don’t know exactly what slime does, but we know what CL can do. Basically the REPL, “LOAD”, and “COMPILE”. All of those impact the environment in subtle, different ways (which I can’t detail, only knowing that there’s differences.) 2018-07-17T23:55:05Z whartung: but, fundamentally 2018-07-17T23:55:08Z whartung: what’s happening 2018-07-17T23:55:17Z whartung: is Lisp has a global Symbol table. 2018-07-17T23:55:34Z whartung: and through load/compile/repl, those symbols get reassigned 2018-07-17T23:55:53Z whartung: and the symbol table is simply one aspect of the global environment, but an important one. 2018-07-17T23:56:19Z whartung: the SYMBOLS remain (unless they’re specifically unintern’ed), but what they reference changes. 2018-07-17T23:56:29Z whartung: much like reassigning the value in a hash table. 2018-07-17T23:58:15Z whartung: no, since (normally), Lisp continues do dereference stuff through symbols (when they have global scope), then you have dynamic changes to a running system. This can clearly be adjusted trhough efficiency hints and stuff like that, but at the high level, if you have (defun x () (print “hello world”)), and something calls (x), if you later do (defun x () (print “goodbye world”)), that existing reference x will now say “goodbye” instead of “hello 2018-07-17T23:58:16Z whartung: without recompiling that reference. 2018-07-17T23:58:48Z whartung: and, as I mentioned there are exceptions (like inlining code and what not). 2018-07-17T23:59:22Z whartung: So, that’s what SLIME does, is it “simply” updates the global environment, and then the chips fall where they may. 2018-07-18T00:00:02Z psqueak joined #lisp 2018-07-18T00:00:04Z whartung: I recall, long ago, with Franz lisp, running multi-threaded, having a routine that was just running (x) in a loop, and seeing it go from “hello” to “goodbye” when I re-defun’d x. “Hazah!” 2018-07-18T00:00:25Z whartung: (And here we splash in more disclaimers abou thte global environment and threading and yada yada) 2018-07-18T00:01:13Z whartung: But we also know, that this is more of the first class concept in the system and the language. It’s “supposed” to do this. Even to the point the CLOS has a protocol for changing class instances in flight. 2018-07-18T00:01:51Z whartung: when you add slot new-slot to an CLOS class, you can write code to properly update that for existing instances of that class. Pretty snazzy. 2018-07-18T00:01:58Z whartung: Now, Java. 2018-07-18T00:02:06Z whartung: Java is a different beast. 2018-07-18T00:02:28Z whartung: You first have to appreciate that with Java, we like to think all about classes, and think clases are king and such. 2018-07-18T00:02:32Z whartung: And, we would be wrong. 2018-07-18T00:02:36Z whartung: Classes are not king. 2018-07-18T00:02:42Z whartung: ClassLoaders are king. 2018-07-18T00:02:59Z whartung: By definition, a class is a combniation of the class and the classloader. 2018-07-18T00:04:13Z whartung: When you reload in an IDE, it tries to go and do surgery on the heap. 2018-07-18T00:04:59Z whartung: If you try to, say, reload a JSP in a web container, that’s a diffrent problem. That creates a new class from the JSP, and swaps out the old one that’s mapped by the URL of the JSP. So, when you hit test.jsp, it just loads the new class, not the old one. 2018-07-18T00:05:08Z whartung: Dynamically loading classes in java is EZ. 2018-07-18T00:05:18Z whartung: Dynamically changing classes, not so much. 2018-07-18T00:06:04Z whartung: That’s much more of a hack. It why the reloads aren’t always successful. It’s one thing to reload the class of, say, a web controller. Something that has, you know, one instance. Big deal. 2018-07-18T00:06:33Z whartung: It’s another to reload the class of, say, a JPA Entity, like Employee, that you happen to have 10,000 instances cached. 2018-07-18T00:08:14Z m00natic quit (Remote host closed the connection) 2018-07-18T00:08:25Z drduck: So full feature dynamic reloading in lisp is by design and it's a hack -- also sometimes only partially works -- in java? 2018-07-18T00:08:40Z whartung: Java can’t “update” instances. it can’t add slots to old classes. And, depending on how the class was redefined, your cached objects may well no longer be of the “same class”. If the new class has a different class loader, then when “new code” tries to cast “new Employee” from a instance of “old employee” that’s in the cache (and Java ALWAYS casts under the hood), it’ll fail. “CLass Cast Exception”, because Employee is no lon 2018-07-18T00:08:41Z whartung: Employee any more. IT’s ClassLoader2.Employee != ClassLoader1.Employee. 2018-07-18T00:08:42Z whartung: yes. 2018-07-18T00:09:02Z whartung: It’s much more of a first class concept (with all the warts and caveats) in Lisp than it is in Java. 2018-07-18T00:09:08Z drduck: I wish I could comprehend a little better what that actually means in a freshman-esque case study. 2018-07-18T00:09:18Z drduck: Probably one of those things I'll just have to experience, eh? 2018-07-18T00:09:32Z whartung: It means that redefining dynamic elements in a runtime system is not always simple. 2018-07-18T00:10:19Z whartung: Lisp, out of the box, is dynamic at the price of performance. Lisp can be made “faster” through declarations that limit the flexibily. 2018-07-18T00:10:49Z whartung: For example, the CL package is specifically defined by the standard to really not have the dynamicity of other Lisp code. 2018-07-18T00:11:13Z whartung: Consider the “+” function, nobody on the planet wants to invoke a function call for +. It’s just crazy. 2018-07-18T00:11:42Z whartung: so, (+ 1 1) isn’t really a function call when it’s been compiled. Redefining “+” isn’t going to work like redefining X would, right? 2018-07-18T00:12:02Z whartung: but that’s why the CL package is specifically exempted, so the compiler can do reasonable stuff. 2018-07-18T00:12:13Z whartung: out of the box 2018-07-18T00:13:01Z whartung: Runtime systems make a lot of assumptions, Java assumes that’s its really in a pretty static environment. The CLassLoader is the barrier that helps boundary the dynamic behavior. 2018-07-18T00:13:09Z whartung: Consider loading a webapp in Tomcat 2018-07-18T00:13:27Z arduo quit (Ping timeout: 240 seconds) 2018-07-18T00:13:44Z whartung: when you load a web app, Tomcat will create a new ClassLoader, and THAT loads in your web app and it’s classes and stuff. 2018-07-18T00:13:59Z drduck: yes 2018-07-18T00:14:10Z moei quit (Quit: Leaving...) 2018-07-18T00:14:18Z whartung: When you undeploy the webapp, the classloader gets destroyed, and that’s the link in the chain that keeps your app in memory. With that gone, the GC marches through and kills everything 2018-07-18T00:15:06Z whartung: but out of the box, Java doesn’t really like the underlying structure of its classes to change. The ClassLoader give Java a lot of dynamic behavior. 2018-07-18T00:15:25Z whartung: But changing class structure in flight is not one of them. Rather, they want you to toss away the old, and brin gin the new 2018-07-18T00:15:42Z whartung: but there goes not just your class, but the 10,000 cached Employee instances as well. 2018-07-18T00:16:02Z whartung: So, the relaoding capablity of the IDEs is a magic trick, It mostly sorta works. 2018-07-18T00:16:34Z drduck: what happenes to the 10,000 cached Employee instances in common lisp in this scenario? 2018-07-18T00:16:49Z whartung: but that’s also because most of the use cases are folks updating application logic, changing a web controller, or some other “mostly” stateless bit of code. 2018-07-18T00:17:06Z whartung: Well, in CLOS, there structure will change. You can try it and see. 2018-07-18T00:17:18Z caltelt joined #lisp 2018-07-18T00:17:19Z whartung: hang on 2018-07-18T00:19:01Z whartung: so, see, this is a struct in lisp — and structs are “hard” strcutures, like in C 2018-07-18T00:19:06Z whartung: http://dpaste.com/3NMZ158 2018-07-18T00:19:26Z whartung: you can see that when the structure was changed, the NEW print routine for q was unhappy 2018-07-18T00:19:49Z orivej joined #lisp 2018-07-18T00:20:39Z drduck: yes 2018-07-18T00:20:47Z graphene quit (Remote host closed the connection) 2018-07-18T00:22:08Z graphene joined #lisp 2018-07-18T00:24:13Z whartung: so, here, we see that CLOS is actually telling us that it’s not updating the instances in this case 2018-07-18T00:24:14Z whartung: http://dpaste.com/3AFM1B7 2018-07-18T00:24:36Z whartung: but notice the different message when we try to access ‘d between when we redefined the classes 2018-07-18T00:25:05Z whartung: I’d have to dig a bit to find an example that uses the clos redefinition protocol — see if that works 2018-07-18T00:25:11Z pioneer42 joined #lisp 2018-07-18T00:26:06Z drduck: oh nice 2018-07-18T00:26:10Z patlv quit (Ping timeout: 264 seconds) 2018-07-18T00:26:53Z drduck: so the qq modified its instance of c to match the newly defined structure 2018-07-18T00:26:53Z parjanya quit (Read error: Connection reset by peer) 2018-07-18T00:27:11Z drduck: i should start up the java10 interpreter and see what happens in a case like this 2018-07-18T00:27:55Z sjl joined #lisp 2018-07-18T00:30:22Z whartung: now, for the CLOS implementaion in CLISP, in theory the structure is supposed to updated when the class is redefined, apparently by default CLISP doesn’t support that. 2018-07-18T00:30:45Z whartung: but the fundamental point is that the two environments live with two different base assumptions. 2018-07-18T00:31:18Z whartung: Java is a static world, and while it can easily handle loading new classes, it’s not really set up to allow them to change, especially structurally. 2018-07-18T00:31:28Z whartung: Lisp is a much more dynamic world. 2018-07-18T00:31:48Z whartung: when an IDE reloads classes, it’s doing a magic trick that may well not always work. It sometimes works. 2018-07-18T00:32:24Z drduck: Hmm this was what I got in jshell http://dpaste.com/11X53BE 2018-07-18T00:32:41Z Bike: the semantics are that when you redefine a class, instances of that class are updated (i.e. turned into instances of the new class) some point prior to you accessing one of their slots. and the update process is a generic function you can customize. 2018-07-18T00:32:42Z whartung: Personally, I don’t use it in Java. I don’t trust it, and I’d rather have things take longer, and work consistently, than things be faster and be inconsistent. I hate going after some strange bug that “goes away” when the image is restarted. 2018-07-18T00:32:44Z drduck: I guess same behavior when it is compiled as well? 2018-07-18T00:33:23Z whartung: that’s the behavir specific to the shell 2018-07-18T00:33:34Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-18T00:33:39Z whartung: you have a binding of Foo that the shell realaized 2018-07-18T00:33:49Z whartung: so that’s why it “knew” to reset ‘f’ to null 2018-07-18T00:33:55Z whartung: (I’ve never used the jshell) 2018-07-18T00:33:59Z drduck: oh o.o 2018-07-18T00:34:06Z whartung: but that’s why is zapped it 2018-07-18T00:34:26Z drduck: Similar happens in hot reload for Java with class structure change? 2018-07-18T00:34:38Z drduck: The objects just get zapped? 2018-07-18T00:34:43Z drduck: instances* 2018-07-18T00:34:59Z whartung: no, it doesn’t that’s the point. If you have some Singleton out there reference a class that’s reloaded…who knows what happens. 2018-07-18T00:35:14Z drduck: :o 2018-07-18T00:35:15Z whartung: Like I said, it’s a magic trick. 2018-07-18T00:35:24Z whartung: “java doesn’t reload classes” 2018-07-18T00:35:35Z whartung: IDEs hack it and fiddle with it. 2018-07-18T00:36:10Z whartung: And, sorry, at this point I have to do my own magic trick and disappear. Hope this was helpful. 2018-07-18T00:36:31Z whartung: In summary, the reloading mostly works in Java, just don’t be surprised if it bites you at times. 2018-07-18T00:36:35Z drduck: Yes it was. Thank you! 2018-07-18T00:36:41Z krator44 quit (Quit: --) 2018-07-18T00:36:52Z whartung: IN Lisp, it’s a more amenable to it, but that doesn’t make you “bite” proof. 2018-07-18T00:37:21Z whartung: if you’re chaning just logic, it’s much better than if you’re changing structure in java 2018-07-18T00:37:39Z whartung: ok, out the door….good luck! ask more questions….have fun. 2018-07-18T00:37:46Z drduck: :) 2018-07-18T00:37:48Z drduck: ok! 2018-07-18T00:39:13Z patlv joined #lisp 2018-07-18T00:39:34Z markoong quit (Read error: Connection reset by peer) 2018-07-18T00:42:58Z nowhere_man joined #lisp 2018-07-18T00:43:59Z _krator44 joined #lisp 2018-07-18T00:44:02Z psqueak quit (Quit: Page closed) 2018-07-18T00:46:27Z fikka joined #lisp 2018-07-18T00:46:47Z _krator44 quit (Changing host) 2018-07-18T00:46:47Z _krator44 joined #lisp 2018-07-18T00:46:47Z _krator44 quit (Changing host) 2018-07-18T00:46:47Z _krator44 joined #lisp 2018-07-18T00:46:52Z _krator44 is now known as krator44 2018-07-18T00:47:07Z bexx_ quit (Quit: see you) 2018-07-18T00:51:14Z fikka quit (Ping timeout: 260 seconds) 2018-07-18T00:51:59Z bitch quit (Quit: The bitch has left the building.) 2018-07-18T00:51:59Z Lord_of_Life quit (Quit: EliteBNC free bnc service - http://elitebnc.org - be a part of the Elite!) 2018-07-18T00:52:59Z patlv quit (Ping timeout: 260 seconds) 2018-07-18T00:53:48Z graphene quit (Remote host closed the connection) 2018-07-18T00:55:10Z graphene joined #lisp 2018-07-18T00:55:53Z Lord_of_Life joined #lisp 2018-07-18T00:58:25Z drduck quit (Remote host closed the connection) 2018-07-18T00:58:25Z graphene quit (Remote host closed the connection) 2018-07-18T00:58:52Z bexx_ joined #lisp 2018-07-18T00:59:47Z graphene joined #lisp 2018-07-18T01:00:16Z karlosz joined #lisp 2018-07-18T01:01:06Z Kundry_Wag quit (Remote host closed the connection) 2018-07-18T01:01:43Z bitch joined #lisp 2018-07-18T01:04:21Z karlosz quit (Ping timeout: 240 seconds) 2018-07-18T01:06:14Z JuanDaugherty quit (Quit: Exeunt) 2018-07-18T01:12:24Z patlv joined #lisp 2018-07-18T01:13:46Z karlosz joined #lisp 2018-07-18T01:17:58Z Jesin joined #lisp 2018-07-18T01:18:36Z anewuser joined #lisp 2018-07-18T01:19:46Z moei joined #lisp 2018-07-18T01:22:58Z k4rtik joined #lisp 2018-07-18T01:23:26Z kerrhau quit (Ping timeout: 256 seconds) 2018-07-18T01:27:09Z rumbler31 joined #lisp 2018-07-18T01:30:35Z Kundry_Wag joined #lisp 2018-07-18T01:32:42Z reu quit (Quit: こんなにも、世界はレプリスで満ちあふれていたのか? もし、今自分の手を傷つけてみたら、同じように泡を立てて消えていくのか?) 2018-07-18T01:36:00Z ebrasca joined #lisp 2018-07-18T01:39:18Z skidd0 joined #lisp 2018-07-18T01:39:23Z skidd0: hello 2018-07-18T01:40:25Z skidd0: how do you (use-package) or its equiv to load a package (to-do) along with all sub-packages (to-do.lists) 2018-07-18T01:40:57Z fikka joined #lisp 2018-07-18T01:42:07Z Bike: there's no such thing as "sub packages" 2018-07-18T01:42:35Z skidd0: okay so t0-do.lists is it's own package 2018-07-18T01:42:53Z skidd0: so i have an asdf .asd file 2018-07-18T01:43:01Z skidd0: and a package.lisp file 2018-07-18T01:43:18Z skidd0: using (asdf:make "to-do") compiles all the files 2018-07-18T01:43:22Z skidd0: into fasls 2018-07-18T01:43:24Z pierpal joined #lisp 2018-07-18T01:43:45Z skidd0: is there a way to use something similare to load them into the active lisp? 2018-07-18T01:43:57Z skidd0: i mean, make the exported classes available to the REPL 2018-07-18T01:44:13Z Bike: packages and asdf systems are different things. kinda orthogonal. 2018-07-18T01:45:06Z skidd0: okay 2018-07-18T01:45:26Z Bike: and packages don't have dependencies or anything like asdf systems. 2018-07-18T01:45:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-18T01:45:35Z skidd0: so is there a way i can use a single (use-package) for all the many packages in my system? 2018-07-18T01:45:53Z skidd0: the packages i'm writing have some 2018-07-18T01:46:08Z skidd0: to-do.tasks needs to-do.lists 2018-07-18T01:46:16Z Bike: those are the system dependencies. 2018-07-18T01:46:20Z skidd0: right 2018-07-18T01:46:24Z Bike: the packages are different and do not have dependencies. 2018-07-18T01:46:31Z Bike: you can only use-package one package at a time 2018-07-18T01:46:40Z skidd0: okay 2018-07-18T01:46:43Z Bike: but, you could have one package that exports everything interesting from multiple packages. 2018-07-18T01:46:47Z skidd0: so there's no way around the tedium 2018-07-18T01:46:56Z Bike: and then use that one package. 2018-07-18T01:46:57Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-18T01:46:58Z skidd0: oh 2018-07-18T01:47:08Z skidd0: like a to-do.full 2018-07-18T01:47:10Z skidd0: perhaps 2018-07-18T01:47:24Z Bike: something like that. 2018-07-18T01:47:38Z skidd0: that (:use)s all the other packages and exports the needed stuff..? 2018-07-18T01:47:54Z Bike: yeah. 2018-07-18T01:47:55Z skidd0: i guess it wouldn't need to export 2018-07-18T01:48:09Z skidd0: since by (:use)ing, it's grabbing the exports 2018-07-18T01:51:26Z Kundry_Wag joined #lisp 2018-07-18T01:52:03Z reu joined #lisp 2018-07-18T01:52:29Z pierpal quit (Ping timeout: 260 seconds) 2018-07-18T01:57:09Z nicht joined #lisp 2018-07-18T01:58:35Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-18T01:59:22Z eli_oat quit (Quit: eli_oat) 2018-07-18T01:59:50Z eli_oat joined #lisp 2018-07-18T02:02:35Z mfiano: Is there any undefined behavior with regard to using WITH-SLOTS with a structure-object? 2018-07-18T02:08:59Z charh quit (Quit: bye.) 2018-07-18T02:09:34Z skeuomorf joined #lisp 2018-07-18T02:09:52Z skeuomorf left #lisp 2018-07-18T02:10:14Z Kundry_Wag joined #lisp 2018-07-18T02:14:10Z krrrcks quit (Ping timeout: 264 seconds) 2018-07-18T02:15:07Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-18T02:15:24Z pierpal joined #lisp 2018-07-18T02:15:39Z krrrcks joined #lisp 2018-07-18T02:16:14Z drduck joined #lisp 2018-07-18T02:16:33Z nicht quit (Ping timeout: 248 seconds) 2018-07-18T02:16:48Z drduck: Does SLIME have support for debugging in reverse? Does lisp allow this in general? 2018-07-18T02:17:17Z robotoad quit (Quit: robotoad) 2018-07-18T02:18:23Z beach: Good morning everyone! 2018-07-18T02:18:52Z beach: drduck: Do you mean going back in time? 2018-07-18T02:18:56Z Kundry_Wag joined #lisp 2018-07-18T02:19:50Z xificurC quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2018-07-18T02:20:21Z drduck: 2018-07-18T02:20:21Z drduck: beach: Yes! 2018-07-18T02:21:28Z beach: I know of no Common Lisp implementation that supports that. It would be fairly tricky, given the semantics of Common Lisp. I will be able to do some of that stuff with first-class global environments, but there are other things that are tricky, like modifying the readtable, etc. 2018-07-18T02:22:48Z beach: skidd0: Once a package is loaded, exported symbols are available. You just have to use an explicit package prefix. Lately, I have come to the conclusion that it's a bad idea to USE to many packages. 2018-07-18T02:22:49Z beach: Not only do you commit yourself to future modifications of those packages, but it also becomes harder to read the code, since you don't know from which package a symbol is used. 2018-07-18T02:22:50Z karlosz quit (Quit: karlosz) 2018-07-18T02:24:10Z kerrhau joined #lisp 2018-07-18T02:24:10Z kerrhau quit (Changing host) 2018-07-18T02:24:10Z kerrhau joined #lisp 2018-07-18T02:29:55Z al-damiri quit (Quit: Connection closed for inactivity) 2018-07-18T02:31:20Z brettgilio joined #lisp 2018-07-18T02:31:40Z karlosz joined #lisp 2018-07-18T02:32:54Z nicht joined #lisp 2018-07-18T02:33:02Z AetherWind joined #lisp 2018-07-18T02:35:37Z aeth: Bike: In case you missed it, I did manage to get my metaclass to work. The method you said to redefine was too elaborate so I wrapped it with :around. The issue is that SBCL hardcoded the initargs for effective-slot-definition-class even though it doesn't for direct-slot-definition-class. So I have to make everything my direct-slot-with-checked-type and handle the case of a null checked-type. 2018-07-18T02:35:57Z Bike: what do you mean it hardcodes them 2018-07-18T02:36:26Z aeth: Bike: https://github.com/sbcl/sbcl/blob/c5db3dca77303b6f0601601e064c0a3b05deb4a8/src/pcl/std-class.lisp#L1210-L1214 2018-07-18T02:36:42Z pierpa quit (Quit: Page closed) 2018-07-18T02:36:44Z aeth: It calls compute-effective-slot-definition-initargs which provides the initargs to effective-slot-definition-class. It uses the standard initargs. 2018-07-18T02:36:53Z Bike: oh. well that doesn't matter. 2018-07-18T02:36:56Z aeth: So checked-type was always nil when I was checking for it in effective-slot-definition-class 2018-07-18T02:37:21Z Bike: i mean you can like, override the method and stuff. 2018-07-18T02:37:35Z aeth: Override compute-effective-slot-definition-initargs? I could have. 2018-07-18T02:38:01Z aeth: What I went with is this, though: https://gitlab.com/zombie-raptor/zombie-raptor/blob/6f0360991ee3f27f4a918397d98a6713dd1211ca/util/util.lisp#L447-495 2018-07-18T02:38:04Z Bike: but i've never bothered with an effective-slot-definition-class method that didn't just always return the same class, it's true 2018-07-18T02:38:26Z aeth: I have to assert the type check because check-type requires the type to be unquoted. 2018-07-18T02:38:42Z beach: mfiano: Yes, that's unspecified behavior. 2018-07-18T02:38:47Z aeth: Both assert or an evaled check-type give unhelpful messages. assert's a bit nicer. 2018-07-18T02:39:27Z aeth: On the other hand, since I have an assert there I could probably turn it into a general system, not just with guaranteed type checking. (It's a shame that :type isn't guarnateed to be checked) 2018-07-18T02:39:38Z beach: mfiano: WITH-SLOTS expands to SLOT-VALUE, and the page on SLOT-VALUE says: Note in particular that the behavior for conditions and structures is not specified. 2018-07-18T02:39:50Z drduck quit (Remote host closed the connection) 2018-07-18T02:40:00Z skidd0: beach, thank you for your comment 2018-07-18T02:40:09Z beach: skidd0: Anytime. 2018-07-18T02:40:09Z skidd0: i suppose using prefixes isn't too bad 2018-07-18T02:40:14Z skidd0: just feels odd 2018-07-18T02:41:07Z aeth: mfiano: Afaik, with-accessors can be assumed to be safer and more efficient with CLOS objects, and it works on just about anything with the simple accessor form (not just CLOS objects and structs, even accessors like car and cdr). 2018-07-18T02:41:25Z beach: skidd0: I personally USE only the COMMON-LISP package nowadays. 2018-07-18T02:42:13Z skidd0: then how do you accesss the symbols in other packages 2018-07-18T02:42:20Z beach: package prefix 2018-07-18T02:42:29Z beach: (clim:draw-line* ...) 2018-07-18T02:42:34Z skidd0: so you don't need an export to use it? 2018-07-18T02:42:44Z beach: You still need to export the symbols to do that. 2018-07-18T02:42:46Z skidd0: or does your package still export them 2018-07-18T02:42:53Z skidd0: but you don't (:use) them 2018-07-18T02:42:57Z beach: Correct. 2018-07-18T02:43:16Z beach: skidd0: Exporting a symbol means that it is meant for client code to use. 2018-07-18T02:43:18Z aeth: Personally, I USE CL and my own packages, and try to USE nothing else with rare exceptions. I use import-from, but it's not perfect for some things. e.g. Apparently if you forget to import a class, it doesn't fail when you inherit from that non-existent class. 2018-07-18T02:43:53Z skidd0: so does USE_PACKAGE negate the need for prefixes? 2018-07-18T02:43:59Z beach: skidd0: Whereas USE only has to do with whether you need a package prefix or not. 2018-07-18T02:44:05Z skidd0: and doed USE do the same thing? 2018-07-18T02:44:07Z skidd0: oh 2018-07-18T02:44:54Z matzy_ joined #lisp 2018-07-18T02:45:03Z beach: skidd0: But you will do yourself a favor if you use explicit package prefixes. When you come back to your code in the future, you will have forgotten from which package a symbol comes if you can't see the package prefix. 2018-07-18T02:45:27Z skidd0: okay that's a good point 2018-07-18T02:45:32Z fikka joined #lisp 2018-07-18T02:45:46Z beach: skidd0: And even if you have exceptionally good memory, the people who want to use your code and maintain it will have no clue where those symbols come from. 2018-07-18T02:46:15Z matzy_: i have a noob-ish question. for cl-cffi-gtk (gtk bindings for cl) where do you put the folder that you can load it with the command (asdf:load-system :cl-cffi-gtk)? 2018-07-18T02:46:18Z skidd0: that's implying people want to use my code 2018-07-18T02:46:40Z beach: skidd0: That's pretty much the assumption here on freenode isn't it? 2018-07-18T02:46:52Z BitPuffin quit (Remote host closed the connection) 2018-07-18T02:47:05Z matzy_: everyone says to use that command to instll it, but i dont see where you can even point it to the dir. should i put it in my quicklip folder? i thought that was bad for manually installed packages 2018-07-18T02:47:35Z beach: skidd0: I am reminded of the quotation from Charles Simonyi on page 9 of this document: https://www.cs.umd.edu/~nau/cmsc421/norvig-lisp-style.pdf 2018-07-18T02:48:05Z pioneer42 left #lisp 2018-07-18T02:48:33Z ikki quit (Ping timeout: 256 seconds) 2018-07-18T02:48:51Z skidd0: now i have to google inchoate 2018-07-18T02:48:57Z k4rtik quit (Ping timeout: 240 seconds) 2018-07-18T02:49:05Z skidd0: ah 2018-07-18T02:49:16Z beach: mfiano: And notice that there is no definition of "CLOS object" in the Common Lisp HyperSpec. The only reasonable interpretation of such a term would be "any Common Lisp object" (since every Common Lisp object is an instance of a class) which makes it meaningless. 2018-07-18T02:49:34Z skidd0: anddownload this doc 2018-07-18T02:49:40Z skidd0: ty 2018-07-18T02:49:53Z aeth: beach: What's an object defined by defclass called? 2018-07-18T02:49:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-18T02:52:25Z beach: skidd0: Nowadays when I look at some code that I wrote a few years back, I deeply regret having overused USE, because I have no clue where those symbols are coming from, so maintaining that code is a nightmare. I usually start such maintenance by removing the USEes and inserting package prefixes. But even that exercise is VERY DIFFICULT. 2018-07-18T02:52:55Z skidd0: sounds like technical debt 2018-07-18T02:54:22Z anewuser quit (Quit: anewuser) 2018-07-18T02:55:09Z tripty quit (Quit: Gone fishin' ...) 2018-07-18T02:55:27Z Kundry_W_ joined #lisp 2018-07-18T02:56:00Z fikka joined #lisp 2018-07-18T02:58:15Z shka1 joined #lisp 2018-07-18T02:59:06Z wigust- joined #lisp 2018-07-18T02:59:26Z karlosz quit (Quit: karlosz) 2018-07-18T02:59:40Z karlosz joined #lisp 2018-07-18T02:59:45Z Kundry_W_ quit (Ping timeout: 248 seconds) 2018-07-18T03:00:44Z fikka quit (Ping timeout: 260 seconds) 2018-07-18T03:00:45Z karlosz quit (Client Quit) 2018-07-18T03:02:46Z wigust quit (Ping timeout: 264 seconds) 2018-07-18T03:04:52Z nicht quit (Ping timeout: 256 seconds) 2018-07-18T03:06:01Z skidd0: do i have to export a class accessor? 2018-07-18T03:06:07Z fikka joined #lisp 2018-07-18T03:06:25Z mfiano: beach: thanks 2018-07-18T03:06:37Z mfiano: skidd0: only symbols can be exported 2018-07-18T03:06:39Z beach: mfiano: Anytime. 2018-07-18T03:07:01Z beach: skidd0: Any symbol that is intended to be used by client code should be exported. 2018-07-18T03:07:03Z skidd0: so an accessor isn't a symbol? 2018-07-18T03:07:20Z beach: skidd0: Symbols are NAMES. 2018-07-18T03:07:24Z skidd0: i thought exporting the class was enough 2018-07-18T03:07:32Z mfiano: common lisp has many namespaces. an acceaaor symbol may be a few other things too 2018-07-18T03:07:37Z beach: skidd0: You don't export classes or functions. 2018-07-18T03:07:39Z mfiano: accessor* 2018-07-18T03:07:43Z beach: skidd0: You export symbols. 2018-07-18T03:08:07Z skidd0: *i thought exporting the symbol for the class was enough 2018-07-18T03:08:13Z skidd0: to get the accessor 2018-07-18T03:08:32Z beach: skidd0: It will not export the name of the accessor. 2018-07-18T03:08:39Z beach: skidd0: Luckily! 2018-07-18T03:08:54Z beach: skidd0: because not all accessors are intended to be used by client code. 2018-07-18T03:09:13Z skidd0: so i have to do that manually, should i want another package to be able to use it 2018-07-18T03:09:31Z mfiano: Correct 2018-07-18T03:09:35Z beach: skidd0: You are using the wrong terminology. 2018-07-18T03:10:03Z skidd0: should i want anything external to the package to have access to the accessor 2018-07-18T03:10:12Z beach: skidd0: No you don't have to. Others can use the double package prefix. But exporting is a signal that it is meant for client code to use. 2018-07-18T03:10:29Z skidd0: but i thought doubles were no good 2018-07-18T03:10:31Z skidd0: bad code 2018-07-18T03:10:34Z beach: skidd0: That's correct. 2018-07-18T03:10:42Z beach: But you said "able to" and "have to". 2018-07-18T03:10:46Z fikka quit (Ping timeout: 244 seconds) 2018-07-18T03:10:47Z skidd0: ah 2018-07-18T03:11:00Z beach: The correct terminology would be more like "ought to". 2018-07-18T03:11:15Z skidd0: i see 2018-07-18T03:11:27Z jibanes quit (Ping timeout: 240 seconds) 2018-07-18T03:11:33Z beach: skidd0: When you design a module, you first decide on a "protocol". 2018-07-18T03:12:01Z rumbler31 quit (Remote host closed the connection) 2018-07-18T03:12:18Z skidd0: so if i had a TASK-LIST with a TASKS slot (that had a :accessor tasks), i export :tasks? 2018-07-18T03:12:27Z beach: skidd0: A protocol is a collection of types (usually classes) and functions (usually generic functions) that is all the client code needs in order to use your module. 2018-07-18T03:12:35Z skidd0: or :task-list tasks? 2018-07-18T03:12:37Z mfiano: You may even have multiple accessors per slot, and only a selection of them exported for users. 2018-07-18T03:12:39Z beach: skidd0: Then you export the names of those things. 2018-07-18T03:13:17Z skidd0: beach: the protocol basically a collection of higher leverl interfaces to the lower level code 2018-07-18T03:13:18Z beach: skidd0: You have a lot to learn. It is hard to keep up with your questions. 2018-07-18T03:13:27Z skidd0: i'm sorry 2018-07-18T03:13:32Z skidd0: i'm trying to learn 2018-07-18T03:13:36Z jibanes joined #lisp 2018-07-18T03:13:42Z brettgilio quit (Remote host closed the connection) 2018-07-18T03:14:02Z beach: skidd0: Yes, a module (not a Common Lisp term) consists of a protocol (or interface) and its implementation. 2018-07-18T03:14:04Z skidd0: mfiano: why would i want multiple accessors? 2018-07-18T03:14:25Z skidd0: beach, okay. I think i'm on the same page there 2018-07-18T03:14:36Z beach: skidd0: Because you might want the client to be able to define an auxiliary method on one but not on the other. 2018-07-18T03:15:01Z skidd0: oh okay i see 2018-07-18T03:15:07Z beach: skidd0: The small part is the protocol and the big part is the implementation. So you don't want to reveal the implementation in your protocol. 2018-07-18T03:15:29Z beach: skidd0: In particular, slot names should be an implementation detail. 2018-07-18T03:15:36Z mfiano: What I typically do, is I define a reader which is exported, and an accessor symbol with a % prefix which is used internally. That way, users know the slot is read-only, and I can pre-populate it myself through the internal API 2018-07-18T03:15:55Z beach: So you don't export those. Only accessors, and only those accessors that make sense as independent functions, without any reference to slots. 2018-07-18T03:16:48Z graphene quit (Read error: Connection reset by peer) 2018-07-18T03:17:00Z skidd0: i think instead i'll export a reader, like mfiano does, and create an accessor 2018-07-18T03:17:03Z red-dot joined #lisp 2018-07-18T03:17:10Z tripty joined #lisp 2018-07-18T03:17:10Z skidd0: well, keep the accessor 2018-07-18T03:17:14Z mfiano: Multiple accessors per slot starts to make sense when you think of the package system as a protocol for your users 2018-07-18T03:17:20Z beach: skidd0: Now for the technical details of :EXPORT in DEFPACKAGE. The :EXPORT and :SHADOW options of DEFCLASS take what is known as "string designators". 2018-07-18T03:18:08Z graphene joined #lisp 2018-07-18T03:18:26Z beach: skidd0: A string designator can be a string, a character (denoting a singleton string) or A SYMBOL. 2018-07-18T03:18:33Z mfiano: Also note, that the HyperSpec defines "accessor" to be any of reader, writer, or accessor, which might make what I said a bit confusing otherwise 2018-07-18T03:18:58Z Kundry_Wag quit (Remote host closed the connection) 2018-07-18T03:19:00Z beach: skidd0: The thing is that in Common Lisp, symbol names are usually typed in lower case and then turned into upper case by the reader. 2018-07-18T03:19:15Z skidd0: mfiano: so have you mostly beenusing "accessor" to mean the hyperspec def? 2018-07-18T03:19:22Z beach: skidd0: So it looks ugly to have to type :export "MY-ACCESSOR". 2018-07-18T03:19:22Z skidd0: or the specific type of accessor 2018-07-18T03:19:40Z beach: skidd0: Therefore, some people (like me) use symbols instead. 2018-07-18T03:20:07Z beach: skidd0: One possibility is to use symbols from the KEYWORD package, so like :export :my-accessor. 2018-07-18T03:20:33Z skidd0: ah so :my-accessor is a keyword? 2018-07-18T03:20:34Z beach: skidd0: I prefer using uninterned symbols like :export #:my-accessor. 2018-07-18T03:20:54Z brettgilio joined #lisp 2018-07-18T03:21:06Z beach: skidd0: When the reader sees a : at the beginning of a token, it creates a symbol in the KEYWORD package, yes. 2018-07-18T03:21:41Z skidd0: gotcha 2018-07-18T03:23:25Z skidd0: so string designators might be: "EXAMPLE", "example", "a" 2018-07-18T03:23:35Z fikka joined #lisp 2018-07-18T03:23:49Z mfiano: Those are all strings, which are also string designators 2018-07-18T03:23:50Z beach: or #\a, HELLO, :HELLO, #:HELLO 2018-07-18T03:24:00Z skidd0: so #\a is a single char 2018-07-18T03:24:05Z beach: Yes. 2018-07-18T03:24:08Z skidd0: HELLO is a symbol 2018-07-18T03:24:15Z skidd0: :HELLO is a KEYWORD symbol 2018-07-18T03:24:18Z beach: Yes, in the current package when it was read. 2018-07-18T03:24:22Z beach: Yes. 2018-07-18T03:24:25Z skidd0: #:HELLO is uninterned symbol 2018-07-18T03:24:32Z beach: Correct, you got it. 2018-07-18T03:25:01Z skidd0: uninterned meaning not.. "loaded?" into the current running lisp package 2018-07-18T03:25:14Z skidd0: or lisp .. memory? 2018-07-18T03:25:16Z mfiano: interned meaning it's not internal to the package. 2018-07-18T03:25:17Z beach: No it means that it has no package. 2018-07-18T03:25:18Z skidd0: instance? 2018-07-18T03:25:23Z Kundry_Wag joined #lisp 2018-07-18T03:25:34Z skidd0: oh 2018-07-18T03:25:36Z mfiano: err not interned 2018-07-18T03:25:57Z skidd0: it's just some anonymous symbol 2018-07-18T03:25:59Z skidd0: ? 2018-07-18T03:26:10Z beach: skidd0: Try (symbol-package ':hello) (symbol-package 'hello) (symbol-package '#:hello) 2018-07-18T03:26:35Z beach: skidd0: No, it is not anonymous. Anonymous means "has no name" and every symbol has a name. 2018-07-18T03:27:18Z skidd0: so lambdas are anon because they're unnamed 2018-07-18T03:27:20Z beach: skidd0: Then try (symbol-name ...) with those. 2018-07-18T03:27:35Z beach: skidd0: There is no such thing as "a lambda" in Common Lisp. 2018-07-18T03:27:47Z beach: skidd0: There are anonymous FUNCTIONS. 2018-07-18T03:28:06Z skidd0: oh i see from the examples 2018-07-18T03:28:11Z beach: skidd0: You can create such a function by using a "lambda expression". 2018-07-18T03:28:11Z skidd0: same symbol 2018-07-18T03:28:16Z skidd0: different packages 2018-07-18T03:28:17Z beach: NOOOOO 2018-07-18T03:28:25Z skidd0: same symbol name 2018-07-18T03:28:27Z aindilis quit (Ping timeout: 240 seconds) 2018-07-18T03:28:28Z beach: Yes. 2018-07-18T03:28:33Z fikka quit (Ping timeout: 248 seconds) 2018-07-18T03:28:40Z skidd0: not same symbol..? 2018-07-18T03:28:47Z beach: Exactly. 2018-07-18T03:28:47Z mfiano: Do yourself a favor, and run #'inspect on a few different symbols 2018-07-18T03:28:59Z mfiano: Symbols are objects, which include a name, and 4 other properties 2018-07-18T03:29:10Z beach: mfiano: Careful! 2018-07-18T03:29:54Z skidd0: wait the # is in front of the ' quote 2018-07-18T03:29:57Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-18T03:29:58Z brettgilio quit (Remote host closed the connection) 2018-07-18T03:30:00Z skidd0: is that right? 2018-07-18T03:30:05Z mfiano: beach: sorry? 2018-07-18T03:30:15Z beach: mfiano: Some of that stuff is just implementation detail. 2018-07-18T03:30:26Z skidd0: beach: not same symbol becuase, among maybe other things, the symbol-package is different? 2018-07-18T03:30:30Z beach: mfiano: There is nothing in the Common Lisp HyperSpec that says a symbol has a symbol-function slot. 2018-07-18T03:30:57Z mfiano: fair enough. Point being, symbols are objects, much like everything else in Common Lisp. 2018-07-18T03:31:00Z beach: skidd0: Yes, two symbols with different packages are different. 2018-07-18T03:31:10Z skidd0: just the same name 2018-07-18T03:31:15Z skidd0: in the string des 2018-07-18T03:31:19Z skidd0: ? 2018-07-18T03:31:19Z beach: skidd0: But, when the reader sees #:hello, it always creates a new symbol. 2018-07-18T03:31:28Z skidd0: oh 2018-07-18T03:31:32Z skidd0: OH 2018-07-18T03:31:50Z beach: skidd0: Try (eq 'hello 'hello) (eq ':hello ':hello) (eq '#:hello '#:hello) 2018-07-18T03:32:07Z beach: mfiano: Right. 2018-07-18T03:32:43Z skidd0: so the unintered hellos are both new instances of some object 2018-07-18T03:32:51Z skidd0: because the # makes a new one 2018-07-18T03:33:03Z skidd0: and the symbols are objects 2018-07-18T03:33:07Z beach: Yes, the reader always creates a new symbol when it sees #:... 2018-07-18T03:33:15Z skidd0: great, thanks 2018-07-18T03:33:25Z beach: Yes, symbols are objects, like every Common Lisp datum is an object. 2018-07-18T03:33:34Z mfiano: It's not really the # solely that is making something new. 2018-07-18T03:34:03Z sknx quit (Remote host closed the connection) 2018-07-18T03:34:24Z sknx joined #lisp 2018-07-18T03:34:33Z beach: skidd0: What mfiano says. It is the syntax #:... that makes the reader create a fresh symbol. 2018-07-18T03:34:42Z mfiano: #(1 2 3) is literal data, for example. 2018-07-18T03:35:03Z skidd0: i see 2018-07-18T03:35:25Z skidd0: meaning it's not '#' making new, but when the reader hits '#:' 2018-07-18T03:35:47Z skidd0: wearas #(1 2 3) and #/c are literals 2018-07-18T03:35:55Z mfiano: # is (usually) a dispatching character for the Common Lisp reader 2018-07-18T03:36:34Z beach: clhs 2.4.8.5 2018-07-18T03:36:34Z specbot: Sharpsign Colon: http://www.lispworks.com/reference/HyperSpec/Body/02_dhe.htm 2018-07-18T03:36:54Z beach: skidd0: ↑ 2018-07-18T03:38:13Z beach: skidd0: You may want to look at 2.4.8.3 and 2.4.8.1 as well. 2018-07-18T03:39:27Z Pixel_Outlaw quit (Remote host closed the connection) 2018-07-18T03:41:32Z skidd0: hmm 2018-07-18T03:42:07Z matzy_: is there a good guide on how to get a simple GUI app up and running using cl? 2018-07-18T03:42:18Z matzy_: preferably gtk at the lib 2018-07-18T03:43:39Z brettgilio joined #lisp 2018-07-18T03:43:55Z fikka joined #lisp 2018-07-18T03:44:41Z mfiano: matzy_: Probably not. GTK is a beast, and there isn't really anything "simple" about it, or really any GUI programming. Shinmera has created quite a few tools around Qt because of the fact, even though Qt's API is only slightly better. 2018-07-18T03:45:49Z matzy_: mfiano: so how would you build a native gui program with cl? 2018-07-18T03:45:57Z matzy_: or how do most people? 2018-07-18T03:46:47Z mfiano: i would use something more native to CL, like McCLIM. Or I would use something hosted, like SDL2 with OpenGL, or a web frontend if it fits the problem. 2018-07-18T03:48:10Z matzy_: Really I just want to make a gui app for my personal use. Ive been wanting to learn cl for a long time, and i finally have a worthwhile personal project to do with whatever language i want 2018-07-18T03:49:09Z fikka quit (Ping timeout: 260 seconds) 2018-07-18T03:49:09Z matzy_: i use linux though, and havent had to bring in qt yet (run a tiling wm instead of DE) 2018-07-18T03:49:47Z dddddd quit (Remote host closed the connection) 2018-07-18T03:50:07Z milanj__ quit (Quit: This computer has gone to sleep) 2018-07-18T03:50:08Z beach: matzy_: I would personally avoid learning Common Lisp by writing a GUI application because GUI applications are hard. 2018-07-18T03:50:18Z Kundry_Wag joined #lisp 2018-07-18T03:50:23Z mfiano: ^ 2018-07-18T03:50:45Z robotoad joined #lisp 2018-07-18T03:51:00Z beach: matzy_: And you will have lots of problems if you start off by using FFI as well. 2018-07-18T03:51:29Z beach: matzy_: Debugging becomes a nightmare. You will have segmentation faults and other messy stuff that is typical in less safe languages. 2018-07-18T03:51:43Z mfiano: Start by learning Common Lisp. Not just using Common Lisp as a stepping stone to foreign libraries. You're bound to fall and get dirty 2018-07-18T03:52:14Z beach: matzy_: Plus, by mixing languages, you put yourself in a situation where you don't have any good debugging tools. 2018-07-18T03:54:04Z beach: matzy_: Now, McCLIM is a GUI toolkit that is (almost) entirely written in Common Lisp. But to use it, you need to know about generic functions and lots of other things that is not typical to learn in the beginning. 2018-07-18T03:54:31Z matzy_: it's pretty simple. I use arch + i3, so I just launch apps thrugh stuff like rofi. the problem comes when you cant remember an apps name (like, what was that pdf reader i instaled?). i wanted to build some GUI app organizer you could use to categorize and launch common gui apps. some small utility just for me 2018-07-18T03:54:46Z fikka joined #lisp 2018-07-18T03:54:59Z beach: matzy_: McCLIM would be ideal for that. 2018-07-18T03:55:10Z mfiano: You'd be better off writing a rofi script for that using Common Lisp. 2018-07-18T03:55:13Z beach: matzy_: But it takes some investment to learn. 2018-07-18T03:55:36Z matzy_: all great points.....hmmm 2018-07-18T03:55:58Z mfiano: rofi can do more than just act as a dmenu replacement. It is scriptable, calling out to any binary to do the heavy lifting 2018-07-18T03:56:08Z matzy_: ive just been looking for something to do in cl for awhile, because im not one to sit through endless tutorials. i like learning by building something 2018-07-18T03:56:16Z mfiano: So use Common Lisp to do the backend work. then you aren't writing a GUI...you are leveraging what you already use 2018-07-18T03:56:38Z matzy_: mfiano: that's such a great idea 2018-07-18T03:57:11Z matzy_: how do i get cl to talk to rofi though? some c api? 2018-07-18T03:58:15Z mfiano: You can use uiop:run-program, etc, to call out to rofi within Common Lisp. 2018-07-18T03:59:09Z sauvin joined #lisp 2018-07-18T03:59:21Z fikka quit (Ping timeout: 240 seconds) 2018-07-18T03:59:51Z matzy_: wow...so i could take a list of all sysem apps in cl, filter to get how i want, and then present in a cutom rofi window? 2018-07-18T03:59:51Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-18T04:00:01Z mfiano: Why not? 2018-07-18T04:01:13Z matzy_: this is an awesome idea. and really useful too, a perfec project to learn on. thanks a million for the idea man! 2018-07-18T04:01:23Z mfiano: Sure. Good luck. 2018-07-18T04:01:24Z patlv quit (Ping timeout: 244 seconds) 2018-07-18T04:04:48Z fikka joined #lisp 2018-07-18T04:04:52Z sauvin quit (Max SendQ exceeded) 2018-07-18T04:05:59Z JuanDaugherty joined #lisp 2018-07-18T04:09:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-18T04:09:36Z sauvin joined #lisp 2018-07-18T04:11:15Z matzy_ quit (Quit: Page closed) 2018-07-18T04:12:30Z rumbler31 joined #lisp 2018-07-18T04:14:58Z fikka joined #lisp 2018-07-18T04:17:27Z rumbler31 quit (Ping timeout: 240 seconds) 2018-07-18T04:19:29Z fikka quit (Ping timeout: 244 seconds) 2018-07-18T04:23:06Z asarch quit (Quit: Leaving) 2018-07-18T04:25:07Z Bike quit (Quit: Lost terminal) 2018-07-18T04:26:07Z robotoad quit (Read error: Connection reset by peer) 2018-07-18T04:26:35Z brendyn quit (Ping timeout: 256 seconds) 2018-07-18T04:27:16Z robotoad joined #lisp 2018-07-18T04:29:51Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-18T04:30:05Z mooshmoosh quit (Remote host closed the connection) 2018-07-18T04:31:29Z mflem quit (Read error: Connection reset by peer) 2018-07-18T04:32:33Z red-dot joined #lisp 2018-07-18T04:35:05Z fikka joined #lisp 2018-07-18T04:39:54Z fikka quit (Ping timeout: 260 seconds) 2018-07-18T04:40:38Z Kundry_Wag joined #lisp 2018-07-18T04:44:57Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-18T04:45:28Z fikka joined #lisp 2018-07-18T04:47:19Z sknx quit (Remote host closed the connection) 2018-07-18T04:50:09Z fikka quit (Ping timeout: 248 seconds) 2018-07-18T04:50:40Z Kundry_Wag joined #lisp 2018-07-18T04:51:40Z igemnace joined #lisp 2018-07-18T04:55:05Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-18T04:56:27Z skidd0: kj/quit 2018-07-18T04:56:29Z skidd0 quit (Quit: WeeChat 2.1) 2018-07-18T05:04:46Z Inline quit (Remote host closed the connection) 2018-07-18T05:04:53Z mathrick quit (Ping timeout: 265 seconds) 2018-07-18T05:05:05Z vlatkoB joined #lisp 2018-07-18T05:05:11Z pierpal quit (Quit: Poof) 2018-07-18T05:05:24Z saki quit (Quit: saki) 2018-07-18T05:05:37Z pierpal joined #lisp 2018-07-18T05:19:23Z ccl-logbot joined #lisp 2018-07-18T05:19:23Z 2018-07-18T05:19:23Z names: ccl-logbot jgkamat krwq rumbler31 bend3r_ cibs_ shachaf_ snits_ mrSpec` lin__ sveit_ beaumonta Kaisyu72 alter-schjetne zmt01 saki pierpal vlatkoB igemnace red-dot robotoad sauvin JuanDaugherty brettgilio graphene tripty jibanes wigust- shka1 AetherWind kerrhau krrrcks eli_oat reu ebrasca moei Jesin bexx_ Lord_of_Life krator44 nowhere_man sjl caltelt Kaisyu Ziemas klltkr slyrus_ terpri slyrus aeth jfb4 X-Scale lnostdal djh zooey hvxgr housel scymtym Folkol 2018-07-18T05:19:23Z names: Khisanth vap1 cgay_ Posterdati gigetoo DataLinkDroid Murii impulse Oddity capisce ravndal ebzzry himmAllRIght17 giraffe cmatei cods gabiruh troydm vsync vxe zotan dxtr hvxgr_ sendai_ papachan jkordani MinnowTaur pfdietz acolarh cyberlard Cymew froggey larme mingus thijso easye saturn2 Guest48278 kushal dmiles Lord_Nightmare loli jack_rabbit kjeldahl vhost- edgar-rft |3b| minion specbot grumble Intensity kozy knx mrcom whartung phoe beach gector DGASAU 2018-07-18T05:19:23Z names: nullman ym d4ryus adlai fluke` quazimodo flip214 libre-man ineiros vertigo jdz bigfondue earl-ducaine dim koenig jeosol Tristam joast nimiux crsc angular_mike_2 trittweiler dcluna jonh asdf123 groovy2shoes copec iskander sabrac vibs29 PuercoPop k-hos arbxs xantoz nckx uint jxy nhandler_ lansiir flazh Ober HDurer catern kori runejuhl phadthai dlowe juristi1 justinmcp reverse_1ight eagleflo_ tessier_ vert2_ mrm sakalli_ asedeno borodust tazjin Plazma 2018-07-18T05:19:23Z names: stacksmith White_Flame energizer Cthulhux zaquest msb himmAllRight carmack CharlieBrown plll[m] GNUPONUT[m] eli_oat[m] drunk_foxx[m] thorondor[m] theemacsshibe[m] sigjuice pchrist dvdmuckle dilated_dinosaur guaqua svillemot Tordek shaftoe_ felideon djinni` mfiano eschatologist nopf l1x ramus starman_jr exit70 terrorjack rann nyaray Patternmaster ft sword kini rotty evilbot23 payphone sellout- cpape khrbt cpt_nemo bhyde Zhivago Myon knobo shenghi swflint 2018-07-18T05:19:23Z names: CrazyEddy peccu4 Yaargh shka lemoinem alphor askatasuna jackdaniel loke drewc clog inoperable blt ArthurAGleckler[ can3p[m] dirb z3r0d5y[m] lyosha[m] RichardPaulBck[m hdurer[m] equalunique[m] manila[m] EuAndreh[m] kumori[m] blep-on-external Jachy eatonphil katco[m] Guest3496 remix2000[m] spectrumgomas[m] kammd[m] wetha LdBeth thinkpad zigpaw samebchase argoneus lel MetaYan dan64 aijony Blkt @fe[nl]ix cgay gendl beaky funnel Xof les Patzy nydel davsebamse 2018-07-18T05:19:23Z names: CEnnis91 brandonz Ricchi alandipert foom eMBee lonjil drot viaken gsl fm4d fortitude sukaeto greaser|q meowray bailon jyc johs isoraqathedh Meow-J___ jhei convexferret tfb kilimanjaro stylewarning Duns_Scrotus zkat XachX gz weltung parseval drmeister danlentz @p_l mbrock_ splittist tobel rme trig-ger_ Mandus trn _death bmansurov engblom umpc lugh tokenrove stux|RC hjudt ninegrid ecraven simplegauss TMA fluxit APic spacepluk kbtr_ tkd Xach pok malm Anthaas 2018-07-18T05:19:23Z names: abbe kqr devn mulk f32ff otwieracz michalisko Colleen xristos Firedancer s0lar_ Aritheanie sbryant spacedbat gingerale galdor sellout Nikotiini jurov raydeejay z0d renard_ philosau1 jsnell_ creat bkst lowryder stux|RC-only antoszka bheesham pacon_ cross cmbntr gko pankracy pyc rgrau lxpz micro sshirokov emma Fade GGMethos Guest43104 mood eschulte_ drdo spal ozzloy [df]_ luis deba5e12 gabot fouric theBlackDragon Mon_Ouie AdmiralBumbleBee zymurgy arrsim 2018-07-18T05:19:23Z names: SlashLife mikaelj ircbrowse_ joga ghostyy jself azrazalea tomaw 2018-07-18T05:19:42Z nickenchuggets joined #lisp 2018-07-18T05:19:42Z dieggsy joined #lisp 2018-07-18T05:19:51Z rumbler31 quit (Ping timeout: 256 seconds) 2018-07-18T05:19:58Z shachaf_ is now known as shachaf 2018-07-18T05:22:08Z bitch joined #lisp 2018-07-18T05:23:15Z _whitelogger joined #lisp 2018-07-18T05:25:52Z JuanDaugherty quit (Quit: Exeunt) 2018-07-18T05:26:08Z fikka joined #lisp 2018-07-18T05:30:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-18T05:30:58Z robotoad quit (Quit: robotoad) 2018-07-18T05:31:21Z iqubic` joined #lisp 2018-07-18T05:31:35Z terpri quit (Ping timeout: 240 seconds) 2018-07-18T05:31:54Z iqubic`: How are you guys doing right now? 2018-07-18T05:33:02Z ofi joined #lisp 2018-07-18T05:34:47Z robotoad joined #lisp 2018-07-18T05:35:16Z kajo joined #lisp 2018-07-18T05:35:16Z Arcaelyx joined #lisp 2018-07-18T05:35:16Z jasmith joined #lisp 2018-07-18T05:35:16Z itruslove joined #lisp 2018-07-18T05:35:16Z dkrm joined #lisp 2018-07-18T05:35:16Z Kevslinger joined #lisp 2018-07-18T05:35:16Z voidlily joined #lisp 2018-07-18T05:35:16Z jasom joined #lisp 2018-07-18T05:35:16Z thekolb joined #lisp 2018-07-18T05:35:16Z billstclair joined #lisp 2018-07-18T05:35:16Z jerme__ joined #lisp 2018-07-18T05:35:16Z devlaf joined #lisp 2018-07-18T05:35:16Z mjl joined #lisp 2018-07-18T05:35:16Z banjiewen joined #lisp 2018-07-18T05:35:16Z alms_clozure joined #lisp 2018-07-18T05:35:16Z rvirding joined #lisp 2018-07-18T05:35:16Z adulteratedjedi joined #lisp 2018-07-18T05:35:16Z d4gg4d_ joined #lisp 2018-07-18T05:35:16Z PyroLagus joined #lisp 2018-07-18T05:35:16Z esthlos joined #lisp 2018-07-18T05:35:16Z lieven joined #lisp 2018-07-18T05:35:54Z iqubic` left #lisp 2018-07-18T05:36:22Z flamebeard joined #lisp 2018-07-18T05:37:08Z iqubic joined #lisp 2018-07-18T05:37:15Z iqubic left #lisp 2018-07-18T05:37:27Z bitch quit (Ping timeout: 240 seconds) 2018-07-18T05:40:33Z Kundry_Wag joined #lisp 2018-07-18T05:42:06Z parjanya joined #lisp 2018-07-18T05:42:16Z bitch joined #lisp 2018-07-18T05:45:14Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-18T05:46:26Z fikka joined #lisp 2018-07-18T05:49:00Z krwq quit (Remote host closed the connection) 2018-07-18T05:51:13Z thinkpad quit (Ping timeout: 256 seconds) 2018-07-18T05:51:51Z fikka quit (Ping timeout: 240 seconds) 2018-07-18T05:51:54Z thinkpad joined #lisp 2018-07-18T05:56:09Z nickenchuggets quit (Quit: Leaving) 2018-07-18T05:56:59Z fikka joined #lisp 2018-07-18T06:01:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-18T06:06:33Z scymtym quit (Remote host closed the connection) 2018-07-18T06:07:28Z fikka joined #lisp 2018-07-18T06:10:02Z Kundry_Wag joined #lisp 2018-07-18T06:12:21Z fikka quit (Ping timeout: 264 seconds) 2018-07-18T06:14:56Z Kundry_Wag quit (Ping timeout: 276 seconds) 2018-07-18T06:15:50Z rumbler31 joined #lisp 2018-07-18T06:16:59Z gigetoo quit (Read error: Connection reset by peer) 2018-07-18T06:17:25Z gigetoo joined #lisp 2018-07-18T06:17:48Z fikka joined #lisp 2018-07-18T06:20:47Z rumbler31 quit (Ping timeout: 276 seconds) 2018-07-18T06:21:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-18T06:22:21Z parjanya quit (Remote host closed the connection) 2018-07-18T06:22:47Z graphene quit (Remote host closed the connection) 2018-07-18T06:23:40Z parjanya joined #lisp 2018-07-18T06:24:07Z graphene joined #lisp 2018-07-18T06:27:12Z light2yellow joined #lisp 2018-07-18T06:27:26Z fikka joined #lisp 2018-07-18T06:32:23Z fikka quit (Ping timeout: 256 seconds) 2018-07-18T06:33:16Z schjetne joined #lisp 2018-07-18T06:35:45Z alter-schjetne quit (Ping timeout: 248 seconds) 2018-07-18T06:37:57Z fikka joined #lisp 2018-07-18T06:38:43Z terpri joined #lisp 2018-07-18T06:55:23Z Kundry_Wag joined #lisp 2018-07-18T06:55:53Z fikka quit (Ping timeout: 276 seconds) 2018-07-18T06:59:01Z fikka joined #lisp 2018-07-18T07:00:10Z Kundry_Wag quit (Ping timeout: 244 seconds) 2018-07-18T07:01:16Z Smokitch joined #lisp 2018-07-18T07:03:29Z fikka quit (Ping timeout: 248 seconds) 2018-07-18T07:04:15Z chiyosaki joined #lisp 2018-07-18T07:04:25Z xificurC joined #lisp 2018-07-18T07:04:34Z saki quit (Ping timeout: 264 seconds) 2018-07-18T07:07:14Z igemnace quit (Read error: Connection reset by peer) 2018-07-18T07:07:52Z mathrick joined #lisp 2018-07-18T07:08:55Z igemnace joined #lisp 2018-07-18T07:10:52Z fikka joined #lisp 2018-07-18T07:17:43Z hajovonta joined #lisp 2018-07-18T07:22:04Z shka1 quit (Ping timeout: 260 seconds) 2018-07-18T07:23:10Z nostoi joined #lisp 2018-07-18T07:23:25Z hajovonta: hi 2018-07-18T07:25:18Z heisig joined #lisp 2018-07-18T07:26:56Z saki joined #lisp 2018-07-18T07:27:41Z mgsk joined #lisp 2018-07-18T07:28:29Z chiyosaki quit (Ping timeout: 260 seconds) 2018-07-18T07:28:45Z beach: Hello hajovonta. 2018-07-18T07:28:53Z pierpal quit (Quit: Poof) 2018-07-18T07:28:53Z hajovonta: hi beach 2018-07-18T07:29:11Z pierpal joined #lisp 2018-07-18T07:32:21Z igemnace quit (Quit: WeeChat 2.2) 2018-07-18T07:32:44Z mrSpec` quit (Changing host) 2018-07-18T07:32:44Z mrSpec` joined #lisp 2018-07-18T07:32:48Z mrSpec` is now known as mrSpec 2018-07-18T07:43:11Z nostoi quit (Quit: Verlassend) 2018-07-18T07:44:35Z jfb4 quit (Ping timeout: 240 seconds) 2018-07-18T07:45:40Z scymtym joined #lisp 2018-07-18T07:47:29Z svillemot quit (Quit: reboot) 2018-07-18T07:50:20Z svillemot joined #lisp 2018-07-18T07:57:23Z iskander quit (Ping timeout: 256 seconds) 2018-07-18T07:58:12Z iskander joined #lisp 2018-07-18T07:58:54Z chiyosaki joined #lisp 2018-07-18T07:59:05Z saki quit (Ping timeout: 240 seconds) 2018-07-18T08:02:56Z makomo joined #lisp 2018-07-18T08:06:44Z saki joined #lisp 2018-07-18T08:07:37Z igemnace joined #lisp 2018-07-18T08:07:56Z MinnowTaur quit (Remote host closed the connection) 2018-07-18T08:09:59Z chiyosaki quit (Ping timeout: 276 seconds) 2018-07-18T08:10:35Z Folkol_ joined #lisp 2018-07-18T08:13:51Z hhdave joined #lisp 2018-07-18T08:14:32Z makomo quit (Ping timeout: 276 seconds) 2018-07-18T08:14:52Z MinnowTaur joined #lisp 2018-07-18T08:15:42Z saki quit (Quit: saki) 2018-07-18T08:15:57Z vertigo quit (Ping timeout: 240 seconds) 2018-07-18T08:17:02Z vertigo joined #lisp 2018-07-18T08:17:19Z rumbler31 joined #lisp 2018-07-18T08:18:34Z saki joined #lisp 2018-07-18T08:19:40Z kerrhau quit (Ping timeout: 265 seconds) 2018-07-18T08:20:57Z milanj__ joined #lisp 2018-07-18T08:21:48Z rumbler31 quit (Ping timeout: 244 seconds) 2018-07-18T08:25:53Z Kundry_Wag joined #lisp 2018-07-18T08:27:57Z MinnowTaur quit (Remote host closed the connection) 2018-07-18T08:30:19Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-18T08:31:08Z yaewa joined #lisp 2018-07-18T08:31:42Z hajovonta quit (Quit: hajovonta) 2018-07-18T08:32:31Z moei quit (Ping timeout: 256 seconds) 2018-07-18T08:45:09Z parjanya quit (Remote host closed the connection) 2018-07-18T08:45:27Z ofi quit (Remote host closed the connection) 2018-07-18T08:45:40Z schweers joined #lisp 2018-07-18T08:47:57Z _cosmonaut_ joined #lisp 2018-07-18T08:50:18Z angavrilov joined #lisp 2018-07-18T08:56:48Z graphene quit (Remote host closed the connection) 2018-07-18T08:58:12Z graphene1 joined #lisp 2018-07-18T08:58:54Z graphene1 quit (Remote host closed the connection) 2018-07-18T08:59:07Z ofi joined #lisp 2018-07-18T09:00:13Z graphene joined #lisp 2018-07-18T09:03:06Z m00natic joined #lisp 2018-07-18T09:03:10Z zmt01 quit (Read error: Connection reset by peer) 2018-07-18T09:03:33Z zmt01 joined #lisp 2018-07-18T09:09:52Z m00natic quit (Ping timeout: 276 seconds) 2018-07-18T09:16:48Z pierpal quit (Quit: Poof) 2018-07-18T09:21:54Z pierpal joined #lisp 2018-07-18T09:22:03Z random-nick joined #lisp 2018-07-18T09:26:11Z m00natic joined #lisp 2018-07-18T09:26:36Z Kundry_Wag joined #lisp 2018-07-18T09:30:30Z cibs_ is now known as cibs 2018-07-18T09:31:13Z Kundry_Wag quit (Ping timeout: 248 seconds) 2018-07-18T09:33:14Z dddddd joined #lisp 2018-07-18T09:33:56Z Folkol_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-18T09:45:27Z Folkol_ joined #lisp 2018-07-18T09:45:30Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-18T09:45:31Z zooey quit (Remote host closed the connection) 2018-07-18T09:45:46Z zooey joined #lisp 2018-07-18T09:46:24Z aindilis joined #lisp 2018-07-18T09:52:02Z kajo quit (Ping timeout: 276 seconds) 2018-07-18T09:58:51Z froggey quit (Ping timeout: 240 seconds) 2018-07-18T10:00:41Z froggey joined #lisp 2018-07-18T10:08:35Z terpri quit (Ping timeout: 240 seconds) 2018-07-18T10:09:27Z dmiles quit (Ping timeout: 240 seconds) 2018-07-18T10:10:03Z beaumonta is now known as abeaumont 2018-07-18T10:11:31Z logicmoo joined #lisp 2018-07-18T10:14:36Z AetherWind quit (Quit: Leaving) 2018-07-18T10:21:23Z Kaisyu quit (Quit: Connection closed for inactivity) 2018-07-18T10:24:38Z lumm joined #lisp 2018-07-18T10:28:00Z flamebeard quit (Ping timeout: 256 seconds) 2018-07-18T10:38:39Z markoong joined #lisp 2018-07-18T10:42:06Z milanj__ quit (Quit: This computer has gone to sleep) 2018-07-18T10:42:42Z kajo joined #lisp 2018-07-18T10:43:25Z brendyn joined #lisp 2018-07-18T10:46:46Z cpape` joined #lisp 2018-07-18T10:49:17Z cpape quit (Ping timeout: 256 seconds) 2018-07-18T10:56:32Z cpape` quit (Remote host closed the connection) 2018-07-18T10:57:04Z cpape joined #lisp 2018-07-18T11:03:11Z makomo joined #lisp 2018-07-18T11:06:12Z flamebeard joined #lisp 2018-07-18T11:08:30Z makomo_ joined #lisp 2018-07-18T11:11:45Z makomo quit (Ping timeout: 264 seconds) 2018-07-18T11:13:41Z yaewa quit (Quit: Leaving...) 2018-07-18T11:16:52Z gravicappa joined #lisp 2018-07-18T11:23:24Z milanj__ joined #lisp 2018-07-18T11:24:07Z orivej joined #lisp 2018-07-18T11:24:59Z fikka quit (Ping timeout: 276 seconds) 2018-07-18T11:38:09Z fikka joined #lisp 2018-07-18T11:42:49Z fikka quit (Ping timeout: 260 seconds) 2018-07-18T11:46:54Z orivej quit (Ping timeout: 260 seconds) 2018-07-18T11:47:46Z orivej joined #lisp 2018-07-18T11:50:38Z ykm joined #lisp 2018-07-18T11:52:51Z vhost- quit (Ping timeout: 240 seconds) 2018-07-18T11:53:14Z rumbler31 joined #lisp 2018-07-18T11:58:08Z rumbler31 quit (Ping timeout: 276 seconds) 2018-07-18T11:59:27Z acolarh quit (Ping timeout: 240 seconds) 2018-07-18T12:00:45Z rpg joined #lisp 2018-07-18T12:02:57Z orivej quit (Ping timeout: 240 seconds) 2018-07-18T12:03:21Z carmack quit (Ping timeout: 240 seconds) 2018-07-18T12:03:23Z rumbler31 joined #lisp 2018-07-18T12:03:28Z xaotuk joined #lisp 2018-07-18T12:04:46Z fikka joined #lisp 2018-07-18T12:05:34Z rpg quit (Ping timeout: 260 seconds) 2018-07-18T12:06:37Z terpri joined #lisp 2018-07-18T12:07:50Z moei joined #lisp 2018-07-18T12:07:57Z rumbler31 quit (Ping timeout: 240 seconds) 2018-07-18T12:08:24Z nowhere_man joined #lisp 2018-07-18T12:11:08Z ykm quit (Ping timeout: 276 seconds) 2018-07-18T12:11:39Z pierpal quit (Quit: Poof) 2018-07-18T12:11:57Z pierpal joined #lisp 2018-07-18T12:12:09Z ykm joined #lisp 2018-07-18T12:12:56Z acolarh joined #lisp 2018-07-18T12:13:38Z rumbler31 joined #lisp 2018-07-18T12:15:02Z _cosmonaut_ quit (Ping timeout: 276 seconds) 2018-07-18T12:18:26Z rumbler31 quit (Ping timeout: 265 seconds) 2018-07-18T12:19:07Z xificurC quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2018-07-18T12:23:12Z Kundry_Wag joined #lisp 2018-07-18T12:27:16Z Kundry_Wag quit (Remote host closed the connection) 2018-07-18T12:32:09Z ykm quit (Quit: Yaaic - Yet another Android IRC client - http://www.yaaic.org) 2018-07-18T12:33:24Z ykm joined #lisp 2018-07-18T12:38:30Z chiyosaki joined #lisp 2018-07-18T12:40:58Z saki quit (Ping timeout: 268 seconds) 2018-07-18T12:42:34Z light2yellow quit (Quit: light2yellow) 2018-07-18T12:44:44Z terpri quit (Remote host closed the connection) 2018-07-18T12:45:19Z saki joined #lisp 2018-07-18T12:45:35Z chiyosaki quit (Ping timeout: 276 seconds) 2018-07-18T12:46:12Z FreeBirdLjj joined #lisp 2018-07-18T12:48:12Z JuanDaugherty joined #lisp 2018-07-18T12:49:25Z saki quit (Ping timeout: 245 seconds) 2018-07-18T12:50:55Z FreeBirdLjj quit (Ping timeout: 256 seconds) 2018-07-18T12:51:27Z saki joined #lisp 2018-07-18T12:53:40Z LiamH joined #lisp 2018-07-18T12:54:12Z Arcaelyx quit (Read error: Connection reset by peer) 2018-07-18T12:55:38Z Arcaelyx_ joined #lisp 2018-07-18T12:57:11Z patlv joined #lisp 2018-07-18T12:58:11Z Kundry_Wag joined #lisp 2018-07-18T12:58:34Z chiyosaki joined #lisp 2018-07-18T12:59:25Z saki quit (Ping timeout: 256 seconds) 2018-07-18T12:59:49Z xificurC joined #lisp 2018-07-18T13:03:08Z Kundry_Wag quit (Ping timeout: 276 seconds) 2018-07-18T13:03:35Z chiyosaki quit (Ping timeout: 245 seconds) 2018-07-18T13:04:26Z Bike joined #lisp 2018-07-18T13:04:33Z caltelt quit (Ping timeout: 248 seconds) 2018-07-18T13:06:15Z azrazalea quit (Quit: ZNC 1.6.2+deb2~bpo8+1 - http://znc.in) 2018-07-18T13:07:54Z caltelt joined #lisp 2018-07-18T13:08:03Z azrazalea joined #lisp 2018-07-18T13:09:31Z aindilis quit (Read error: Connection reset by peer) 2018-07-18T13:16:19Z ikki joined #lisp 2018-07-18T13:17:15Z xificurC: (read (process-output (sb-ext:run-program "/bin/sh" '("-c" "export-lisp") :output :stream))) is there something inherently wrong with such code? It keeps hanging in some cases even though the internal program always finishes when running from the shell directly 2018-07-18T13:18:55Z graphene quit (Remote host closed the connection) 2018-07-18T13:20:14Z graphene joined #lisp 2018-07-18T13:20:37Z aindilis joined #lisp 2018-07-18T13:20:38Z flip214: xificurC: run-program waits for the process to close. 2018-07-18T13:20:50Z flip214: but the process will block if the pipe is too small to hold all the output at once. 2018-07-18T13:20:55Z flip214: => deadlock. 2018-07-18T13:21:38Z flip214: use UIOP:launch-program (or use :wait nil), read the stream, and then explicitly let it stop (== read the return code) 2018-07-18T13:22:10Z flip214: xificurC: and/or use "strace" to find out what happens exactly 2018-07-18T13:25:32Z mindCrime joined #lisp 2018-07-18T13:25:42Z xificurC: flip214: ah, I tried :wait nil and then (read (process-output process)) (process-close process) but forgot to return the read value... That works. uiop:run-program worked too so I knew it must be something me doing wrong 2018-07-18T13:25:54Z xificurC: flip214: I tried running strace and could only see write is waiting 2018-07-18T13:26:14Z xificurC: didn't realize that means the pipe is full 2018-07-18T13:27:14Z milanj__ quit (Quit: This computer has gone to sleep) 2018-07-18T13:29:36Z xificurC: flip214: thank you 2018-07-18T13:31:19Z nowhere_man quit (Ping timeout: 260 seconds) 2018-07-18T13:31:46Z graphene quit (Remote host closed the connection) 2018-07-18T13:33:07Z graphene joined #lisp 2018-07-18T13:33:29Z Inline joined #lisp 2018-07-18T13:42:04Z ykm quit (Remote host closed the connection) 2018-07-18T13:43:57Z sendai_ quit (Ping timeout: 240 seconds) 2018-07-18T13:44:35Z eagleflo_ is now known as eagleflo 2018-07-18T13:44:44Z brettgilio quit (Ping timeout: 260 seconds) 2018-07-18T13:45:17Z Kundry_Wag joined #lisp 2018-07-18T13:52:40Z subroot joined #lisp 2018-07-18T13:53:47Z graphene quit (Remote host closed the connection) 2018-07-18T13:54:02Z flamebeard quit 2018-07-18T13:54:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-18T13:55:21Z graphene joined #lisp 2018-07-18T13:57:26Z patlv quit (Ping timeout: 268 seconds) 2018-07-18T14:02:36Z heisig quit (Quit: Leaving) 2018-07-18T14:03:11Z milanj__ joined #lisp 2018-07-18T14:03:44Z nowhere_man joined #lisp 2018-07-18T14:03:50Z mindCrime quit (Ping timeout: 244 seconds) 2018-07-18T14:05:44Z JuanDaugherty quit (Quit: Exeunt) 2018-07-18T14:11:34Z sjl_ joined #lisp 2018-07-18T14:12:22Z vlad_ joined #lisp 2018-07-18T14:12:56Z warweasle joined #lisp 2018-07-18T14:14:42Z vlad_ is now known as DonVlad 2018-07-18T14:15:29Z wildbartty joined #lisp 2018-07-18T14:21:03Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-18T14:26:32Z red-dot joined #lisp 2018-07-18T14:31:33Z nowhere_man quit (Ping timeout: 264 seconds) 2018-07-18T14:32:39Z lin__ left #lisp 2018-07-18T14:32:50Z HighMemoryDaemon joined #lisp 2018-07-18T14:33:50Z HighMemoryDaemon: Caveman uses a syntax feature of Lisp I have not seen before. Ex. '@route GET "/"' - What is this syntax feature called? 2018-07-18T14:34:07Z HighMemoryDaemon: Reminds me of Python decorators. 2018-07-18T14:34:07Z dlowe: HighMemoryDaemon: you can define new syntax in common lisp 2018-07-18T14:34:12Z _death: reader macro 2018-07-18T14:34:18Z random-nick: HighMemoryDaemon: it's a reader macro defined by caveman 2018-07-18T14:34:34Z HighMemoryDaemon: Whoa.. 2018-07-18T14:35:10Z HighMemoryDaemon: That is really cool. 2018-07-18T14:35:11Z random-nick: HighMemoryDaemon: reader macros work by telling the reader to call a function when encountering a certain character on the beginning of an expression 2018-07-18T14:35:34Z random-nick: the function gets the input stream and it returns the read expression 2018-07-18T14:36:29Z random-nick: the simplest reader macro is probably quote ('), which reads the following expression and returns it wrapped in a (quote ...) form 2018-07-18T14:36:29Z cpc26 joined #lisp 2018-07-18T14:38:44Z charh joined #lisp 2018-07-18T14:39:07Z antoszka: You can use reader macros to quite trivially create, say, a literal syntax for hashes. 2018-07-18T14:39:15Z sjl_: it might use cl-annot for those https://github.com/m2ym/cl-annot 2018-07-18T14:39:35Z HighMemoryDaemon: That is very cool. Not saying that it is worth doing at all, but using these macros, couldn't you do something like re-make the entire Python or Ruby programming languages..within Lisp? 2018-07-18T14:39:59Z antoszka: HighMemoryDaemon: To some extent, yes, but why would you? :) 2018-07-18T14:40:51Z _death: https://en.wikipedia.org/wiki/CGOL 2018-07-18T14:41:58Z HighMemoryDaemon: _death: Nice find. That is impressive 2018-07-18T14:42:58Z _death: it's impressive if you're a lisp newbie 2018-07-18T14:43:05Z _death: otherwise, it's silly 2018-07-18T14:43:14Z jdz: +1 2018-07-18T14:44:04Z HighMemoryDaemon: Well, that's me. I wouldn't have a need to use it but it's just cool that it's possible. 2018-07-18T14:45:09Z _death: the parsing technique invented there is interesting though 2018-07-18T14:45:32Z cpc26 quit 2018-07-18T14:45:55Z beach: Which one is it? 2018-07-18T14:45:57Z jdz: clhs 2.4 2018-07-18T14:45:57Z specbot: Standard Macro Characters: http://www.lispworks.com/reference/HyperSpec/Body/02_d.htm 2018-07-18T14:46:12Z shka: HighMemoryDaemon: you could mimic SYNTAX 2018-07-18T14:46:21Z shka: lisp semantics are different 2018-07-18T14:46:24Z shka: also 2018-07-18T14:46:34Z shka: why would anyone want to do that? 2018-07-18T14:46:41Z _death: beach: named after its creator.. Pratt parsing 2018-07-18T14:47:09Z beach: Ah, that one. Thanks. 2018-07-18T14:47:43Z shka: beach: hello! 2018-07-18T14:47:49Z shka: how are you doing? 2018-07-18T14:47:51Z ofi quit (Read error: Connection reset by peer) 2018-07-18T14:48:21Z beach: shka: Hello. Very well thank you. I had some very good ideas today. How about yourself? 2018-07-18T14:49:12Z shka: well, ever since i updated to newest sbcl i never got gc invariant lost message 2018-07-18T14:49:18Z shka: so i would say: great :D 2018-07-18T14:49:21Z kuwze joined #lisp 2018-07-18T14:49:32Z beach: Excellent! 2018-07-18T14:50:50Z shka: yeah, but there was nothing releated to this in release logs so i am bit puzzled 2018-07-18T14:51:31Z shka: hopefully this will keep working just fine 2018-07-18T14:55:34Z jack_rabbit quit (Ping timeout: 264 seconds) 2018-07-18T14:55:42Z wheelsucker joined #lisp 2018-07-18T15:01:04Z housel quit (Remote host closed the connection) 2018-07-18T15:01:31Z housel joined #lisp 2018-07-18T15:09:14Z FreeBirdLjj joined #lisp 2018-07-18T15:10:32Z housel quit (Read error: Connection reset by peer) 2018-07-18T15:10:59Z housel joined #lisp 2018-07-18T15:11:39Z elfmacs joined #lisp 2018-07-18T15:15:22Z rumbler31 joined #lisp 2018-07-18T15:16:41Z edgar-rft quit (Quit: edgar-rft) 2018-07-18T15:16:59Z fikka joined #lisp 2018-07-18T15:18:11Z elfmacs quit (Quit: WeeChat 2.2) 2018-07-18T15:18:12Z lumm_ joined #lisp 2018-07-18T15:18:40Z karlosz joined #lisp 2018-07-18T15:20:21Z rumbler31 quit (Ping timeout: 240 seconds) 2018-07-18T15:20:24Z lumm quit (Ping timeout: 256 seconds) 2018-07-18T15:20:25Z lumm_ is now known as lumm 2018-07-18T15:21:47Z graphene quit (Remote host closed the connection) 2018-07-18T15:22:44Z fikka quit (Ping timeout: 260 seconds) 2018-07-18T15:23:05Z graphene joined #lisp 2018-07-18T15:25:25Z xificurC quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2018-07-18T15:26:27Z xificurC joined #lisp 2018-07-18T15:27:04Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-18T15:27:44Z fikka joined #lisp 2018-07-18T15:28:52Z cage_ joined #lisp 2018-07-18T15:29:08Z carmack joined #lisp 2018-07-18T15:32:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-18T15:33:33Z elfmacs joined #lisp 2018-07-18T15:34:12Z fikka joined #lisp 2018-07-18T15:40:08Z zaquest quit (Quit: Leaving) 2018-07-18T15:41:37Z graphene quit (Read error: Connection reset by peer) 2018-07-18T15:42:53Z graphene joined #lisp 2018-07-18T15:45:58Z red-dot joined #lisp 2018-07-18T15:47:02Z beach quit (Ping timeout: 256 seconds) 2018-07-18T15:48:03Z beach joined #lisp 2018-07-18T15:50:17Z fikka quit (Ping timeout: 268 seconds) 2018-07-18T15:53:30Z fikka joined #lisp 2018-07-18T15:55:21Z schweers quit (Ping timeout: 240 seconds) 2018-07-18T16:03:01Z Folkol_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-18T16:03:49Z housel quit (Read error: Connection reset by peer) 2018-07-18T16:04:49Z vhost- joined #lisp 2018-07-18T16:04:49Z vhost- quit (Changing host) 2018-07-18T16:04:49Z vhost- joined #lisp 2018-07-18T16:06:32Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-18T16:07:04Z fikka quit (Ping timeout: 260 seconds) 2018-07-18T16:08:58Z housel joined #lisp 2018-07-18T16:09:12Z milanj_ joined #lisp 2018-07-18T16:09:41Z milanj__ quit (Read error: Connection reset by peer) 2018-07-18T16:09:49Z FreeBirdLjj joined #lisp 2018-07-18T16:12:53Z fikka joined #lisp 2018-07-18T16:14:25Z FreeBirdLjj quit (Ping timeout: 245 seconds) 2018-07-18T16:14:54Z shah^ joined #lisp 2018-07-18T16:16:30Z rumbler31 joined #lisp 2018-07-18T16:17:32Z fikka quit (Ping timeout: 255 seconds) 2018-07-18T16:19:54Z brendyn quit (Ping timeout: 260 seconds) 2018-07-18T16:21:23Z rumbler31 quit (Ping timeout: 276 seconds) 2018-07-18T16:22:43Z fikka joined #lisp 2018-07-18T16:27:14Z jasmith quit (Ping timeout: 276 seconds) 2018-07-18T16:27:26Z fikka quit (Ping timeout: 255 seconds) 2018-07-18T16:32:55Z al-damiri joined #lisp 2018-07-18T16:33:12Z fikka joined #lisp 2018-07-18T16:34:22Z MinnowTaur joined #lisp 2018-07-18T16:37:07Z jasmith joined #lisp 2018-07-18T16:37:59Z fikka quit (Ping timeout: 260 seconds) 2018-07-18T16:38:18Z ntqz joined #lisp 2018-07-18T16:38:54Z ntqz quit (Read error: Connection reset by peer) 2018-07-18T16:43:12Z fikka joined #lisp 2018-07-18T16:46:24Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-18T16:46:34Z beach: What is a good way for a Common Lisp implementation to distinguish between a source file and a FASL file when loading? 2018-07-18T16:47:54Z fikka quit (Ping timeout: 260 seconds) 2018-07-18T16:49:13Z jasom: beach: what do you mean? Like having a magic number at the beginning of all FASL files? 2018-07-18T16:49:35Z beach: Yes, stuff like that. 2018-07-18T16:49:54Z beach: But a magic number could be a lisp datum I guess. Hence my question. 2018-07-18T16:50:37Z hhdave quit (Ping timeout: 256 seconds) 2018-07-18T16:51:09Z jasom: Start with two dots? 2018-07-18T16:51:34Z beach: Yeah, I considered that. Thanks. 2018-07-18T16:51:46Z beach: Uh oh. Dinner says my (admittedly small) family. I'll be back later. 2018-07-18T16:51:53Z jasom: I mean if someone starts their source file like ".. I AM A FASL AND I'M NOT LYING" then they deserve what they get :P 2018-07-18T16:53:29Z fikka joined #lisp 2018-07-18T16:54:21Z lumm quit (Ping timeout: 240 seconds) 2018-07-18T16:58:02Z fikka quit (Ping timeout: 255 seconds) 2018-07-18T16:59:48Z graphene quit (Remote host closed the connection) 2018-07-18T17:01:04Z graphene joined #lisp 2018-07-18T17:03:34Z fikka joined #lisp 2018-07-18T17:06:25Z red-dot joined #lisp 2018-07-18T17:08:10Z pjb joined #lisp 2018-07-18T17:08:17Z fikka quit (Ping timeout: 244 seconds) 2018-07-18T17:13:20Z shka1 joined #lisp 2018-07-18T17:14:58Z shah^ quit 2018-07-18T17:17:14Z rumbler31 joined #lisp 2018-07-18T17:17:35Z elfmacs quit (Ping timeout: 244 seconds) 2018-07-18T17:18:21Z sauvin quit (Read error: Connection reset by peer) 2018-07-18T17:22:29Z rumbler31 quit (Ping timeout: 276 seconds) 2018-07-18T17:23:38Z fikka joined #lisp 2018-07-18T17:28:13Z pierpal quit (Quit: Poof) 2018-07-18T17:28:26Z Lauven joined #lisp 2018-07-18T17:28:29Z pierpal joined #lisp 2018-07-18T17:28:57Z housel quit (Remote host closed the connection) 2018-07-18T17:29:10Z fikka quit (Ping timeout: 264 seconds) 2018-07-18T17:29:24Z housel joined #lisp 2018-07-18T17:31:16Z azimut joined #lisp 2018-07-18T17:34:15Z fikka joined #lisp 2018-07-18T17:34:49Z lumm joined #lisp 2018-07-18T17:42:53Z lumm quit (Read error: Connection reset by peer) 2018-07-18T17:44:48Z lumm joined #lisp 2018-07-18T17:45:24Z lumm quit (Remote host closed the connection) 2018-07-18T17:46:21Z Folkol_ joined #lisp 2018-07-18T17:53:01Z beach: jasom: I totally agree. 2018-07-18T17:53:11Z jasom: beach: I assume you saw https://blog.golang.org/ismmkeynote ? Of note is that they found the write-barriers to hurt throughput more than generational collection helped on programs with small heaps. They attribute some of this to good escape analysis in the compiler. They show typical pauses of 500us on an 18GB heap which is pretty good, though it sounds like heavy allocators can get starved for longer. 2018-07-18T17:54:05Z jasom: s/heavy allocators/non-steady-state heavy allocators 2018-07-18T17:54:34Z rippa joined #lisp 2018-07-18T17:54:50Z beach: I had not seen that before. Thanks. 2018-07-18T17:56:07Z beach: I can't read it today because I am off to spend time with my (admittedly small) family, but I'll look at it tomorrow. 2018-07-18T18:00:00Z MinnowTaur quit (Remote host closed the connection) 2018-07-18T18:01:16Z Folkol_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-18T18:03:09Z kuwze quit (Ping timeout: 252 seconds) 2018-07-18T18:06:55Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-18T18:07:29Z lumm joined #lisp 2018-07-18T18:09:01Z seven-eleven joined #lisp 2018-07-18T18:09:17Z eli_oat1 joined #lisp 2018-07-18T18:09:44Z seven-eleven left #lisp 2018-07-18T18:11:19Z fikka quit (Ping timeout: 244 seconds) 2018-07-18T18:11:39Z Folkol quit (Ping timeout: 256 seconds) 2018-07-18T18:12:02Z Folkol_ joined #lisp 2018-07-18T18:12:35Z red-dot joined #lisp 2018-07-18T18:14:11Z kaun joined #lisp 2018-07-18T18:15:08Z random-nick quit (Ping timeout: 276 seconds) 2018-07-18T18:15:13Z kaun quit (Client Quit) 2018-07-18T18:15:34Z MinnowTaur joined #lisp 2018-07-18T18:16:39Z fikka joined #lisp 2018-07-18T18:17:03Z brettgilio joined #lisp 2018-07-18T18:21:21Z fikka quit (Ping timeout: 240 seconds) 2018-07-18T18:23:35Z igemnace quit (Ping timeout: 276 seconds) 2018-07-18T18:25:33Z lumm_ joined #lisp 2018-07-18T18:26:05Z lumm quit (Ping timeout: 245 seconds) 2018-07-18T18:26:22Z lumm_ is now known as lumm 2018-07-18T18:27:10Z fikka joined #lisp 2018-07-18T18:27:54Z cage_ quit (Remote host closed the connection) 2018-07-18T18:31:44Z fikka quit (Ping timeout: 260 seconds) 2018-07-18T18:31:57Z igemnace joined #lisp 2018-07-18T18:34:31Z potatonomicon joined #lisp 2018-07-18T18:37:11Z fikka joined #lisp 2018-07-18T18:37:23Z Lauven quit (Quit: leaving) 2018-07-18T18:38:01Z k-hos quit (Ping timeout: 268 seconds) 2018-07-18T18:38:25Z ikki quit (Ping timeout: 248 seconds) 2018-07-18T18:42:26Z fikka quit (Ping timeout: 276 seconds) 2018-07-18T18:47:13Z Folkol joined #lisp 2018-07-18T18:47:34Z lumm quit (Read error: Connection reset by peer) 2018-07-18T18:48:09Z k4rtik joined #lisp 2018-07-18T18:48:09Z k4rtik quit (Changing host) 2018-07-18T18:48:09Z k4rtik joined #lisp 2018-07-18T18:49:48Z lumm joined #lisp 2018-07-18T18:49:49Z eli_oat1 quit (Quit: Leaving.) 2018-07-18T18:54:47Z gravicappa quit (Ping timeout: 276 seconds) 2018-07-18T18:56:17Z eli_oat1 joined #lisp 2018-07-18T18:57:17Z fikka joined #lisp 2018-07-18T18:59:43Z ikki joined #lisp 2018-07-18T19:01:55Z fikka quit (Ping timeout: 245 seconds) 2018-07-18T19:02:38Z skidd0 joined #lisp 2018-07-18T19:02:43Z igemnace quit (Quit: WeeChat 2.2) 2018-07-18T19:04:12Z igemnace joined #lisp 2018-07-18T19:05:50Z milanj_ quit (Quit: This computer has gone to sleep) 2018-07-18T19:07:48Z fikka joined #lisp 2018-07-18T19:08:17Z fikka quit (Read error: Connection reset by peer) 2018-07-18T19:09:05Z m00natic quit (Ping timeout: 276 seconds) 2018-07-18T19:09:19Z sknx joined #lisp 2018-07-18T19:10:21Z k4rtik quit (Ping timeout: 240 seconds) 2018-07-18T19:10:56Z makomo_ quit (Quit: WeeChat 2.0.1) 2018-07-18T19:11:19Z random-nick joined #lisp 2018-07-18T19:13:08Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-18T19:17:57Z fikka joined #lisp 2018-07-18T19:18:27Z DonVlad quit (Quit: Time for me to go.) 2018-07-18T19:21:57Z rpg joined #lisp 2018-07-18T19:23:04Z fikka quit (Ping timeout: 260 seconds) 2018-07-18T19:28:32Z fikka joined #lisp 2018-07-18T19:33:34Z fikka quit (Ping timeout: 260 seconds) 2018-07-18T19:37:56Z kerrhau joined #lisp 2018-07-18T19:37:56Z kerrhau quit (Changing host) 2018-07-18T19:37:56Z kerrhau joined #lisp 2018-07-18T19:38:19Z fikka joined #lisp 2018-07-18T19:42:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-18T19:48:28Z skidd0: so say i have a lisp package that does some cool thing. on SBCL i can (sb-ext:save0lisp-and-die ..) to create a binary and handle command line args [with unix-opts]. If I want to share that program, will each user need to install sbcl and then run the save-lisp-and-die stuff? Is there an easier way to share the binary? 2018-07-18T19:48:39Z skidd0: is this a question for cl-noobs? 2018-07-18T19:48:47Z fikka joined #lisp 2018-07-18T19:48:50Z milanj_ joined #lisp 2018-07-18T19:49:03Z skidd0: I haven't ever made a program to be distributed before, so please be understanding of any ignorance 2018-07-18T19:51:39Z Bike: save-lisp-and-die with ":executable t" embeds everything you need, i think. 2018-07-18T19:51:55Z igemnace quit (Remote host closed the connection) 2018-07-18T19:53:10Z fikka quit (Ping timeout: 245 seconds) 2018-07-18T19:53:25Z DonVlad joined #lisp 2018-07-18T19:54:19Z skidd0: yeah that's what i have 2018-07-18T19:54:57Z skidd0: but (again, i'm ignorant and ill-informed here), that binary is only good for other 64bit Arch distros? 2018-07-18T19:55:27Z skidd0: so i'd have probably want to save-lisp-and-die on a Windows and a Mac, and provide build instructions for linux? 2018-07-18T19:55:34Z eli_oat1 quit (Quit: Leaving.) 2018-07-18T19:58:48Z dim: the binary depends on the platform, much like a binary compiled with a C compiler does, you can build a binary per platform (architecture) and have users download it, and save-lisp-and-die is a good way to do that 2018-07-18T19:58:48Z fikka joined #lisp 2018-07-18T19:59:24Z dim: for instance I use that in the pgloader build system and we package the resulting binary for debian, debian users then apt-get install pgloader and it works for them, they don't even have to know the software is written in CL 2018-07-18T19:59:46Z dim: there's also a wrapper in uiop (that comes with asdf) that provides a portable facility around save-lisp-and-die 2018-07-18T20:00:02Z skidd0: oh okay 2018-07-18T20:00:05Z skidd0: i follow 2018-07-18T20:00:12Z dim: (setf uiop::*image-entry-point* #'appdev::main) (uiop:dump-image *appdev-bin* :executable t #+sbcl :compression #+sbcl t) 2018-07-18T20:00:22Z dim: I use that in a build.lisp file for one of my projects 2018-07-18T20:00:25Z dlowe: cool, I didn't know pgloader was in debian 2018-07-18T20:00:26Z skidd0: i thought architecture was more hardware specific, not OS 2018-07-18T20:00:41Z dlowe: it's both 2018-07-18T20:00:41Z skidd0: thanks dim 2018-07-18T20:00:47Z skidd0: oh okay 2018-07-18T20:00:53Z dim: it might be that the binary that debian hosts would work on CentOS, but I don't know about that, really 2018-07-18T20:01:00Z dim: never tried ;-) 2018-07-18T20:01:03Z skidd0: see, you think this is what they'd teach you in a Computer Science program 2018-07-18T20:02:46Z Folkol quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-18T20:03:54Z fikka quit (Ping timeout: 260 seconds) 2018-07-18T20:03:55Z dim: education is more about culture than practical craftmanship, in my opinion... see, you knew how to ask the right questions 2018-07-18T20:03:57Z dlowe: architecture covers "can this my code execute?" (i.e. CPU) and "does this use the same hardware access protocol that my code expects" (i.e. OS) 2018-07-18T20:04:17Z dlowe: there's ways to trick your program into running on both counts 2018-07-18T20:04:28Z shka1: good evening 2018-07-18T20:04:45Z shka1: any idea when common qt will support qt5? 2018-07-18T20:04:46Z skidd0: dim i knew to ask the right questions because i've been self teaching a lot 2018-07-18T20:05:03Z skidd0: dlowe: i see 2018-07-18T20:05:17Z skidd0: dim: but i see how education is more cultural 2018-07-18T20:05:26Z skidd0: i wish we had a culture of learning 2018-07-18T20:05:29Z skidd0: not education 2018-07-18T20:05:47Z skidd0: edu-dictation 2018-07-18T20:05:57Z shka1: wishes can only get you so far :-) 2018-07-18T20:06:43Z skidd0: that's why i have legs and the mind to use em 2018-07-18T20:06:47Z Josh_2 joined #lisp 2018-07-18T20:07:21Z makomo joined #lisp 2018-07-18T20:09:05Z fikka joined #lisp 2018-07-18T20:13:21Z X-Scale quit (Ping timeout: 248 seconds) 2018-07-18T20:14:05Z fikka quit (Ping timeout: 276 seconds) 2018-07-18T20:25:04Z nicht joined #lisp 2018-07-18T20:26:55Z brettgilio quit (Remote host closed the connection) 2018-07-18T20:29:03Z potatonomicon quit (Quit: blap) 2018-07-18T20:29:19Z btwiusemint joined #lisp 2018-07-18T20:29:25Z fikka joined #lisp 2018-07-18T20:29:51Z btwiusemint quit (Client Quit) 2018-07-18T20:30:54Z HighMemoryDaemon: Can I pass one variable to "format" and do replacements in multiple places? 2018-07-18T20:31:28Z HighMemoryDaemon: Ex. something like (format t "~a and ~a" myvar) 2018-07-18T20:31:38Z HighMemoryDaemon: Where myvar would replace both instances. 2018-07-18T20:32:09Z HighMemoryDaemon: Don't want to pass the variable to format twice in this instance. 2018-07-18T20:32:35Z X-Scale joined #lisp 2018-07-18T20:32:41Z scymtym: that would be (format t "~a and ~:*~a" myvar) where ~:* backs up one argument 2018-07-18T20:33:28Z HighMemoryDaemon: Oh cool! 2018-07-18T20:35:10Z HighMemoryDaemon: schjetne: Thanks! Works perfectly. 2018-07-18T20:38:03Z shka1 quit (Ping timeout: 244 seconds) 2018-07-18T20:39:33Z jasom: skidd0: you can build an image within wine for making a windows executable 2018-07-18T20:40:12Z jasom: skidd0: i.e. install sbcl for windows inside wine, then do a save-lisp-and-die 2018-07-18T20:40:44Z jasom: windows is actually much easier than linux for this because if you depend on any DLLs you can just put them in the same directory (as that is in the default DLL search path) 2018-07-18T20:42:13Z pierpa joined #lisp 2018-07-18T20:43:22Z JuanDaugherty joined #lisp 2018-07-18T20:43:54Z jasom: as far as linux portability... the linux kernel has a very stable API, *but* the runtime will invariably depend on some dynamically linked shared objects, and possibly some dynamically loaded shared objects as well. This can pin executables to a very narrow set distributions (and a narrow set of versions within the distribution). 2018-07-18T20:45:48Z k-hos joined #lisp 2018-07-18T20:46:31Z skidd0: i see, thanks jasom 2018-07-18T20:47:03Z aeth: jasom: That's nonsense. In practice, if you get a Linux application outside of a distro (or third party repositories that are intended for a certain distro) you're not going to depend on the distro's libraries. 2018-07-18T20:47:14Z scymtym quit (Ping timeout: 276 seconds) 2018-07-18T20:47:27Z aeth: And such applications from 15 years ago can still run even if you don't recompile them. 2018-07-18T20:47:36Z JuanDaugherty quit (Client Quit) 2018-07-18T20:47:54Z aeth: Although there might be issues with e.g. sound 2018-07-18T20:48:10Z jasom: Applications from 15 years ago will almost certainly not run due to glibc changes if nothing else. 2018-07-18T20:49:10Z jasom: oh, you are talking about applications with bundled libraries (or statically linked libraries)? 2018-07-18T20:49:18Z aeth: A properly written third party application that is neither source distributed nor distributed via a third party repository will bundle everything. 2018-07-18T20:49:43Z jasom: aeth: properly written third party applications are vanishingly rare then. 2018-07-18T20:49:47Z aeth: Then you're stuck with edge cases like having no sound, which I have experienced. 2018-07-18T20:50:16Z aeth: jasom: It's easier to do it these days. 2018-07-18T20:50:30Z aeth: There's middle ground methods like Flatpak. 2018-07-18T20:50:37Z jasom: most binary applications I've seen assume $TODAYS_POPULAR_LINUX_DISTRO e.g. Ubuntu today, redhat a while back. 2018-07-18T20:51:37Z wheelsucker quit (Remote host closed the connection) 2018-07-18T20:51:51Z jasom: when did ld-linux.so start supporting paths relative to the executable? 2018-07-18T20:52:17Z aeth: Well, the ones that assume Ubuntu are probably increasingly using Snappy, whose only problem is that it's an Ubuntu-first NIH reinvention of something that exists not once but twice: AppImage and Flatpak. 2018-07-18T20:53:47Z pierpal quit (Quit: Poof) 2018-07-18T20:54:08Z pierpal joined #lisp 2018-07-18T20:54:14Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2018-07-18T20:54:36Z aeth: jasom: Anyway, I think the vast majority of proprietary software written for Linux at this point are Steam games that are written for the Steam for Linux runtime (or whatever it's called). 2018-07-18T20:55:24Z rumbler31 joined #lisp 2018-07-18T20:55:33Z Smokitch quit 2018-07-18T20:55:50Z angavrilov quit (Remote host closed the connection) 2018-07-18T20:55:50Z Kundry_Wag quit (Remote host closed the connection) 2018-07-18T20:56:06Z rumbler31 quit (Remote host closed the connection) 2018-07-18T20:57:22Z Kundry_Wag joined #lisp 2018-07-18T21:02:31Z copec: I run a lot of arbitrary things with wine 2018-07-18T21:05:47Z k4rtik joined #lisp 2018-07-18T21:11:14Z Josh_2 quit (Quit: ERC (IRC client for Emacs 25.3.1)) 2018-07-18T21:12:23Z LiamH quit (Quit: Leaving.) 2018-07-18T21:13:39Z subroot quit (Read error: Connection reset by peer) 2018-07-18T21:18:25Z Achylles joined #lisp 2018-07-18T21:18:27Z scymtym joined #lisp 2018-07-18T21:19:41Z Josh_2 joined #lisp 2018-07-18T21:20:48Z Josh_2 quit (Client Quit) 2018-07-18T21:21:06Z Josh_2 joined #lisp 2018-07-18T21:21:17Z DonVlad quit 2018-07-18T21:21:22Z nicht quit (Ping timeout: 256 seconds) 2018-07-18T21:22:50Z Kundry_Wag quit (Remote host closed the connection) 2018-07-18T21:23:13Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-18T21:24:14Z red-dot joined #lisp 2018-07-18T21:24:21Z Kundry_Wag joined #lisp 2018-07-18T21:24:48Z pfdietz2 joined #lisp 2018-07-18T21:26:09Z rpg joined #lisp 2018-07-18T21:28:35Z Kundry_Wag quit (Ping timeout: 245 seconds) 2018-07-18T21:29:48Z vlatkoB quit (Remote host closed the connection) 2018-07-18T21:33:10Z rumbler31 joined #lisp 2018-07-18T21:33:58Z lumm quit (Read error: Connection reset by peer) 2018-07-18T21:36:16Z lumm joined #lisp 2018-07-18T21:39:01Z rumbler31 quit (Ping timeout: 244 seconds) 2018-07-18T21:41:21Z kajo quit (Ping timeout: 240 seconds) 2018-07-18T21:42:49Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-18T21:42:51Z kajo joined #lisp 2018-07-18T21:47:08Z xaotuk quit (Quit: xaotuk) 2018-07-18T21:49:26Z jonh left #lisp 2018-07-18T21:53:30Z sjl_ quit (Ping timeout: 268 seconds) 2018-07-18T21:56:44Z milanj__ joined #lisp 2018-07-18T21:57:01Z Kundry_Wag joined #lisp 2018-07-18T21:57:40Z Josh_2 quit (Quit: ERC (IRC client for Emacs 25.3.1)) 2018-07-18T21:59:40Z milanj_ quit (Ping timeout: 268 seconds) 2018-07-18T22:00:47Z JuanitoJons joined #lisp 2018-07-18T22:04:23Z moei quit (Read error: Connection reset by peer) 2018-07-18T22:04:28Z Josh_2 joined #lisp 2018-07-18T22:04:58Z moei joined #lisp 2018-07-18T22:05:58Z shachaf_ joined #lisp 2018-07-18T22:06:05Z random-nick quit (Ping timeout: 240 seconds) 2018-07-18T22:07:04Z shachaf quit (Disconnected by services) 2018-07-18T22:08:44Z shachaf_ is now known as shachaf 2018-07-18T22:09:33Z Bike quit (Ping timeout: 252 seconds) 2018-07-18T22:10:22Z HighMemoryDaemon quit (Remote host closed the connection) 2018-07-18T22:18:28Z Oladon joined #lisp 2018-07-18T22:22:34Z acolarh quit (Ping timeout: 264 seconds) 2018-07-18T22:24:42Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-18T22:24:58Z acolarh joined #lisp 2018-07-18T22:26:06Z Josh_2 quit (Quit: ERC (IRC client for Emacs 25.3.1)) 2018-07-18T22:27:08Z Josh_2 joined #lisp 2018-07-18T22:27:45Z k4rtik quit (Ping timeout: 245 seconds) 2018-07-18T22:33:11Z pfdietz2 quit (Ping timeout: 276 seconds) 2018-07-18T22:34:37Z brettgilio joined #lisp 2018-07-18T22:34:50Z Oladon quit (Read error: Connection reset by peer) 2018-07-18T22:34:52Z housel quit (Remote host closed the connection) 2018-07-18T22:35:19Z housel joined #lisp 2018-07-18T22:35:33Z rumbler31 joined #lisp 2018-07-18T22:37:46Z k4rtik joined #lisp 2018-07-18T22:38:02Z skidd0: has anyone used CLON and experienced an issue with name conflicts? 2018-07-18T22:38:26Z skidd0: CLON has a symbol EXIT that conflicts with sbcl's SB-EXT:EXIT 2018-07-18T22:38:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-18T22:38:42Z skidd0: and it's not discussed in the quickstart example for CLON 2018-07-18T22:38:57Z skidd0: can I shadowing-import-from? 2018-07-18T22:39:02Z skidd0: is that what that's for? 2018-07-18T22:40:20Z rumbler31 quit (Ping timeout: 276 seconds) 2018-07-18T22:43:16Z brettgilio quit (Remote host closed the connection) 2018-07-18T22:45:04Z fikka joined #lisp 2018-07-18T22:49:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-18T22:49:32Z mange joined #lisp 2018-07-18T22:50:09Z fikka joined #lisp 2018-07-18T22:52:44Z Bike joined #lisp 2018-07-18T22:53:28Z jfrancis joined #lisp 2018-07-18T22:54:46Z jfrancis_ joined #lisp 2018-07-18T22:57:27Z jfrancis_: Technically a slime question, not a CL question, but still relevant. Slime is getting angry because I'm getting a returned string containing non-UTF-8 characters. Specifically, I'm getting the error "Invalid protocol message: Error during string-to-utf8: Unable to encode character 55357 as :UTF-8.". That's all true and accurate. But I don't care. Is there any way to tell slime to show me anyway, and just go ahead and munge 55357 on my screen i 2018-07-18T22:57:27Z jfrancis_: nstead of throwing an error? 2018-07-18T22:58:05Z luis quit (Ping timeout: 240 seconds) 2018-07-18T22:58:09Z jself quit (Ping timeout: 248 seconds) 2018-07-18T22:58:10Z Ricchi quit (Ping timeout: 245 seconds) 2018-07-18T22:58:39Z Josh_2: ignore-errors? 2018-07-18T22:58:51Z robotoad quit (Quit: robotoad) 2018-07-18T22:58:58Z les quit (Ping timeout: 260 seconds) 2018-07-18T22:59:31Z devn quit (Ping timeout: 256 seconds) 2018-07-18T22:59:35Z emma quit (Ping timeout: 240 seconds) 2018-07-18T22:59:45Z dlowe quit (Ping timeout: 248 seconds) 2018-07-18T23:00:11Z anewuser joined #lisp 2018-07-18T23:00:15Z jasmith quit (Quit: Leaving) 2018-07-18T23:00:15Z jfrancis_: Mmm... You mean patch the slime source with an (ignore-errors ...) around the display code? I was hoping for something a bit less brute-force. 2018-07-18T23:00:22Z mfiano quit (Ping timeout: 264 seconds) 2018-07-18T23:00:29Z warweasle quit (Ping timeout: 276 seconds) 2018-07-18T23:00:29Z esthlos quit (Ping timeout: 276 seconds) 2018-07-18T23:04:47Z anewuser quit (Ping timeout: 244 seconds) 2018-07-18T23:05:22Z moei quit (Quit: Leaving...) 2018-07-18T23:05:38Z Josh_2 quit (Quit: ERC (IRC client for Emacs 25.3.1)) 2018-07-18T23:07:23Z Josh_2 joined #lisp 2018-07-18T23:08:13Z anewuser joined #lisp 2018-07-18T23:08:55Z fikka quit (Ping timeout: 244 seconds) 2018-07-18T23:10:41Z orivej joined #lisp 2018-07-18T23:13:10Z JuanitoJons quit (Ping timeout: 245 seconds) 2018-07-18T23:14:20Z fikka joined #lisp 2018-07-18T23:15:22Z robotoad joined #lisp 2018-07-18T23:19:20Z fikka quit (Ping timeout: 276 seconds) 2018-07-18T23:22:58Z nowhere_man joined #lisp 2018-07-18T23:23:32Z rumbler31 joined #lisp 2018-07-18T23:27:26Z red-dot joined #lisp 2018-07-18T23:29:17Z karlosz quit (Quit: karlosz) 2018-07-18T23:32:51Z esthlos joined #lisp 2018-07-18T23:33:12Z dlowe joined #lisp 2018-07-18T23:34:06Z Kaisyu joined #lisp 2018-07-18T23:34:44Z fikka joined #lisp 2018-07-18T23:36:12Z al-damiri quit (Quit: Connection closed for inactivity) 2018-07-18T23:39:24Z fikka quit (Ping timeout: 244 seconds) 2018-07-18T23:39:33Z luis` joined #lisp 2018-07-18T23:41:10Z karlosz joined #lisp 2018-07-18T23:41:54Z jasom: anybody here ever use STMX? https://github.com/cosmos72/stmx/blob/master/README.md 2018-07-18T23:42:11Z Kaisyu72 quit (Quit: ERC (IRC client for Emacs 25.3.2)) 2018-07-18T23:42:33Z Kaisyu7 joined #lisp 2018-07-18T23:43:05Z jasom: skidd0: you can do shadowing-import-from; uiop also defines its own version of defpackage where you can do imports of packages with no conflicts order matters) 2018-07-18T23:43:55Z jasom: skidd0: (documentation 'uiop:define-package 'function) 2018-07-18T23:45:25Z karlosz quit (Client Quit) 2018-07-18T23:46:24Z Josh_2 quit (Quit: ERC (IRC client for Emacs 25.3.1)) 2018-07-18T23:46:34Z skidd0: jasom: so shadowing-import-from explicitly defines which symbol to use, avoiding the name conflict, right? 2018-07-18T23:47:14Z jself joined #lisp 2018-07-18T23:49:26Z orivej quit (Ping timeout: 268 seconds) 2018-07-18T23:51:30Z Kundry_Wag quit (Remote host closed the connection) 2018-07-18T23:51:58Z les joined #lisp 2018-07-18T23:53:20Z sjl quit (Quit: WeeChat 2.2-dev) 2018-07-18T23:53:29Z Kundry_Wag joined #lisp 2018-07-18T23:54:59Z fikka joined #lisp 2018-07-18T23:59:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-19T00:04:49Z jasmith joined #lisp 2018-07-19T00:05:25Z fikka joined #lisp 2018-07-19T00:05:57Z fikka quit (Read error: Connection reset by peer) 2018-07-19T00:06:45Z mfiano joined #lisp 2018-07-19T00:08:44Z k4rtik quit (Ping timeout: 276 seconds) 2018-07-19T00:10:39Z skidd0: i can't seem to find a way to shadow import with quicklisp 2018-07-19T00:12:31Z jfranci__ joined #lisp 2018-07-19T00:16:01Z acolarh quit (Ping timeout: 256 seconds) 2018-07-19T00:16:05Z jfrancis_ quit (Ping timeout: 245 seconds) 2018-07-19T00:17:41Z pjb quit (Ping timeout: 255 seconds) 2018-07-19T00:18:24Z Kundry_Wag quit (Remote host closed the connection) 2018-07-19T00:21:30Z karswell joined #lisp 2018-07-19T00:24:31Z serviteur joined #lisp 2018-07-19T00:25:49Z k-hos quit (Ping timeout: 260 seconds) 2018-07-19T00:25:50Z fikka joined #lisp 2018-07-19T00:26:10Z Bike: what does quicklisp have to do with anything? 2018-07-19T00:27:11Z serviteur quit (Remote host closed the connection) 2018-07-19T00:30:15Z fikka quit (Ping timeout: 245 seconds) 2018-07-19T00:31:58Z acolarh joined #lisp 2018-07-19T00:33:27Z Kundry_Wag joined #lisp 2018-07-19T00:34:10Z markoong quit (Ping timeout: 244 seconds) 2018-07-19T00:36:15Z fikka joined #lisp 2018-07-19T00:37:10Z lemonpepper24 joined #lisp 2018-07-19T00:37:33Z lansiir quit (Ping timeout: 264 seconds) 2018-07-19T00:39:06Z eli_oat1 joined #lisp 2018-07-19T00:40:40Z fikka quit (Ping timeout: 245 seconds) 2018-07-19T00:41:50Z Josh_2 joined #lisp 2018-07-19T00:45:52Z elfmacs joined #lisp 2018-07-19T00:46:25Z fikka joined #lisp 2018-07-19T00:48:24Z pjb joined #lisp 2018-07-19T00:48:47Z pjb is now known as Guest35797 2018-07-19T00:51:05Z fikka quit (Ping timeout: 245 seconds) 2018-07-19T00:51:33Z rozenglass joined #lisp 2018-07-19T00:53:57Z lumm quit (Ping timeout: 240 seconds) 2018-07-19T00:56:29Z fikka joined #lisp 2018-07-19T01:00:12Z eli_oat1 quit (Quit: Leaving.) 2018-07-19T01:01:20Z fikka quit (Ping timeout: 255 seconds) 2018-07-19T01:01:52Z k-hos joined #lisp 2018-07-19T01:03:16Z eli_oat1 joined #lisp 2018-07-19T01:03:35Z sknx quit (Ping timeout: 255 seconds) 2018-07-19T01:03:51Z drduck joined #lisp 2018-07-19T01:04:20Z nicht joined #lisp 2018-07-19T01:04:20Z nicht quit (Max SendQ exceeded) 2018-07-19T01:04:38Z makomo quit (Ping timeout: 276 seconds) 2018-07-19T01:05:56Z terpri joined #lisp 2018-07-19T01:06:19Z JuanDaugherty joined #lisp 2018-07-19T01:06:43Z fikka joined #lisp 2018-07-19T01:11:22Z fikka quit (Ping timeout: 244 seconds) 2018-07-19T01:13:37Z krwq joined #lisp 2018-07-19T01:13:55Z Josh_2 quit (Remote host closed the connection) 2018-07-19T01:17:23Z fikka joined #lisp 2018-07-19T01:21:42Z fikka quit (Ping timeout: 244 seconds) 2018-07-19T01:22:21Z jfranci__ quit (Remote host closed the connection) 2018-07-19T01:22:29Z Guest35797 quit (Ping timeout: 255 seconds) 2018-07-19T01:22:54Z graphene quit (Remote host closed the connection) 2018-07-19T01:23:34Z k4rtik joined #lisp 2018-07-19T01:23:46Z brettgilio joined #lisp 2018-07-19T01:24:12Z graphene joined #lisp 2018-07-19T01:26:52Z Kundry_W_ joined #lisp 2018-07-19T01:27:41Z fikka joined #lisp 2018-07-19T01:31:29Z Kundry_W_ quit (Ping timeout: 255 seconds) 2018-07-19T01:31:55Z fikka quit (Ping timeout: 245 seconds) 2018-07-19T01:37:16Z fikka joined #lisp 2018-07-19T01:37:21Z kerrhau quit (Ping timeout: 240 seconds) 2018-07-19T01:41:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-19T01:45:35Z k4rtik quit (Ping timeout: 276 seconds) 2018-07-19T01:47:46Z fikka joined #lisp 2018-07-19T01:49:15Z Kundry_Wag quit (Remote host closed the connection) 2018-07-19T01:49:29Z lemonpepper24 quit (Ping timeout: 255 seconds) 2018-07-19T01:49:51Z Kundry_Wag joined #lisp 2018-07-19T01:52:15Z skidd0: Bike, I intalled CLON with quicklisp 2018-07-19T01:52:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-19T01:52:52Z skidd0: but that doesn't help with the shadowing stuff 2018-07-19T01:53:57Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-19T01:57:03Z skidd0: i figured it out 2018-07-19T01:57:36Z skidd0: (shadowing-import '(:exit) :net.didierverna.clon) 2018-07-19T01:57:51Z fikka joined #lisp 2018-07-19T02:00:27Z Kundry_Wag joined #lisp 2018-07-19T02:00:38Z Kundry_Wag_ joined #lisp 2018-07-19T02:01:23Z robotoad quit (Quit: robotoad) 2018-07-19T02:02:10Z saki joined #lisp 2018-07-19T02:03:08Z fikka quit (Ping timeout: 276 seconds) 2018-07-19T02:04:24Z adlai quit (Ping timeout: 260 seconds) 2018-07-19T02:04:49Z fortitude quit (Quit: Leaving) 2018-07-19T02:04:57Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-19T02:06:21Z daniel-s joined #lisp 2018-07-19T02:11:57Z Arcaelyx_ quit (Quit: Textual IRC Client: www.textualapp.com) 2018-07-19T02:13:47Z Achylles quit (Ping timeout: 255 seconds) 2018-07-19T02:14:34Z robotoad joined #lisp 2018-07-19T02:15:57Z brendyn joined #lisp 2018-07-19T02:18:19Z fikka joined #lisp 2018-07-19T02:19:35Z JuanDaugherty quit (Quit: Exeunt) 2018-07-19T02:21:53Z ikki quit (Ping timeout: 255 seconds) 2018-07-19T02:22:10Z zaquest joined #lisp 2018-07-19T02:22:40Z fikka quit (Ping timeout: 244 seconds) 2018-07-19T02:23:16Z graphene quit (Remote host closed the connection) 2018-07-19T02:24:25Z stacksmith: G'morn... Has anyone experinced SBCL all of a sudden no longer saving lambda-lists - but only for some code? And recompiling does not help... 2018-07-19T02:24:34Z graphene joined #lisp 2018-07-19T02:31:46Z parjanya joined #lisp 2018-07-19T02:38:17Z mange quit (Remote host closed the connection) 2018-07-19T02:38:38Z fikka joined #lisp 2018-07-19T02:39:03Z Kundry_Wag_ quit (Quit: Leaving...) 2018-07-19T02:39:57Z daniel-s quit (Remote host closed the connection) 2018-07-19T02:43:10Z fikka quit (Ping timeout: 245 seconds) 2018-07-19T02:45:56Z kerrhau joined #lisp 2018-07-19T02:45:56Z kerrhau quit (Changing host) 2018-07-19T02:45:56Z kerrhau joined #lisp 2018-07-19T02:46:28Z marusich joined #lisp 2018-07-19T02:49:03Z fikka joined #lisp 2018-07-19T02:50:07Z marusich quit (Client Quit) 2018-07-19T02:50:21Z eli_oat1 quit (Quit: Leaving.) 2018-07-19T02:52:08Z dddddd quit (Remote host closed the connection) 2018-07-19T02:53:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-19T02:54:18Z eli_oat1 joined #lisp 2018-07-19T02:55:49Z jfranci__ joined #lisp 2018-07-19T02:57:29Z Jesin quit (Ping timeout: 260 seconds) 2018-07-19T02:58:34Z lemonpepper24 joined #lisp 2018-07-19T02:58:54Z Jesin joined #lisp 2018-07-19T02:59:05Z fikka joined #lisp 2018-07-19T02:59:36Z orivej joined #lisp 2018-07-19T02:59:58Z Jesin quit (Remote host closed the connection) 2018-07-19T03:00:59Z jfranci__ quit (Ping timeout: 276 seconds) 2018-07-19T03:01:31Z MinnowTaur quit (Remote host closed the connection) 2018-07-19T03:02:42Z xificurC quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2018-07-19T03:02:54Z nullniverse joined #lisp 2018-07-19T03:03:06Z shka1 joined #lisp 2018-07-19T03:03:45Z fikka quit (Ping timeout: 256 seconds) 2018-07-19T03:05:55Z fikka joined #lisp 2018-07-19T03:07:52Z wigust joined #lisp 2018-07-19T03:07:54Z lansiir joined #lisp 2018-07-19T03:10:29Z fikka quit (Ping timeout: 255 seconds) 2018-07-19T03:11:02Z pierpa quit (Quit: Page closed) 2018-07-19T03:11:07Z wigust- quit (Ping timeout: 256 seconds) 2018-07-19T03:11:24Z lansiir quit (Read error: Connection reset by peer) 2018-07-19T03:11:30Z jfrancis_ joined #lisp 2018-07-19T03:15:51Z pierpal quit (Ping timeout: 240 seconds) 2018-07-19T03:15:53Z jfrancis_ quit (Ping timeout: 244 seconds) 2018-07-19T03:15:59Z fikka joined #lisp 2018-07-19T03:17:01Z MoziM joined #lisp 2018-07-19T03:17:39Z jack_rabbit joined #lisp 2018-07-19T03:20:46Z fikka quit (Ping timeout: 264 seconds) 2018-07-19T03:20:50Z jack_rabbit quit (Client Quit) 2018-07-19T03:21:33Z brettgilio quit (Read error: Connection reset by peer) 2018-07-19T03:21:45Z skidd0: so coming from Flask and Python, I've used SQLAlchemy as an ORM for a database. With CL, does an ORM provide as much of a benefit to the programmer? 2018-07-19T03:22:01Z lemonpepper24 quit (Remote host closed the connection) 2018-07-19T03:22:32Z skidd0: by that i mean, ORMs help make querying through database logic faster/easier to write (compared to SQL queries). 2018-07-19T03:23:01Z skidd0: looking at Cliki I see a lot of options for SQL and not so many for ORMs 2018-07-19T03:24:53Z les quit (Quit: "") 2018-07-19T03:25:25Z les joined #lisp 2018-07-19T03:26:04Z karlosz joined #lisp 2018-07-19T03:29:09Z Arcaelyx joined #lisp 2018-07-19T03:29:46Z orivej quit (Quit: No Ping reply in 180 seconds.) 2018-07-19T03:30:11Z AetherWind joined #lisp 2018-07-19T03:31:07Z orivej joined #lisp 2018-07-19T03:34:53Z sauvin joined #lisp 2018-07-19T03:35:23Z pierpal joined #lisp 2018-07-19T03:36:25Z fikka joined #lisp 2018-07-19T03:40:56Z eli_oat1 quit (Quit: Leaving.) 2018-07-19T03:41:05Z fikka quit (Ping timeout: 245 seconds) 2018-07-19T03:41:10Z orivej_ joined #lisp 2018-07-19T03:41:14Z orivej quit (Ping timeout: 260 seconds) 2018-07-19T03:43:51Z eli_oat quit (Quit: eli_oat) 2018-07-19T03:44:10Z aeth: skidd0: The CL solution is often a linguistic solution instead of a directly OOP solution. e.g. for Postmodern (postgresql), http://marijnhaverbeke.nl/postmodern/s-sql.html 2018-07-19T03:44:36Z brettgilio joined #lisp 2018-07-19T03:46:59Z fikka joined #lisp 2018-07-19T03:49:06Z subroot joined #lisp 2018-07-19T03:49:19Z krwq quit (Remote host closed the connection) 2018-07-19T03:51:32Z fikka quit (Ping timeout: 244 seconds) 2018-07-19T03:51:48Z mrm left #lisp 2018-07-19T03:56:50Z orivej_ quit (Ping timeout: 255 seconds) 2018-07-19T03:57:15Z fikka joined #lisp 2018-07-19T04:01:30Z fikka quit (Ping timeout: 245 seconds) 2018-07-19T04:03:39Z saki quit (Quit: saki) 2018-07-19T04:07:10Z fikka joined #lisp 2018-07-19T04:08:07Z jack_rabbit joined #lisp 2018-07-19T04:11:30Z fikka quit (Ping timeout: 245 seconds) 2018-07-19T04:14:52Z rumbler31 quit (Remote host closed the connection) 2018-07-19T04:15:05Z brettgilio quit (Remote host closed the connection) 2018-07-19T04:15:26Z nowhere_man quit (Ping timeout: 265 seconds) 2018-07-19T04:15:38Z sabrac: skidd0: I cannot offer ORM recommendations pro or con as I use straight SQL (or s-sql) but you might look at mito and see if it works for you. 2018-07-19T04:17:18Z Guest35797 joined #lisp 2018-07-19T04:17:26Z fikka joined #lisp 2018-07-19T04:17:32Z karlosz quit (Quit: karlosz) 2018-07-19T04:20:42Z anewuser quit (Quit: anewuser) 2018-07-19T04:21:08Z subroot quit (Quit: Leaving) 2018-07-19T04:21:55Z elfmacs quit (Ping timeout: 245 seconds) 2018-07-19T04:22:01Z fikka quit (Ping timeout: 244 seconds) 2018-07-19T04:24:13Z panji joined #lisp 2018-07-19T04:27:52Z fikka joined #lisp 2018-07-19T04:28:06Z brettgilio joined #lisp 2018-07-19T04:29:01Z sabrac: skidd0: It really depends on what you want an ORM to do for you and the complexity of your data relationships and how well you understand them. I write functions with embedded s-sql calls that probably do the same thing you would do with an ORM. 2018-07-19T04:29:11Z brettgilio quit (Remote host closed the connection) 2018-07-19T04:31:15Z brettgilio joined #lisp 2018-07-19T04:31:25Z Bike quit (Quit: Lost terminal) 2018-07-19T04:33:17Z fikka quit (Ping timeout: 276 seconds) 2018-07-19T04:37:14Z igemnace joined #lisp 2018-07-19T04:43:50Z nowhere_man joined #lisp 2018-07-19T04:44:59Z brettgilio quit (Remote host closed the connection) 2018-07-19T04:45:19Z k4rtik joined #lisp 2018-07-19T04:47:53Z fikka joined #lisp 2018-07-19T04:48:59Z skidd0: thanks you, aeth and sabrac 2018-07-19T04:49:04Z skidd0: i'll look into s-sql 2018-07-19T04:49:38Z skidd0: and my intuition was the, due to lisp's "power", ORMs are less of an improvement compared to other offerings 2018-07-19T04:49:41Z skidd0 quit (Quit: WeeChat 2.1) 2018-07-19T04:51:17Z Guest35797 quit (Ping timeout: 255 seconds) 2018-07-19T04:51:23Z sabrac: skidd0: obligatory disclaimer - I am the maintainer for Postmodern (and thus s-sql). It is again under active development so if there is something you want, set up an issue on the github https://github.com/marijnh/Postmodern 2018-07-19T04:52:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-19T04:53:17Z Jesin joined #lisp 2018-07-19T04:55:18Z shka1: sabrac: awesome! 2018-07-19T04:55:36Z gector quit (Ping timeout: 244 seconds) 2018-07-19T04:55:50Z Jesin quit (Max SendQ exceeded) 2018-07-19T04:55:55Z Folkol joined #lisp 2018-07-19T04:56:17Z Jesin joined #lisp 2018-07-19T04:58:00Z panji: hello 2018-07-19T04:58:21Z fikka joined #lisp 2018-07-19T04:58:24Z Jesin quit (Max SendQ exceeded) 2018-07-19T04:58:58Z Jesin joined #lisp 2018-07-19T04:59:47Z k4rtik quit (Quit: WeeChat 2.2) 2018-07-19T05:00:04Z sabrac: Hello panji 2018-07-19T05:00:42Z panji: hello sabrac 2018-07-19T05:01:04Z panji: I finally satisfied with project i made for learning common lisp (https://github.com/epanji/decision-tree). if anyone here willing to give advice or criticize it, please do. but, please don't be so harsh to make me break down. :-) 2018-07-19T05:01:38Z Jesin quit (Max SendQ exceeded) 2018-07-19T05:02:04Z Jesin joined #lisp 2018-07-19T05:02:59Z fikka quit (Ping timeout: 255 seconds) 2018-07-19T05:04:27Z Jesin quit (Max SendQ exceeded) 2018-07-19T05:04:57Z Jesin joined #lisp 2018-07-19T05:05:59Z vlatkoB joined #lisp 2018-07-19T05:06:48Z Jesin quit (Max SendQ exceeded) 2018-07-19T05:07:17Z Jesin joined #lisp 2018-07-19T05:07:51Z ninegrid quit (Ping timeout: 256 seconds) 2018-07-19T05:08:24Z fikka joined #lisp 2018-07-19T05:08:37Z Jesin quit (Max SendQ exceeded) 2018-07-19T05:09:05Z sabrac: panji: I do not have time to review the code tonight, but I certainly want to congratulate you for documenting, testing and even a youtube video demo! 2018-07-19T05:09:05Z Jesin joined #lisp 2018-07-19T05:10:52Z panji: sabrac: ah, right.. i forgot to consider timezone. thanks for the response. 2018-07-19T05:11:38Z Jesin quit (Max SendQ exceeded) 2018-07-19T05:12:06Z Jesin joined #lisp 2018-07-19T05:13:10Z fikka quit (Ping timeout: 244 seconds) 2018-07-19T05:13:49Z Jesin quit (Max SendQ exceeded) 2018-07-19T05:14:17Z Jesin joined #lisp 2018-07-19T05:14:29Z shka1: panji: i would be delighted if you could just implement C4.0 algorithm 2018-07-19T05:16:25Z panji: shka1: i don't know anything about C4.0 algorithm, maybe i will look at it later. 2018-07-19T05:16:54Z Jesin quit (Max SendQ exceeded) 2018-07-19T05:18:10Z shka1: panji: C4.0 is essentially brown boosted variant of C3.5 2018-07-19T05:18:27Z shka1: there is implementation in C 2018-07-19T05:21:04Z panji: shka1: let me take notes on that as reading material, thanks. 2018-07-19T05:26:15Z nowhere_man quit (Remote host closed the connection) 2018-07-19T05:28:51Z fikka joined #lisp 2018-07-19T05:29:11Z jerme__ quit (Ping timeout: 276 seconds) 2018-07-19T05:29:11Z banjiewen quit (Ping timeout: 276 seconds) 2018-07-19T05:29:25Z alms_clozure_ joined #lisp 2018-07-19T05:29:25Z d4gg4d__ joined #lisp 2018-07-19T05:29:44Z banjiewen joined #lisp 2018-07-19T05:29:51Z alms_clozure quit (Ping timeout: 276 seconds) 2018-07-19T05:29:52Z alms_clozure_ is now known as alms_clozure 2018-07-19T05:29:55Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-19T05:30:02Z Kevslinger_ joined #lisp 2018-07-19T05:30:06Z mjl_ joined #lisp 2018-07-19T05:30:08Z billstclair_ joined #lisp 2018-07-19T05:30:22Z jerme__ joined #lisp 2018-07-19T05:30:29Z dkrm quit (Ping timeout: 276 seconds) 2018-07-19T05:30:29Z jasom quit (Ping timeout: 276 seconds) 2018-07-19T05:30:30Z billstclair quit (Ping timeout: 276 seconds) 2018-07-19T05:30:30Z mjl quit (Ping timeout: 276 seconds) 2018-07-19T05:30:30Z rvirding quit (Ping timeout: 276 seconds) 2018-07-19T05:30:30Z adulteratedjedi quit (Ping timeout: 276 seconds) 2018-07-19T05:30:30Z lieven quit (Ping timeout: 276 seconds) 2018-07-19T05:30:33Z billstclair_ is now known as billstclair 2018-07-19T05:30:33Z mjl_ is now known as mjl 2018-07-19T05:30:58Z devlaf_ joined #lisp 2018-07-19T05:31:04Z rvirding joined #lisp 2018-07-19T05:31:05Z drduck` joined #lisp 2018-07-19T05:31:08Z adulteratedjedi joined #lisp 2018-07-19T05:31:08Z drduck quit (Ping timeout: 276 seconds) 2018-07-19T05:31:08Z beach quit (Ping timeout: 276 seconds) 2018-07-19T05:31:08Z itruslove quit (Ping timeout: 276 seconds) 2018-07-19T05:31:09Z Kevslinger quit (Ping timeout: 276 seconds) 2018-07-19T05:31:09Z voidlily quit (Ping timeout: 276 seconds) 2018-07-19T05:31:09Z thekolb quit (Ping timeout: 276 seconds) 2018-07-19T05:31:09Z devlaf quit (Ping timeout: 276 seconds) 2018-07-19T05:31:09Z d4gg4d_ quit (Ping timeout: 276 seconds) 2018-07-19T05:31:09Z PyroLagus quit (Ping timeout: 276 seconds) 2018-07-19T05:31:11Z d4gg4d__ is now known as d4gg4d_ 2018-07-19T05:31:18Z nowhere_man joined #lisp 2018-07-19T05:31:20Z devlaf_ is now known as devlaf 2018-07-19T05:31:38Z dkrm joined #lisp 2018-07-19T05:32:04Z krrrcks quit (Ping timeout: 260 seconds) 2018-07-19T05:32:28Z billstclair is now known as Guest84935 2018-07-19T05:32:39Z vibs29 quit (Ping timeout: 260 seconds) 2018-07-19T05:33:35Z fikka quit (Ping timeout: 255 seconds) 2018-07-19T05:34:41Z krrrcks joined #lisp 2018-07-19T05:35:22Z mrottenkolber joined #lisp 2018-07-19T05:35:22Z vibs29 joined #lisp 2018-07-19T05:35:45Z PyroLagus joined #lisp 2018-07-19T05:35:47Z mrottenkolber is now known as Guest34386 2018-07-19T05:39:20Z fikka joined #lisp 2018-07-19T05:39:37Z ofi joined #lisp 2018-07-19T05:41:23Z Inline quit (Quit: Leaving) 2018-07-19T05:41:28Z ninegrid joined #lisp 2018-07-19T05:43:20Z lieven joined #lisp 2018-07-19T05:43:36Z lieven quit (Changing host) 2018-07-19T05:43:36Z lieven joined #lisp 2018-07-19T05:44:02Z jasom joined #lisp 2018-07-19T05:44:07Z fikka quit (Ping timeout: 256 seconds) 2018-07-19T05:45:56Z voidlily joined #lisp 2018-07-19T05:46:56Z ismdeep joined #lisp 2018-07-19T05:47:35Z ismdeep quit (Client Quit) 2018-07-19T05:49:26Z fikka joined #lisp 2018-07-19T05:53:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-19T05:55:46Z red-dot joined #lisp 2018-07-19T05:59:36Z fikka joined #lisp 2018-07-19T06:03:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-19T06:06:50Z Kundry_Wag joined #lisp 2018-07-19T06:09:49Z fikka joined #lisp 2018-07-19T06:10:13Z itruslove joined #lisp 2018-07-19T06:11:39Z jfrancis_ joined #lisp 2018-07-19T06:11:45Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-19T06:11:48Z jfrancis_ quit (Remote host closed the connection) 2018-07-19T06:11:54Z elfmacs joined #lisp 2018-07-19T06:14:39Z fikka quit (Ping timeout: 260 seconds) 2018-07-19T06:15:25Z rumbler31 joined #lisp 2018-07-19T06:19:53Z flamebeard joined #lisp 2018-07-19T06:19:56Z fikka joined #lisp 2018-07-19T06:22:29Z rumbler31 quit (Ping timeout: 276 seconds) 2018-07-19T06:24:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-19T06:26:03Z moei joined #lisp 2018-07-19T06:30:28Z fikka joined #lisp 2018-07-19T06:30:33Z beach joined #lisp 2018-07-19T06:32:03Z beach: Good morning everyone! 2018-07-19T06:34:14Z LdBeth: beach: hello 2018-07-19T06:34:20Z scymtym quit (Ping timeout: 255 seconds) 2018-07-19T06:35:14Z fikka quit (Ping timeout: 255 seconds) 2018-07-19T06:39:26Z fikka joined #lisp 2018-07-19T06:45:08Z robotoad quit (Quit: robotoad) 2018-07-19T06:47:47Z Smokitch joined #lisp 2018-07-19T06:51:33Z shka1 quit (Ping timeout: 256 seconds) 2018-07-19T06:52:03Z fikka quit (Quit: leaving) 2018-07-19T06:52:17Z fikka joined #lisp 2018-07-19T06:54:19Z carmack quit (Ping timeout: 268 seconds) 2018-07-19T06:58:42Z xificurC joined #lisp 2018-07-19T07:09:07Z fikka quit (Ping timeout: 268 seconds) 2018-07-19T07:22:03Z parjanya quit (Read error: Connection reset by peer) 2018-07-19T07:22:46Z heisig joined #lisp 2018-07-19T07:24:47Z fikka joined #lisp 2018-07-19T07:27:29Z panji quit (Ping timeout: 276 seconds) 2018-07-19T07:32:11Z scymtym joined #lisp 2018-07-19T07:32:42Z xaotuk joined #lisp 2018-07-19T07:39:09Z milanj__ quit (Quit: This computer has gone to sleep) 2018-07-19T07:46:35Z APic quit (Ping timeout: 240 seconds) 2018-07-19T07:58:16Z parjanya joined #lisp 2018-07-19T07:58:50Z parjanya quit (Remote host closed the connection) 2018-07-19T07:59:08Z jfrancis_ joined #lisp 2018-07-19T08:01:58Z shka: good morning 2018-07-19T08:02:20Z beach: Hello shka. 2018-07-19T08:03:27Z jfrancis_ quit (Ping timeout: 240 seconds) 2018-07-19T08:05:57Z Guest84935 is now known as billstclair 2018-07-19T08:06:13Z billstclair quit (Changing host) 2018-07-19T08:06:13Z billstclair joined #lisp 2018-07-19T08:06:13Z billstclair quit (Changing host) 2018-07-19T08:06:13Z billstclair joined #lisp 2018-07-19T08:06:57Z xaotuk quit (Ping timeout: 240 seconds) 2018-07-19T08:10:10Z hhdave joined #lisp 2018-07-19T08:12:38Z azrazalea quit (Ping timeout: 268 seconds) 2018-07-19T08:13:56Z blep-on-external: hi shka 2018-07-19T08:13:57Z froggey quit (Ping timeout: 240 seconds) 2018-07-19T08:15:41Z shka: blep-on-external: hello 2018-07-19T08:15:43Z shka: blep-on-external: hello 2018-07-19T08:16:22Z shka: beach: hello 2018-07-19T08:17:57Z theemacsshibe[m]: hello 2018-07-19T08:18:29Z shka: i was wondering 2018-07-19T08:18:56Z shka: is it possible to open mcclim application on remote machine, but display window on local machine? 2018-07-19T08:19:12Z rumbler31 joined #lisp 2018-07-19T08:19:20Z theemacsshibe[m]: you could use X forwarding given X is the only backend 2018-07-19T08:19:42Z shka: i would prefer to avoid it if possible 2018-07-19T08:19:48Z theemacsshibe[m]: if you ssh in, do `ssh -Y` then your usual arguments to make ssh forward X over and set DISPLAY appropriately 2018-07-19T08:22:17Z MoziM quit (Quit: WeeChat 2.2) 2018-07-19T08:23:45Z rumbler31 quit (Ping timeout: 264 seconds) 2018-07-19T08:23:54Z Kundry_Wag joined #lisp 2018-07-19T08:28:17Z Kundry_Wag quit (Ping timeout: 248 seconds) 2018-07-19T08:28:48Z makomo joined #lisp 2018-07-19T08:29:36Z orivej joined #lisp 2018-07-19T08:33:01Z vtomole joined #lisp 2018-07-19T08:33:55Z _cosmonaut_ joined #lisp 2018-07-19T08:46:40Z Folkol quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-19T08:51:40Z azrazalea joined #lisp 2018-07-19T09:02:01Z rozenglass quit (Remote host closed the connection) 2018-07-19T09:02:01Z inoperable quit (Quit: ZNC 1.7.0 - https://znc.in) 2018-07-19T09:04:27Z orivej quit (Ping timeout: 240 seconds) 2018-07-19T09:05:06Z reverse_light joined #lisp 2018-07-19T09:05:21Z kerrhau quit (Ping timeout: 240 seconds) 2018-07-19T09:06:11Z fikka quit (Ping timeout: 244 seconds) 2018-07-19T09:06:15Z vtomole quit (Ping timeout: 252 seconds) 2018-07-19T09:06:41Z reverse_1ight quit (Ping timeout: 248 seconds) 2018-07-19T09:08:25Z Folkol joined #lisp 2018-07-19T09:13:02Z pjb joined #lisp 2018-07-19T09:14:16Z angavrilov joined #lisp 2018-07-19T09:17:18Z phoe_ joined #lisp 2018-07-19T09:17:25Z phoe_: Hey! I have a style question. 2018-07-19T09:18:19Z _death: the answer is "black" 2018-07-19T09:18:22Z phoe_: I am making instances of some class via MAKE-INSTANCE. These instances are named, in a way similar to class metaobjects - each instance has a name, and they are referred to by their names. 2018-07-19T09:18:58Z phoe_: At the moment, I have an INITIALIZE-INSTANCE :AFTER method that automatically registers each instance after it's created, but it doesn't seem right to me. 2018-07-19T09:19:47Z phoe_: For example, this doesn't allow me to make anonymous instances, and seems inconsistent with how I can do (MAKE-INSTANCE 'CLASS) that doesn't seem to have any side effects. 2018-07-19T09:20:27Z phoe_: Should I instead write it so MAKE-INSTANCE only returns the instance, and the task of "registering" that instance is delegated to some macro? 2018-07-19T09:20:29Z pjb: phoe_: it is perfectly right for a class to keep track of its instances. This can be done with this :after method.\ 2018-07-19T09:20:48Z phoe_: So, instead of (make-instance 'foo ...), should this be (define-foo ...)? 2018-07-19T09:21:10Z pjb: phoe_: the question for you, is whether you may need to have several trackings, if you need different sets of those instances. 2018-07-19T09:21:27Z milanj__ joined #lisp 2018-07-19T09:21:41Z schweers joined #lisp 2018-07-19T09:21:41Z pjb: If you just want all the instances of that class (and subclasses), then tracking them from initialize-instance :after is ok. 2018-07-19T09:21:46Z phoe_: pjb: I don't think so, the way I think of it is, a symbol is going to name one and only one instance ever. 2018-07-19T09:22:11Z pjb: or initialize-instance, rather, because I would reserve :after and :before to the client of a class or library, but it's just an API choice. 2018-07-19T09:22:14Z fikka joined #lisp 2018-07-19T09:22:29Z pjb: phoe_: think namespaces. 2018-07-19T09:22:39Z phoe_: pjb: yes, exactly. I want a new namespace for my instances. 2018-07-19T09:22:43Z pjb: The same person can also be known under different names in different countries. 2018-07-19T09:23:03Z phoe_: Except (MAKE-INSTANCE 'CLASS) doesn't (seem to) bind the new instance anywhere. 2018-07-19T09:23:04Z pjb: In this case, you will want a different register method. 2018-07-19T09:23:54Z pjb: (let ((i (make-instance 'class))) (register i :name 'foo :namespace 'china) (register i :name 'jean-pierre :namespace 'france)) 2018-07-19T09:24:32Z pjb: And define-named-class-instance can expand to (register (make-instance 'class) :name name :namespace 'global) 2018-07-19T09:24:40Z pjb: or &optional namespace 2018-07-19T09:25:26Z pjb: Do you want also to have bindings? I would use a define macro only if it created a (variable or symbol-macro) binding. 2018-07-19T09:26:09Z pjb: Once I parsed a mail.log, and bound all the data about a given message to variables named after the message-id (in a specific package). 2018-07-19T09:26:36Z _death: I think a macro is ok here.. it could expand to (setf (find-foo ...) ...) or ensure-foo that does it 2018-07-19T09:26:50Z phoe_: Yep. I think ENSURE-FOO is what I want here. 2018-07-19T09:26:55Z fikka quit (Ping timeout: 245 seconds) 2018-07-19T09:27:17Z phoe_: _death: thanks.Iit's yet another time you help me with MOPlike constructs. (: 2018-07-19T09:28:15Z jmercouris joined #lisp 2018-07-19T09:28:50Z jmercouris: so in reading Gentle introduction to symbolic computation I came across this: "FUNCTION returns the functional interpretation of its unevaluated argument" 2018-07-19T09:28:57Z _death: pjb went more meta by naming namespaces ;) 2018-07-19T09:29:01Z jmercouris: what does that mean? 2018-07-19T09:29:41Z nullniverse quit (Ping timeout: 276 seconds) 2018-07-19T09:30:02Z eminhi joined #lisp 2018-07-19T09:30:28Z phoe_: jmercouris: basically, (FUNCTION ...) does not evaluate ... 2018-07-19T09:30:40Z phoe_: Instead, it interprets the ... literally 2018-07-19T09:30:51Z jmercouris: why can't we then use '? 2018-07-19T09:30:54Z pjb: it means that you cannot write (function (intern "FOO")) but you have to write (function foo). 2018-07-19T09:30:59Z phoe_: and returns a function object 2018-07-19T09:31:06Z shka: jmercouris: try (function sort) 2018-07-19T09:31:16Z pjb: FUNCTION is a special operator that doesn't evaluate its argument, just like QUOTE. 2018-07-19T09:31:21Z jmercouris: shka: returns as expected 2018-07-19T09:31:30Z jmercouris: but what is the difference between QUOTE and FUNCTION 2018-07-19T09:31:30Z shka: notice that sort is not evaluated 2018-07-19T09:31:32Z jmercouris: why do we have both? 2018-07-19T09:31:37Z pjb: but when QUOTE returns the argument as-is, FUNCTION returns the actual function object that is named by the argumnet. 2018-07-19T09:31:38Z shka: different things 2018-07-19T09:31:46Z jmercouris: pjb: Aha 2018-07-19T09:31:48Z housel quit (Remote host closed the connection) 2018-07-19T09:31:48Z jmercouris: I see now 2018-07-19T09:32:06Z jmercouris: so FUNCTION is like getting the value of the function stored at that symbol? 2018-07-19T09:32:11Z shka: the only thing in common, really is that they are both special, and both won't evaluate it's argumetns 2018-07-19T09:32:15Z housel joined #lisp 2018-07-19T09:32:18Z shka: jmercouris: exactly 2018-07-19T09:32:21Z shka: just like #'sort 2018-07-19T09:32:28Z shka: you can (function sort) 2018-07-19T09:32:39Z fikka joined #lisp 2018-07-19T09:32:45Z pjb: jmercouris: now, the difference is when you have local functions (ie. closures). (funcall (quote foo)) will always call the global function named foo, stored in (symbol-function 'foo). On the other hand, (funcall (function foo)) will call the local function foo, when there is one. 2018-07-19T09:33:36Z pjb: jmercouris: (defun foo () 'global) (flet ((foo () 'local)) (list (funcall (quote foo)) (funcall (function foo)))) #| --> (global local) |# 2018-07-19T09:34:03Z jmercouris: okay, the second part I don't understand 2018-07-19T09:34:07Z jmercouris: but the first part of what you said, interesting 2018-07-19T09:34:16Z _death: there is also the case of (function (lambda ...)) which returns a functional object for the lambda expression 2018-07-19T09:34:21Z pjb: jmercouris: so outside of a lexical scope where you have local functions, using 'foo or #'foo is mostly semantically equivalent. 2018-07-19T09:34:32Z pjb: jmercouris: analyze the code. 2018-07-19T09:34:51Z pjb: (function foo) makes reference to the flet foo. (quote foo) makes reference to the defun foo. 2018-07-19T09:34:55Z beach: jmercouris: Careful. The function is not necessarily stored in the symbol. 2018-07-19T09:35:10Z jmercouris: I don't know FLET yet, nor do I know GLOBAL 2018-07-19T09:35:37Z jmercouris: beach: I remember the conversation we had, which is why I was wondering about this as well 2018-07-19T09:35:51Z shka: remember that things like (setf car) also are functions 2018-07-19T09:35:57Z shka: #'(setf car) 2018-07-19T09:36:04Z jmercouris: the author again goes on to say, "If the argument is a symbol, it generally returns the contents of the symbol's funciton cell." 2018-07-19T09:36:08Z jmercouris: which I now know is invalid 2018-07-19T09:36:16Z pjb: jmercouris: read again, global is just a symbol. The returned result after "-->" is data. 2018-07-19T09:36:34Z beach: jmercouris: (function bla) returns the function with the name bla. There does not have to be any function cell. 2018-07-19T09:36:37Z _death: jmercouris: right.. if you want the full details, check the clhs 2018-07-19T09:36:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-19T09:37:13Z pjb: jmercouris: notaly, as a special operator function creates closure objects: (let ((y 42)) (function (lambda (x) (+ x y)))) #| --> # |# 2018-07-19T09:37:29Z pjb: +b 2018-07-19T09:38:27Z jmercouris: pjb: Yeah, I understand that as well, it makes sense to me 2018-07-19T09:38:39Z jmercouris: _death: yes 2018-07-19T09:38:47Z jmercouris: beach: Indeed! 2018-07-19T09:38:59Z random-nick joined #lisp 2018-07-19T09:39:52Z jmercouris: Has anyone tried to get in touch with the author? do they accept corrections? 2018-07-19T09:41:29Z pjb: jmercouris: I would assume the author(s) of gentle are retired now. 2018-07-19T09:42:25Z jmercouris: the PDF is freely available on the CMU website I believe, I wonder if it would be legal to publish a set of revisions based on the book 2018-07-19T09:42:42Z jackdaniel: afaik he responds to emails; someone asked me how to fix clx for some Gentle example and he has asked the author if he can modify his code before that (with positive answer) 2018-07-19T09:42:45Z fikka joined #lisp 2018-07-19T09:42:59Z pjb: jmercouris: https://en.wikipedia.org/wiki/David_S._Touretzky 2018-07-19T09:43:29Z milanj__ quit (Ping timeout: 260 seconds) 2018-07-19T09:43:47Z pjb: Is he not on a tropical island, drinking margharitas? 2018-07-19T09:44:20Z jmercouris: pjb: He isn't that old 2018-07-19T09:44:45Z jackdaniel: nobody is too old to dring margharitas on a tropical island! 2018-07-19T09:46:02Z phoe_: ^ 2018-07-19T09:46:17Z _death: I think it's a pedagogical style where simplicity is more valued than correctness.. where they don't want to "bog you down with the details".. this may work for some people, especially if they don't rely on it as the only source of information.. the CLHS is the authoritative source nowadays (with small exceptions agreed upon by community and implementations) 2018-07-19T09:46:52Z jmercouris: since ASDF is not part of the spec (I believe), why was it integrated into most popular implementations? 2018-07-19T09:47:17Z _death: and it may be that the misconception will be corrected later on in the book.. if you're bothered by such things, gentle may not be the right book for you.. I think PCL tries to be more strict in that regard 2018-07-19T09:48:30Z shka: or go for CLtL 2018-07-19T09:48:33Z _death: jmercouris: because it solved a real problem and had many users.. then it evolved into a little monster :) 2018-07-19T09:48:52Z shka: 'little' 2018-07-19T09:48:59Z jackdaniel: and implementations are afraid to touch it from where it settled ;-) 2018-07-19T09:49:44Z shka: omission of defsystem from standard was a mistake 2018-07-19T09:49:45Z jmercouris: _death: I like this book, even if it would be potentially simplifying things for me, it is a nice cover to cover read 2018-07-19T09:49:51Z LdBeth: First, ASDF is one implementation of conventional DEFSYSTEM 2018-07-19T09:49:51Z shka: asdf corrects that mistake 2018-07-19T09:50:27Z jackdaniel: so you say, that make should be part of (say) C++? ,p 2018-07-19T09:50:29Z markoong joined #lisp 2018-07-19T09:50:35Z jmercouris: _death: I'm on page 226, and I still manage to read every day, since it isn't so heavy 2018-07-19T09:50:50Z LdBeth: Second, it’s designed for mainstream POSIX systems 2018-07-19T09:51:08Z jmercouris: jackdaniel: the difference here is that MAKE is a separate program, not part of the C++ compiler 2018-07-19T09:51:12Z _death: jmercouris: that's good.. so like I said, just treat it as one of several sources of information 2018-07-19T09:51:37Z beach: jmercouris: What? ASDF is a separate program as well. 2018-07-19T09:51:54Z jmercouris: Interesting, that I did not know 2018-07-19T09:51:56Z LdBeth: jackdaniel: although make is part of POSIX standard 2018-07-19T09:52:19Z jmercouris: beach: I assumed it was some extension added to SBCL, CCL, ETC, I didn't realize that it was a separate program that just ships with them when you install them 2018-07-19T09:52:21Z jackdaniel: LdBeth: I'm confused now, so I'll cease to read to avoid further confusion towards my day :-) 2018-07-19T09:52:38Z jackdaniel: s/towards/through/ 2018-07-19T09:52:47Z beach: jmercouris: You are not considering something a separate program if and only if it is in a separate Unix executable file do you? 2018-07-19T09:52:51Z jmercouris: s/through/throughout 2018-07-19T09:53:12Z jmercouris: beach: that is what I consider a separate program, otherwise I consider them part of the same system, and just different functionalities 2018-07-19T09:53:21Z beach: jmercouris: That would be silly because then all of the tools of Genera would be one single program. 2018-07-19T09:53:31Z _death: jmercouris: here is a program: (defun hello () 'hi) 2018-07-19T09:53:34Z jmercouris: is the save routine within a text editor a different program than the routine that handles inputting a keystroke? 2018-07-19T09:54:28Z phoe_: jmercouris: d'oh, ASDF is a separate program 2018-07-19T09:54:33Z jmercouris: can a single loaded lisp image said to contain many programs at once? 2018-07-19T09:54:40Z beach: Of course. 2018-07-19T09:54:47Z LdBeth: Of course 2018-07-19T09:54:47Z jmercouris: but they all have same PID no? 2018-07-19T09:54:48Z phoe_: it's just that implementations decided to bundle it with themselves 2018-07-19T09:54:50Z _death: jmercouris: yes, you can consider it a different program with inputs and outputs implicitly specified 2018-07-19T09:54:53Z beach: jmercouris: You have been brainwashed by Unix. 2018-07-19T09:54:55Z phoe_: jmercouris: define "PID" 2018-07-19T09:55:00Z TMA: jmercouris: think of busybox for a moment -- busybox is a shell that can serve as a ls, cat, ... as well 2018-07-19T09:55:00Z jmercouris: PID = PROCESS ID 2018-07-19T09:55:07Z phoe_: jmercouris: define "process" 2018-07-19T09:55:18Z jmercouris: PROCESS = SEPARATE KERNEL LEVEL THREAD 2018-07-19T09:55:32Z phoe_: why are you using Unix terms for Lisp terms? 2018-07-19T09:55:35Z LdBeth: Then wt is a kernel:) 2018-07-19T09:55:49Z phoe_: Lisp has no notion of a PID or a process 2018-07-19T09:56:20Z jmercouris: I'll think about it, you all make an interesting point 2018-07-19T09:56:23Z jackdaniel: actually, what we call native threads now was called multiprocessing in the past 2018-07-19T09:56:26Z phoe_: so it's not an issue of whether a Lisp image contains multiple processes 2018-07-19T09:56:41Z phoe_: it's an issue of you using a wrong nomenclature 2018-07-19T09:56:49Z _death: program n. Trad. Common Lisp code. <- I like this :) 2018-07-19T09:57:00Z jackdaniel: nomnomnom-enclature 2018-07-19T09:57:03Z TMA: jmercouris: do you see the trap you have cornered yourself into? even you are making a distinction between a process and a program -- so a program does not necessarilly correspond to process in 1:1 manner 2018-07-19T09:57:26Z phoe_: (defun my-program (a b) (+ a b)) 2018-07-19T09:57:33Z shka: you can fork sbcl if you want to 2018-07-19T09:57:38Z shka: not with slime, but still 2018-07-19T09:57:39Z phoe_: (incf *program-count*) 2018-07-19T09:57:39Z jmercouris: I usually always think of programs as standalone executables, whether I can fork and run another program is not the point 2018-07-19T09:57:42Z shka: soooo 2018-07-19T09:57:48Z phoe_: jmercouris: what's a "standalone executable" in Lisp? 2018-07-19T09:58:27Z jmercouris: phoe_: That's a good question 2018-07-19T09:58:47Z phoe_: jmercouris: an answer to that question is an answer to your issue with program nomenclature 2018-07-19T10:01:20Z pjb: jmercouris: for example, on a unix box, when you run a "program" you are generally running several processes! 2018-07-19T10:01:32Z pjb: jmercouris: including several executable. 2018-07-19T10:02:43Z Kundry_Wag joined #lisp 2018-07-19T10:02:49Z pjb: jmercouris: programs may be compound objects, and if you have a X11 GUI, then your program runs in the X11 server, will often have a X11 client GUI, and other back-end programs. As a user you would only see windows on the screen, but this just hides the complexity of such compound programs. 2018-07-19T10:03:54Z pjb: jmercouris: and on the other hand, when you run programs on iOS, where fork is disabled for user applications, you could have a single program running in a single process that is composed of several normal unix programs (eg, gzip, git, gcc, emacs, etc, all embedded into a single program and a single process). 2018-07-19T10:04:52Z jmercouris: well then, what exactly is a program? 2018-07-19T10:05:03Z pjb: jmercouris: So, I would say, it's not bad to try to understand things from what you know, but for this you have to really know well what you know. The problem is not so much that you assume lisp would be like unix, as the fact that you don't really know unix either in the first place. 2018-07-19T10:05:08Z shka: what is love 2018-07-19T10:05:22Z pjb: jmercouris: there's no difference between a routine, a subroutine, a procedure, a function, or a program. 2018-07-19T10:05:23Z jmercouris: pjb: I'll admit, I am not a systems programmer :P 2018-07-19T10:05:59Z jmercouris: is a single line of assembly a program? 2018-07-19T10:06:03Z pjb: jmercouris: there may be different technical ways to call one from another, different instructions, but this doesn't change fundamentally what they are. Basically, just functions. 2018-07-19T10:06:13Z pjb: jmercouris: of course, it can be. 2018-07-19T10:06:17Z jmercouris: so a program, is, a function? 2018-07-19T10:06:24Z pjb: Or more. 2018-07-19T10:06:32Z pjb: This is all conventionnal. 2018-07-19T10:06:47Z LdBeth: A collection of those which performed certain tasks is a program 2018-07-19T10:06:57Z pjb: But it is quite remote to the technical aspect that everything is code or data in the computer. 2018-07-19T10:07:27Z pjb: From a user point of view, a program will be a unit of interaction and data manipulation = a user task. 2018-07-19T10:07:47Z pjb: But for the computer, it's all a blougiboulga of code. 2018-07-19T10:08:01Z jmercouris: https://www.merriam-webster.com/dictionary/program "a sequence of coded instructions that can be inserted into a mechanism" 2018-07-19T10:08:02Z Kundry_Wag quit (Ping timeout: 276 seconds) 2018-07-19T10:08:12Z _death: a program is a specification for a machine.. our machines can mimic other machines, and we write our specifications so that the machines we have will mimic the machines we want 2018-07-19T10:08:15Z jmercouris: I guess that is a most general definition 2018-07-19T10:08:23Z pjb: jmercouris: this is very powerful: this allows you to define any abstraction you want at any level, using just lisp functions! 2018-07-19T10:08:47Z pjb: jmercouris: so you can write programs (several of them) in a single lisp image. You can write whole operating system in a lisp image. 2018-07-19T10:09:02Z jmercouris: I guess you can, and they interact with each other 2018-07-19T10:09:07Z pjb: You can even include multiple machines and network them in a lisp image. 2018-07-19T10:09:40Z AetherWind quit (Quit: Leaving) 2018-07-19T10:10:46Z _death: another way to think of it is that a program is a description of a process, which gives a more dynamic view 2018-07-19T10:11:35Z fikka quit (Ping timeout: 256 seconds) 2018-07-19T10:12:04Z phoe quit (Ping timeout: 260 seconds) 2018-07-19T10:12:17Z phoe joined #lisp 2018-07-19T10:12:42Z LdBeth: pjb: how? I think a lisp image is just a mem heap representation 2018-07-19T10:13:34Z pjb: jmercouris: notice that 1- in lisp, we have some separation of addressing spaces, since if you give a function a reference to one object, it cannot manipulate this reference to access to any other object. and 2- in unix one important idea is that programs shall be small units doing one thing well, and process creation is optimized so that you can protect the execution of each of those small program and combine them easily and 2018-07-19T10:13:35Z pjb: efficiently in bigger "systems" or programs. 2018-07-19T10:14:16Z _death: LdBeth: memory is an abstraction that is made concrete by the OS and hardware, which may include multiple machines 2018-07-19T10:14:59Z jmercouris: pjb: Yes, I've noticed that, packages and all that 2018-07-19T10:15:06Z LdBeth: Uah, I see 2018-07-19T10:15:09Z Folkol quit (Quit: Textual IRC Client: www.textualapp.com) 2018-07-19T10:15:33Z pjb: Basically, this is the same thing, implemented in two different ways. in lisp we have a controled execution model, so we can combine small programs that cannot access the data of other small program because they can't compute addresses, and we combine them easily by mere function calls. In unix we have a lower level execution model, where processes can compute addresses and crash, but they are protected by the hardware (MMU), and 2018-07-19T10:15:34Z pjb: kernel, and we combine them easily by mere forking and syscalls (IPC such as pipes). 2018-07-19T10:15:41Z pjb: But it's the same thing. 2018-07-19T10:16:09Z pjb: LdBeth: consider also the memory from the point of view of the unix kernel. It's like a lisp image. 2018-07-19T10:16:34Z pjb: bbl 2018-07-19T10:16:50Z fikka joined #lisp 2018-07-19T10:17:09Z m00natic joined #lisp 2018-07-19T10:20:35Z phoe quit (Ping timeout: 244 seconds) 2018-07-19T10:20:48Z phoe joined #lisp 2018-07-19T10:21:37Z pjb quit (Ping timeout: 244 seconds) 2018-07-19T10:21:53Z karswell quit (Remote host closed the connection) 2018-07-19T10:22:51Z karswell joined #lisp 2018-07-19T10:25:53Z jasmith quit (Remote host closed the connection) 2018-07-19T10:26:16Z jasmith joined #lisp 2018-07-19T10:31:56Z igemnace quit (Ping timeout: 255 seconds) 2018-07-19T10:32:14Z jasmith quit (Remote host closed the connection) 2018-07-19T10:32:29Z jasmith joined #lisp 2018-07-19T10:33:53Z pagnol joined #lisp 2018-07-19T10:35:31Z jasmith quit (Excess Flood) 2018-07-19T10:35:55Z jasmith joined #lisp 2018-07-19T10:41:26Z phenoble joined #lisp 2018-07-19T10:42:06Z jasmith quit (Ping timeout: 265 seconds) 2018-07-19T10:43:00Z jasmith joined #lisp 2018-07-19T10:45:07Z jasmith quit (Excess Flood) 2018-07-19T10:45:25Z phenoble quit (Client Quit) 2018-07-19T10:48:34Z MoziM joined #lisp 2018-07-19T10:49:29Z phenoble joined #lisp 2018-07-19T10:50:35Z rozenglass joined #lisp 2018-07-19T10:52:16Z beach quit (Ping timeout: 256 seconds) 2018-07-19T10:52:48Z beach joined #lisp 2018-07-19T10:54:41Z xaotuk joined #lisp 2018-07-19T10:55:40Z phoe quit (Ping timeout: 245 seconds) 2018-07-19T10:55:53Z phoe joined #lisp 2018-07-19T10:58:44Z X-Scale quit (Ping timeout: 260 seconds) 2018-07-19T11:00:49Z jmercouris: so I have a lisp web application communicating with AJAX to some JS I wrote 2018-07-19T11:00:59Z jmercouris: I want to represent different types of lisp objects using JS on the web page 2018-07-19T11:01:03Z jfrancis_ joined #lisp 2018-07-19T11:01:12Z jfrancis_ quit (Remote host closed the connection) 2018-07-19T11:01:22Z jmercouris: an example of some simple types of objects include a list, a table 2018-07-19T11:01:35Z jmercouris: I am trying to think of how to encode the object type within the JSON 2018-07-19T11:01:51Z fikka quit (Ping timeout: 240 seconds) 2018-07-19T11:02:11Z jmercouris: the only thing that comes to mind is having another slot in my objects that corresponds to the type of object, but that seems dumb 2018-07-19T11:03:02Z random-nick: do you mean "type" in the sense of deftype or in the sense of defclass? 2018-07-19T11:03:30Z jmercouris: in the sense of defclass 2018-07-19T11:04:05Z jmercouris: so currently I have: (encode-json (make-instance 'event :key-code "code")) -> "{\"keyCode\":\"code\"}" 2018-07-19T11:05:10Z jmercouris: I am proposing "{\"keyCode\":\"code\", \"class\:\"event\"}" 2018-07-19T11:05:44Z orivej joined #lisp 2018-07-19T11:05:55Z jmercouris: any downsides with this approach? any better ideas? 2018-07-19T11:07:21Z jmercouris: well, sounds like everyone is unanimous agreement that there can be no better engineered solution :D 2018-07-19T11:07:27Z fikka joined #lisp 2018-07-19T11:08:12Z tfb: jmercouris: I think you could have type objects (not just names of them) but you need to ship them across as names I think 2018-07-19T11:09:33Z eminhi quit (Remote host closed the connection) 2018-07-19T11:10:00Z pjb joined #lisp 2018-07-19T11:10:02Z random-nick: jmercouris: why not make a generic function for serialising an object to json? 2018-07-19T11:10:40Z random-nick: since you're sending it to JS code which wouldn't understand the classes anyway 2018-07-19T11:10:53Z jmercouris: random-nick: I am using encode-json which is part of datafly 2018-07-19T11:11:16Z jmercouris: random-nick: because the JS code must use the classes to determine HOW to render the data 2018-07-19T11:11:26Z jmercouris: a list and a table will not be rendered the same way in HTML 2018-07-19T11:12:36Z skeuomorf joined #lisp 2018-07-19T11:12:44Z random-nick: why not determine that in lisp code and only send to JS code exactly how you want it rendered 2018-07-19T11:13:06Z jmercouris: you mean sending HTML? 2018-07-19T11:13:11Z pjb: :-) 2018-07-19T11:13:12Z skeuomorf left #lisp 2018-07-19T11:16:09Z tfb: jmercouris: that was what I meant by the type object: the JS objects would have a type object slot, and the type object contains the information JS needs to render them. But I think those objects need to exist only on the JS side and have names, and it's the names that get shipped from the Lisp side. (So I'm agreeing with your approach I think!) 2018-07-19T11:17:14Z jmercouris: tfb: Sounds we are on the same page then :) 2018-07-19T11:17:23Z jmercouris: Sorry about my english, I'm not sure what is going on 2018-07-19T11:17:31Z jmercouris: I keep omitting words for some reason 2018-07-19T11:17:45Z BitPuffin joined #lisp 2018-07-19T11:18:14Z random-nick: jmercouris: well, I'm thinking more like having classes on the JS side whose JSON representations you send from lisp code 2018-07-19T11:18:21Z xaotuk quit (Ping timeout: 264 seconds) 2018-07-19T11:18:33Z random-nick: that way the JS code doesn't have to know about classes in lisp code 2018-07-19T11:19:05Z jmercouris: random-nick: Yeah, it is the same idea, just a difference of where the class definitions are stored 2018-07-19T11:19:15Z froggey joined #lisp 2018-07-19T11:19:20Z jmercouris: in any case, if you give some JSON to the JS that doesn't have a class available, it will not render 2018-07-19T11:19:33Z jmercouris: In other words, no suitable class for rendering some JSON found within the JS 2018-07-19T11:19:45Z jmercouris: so, regardless, you'llh ave to maintain some parity between the JS and LISP 2018-07-19T11:19:47Z graphene quit (Remote host closed the connection) 2018-07-19T11:19:59Z jmercouris: luckily I control both sides of the system, so it should be fine in any casey 2018-07-19T11:20:05Z jmercouris: s/casey/case 2018-07-19T11:20:44Z Folkol joined #lisp 2018-07-19T11:21:05Z graphene joined #lisp 2018-07-19T11:21:26Z devlaf quit (Changing host) 2018-07-19T11:21:26Z devlaf joined #lisp 2018-07-19T11:21:26Z devlaf quit (Changing host) 2018-07-19T11:21:26Z devlaf joined #lisp 2018-07-19T11:22:21Z pjb quit (Read error: Connection reset by peer) 2018-07-19T11:27:20Z azimut quit (Ping timeout: 245 seconds) 2018-07-19T11:29:40Z azimut joined #lisp 2018-07-19T11:33:20Z APic joined #lisp 2018-07-19T11:36:12Z igemnace joined #lisp 2018-07-19T11:37:22Z fikka quit (Ping timeout: 268 seconds) 2018-07-19T11:39:21Z housel quit (Read error: Connection reset by peer) 2018-07-19T11:42:33Z jmercouris quit (Remote host closed the connection) 2018-07-19T11:43:06Z milanj joined #lisp 2018-07-19T11:44:50Z acolarh quit (Ping timeout: 245 seconds) 2018-07-19T11:45:30Z faraco joined #lisp 2018-07-19T11:45:30Z faraco quit (Changing host) 2018-07-19T11:45:30Z faraco joined #lisp 2018-07-19T11:46:11Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-19T11:46:13Z fikka joined #lisp 2018-07-19T11:46:36Z rumbler31 joined #lisp 2018-07-19T11:48:19Z red-dot joined #lisp 2018-07-19T11:51:05Z rumbler31 quit (Ping timeout: 245 seconds) 2018-07-19T11:51:05Z beach quit (Ping timeout: 245 seconds) 2018-07-19T11:52:31Z beach joined #lisp 2018-07-19T11:53:13Z milanj quit (Quit: This computer has gone to sleep) 2018-07-19T11:53:49Z pierpal quit (Quit: Poof) 2018-07-19T11:53:58Z xificurC quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2018-07-19T11:54:07Z pierpal joined #lisp 2018-07-19T11:56:43Z rumbler31 joined #lisp 2018-07-19T11:58:25Z acolarh joined #lisp 2018-07-19T12:00:16Z orivej quit (Ping timeout: 256 seconds) 2018-07-19T12:01:35Z pagnol quit (Ping timeout: 240 seconds) 2018-07-19T12:01:44Z rumbler31 quit (Ping timeout: 260 seconds) 2018-07-19T12:04:04Z ofi quit (Ping timeout: 260 seconds) 2018-07-19T12:08:17Z X-Scale joined #lisp 2018-07-19T12:09:03Z Urfin joined #lisp 2018-07-19T12:12:46Z Guest34386 is now known as thekolb 2018-07-19T12:13:15Z ofi joined #lisp 2018-07-19T12:21:56Z moei quit (Ping timeout: 276 seconds) 2018-07-19T12:24:49Z Kundry_Wag joined #lisp 2018-07-19T12:25:48Z LiamH joined #lisp 2018-07-19T12:25:53Z jmercouris joined #lisp 2018-07-19T12:26:08Z jmercouris: I'm getting strange behavior with a macro: https://gist.github.com/1bc275b5bfbe54cd2603331ebb76384d 2018-07-19T12:26:19Z jmercouris: It works if I run macroexpand-1, I get the expected output 2018-07-19T12:26:27Z jmercouris: but when loading my system, I get an error 2018-07-19T12:27:01Z milanj joined #lisp 2018-07-19T12:29:27Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-19T12:29:49Z phoe_: jmercouris: you have tried to use the macro before it was defined 2018-07-19T12:29:50Z _death: your expectation is wrong.. 2018-07-19T12:29:52Z phoe_: or so it seems 2018-07-19T12:30:08Z jmercouris: phoe_: The macro is loaded beforehand for sure 2018-07-19T12:30:14Z jmercouris: it is in a separate file 2018-07-19T12:30:28Z jmercouris: the expectation is indeed maybe wrong, let me validate that 2018-07-19T12:30:47Z _death: you likely want to quote the symbol in the get-named-command form.. 2018-07-19T12:31:00Z jmercouris: ah, get-named-command expects a string, not a symbol 2018-07-19T12:31:12Z jmercouris: that lead me onto the write track, thank you _death 2018-07-19T12:31:17Z jmercouris: s/write/right 2018-07-19T12:31:41Z phoe_: oh right 2018-07-19T12:31:51Z phoe_: line 11, s/,name/',name/ 2018-07-19T12:34:45Z saki joined #lisp 2018-07-19T12:39:10Z jmercouris: would it be possible to make the SBCL traces any more mysterious? 2018-07-19T12:40:14Z phoe_: jmercouris: huh? 2018-07-19T12:40:31Z jmercouris: I'm just saying, any time a signal is raised due to some error, I have no idea what all the things in SBCL mean 2018-07-19T12:40:44Z _death: there's no need to read the backtrace in this case.. it's enough to read the error text: The variable ATHENA::DEFINE is unbound. 2018-07-19T12:40:46Z jmercouris: the Backtrace is really hard to read for me 2018-07-19T12:41:00Z jmercouris: _death: I've fixed the error in this case, I'm just thinking in general 2018-07-19T12:41:05Z jmercouris: just complaining for the sake of it I guess, ignore it 2018-07-19T12:42:18Z makomo quit (Quit: WeeChat 2.0.1) 2018-07-19T12:48:35Z jfrancis_ joined #lisp 2018-07-19T12:49:50Z jasmith joined #lisp 2018-07-19T12:51:15Z flip214: jmercouris: don't worry, reading backtraces is one of the harder things in CS - in any language. 2018-07-19T12:51:20Z pjb joined #lisp 2018-07-19T12:51:43Z pjb is now known as Guest29226 2018-07-19T12:51:50Z flip214: you need to know enough about all the things in use to determine which frame might be the real cause, and which ones are just noise. 2018-07-19T12:52:39Z jmercouris: flip214: Yeah, I would agree with that, I can't say I've ever been so truly enlightened in any language as to grasp immediately a backtrace 2018-07-19T12:53:08Z jfrancis_ quit (Ping timeout: 276 seconds) 2018-07-19T12:53:46Z Murii is now known as Murii__ 2018-07-19T12:56:33Z Kundry_Wag joined #lisp 2018-07-19T12:57:27Z jasmith quit (Ping timeout: 240 seconds) 2018-07-19T12:57:32Z rumbler31 joined #lisp 2018-07-19T12:59:04Z SaganMan joined #lisp 2018-07-19T12:59:15Z xaotuk joined #lisp 2018-07-19T13:01:16Z Kundry_Wag quit (Ping timeout: 244 seconds) 2018-07-19T13:02:28Z rumbler31 quit (Ping timeout: 268 seconds) 2018-07-19T13:05:34Z Achylles joined #lisp 2018-07-19T13:06:57Z Kundry_Wag joined #lisp 2018-07-19T13:09:44Z Bike joined #lisp 2018-07-19T13:11:37Z Folkol quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-19T13:14:04Z Guest29226 quit (Ping timeout: 260 seconds) 2018-07-19T13:20:28Z pagnol joined #lisp 2018-07-19T13:21:24Z warweasle joined #lisp 2018-07-19T13:22:23Z Urfin quit (Ping timeout: 276 seconds) 2018-07-19T13:23:59Z m00natic` joined #lisp 2018-07-19T13:27:29Z m00natic quit (Ping timeout: 260 seconds) 2018-07-19T13:31:45Z xaotuk quit (Ping timeout: 244 seconds) 2018-07-19T13:35:08Z vlad_ joined #lisp 2018-07-19T13:38:27Z trittweiler quit (Ping timeout: 240 seconds) 2018-07-19T13:42:20Z scymtym quit (Ping timeout: 245 seconds) 2018-07-19T13:44:31Z flamebeard quit 2018-07-19T13:51:16Z al-damiri joined #lisp 2018-07-19T13:51:22Z dddddd joined #lisp 2018-07-19T13:55:28Z makomo joined #lisp 2018-07-19T13:57:20Z sjl joined #lisp 2018-07-19T13:57:56Z kuribas joined #lisp 2018-07-19T13:58:12Z rumbler31 joined #lisp 2018-07-19T13:58:20Z schweers quit (Ping timeout: 265 seconds) 2018-07-19T13:58:38Z kuribas: is remove-duplicates quadratic? 2018-07-19T13:59:58Z schweers joined #lisp 2018-07-19T14:00:01Z Bike: probably. 2018-07-19T14:00:03Z dlowe: there's no guarantees 2018-07-19T14:00:23Z dlowe: it could potentially work via sort 2018-07-19T14:00:36Z kuribas: it isn't garanteed to keep the order? 2018-07-19T14:00:42Z beach: Couldn't it be linear with a hash table? 2018-07-19T14:00:46Z shka: kuribas: it will keep the order 2018-07-19T14:00:56Z kuribas: then it wouldn't use sort? 2018-07-19T14:00:58Z dlowe: beach: for hashable values, sure 2018-07-19T14:01:05Z beach: clhs remove-duplicates 2018-07-19T14:01:05Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_rm_dup.htm 2018-07-19T14:01:10Z eminhi joined #lisp 2018-07-19T14:01:27Z shka: kuribas: truth be told, CL standard does not specify complexity of such operations 2018-07-19T14:01:36Z kuribas: hmm right 2018-07-19T14:01:41Z dlowe: it could still use sort internally 2018-07-19T14:01:43Z shka: so you can happily implement hash table as a sequence 2018-07-19T14:02:27Z rumbler31 quit (Ping timeout: 240 seconds) 2018-07-19T14:02:36Z shka: anyway, as others pointed out, there are different strategies for implementing remove-duplicates 2018-07-19T14:02:59Z shka: each may be suitable for specific case 2018-07-19T14:03:22Z igemnace quit (Quit: WeeChat 2.2) 2018-07-19T14:03:30Z shka: it is even possible to dynamicly pick implementation depending on the input 2018-07-19T14:03:48Z kuribas: on sbcl? 2018-07-19T14:03:49Z shka: for instance, sorting would make a lot of sense for sequence of numbers 2018-07-19T14:04:01Z shka: that i do not know 2018-07-19T14:04:01Z kuribas: I am reading that on sbcl it uses a hashtable... 2018-07-19T14:04:14Z shka: probabbly! 2018-07-19T14:04:33Z shka: but probabbly not if you are using custom test function 2018-07-19T14:04:35Z kuribas: I'll just assume it's efficient :-P 2018-07-19T14:04:54Z shka: at the end of the day, performance of the application is your ultimate benchmark 2018-07-19T14:05:54Z kuribas: until you get more data after they end of the day... 2018-07-19T14:06:04Z kuribas: and suddenly it doesn't perform well 2018-07-19T14:06:12Z Bike: on sbcl looks like it uses a hash table for lists, if the test is appropriate 2018-07-19T14:06:53Z kuribas: right, thanks 2018-07-19T14:07:54Z carmack joined #lisp 2018-07-19T14:11:31Z nowhere_man quit (Read error: Connection reset by peer) 2018-07-19T14:13:57Z eli_oat joined #lisp 2018-07-19T14:15:51Z nowhere_man joined #lisp 2018-07-19T14:16:20Z housel joined #lisp 2018-07-19T14:16:38Z ikki joined #lisp 2018-07-19T14:19:03Z Urfin joined #lisp 2018-07-19T14:20:01Z Inline joined #lisp 2018-07-19T14:20:59Z nowhere_man quit (Remote host closed the connection) 2018-07-19T14:30:20Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-19T14:30:24Z faraco quit (Quit: Leaving) 2018-07-19T14:31:20Z red-dot joined #lisp 2018-07-19T14:31:41Z Urfin quit (Ping timeout: 265 seconds) 2018-07-19T14:38:52Z nowhere_man joined #lisp 2018-07-19T14:38:55Z chiyosaki joined #lisp 2018-07-19T14:40:42Z JuanitoJons joined #lisp 2018-07-19T14:41:21Z saki quit (Ping timeout: 240 seconds) 2018-07-19T14:43:14Z nowhere_man quit (Remote host closed the connection) 2018-07-19T14:43:24Z phoe_ quit (Ping timeout: 252 seconds) 2018-07-19T14:43:35Z ofi quit (Remote host closed the connection) 2018-07-19T14:44:17Z elfmacs quit (Ping timeout: 276 seconds) 2018-07-19T14:44:43Z _cosmonaut_ quit (Ping timeout: 256 seconds) 2018-07-19T14:45:41Z orivej joined #lisp 2018-07-19T14:46:02Z karlosz joined #lisp 2018-07-19T14:46:08Z nowhere_man joined #lisp 2018-07-19T14:47:00Z kuwze joined #lisp 2018-07-19T14:49:56Z pierpal quit (Quit: Poof) 2018-07-19T14:50:17Z pierpal joined #lisp 2018-07-19T14:58:35Z milanj quit (Ping timeout: 276 seconds) 2018-07-19T14:59:48Z xificurC joined #lisp 2018-07-19T15:00:23Z pfdietz2 joined #lisp 2018-07-19T15:00:32Z fikka quit (Ping timeout: 276 seconds) 2018-07-19T15:01:59Z trittweiler joined #lisp 2018-07-19T15:02:32Z karswell quit (Read error: No route to host) 2018-07-19T15:05:05Z azimut quit (Ping timeout: 255 seconds) 2018-07-19T15:05:28Z rpg joined #lisp 2018-07-19T15:09:48Z graphene quit (Remote host closed the connection) 2018-07-19T15:10:35Z heisig quit (Quit: Leaving) 2018-07-19T15:11:04Z graphene joined #lisp 2018-07-19T15:11:23Z azimut joined #lisp 2018-07-19T15:12:58Z cage_ joined #lisp 2018-07-19T15:14:00Z FreeBirdLjj joined #lisp 2018-07-19T15:18:56Z robotoad joined #lisp 2018-07-19T15:19:38Z elfmacs joined #lisp 2018-07-19T15:20:02Z ikki quit (Ping timeout: 276 seconds) 2018-07-19T15:20:41Z pfdietz2 quit (Ping timeout: 276 seconds) 2018-07-19T15:20:49Z JuanitoJons quit (Quit: Ex-Chat) 2018-07-19T15:31:18Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-19T15:33:29Z optikalmouse joined #lisp 2018-07-19T15:33:53Z red-dot joined #lisp 2018-07-19T15:35:25Z ikki joined #lisp 2018-07-19T15:35:49Z jfrancis_ joined #lisp 2018-07-19T15:36:15Z pierpal quit (Quit: Poof) 2018-07-19T15:36:33Z pierpal joined #lisp 2018-07-19T15:38:19Z PinealGlandOptic joined #lisp 2018-07-19T15:41:52Z rippa joined #lisp 2018-07-19T15:46:08Z Kevslinger_ is now known as Kevslinger 2018-07-19T15:47:19Z Kundry_Wag quit (Remote host closed the connection) 2018-07-19T15:48:53Z xaotuk joined #lisp 2018-07-19T15:49:21Z jmercouris: I'm getting an interesting stream error when I'm trying to return an image from my lisp web server: https://gist.github.com/36f339d186996b2f8c40cab099739366 2018-07-19T15:49:43Z milanj joined #lisp 2018-07-19T15:51:21Z elfmacs quit (Ping timeout: 240 seconds) 2018-07-19T15:53:12Z mflem joined #lisp 2018-07-19T15:54:58Z PinealGlandOptic quit (Quit: leaving) 2018-07-19T15:55:32Z karlosz quit (Quit: karlosz) 2018-07-19T15:55:47Z elfmacs joined #lisp 2018-07-19T15:55:49Z jmercouris: as far as I can tell, the png stream does not like being converted to a string 2018-07-19T15:56:01Z jmercouris: but I can't also tell how to return a stream in caveman 2018-07-19T15:56:02Z tfb: jmercouris: something is trying to write a byte to a character stream 2018-07-19T15:56:03Z karlosz joined #lisp 2018-07-19T15:56:26Z jmercouris: I guess vecto:save-png-stream writes a byte stream 2018-07-19T15:56:57Z tfb: well, I assume pngs are defined in terms of bytes 2018-07-19T15:57:17Z jmercouris: how can I return a byte stream though? isn't a stream just kind of like a pipe? 2018-07-19T15:57:48Z jmercouris: or what is it? more like a buffer? excuse my ignorance, as I still don't know what streams are :\ 2018-07-19T15:59:49Z rozenglass quit (Remote host closed the connection) 2018-07-19T16:02:48Z eminhi: jmercouris: https://stackoverflow.com/questions/7441992/how-to-create-a-binary-stream-not-a-file-in-common-lisp 2018-07-19T16:03:35Z eminhi: flexi-streams : with-output-to-sequence may help 2018-07-19T16:04:19Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-19T16:04:31Z tfb: I'm the wrong person to answer this but traditionally streams either deal with (a subtype of) character, or (a subtype of) integer. And CL-the-standard is missing some stuff around this I think 2018-07-19T16:04:47Z tfb: (ie with-output-to-sequence as eminhi says) 2018-07-19T16:05:07Z jmercouris: let me give it a try I guess 2018-07-19T16:05:11Z kuribas quit (Remote host closed the connection) 2018-07-19T16:05:21Z jmercouris: I'll be surprised if it renders properly, but you never know 2018-07-19T16:06:13Z jasmith joined #lisp 2018-07-19T16:06:14Z jmercouris: wow, unbelievable 2018-07-19T16:06:17Z fikka joined #lisp 2018-07-19T16:06:18Z jmercouris: it actually worked, thank you! 2018-07-19T16:06:50Z jmercouris: I hope to begin understanding streams after I finish with gentle introduction 2018-07-19T16:06:55Z jmercouris: to symbolic compuation 2018-07-19T16:07:21Z tfb: Somewhere there is stuff (also not in the standard) about bivalant sreams which are streams which can contain both characters and bytes, and which I think you really kind of need for webby stuff 2018-07-19T16:08:30Z eminhi: tfb: we can use *open* with different :element-type, when finer control over stream is needed 2018-07-19T16:08:33Z tfb: (and. doh, flexi-streams is 'Flexible bivalent streams for Common Lisp': I should have looked at it!) 2018-07-19T16:11:45Z fikka quit (Ping timeout: 248 seconds) 2018-07-19T16:17:05Z fikka joined #lisp 2018-07-19T16:18:40Z vlad_ is now known as DonVlad 2018-07-19T16:19:50Z pagnol quit (Ping timeout: 276 seconds) 2018-07-19T16:20:27Z Kundry_Wag joined #lisp 2018-07-19T16:21:18Z optikalmouse quit (Quit: optikalmouse) 2018-07-19T16:21:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-19T16:22:06Z pjb joined #lisp 2018-07-19T16:23:24Z pjb: /whoami 2018-07-19T16:25:00Z jmercouris: you are PJB 2018-07-19T16:25:50Z pjb: Thanks. 2018-07-19T16:25:54Z pjb: I had a doubt. 2018-07-19T16:27:29Z fikka joined #lisp 2018-07-19T16:27:29Z jmercouris quit (Remote host closed the connection) 2018-07-19T16:30:57Z fe[nl]ix: pjb: you are number two 2018-07-19T16:32:05Z trittweiler quit (Ping timeout: 240 seconds) 2018-07-19T16:32:15Z rpg joined #lisp 2018-07-19T16:32:46Z fikka quit (Ping timeout: 264 seconds) 2018-07-19T16:33:54Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-19T16:33:59Z ebrasca quit (Remote host closed the connection) 2018-07-19T16:35:26Z red-dot joined #lisp 2018-07-19T16:35:45Z ebrasca joined #lisp 2018-07-19T16:41:51Z saki joined #lisp 2018-07-19T16:42:17Z chiyosaki quit (Ping timeout: 255 seconds) 2018-07-19T16:42:21Z pierpal quit (Quit: Poof) 2018-07-19T16:42:37Z pierpal joined #lisp 2018-07-19T16:44:19Z skidd0 joined #lisp 2018-07-19T16:46:29Z hhdave quit (Ping timeout: 276 seconds) 2018-07-19T16:47:30Z fikka joined #lisp 2018-07-19T16:49:07Z brendyn quit (Ping timeout: 244 seconds) 2018-07-19T16:49:41Z emma joined #lisp 2018-07-19T16:49:41Z emma quit (Changing host) 2018-07-19T16:49:41Z emma joined #lisp 2018-07-19T16:50:09Z elfmacs quit (Ping timeout: 248 seconds) 2018-07-19T16:52:13Z fikka quit (Ping timeout: 244 seconds) 2018-07-19T16:52:55Z MoziM quit (Quit: WeeChat 2.2) 2018-07-19T16:58:38Z karlosz quit (Quit: karlosz) 2018-07-19T17:02:05Z orivej quit (Ping timeout: 276 seconds) 2018-07-19T17:02:57Z terpri quit (Ping timeout: 240 seconds) 2018-07-19T17:04:20Z karlosz joined #lisp 2018-07-19T17:07:48Z fikka joined #lisp 2018-07-19T17:12:32Z karlosz quit (Quit: karlosz) 2018-07-19T17:13:11Z elfmacs joined #lisp 2018-07-19T17:13:47Z fikka quit (Ping timeout: 276 seconds) 2018-07-19T17:14:49Z jack_rabbit quit (Quit: Leaving) 2018-07-19T17:15:30Z shka1 joined #lisp 2018-07-19T17:16:03Z karlosz joined #lisp 2018-07-19T17:16:59Z terpri joined #lisp 2018-07-19T17:18:24Z fikka joined #lisp 2018-07-19T17:18:46Z sauvin quit (Remote host closed the connection) 2018-07-19T17:18:56Z Kaisyu quit (Quit: Connection closed for inactivity) 2018-07-19T17:19:24Z xaotuk quit (Remote host closed the connection) 2018-07-19T17:20:16Z xaotuk joined #lisp 2018-07-19T17:20:56Z milanj quit (Quit: This computer has gone to sleep) 2018-07-19T17:21:47Z karlosz quit (Quit: karlosz) 2018-07-19T17:23:13Z fikka quit (Ping timeout: 244 seconds) 2018-07-19T17:29:48Z xaotuk quit (Quit: xaotuk) 2018-07-19T17:30:19Z slyrus1 joined #lisp 2018-07-19T17:31:59Z elfmacs quit (Ping timeout: 276 seconds) 2018-07-19T17:33:32Z milanj joined #lisp 2018-07-19T17:35:27Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-19T17:36:25Z red-dot joined #lisp 2018-07-19T17:37:28Z angavrilov quit (Read error: Connection reset by peer) 2018-07-19T17:38:28Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-19T17:38:42Z fikka joined #lisp 2018-07-19T17:39:04Z elfmacs joined #lisp 2018-07-19T17:40:17Z karlosz joined #lisp 2018-07-19T17:41:51Z schweers quit (Ping timeout: 240 seconds) 2018-07-19T17:43:10Z fikka quit (Ping timeout: 245 seconds) 2018-07-19T17:43:41Z elfmacs quit (Ping timeout: 276 seconds) 2018-07-19T17:43:43Z orivej joined #lisp 2018-07-19T17:46:15Z parjanya joined #lisp 2018-07-19T17:49:07Z fikka joined #lisp 2018-07-19T17:49:40Z FreeBirdLjj joined #lisp 2018-07-19T17:53:35Z fikka quit (Ping timeout: 245 seconds) 2018-07-19T17:54:48Z graphene quit (Read error: Connection reset by peer) 2018-07-19T17:56:06Z graphene joined #lisp 2018-07-19T17:56:58Z jasom: skidd0: If nobody mentioned it, EXIT should not be in the CL package, so if you don't use CL-USER there should be no conflict... 2018-07-19T17:57:20Z skidd0: oh! 2018-07-19T17:57:32Z karlosz quit (Quit: karlosz) 2018-07-19T17:57:35Z skidd0: that's handy 2018-07-19T17:58:31Z jasom: cl-user is an implementation-defined superset of the CL package; it has non-portable but useful things (most implementations define QUIT for example; SBCL defined EXIT in addition to QUIT because they changed the interface IIRC) 2018-07-19T17:59:04Z pierpal quit (Remote host closed the connection) 2018-07-19T17:59:08Z fikka joined #lisp 2018-07-19T17:59:51Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-19T18:01:24Z rpg joined #lisp 2018-07-19T18:03:03Z kuwze quit (Ping timeout: 252 seconds) 2018-07-19T18:03:43Z skidd0: sabrac: with s-sql and postmodern, how tedious is session handling? 2018-07-19T18:03:49Z skidd0: i found with-connection 2018-07-19T18:04:29Z fikka quit (Ping timeout: 276 seconds) 2018-07-19T18:04:54Z random-nick quit (Read error: Connection reset by peer) 2018-07-19T18:05:40Z skidd0: the general user story is "I want to add a task." > "I execute 'to-do-binary --add-task'" 2018-07-19T18:05:43Z asarch joined #lisp 2018-07-19T18:06:10Z skidd0: which, in code would then open a connection (since the binary doesn't live in memory and thus can't maintain an open connection) 2018-07-19T18:06:24Z skidd0: and add the task to the db 2018-07-19T18:07:09Z skidd0: so in my understanding, every db op (like add-task) would need to be wrapped in the with-connection 2018-07-19T18:08:15Z skidd0: sabrac: are you the author of sabra on the hill? 2018-07-19T18:10:02Z asarch quit (Remote host closed the connection) 2018-07-19T18:10:21Z jfranci__ joined #lisp 2018-07-19T18:13:35Z jfrancis_ quit (Ping timeout: 276 seconds) 2018-07-19T18:15:40Z azimut quit (Ping timeout: 245 seconds) 2018-07-19T18:16:44Z milanj quit (Quit: This computer has gone to sleep) 2018-07-19T18:19:40Z fikka joined #lisp 2018-07-19T18:24:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-19T18:26:21Z makomo quit (Ping timeout: 240 seconds) 2018-07-19T18:26:21Z karlosz joined #lisp 2018-07-19T18:27:16Z azimut joined #lisp 2018-07-19T18:30:06Z fikka joined #lisp 2018-07-19T18:34:25Z fikka quit (Ping timeout: 245 seconds) 2018-07-19T18:36:55Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-19T18:38:11Z red-dot joined #lisp 2018-07-19T18:38:15Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-19T18:39:44Z graphene quit (Remote host closed the connection) 2018-07-19T18:40:08Z fikka joined #lisp 2018-07-19T18:40:57Z graphene joined #lisp 2018-07-19T18:42:04Z random-nick joined #lisp 2018-07-19T18:45:26Z fikka quit (Ping timeout: 276 seconds) 2018-07-19T18:47:37Z karlosz quit (Quit: karlosz) 2018-07-19T18:48:41Z terpri quit (Ping timeout: 276 seconds) 2018-07-19T18:51:02Z brettgilio joined #lisp 2018-07-19T18:52:46Z graphene quit (Remote host closed the connection) 2018-07-19T18:54:09Z graphene joined #lisp 2018-07-19T18:56:08Z karlosz joined #lisp 2018-07-19T18:57:06Z Kundry_W_ joined #lisp 2018-07-19T18:58:42Z m00natic` quit (Remote host closed the connection) 2018-07-19T19:00:49Z Kundry_Wag quit (Ping timeout: 248 seconds) 2018-07-19T19:03:50Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-19T19:09:09Z fikka joined #lisp 2018-07-19T19:11:47Z graphene quit (Remote host closed the connection) 2018-07-19T19:12:59Z cage_ quit (Quit: Leaving) 2018-07-19T19:13:11Z graphene joined #lisp 2018-07-19T19:13:37Z fikka quit (Ping timeout: 248 seconds) 2018-07-19T19:15:46Z FreeBirdLjj joined #lisp 2018-07-19T19:19:26Z rpg joined #lisp 2018-07-19T19:20:48Z rpg quit (Client Quit) 2018-07-19T19:22:43Z karlosz quit (Quit: karlosz) 2018-07-19T19:24:53Z nickenchuggets joined #lisp 2018-07-19T19:24:54Z nickenchuggets quit (Changing host) 2018-07-19T19:24:54Z nickenchuggets joined #lisp 2018-07-19T19:25:37Z kerrhau joined #lisp 2018-07-19T19:25:38Z kerrhau quit (Changing host) 2018-07-19T19:25:38Z kerrhau joined #lisp 2018-07-19T19:26:43Z parjanya quit (Read error: Connection reset by peer) 2018-07-19T19:29:51Z fikka joined #lisp 2018-07-19T19:31:21Z rpg joined #lisp 2018-07-19T19:34:06Z karlosz joined #lisp 2018-07-19T19:34:59Z fikka quit (Ping timeout: 260 seconds) 2018-07-19T19:38:36Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-19T19:39:32Z red-dot joined #lisp 2018-07-19T19:40:17Z fikka joined #lisp 2018-07-19T19:40:56Z chiyosaki joined #lisp 2018-07-19T19:43:56Z saki quit (Ping timeout: 276 seconds) 2018-07-19T19:44:44Z kyby64 joined #lisp 2018-07-19T19:44:54Z fikka quit (Ping timeout: 260 seconds) 2018-07-19T19:47:09Z brettgilio quit (Read error: Connection reset by peer) 2018-07-19T19:47:48Z jasom: skidd0: that is correct. I would recommend doing a with-connection around your main function though (assuming *most* invocations of your program will need to connect to the database). 2018-07-19T19:48:51Z skidd0: well the "main" function that the end-user interacts with is a cli function with CLON 2018-07-19T19:49:23Z skidd0: i'm wondering how to with-connection the commands 2018-07-19T19:49:41Z skidd0: when the cli program is a separate package from the to-do package 2018-07-19T19:49:48Z jasom: skidd0: assuming the commands are functions, just put it in the body of those functions. 2018-07-19T19:50:13Z skidd0: yeah okay 2018-07-19T19:50:17Z jasom: I'm just suggesting you not do (with-connection ) (with-connection ) ... or something stupid like that 2018-07-19T19:50:20Z fikka joined #lisp 2018-07-19T19:50:51Z skidd0: so like (with-connection 2018-07-19T19:50:54Z skidd0: (one-thing 2018-07-19T19:51:02Z skidd0: (two-thing)) 2018-07-19T19:51:04Z jasom: righ 2018-07-19T19:51:08Z jasom: right 2018-07-19T19:51:38Z skidd0: and for each command line option from clon, have a with-connection at the start of that commands function body 2018-07-19T19:52:13Z skidd0: but in that function body, i call functions from the to-do package 2018-07-19T19:52:25Z vlatkoB quit (Remote host closed the connection) 2018-07-19T19:52:36Z skidd0: so i'm thinking it'd be better to wrap each of the functions in the to-do package rather than the functions in the cli 2018-07-19T19:55:38Z fikka quit (Ping timeout: 268 seconds) 2018-07-19T19:59:55Z scymtym joined #lisp 2018-07-19T20:00:44Z Jesin joined #lisp 2018-07-19T20:01:57Z acolarh quit (Ping timeout: 240 seconds) 2018-07-19T20:03:08Z acolarh joined #lisp 2018-07-19T20:07:05Z papachan quit (Quit: WeeChat 2.1) 2018-07-19T20:10:25Z fikka joined #lisp 2018-07-19T20:11:25Z moei joined #lisp 2018-07-19T20:15:40Z fikka quit (Ping timeout: 245 seconds) 2018-07-19T20:19:55Z FreeBirdLjj quit (Ping timeout: 244 seconds) 2018-07-19T20:20:57Z fikka joined #lisp 2018-07-19T20:25:56Z fikka quit (Ping timeout: 255 seconds) 2018-07-19T20:26:54Z shka1 quit (Ping timeout: 260 seconds) 2018-07-19T20:27:19Z Fare joined #lisp 2018-07-19T20:27:45Z warweasle quit (Quit: rcirc on GNU Emacs 24.4.1) 2018-07-19T20:29:28Z pagnol joined #lisp 2018-07-19T20:31:42Z fikka joined #lisp 2018-07-19T20:31:55Z orivej quit (Ping timeout: 245 seconds) 2018-07-19T20:35:51Z fikka quit (Ping timeout: 240 seconds) 2018-07-19T20:35:54Z varjag joined #lisp 2018-07-19T20:40:04Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-19T20:41:05Z red-dot joined #lisp 2018-07-19T20:41:08Z gigetoo quit (Ping timeout: 276 seconds) 2018-07-19T20:41:17Z fikka joined #lisp 2018-07-19T20:41:28Z gigetoo joined #lisp 2018-07-19T20:45:29Z trittweiler joined #lisp 2018-07-19T20:46:11Z fikka quit (Ping timeout: 255 seconds) 2018-07-19T20:51:42Z fikka joined #lisp 2018-07-19T20:55:58Z rpg quit (Quit: Textual IRC Client: www.textualapp.com) 2018-07-19T20:56:05Z fikka quit (Ping timeout: 244 seconds) 2018-07-19T20:56:08Z terpri joined #lisp 2018-07-19T21:02:03Z fikka joined #lisp 2018-07-19T21:06:29Z Achylles quit (Remote host closed the connection) 2018-07-19T21:06:58Z fikka quit (Ping timeout: 264 seconds) 2018-07-19T21:10:15Z Fare quit (Ping timeout: 245 seconds) 2018-07-19T21:13:05Z kyby64 quit (Quit: Page closed) 2018-07-19T21:13:38Z varjag quit (Ping timeout: 276 seconds) 2018-07-19T21:13:46Z Josh_2 joined #lisp 2018-07-19T21:14:07Z Smokitch quit 2018-07-19T21:15:48Z DonVlad quit (Ping timeout: 268 seconds) 2018-07-19T21:17:56Z Fare joined #lisp 2018-07-19T21:19:25Z jkordani_ joined #lisp 2018-07-19T21:22:16Z fikka joined #lisp 2018-07-19T21:22:33Z jkordani quit (Ping timeout: 264 seconds) 2018-07-19T21:22:34Z klltkr quit (Remote host closed the connection) 2018-07-19T21:23:57Z klltkr joined #lisp 2018-07-19T21:26:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-19T21:27:56Z Fare quit (Ping timeout: 276 seconds) 2018-07-19T21:28:36Z DataLinkDroid quit (Ping timeout: 240 seconds) 2018-07-19T21:30:18Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2018-07-19T21:30:59Z equwal joined #lisp 2018-07-19T21:31:18Z equwal quit (Remote host closed the connection) 2018-07-19T21:31:39Z equwal joined #lisp 2018-07-19T21:32:14Z Fare joined #lisp 2018-07-19T21:32:22Z equwal quit (Remote host closed the connection) 2018-07-19T21:32:40Z fikka joined #lisp 2018-07-19T21:32:44Z equwal joined #lisp 2018-07-19T21:33:02Z equwal quit (Remote host closed the connection) 2018-07-19T21:33:19Z equwal joined #lisp 2018-07-19T21:36:30Z Kundry_W_ quit (Read error: Connection reset by peer) 2018-07-19T21:37:29Z fikka quit (Ping timeout: 260 seconds) 2018-07-19T21:38:15Z vlad_ joined #lisp 2018-07-19T21:38:32Z vlad_ is now known as DonVlad 2018-07-19T21:41:32Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-19T21:42:28Z jfb4 joined #lisp 2018-07-19T21:42:45Z fikka joined #lisp 2018-07-19T21:43:07Z FreeBirdLjj joined #lisp 2018-07-19T21:44:36Z red-dot joined #lisp 2018-07-19T21:46:10Z varjag joined #lisp 2018-07-19T21:47:28Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-19T21:47:56Z nickenchuggets joined #lisp 2018-07-19T21:47:56Z nickenchuggets quit (Changing host) 2018-07-19T21:47:56Z nickenchuggets joined #lisp 2018-07-19T21:48:05Z fikka quit (Ping timeout: 276 seconds) 2018-07-19T21:49:50Z acolarh quit (Ping timeout: 245 seconds) 2018-07-19T21:50:45Z varjag quit (Ping timeout: 264 seconds) 2018-07-19T21:54:49Z Kundry_Wag joined #lisp 2018-07-19T21:55:27Z azimut quit (Ping timeout: 240 seconds) 2018-07-19T21:57:07Z fiddlerwoaroof joined #lisp 2018-07-19T21:58:04Z random-nick quit (Read error: Connection reset by peer) 2018-07-19T21:58:36Z Fare quit (Ping timeout: 244 seconds) 2018-07-19T21:59:11Z fikka joined #lisp 2018-07-19T22:02:30Z makomo joined #lisp 2018-07-19T22:04:00Z MoziM joined #lisp 2018-07-19T22:04:54Z DonVlad quit (Ping timeout: 260 seconds) 2018-07-19T22:07:20Z LiamH quit (Quit: Leaving.) 2018-07-19T22:08:21Z Bike quit (Ping timeout: 252 seconds) 2018-07-19T22:11:43Z jasmith quit (Quit: Leaving) 2018-07-19T22:13:27Z rumbler31 joined #lisp 2018-07-19T22:16:41Z FreeBirdLjj quit (Ping timeout: 276 seconds) 2018-07-19T22:18:47Z graphene quit (Remote host closed the connection) 2018-07-19T22:19:12Z acolarh joined #lisp 2018-07-19T22:20:05Z graphene joined #lisp 2018-07-19T22:26:32Z milanj joined #lisp 2018-07-19T22:29:54Z graphene quit (Remote host closed the connection) 2018-07-19T22:31:10Z graphene joined #lisp 2018-07-19T22:33:39Z reverse_1ight joined #lisp 2018-07-19T22:37:52Z reverse_light quit (Ping timeout: 244 seconds) 2018-07-19T22:37:54Z azimut joined #lisp 2018-07-19T22:40:08Z Bike joined #lisp 2018-07-19T22:40:47Z graphene quit (Remote host closed the connection) 2018-07-19T22:42:05Z graphene joined #lisp 2018-07-19T22:45:08Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-19T22:46:05Z red-dot joined #lisp 2018-07-19T22:49:26Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-19T22:49:50Z nickenchuggets joined #lisp 2018-07-19T22:49:51Z nickenchuggets quit (Changing host) 2018-07-19T22:49:51Z nickenchuggets joined #lisp 2018-07-19T22:51:29Z ft quit (Ping timeout: 256 seconds) 2018-07-19T22:52:47Z ft joined #lisp 2018-07-19T22:59:12Z eminhi quit (Quit: leaving) 2018-07-19T22:59:46Z Fare joined #lisp 2018-07-19T23:00:02Z jasom: skidd0: sounds reasonable 2018-07-19T23:00:20Z skidd0: awesome 2018-07-19T23:04:01Z robotoad quit (Quit: robotoad) 2018-07-19T23:08:29Z edgar-rft joined #lisp 2018-07-19T23:09:02Z FreeBirdLjj joined #lisp 2018-07-19T23:24:50Z pagnol quit (Ping timeout: 245 seconds) 2018-07-19T23:28:50Z Fare quit (Ping timeout: 276 seconds) 2018-07-19T23:29:51Z Fare joined #lisp 2018-07-19T23:32:20Z robotoad joined #lisp 2018-07-19T23:39:58Z pierpal joined #lisp 2018-07-19T23:46:23Z Fare quit (Ping timeout: 276 seconds) 2018-07-19T23:47:41Z mange joined #lisp 2018-07-19T23:50:17Z pjb quit (Ping timeout: 276 seconds) 2018-07-19T23:50:27Z Kundry_Wag quit (Remote host closed the connection) 2018-07-19T23:51:14Z FreeBirdLjj quit (Ping timeout: 244 seconds) 2018-07-19T23:55:33Z fikka quit (Ping timeout: 264 seconds) 2018-07-19T23:57:20Z potatonomicon joined #lisp 2018-07-19T23:57:53Z robotoad quit (Quit: robotoad) 2018-07-19T23:57:53Z acolarh quit (Ping timeout: 248 seconds) 2018-07-19T23:58:59Z equwal quit (Remote host closed the connection) 2018-07-19T23:59:20Z equwal joined #lisp 2018-07-19T23:59:49Z jfb4 quit (Ping timeout: 260 seconds) 2018-07-20T00:00:27Z k-hos quit (Ping timeout: 240 seconds) 2018-07-20T00:00:27Z Oddity quit (Ping timeout: 240 seconds) 2018-07-20T00:00:36Z fikka joined #lisp 2018-07-20T00:00:45Z kozy quit (Quit: No Ping reply in 180 seconds.) 2018-07-20T00:01:40Z didi joined #lisp 2018-07-20T00:01:42Z Patternm1ster joined #lisp 2018-07-20T00:01:53Z kozy joined #lisp 2018-07-20T00:03:23Z spacedbat quit (Ping timeout: 276 seconds) 2018-07-20T00:03:40Z _death` joined #lisp 2018-07-20T00:04:14Z didi left #lisp 2018-07-20T00:04:14Z esthlos: heya, I want to make an array containing a bunch of bit vectors which are not eq (different memory locations). how can I do this without much pain? 2018-07-20T00:04:54Z ku joined #lisp 2018-07-20T00:05:11Z fikka quit (Ping timeout: 244 seconds) 2018-07-20T00:06:31Z Patternmaster quit (Ping timeout: 264 seconds) 2018-07-20T00:06:32Z zigpaw quit (Ping timeout: 264 seconds) 2018-07-20T00:06:32Z _death quit (Ping timeout: 264 seconds) 2018-07-20T00:06:32Z _death` is now known as _death 2018-07-20T00:06:33Z CharlieBrown quit (*.net *.split) 2018-07-20T00:06:34Z can3p[m] quit (*.net *.split) 2018-07-20T00:06:34Z manila[m] quit (*.net *.split) 2018-07-20T00:06:34Z spectrumgomas[m] quit (*.net *.split) 2018-07-20T00:06:58Z housel quit (*.net *.split) 2018-07-20T00:06:58Z caltelt quit (*.net *.split) 2018-07-20T00:06:58Z bend3r_ quit (*.net *.split) 2018-07-20T00:06:58Z snits_ quit (*.net *.split) 2018-07-20T00:06:58Z mrSpec quit (*.net *.split) 2018-07-20T00:06:58Z djh quit (*.net *.split) 2018-07-20T00:06:58Z knx quit (*.net *.split) 2018-07-20T00:06:58Z jxy quit (*.net *.split) 2018-07-20T00:06:59Z HDurer quit (*.net *.split) 2018-07-20T00:06:59Z energizer quit (*.net *.split) 2018-07-20T00:06:59Z guaqua quit (*.net *.split) 2018-07-20T00:06:59Z samebchase quit (*.net *.split) 2018-07-20T00:06:59Z Xof quit (*.net *.split) 2018-07-20T00:06:59Z eMBee quit (*.net *.split) 2018-07-20T00:06:59Z Mandus quit (*.net *.split) 2018-07-20T00:06:59Z bmansurov quit (*.net *.split) 2018-07-20T00:06:59Z lugh quit (*.net *.split) 2018-07-20T00:06:59Z tkd quit (*.net *.split) 2018-07-20T00:07:00Z spacedbat joined #lisp 2018-07-20T00:07:07Z Oddity joined #lisp 2018-07-20T00:07:13Z Bike: just... make an array and put the bit vectors in 2018-07-20T00:07:26Z Bike: i don't know what eqness has to do with it 2018-07-20T00:07:40Z zigpaw joined #lisp 2018-07-20T00:07:45Z potatonomicon quit (Ping timeout: 245 seconds) 2018-07-20T00:10:12Z GNUPONUT[m] quit (Ping timeout: 260 seconds) 2018-07-20T00:10:12Z theemacsshibe[m] quit (Ping timeout: 260 seconds) 2018-07-20T00:10:12Z plll[m] quit (Ping timeout: 245 seconds) 2018-07-20T00:10:27Z eli_oat[m] quit (Ping timeout: 256 seconds) 2018-07-20T00:10:28Z kumori[m] quit (Ping timeout: 256 seconds) 2018-07-20T00:10:28Z hdurer[m] quit (Ping timeout: 256 seconds) 2018-07-20T00:10:28Z equalunique[m] quit (Ping timeout: 256 seconds) 2018-07-20T00:10:33Z z3r0d5y[m] quit (Ping timeout: 276 seconds) 2018-07-20T00:10:37Z blep-on-external quit (Ping timeout: 256 seconds) 2018-07-20T00:10:37Z kammd[m] quit (Ping timeout: 256 seconds) 2018-07-20T00:10:37Z katco[m] quit (Ping timeout: 256 seconds) 2018-07-20T00:10:37Z EuAndreh[m] quit (Ping timeout: 256 seconds) 2018-07-20T00:10:39Z wetha quit (Ping timeout: 245 seconds) 2018-07-20T00:10:39Z remix2000[m] quit (Ping timeout: 245 seconds) 2018-07-20T00:10:39Z Jachy quit (Ping timeout: 245 seconds) 2018-07-20T00:10:48Z dirb quit (Ping timeout: 260 seconds) 2018-07-20T00:10:48Z lyosha[m] quit (Ping timeout: 260 seconds) 2018-07-20T00:10:48Z RichardPaulBck[m quit (Ping timeout: 260 seconds) 2018-07-20T00:10:48Z Guest3496 quit (Ping timeout: 260 seconds) 2018-07-20T00:10:58Z drunk_foxx[m] quit (Ping timeout: 260 seconds) 2018-07-20T00:10:58Z eatonphil quit (Ping timeout: 260 seconds) 2018-07-20T00:11:01Z ArthurAGleckler[ quit (Ping timeout: 256 seconds) 2018-07-20T00:11:02Z LdBeth quit (Ping timeout: 256 seconds) 2018-07-20T00:11:11Z thorondor[m] quit (Ping timeout: 276 seconds) 2018-07-20T00:12:30Z esthlos: Bike: if I change a bit in one of the vectors with setf, I don't want it to change in every vector 2018-07-20T00:12:37Z Bike: sure 2018-07-20T00:12:45Z Bike: no problem 2018-07-20T00:13:03Z Bike: let me guess: you're doing something like (make-array n :initial-element (make-array m :element-type 'bit ...))? 2018-07-20T00:13:04Z esthlos: oh, I see what you're saying 2018-07-20T00:13:08Z esthlos: yes 2018-07-20T00:13:21Z Bike: make-array is just a normal function, so it's arguments are evaluated normally 2018-07-20T00:13:24Z esthlos: I was hoping there was a way to have :initial-element call every time 2018-07-20T00:13:29Z Bike: it doesn't reevaluate the initial-element argument for each entry 2018-07-20T00:13:36Z esthlos: gotcha 2018-07-20T00:13:39Z sellout- quit (Ping timeout: 256 seconds) 2018-07-20T00:13:44Z esthlos: thanks 2018-07-20T00:13:47Z Bike: no problemo 2018-07-20T00:15:45Z housel joined #lisp 2018-07-20T00:15:45Z caltelt joined #lisp 2018-07-20T00:15:45Z bend3r_ joined #lisp 2018-07-20T00:15:45Z snits_ joined #lisp 2018-07-20T00:15:45Z mrSpec joined #lisp 2018-07-20T00:15:45Z djh joined #lisp 2018-07-20T00:15:45Z knx joined #lisp 2018-07-20T00:15:45Z jxy joined #lisp 2018-07-20T00:15:45Z HDurer joined #lisp 2018-07-20T00:15:45Z energizer joined #lisp 2018-07-20T00:15:45Z guaqua joined #lisp 2018-07-20T00:15:45Z samebchase joined #lisp 2018-07-20T00:15:45Z Xof joined #lisp 2018-07-20T00:15:45Z eMBee joined #lisp 2018-07-20T00:15:45Z Mandus joined #lisp 2018-07-20T00:15:45Z bmansurov joined #lisp 2018-07-20T00:15:45Z lugh joined #lisp 2018-07-20T00:15:45Z tkd joined #lisp 2018-07-20T00:16:03Z sellout- joined #lisp 2018-07-20T00:16:11Z Xach: map-into is handy there 2018-07-20T00:17:04Z pierpal quit (Ping timeout: 244 seconds) 2018-07-20T00:17:27Z pjb joined #lisp 2018-07-20T00:17:51Z pjb is now known as Guest85775 2018-07-20T00:18:08Z markoong quit (Ping timeout: 255 seconds) 2018-07-20T00:19:31Z esthlos: Bike: is there a way, then, to get around make-array warning that the type is incorrect when calling make-array? 2018-07-20T00:19:39Z esthlos: sbcl is initializing the elements to 0 2018-07-20T00:19:55Z Bike: what's your sbcl version? 2018-07-20T00:20:00Z Bike: (lisp-implementation-version) 2018-07-20T00:20:16Z esthlos: 1.4.4 2018-07-20T00:20:22Z equwal: OLD 2018-07-20T00:20:26Z esthlos: aw shit 2018-07-20T00:20:27Z equwal: Get 1.4.9 2018-07-20T00:20:44Z Bike: yeah i think that's a bug they fixed 2018-07-20T00:20:57Z Bike: or something 2018-07-20T00:20:57Z fikka joined #lisp 2018-07-20T00:21:12Z esthlos: Xach: map-into also helpful, thx 2018-07-20T00:21:30Z esthlos: Bike: btw, are you lispm.de guy? 2018-07-20T00:21:42Z esthlos: (or maybe his bike?) 2018-07-20T00:21:46Z Xach: esthlos: lispm does not visit here. 2018-07-20T00:21:50Z Bike: i don't know what that is and i'm not german 2018-07-20T00:21:52Z Bike: so probably not 2018-07-20T00:21:52Z Xach: rainer "lispm" joswig 2018-07-20T00:21:53Z Kundry_Wag joined #lisp 2018-07-20T00:22:26Z esthlos: Xach: i owe you some monies for your website 2018-07-20T00:22:34Z saki joined #lisp 2018-07-20T00:22:38Z equwal: Don't we all. 2018-07-20T00:22:46Z Xach: so many picodollars 2018-07-20T00:23:57Z chiyosaki quit (Ping timeout: 240 seconds) 2018-07-20T00:24:54Z makomo quit (Ping timeout: 260 seconds) 2018-07-20T00:24:54Z sjl quit (Ping timeout: 260 seconds) 2018-07-20T00:25:47Z fikka quit (Ping timeout: 255 seconds) 2018-07-20T00:26:27Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-20T00:30:36Z Bike: new sbcl still has the warning 2018-07-20T00:30:40Z Bike: annoying 2018-07-20T00:31:23Z fikka joined #lisp 2018-07-20T00:33:57Z equwal: You can always do the muffle warnings thing. 2018-07-20T00:36:10Z fikka quit (Ping timeout: 260 seconds) 2018-07-20T00:36:42Z BitPuffin quit (Remote host closed the connection) 2018-07-20T00:37:50Z dddddd quit (Remote host closed the connection) 2018-07-20T00:38:06Z equwal: nevermind 2018-07-20T00:38:48Z acolarh joined #lisp 2018-07-20T00:39:42Z anewuser joined #lisp 2018-07-20T00:47:49Z JuanDaugherty joined #lisp 2018-07-20T00:49:58Z LdBeth[m] joined #lisp 2018-07-20T00:50:01Z skidd0 quit (Quit: WeeChat 2.1) 2018-07-20T00:50:59Z Guest85775 quit (Ping timeout: 255 seconds) 2018-07-20T00:51:10Z Fare joined #lisp 2018-07-20T00:51:29Z fikka joined #lisp 2018-07-20T00:53:56Z FreeBirdLjj joined #lisp 2018-07-20T00:56:02Z fikka quit (Ping timeout: 245 seconds) 2018-07-20T00:58:44Z FreeBirdLjj quit (Ping timeout: 256 seconds) 2018-07-20T00:59:00Z elfmacs joined #lisp 2018-07-20T01:02:17Z fikka joined #lisp 2018-07-20T01:07:44Z fikka quit (Ping timeout: 276 seconds) 2018-07-20T01:12:17Z fikka joined #lisp 2018-07-20T01:12:21Z Khisanth quit (Ping timeout: 244 seconds) 2018-07-20T01:15:57Z terpri quit (Ping timeout: 240 seconds) 2018-07-20T01:17:29Z fikka quit (Ping timeout: 276 seconds) 2018-07-20T01:19:20Z azimut quit (Ping timeout: 276 seconds) 2018-07-20T01:22:37Z fikka joined #lisp 2018-07-20T01:22:57Z magicGNUPONUT[m] joined #lisp 2018-07-20T01:22:57Z remix2000[m] joined #lisp 2018-07-20T01:22:57Z spectrumgomas[m] joined #lisp 2018-07-20T01:22:57Z wetha[m] joined #lisp 2018-07-20T01:22:57Z clhsgang[m] joined #lisp 2018-07-20T01:22:57Z kammd[m] joined #lisp 2018-07-20T01:22:57Z no-defun-allowed joined #lisp 2018-07-20T01:22:57Z dirb[m] joined #lisp 2018-07-20T01:22:57Z SAL9000[m] joined #lisp 2018-07-20T01:22:57Z drunk_foxx[m] joined #lisp 2018-07-20T01:22:58Z katco[m] joined #lisp 2018-07-20T01:22:58Z EuAndreh[m] joined #lisp 2018-07-20T01:22:58Z eatonphil[m] joined #lisp 2018-07-20T01:22:58Z eli_oat[m] joined #lisp 2018-07-20T01:22:59Z Thorondor[m] joined #lisp 2018-07-20T01:22:59Z Cal[m] joined #lisp 2018-07-20T01:22:59Z HDurer[m] joined #lisp 2018-07-20T01:22:59Z equalunique[m] joined #lisp 2018-07-20T01:22:59Z ritsch_master[m] joined #lisp 2018-07-20T01:22:59Z plll[m] joined #lisp 2018-07-20T01:23:00Z kumori[m] joined #lisp 2018-07-20T01:23:00Z Jach[m] joined #lisp 2018-07-20T01:24:27Z saki quit (Ping timeout: 240 seconds) 2018-07-20T01:25:10Z Khisanth joined #lisp 2018-07-20T01:27:04Z Fare quit (Ping timeout: 256 seconds) 2018-07-20T01:27:53Z fikka quit (Ping timeout: 276 seconds) 2018-07-20T01:29:35Z ikki quit (Ping timeout: 256 seconds) 2018-07-20T01:31:41Z JuanDaugherty quit (Quit: Exeunt) 2018-07-20T01:32:35Z fikka joined #lisp 2018-07-20T01:33:22Z z3r0d5y[m] joined #lisp 2018-07-20T01:33:22Z lyosha[m] joined #lisp 2018-07-20T01:33:22Z manila[m] joined #lisp 2018-07-20T01:33:22Z ArthurAGleckler[ joined #lisp 2018-07-20T01:33:22Z can3p[m] joined #lisp 2018-07-20T01:35:52Z nullniverse joined #lisp 2018-07-20T01:37:13Z al-damiri quit (Quit: Connection closed for inactivity) 2018-07-20T01:37:16Z fikka quit (Ping timeout: 256 seconds) 2018-07-20T01:38:08Z equwal: Foobar_ hi? 2018-07-20T01:46:13Z azimut joined #lisp 2018-07-20T01:52:38Z sellout- quit (Ping timeout: 255 seconds) 2018-07-20T01:52:47Z fikka joined #lisp 2018-07-20T01:54:28Z sellout- joined #lisp 2018-07-20T01:57:47Z fikka quit (Ping timeout: 276 seconds) 2018-07-20T02:03:31Z fikka joined #lisp 2018-07-20T02:08:50Z fikka quit (Ping timeout: 276 seconds) 2018-07-20T02:11:40Z ku is now known as k-hos 2018-07-20T02:12:15Z Josh_2 quit (Remote host closed the connection) 2018-07-20T02:13:37Z fikka joined #lisp 2018-07-20T02:15:25Z pierpal joined #lisp 2018-07-20T02:18:35Z fikka quit (Ping timeout: 276 seconds) 2018-07-20T02:24:03Z fikka joined #lisp 2018-07-20T02:28:38Z fikka quit (Ping timeout: 260 seconds) 2018-07-20T02:32:59Z brettgilio joined #lisp 2018-07-20T02:33:41Z kajo quit (Quit: From my rotting body, flowers shall grow and I am in them and that is eternity. -- E. M.) 2018-07-20T02:38:56Z robotoad joined #lisp 2018-07-20T02:41:03Z brettgilio quit (Remote host closed the connection) 2018-07-20T02:41:20Z acolarh quit (Ping timeout: 276 seconds) 2018-07-20T02:42:01Z FreeBirdLjj joined #lisp 2018-07-20T02:42:09Z acolarh joined #lisp 2018-07-20T02:43:51Z fikka joined #lisp 2018-07-20T02:46:06Z AetherWind joined #lisp 2018-07-20T02:47:19Z LdBeth[m]: esthlos: use a loop to setf each slots? 2018-07-20T02:47:52Z milanj quit (Quit: This computer has gone to sleep) 2018-07-20T02:48:48Z fikka quit (Ping timeout: 268 seconds) 2018-07-20T02:57:51Z kajo joined #lisp 2018-07-20T03:01:51Z saki joined #lisp 2018-07-20T03:02:00Z anewuser quit (Quit: anewuser) 2018-07-20T03:03:11Z iqubic joined #lisp 2018-07-20T03:03:43Z iqubic: Has anyone tried the NEXT browser that jmercouris is working on? 2018-07-20T03:04:36Z fikka joined #lisp 2018-07-20T03:07:38Z buffergn0me joined #lisp 2018-07-20T03:09:43Z equwal: I have it cloned, been thinking about starting it up. 2018-07-20T03:09:46Z fikka quit (Ping timeout: 268 seconds) 2018-07-20T03:10:20Z equwal: Looks pretty neat, definitely better than w3m which I use for most of my non-firefox browing. 2018-07-20T03:10:24Z iqubic: DO you run Linux? I run linux and I'm not sure I want to go through the pain of getting it to work. 2018-07-20T03:10:43Z equwal: I'll just start it up and review it now I guess, I'm used to compiling stuff from source at this point. 2018-07-20T03:11:11Z iqubic: I run linux and I'm not sure how to build this properly. 2018-07-20T03:13:20Z brettgilio joined #lisp 2018-07-20T03:15:00Z equwal: Have you read the readme? 2018-07-20T03:15:12Z iqubic: not yet. 2018-07-20T03:15:41Z wigust- joined #lisp 2018-07-20T03:15:46Z equwal: Probably do that first lol. 2018-07-20T03:17:54Z charh quit (Quit: bye.) 2018-07-20T03:18:35Z brettgilio quit (Remote host closed the connection) 2018-07-20T03:19:29Z wigust quit (Ping timeout: 255 seconds) 2018-07-20T03:23:38Z terpri joined #lisp 2018-07-20T03:23:39Z figurelisp joined #lisp 2018-07-20T03:24:17Z figurelisp: why do people call javascript same as lisp? in what sense they are talking about and is that true? 2018-07-20T03:24:31Z brettgilio joined #lisp 2018-07-20T03:24:52Z fikka joined #lisp 2018-07-20T03:25:43Z equwal: potential troll? 2018-07-20T03:26:05Z FreeBirdLjj quit (Ping timeout: 276 seconds) 2018-07-20T03:26:23Z equwal: Anyway I couldn't get it working, looks a bit out of date for my SBCL 1.4.9. 2018-07-20T03:26:29Z mange: I don't think anyone would say that Javascript is the same as Lisp, but people often want to claim that it's very "Scheme-y". I think the biggest thing that lets people claim that is first-class functions. 2018-07-20T03:26:58Z brettgilio: equwal: What distro are you on? My sbcl is only 1.4.8 2018-07-20T03:27:12Z equwal: Well I compiled from source the latest. 2018-07-20T03:28:06Z brettgilio: oh good, nvm. Arch has it marked out of date 2018-07-20T03:28:20Z brettgilio: 1.4.9 is in testing 2018-07-20T03:28:26Z drewc: figurelisp: because people from C++ and Java think Lisp is functional, and think ECMAscript is as well. 2018-07-20T03:29:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-20T03:29:55Z equwal: brettgilio: Arch probably has 1.4.9 pre-compiled in their testing repo, and if so you shouldn't use that repo on stable. You will eventually break stuff doing that. Instead, you compile from source. 2018-07-20T03:30:05Z beach: figurelisp: Lots of people would like to think that their language is some Lisp dialect. But since "Lisp" is not well defined (as opposed to Common Lisp), it is meaningless and can't be checked or refuted. Luckily, this channel is dedicated to Common Lisp, so we don't have debates like that. 2018-07-20T03:30:43Z drewc: figurelisp: have a look at http://raganwald.com/2013/07/19/javascript-is-a-lisp.html 2018-07-20T03:30:46Z equwal: But it so obviously isn't a lisp that I just assumed he was trolling. 2018-07-20T03:30:57Z Kundry_Wag joined #lisp 2018-07-20T03:32:01Z beach: equwal: Like I said, Lisp is not well defined, so it is not obvious to some people. But since this channel is about Common Lisp, we don't have to decide one way or the other. 2018-07-20T03:32:59Z figurelisp: ok got it. 2018-07-20T03:33:04Z brettgilio: equwal: Yes, I said that before you mentioned it ;) 2018-07-20T03:33:29Z figurelisp: oh you called me a troll? I thought you were calling those people troll equwal 2018-07-20T03:34:20Z beach: Good morning everyone! by the way. 2018-07-20T03:34:23Z equwal: If it was a genuine question then the answer is no, it isn't a lisp, but it does have some vaguely functional things like lambdas. 2018-07-20T03:34:36Z figurelisp: understood :) 2018-07-20T03:34:46Z equwal: I love it when people say good morning to me at 20:34. 2018-07-20T03:35:21Z fikka joined #lisp 2018-07-20T03:35:36Z drewc: figurelisp: from that link: 'JavaScript also isn’t Lisp as people who write Lisp use the word. Agree or disagree, the “Lisp Community” has coalesced around Common Lisp. Anything that doesn’t harken back to MacLisp is considered not-Lisp by experts. You know, Scheme looks a lot like a Lisp-1 to everyone else, but hard-core Lispers will tell you that Scheme isn’t Lisp and that the only thing it has in common with Lisp is CONS' 2018-07-20T03:35:40Z Kundry_Wag quit (Ping timeout: 268 seconds) 2018-07-20T03:37:28Z equwal: Can we find any specific source who claims that Scheme isn't a lisp? At the very least, its inventors definitely considered it a lisp. 2018-07-20T03:37:49Z drewc: FWIW, I now write primarily in a scheme dialect, and I do not call it Lisp, it's scheme! :) 2018-07-20T03:37:56Z beach: equwal: Can you please stop it! 2018-07-20T03:38:02Z beach: equwal: What part of "Lisp is not well defined" is not clear? 2018-07-20T03:38:25Z equwal: Sorry I upset you. 2018-07-20T03:39:07Z Fare joined #lisp 2018-07-20T03:39:57Z fikka quit (Ping timeout: 264 seconds) 2018-07-20T03:40:27Z brettgilio left #lisp 2018-07-20T03:41:14Z equwal: Time to go. Good morning! 2018-07-20T03:41:18Z equwal left #lisp 2018-07-20T03:41:22Z glamas joined #lisp 2018-07-20T03:44:45Z karlosz quit (Quit: karlosz) 2018-07-20T03:45:45Z iqubic left #lisp 2018-07-20T03:47:15Z brendyn joined #lisp 2018-07-20T03:47:35Z pierpal quit (Quit: Poof) 2018-07-20T03:47:54Z pierpal joined #lisp 2018-07-20T03:49:35Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-20T03:49:59Z nickenchuggets joined #lisp 2018-07-20T03:49:59Z nickenchuggets quit (Changing host) 2018-07-20T03:49:59Z nickenchuggets joined #lisp 2018-07-20T03:52:12Z Guest85775 joined #lisp 2018-07-20T03:54:46Z fikka joined #lisp 2018-07-20T03:56:05Z glamas quit (Quit: Leaving) 2018-07-20T03:57:31Z mathrick quit (Remote host closed the connection) 2018-07-20T03:58:00Z Oladon joined #lisp 2018-07-20T03:58:01Z mathrick joined #lisp 2018-07-20T04:00:09Z fikka quit (Ping timeout: 260 seconds) 2018-07-20T04:00:09Z Oladon quit (Read error: Connection reset by peer) 2018-07-20T04:01:43Z Oladon joined #lisp 2018-07-20T04:03:05Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-20T04:05:16Z fikka joined #lisp 2018-07-20T04:10:04Z fikka quit (Ping timeout: 260 seconds) 2018-07-20T04:10:54Z Kundry_Wag joined #lisp 2018-07-20T04:14:35Z sauvin joined #lisp 2018-07-20T04:14:47Z LdBeth[m]: figurelisp: ECMAScript is officially declared as Lisp inspired language. 2018-07-20T04:15:22Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-20T04:16:03Z fikka joined #lisp 2018-07-20T04:16:42Z red-dot joined #lisp 2018-07-20T04:20:41Z fikka quit (Ping timeout: 268 seconds) 2018-07-20T04:22:19Z beach: LdBeth[m]: Are you doing this on purpose? 2018-07-20T04:23:18Z elfmacs quit (Ping timeout: 256 seconds) 2018-07-20T04:24:27Z brendyn quit (Ping timeout: 240 seconds) 2018-07-20T04:25:34Z fikka joined #lisp 2018-07-20T04:26:15Z Bike quit (Quit: Lost terminal) 2018-07-20T04:26:50Z Guest85775 quit (Ping timeout: 256 seconds) 2018-07-20T04:31:05Z fikka quit (Ping timeout: 276 seconds) 2018-07-20T04:34:16Z FreeBirdLjj joined #lisp 2018-07-20T04:35:43Z igemnace joined #lisp 2018-07-20T04:38:21Z figurelisp left #lisp 2018-07-20T04:42:28Z loginoob joined #lisp 2018-07-20T04:45:56Z fikka joined #lisp 2018-07-20T04:50:54Z fikka quit (Ping timeout: 260 seconds) 2018-07-20T04:51:35Z Inline quit (Quit: Leaving) 2018-07-20T04:56:21Z fikka joined #lisp 2018-07-20T04:56:52Z fikka quit (Read error: Connection reset by peer) 2018-07-20T04:57:06Z Darkraven joined #lisp 2018-07-20T05:00:37Z Kundry_Wag joined #lisp 2018-07-20T05:03:47Z orivej joined #lisp 2018-07-20T05:05:05Z Kundry_Wag quit (Ping timeout: 248 seconds) 2018-07-20T05:10:42Z optikalmouse joined #lisp 2018-07-20T05:11:04Z shka1 joined #lisp 2018-07-20T05:12:04Z Oladon quit (Quit: Leaving.) 2018-07-20T05:13:40Z loginoob quit (Remote host closed the connection) 2018-07-20T05:16:36Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-20T05:16:44Z fikka joined #lisp 2018-07-20T05:17:12Z robotoad quit (Read error: Connection reset by peer) 2018-07-20T05:17:44Z robotoad joined #lisp 2018-07-20T05:19:42Z pyx joined #lisp 2018-07-20T05:20:22Z red-dot joined #lisp 2018-07-20T05:21:15Z pyx quit (Client Quit) 2018-07-20T05:21:47Z fikka quit (Ping timeout: 276 seconds) 2018-07-20T05:25:11Z buffergn0me left #lisp 2018-07-20T05:27:54Z FreeBirdLjj quit (Ping timeout: 268 seconds) 2018-07-20T05:29:32Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-20T05:30:44Z milanj joined #lisp 2018-07-20T05:30:59Z philosau1 quit (Ping timeout: 256 seconds) 2018-07-20T05:31:29Z ofi joined #lisp 2018-07-20T05:31:33Z saki quit (Ping timeout: 264 seconds) 2018-07-20T05:31:44Z saki joined #lisp 2018-07-20T05:33:39Z flamebeard joined #lisp 2018-07-20T05:37:03Z fikka joined #lisp 2018-07-20T05:38:27Z saki quit (Ping timeout: 240 seconds) 2018-07-20T05:40:52Z optikalmouse quit (Quit: Leaving) 2018-07-20T05:41:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-20T05:47:25Z equwal joined #lisp 2018-07-20T05:47:33Z fikka joined #lisp 2018-07-20T05:47:58Z Darkraven quit (Quit: Leaving) 2018-07-20T05:48:44Z aeth: *The* point of Lisp is that you use macros on top of s-expressions. Common Lisp is the common Lisp, replacing all of the historic Lisps except Emacs Lisp. Any new approach (including Scheme, which changed a lot in r4rs, r5rs, etc.) has its own channel, and Emacs Lisp has its own channel. The only useful thing to talk about here is practical Common Lisp problems. Very few people want to talk about language families. 2018-07-20T05:49:18Z aeth: There is a ##lisp for the Lisp family. It's a pretty dead channel. Even #scheme is pretty quiet and mostly used by people implementing Schemes, doing academic Scheme exercises, or trying to write portable Scheme libraries. 2018-07-20T05:49:48Z graphene quit (Remote host closed the connection) 2018-07-20T05:51:07Z aeth: Common Lisp is the subject here not for deep philosophical reasons but because Common Lisp is a useful thing to talk about and much more useful than "is X a Lisp?", which probably belongs in ##lisp or #lispcafe 2018-07-20T05:51:08Z graphene joined #lisp 2018-07-20T05:52:34Z fikka quit (Ping timeout: 264 seconds) 2018-07-20T05:53:51Z JuanDaugherty joined #lisp 2018-07-20T05:55:46Z JuanDaugherty: that seems to imply some kind of questionable altruism as opposed to that common lisp just needs a dedicated channel 2018-07-20T05:55:51Z dcluna quit (Ping timeout: 240 seconds) 2018-07-20T05:56:24Z dcluna joined #lisp 2018-07-20T05:56:51Z aeth: JuanDaugherty: What I mean is: Does Common Lisp deserve "#lisp"? It does because it's far more active than Lisp-family discussions would be on an IRC channel. 2018-07-20T06:01:19Z JuanDaugherty: well it's effectively squatted it aggressively so it's a moot discussion at this point. The most you can do is try to fluff up ##lisp or go to another network 2018-07-20T06:01:51Z nullman quit (Ping timeout: 240 seconds) 2018-07-20T06:02:38Z JuanDaugherty: or kill the CL monoglots 2018-07-20T06:04:07Z JuanDaugherty: i just discovered cl-containers surprised I haven't heard of it before 2018-07-20T06:04:15Z JuanDaugherty: (if in fact I haven't) 2018-07-20T06:05:01Z JuanDaugherty: gotta be something wrong with something that looks so useful 2018-07-20T06:07:55Z fikka joined #lisp 2018-07-20T06:08:49Z JuanDaugherty: CL is slightly older than irc, so I imagine it was an initial condition 2018-07-20T06:10:12Z nalik891 joined #lisp 2018-07-20T06:10:24Z shka1: really? 2018-07-20T06:10:57Z JuanDaugherty: and freenode is only about 20 2018-07-20T06:11:15Z shka1: i thought that irc is from 80s 2018-07-20T06:11:17Z JuanDaugherty: if you date CL from 89 or so 2018-07-20T06:11:36Z nullniverse quit (Read error: Connection reset by peer) 2018-07-20T06:11:45Z shka1: i date CL from publication of ANSI standard 2018-07-20T06:11:49Z JuanDaugherty: although i remember hearing of it before that 2018-07-20T06:12:11Z JuanDaugherty: yeah that's what I mean Cltl I 2018-07-20T06:12:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-20T06:12:55Z JuanDaugherty: it was already a thing, if not that much of one, when I learned smalltalk in '85 2018-07-20T06:13:11Z shka1: ok 2018-07-20T06:13:23Z shka1: i was not even born back then :-) 2018-07-20T06:13:29Z nalik891 quit (Read error: Connection reset by peer) 2018-07-20T06:13:38Z nullniverse joined #lisp 2018-07-20T06:13:57Z nullman joined #lisp 2018-07-20T06:14:09Z JuanDaugherty: first I heard of irc was c. '95/6 but i think it was not new then 2018-07-20T06:15:05Z elfmacs joined #lisp 2018-07-20T06:15:24Z JuanDaugherty: yeah wiki says 88 for irc, i'm pretty sure golden hill was selling something they called CL before that 2018-07-20T06:18:22Z fikka joined #lisp 2018-07-20T06:19:46Z JuanDaugherty: surprised because you'd think that much functionality in one box (cl-containers) would get more play 2018-07-20T06:20:23Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-20T06:20:36Z JuanDaugherty: s/surprised/suspicious/ 2018-07-20T06:21:10Z shka1: JuanDaugherty: i seen cl-containers before 2018-07-20T06:21:34Z JuanDaugherty: did you use it? 2018-07-20T06:21:47Z JuanDaugherty: (other than ql'ing) 2018-07-20T06:21:56Z shka1: i don't like the API 2018-07-20T06:22:00Z JuanDaugherty: ah 2018-07-20T06:22:18Z shka1: LIL is better 2018-07-20T06:22:28Z shka1: but poorly documented 2018-07-20T06:22:38Z red-dot joined #lisp 2018-07-20T06:22:40Z shka1: and very complex in places 2018-07-20T06:23:07Z fikka quit (Ping timeout: 256 seconds) 2018-07-20T06:23:25Z Guest85775 joined #lisp 2018-07-20T06:23:39Z JuanDaugherty: it's MOP heavy 2018-07-20T06:23:45Z shka1: yup 2018-07-20T06:24:01Z shka1: anyway, i just made my own container library 2018-07-20T06:24:29Z shka1: it is not all that feature rich, but since i made it myself i find it conceptually optimal 2018-07-20T06:25:11Z shka1: at the very least it includes D style ranges 2018-07-20T06:25:37Z shka1: so you can actually write portable algorithms 2018-07-20T06:26:14Z shka1: I also added improvised generator that constructs a range 2018-07-20T06:26:19Z JuanDaugherty: i see the virtue of it, LIL is just containers, cl-containers has stuff, the stuff I thought was useful 2018-07-20T06:26:28Z shka1: probably the best thing i ever done in lisp :P 2018-07-20T06:26:41Z mm__redacted joined #lisp 2018-07-20T06:26:44Z shka1: oh, it is useful 2018-07-20T06:26:59Z JuanDaugherty: stuff in the containers 2018-07-20T06:27:34Z igemnace quit (Remote host closed the connection) 2018-07-20T06:27:35Z shka1: cl-containers has OK code, it's just it does not feel like it belongs to the XXI century 2018-07-20T06:27:39Z FreeBirdLjj joined #lisp 2018-07-20T06:27:48Z shka1: but that's just my opinion 2018-07-20T06:27:48Z JuanDaugherty: and that's bad? 2018-07-20T06:27:52Z JuanDaugherty: in lisp? 2018-07-20T06:28:05Z shka1: it is a matter of opinion 2018-07-20T06:28:19Z shka1: and it is just my impression of it 2018-07-20T06:28:24Z fikka joined #lisp 2018-07-20T06:28:48Z JuanDaugherty: i can't think of any computing culture where old stuff is more useful, accepted, tolerated, etc, than common lisp 2018-07-20T06:28:56Z JuanDaugherty: fortran I guess 2018-07-20T06:29:21Z zmt01 quit (Ping timeout: 240 seconds) 2018-07-20T06:29:33Z shka1: oh, i accept it alright 2018-07-20T06:29:38Z JuanDaugherty: and congrats on being born before me, now see if you can survive me 2018-07-20T06:29:48Z shka1: it is just i don't like it that much :D 2018-07-20T06:30:11Z shka1: it is useful, if you need it, use it 2018-07-20T06:30:21Z Fare quit (Ping timeout: 264 seconds) 2018-07-20T06:30:26Z shka1: JuanDaugherty: challenge accepted? :D 2018-07-20T06:30:31Z JuanDaugherty: :) 2018-07-20T06:31:20Z shka1: anyway, what I really want to do with my project is to construct set of reasonable interfaces that can act as bridge 2018-07-20T06:31:44Z shka1: so it is only natural that i find LIL more interesting 2018-07-20T06:32:06Z shka1: even though it is a little bit to complex and lacks some elements 2018-07-20T06:32:36Z JuanDaugherty: a bridget to what? 2018-07-20T06:32:42Z JuanDaugherty: *bridge 2018-07-20T06:32:59Z shka1: between data and algorithms in a essence 2018-07-20T06:33:05Z JuanDaugherty: ah 2018-07-20T06:33:10Z fikka quit (Ping timeout: 260 seconds) 2018-07-20T06:33:42Z shka1: for instance, between training neural network and data stored on disk 2018-07-20T06:34:46Z shka1: also, being able to write pseudo-sql with group-by is quite nice option 2018-07-20T06:34:50Z JuanDaugherty: *born after me 2018-07-20T06:36:27Z scymtym quit (Ping timeout: 240 seconds) 2018-07-20T06:37:08Z shka1: like this https://github.com/sirherrbatka/cl-data-structures/blob/d3566faf0e4f640ff88f490ead0d6c0ccd49c742/src/dicts/hamt/range-test.lisp#L49 2018-07-20T06:39:03Z JuanDaugherty: i c 2018-07-20T06:39:45Z shka1: anyway, i simply want different things 2018-07-20T06:40:06Z shka1: you may be just happy with cl-container 2018-07-20T06:40:08Z shka1: s 2018-07-20T06:40:52Z fikka joined #lisp 2018-07-20T06:41:00Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-20T06:42:33Z littlelisper joined #lisp 2018-07-20T06:44:39Z robotoad quit (Ping timeout: 260 seconds) 2018-07-20T06:44:50Z JuanDaugherty: i do see why now, other reasons occurred and the main thing I wanted to know, that it works you answered, ty 2018-07-20T06:45:14Z shka1: sure 2018-07-20T06:46:12Z Folkol joined #lisp 2018-07-20T06:49:52Z BitPuffin joined #lisp 2018-07-20T06:50:09Z Jesin quit (Ping timeout: 248 seconds) 2018-07-20T06:50:32Z shka1 quit (Ping timeout: 268 seconds) 2018-07-20T06:56:47Z Guest85775 quit (Ping timeout: 276 seconds) 2018-07-20T06:57:21Z ym: Is there a way to IPC with firefox? 2018-07-20T06:57:59Z equwal quit (Ping timeout: 276 seconds) 2018-07-20T07:00:39Z Kundry_Wag joined #lisp 2018-07-20T07:00:55Z beach: ym: Is that a Common Lisp question? 2018-07-20T07:01:06Z FreeBirdLjj quit (Ping timeout: 244 seconds) 2018-07-20T07:03:29Z ym: I hope so. 2018-07-20T07:03:51Z ym: But reading some mail-lists makes me doubt. 2018-07-20T07:05:20Z vlatkoB joined #lisp 2018-07-20T07:05:30Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-20T07:06:20Z beach: What's the relation? I mean Firefox is not a Common Lisp program as far as I know, and I suppose IPC means inter-process communication, and that's quite general. 2018-07-20T07:08:40Z mathrick_ joined #lisp 2018-07-20T07:09:42Z varjag joined #lisp 2018-07-20T07:10:16Z ym: I want to get current page URL and some meta-data from firefox without StumpWM kludges, but seems like the most convenient way is to get hands dirty with JS or to use Emacs's w3, so never mind. 2018-07-20T07:10:30Z mathrick quit (Ping timeout: 260 seconds) 2018-07-20T07:12:28Z fikka quit (Ping timeout: 244 seconds) 2018-07-20T07:15:56Z saki joined #lisp 2018-07-20T07:18:39Z ofi quit (Remote host closed the connection) 2018-07-20T07:19:15Z fikka joined #lisp 2018-07-20T07:20:06Z mange quit (Remote host closed the connection) 2018-07-20T07:21:00Z chiyosaki joined #lisp 2018-07-20T07:22:34Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-20T07:22:48Z saki quit (Ping timeout: 244 seconds) 2018-07-20T07:23:20Z littlelisper quit (Ping timeout: 276 seconds) 2018-07-20T07:23:59Z philosau1 joined #lisp 2018-07-20T07:24:10Z red-dot joined #lisp 2018-07-20T07:24:55Z scymtym joined #lisp 2018-07-20T07:25:33Z caltelt quit (Ping timeout: 264 seconds) 2018-07-20T07:25:35Z chiyosaki quit (Ping timeout: 240 seconds) 2018-07-20T07:26:19Z JuanDaugherty quit (Quit: Exeunt) 2018-07-20T07:29:59Z slyrus1 quit (Ping timeout: 256 seconds) 2018-07-20T07:30:01Z scymtym_ joined #lisp 2018-07-20T07:30:08Z beach` joined #lisp 2018-07-20T07:30:35Z beach quit (Disconnected by services) 2018-07-20T07:30:39Z beach` is now known as beach 2018-07-20T07:31:04Z slyrus_ quit (Ping timeout: 244 seconds) 2018-07-20T07:31:08Z itruslove quit (Ping timeout: 276 seconds) 2018-07-20T07:31:47Z elfmacs quit (Ping timeout: 276 seconds) 2018-07-20T07:32:01Z mflem quit (Read error: Connection reset by peer) 2018-07-20T07:32:26Z scymtym quit (Ping timeout: 276 seconds) 2018-07-20T07:32:26Z mathrick_ quit (Ping timeout: 276 seconds) 2018-07-20T07:34:55Z elfmacs joined #lisp 2018-07-20T07:43:30Z nowhere_man joined #lisp 2018-07-20T07:44:34Z slyrus_ joined #lisp 2018-07-20T07:47:04Z mathrick_ joined #lisp 2018-07-20T07:48:49Z orivej quit (Ping timeout: 260 seconds) 2018-07-20T07:51:11Z robotoad joined #lisp 2018-07-20T07:55:11Z ym: Wow. Just found Common Lisp WebKit-based web browser! 2018-07-20T07:55:21Z ym: Just what I need. 2018-07-20T07:55:21Z robotoad quit (Ping timeout: 244 seconds) 2018-07-20T08:02:30Z shka: ym: :-) 2018-07-20T08:02:54Z pierpal quit (Quit: Poof) 2018-07-20T08:03:11Z pierpal joined #lisp 2018-07-20T08:04:33Z nullniverse quit (Ping timeout: 256 seconds) 2018-07-20T08:05:57Z hhdave joined #lisp 2018-07-20T08:06:06Z phoe: Hey hi 2018-07-20T08:06:09Z phoe: and good morning 2018-07-20T08:06:19Z shka: phoe: good morning to you 2018-07-20T08:13:15Z ofi joined #lisp 2018-07-20T08:18:55Z FreeBirdLjj joined #lisp 2018-07-20T08:24:12Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-20T08:25:50Z makomo joined #lisp 2018-07-20T08:25:57Z nowhere_man quit (Ping timeout: 240 seconds) 2018-07-20T08:27:06Z red-dot joined #lisp 2018-07-20T08:34:30Z angavrilov joined #lisp 2018-07-20T08:34:48Z schweers joined #lisp 2018-07-20T08:35:28Z kajo quit (Ping timeout: 256 seconds) 2018-07-20T08:36:32Z _cosmonaut_ joined #lisp 2018-07-20T08:36:35Z pagnol joined #lisp 2018-07-20T08:36:39Z karoofish joined #lisp 2018-07-20T08:45:12Z azimut quit (Ping timeout: 245 seconds) 2018-07-20T08:47:17Z dim: thanks Norvig for PAIP now being available on GitHub, it makes linking to references from the book much easier ;-) 2018-07-20T08:47:28Z dim: (today reference: the data-driven programming technique) 2018-07-20T08:49:07Z azimut joined #lisp 2018-07-20T08:53:30Z Guest85775 joined #lisp 2018-07-20T08:53:37Z lumm joined #lisp 2018-07-20T08:57:57Z faraco joined #lisp 2018-07-20T08:57:57Z faraco quit (Changing host) 2018-07-20T08:57:57Z faraco joined #lisp 2018-07-20T09:01:46Z random-nick joined #lisp 2018-07-20T09:03:33Z saki joined #lisp 2018-07-20T09:11:53Z ebrasca quit (Read error: Connection reset by peer) 2018-07-20T09:12:17Z ebrasca joined #lisp 2018-07-20T09:12:22Z FreeBirdLjj quit (Ping timeout: 268 seconds) 2018-07-20T09:18:30Z markoong joined #lisp 2018-07-20T09:20:26Z Kundry_Wag joined #lisp 2018-07-20T09:20:35Z shka: cool 2018-07-20T09:24:16Z kajo joined #lisp 2018-07-20T09:25:04Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-20T09:25:14Z robotoad joined #lisp 2018-07-20T09:26:36Z Guest85775 quit (Ping timeout: 256 seconds) 2018-07-20T09:27:05Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-20T09:29:52Z red-dot joined #lisp 2018-07-20T09:37:54Z fikka quit (Ping timeout: 260 seconds) 2018-07-20T09:38:42Z fikka joined #lisp 2018-07-20T09:42:47Z ArthurAGleckler[ quit (Remote host closed the connection) 2018-07-20T09:42:49Z kammd[m] quit (Remote host closed the connection) 2018-07-20T09:42:50Z spectrumgomas[m] quit (Write error: Connection reset by peer) 2018-07-20T09:42:51Z EuAndreh[m] quit (Remote host closed the connection) 2018-07-20T09:42:51Z eli_oat[m] quit (Remote host closed the connection) 2018-07-20T09:42:52Z Cal[m] quit (Read error: Connection reset by peer) 2018-07-20T09:42:52Z eatonphil[m] quit (Read error: Connection reset by peer) 2018-07-20T09:42:53Z can3p[m] quit (Remote host closed the connection) 2018-07-20T09:42:53Z plll[m] quit (Read error: Connection reset by peer) 2018-07-20T09:42:54Z kumori[m] quit (Remote host closed the connection) 2018-07-20T09:42:55Z lyosha[m] quit (Remote host closed the connection) 2018-07-20T09:42:57Z dirb[m] quit (Remote host closed the connection) 2018-07-20T09:42:58Z wetha[m] quit (Remote host closed the connection) 2018-07-20T09:42:59Z z3r0d5y[m] quit (Read error: Connection reset by peer) 2018-07-20T09:42:59Z LdBeth[m] quit (Read error: Connection reset by peer) 2018-07-20T09:43:00Z drunk_foxx[m] quit (Remote host closed the connection) 2018-07-20T09:43:01Z equalunique[m] quit (Read error: Connection reset by peer) 2018-07-20T09:43:01Z manila[m] quit (Remote host closed the connection) 2018-07-20T09:43:02Z remix2000[m] quit (Read error: Connection reset by peer) 2018-07-20T09:43:03Z magicGNUPONUT[m] quit (Read error: Connection reset by peer) 2018-07-20T09:43:03Z Thorondor[m] quit (Read error: Connection reset by peer) 2018-07-20T09:43:03Z ritsch_master[m] quit (Read error: Connection reset by peer) 2018-07-20T09:43:03Z katco[m] quit (Remote host closed the connection) 2018-07-20T09:43:03Z Jach[m] quit (Remote host closed the connection) 2018-07-20T09:43:04Z clhsgang[m] quit (Read error: Connection reset by peer) 2018-07-20T09:43:08Z SAL9000[m] quit (Remote host closed the connection) 2018-07-20T09:43:08Z HDurer[m] quit (Remote host closed the connection) 2018-07-20T09:43:08Z no-defun-allowed quit (Remote host closed the connection) 2018-07-20T09:45:27Z fiddlerwoaroof quit (Ping timeout: 261 seconds) 2018-07-20T09:46:02Z sellout- quit (Ping timeout: 245 seconds) 2018-07-20T09:46:04Z BitPuffin quit (Ping timeout: 260 seconds) 2018-07-20T09:46:26Z zigpaw: I wonder if there is a library that would allow easy pattern matching for function parameters in CL based on some of the parameters properties? like fnc1 (arg1 is list with length 1) ; fnc (arg1 is list with length 2) , etc... 2018-07-20T09:49:18Z fiddlerwoaroof joined #lisp 2018-07-20T09:50:59Z TMA: zigpaw: DESTRUCTURING-BIND might be a basis for your own library, if you don't find one to your liking 2018-07-20T09:51:16Z LdBeth[m] joined #lisp 2018-07-20T09:52:43Z itruslove joined #lisp 2018-07-20T09:52:50Z shka: zigpaw: optima? 2018-07-20T09:54:18Z shka: not lambda lists, but mix of MOP, compiler macros and optima should allow you to do everything in this area 2018-07-20T09:54:39Z sellout- joined #lisp 2018-07-20T09:54:40Z shka: it is probabbly two day project 2018-07-20T09:55:56Z saki quit (Ping timeout: 256 seconds) 2018-07-20T09:56:10Z schweers quit (Read error: Connection reset by peer) 2018-07-20T09:56:18Z schweers joined #lisp 2018-07-20T09:58:05Z kajo quit (Ping timeout: 256 seconds) 2018-07-20T10:00:28Z trittweiler quit (Ping timeout: 268 seconds) 2018-07-20T10:00:40Z kajo joined #lisp 2018-07-20T10:02:14Z kerrhau quit (Ping timeout: 255 seconds) 2018-07-20T10:03:44Z dim: zigpaw: have a look at how Erlang or Ocaml or others do it first? 2018-07-20T10:04:11Z dim: related, http://joelagnel.blogspot.com/2009/02/functions-with-pattern-matching.html 2018-07-20T10:04:44Z dim: and it's already been done of course https://github.com/nallen05/bpm/ 2018-07-20T10:08:19Z faraco quit (Quit: Leaving) 2018-07-20T10:08:47Z dddddd joined #lisp 2018-07-20T10:10:09Z AetherWind quit (Quit: Leaving) 2018-07-20T10:12:05Z FreeBirdLjj joined #lisp 2018-07-20T10:17:32Z zigpaw: thanks, will look into those :) 2018-07-20T10:21:05Z spectrumgomas[m] joined #lisp 2018-07-20T10:21:06Z remix2000[m] joined #lisp 2018-07-20T10:21:06Z wetha[m] joined #lisp 2018-07-20T10:21:06Z dirb[m] joined #lisp 2018-07-20T10:21:06Z magicGNUPONUT[m] joined #lisp 2018-07-20T10:21:06Z kammd[m] joined #lisp 2018-07-20T10:21:06Z SAL9000[m] joined #lisp 2018-07-20T10:21:06Z drunk_foxx[m] joined #lisp 2018-07-20T10:21:06Z eli_oat[m] joined #lisp 2018-07-20T10:21:06Z eatonphil[m] joined #lisp 2018-07-20T10:21:07Z no-defun-allowed joined #lisp 2018-07-20T10:21:07Z katco[m] joined #lisp 2018-07-20T10:21:07Z Thorondor[m] joined #lisp 2018-07-20T10:21:07Z manila[m] joined #lisp 2018-07-20T10:21:07Z equalunique[m] joined #lisp 2018-07-20T10:21:07Z Jach[m] joined #lisp 2018-07-20T10:21:07Z Cal[m] joined #lisp 2018-07-20T10:21:08Z HDurer[m] joined #lisp 2018-07-20T10:21:08Z kumori[m] joined #lisp 2018-07-20T10:21:08Z plll[m] joined #lisp 2018-07-20T10:21:08Z clhsgang[m] joined #lisp 2018-07-20T10:21:08Z ritsch_master[m] joined #lisp 2018-07-20T10:21:08Z EuAndreh[m] joined #lisp 2018-07-20T10:21:12Z lyosha[m] joined #lisp 2018-07-20T10:21:14Z can3p[m] joined #lisp 2018-07-20T10:21:14Z z3r0d5y[m] joined #lisp 2018-07-20T10:21:17Z ArthurAGleckler[ joined #lisp 2018-07-20T10:22:05Z lumm quit (Ping timeout: 276 seconds) 2018-07-20T10:23:44Z milanj quit (Quit: This computer has gone to sleep) 2018-07-20T10:26:44Z nowhere_man joined #lisp 2018-07-20T10:27:17Z fikka quit (Ping timeout: 276 seconds) 2018-07-20T10:29:10Z brendyn joined #lisp 2018-07-20T10:30:25Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-20T10:31:24Z red-dot joined #lisp 2018-07-20T10:35:32Z FreeBirdLjj quit (Ping timeout: 260 seconds) 2018-07-20T10:35:45Z _cosmonaut_ quit (Ping timeout: 264 seconds) 2018-07-20T10:36:57Z pagnol quit (Ping timeout: 240 seconds) 2018-07-20T10:37:48Z Folkol quit (Quit: Textual IRC Client: www.textualapp.com) 2018-07-20T10:43:00Z fikka joined #lisp 2018-07-20T10:44:14Z sellout- quit (Ping timeout: 260 seconds) 2018-07-20T10:45:47Z sellout- joined #lisp 2018-07-20T10:48:04Z fikka quit (Ping timeout: 256 seconds) 2018-07-20T10:48:40Z jmercouris joined #lisp 2018-07-20T10:48:53Z jmercouris: what is the opinion of the lisp community on nesting defuns? 2018-07-20T10:49:12Z jkordani joined #lisp 2018-07-20T10:49:59Z jkordani_ quit (Ping timeout: 244 seconds) 2018-07-20T10:50:03Z jmercouris: e.g. (defun fish () (defun salmon () (print "I'm a salmon")) (funcall #'salmon)) 2018-07-20T10:50:12Z jmercouris: frowned upon? okay practice? 2018-07-20T10:50:16Z splittist: jmercouris: there is no lisp community, but it discourages them. 2018-07-20T10:50:41Z splittist: jmercouris: there are other things for local functions: flet and labels 2018-07-20T10:50:41Z jmercouris: splittist: some reasons why? 2018-07-20T10:51:05Z splittist: defun is for globals 2018-07-20T10:51:08Z jmercouris: Aha 2018-07-20T10:51:14Z jmercouris: I just understood what flet stands for 2018-07-20T10:51:17Z jmercouris: "function let", right? 2018-07-20T10:51:34Z Ven`` joined #lisp 2018-07-20T10:51:39Z jmercouris: and these functions defined in an flet, do they share the lexical context of the enclosing defun, for example? 2018-07-20T10:52:51Z splittist: If I understand what you mean, yes. flet and labels differ in terms of recursivity, in the way let and let* do 2018-07-20T10:53:28Z fikka joined #lisp 2018-07-20T10:54:06Z jmercouris: why isn't it flet, and flet*? 2018-07-20T10:54:09Z jmercouris: what is a label exactly? 2018-07-20T10:54:56Z splittist: my guess is for hysterical raisins. 2018-07-20T10:55:15Z splittist: "labels is equivalent to flet except that the scope of the defined function names for labels encompasses the function definitions themselves as well as the body." 2018-07-20T10:56:01Z jmercouris: hysterical raisins? is that an expression? 2018-07-20T10:56:34Z splittist: == historical reasons 2018-07-20T10:56:53Z jmercouris: Ok, I see 2018-07-20T10:56:53Z jmercouris: https://en.wikipedia.org/wiki/Backward_compatibility 2018-07-20T10:57:30Z Xach: labels is not like let* 2018-07-20T10:57:36Z Xach: in one important respect, that is 2018-07-20T10:57:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-20T10:57:57Z terpri quit (Ping timeout: 240 seconds) 2018-07-20T10:58:58Z agspathis joined #lisp 2018-07-20T10:59:06Z agspathis quit (Client Quit) 2018-07-20T11:00:49Z Kundry_Wag joined #lisp 2018-07-20T11:03:33Z fikka joined #lisp 2018-07-20T11:03:38Z jmercouris: are you going to tell us, or just leave us in deep suspense? 2018-07-20T11:03:56Z _death: (labels ((f1 () (f2)) (f2 () 'hi)) (f1)) 2018-07-20T11:04:54Z shka: also 2018-07-20T11:05:20Z shka: labels scope extends to body of function as well 2018-07-20T11:05:37Z shka: so (labels ((you-spin-me () (you-spin-me))) is ok 2018-07-20T11:05:38Z Kundry_Wag quit (Ping timeout: 276 seconds) 2018-07-20T11:08:05Z nowhereman_ joined #lisp 2018-07-20T11:08:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-20T11:10:53Z orivej joined #lisp 2018-07-20T11:11:45Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-20T11:17:30Z Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-20T11:17:45Z nowhereman_ quit (Ping timeout: 264 seconds) 2018-07-20T11:23:55Z Guest85775 joined #lisp 2018-07-20T11:31:37Z splittist now has Dead or Alive stuck in his ear 2018-07-20T11:31:54Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-20T11:32:57Z red-dot joined #lisp 2018-07-20T11:33:59Z fikka joined #lisp 2018-07-20T11:37:52Z jdz: zigpaw: you might be interested in https://european-lisp-symposium.org/static/2016/newton.pdf 2018-07-20T11:38:42Z rumbler3_ joined #lisp 2018-07-20T11:41:39Z rumbler31 quit (Ping timeout: 244 seconds) 2018-07-20T11:41:50Z terpri joined #lisp 2018-07-20T11:42:32Z Folkol_ quit (Read error: Connection reset by peer) 2018-07-20T11:43:04Z Folkol joined #lisp 2018-07-20T11:44:20Z Fare joined #lisp 2018-07-20T11:46:59Z pagnol joined #lisp 2018-07-20T11:47:53Z DemolitionMan joined #lisp 2018-07-20T11:51:29Z saki joined #lisp 2018-07-20T11:54:05Z BitPuffin joined #lisp 2018-07-20T11:56:23Z zfree joined #lisp 2018-07-20T11:57:20Z Guest85775 quit (Ping timeout: 256 seconds) 2018-07-20T11:59:33Z Folkol quit (Read error: Connection reset by peer) 2018-07-20T11:59:45Z milanj joined #lisp 2018-07-20T11:59:58Z Folkol joined #lisp 2018-07-20T12:01:36Z pierpal quit (Quit: Poof) 2018-07-20T12:01:55Z pierpal joined #lisp 2018-07-20T12:02:27Z FreeBirdLjj joined #lisp 2018-07-20T12:02:50Z X-Scale quit (Ping timeout: 244 seconds) 2018-07-20T12:03:32Z pierpal quit (Client Quit) 2018-07-20T12:04:08Z SaganMan quit (Ping timeout: 276 seconds) 2018-07-20T12:05:53Z [X-Scale] joined #lisp 2018-07-20T12:10:44Z azimut quit (Ping timeout: 260 seconds) 2018-07-20T12:11:43Z lumm joined #lisp 2018-07-20T12:13:04Z pierpal joined #lisp 2018-07-20T12:14:21Z azimut joined #lisp 2018-07-20T12:15:21Z vlad_ joined #lisp 2018-07-20T12:16:33Z vlad_ is now known as DonVlad 2018-07-20T12:19:57Z djinni` quit (Read error: Connection reset by peer) 2018-07-20T12:20:29Z SaganMan joined #lisp 2018-07-20T12:24:00Z djinni` joined #lisp 2018-07-20T12:24:35Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2018-07-20T12:24:43Z ikki joined #lisp 2018-07-20T12:25:54Z Kundry_Wag joined #lisp 2018-07-20T12:30:27Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-20T12:31:05Z beach: jmercouris: Let me also add that nesting DEFUNs probably doesn't mean what you think it might. 2018-07-20T12:31:21Z jmercouris: beach: what do you mean? 2018-07-20T12:31:37Z beach: It doesn't mean that the inner function is local to the outer. 2018-07-20T12:31:58Z beach: And it means that you redefine the inner function in the global environment every time you call the outer function. 2018-07-20T12:32:48Z graphene quit (Remote host closed the connection) 2018-07-20T12:33:05Z eli_oat1 joined #lisp 2018-07-20T12:33:24Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-20T12:33:55Z milanj quit (Quit: This computer has gone to sleep) 2018-07-20T12:34:07Z graphene joined #lisp 2018-07-20T12:34:25Z red-dot joined #lisp 2018-07-20T12:34:34Z fikka quit (Ping timeout: 264 seconds) 2018-07-20T12:34:45Z beach: jmercouris: Consider the following exercise: start with doing (defun foo (x) (defun bar (y) (+ x y))) at the REPL. 2018-07-20T12:34:54Z fikka joined #lisp 2018-07-20T12:34:57Z jmercouris: Ok 2018-07-20T12:35:01Z beach: Then try #'bar at the REPL. 2018-07-20T12:35:10Z beach: Notice that it is not defined. 2018-07-20T12:35:11Z jmercouris: shows up as a closure 2018-07-20T12:35:17Z Inline joined #lisp 2018-07-20T12:35:19Z jmercouris: rather than as a function 2018-07-20T12:35:38Z beach: It should have been undefined, unless you called FOO. 2018-07-20T12:35:45Z jmercouris: I did invoke foo 2018-07-20T12:35:51Z beach: Oh well, too bad. 2018-07-20T12:35:51Z jmercouris: ah, because defun is a macro! 2018-07-20T12:36:00Z beach: No, nothing to do with it. 2018-07-20T12:36:02Z jmercouris: and it doesn't have to eval its arguments 2018-07-20T12:36:04Z beach: Let's do it again... 2018-07-20T12:36:10Z jmercouris: ok I'll restart the repl 2018-07-20T12:36:16Z beach: OK. 2018-07-20T12:36:23Z jmercouris: indeed, undefined 2018-07-20T12:36:29Z jmercouris: but is what I said, also not true? 2018-07-20T12:36:36Z jmercouris: the form within foo doesn't need to be eval'd 2018-07-20T12:36:43Z beach: It is true, but not important in this context. 2018-07-20T12:36:57Z beach: Now try (foo 10) for instance. 2018-07-20T12:37:05Z jmercouris: It returns BAR 2018-07-20T12:37:08Z jmercouris: which makes sense 2018-07-20T12:37:09Z beach: Yes. 2018-07-20T12:37:16Z beach: Now try #'bar. 2018-07-20T12:37:17Z kajo quit (Ping timeout: 245 seconds) 2018-07-20T12:37:20Z shka: beach: i think that jmercouris meant to say that defun does not evaluate it's arguments, including &body 2018-07-20T12:37:22Z beach: It is now defined to be a closure,. 2018-07-20T12:37:30Z jmercouris: Indeed, it says closure 2018-07-20T12:37:37Z beach: OK, now the nice thing:... 2018-07-20T12:37:45Z shka: therefore nested defun will be evaluated only after calling outer function 2018-07-20T12:37:48Z beach: jmercouris: Do (defparameter *x* #'bar) 2018-07-20T12:37:56Z jmercouris: shka: that's what I was trying to say 2018-07-20T12:38:09Z jmercouris: Ok, I've done that 2018-07-20T12:38:17Z beach: *x* should be that closure. 2018-07-20T12:38:26Z jmercouris: Indeed it is *x* evals to that 2018-07-20T12:38:27Z beach: Now try (foo 30) for instance. 2018-07-20T12:38:38Z jmercouris: Aha, it has now redfined bar 2018-07-20T12:38:41Z beach: Finally try (eq *x* #'bar) 2018-07-20T12:38:52Z jmercouris: they are not equal 2018-07-20T12:38:59Z jmercouris: so *x* must be the older closure 2018-07-20T12:39:01Z beach: so every time to invoke FOO, you redefine BAR in the global environment. 2018-07-20T12:39:03Z beach: Yes, it is. 2018-07-20T12:39:17Z jmercouris: ah, I can see now, why you wouldn't want to do that 2018-07-20T12:39:24Z beach: Exactly. 2018-07-20T12:39:36Z beach: But the reason for this behavior has nothing to do with the fact that DEFUN is a macro. 2018-07-20T12:39:51Z jmercouris: Right, I was just commenting on the non-existence of bar before invoking foo 2018-07-20T12:40:21Z beach: It has to do with the fact that the DEFUN form has side effects in the global environment, so when it is executed in the body of another DEFUN, those side effects happen each time the outer DEFUN is invoked. 2018-07-20T12:40:27Z Bike joined #lisp 2018-07-20T12:40:35Z beach: Sure, that part is right. 2018-07-20T12:40:41Z jmercouris: I understand 2018-07-20T12:40:46Z jmercouris: thanks for the explanation 2018-07-20T12:40:50Z beach: Sure. 2018-07-20T12:41:17Z jmercouris: I guess it makes sense that DEFUN has side effects, it is convenient 2018-07-20T12:41:32Z jmercouris: otherwise we'd have to wrap a form within a form to define a global function 2018-07-20T12:41:41Z jmercouris: "global" function, I mean function defined within a package 2018-07-20T12:42:06Z beach: OK, now you are confused again. Packages are no longer involved after READ has done its job. 2018-07-20T12:42:12Z jmercouris: that I did not know 2018-07-20T12:42:21Z jmercouris: okay, I will refrain from assuming until I learn more 2018-07-20T12:42:32Z shka: jmercouris: didn't i link you idiots guide to packages? 2018-07-20T12:42:36Z beach: But DEFUN expands to something like (setf (fdefinition ) (lambda ...)) 2018-07-20T12:42:39Z jmercouris: shka: I don't believe so 2018-07-20T12:43:01Z jmercouris: (macroexpand-1 '(defun fish (x y) (print x) (print y))) 2018-07-20T12:43:05Z jmercouris: damnit, wrong window 2018-07-20T12:43:15Z shka: http://www.flownet.com/gat/packages.pdf 2018-07-20T12:43:17Z beach: It's a bit more complicated because of what the Common Lisp HyperSpec has to say about top-level forms and the file compiler. 2018-07-20T12:43:23Z shka: worth reading 2018-07-20T12:43:37Z shka: it is good to know how lisp packages work 2018-07-20T12:43:48Z shka: as early as possible 2018-07-20T12:43:56Z jmercouris quit (Remote host closed the connection) 2018-07-20T12:44:46Z jmercouris joined #lisp 2018-07-20T12:45:29Z jmercouris: shka: I'll make it my next reading 2018-07-20T12:45:37Z shka: good 2018-07-20T12:45:50Z jmercouris: beach: yes, the expanded form had a few more things in it in sbcl 2018-07-20T12:46:34Z beach: jmercouris: The name FOO is turned into a symbol by READ, and that symbol has a package as reported by SYMBOL-PACKAGE. But all DEFUN does is to define a function in the global environment that has that symbol as its name. 2018-07-20T12:47:23Z jmercouris: I see 2018-07-20T12:47:28Z beach: Packages do not contain functions or variables or anything other than symbols. A package is a slightly complex mapping from names of symbols (i.e. strings) to symbols. 2018-07-20T12:47:37Z housel quit (Read error: Connection reset by peer) 2018-07-20T12:48:19Z shka: and what is important 2018-07-20T12:48:31Z shka: packages are mostly connected to reader 2018-07-20T12:48:39Z shka: and not to anything else 2018-07-20T12:50:06Z karoofish left #lisp 2018-07-20T12:52:11Z beach: OK, changing the topic here. I realize that not everyone is a compiler expert here, so that I can't ask for help with Cleavir. 2018-07-20T12:52:12Z beach: But, we need to visualize intermediate code (HIR) which is a huge graph even for very modest-size functions. So it would be great if someone would write such a tool using (say) McCLIM. We need to be able so hide parts of the graph, select levels of detail, etc. Any takers? 2018-07-20T12:52:14Z graphene quit (Remote host closed the connection) 2018-07-20T12:52:38Z shka: visulize graphs? 2018-07-20T12:52:45Z shka: or trees? 2018-07-20T12:52:58Z ebrasca quit (Read error: Connection reset by peer) 2018-07-20T12:52:59Z beach: Arbitrary control and data flow graphs. 2018-07-20T12:53:26Z beach: Yes, we are currently using GraphViz, but it is not interactive and can't be programmed to hide or expose detail. 2018-07-20T12:53:33Z graphene joined #lisp 2018-07-20T12:53:43Z beach: Plus, it is not written in Common Lisp of course. 2018-07-20T12:54:11Z shka: so basicly interactive graphviz would be fine? 2018-07-20T12:54:40Z _cosmonaut_ joined #lisp 2018-07-20T12:54:42Z LiamH joined #lisp 2018-07-20T12:54:45Z beach: It must be programmable so that it understands the contents of nodes and so that the level of detail can be chosen for each node. 2018-07-20T12:54:48Z graphene quit (Remote host closed the connection) 2018-07-20T12:55:21Z beach: The GraphViz layout algorithm is published work, and it is not too bad for modest-size graphs. And if part of the HIR graph is hidden, that algorithm would work fine I think. 2018-07-20T12:55:48Z shka: so interactive graphviz with set of protocol generic functions that can control the visible structure 2018-07-20T12:55:57Z beach: Sounds right. 2018-07-20T12:55:57Z v0|d joined #lisp 2018-07-20T12:56:09Z graphene joined #lisp 2018-07-20T12:56:31Z lieven: beach: doesn't CLIM come with a graph formatter? I seem to recall the Lispworks version did. 2018-07-20T12:56:32Z shka thinks if he has personal use case for such tool 2018-07-20T12:56:48Z jmercouris: beach: I would suggest using a graph database like neo4j 2018-07-20T12:56:50Z Arcaelyx quit (Ping timeout: 255 seconds) 2018-07-20T12:56:51Z beach: lieven: It does. But the one we have in McCLIM is very primitive. 2018-07-20T12:56:59Z jmercouris: You can dynamically add and remove nodes, add properties to the nodes etc 2018-07-20T12:57:16Z jmercouris: that way, you don't have to do any of the graph programming yourself, or any of the myriad of graph operations, just add and remove nodes 2018-07-20T12:57:35Z jmercouris: neo4j comes with very good visualization suites, and it would be useful to have a graph database driver for neo4j in CL anyway 2018-07-20T12:57:49Z jmercouris: neo4j also comes with a very nice query language called cypher 2018-07-20T12:57:50Z beach: jmercouris: Yes, I see. I'll look into it. 2018-07-20T12:58:03Z jmercouris: beach: https://neo4j.com/developer/cypher-query-language/ 2018-07-20T12:58:15Z jmercouris: if you are interested in this approach, and in neo4j, I am extremely experienced with it 2018-07-20T12:58:35Z beach: That could come in handy. Thanks for the offer. 2018-07-20T12:59:02Z jmercouris: I would have suggested a different tool, but since you said it has to be dynamic, that is the best I can think of 2018-07-20T12:59:29Z jmercouris: if you are willing to sacrifice dynamically adding and removing nodes, Gephi is pretty nice 2018-07-20T13:00:06Z keix joined #lisp 2018-07-20T13:00:07Z beach: Yeah, the graphs can be pretty big and they have both control flow and data flow information, so they can be quite messy. And it is impossible to choose a priori what part of the graph to look at. Hence the interactivity. 2018-07-20T13:00:33Z jmercouris: Oh I see, you don't mean dynamically adding or removing nodes from the graph, but dynamically querying the graph 2018-07-20T13:00:40Z jmercouris: in this case, it is extremely easy to accomplish what you want to do 2018-07-20T13:01:09Z beach: Right, I don't need to modify the graph. Just modify the visibility of groups of nodes and individual nodes. 2018-07-20T13:01:22Z jmercouris: I would suggest, output to a GML file https://gephi.org/users/supported-graph-formats/gml-format/ and then analyze it with any one of many programs 2018-07-20T13:01:31Z jmercouris: you can query the graph, and modify the visiblity, sort in different ways etc 2018-07-20T13:01:42Z jmercouris: GML is a very easy to use format, and you can have any number of data types within it 2018-07-20T13:01:57Z jmercouris: as in, a node can have many properties, in many different types 2018-07-20T13:02:04Z Fare quit (Ping timeout: 260 seconds) 2018-07-20T13:03:12Z beach: I can very easily generate any such syntax. 2018-07-20T13:03:20Z jmercouris: Then it should be no problem! 2018-07-20T13:04:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-20T13:04:05Z beach: So the main thing seems to be choosing one of those many programs. 2018-07-20T13:04:38Z jmercouris: Well, Gephi is a good one 2018-07-20T13:04:42Z beach: Well, there is the issue of choosing "data types" for different aspects of the graph of course, but that should not be too hard. 2018-07-20T13:04:43Z micossip joined #lisp 2018-07-20T13:04:51Z jmercouris: after you've generated the GML file, you can open it up any program anyway 2018-07-20T13:05:28Z Bike: clasp has a hir gml thing already, so that could just be cleaned up and incorporated 2018-07-20T13:05:48Z beach: Bike: Oh. Good. 2018-07-20T13:06:38Z Arcaelyx joined #lisp 2018-07-20T13:06:40Z beach: Bike: What are you using to view the graphs? 2018-07-20T13:07:24Z Bike: i just use graphviz. drmeister has used cytoscape, which i'm unfamiliar with. 2018-07-20T13:07:58Z beach: OK. 2018-07-20T13:08:29Z anewuser joined #lisp 2018-07-20T13:10:05Z micossip quit (Quit: ERC (IRC client for Emacs 24.5.1)) 2018-07-20T13:13:12Z beach: Watching a Cytoscape tutorial, I see that it allows the user to modify the graph interactively, including the layout. That doesn't look like stuff we want. 2018-07-20T13:14:44Z karlosz joined #lisp 2018-07-20T13:19:22Z Bike: it's nothing we particularly need, sure 2018-07-20T13:20:07Z fikka joined #lisp 2018-07-20T13:24:47Z fikka quit (Ping timeout: 245 seconds) 2018-07-20T13:24:48Z beach: It makes me tired just to think about going through the documentation and tutorials of all those applications. 2018-07-20T13:26:20Z milanj joined #lisp 2018-07-20T13:27:47Z graphene quit (Remote host closed the connection) 2018-07-20T13:28:59Z beach: jmercouris: Our graphs will contain nested functions represented by one ENTER node and one or more RETURN nodes. One thing that I would like to do is to turn such functions into a single blob and examine the details of one at a time. What Gephi functionality allows that? 2018-07-20T13:29:03Z graphene joined #lisp 2018-07-20T13:29:49Z Bike: doing that with basic blocks would be nice too. of course i imagine we'd have to annotate subgraphs ourselves, but that's no problem 2018-07-20T13:29:51Z jmercouris: beach: I don't understand the question 2018-07-20T13:30:05Z beach: Bike: Sure, yes. 2018-07-20T13:30:24Z jmercouris: you would like to turn multiple nodes into a single blob? 2018-07-20T13:30:34Z fikka joined #lisp 2018-07-20T13:30:35Z jmercouris: is that correct? 2018-07-20T13:30:41Z beach: Yes, but only for the purpose of viewing. 2018-07-20T13:30:45Z beach: Not modifying the graph. 2018-07-20T13:30:51Z jmercouris: You may cluster them based on some property 2018-07-20T13:31:11Z jmercouris: so if you tag each of those blobs with some Identifier that is the same, you may have their gravity increase and they will overlap each other 2018-07-20T13:31:13Z beach: I would like to click on the enter node and have the nested function turn into a single blob. 2018-07-20T13:31:25Z Bike: shrinking down a subgraph to be a node. 2018-07-20T13:31:31Z Bike: and then unshrinking. 2018-07-20T13:31:36Z beach: Exactly. 2018-07-20T13:31:48Z jmercouris: There must be a way to do it in the UI 2018-07-20T13:31:52Z jmercouris: I'm not looking at the program right now 2018-07-20T13:32:57Z beach: Like Bike says, we can easily stick different "labels" in the nodes, so that each nested function has nodes with different "labels". 2018-07-20T13:33:21Z jmercouris: I can't think of a way to do it in a single click 2018-07-20T13:33:24Z keix quit (Remote host closed the connection) 2018-07-20T13:33:28Z jmercouris: but I can think of a way to do it in a couple clicks 2018-07-20T13:33:36Z schweers: I have a quick question on CALL-NEXT-METHOD. If I have a method which calls a helper function several times (the helper function is called from several methods, but never from anywhere else). Is this helper function allowed to use CALL-NEXT-METHOD? 2018-07-20T13:33:51Z beach: jmercouris: Two or more clicks would be fine. I just don't want to manually select the nodes to collapse. 2018-07-20T13:34:57Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-20T13:35:05Z beach: schweers: CALL-NEXT-METHOD will be lexically defined, so you need to pass it as an argument to your helper function, as in (helper ... #'call-next-method). 2018-07-20T13:35:20Z schweers: okay, but then I’m good? 2018-07-20T13:35:27Z beach: I don't see why not. 2018-07-20T13:35:31Z jmercouris: beach: I need to think about this a little bit more, because I assume you also want to view data from all of these nodes at once, right? 2018-07-20T13:35:37Z schweers: now that I think of it, I can just pass in a short lambda instead. 2018-07-20T13:35:41Z schweers: still, thanks! 2018-07-20T13:35:44Z jmercouris: I can think of how to hide them, but not how to join their data 2018-07-20T13:35:47Z fikka quit (Ping timeout: 276 seconds) 2018-07-20T13:36:38Z beach: jmercouris: I see. Well, most of the time, the data will be used locally, so it should be hidden as well. But there are cases when data will be shared, as when a nested function refers to a variable in its parent function. 2018-07-20T13:38:00Z sjl joined #lisp 2018-07-20T13:38:01Z jmercouris: Okay, so the goal is just to view the data right? 2018-07-20T13:38:14Z jmercouris: You could most definitely write a quick query in the data lab to do this 2018-07-20T13:38:16Z jmercouris: based on some node ide 2018-07-20T13:38:19Z jmercouris: s/ide/id 2018-07-20T13:38:38Z beach: Hmm. OK. 2018-07-20T13:38:39Z jmercouris: you could grab the ID or whatever unique attribute for the node by clicking on it, and then write a query to fetch the data from that node, and the nearby nodes in the data laboratory 2018-07-20T13:38:59Z beach: The term "data laboratory" is new to me. 2018-07-20T13:39:04Z cage_ joined #lisp 2018-07-20T13:39:09Z beach: I guess I'll try to find it in the manual. 2018-07-20T13:39:17Z jmercouris: beach: Just download the Gephi program 2018-07-20T13:39:55Z Fare joined #lisp 2018-07-20T13:40:01Z beach: I think I need to read the manual first. 2018-07-20T13:40:10Z jmercouris: As you wish :) 2018-07-20T13:40:11Z red-dot joined #lisp 2018-07-20T13:41:02Z beach: I see several tutorials and videos, but no reference manual. 2018-07-20T13:42:35Z jmercouris: here is the spec: https://gephi.org/users/gephi_srs_document.pdf 2018-07-20T13:43:06Z beach: Thanks. 2018-07-20T13:43:32Z jmercouris: you are right though, no reference manual 2018-07-20T13:43:38Z beach: :( 2018-07-20T13:43:38Z jmercouris: at least none that I can see 2018-07-20T13:44:24Z jmercouris: there are manuals apparently in the wiki: https://github.com/gephi/gephi/wiki 2018-07-20T13:45:02Z jmercouris: I take that back, clicking manual just takes you back to the tutorials page.. 2018-07-20T13:45:16Z beach: Don't worry about it. 2018-07-20T13:47:05Z karlosz quit (Ping timeout: 240 seconds) 2018-07-20T13:47:06Z graphene quit (Remote host closed the connection) 2018-07-20T13:48:26Z graphene joined #lisp 2018-07-20T13:50:34Z fikka joined #lisp 2018-07-20T13:51:37Z warweasle joined #lisp 2018-07-20T13:51:49Z FreeBirdLjj joined #lisp 2018-07-20T13:52:33Z v0|d quit (Ping timeout: 248 seconds) 2018-07-20T13:53:55Z Guest85775 joined #lisp 2018-07-20T13:55:56Z fikka quit (Ping timeout: 276 seconds) 2018-07-20T13:57:49Z igemnace joined #lisp 2018-07-20T13:57:57Z pagnol quit (Ping timeout: 264 seconds) 2018-07-20T14:00:18Z Josh_2 joined #lisp 2018-07-20T14:02:46Z milanj quit (Quit: This computer has gone to sleep) 2018-07-20T14:06:10Z v0|d joined #lisp 2018-07-20T14:06:20Z Fare quit (Ping timeout: 276 seconds) 2018-07-20T14:10:38Z rippa joined #lisp 2018-07-20T14:10:39Z Kundry_Wag joined #lisp 2018-07-20T14:11:14Z fikka joined #lisp 2018-07-20T14:11:47Z Fare joined #lisp 2018-07-20T14:14:59Z flamebeard_ joined #lisp 2018-07-20T14:14:59Z flamebeard quit (Read error: Connection reset by peer) 2018-07-20T14:16:09Z fikka quit (Ping timeout: 260 seconds) 2018-07-20T14:16:49Z Oladon joined #lisp 2018-07-20T14:21:41Z fikka joined #lisp 2018-07-20T14:25:41Z eli_oat1 quit (Quit: Leaving.) 2018-07-20T14:26:14Z fikka quit (Ping timeout: 256 seconds) 2018-07-20T14:26:42Z Guest85775 quit (Ping timeout: 265 seconds) 2018-07-20T14:30:45Z milanj joined #lisp 2018-07-20T14:31:05Z Fare quit (Ping timeout: 240 seconds) 2018-07-20T14:31:42Z fikka joined #lisp 2018-07-20T14:32:03Z Fare joined #lisp 2018-07-20T14:32:22Z v0|d: wow sb-c::*source-paths* rulz. no idea how to make the code portable though =:. 2018-07-20T14:33:12Z flamebeard_ quit 2018-07-20T14:35:41Z FreeBirdLjj quit (Ping timeout: 276 seconds) 2018-07-20T14:36:09Z pierpal quit (Quit: Poof) 2018-07-20T14:36:30Z pierpal joined #lisp 2018-07-20T14:36:44Z fikka quit (Ping timeout: 268 seconds) 2018-07-20T14:37:19Z Fare quit (Ping timeout: 244 seconds) 2018-07-20T14:37:43Z shka: v0|d: what it does? 2018-07-20T14:37:53Z beach: Must be some FFI stuff. 2018-07-20T14:40:47Z housel joined #lisp 2018-07-20T14:42:17Z igemnace quit (Quit: WeeChat 2.2) 2018-07-20T14:43:09Z v0|d: i was trying to mimic compiler notes/errors 2018-07-20T14:43:16Z v0|d: to hilight stuff in slime/swank. 2018-07-20T14:43:42Z v0|d: during compilation and it was easier than i expected. 2018-07-20T14:47:26Z scymtym_: v0|d: if this is about getting more precise source locations for errors signaled from [compiler-] macro functions, use SB-EXT:WITH-CURRENT-SOURCE-FORM instead 2018-07-20T14:47:32Z ravndal quit (Quit: WeeChat 2.2) 2018-07-20T14:48:36Z shka: v0|d: uiop? 2018-07-20T14:48:54Z v0|d: scymtym_: interesting. 2018-07-20T14:49:16Z v0|d: shka: it has style-warning but does it make source locations portable? 2018-07-20T14:50:09Z shka: v0|d: either uiop or asdf has something like that 2018-07-20T14:50:21Z v0|d: scymtym_: ah nice to debug macros, thnx. 2018-07-20T14:50:29Z shka: i can check it if you want 2018-07-20T14:51:03Z shka: (uiop:current-lisp-file-pathname) 2018-07-20T14:51:14Z shka: v0|d: try this function call 2018-07-20T14:51:21Z elfmacs quit (Ping timeout: 264 seconds) 2018-07-20T14:51:42Z scymtym_: v0|d: sure. don't forget the #+sbcl to keep the code portable 2018-07-20T14:51:49Z fikka joined #lisp 2018-07-20T14:52:37Z v0|d: scymtym_: t 2018-07-20T14:55:29Z kajo joined #lisp 2018-07-20T14:57:05Z fikka quit (Ping timeout: 268 seconds) 2018-07-20T14:59:54Z charh joined #lisp 2018-07-20T15:00:16Z charh left #lisp 2018-07-20T15:00:22Z karlosz joined #lisp 2018-07-20T15:00:57Z Fare joined #lisp 2018-07-20T15:02:45Z lumm quit (Ping timeout: 264 seconds) 2018-07-20T15:05:25Z lumm joined #lisp 2018-07-20T15:05:56Z hel-io joined #lisp 2018-07-20T15:08:59Z jmercouris quit (Remote host closed the connection) 2018-07-20T15:10:00Z eminhi joined #lisp 2018-07-20T15:18:43Z skeuomorf joined #lisp 2018-07-20T15:19:05Z skeuomorf left #lisp 2018-07-20T15:19:33Z Josh_2 quit (Quit: ERC (IRC client for Emacs 25.3.1)) 2018-07-20T15:19:40Z hel-io quit 2018-07-20T15:20:46Z Josh_2 joined #lisp 2018-07-20T15:21:14Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-20T15:22:07Z charh joined #lisp 2018-07-20T15:22:13Z red-dot joined #lisp 2018-07-20T15:23:54Z FreeBirdLjj joined #lisp 2018-07-20T15:26:46Z [X-Scale] is now known as X-Scale 2018-07-20T15:27:42Z eli_oat1 joined #lisp 2018-07-20T15:30:19Z Oladon quit (Quit: Leaving.) 2018-07-20T15:32:02Z ravndal joined #lisp 2018-07-20T15:33:51Z al-damiri joined #lisp 2018-07-20T15:37:09Z fikka joined #lisp 2018-07-20T15:37:31Z _cosmonaut_ quit (Quit: Leaving.) 2018-07-20T15:39:39Z nowhereman_ joined #lisp 2018-07-20T15:42:38Z fikka quit (Ping timeout: 276 seconds) 2018-07-20T15:43:55Z Guest85775 joined #lisp 2018-07-20T15:44:29Z Fare quit (Ping timeout: 276 seconds) 2018-07-20T15:47:03Z nanoz joined #lisp 2018-07-20T15:47:11Z shka1 joined #lisp 2018-07-20T15:47:26Z markx joined #lisp 2018-07-20T15:51:19Z Guest85775 quit (Read error: Connection reset by peer) 2018-07-20T15:51:22Z azimut quit (Ping timeout: 264 seconds) 2018-07-20T15:53:27Z mindCrime joined #lisp 2018-07-20T15:55:40Z HDurer quit (Remote host closed the connection) 2018-07-20T15:59:44Z gravicappa joined #lisp 2018-07-20T16:03:50Z zfree quit (Quit: zfree) 2018-07-20T16:04:25Z azimut joined #lisp 2018-07-20T16:05:30Z Kundry_Wag quit (Remote host closed the connection) 2018-07-20T16:05:30Z joast quit (Read error: Connection reset by peer) 2018-07-20T16:06:28Z milanj quit (Quit: This computer has gone to sleep) 2018-07-20T16:09:14Z fikka joined #lisp 2018-07-20T16:11:23Z saki quit (Quit: saki) 2018-07-20T16:11:36Z kuwze joined #lisp 2018-07-20T16:13:54Z fikka quit (Ping timeout: 256 seconds) 2018-07-20T16:14:59Z jeosol: sie 2018-07-20T16:15:03Z jeosol: morning guys 2018-07-20T16:15:28Z beach: Hello jeosol. 2018-07-20T16:17:05Z rpi joined #lisp 2018-07-20T16:17:30Z shka1: jeosol: hello 2018-07-20T16:21:44Z jeosol: hey, hello beach and shka1 2018-07-20T16:22:43Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-20T16:23:37Z jeosol: Is there some kind of design pattern resource somewhere for CL. Recently, I was having issues with some crazy piece of code because of completed logic, eventually used defmethods to clean it out and specialize on some parameter (eql :name) to clean it up 2018-07-20T16:24:08Z pjb joined #lisp 2018-07-20T16:24:23Z eli_oat1 quit (Quit: Leaving.) 2018-07-20T16:24:46Z housel: jeosol: Common Lisp Recipes: A Problem-Solution Approach by Edmund Weitz 2018-07-20T16:25:26Z jeosol: ok, thanks housel. Most of my early info where from Keene and The CLOS Perspective books. Good reads. 2018-07-20T16:25:59Z beach: jeosol: I didn't "get" CLOS protocol design until I read the CLIM II specification. 2018-07-20T16:26:18Z jeosol: Oh really, that should be a good read then. 2018-07-20T16:26:20Z beach: I had read Keene's books before and it kind of made sense, but CLIM II takes it much further. 2018-07-20T16:27:05Z jeosol: that would be useful then. I did Keene, the CLOS perspective (old book, but got a new copy) and latter compares CL with C++, smalltalk and others 2018-07-20T16:28:26Z jeosol: I guess I have to look at the CLIM II spec then. My code base can use some cleaning. It is heavy on inheritance and layering of objects. 2018-07-20T16:28:28Z beach: http://bauhh.dyndns.org:8000/clim-spec/index.html is now the best place to readit. 2018-07-20T16:28:31Z jeosol: beach: thanks for that info. 2018-07-20T16:28:36Z beach: Sure. 2018-07-20T16:28:39Z Kundry_Wag joined #lisp 2018-07-20T16:28:49Z jeosol: I was just about to ask for the link. 2018-07-20T16:31:29Z joast joined #lisp 2018-07-20T16:34:24Z red-dot joined #lisp 2018-07-20T16:35:13Z hhdave quit (Ping timeout: 248 seconds) 2018-07-20T16:36:40Z Josh_2: https://i.imgur.com/OBB17Ba.png anyone got 11k for a hardcover copy? 2018-07-20T16:38:05Z beach: Wow. 2018-07-20T16:38:19Z Bike: must be salesbots again. 2018-07-20T16:38:43Z Bike: you know, like http://www.michaeleisen.org/blog/?p=358 2018-07-20T16:40:11Z jeosol: beach: thanks again for the link. It's a large application and so I'll learn a few things 2018-07-20T16:40:46Z beach: Sure. Good luck. 2018-07-20T16:40:48Z jeosol: one question, this does not link all the codes. I did quick check and a see a few code snippets. Not like I want to go over everything, 2018-07-20T16:41:13Z beach: For the code, look at the McCLIM repository. 2018-07-20T16:41:42Z jeosol: but just to see better ways of doing things. When I finally understand macros, I was able to get application to get my code to generate many convenience functions. 2018-07-20T16:41:51Z jeosol: ok, thanks. I will do that. 2018-07-20T16:41:54Z beach: https://github.com/McCLIM/McCLIM 2018-07-20T16:42:22Z beach: But I recommend the specification just to understand how they organized the protocols. 2018-07-20T16:42:42Z beach: The possible implementations of those protocols are more involved. 2018-07-20T16:42:55Z jeosol: I agree, I will read the spec first. 2018-07-20T16:43:05Z beach: So there is a lot of "noise" in the implementation that distracts from the protocol design. 2018-07-20T16:43:18Z jeosol: I am more interested in organization and design. 2018-07-20T16:44:30Z jeosol: The stream CLOS design example in Keene's book helped when I started. 2018-07-20T16:45:02Z jeosol: if the protocols are designed well, I think the rest falls into to place, you just add the implementation details. 2018-07-20T16:49:43Z beach: Pretty much, yes. 2018-07-20T16:50:13Z beach: I wrote this to firm it up a bit: http://metamodular.com/protocol.pdf 2018-07-20T16:50:27Z beach: Not a tutorial, but mostly a definition. 2018-07-20T16:51:26Z mathrick joined #lisp 2018-07-20T16:51:30Z beach: Dinner. I'll check in briefly later. 2018-07-20T16:52:50Z mathrick_ quit (Ping timeout: 276 seconds) 2018-07-20T16:55:57Z varjag quit (Ping timeout: 240 seconds) 2018-07-20T17:00:00Z k4rtik joined #lisp 2018-07-20T17:00:00Z k4rtik quit (Changing host) 2018-07-20T17:00:00Z k4rtik joined #lisp 2018-07-20T17:03:39Z robotoad quit (Read error: Connection reset by peer) 2018-07-20T17:04:14Z robotoad joined #lisp 2018-07-20T17:09:35Z lumm quit (Ping timeout: 265 seconds) 2018-07-20T17:10:39Z varjag joined #lisp 2018-07-20T17:10:48Z graphene quit (Read error: Connection reset by peer) 2018-07-20T17:12:07Z graphene joined #lisp 2018-07-20T17:13:10Z igemnace joined #lisp 2018-07-20T17:13:35Z les quit (Ping timeout: 245 seconds) 2018-07-20T17:13:55Z les joined #lisp 2018-07-20T17:15:03Z milanj joined #lisp 2018-07-20T17:15:14Z varjag quit (Ping timeout: 260 seconds) 2018-07-20T17:15:17Z milanj quit (Remote host closed the connection) 2018-07-20T17:17:11Z sauvin quit (Read error: Connection reset by peer) 2018-07-20T17:22:25Z ebrasca joined #lisp 2018-07-20T17:24:59Z v0|d quit (Read error: Connection reset by peer) 2018-07-20T17:25:48Z rpg joined #lisp 2018-07-20T17:26:02Z jeosol: beach: thanks for the protocol gem. 2018-07-20T17:26:52Z ebrasca quit (Remote host closed the connection) 2018-07-20T17:27:42Z k4rtik quit (Ping timeout: 245 seconds) 2018-07-20T17:28:35Z raynold joined #lisp 2018-07-20T17:30:20Z beach: Sure. 2018-07-20T17:33:16Z raynold quit 2018-07-20T17:34:09Z Josh_2 quit (Quit: ERC (IRC client for Emacs 25.3.1)) 2018-07-20T17:34:55Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-20T17:35:25Z graphene quit (Remote host closed the connection) 2018-07-20T17:36:31Z Josh_2 joined #lisp 2018-07-20T17:36:33Z red-dot joined #lisp 2018-07-20T17:36:41Z graphene joined #lisp 2018-07-20T17:39:59Z jeosol: are these listed somewhere, e.g., on your site. 2018-07-20T17:41:28Z rumbler31 joined #lisp 2018-07-20T17:41:51Z kuwze: jeosol: https://www.google.com/search?&q=inurl%3Ametamodular.com+filetype%3Apdf 2018-07-20T17:42:04Z rumbler3_ quit (Ping timeout: 260 seconds) 2018-07-20T17:42:14Z rotty quit (Ping timeout: 276 seconds) 2018-07-20T17:42:42Z Fare joined #lisp 2018-07-20T17:46:32Z jeosol: kuwze: thanks 2018-07-20T17:46:41Z kuwze: jeosol: np 2018-07-20T17:46:47Z schweers quit (Ping timeout: 276 seconds) 2018-07-20T17:50:05Z k4rtik joined #lisp 2018-07-20T17:55:31Z rotty joined #lisp 2018-07-20T17:56:10Z Folkol quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2018-07-20T17:57:18Z fikka joined #lisp 2018-07-20T17:58:02Z rozenglass joined #lisp 2018-07-20T18:00:07Z rumbler31 quit (Ping timeout: 256 seconds) 2018-07-20T18:00:11Z kuwze quit (Quit: Page closed) 2018-07-20T18:01:05Z rumbler31 joined #lisp 2018-07-20T18:01:55Z fikka quit (Ping timeout: 244 seconds) 2018-07-20T18:02:17Z brendyn quit (Ping timeout: 245 seconds) 2018-07-20T18:07:09Z charh quit (Remote host closed the connection) 2018-07-20T18:18:58Z rumbler31 quit (Ping timeout: 264 seconds) 2018-07-20T18:19:53Z rumbler31 joined #lisp 2018-07-20T18:37:03Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-20T18:38:41Z rumbler31 quit (Ping timeout: 276 seconds) 2018-07-20T18:38:44Z red-dot joined #lisp 2018-07-20T18:38:58Z rumbler31 joined #lisp 2018-07-20T18:40:02Z charh joined #lisp 2018-07-20T18:40:38Z charh quit (Changing host) 2018-07-20T18:40:38Z charh joined #lisp 2018-07-20T18:41:57Z milanj joined #lisp 2018-07-20T18:42:44Z quazimodo quit (Ping timeout: 260 seconds) 2018-07-20T18:42:57Z quazimodo joined #lisp 2018-07-20T18:44:17Z eminhi quit (Ping timeout: 248 seconds) 2018-07-20T18:48:05Z fikka joined #lisp 2018-07-20T18:50:09Z rumbler31 quit (Ping timeout: 248 seconds) 2018-07-20T18:51:57Z rumbler31 joined #lisp 2018-07-20T18:52:49Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-20T18:53:09Z gravicappa quit (Ping timeout: 264 seconds) 2018-07-20T19:01:45Z shka1 quit (Remote host closed the connection) 2018-07-20T19:02:43Z shka1 joined #lisp 2018-07-20T19:06:24Z ebrasca joined #lisp 2018-07-20T19:07:17Z random-nick quit (Ping timeout: 276 seconds) 2018-07-20T19:08:27Z rumbler31 quit (Ping timeout: 240 seconds) 2018-07-20T19:09:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-20T19:10:20Z rumbler31 joined #lisp 2018-07-20T19:12:15Z jasom: beach: IIRC Franz has a graph visualization tool, but I do'nt know if it works without allegrograph (which has a free edition, but not sure what the limitations are) 2018-07-20T19:12:23Z k4rtik quit (Ping timeout: 268 seconds) 2018-07-20T19:13:17Z graphene quit (Remote host closed the connection) 2018-07-20T19:13:33Z newbie47 joined #lisp 2018-07-20T19:14:34Z graphene joined #lisp 2018-07-20T19:15:44Z knusbaum joined #lisp 2018-07-20T19:15:57Z warweasle quit (Quit: rcirc on GNU Emacs 24.4.1) 2018-07-20T19:23:33Z rumbler31 quit (Ping timeout: 244 seconds) 2018-07-20T19:25:22Z rumbler31 joined #lisp 2018-07-20T19:27:28Z vlatkoB quit (Remote host closed the connection) 2018-07-20T19:36:02Z kqr quit (Quit: WeeChat 2.1) 2018-07-20T19:36:25Z kqr joined #lisp 2018-07-20T19:36:35Z kqr quit (Client Quit) 2018-07-20T19:37:08Z kqr joined #lisp 2018-07-20T19:38:12Z fikka joined #lisp 2018-07-20T19:39:17Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-20T19:39:49Z graphene quit (Remote host closed the connection) 2018-07-20T19:39:58Z rumbler31 quit (Ping timeout: 260 seconds) 2018-07-20T19:40:44Z Fare quit (Ping timeout: 256 seconds) 2018-07-20T19:40:59Z red-dot joined #lisp 2018-07-20T19:41:04Z graphene joined #lisp 2018-07-20T19:41:09Z bjdaro joined #lisp 2018-07-20T19:42:08Z rumbler31 joined #lisp 2018-07-20T19:43:04Z Fare joined #lisp 2018-07-20T19:43:13Z fikka quit (Ping timeout: 268 seconds) 2018-07-20T19:43:36Z bjdaro quit (Client Quit) 2018-07-20T19:43:57Z shka1 quit (Ping timeout: 240 seconds) 2018-07-20T19:54:44Z rumbler31 quit (Ping timeout: 276 seconds) 2018-07-20T19:55:51Z Kundry_Wag quit (Remote host closed the connection) 2018-07-20T19:57:24Z graphene quit (Read error: Connection reset by peer) 2018-07-20T19:58:01Z Kundry_Wag joined #lisp 2018-07-20T19:58:04Z Kundry_Wag quit (Remote host closed the connection) 2018-07-20T19:58:19Z Kundry_Wag joined #lisp 2018-07-20T19:58:29Z lumm joined #lisp 2018-07-20T19:58:32Z random-nick joined #lisp 2018-07-20T19:58:43Z eli_oat1 joined #lisp 2018-07-20T19:58:43Z graphene joined #lisp 2018-07-20T20:00:46Z kerrhau joined #lisp 2018-07-20T20:00:46Z kerrhau quit (Changing host) 2018-07-20T20:00:46Z kerrhau joined #lisp 2018-07-20T20:04:29Z nanoz quit (Ping timeout: 276 seconds) 2018-07-20T20:04:43Z rumbler31 joined #lisp 2018-07-20T20:10:20Z rumbler31 quit (Ping timeout: 276 seconds) 2018-07-20T20:11:20Z nowhereman_ quit (Ping timeout: 256 seconds) 2018-07-20T20:13:15Z scymtym_ quit (Ping timeout: 265 seconds) 2018-07-20T20:13:57Z josemanuel joined #lisp 2018-07-20T20:13:58Z ebrasca quit (Read error: Connection reset by peer) 2018-07-20T20:14:21Z ebrasca joined #lisp 2018-07-20T20:14:55Z nowhereman_ joined #lisp 2018-07-20T20:15:13Z rumbler31 joined #lisp 2018-07-20T20:15:38Z newbie47 quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2018-07-20T20:15:58Z newbie54 joined #lisp 2018-07-20T20:15:58Z newbie35 joined #lisp 2018-07-20T20:16:09Z fikka joined #lisp 2018-07-20T20:17:27Z Fare quit (Ping timeout: 240 seconds) 2018-07-20T20:19:30Z Kundry_Wag quit (Remote host closed the connection) 2018-07-20T20:19:50Z Fare joined #lisp 2018-07-20T20:20:44Z rumbler31 quit (Ping timeout: 276 seconds) 2018-07-20T20:21:27Z fikka quit (Ping timeout: 268 seconds) 2018-07-20T20:22:29Z terpri quit (Ping timeout: 260 seconds) 2018-07-20T20:24:02Z slyrus1 joined #lisp 2018-07-20T20:25:42Z Kundry_Wag joined #lisp 2018-07-20T20:26:03Z rumbler31 joined #lisp 2018-07-20T20:27:31Z eli_oat1 quit (Quit: Leaving.) 2018-07-20T20:27:51Z pierpa joined #lisp 2018-07-20T20:29:42Z pierpal quit (Quit: Poof) 2018-07-20T20:30:00Z pierpal joined #lisp 2018-07-20T20:30:02Z eli_oat quit (Quit: eli_oat) 2018-07-20T20:30:29Z mindCrime quit (Ping timeout: 276 seconds) 2018-07-20T20:31:08Z rumbler31 quit (Ping timeout: 276 seconds) 2018-07-20T20:31:53Z kajo quit (Ping timeout: 276 seconds) 2018-07-20T20:34:37Z scymtym joined #lisp 2018-07-20T20:34:52Z eli_oat joined #lisp 2018-07-20T20:36:42Z aindilis quit (Remote host closed the connection) 2018-07-20T20:38:06Z Fare quit (Ping timeout: 268 seconds) 2018-07-20T20:38:42Z aindilis joined #lisp 2018-07-20T20:41:26Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-20T20:44:06Z fikka joined #lisp 2018-07-20T20:53:23Z rumbler31 joined #lisp 2018-07-20T20:54:21Z red-dot joined #lisp 2018-07-20T20:58:22Z BitPuffin quit (Remote host closed the connection) 2018-07-20T20:58:26Z rumbler31 quit (Ping timeout: 276 seconds) 2018-07-20T21:00:47Z kajo joined #lisp 2018-07-20T21:02:02Z k4rtik joined #lisp 2018-07-20T21:02:48Z Bike quit (Ping timeout: 252 seconds) 2018-07-20T21:04:46Z Pixel_Outlaw joined #lisp 2018-07-20T21:06:01Z jfb4 joined #lisp 2018-07-20T21:06:14Z Folkol joined #lisp 2018-07-20T21:11:28Z graphene quit (Remote host closed the connection) 2018-07-20T21:12:47Z graphene joined #lisp 2018-07-20T21:15:53Z no-defun-allowed quit (Ping timeout: 240 seconds) 2018-07-20T21:15:56Z manila[m] quit (Ping timeout: 240 seconds) 2018-07-20T21:16:07Z magicGNUPONUT[m] quit (Ping timeout: 245 seconds) 2018-07-20T21:16:07Z SAL9000[m] quit (Ping timeout: 245 seconds) 2018-07-20T21:16:21Z z3r0d5y[m] quit (Ping timeout: 255 seconds) 2018-07-20T21:16:22Z Jach[m] quit (Ping timeout: 255 seconds) 2018-07-20T21:16:35Z ritsch_master[m] quit (Ping timeout: 260 seconds) 2018-07-20T21:16:35Z clhsgang[m] quit (Ping timeout: 260 seconds) 2018-07-20T21:16:38Z Thorondor[m] quit (Ping timeout: 260 seconds) 2018-07-20T21:16:38Z drunk_foxx[m] quit (Ping timeout: 260 seconds) 2018-07-20T21:16:41Z ArthurAGleckler[ quit (Ping timeout: 240 seconds) 2018-07-20T21:16:41Z wetha[m] quit (Ping timeout: 240 seconds) 2018-07-20T21:16:51Z kammd[m] quit (Ping timeout: 240 seconds) 2018-07-20T21:16:51Z plll[m] quit (Ping timeout: 240 seconds) 2018-07-20T21:16:53Z HDurer[m] quit (Ping timeout: 245 seconds) 2018-07-20T21:16:58Z can3p[m] quit (Ping timeout: 256 seconds) 2018-07-20T21:16:58Z kumori[m] quit (Ping timeout: 256 seconds) 2018-07-20T21:16:58Z katco[m] quit (Ping timeout: 256 seconds) 2018-07-20T21:17:02Z remix2000[m] quit (Ping timeout: 260 seconds) 2018-07-20T21:17:06Z lyosha[m] quit (Ping timeout: 256 seconds) 2018-07-20T21:17:06Z dirb[m] quit (Ping timeout: 256 seconds) 2018-07-20T21:17:06Z eatonphil[m] quit (Ping timeout: 256 seconds) 2018-07-20T21:17:12Z Cal[m] quit (Ping timeout: 260 seconds) 2018-07-20T21:17:23Z spectrumgomas[m] quit (Ping timeout: 276 seconds) 2018-07-20T21:17:23Z eli_oat[m] quit (Ping timeout: 276 seconds) 2018-07-20T21:17:23Z LdBeth[m] quit (Ping timeout: 276 seconds) 2018-07-20T21:17:23Z equalunique[m] quit (Ping timeout: 276 seconds) 2018-07-20T21:17:23Z EuAndreh[m] quit (Ping timeout: 276 seconds) 2018-07-20T21:19:39Z dcluna quit (Ping timeout: 260 seconds) 2018-07-20T21:20:42Z sellout- quit (Ping timeout: 260 seconds) 2018-07-20T21:22:09Z dcluna joined #lisp 2018-07-20T21:25:50Z sellout- joined #lisp 2018-07-20T21:26:29Z JuanDaugherty joined #lisp 2018-07-20T21:27:23Z svillemot quit (Remote host closed the connection) 2018-07-20T21:27:31Z svillemot joined #lisp 2018-07-20T21:28:49Z mindCrime joined #lisp 2018-07-20T21:33:56Z Bike joined #lisp 2018-07-20T21:40:11Z zaquest quit (Ping timeout: 255 seconds) 2018-07-20T21:40:27Z cage_ quit (Quit: Leaving) 2018-07-20T21:43:26Z LiamH quit (Quit: Leaving.) 2018-07-20T21:43:42Z lumm quit (Remote host closed the connection) 2018-07-20T21:44:14Z lumm joined #lisp 2018-07-20T21:45:26Z nicht joined #lisp 2018-07-20T21:46:17Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-20T21:47:05Z angavrilov quit (Remote host closed the connection) 2018-07-20T21:48:14Z k4rtik quit (Ping timeout: 256 seconds) 2018-07-20T21:49:53Z sjl quit (Ping timeout: 276 seconds) 2018-07-20T21:50:05Z JuanDaugherty quit (Quit: Exeunt) 2018-07-20T21:51:44Z svillemot quit (Remote host closed the connection) 2018-07-20T21:51:52Z zaquest joined #lisp 2018-07-20T21:53:03Z svillemot joined #lisp 2018-07-20T21:54:52Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-20T21:55:12Z DonVlad quit (Remote host closed the connection) 2018-07-20T21:58:45Z red-dot joined #lisp 2018-07-20T21:59:23Z markx quit (Quit: Page closed) 2018-07-20T22:00:44Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2018-07-20T22:01:08Z pierpal quit (Ping timeout: 244 seconds) 2018-07-20T22:07:32Z LdBeth[m] joined #lisp 2018-07-20T22:09:59Z pierpal joined #lisp 2018-07-20T22:12:15Z pierpal quit (Read error: Connection reset by peer) 2018-07-20T22:13:43Z random-nick quit (Read error: Connection reset by peer) 2018-07-20T22:14:44Z pierpal joined #lisp 2018-07-20T22:16:23Z pierpal quit (Read error: Connection reset by peer) 2018-07-20T22:16:35Z gurmble joined #lisp 2018-07-20T22:16:39Z pierpal joined #lisp 2018-07-20T22:18:47Z pierpal quit (Read error: Connection reset by peer) 2018-07-20T22:19:05Z pierpal joined #lisp 2018-07-20T22:20:24Z pierpal quit (Read error: Connection reset by peer) 2018-07-20T22:20:37Z pierpal joined #lisp 2018-07-20T22:21:48Z knusbaum quit (Ping timeout: 256 seconds) 2018-07-20T22:24:23Z grumble quit (Ping timeout: 610 seconds) 2018-07-20T22:25:22Z gurmble is now known as grumble 2018-07-20T22:29:44Z terpri joined #lisp 2018-07-20T22:34:34Z kerrhau quit (Read error: Connection reset by peer) 2018-07-20T22:37:17Z spectrumgomas[m] joined #lisp 2018-07-20T22:37:17Z remix2000[m] joined #lisp 2018-07-20T22:37:17Z magicGNUPONUT[m] joined #lisp 2018-07-20T22:37:18Z SAL9000[m] joined #lisp 2018-07-20T22:37:18Z drunk_foxx[m] joined #lisp 2018-07-20T22:37:18Z katco[m] joined #lisp 2018-07-20T22:37:18Z dirb[m] joined #lisp 2018-07-20T22:37:18Z kammd[m] joined #lisp 2018-07-20T22:37:18Z wetha[m] joined #lisp 2018-07-20T22:37:18Z eatonphil[m] joined #lisp 2018-07-20T22:37:18Z no-defun-allowed joined #lisp 2018-07-20T22:37:18Z eli_oat[m] joined #lisp 2018-07-20T22:37:18Z Thorondor[m] joined #lisp 2018-07-20T22:37:19Z equalunique[m] joined #lisp 2018-07-20T22:37:19Z plll[m] joined #lisp 2018-07-20T22:37:19Z Cal[m] joined #lisp 2018-07-20T22:37:19Z manila[m] joined #lisp 2018-07-20T22:37:19Z Jach[m] joined #lisp 2018-07-20T22:37:19Z EuAndreh[m] joined #lisp 2018-07-20T22:37:19Z clhsgang[m] joined #lisp 2018-07-20T22:37:19Z ritsch_master[m] joined #lisp 2018-07-20T22:37:19Z HDurer[m] joined #lisp 2018-07-20T22:37:19Z kumori[m] joined #lisp 2018-07-20T22:37:24Z lyosha[m] joined #lisp 2018-07-20T22:37:26Z can3p[m] joined #lisp 2018-07-20T22:37:26Z ArthurAGleckler[ joined #lisp 2018-07-20T22:37:26Z z3r0d5y[m] joined #lisp 2018-07-20T22:45:11Z pierpal quit (Read error: Connection reset by peer) 2018-07-20T22:45:25Z pierpal joined #lisp 2018-07-20T22:50:07Z Patternm1ster quit (Quit: leaving) 2018-07-20T22:50:20Z pierpal quit (Ping timeout: 276 seconds) 2018-07-20T22:51:31Z al-damiri quit (Quit: Connection closed for inactivity) 2018-07-20T22:51:38Z robotoad quit (Quit: robotoad) 2018-07-20T22:55:38Z Inline quit (Read error: Connection reset by peer) 2018-07-20T22:56:15Z Inline joined #lisp 2018-07-20T22:57:23Z fikka quit (Ping timeout: 276 seconds) 2018-07-20T22:57:39Z sellout- quit (Ping timeout: 260 seconds) 2018-07-20T22:59:16Z red-dot quit (Quit: Going offline, see ya! (www.adiirc.com)) 2018-07-20T23:00:13Z red-dot joined #lisp 2018-07-20T23:02:27Z Fare joined #lisp 2018-07-20T23:03:05Z makomo quit (Ping timeout: 240 seconds) 2018-07-20T23:04:13Z sellout- joined #lisp 2018-07-20T23:08:49Z pierpal joined #lisp 2018-07-20T23:10:12Z mindCrime quit (Ping timeout: 245 seconds) 2018-07-20T23:10:40Z pierpal quit (Read error: Connection reset by peer) 2018-07-20T23:10:54Z pierpal joined #lisp 2018-07-20T23:13:43Z pierpal quit (Read error: Connection reset by peer) 2018-07-20T23:13:58Z pierpal joined #lisp 2018-07-20T23:15:20Z robotoad joined #lisp 2018-07-20T23:17:06Z pierpal quit (Read error: Connection reset by peer) 2018-07-20T23:22:19Z fikka joined #lisp 2018-07-20T23:31:30Z lumm quit (Quit: lumm) 2018-07-20T23:32:48Z nowhere_man joined #lisp 2018-07-20T23:33:14Z nowhereman_ quit (Ping timeout: 268 seconds) 2018-07-20T23:33:47Z josemanuel quit (Quit: leaving) 2018-07-20T23:34:33Z pierpal joined #lisp 2018-07-20T23:36:03Z rpg joined #lisp 2018-07-20T23:36:22Z fikka quit (Ping timeout: 264 seconds) 2018-07-20T23:40:48Z Kundry_Wag quit (Remote host closed the connection) 2018-07-20T23:42:52Z gurmble joined #lisp 2018-07-20T23:43:47Z rpg quit (Quit: Textual IRC Client: www.textualapp.com) 2018-07-20T23:44:45Z grumble quit (Disconnected by services) 2018-07-20T23:44:47Z gurmble is now known as grumble 2018-07-20T23:45:19Z asarch joined #lisp 2018-07-20T23:45:27Z sjl joined #lisp 2018-07-20T23:46:50Z equwal joined #lisp 2018-07-20T23:49:57Z asarch quit (Ping timeout: 240 seconds) 2018-07-21T00:06:07Z sjl quit (Quit: WeeChat 2.2-dev) 2018-07-21T00:06:11Z jfrancis_ joined #lisp 2018-07-21T00:06:53Z jfranc___ joined #lisp 2018-07-21T00:06:56Z Josh_2 quit (Ping timeout: 276 seconds) 2018-07-21T00:09:35Z jfranci__ quit (Ping timeout: 256 seconds) 2018-07-21T00:10:18Z jfrancis_ quit (Ping timeout: 244 seconds) 2018-07-21T00:21:29Z Kundry_Wag joined #lisp 2018-07-21T00:26:09Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-21T00:26:21Z jonh joined #lisp 2018-07-21T00:30:27Z pioneer42 joined #lisp 2018-07-21T00:31:51Z X-Scale quit (Ping timeout: 240 seconds) 2018-07-21T00:33:36Z DemolitionMan quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2018-07-21T00:33:54Z Fare quit (Ping timeout: 260 seconds) 2018-07-21T00:34:58Z pjb quit (Ping timeout: 256 seconds) 2018-07-21T00:44:24Z cgay_ quit (Quit: leaving) 2018-07-21T00:45:18Z cgay_ joined #lisp 2018-07-21T00:45:19Z pjb joined #lisp 2018-07-21T00:47:37Z sjl joined #lisp 2018-07-21T00:49:39Z vap1 quit (Ping timeout: 260 seconds) 2018-07-21T00:52:26Z pierpal quit (Ping timeout: 276 seconds) 2018-07-21T00:52:47Z fikka joined #lisp 2018-07-21T00:57:19Z fikka quit (Ping timeout: 244 seconds) 2018-07-21T00:58:30Z cgay_ quit (Quit: leaving) 2018-07-21T00:58:51Z cgay_ joined #lisp 2018-07-21T00:58:57Z cgay_ quit (Client Quit) 2018-07-21T00:59:24Z cgay_ joined #lisp 2018-07-21T01:00:22Z Fare joined #lisp 2018-07-21T01:00:25Z cgay_ left #lisp 2018-07-21T01:05:33Z jasmith joined #lisp 2018-07-21T01:07:44Z Fare quit (Ping timeout: 260 seconds) 2018-07-21T01:07:44Z rumbler31 joined #lisp 2018-07-21T01:08:48Z azimut quit (Quit: ZNC 1.6.5 - http://znc.in) 2018-07-21T01:10:04Z azimut joined #lisp 2018-07-21T01:12:57Z rumbler31 quit (Ping timeout: 264 seconds) 2018-07-21T01:14:26Z Patternmaster joined #lisp 2018-07-21T01:18:49Z markoong quit (Ping timeout: 260 seconds) 2018-07-21T01:19:56Z X-Scale joined #lisp 2018-07-21T01:20:28Z pierpal joined #lisp 2018-07-21T01:21:02Z Kundry_Wag joined #lisp 2018-07-21T01:21:11Z JuanDaugherty joined #lisp 2018-07-21T01:21:11Z nicht quit (Ping timeout: 256 seconds) 2018-07-21T01:26:05Z Kundry_Wag quit (Ping timeout: 268 seconds) 2018-07-21T01:26:15Z igemnace quit (Ping timeout: 244 seconds) 2018-07-21T01:28:01Z equwal quit (Remote host closed the connection) 2018-07-21T01:28:20Z equwal joined #lisp 2018-07-21T01:29:10Z nicht joined #lisp 2018-07-21T01:29:11Z nicht quit (Max SendQ exceeded) 2018-07-21T01:29:35Z skidd0 joined #lisp 2018-07-21T01:31:43Z skidd0: Has anyone here used Postmodern to create postgres databases and users? I would like to take care of that with code so my end-user doesn't have to. 2018-07-21T01:32:27Z equwal quit (Ping timeout: 244 seconds) 2018-07-21T01:32:52Z pierpal quit (Read error: Connection reset by peer) 2018-07-21T01:33:14Z equwal joined #lisp 2018-07-21T01:33:18Z skidd0: actually, does anyone know of a way to include postgres with a dumped core using SBCL? 2018-07-21T01:33:37Z skidd0: or is that something i'm going to have to instruct end-users to install and setup 2018-07-21T01:34:54Z jeosol: I am not sure you can pack postgres into SBCL core 2018-07-21T01:35:05Z skidd0: that's my thought, too 2018-07-21T01:35:24Z jeosol: but the core can contain all the postgres, postmodern or whatever ORM you are using to interact with the DB etc 2018-07-21T01:36:02Z skidd0: then using that core depends on having postgres on whatever machine 2018-07-21T01:36:14Z jeosol: that is, everything on the postgres interaction (functions) can be in the core 2018-07-21T01:36:18Z jeosol: yes, that is true. 2018-07-21T01:36:25Z skidd0: because the core communicates with postgres over some protocol 2018-07-21T01:36:29Z JuanDaugherty: there's surely multiple cl pg pkgs 2018-07-21T01:36:40Z skidd0: that the installed postgrescommunicates with 2018-07-21T01:38:31Z JuanDaugherty: ok sorry, responding inappropriately across generations (again); my bad 2018-07-21T01:38:45Z JuanDaugherty quit (Quit: Exeunt) 2018-07-21T01:39:04Z skidd0: ? 2018-07-21T01:39:26Z jeosol: skidd0: is the app a desktop type that requires postgres? 2018-07-21T01:39:37Z skidd0: yes 2018-07-21T01:39:44Z jeosol: I suspected. 2018-07-21T01:39:59Z skidd0: because the app can't itself contain all of postgres 2018-07-21T01:40:04Z jeosol: linux and windows? 2018-07-21T01:40:22Z skidd0: does postgres support windows? 2018-07-21T01:40:23Z jeosol: I think postgres will be big to add in your app. 2018-07-21T01:41:39Z skidd0: i'm now wondering if theres an easy way to test whether postgres is installed or not 2018-07-21T01:41:55Z skidd0: and exit with a warning informing of the dependancy 2018-07-21T01:43:24Z equwal quit (Remote host closed the connection) 2018-07-21T01:44:11Z skidd0: okay so back to the original question. Has anyone (using postmodern or not) been able to use lisp to create a postgres user and database? 2018-07-21T01:44:27Z skidd0: and not need to manually set it up 2018-07-21T01:46:13Z jeosol: I am sure there is a way. most guys aren't here now. I have used mostly clsql to do that, but I remember the info for doing that with postmodern wasn't very clear 2018-07-21T01:46:23Z jeosol: I have mostly followed info sabra's website 2018-07-21T01:46:33Z pierpal joined #lisp 2018-07-21T01:46:42Z skidd0: is that sabrac ? 2018-07-21T01:49:04Z Fare joined #lisp 2018-07-21T01:50:30Z pierpal quit (Read error: Connection reset by peer) 2018-07-21T01:53:05Z equwal joined #lisp 2018-07-21T01:56:45Z karlosz quit (Quit: karlosz) 2018-07-21T01:57:21Z jeosol: I am not sabra. I am just saying he has a lot of info on postmodern on his site, and he is probably also maintain the repo now. I am subscribed to the repo feed. 2018-07-21T02:03:57Z Fare quit (Ping timeout: 240 seconds) 2018-07-21T02:08:58Z rumbler31 joined #lisp 2018-07-21T02:09:47Z Fare joined #lisp 2018-07-21T02:12:44Z robotoad quit (Quit: robotoad) 2018-07-21T02:13:39Z rumbler31 quit (Ping timeout: 260 seconds) 2018-07-21T02:15:56Z Kundry_Wag joined #lisp 2018-07-21T02:20:50Z Kundry_Wag quit (Ping timeout: 276 seconds) 2018-07-21T02:21:54Z robotoad joined #lisp 2018-07-21T02:25:57Z Kundry_Wag joined #lisp 2018-07-21T02:25:58Z karlosz joined #lisp 2018-07-21T02:29:01Z erratic joined #lisp 2018-07-21T02:29:45Z eschatologist quit (Quit: ZNC 1.6.6+deb1 - http://znc.in) 2018-07-21T02:30:27Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-21T02:30:28Z eschatologist joined #lisp 2018-07-21T02:33:26Z pierpa quit (Quit: Page closed) 2018-07-21T02:38:01Z nullniverse joined #lisp 2018-07-21T02:41:13Z fikka joined #lisp 2018-07-21T02:42:09Z eli_oat1 joined #lisp 2018-07-21T02:43:09Z karlosz quit (Quit: karlosz) 2018-07-21T02:43:13Z pierpal joined #lisp 2018-07-21T02:43:41Z karlosz joined #lisp 2018-07-21T02:45:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-21T02:48:54Z FreeBirdLjj joined #lisp 2018-07-21T02:50:42Z Kundry_Wag joined #lisp 2018-07-21T02:50:45Z orivej quit (Ping timeout: 264 seconds) 2018-07-21T02:53:03Z FreeBirdLjj quit (Ping timeout: 244 seconds) 2018-07-21T02:55:05Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-21T02:58:32Z karlosz quit (Ping timeout: 276 seconds) 2018-07-21T02:59:15Z saki joined #lisp 2018-07-21T03:12:08Z brendyn joined #lisp 2018-07-21T03:15:57Z saki quit (Ping timeout: 240 seconds) 2018-07-21T03:20:01Z equwal quit (Remote host closed the connection) 2018-07-21T03:20:20Z equwal joined #lisp 2018-07-21T03:21:01Z equwal quit (Remote host closed the connection) 2018-07-21T03:21:20Z equwal joined #lisp 2018-07-21T03:24:20Z wigust joined #lisp 2018-07-21T03:24:29Z eli_oat1 quit (Quit: Leaving.) 2018-07-21T03:27:09Z wigust- quit (Ping timeout: 244 seconds) 2018-07-21T03:28:58Z SaganMan quit (Quit: WeeChat 1.6) 2018-07-21T03:29:29Z MoziM quit (Ping timeout: 260 seconds) 2018-07-21T03:29:35Z SaganMan joined #lisp 2018-07-21T03:33:47Z saki joined #lisp 2018-07-21T03:35:27Z MoziM joined #lisp 2018-07-21T03:35:47Z fikka joined #lisp 2018-07-21T03:40:34Z fikka quit (Ping timeout: 260 seconds) 2018-07-21T03:41:28Z Pixel_Outlaw quit (Quit: Leaving) 2018-07-21T03:45:27Z ikki quit (Ping timeout: 240 seconds) 2018-07-21T03:53:01Z sauvin joined #lisp 2018-07-21T03:59:57Z saki quit (Ping timeout: 240 seconds) 2018-07-21T04:02:59Z caltelt joined #lisp 2018-07-21T04:06:51Z Cthulhux quit (Ping timeout: 240 seconds) 2018-07-21T04:07:08Z Inline quit (Read error: Connection reset by peer) 2018-07-21T04:09:53Z red-dot quit (Remote host closed the connection) 2018-07-21T04:09:54Z Inline joined #lisp 2018-07-21T04:14:10Z charh quit (Ping timeout: 244 seconds) 2018-07-21T04:17:05Z Cthulhux joined #lisp 2018-07-21T04:18:08Z quazimodo quit (Ping timeout: 268 seconds) 2018-07-21T04:20:45Z graphene quit (Remote host closed the connection) 2018-07-21T04:20:52Z JuanDaugherty joined #lisp 2018-07-21T04:22:23Z graphene joined #lisp 2018-07-21T04:25:16Z SaganMan quit (Quit: WeeChat 1.6) 2018-07-21T04:26:24Z dddddd quit (Remote host closed the connection) 2018-07-21T04:33:20Z sabrac: skiddo: Hi 2018-07-21T04:33:23Z quazimodo joined #lisp 2018-07-21T04:33:58Z JuanDaugherty quit (Quit: Exeunt) 2018-07-21T04:34:12Z kori left #lisp 2018-07-21T04:34:50Z eschatologist quit (Ping timeout: 276 seconds) 2018-07-21T04:35:00Z eschatologist joined #lisp 2018-07-21T04:36:56Z PuercoPop: sabrac: Hi, I was wondering if you still intend to publish a Roadmap for postmodern 2018-07-21T04:37:34Z sabrac: PuercoPop: Yes, working on it now 2018-07-21T04:37:54Z PuercoPop: sabrac: awesome! 2018-07-21T04:37:59Z rpi quit (Remote host closed the connection) 2018-07-21T04:38:22Z sabrac: Is there anything you would like to see in the roadmap? 2018-07-21T04:40:16Z sabrac: I have to say that skiddo's request for a postgresql installer in lisp probably will not be on the roadmap 2018-07-21T04:42:52Z sabrac: skiddo: Is your app for windows, OSX, linux or what? 2018-07-21T04:43:44Z PuercoPop: sabrac: Not particularly. One thing that I've been trying to tackle is #70 but the DAO code seems mostly needlessly complex, but then again synthesizing new methods with the MOP is not something straightforward in my experience. One thing that would be good, in theory, would be a way to extend the client authentication mechanisms but that is not something that I need. Mostly want to see how could I chip in. 2018-07-21T04:47:55Z sabrac: PuercoPop: One thing that nyef was complaining about some years ago was transaction failures on connections and reconnections. Ever dealt with reconnections in usocket? 2018-07-21T04:49:42Z scottj joined #lisp 2018-07-21T04:49:58Z PuercoPop: can't say I have 2018-07-21T04:51:46Z sabrac: I looked at #70, but there was no immediately obvious solution so set it aside for the moment. I am not sure that I really understand #111 2018-07-21T04:57:48Z sabrac: PuercoPop: Any interest in working on json and jsonb support? 2018-07-21T04:58:57Z asarch joined #lisp 2018-07-21T04:59:37Z asarch: One stupid question: I could do: '(a b c) or even (quote a b c). Is there something similar (in English words) for `(a b c) (quasiquoting)? 2018-07-21T05:00:04Z Bike: "He said to disassemble that car", maybe? 2018-07-21T05:00:11Z PuercoPop: sabrac: yeah, I was thinking of porting a PoC wiki from disk to a 'document' store using JSONB. 2018-07-21T05:00:11Z Bike: paraphrasing 2018-07-21T05:08:57Z sabrac: PuercoPop: ok. Give the jsonb support some thought. I will try to get the draft roadmap out in the next 48 hours along with a bunch of s-sql stuff that got triggered in the process of fixing #68 2018-07-21T05:11:11Z Bike quit (Quit: Lost terminal) 2018-07-21T05:12:15Z PuercoPop: sabrac: will do! I'm off to sleep now. 2018-07-21T05:13:12Z varjag joined #lisp 2018-07-21T05:17:06Z nika joined #lisp 2018-07-21T05:23:48Z fikka joined #lisp 2018-07-21T05:25:42Z Kundry_Wag joined #lisp 2018-07-21T05:28:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-21T05:30:07Z Kundry_Wag quit (Ping timeout: 244 seconds) 2018-07-21T05:31:56Z quazimodo quit (Ping timeout: 276 seconds) 2018-07-21T05:36:19Z LdBeth[m]: asarch: (quote a b c) isn’t a thing 2018-07-21T05:37:52Z asarch: D'oh! My mistake.. 2018-07-21T05:38:08Z lemoinem quit (Ping timeout: 256 seconds) 2018-07-21T05:38:37Z LdBeth[m]: And you can’t do (quasiquote (a b ,c)) since phase quasiquote form requires to be at read time 2018-07-21T05:40:02Z aeth: If you need to do something like that you should just think about what the quasiquotation is trying to do. In that case, (list 'a 'b c) or one of the other dozen ways to get the same result. 2018-07-21T05:40:21Z aeth: Sometimes it winds up being clearer, too 2018-07-21T05:41:41Z varjag quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2018-07-21T05:45:41Z lemoinem joined #lisp 2018-07-21T05:47:54Z beach: Good morning everyone! 2018-07-21T05:51:12Z newbie54 quit (Read error: Connection reset by peer) 2018-07-21T05:51:12Z newbie35 quit (Read error: Connection reset by peer) 2018-07-21T05:51:17Z lemoinem quit (Ping timeout: 256 seconds) 2018-07-21T05:51:20Z zigpaw: morning! 2018-07-21T05:56:27Z zigpaw: skidd0 - maybe look how chocolatey does progresql installation, you might use their tool or their scripts - they are windows based, if you need it for linux you can look at gentoo's portage scripts and for mac os x you can look how brew does it. Still not ideal solution but kinda automated one. 2018-07-21T06:00:38Z fikka joined #lisp 2018-07-21T06:05:49Z fikka quit (Ping timeout: 260 seconds) 2018-07-21T06:07:22Z lemoinem joined #lisp 2018-07-21T06:12:18Z nowhere_man quit (Read error: Connection reset by peer) 2018-07-21T06:13:13Z skidd0: thanks zigpaw 2018-07-21T06:13:22Z skidd0: sabrac: the app is for linux for now 2018-07-21T06:13:26Z skidd0 quit (Quit: WeeChat 2.1) 2018-07-21T06:15:38Z vlatkoB joined #lisp 2018-07-21T06:15:56Z asarch quit (Quit: Leaving) 2018-07-21T06:15:57Z nowhere_man joined #lisp 2018-07-21T06:16:29Z elfmacs joined #lisp 2018-07-21T06:17:29Z Fare quit (Ping timeout: 260 seconds) 2018-07-21T06:18:05Z lemoinem quit (Ping timeout: 276 seconds) 2018-07-21T06:19:06Z orivej joined #lisp 2018-07-21T06:24:42Z lemoinem joined #lisp 2018-07-21T06:24:53Z saki joined #lisp 2018-07-21T06:29:27Z terpri quit (Ping timeout: 256 seconds) 2018-07-21T06:37:56Z reverse_light joined #lisp 2018-07-21T06:38:00Z vaporatorius joined #lisp 2018-07-21T06:38:06Z vap1 joined #lisp 2018-07-21T06:39:32Z lemoinem quit (Ping timeout: 276 seconds) 2018-07-21T06:40:17Z vaporatorius quit (Client Quit) 2018-07-21T06:40:54Z reverse_1ight quit (Ping timeout: 244 seconds) 2018-07-21T06:41:49Z slyrus1 quit (Ping timeout: 268 seconds) 2018-07-21T06:42:58Z slyrus_ quit (Ping timeout: 244 seconds) 2018-07-21T06:48:02Z anewuser quit (Quit: anewuser) 2018-07-21T06:49:32Z Inline quit (Read error: Connection reset by peer) 2018-07-21T06:51:02Z Inline joined #lisp 2018-07-21T06:51:33Z Inline quit (Read error: Connection reset by peer) 2018-07-21T06:51:52Z lemoinem joined #lisp 2018-07-21T06:52:13Z Inline joined #lisp 2018-07-21T06:53:11Z saki quit (Ping timeout: 276 seconds) 2018-07-21T06:55:57Z slyrus_ joined #lisp 2018-07-21T07:04:36Z graphene quit (Remote host closed the connection) 2018-07-21T07:05:53Z graphene joined #lisp 2018-07-21T07:10:30Z FreeBirdLjj joined #lisp 2018-07-21T07:23:13Z Kundry_Wag joined #lisp 2018-07-21T07:23:20Z angavrilov joined #lisp 2018-07-21T07:23:24Z aindilis quit (Ping timeout: 260 seconds) 2018-07-21T07:23:36Z graphene quit (Remote host closed the connection) 2018-07-21T07:24:53Z graphene joined #lisp 2018-07-21T07:28:17Z Kundry_Wag quit (Ping timeout: 276 seconds) 2018-07-21T07:28:39Z vlad_ joined #lisp 2018-07-21T07:29:45Z quazimodo joined #lisp 2018-07-21T07:43:57Z pfdietz quit (Ping timeout: 240 seconds) 2018-07-21T07:44:44Z robotoad quit (Quit: robotoad) 2018-07-21T07:45:27Z pfdietz joined #lisp 2018-07-21T07:48:45Z fikka joined #lisp 2018-07-21T07:49:23Z fiddlerwoaroof quit (Read error: Connection reset by peer) 2018-07-21T07:49:37Z knx quit (Remote host closed the connection) 2018-07-21T07:52:33Z equwal quit (Ping timeout: 248 seconds) 2018-07-21T07:53:45Z fikka quit (Ping timeout: 264 seconds) 2018-07-21T07:56:39Z fiddlerwoaroof joined #lisp 2018-07-21T07:59:51Z milanj quit (Quit: This computer has gone to sleep) 2018-07-21T08:06:44Z haom joined #lisp 2018-07-21T08:15:20Z milanj joined #lisp 2018-07-21T08:15:28Z milanj quit (Remote host closed the connection) 2018-07-21T08:16:50Z milanj joined #lisp 2018-07-21T08:16:55Z makomo joined #lisp 2018-07-21T08:19:46Z shka1 joined #lisp 2018-07-21T08:20:38Z kajo quit (Ping timeout: 256 seconds) 2018-07-21T08:21:41Z kajo joined #lisp 2018-07-21T08:22:35Z puchacz joined #lisp 2018-07-21T08:22:45Z puchacz quit (Client Quit) 2018-07-21T08:31:33Z makomo quit (Ping timeout: 264 seconds) 2018-07-21T08:32:06Z zigpaw quit (Remote host closed the connection) 2018-07-21T08:32:27Z zigpaw joined #lisp 2018-07-21T08:37:00Z terpri joined #lisp 2018-07-21T08:38:45Z acolarh quit (Ping timeout: 264 seconds) 2018-07-21T08:42:23Z orivej quit (Ping timeout: 276 seconds) 2018-07-21T08:53:15Z acolarh joined #lisp 2018-07-21T08:58:51Z quazimodo quit (Ping timeout: 244 seconds) 2018-07-21T08:59:06Z quazimodo joined #lisp 2018-07-21T09:03:23Z lumm joined #lisp 2018-07-21T09:09:17Z random-nick joined #lisp 2018-07-21T09:09:24Z MoziM quit (Quit: WeeChat 2.2) 2018-07-21T09:11:55Z LdBeth[m] is now known as LdBeth 2018-07-21T09:13:44Z rumbler31 joined #lisp 2018-07-21T09:14:32Z varjag joined #lisp 2018-07-21T09:19:26Z rumbler31 quit (Ping timeout: 276 seconds) 2018-07-21T09:29:00Z Kundry_Wag joined #lisp 2018-07-21T09:32:31Z DemolitionMan joined #lisp 2018-07-21T09:33:29Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-21T09:37:08Z fikka joined #lisp 2018-07-21T09:38:13Z saki joined #lisp 2018-07-21T09:42:30Z fikka quit (Ping timeout: 268 seconds) 2018-07-21T09:43:29Z saki quit (Ping timeout: 276 seconds) 2018-07-21T09:47:17Z jfb4` joined #lisp 2018-07-21T09:48:41Z jfb4 quit (Ping timeout: 276 seconds) 2018-07-21T09:59:18Z lemoinem quit (Ping timeout: 244 seconds) 2018-07-21T10:00:42Z lemoinem joined #lisp 2018-07-21T10:01:26Z drduck`: What is used in common lisp as a log/data aggregation tool that is analagous to apache kafka? 2018-07-21T10:06:09Z shka1: drduck`: there is nothing 2018-07-21T10:06:22Z vlad_ is now known as DonVlad 2018-07-21T10:08:32Z drduck`: :((((((((((((( 2018-07-21T10:08:55Z Kundry_Wag joined #lisp 2018-07-21T10:09:23Z drduck`: I see this but I wondered if there was anything that was a fully featured interface https://github.com/yehohanan7/cl-kafka 2018-07-21T10:10:12Z drduck`: I guess syslog is kinda sorta like kafka without the power of querying against the centralized data? 2018-07-21T10:10:16Z drduck`: So there's this https://github.com/mmaul/cl-syslog 2018-07-21T10:11:59Z saki joined #lisp 2018-07-21T10:13:57Z Kundry_Wag quit (Ping timeout: 268 seconds) 2018-07-21T10:15:40Z JuanDaugherty joined #lisp 2018-07-21T10:16:11Z rozenglass quit (Remote host closed the connection) 2018-07-21T10:29:12Z nika quit (Quit: Leaving...) 2018-07-21T10:30:49Z quazimodo quit (Ping timeout: 244 seconds) 2018-07-21T10:30:50Z Inline quit (Quit: Leaving) 2018-07-21T10:33:12Z MoziM joined #lisp 2018-07-21T10:37:11Z pioneer42 left #lisp 2018-07-21T10:37:18Z MoziM quit (Client Quit) 2018-07-21T10:58:14Z lemoinem quit (Ping timeout: 276 seconds) 2018-07-21T10:58:44Z lemoinem joined #lisp 2018-07-21T11:01:53Z Bike joined #lisp 2018-07-21T11:05:13Z makomo joined #lisp 2018-07-21T11:06:04Z fikka joined #lisp 2018-07-21T11:10:36Z fikka quit (Ping timeout: 244 seconds) 2018-07-21T11:13:31Z JuanDaugherty quit (Quit: Exeunt) 2018-07-21T11:15:51Z aindilis joined #lisp 2018-07-21T11:22:17Z LdBeth: drduck`: it uses POSIX’s system logging facilities 2018-07-21T11:23:34Z LdBeth: So it’s actually limited to what can be used to analyze Unix’s system log 2018-07-21T11:24:05Z Kundry_Wag joined #lisp 2018-07-21T11:24:57Z caltelt quit (Ping timeout: 240 seconds) 2018-07-21T11:26:11Z varjag quit (Ping timeout: 276 seconds) 2018-07-21T11:28:33Z Kundry_Wag quit (Ping timeout: 248 seconds) 2018-07-21T11:31:11Z lemo joined #lisp 2018-07-21T11:32:18Z lemoinem quit (Ping timeout: 244 seconds) 2018-07-21T11:33:37Z lemoinem joined #lisp 2018-07-21T11:33:47Z Inline joined #lisp 2018-07-21T11:35:55Z lumm quit (Quit: lumm) 2018-07-21T11:36:19Z lumm joined #lisp 2018-07-21T11:37:11Z lumm quit (Read error: Connection reset by peer) 2018-07-21T11:42:35Z orivej joined #lisp 2018-07-21T11:45:13Z jfb4` quit (Ping timeout: 268 seconds) 2018-07-21T11:45:31Z fikka joined #lisp 2018-07-21T11:55:10Z Ven`` joined #lisp 2018-07-21T11:56:41Z smurfrobot joined #lisp 2018-07-21T11:57:12Z lumm joined #lisp 2018-07-21T11:58:30Z markoong joined #lisp 2018-07-21T11:58:39Z Cthulhux quit (Changing host) 2018-07-21T11:58:39Z Cthulhux joined #lisp 2018-07-21T12:02:06Z smurfrobot quit (Remote host closed the connection) 2018-07-21T12:02:09Z Ven`` quit (Ping timeout: 248 seconds) 2018-07-21T12:03:34Z Ven`` joined #lisp 2018-07-21T12:06:08Z saki quit (Quit: saki) 2018-07-21T12:07:47Z lemoinem quit (Ping timeout: 276 seconds) 2018-07-21T12:08:11Z lemoinem joined #lisp 2018-07-21T12:11:47Z schweers joined #lisp 2018-07-21T12:15:57Z Bike quit (Ping timeout: 264 seconds) 2018-07-21T12:18:41Z smurfrobot joined #lisp 2018-07-21T12:20:48Z graphene quit (Remote host closed the connection) 2018-07-21T12:21:48Z milanj quit (Quit: This computer has gone to sleep) 2018-07-21T12:22:07Z graphene joined #lisp 2018-07-21T12:26:37Z jasmith quit (Quit: Leaving) 2018-07-21T12:27:48Z saki joined #lisp 2018-07-21T12:28:29Z nowhere_man quit (Read error: Connection reset by peer) 2018-07-21T12:29:49Z EvW joined #lisp 2018-07-21T12:31:48Z graphene quit (Remote host closed the connection) 2018-07-21T12:33:05Z graphene joined #lisp 2018-07-21T12:33:16Z nowhere_man joined #lisp 2018-07-21T12:35:14Z skeuomorf joined #lisp 2018-07-21T12:35:22Z skeuomorf left #lisp 2018-07-21T12:37:47Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-21T12:38:33Z nowhere_man joined #lisp 2018-07-21T12:39:50Z rippa joined #lisp 2018-07-21T12:40:19Z schweers quit (Remote host closed the connection) 2018-07-21T12:40:32Z lumm quit (Quit: lumm) 2018-07-21T12:40:59Z lumm joined #lisp 2018-07-21T12:45:28Z drduck_2 joined #lisp 2018-07-21T12:51:24Z pierpal quit (Quit: Poof) 2018-07-21T12:51:42Z pierpal joined #lisp 2018-07-21T12:57:39Z drduck_2: I'd like to create a web service in common lisp that can be targeted by a web application and mobile application. What would be the appropriate library that would help the most for this? 2018-07-21T12:58:37Z drduck_2: I was wondering if caveman would be what I wanted, but it looks like it looks like it is biased towards/built for just web applications. 2018-07-21T13:02:16Z smurfrobot quit (Remote host closed the connection) 2018-07-21T13:02:46Z drduck_2: I may be wrong. Seeing html-specific portions made me think so, though. 2018-07-21T13:02:47Z pagnol joined #lisp 2018-07-21T13:03:18Z drduck_2: https://github.com/fukamachi/caveman#generating-a-project-skeleton and https://github.com/fukamachi/caveman#templates and https://github.com/fukamachi/caveman#structured-querypost-parameters namely 2018-07-21T13:05:55Z drduck_2: I guess I don't have to use those portions. I will just play with it and see if I can configure it, unless there are any suggestions. 2018-07-21T13:06:20Z haom left #lisp 2018-07-21T13:06:26Z drduck_2: New to common lisp and web development, pretty much, so I'm kinda blind here. :P 2018-07-21T13:07:12Z smurfrobot joined #lisp 2018-07-21T13:08:55Z beach: I suggest you talk to Shinmera. 2018-07-21T13:08:59Z pjb: drduck_2: I would do the thing myself. Why do you want to rely on dependencies that may or may not match your needs. If you're new you don't even know what you need! Develop it yourself and see what your need is! 2018-07-21T13:09:25Z ykm joined #lisp 2018-07-21T13:11:35Z smurfrobot quit (Ping timeout: 240 seconds) 2018-07-21T13:12:51Z drduck_2: Well I'd like to get it up and running as quickly as possible. Building it myself would be a humongous time sink, I think. 2018-07-21T13:13:17Z fikka quit (Ping timeout: 256 seconds) 2018-07-21T13:13:27Z EvW quit (Ping timeout: 240 seconds) 2018-07-21T13:13:33Z drduck_2: If there's a library, like Flask or something, for common lisp where I can use it as a web service framework and not a web application framework, that would be great. 2018-07-21T13:14:25Z drduck_2: Where does one find this Shinmera, beach? 2018-07-21T13:14:43Z beach: I think he has his own IRC channel. I forget the name of it though. 2018-07-21T13:15:11Z beach: #shirakumo 2018-07-21T13:19:12Z jmercouris joined #lisp 2018-07-21T13:24:32Z graphene quit (Remote host closed the connection) 2018-07-21T13:25:51Z quazimodo joined #lisp 2018-07-21T13:25:53Z graphene joined #lisp 2018-07-21T13:27:44Z jmercouris quit (Remote host closed the connection) 2018-07-21T13:28:13Z Kundry_Wag joined #lisp 2018-07-21T13:28:27Z drduck_2: Anyone here ever made a web service in common lisp? 2018-07-21T13:28:31Z drduck_2: And used a framework? 2018-07-21T13:28:41Z beach: Yes, Shinmera has. 2018-07-21T13:28:52Z beach: His channel is named #shirakumo 2018-07-21T13:29:33Z drduck_2: I went and asked him. 2018-07-21T13:29:35Z saki quit (Ping timeout: 244 seconds) 2018-07-21T13:29:37Z drduck_2: I guess he's sleep. 2018-07-21T13:29:58Z beach: It's the weekend. He may be having some social activity. 2018-07-21T13:30:41Z lumm quit (Read error: Connection reset by peer) 2018-07-21T13:31:04Z shka1: drduck_2: also caveman 2018-07-21T13:31:07Z shka1: and webblcoks 2018-07-21T13:31:10Z shka1: and few others 2018-07-21T13:31:16Z shka1: there are multiple web frameworks 2018-07-21T13:31:29Z lumm joined #lisp 2018-07-21T13:31:33Z shka1: there is even a web framework for cobol! 2018-07-21T13:31:41Z shka1: web frameworks are just not that hard :P 2018-07-21T13:32:35Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-21T13:32:59Z drduck_2: Does caveman force you to couple the web service with the browser webapp? I thought from the looks of it, it did. I may be totally wrong, and it's just providing options incase you decide to. 2018-07-21T13:33:06Z drduck_2: This is what made me think so: 2018-07-21T13:34:15Z drduck_2: the html and css from the project creation generator https://github.com/fukamachi/caveman#generating-a-project-skeleton 2018-07-21T13:34:41Z drduck_2: structured query/post params https://github.com/fukamachi/caveman#structured-querypost-parameters 2018-07-21T13:34:53Z drduck_2: and templates https://github.com/fukamachi/caveman#templates 2018-07-21T13:35:31Z drduck_2: I want to have a web service i can hit from mobile and browser applications and not be restricted to one 2018-07-21T13:35:52Z drduck_2: bah i'll just download it and see what happens. i could be talking complete nonsense right now and it be the right oold for the job 2018-07-21T13:36:04Z drduck_2: tool* 2018-07-21T13:39:12Z Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-21T13:40:57Z fikka joined #lisp 2018-07-21T13:45:56Z fikka quit (Ping timeout: 276 seconds) 2018-07-21T13:47:52Z smurfrobot joined #lisp 2018-07-21T13:48:33Z Fare joined #lisp 2018-07-21T13:50:21Z lumm quit (Quit: lumm) 2018-07-21T13:54:36Z lumm joined #lisp 2018-07-21T13:55:57Z orivej quit (Ping timeout: 268 seconds) 2018-07-21T13:58:07Z smurfrobot quit (Remote host closed the connection) 2018-07-21T14:02:42Z ykm quit (Ping timeout: 245 seconds) 2018-07-21T14:03:41Z smurfrobot joined #lisp 2018-07-21T14:09:46Z milanj joined #lisp 2018-07-21T14:15:31Z fikka joined #lisp 2018-07-21T14:20:09Z fikka quit (Ping timeout: 264 seconds) 2018-07-21T14:20:19Z Kundry_Wag joined #lisp 2018-07-21T14:24:27Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-21T14:24:53Z elfmacs quit (Ping timeout: 256 seconds) 2018-07-21T14:25:44Z anewuser joined #lisp 2018-07-21T14:30:18Z fikka joined #lisp 2018-07-21T14:32:41Z slyrus2 joined #lisp 2018-07-21T14:32:58Z slyrus2 quit (Remote host closed the connection) 2018-07-21T14:33:56Z slyrus2 joined #lisp 2018-07-21T14:34:57Z lemo quit (Ping timeout: 240 seconds) 2018-07-21T14:46:31Z lumm_ joined #lisp 2018-07-21T14:49:27Z lumm quit (Ping timeout: 240 seconds) 2018-07-21T14:49:28Z lumm_ is now known as lumm 2018-07-21T14:50:11Z milanj quit (Quit: This computer has gone to sleep) 2018-07-21T14:50:56Z Kundry_Wag joined #lisp 2018-07-21T14:52:00Z lumm quit (Quit: lumm) 2018-07-21T14:52:08Z Bike joined #lisp 2018-07-21T14:52:27Z lumm joined #lisp 2018-07-21T14:53:41Z ebrasca quit (Remote host closed the connection) 2018-07-21T14:55:29Z Kundry_Wag quit (Ping timeout: 248 seconds) 2018-07-21T14:57:38Z lemo joined #lisp 2018-07-21T15:00:23Z lumm quit (Ping timeout: 256 seconds) 2018-07-21T15:02:29Z fikka quit (Ping timeout: 260 seconds) 2018-07-21T15:03:03Z ikki joined #lisp 2018-07-21T15:04:19Z light2yellow joined #lisp 2018-07-21T15:07:03Z karlosz joined #lisp 2018-07-21T15:14:16Z Achylles joined #lisp 2018-07-21T15:16:32Z quazimodo quit (Ping timeout: 244 seconds) 2018-07-21T15:17:03Z ikki quit (Ping timeout: 244 seconds) 2018-07-21T15:17:27Z trittweiler joined #lisp 2018-07-21T15:20:24Z fikka joined #lisp 2018-07-21T15:20:41Z Kundry_Wag joined #lisp 2018-07-21T15:25:10Z lumm joined #lisp 2018-07-21T15:25:19Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-21T15:26:30Z kuwze joined #lisp 2018-07-21T15:27:12Z smurfrobot quit (Remote host closed the connection) 2018-07-21T15:29:11Z igemnace joined #lisp 2018-07-21T15:30:14Z smurfrobot joined #lisp 2018-07-21T15:30:35Z pagnol quit (Ping timeout: 240 seconds) 2018-07-21T15:30:52Z lemo quit (Quit: lemo) 2018-07-21T15:31:01Z Aritheanie quit (Quit: No Ping reply in 180 seconds.) 2018-07-21T15:31:17Z lemo joined #lisp 2018-07-21T15:32:50Z smurfrobot quit (Read error: Connection reset by peer) 2018-07-21T15:33:09Z EvW joined #lisp 2018-07-21T15:33:29Z Aritheanie joined #lisp 2018-07-21T15:33:41Z smurfrobot joined #lisp 2018-07-21T15:34:32Z Ven`` joined #lisp 2018-07-21T15:34:42Z groovy2shoes quit (Ping timeout: 265 seconds) 2018-07-21T15:34:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-21T15:37:15Z groovy2shoes joined #lisp 2018-07-21T15:38:39Z smurfrobot quit (Ping timeout: 260 seconds) 2018-07-21T15:39:49Z igemnace quit (Ping timeout: 260 seconds) 2018-07-21T15:40:40Z lemo quit (Quit: lemo) 2018-07-21T15:40:41Z Ven`` quit (Remote host closed the connection) 2018-07-21T15:40:42Z beaky quit (Ping timeout: 260 seconds) 2018-07-21T15:41:47Z Ven`` joined #lisp 2018-07-21T15:42:43Z fikka joined #lisp 2018-07-21T15:44:21Z EvW quit (Quit: EvW) 2018-07-21T15:44:56Z nika joined #lisp 2018-07-21T15:45:39Z EvW1 joined #lisp 2018-07-21T15:48:19Z Inline quit (Quit: Leaving) 2018-07-21T15:51:41Z Inline joined #lisp 2018-07-21T15:52:24Z pjb quit (Ping timeout: 256 seconds) 2018-07-21T15:53:05Z terpri quit (Ping timeout: 248 seconds) 2018-07-21T15:57:53Z ikki joined #lisp 2018-07-21T15:58:54Z Khisanth quit (Ping timeout: 260 seconds) 2018-07-21T16:05:41Z beaky joined #lisp 2018-07-21T16:07:00Z EvW1 quit (Ping timeout: 256 seconds) 2018-07-21T16:07:58Z anewuser quit (Quit: anewuser) 2018-07-21T16:08:49Z DGASAU quit (Read error: Connection reset by peer) 2018-07-21T16:09:06Z DGASAU joined #lisp 2018-07-21T16:11:48Z Khisanth joined #lisp 2018-07-21T16:12:45Z milanj joined #lisp 2018-07-21T16:16:02Z pagnol joined #lisp 2018-07-21T16:16:21Z newbie joined #lisp 2018-07-21T16:16:27Z BitPuffin joined #lisp 2018-07-21T16:19:04Z rumbler31 joined #lisp 2018-07-21T16:19:07Z pjb joined #lisp 2018-07-21T16:19:31Z pjb is now known as Guest84125 2018-07-21T16:24:32Z rumbler31 quit (Ping timeout: 276 seconds) 2018-07-21T16:25:06Z robotoad joined #lisp 2018-07-21T16:26:04Z orivej joined #lisp 2018-07-21T16:26:06Z lemo joined #lisp 2018-07-21T16:26:36Z kushal quit (Remote host closed the connection) 2018-07-21T16:26:45Z lemo quit (Client Quit) 2018-07-21T16:26:50Z kushal joined #lisp 2018-07-21T16:29:49Z gabiruh quit (Read error: Connection reset by peer) 2018-07-21T16:30:03Z gabiruh joined #lisp 2018-07-21T16:31:16Z lemo joined #lisp 2018-07-21T16:31:34Z lemo quit (Client Quit) 2018-07-21T16:31:41Z pagnol quit (Ping timeout: 276 seconds) 2018-07-21T16:34:28Z robotoad quit (Quit: robotoad) 2018-07-21T16:37:08Z karlosz quit (Quit: karlosz) 2018-07-21T16:37:36Z skidd0 joined #lisp 2018-07-21T16:40:06Z drot quit (Quit: Quit.) 2018-07-21T16:40:54Z smurfrobot joined #lisp 2018-07-21T16:41:36Z drot joined #lisp 2018-07-21T16:41:43Z lemo_ joined #lisp 2018-07-21T16:42:04Z skidd0: when I (ql:quickload :my-package) it "runs" the code in the my-package file proceduraly, right? 2018-07-21T16:42:53Z skidd0: I ask because i have a (ubiquitous:restore 'my-config) that doesn't appear to have been "run" after the quickload 2018-07-21T16:43:50Z lemo_ is now known as lemo 2018-07-21T16:44:49Z haom joined #lisp 2018-07-21T16:45:44Z smurfrobot quit (Ping timeout: 260 seconds) 2018-07-21T16:46:35Z ikki quit (Ping timeout: 240 seconds) 2018-07-21T16:47:22Z hphat^ joined #lisp 2018-07-21T16:47:39Z kerrhau joined #lisp 2018-07-21T16:47:39Z kerrhau quit (Changing host) 2018-07-21T16:47:39Z kerrhau joined #lisp 2018-07-21T16:49:26Z newbie70 joined #lisp 2018-07-21T16:49:42Z newbie quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2018-07-21T16:49:42Z newbie70 quit (Client Quit) 2018-07-21T16:49:55Z slyrus2 quit (Quit: slyrus2) 2018-07-21T16:50:02Z newbie joined #lisp 2018-07-21T16:50:18Z slyrus2 joined #lisp 2018-07-21T16:51:24Z slyrus2 quit (Client Quit) 2018-07-21T16:51:48Z slyrus2 joined #lisp 2018-07-21T16:51:56Z drduck_2 quit (Ping timeout: 276 seconds) 2018-07-21T16:52:13Z Guest84125 quit (Ping timeout: 256 seconds) 2018-07-21T16:52:38Z lemo quit (Quit: lemo) 2018-07-21T16:53:00Z lemo joined #lisp 2018-07-21T16:53:15Z lemo quit (Client Quit) 2018-07-21T16:55:50Z robotoad joined #lisp 2018-07-21T16:56:16Z Bike: it will load the system, not just the file 2018-07-21T16:57:00Z Bike: if you mean you put something like that in your asd file, that'll probably be problematic 2018-07-21T16:57:13Z lemo joined #lisp 2018-07-21T16:57:19Z lemo quit (Read error: Connection reset by peer) 2018-07-21T16:57:28Z karlosz joined #lisp 2018-07-21T16:58:22Z ikki joined #lisp 2018-07-21T16:58:37Z gravicappa joined #lisp 2018-07-21T17:00:21Z skidd0: no, it's in the .lisp file 2018-07-21T17:00:30Z skidd0: right after the (in-package) 2018-07-21T17:00:59Z skidd0: the goal was to load some config strings into some *vars* 2018-07-21T17:01:13Z skidd0: basically prepping for database connections 2018-07-21T17:02:53Z fikka quit (Ping timeout: 276 seconds) 2018-07-21T17:03:27Z Bike: "the" lisp file? what's the asd look like? 2018-07-21T17:03:45Z esthlos: anyone got ideas on how I can efficiently implement bit rotation on bit vectors? 2018-07-21T17:04:36Z esthlos: their max size is 2^7 for the record 2018-07-21T17:05:29Z skidd0: Bike: asd file has the system dependancies and components 2018-07-21T17:05:36Z skidd0: normal asd file 2018-07-21T17:05:40Z Bike: y...yes 2018-07-21T17:05:44Z Bike: i mean what's "THE" lisp file 2018-07-21T17:05:48Z Bike: usually there are several 2018-07-21T17:05:52Z skidd0: the one i'm working on 2018-07-21T17:05:57Z skidd0: atm 2018-07-21T17:06:01Z skidd0: that is having the issue 2018-07-21T17:06:09Z skidd0: of apparantly not loading the ubiquitous config 2018-07-21T17:06:26Z Bike: and the lisp file is in the asd? 2018-07-21T17:06:38Z random-nick: hello, does quicklisp have the original esrap or the fork? 2018-07-21T17:07:09Z skidd0: yeas as a component 2018-07-21T17:07:40Z skidd0: i know it's being loaded because it throws errors due to the not working config setup 2018-07-21T17:08:07Z _death: random-nick: quicklisp-projects says https://github.com/scymtym/esrap.git 2018-07-21T17:08:18Z random-nick: _death: okay, thank you 2018-07-21T17:10:57Z EvW joined #lisp 2018-07-21T17:13:17Z fikka joined #lisp 2018-07-21T17:13:18Z orivej quit (Ping timeout: 244 seconds) 2018-07-21T17:16:47Z orivej joined #lisp 2018-07-21T17:16:53Z zooey quit (Ping timeout: 250 seconds) 2018-07-21T17:17:55Z beach: esthlos: are you allowed to wrap the bit vector in something, or does it have to be a "raw" bit vector? 2018-07-21T17:18:27Z lemo joined #lisp 2018-07-21T17:18:49Z lemo quit (Client Quit) 2018-07-21T17:20:05Z Pixel_Outlaw joined #lisp 2018-07-21T17:20:06Z fikka quit (Ping timeout: 260 seconds) 2018-07-21T17:20:29Z rumbler31 joined #lisp 2018-07-21T17:21:05Z lumm quit (Quit: lumm) 2018-07-21T17:21:06Z Kundry_Wag joined #lisp 2018-07-21T17:21:17Z karlosz quit (Quit: karlosz) 2018-07-21T17:21:48Z lumm joined #lisp 2018-07-21T17:22:07Z lumm quit (Remote host closed the connection) 2018-07-21T17:22:24Z fikka joined #lisp 2018-07-21T17:22:25Z Guest84125 joined #lisp 2018-07-21T17:22:39Z zooey joined #lisp 2018-07-21T17:25:05Z Achylles quit (Ping timeout: 256 seconds) 2018-07-21T17:25:35Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-21T17:26:56Z rumbler31 quit (Ping timeout: 276 seconds) 2018-07-21T17:27:09Z fikka quit (Ping timeout: 260 seconds) 2018-07-21T17:28:30Z EvW quit (Ping timeout: 260 seconds) 2018-07-21T17:30:07Z esthlos: beach: wrapping would be fine 2018-07-21T17:31:09Z fikka joined #lisp 2018-07-21T17:31:18Z esthlos: as long as it's efficient. rotation on lists is easy enough, but I worry that vector -> list -> vector takes too much time 2018-07-21T17:34:19Z Guest84125 left #lisp 2018-07-21T17:34:29Z pjb joined #lisp 2018-07-21T17:34:32Z beach: Then you don't need to rotate. Just increment or decrement the index. 2018-07-21T17:35:44Z beach: esthlos: Do you see what I mean? 2018-07-21T17:37:06Z Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-21T17:37:24Z beach: (defclass wrapped-bitvector () ((underlying-bitvector ....) (offset ...))) then (defun rotate (wrapped-bitvector amount) (incf (offset wrapped-bitvector) amount)) 2018-07-21T17:37:44Z lemo joined #lisp 2018-07-21T17:38:41Z lemo quit (Client Quit) 2018-07-21T17:41:03Z beach: esthlos: Are you still around? 2018-07-21T17:42:45Z beach: Oh, well. 2018-07-21T17:44:02Z trittweiler: What's the pasting service de vogue, paste.lisp.org seems no longer available 2018-07-21T17:45:23Z flip214: trittweiler: pastebin.org 2018-07-21T17:45:49Z caltelt joined #lisp 2018-07-21T17:50:32Z esthlos: sorry, in and out right now 2018-07-21T17:52:45Z slyrus2 quit (Ping timeout: 268 seconds) 2018-07-21T17:53:35Z slyrus_ quit (Ping timeout: 276 seconds) 2018-07-21T17:54:33Z esthlos: beach: that's an interesting idea. I have to constantly make new vectors. question then is what costs more: creating the wrapped-bitvector, or the dumb rotation with a loop and setf 2018-07-21T17:54:53Z esthlos: I'll do some timing tests and check it out 2018-07-21T17:55:38Z esthlos: obviously your method scales far better, but these bit vectors are capped at 2^7 in length 2018-07-21T17:56:09Z flip214: esthlos: do you need to rotate by single bits, or only by octets? 2018-07-21T17:57:04Z flip214: anyway, I'd suggest to create the underlying-bitvector with double the size, and setting bit N and (+ N size) at each SETF. 2018-07-21T17:57:33Z flip214: then retrieving any bit sequence can be done with a single call with the offset, no need to check for wraparound 2018-07-21T17:58:25Z flip214: depending on the actual things you need to do a vector of 2^(7+1) bytes where only a single bit is used might be even easier -- though not as L1 cache efficient ;) 2018-07-21T17:59:05Z flip214: esthlos: if it's really only 2^7 bits, why not keep them in a BIGNUM (or, if you have enough control, in one SSE or two CPU registers)? 2018-07-21T17:59:35Z slyrus1 joined #lisp 2018-07-21T18:00:26Z milanj quit (Quit: This computer has gone to sleep) 2018-07-21T18:00:34Z terpri joined #lisp 2018-07-21T18:01:15Z JuanDaugherty joined #lisp 2018-07-21T18:05:02Z Achylles joined #lisp 2018-07-21T18:06:01Z slyrus_ joined #lisp 2018-07-21T18:08:01Z caltelt quit (Remote host closed the connection) 2018-07-21T18:08:38Z msmith joined #lisp 2018-07-21T18:09:42Z serviteur joined #lisp 2018-07-21T18:09:43Z serviteur quit (Read error: Connection reset by peer) 2018-07-21T18:09:44Z graphene quit (Remote host closed the connection) 2018-07-21T18:09:57Z serviteur joined #lisp 2018-07-21T18:10:09Z esthlos: flip214: the rotation is by single bits. keeping them in a bignum is also an interesting idea. though I'm trying to be very transparent about bitwise operations in the code itself 2018-07-21T18:11:05Z graphene joined #lisp 2018-07-21T18:11:15Z esthlos: bitvector-wise operations, I should say 2018-07-21T18:11:44Z msmith: has anyone compared NTP timestamps to the output of get-universal-time? I seems like the latter is just the first 32 bits of the former. is this correct? by that I mean they both equal the seconds relative to 0h on 1 January 1900 and should be identical 2018-07-21T18:11:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-21T18:17:38Z ikki quit (Ping timeout: 276 seconds) 2018-07-21T18:19:46Z caltelt joined #lisp 2018-07-21T18:20:03Z msmith left #lisp 2018-07-21T18:23:05Z cgay_ joined #lisp 2018-07-21T18:28:19Z caltelt_ joined #lisp 2018-07-21T18:29:24Z ikki joined #lisp 2018-07-21T18:29:38Z runix_1 joined #lisp 2018-07-21T18:29:45Z caltelt_ quit (Remote host closed the connection) 2018-07-21T18:30:27Z cgay_ quit (Ping timeout: 240 seconds) 2018-07-21T18:30:57Z nika quit (Quit: Leaving...) 2018-07-21T18:31:43Z fikka joined #lisp 2018-07-21T18:34:12Z caltelt_ joined #lisp 2018-07-21T18:34:29Z dddddd joined #lisp 2018-07-21T18:37:45Z graphene quit (Remote host closed the connection) 2018-07-21T18:38:28Z JuanDaugherty quit (Quit: Exeunt) 2018-07-21T18:38:49Z karlosz joined #lisp 2018-07-21T18:39:05Z graphene joined #lisp 2018-07-21T18:42:38Z graphene quit (Remote host closed the connection) 2018-07-21T18:43:57Z graphene joined #lisp 2018-07-21T18:44:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-21T18:50:27Z pierpal quit (Quit: Poof) 2018-07-21T18:50:43Z pierpal joined #lisp 2018-07-21T18:53:33Z patlv joined #lisp 2018-07-21T18:54:47Z glv joined #lisp 2018-07-21T18:55:20Z FreeBirdLjj quit (Ping timeout: 276 seconds) 2018-07-21T18:58:28Z milanj joined #lisp 2018-07-21T19:00:57Z glv quit (Quit: Leaving) 2018-07-21T19:06:07Z _death: the value of g-u-t does not have a fixed bound.. and it ignores leap seconds 2018-07-21T19:07:49Z varjag joined #lisp 2018-07-21T19:07:50Z karlosz quit (Quit: karlosz) 2018-07-21T19:12:45Z lumm joined #lisp 2018-07-21T19:18:18Z fikka joined #lisp 2018-07-21T19:19:57Z aindilis quit (Ping timeout: 240 seconds) 2018-07-21T19:20:14Z ayda joined #lisp 2018-07-21T19:20:53Z karlosz joined #lisp 2018-07-21T19:23:17Z fikka quit (Ping timeout: 276 seconds) 2018-07-21T19:29:26Z Achylles quit (Ping timeout: 256 seconds) 2018-07-21T19:29:27Z nullniverse quit (Ping timeout: 240 seconds) 2018-07-21T19:30:47Z FreeBirdLjj joined #lisp 2018-07-21T19:31:10Z Jesin joined #lisp 2018-07-21T19:31:17Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-21T19:38:34Z fikka joined #lisp 2018-07-21T19:43:20Z karlosz quit (Quit: karlosz) 2018-07-21T19:43:34Z fikka quit (Ping timeout: 264 seconds) 2018-07-21T19:53:00Z slyrus1 quit (Remote host closed the connection) 2018-07-21T19:53:26Z slyrus1 joined #lisp 2018-07-21T19:56:52Z karlosz joined #lisp 2018-07-21T19:59:14Z fikka joined #lisp 2018-07-21T20:02:01Z pagnol joined #lisp 2018-07-21T20:02:38Z housel quit (Read error: Connection reset by peer) 2018-07-21T20:03:21Z ayda quit (Ping timeout: 264 seconds) 2018-07-21T20:03:39Z FreeBirdLjj joined #lisp 2018-07-21T20:04:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-21T20:08:08Z patlv quit (Ping timeout: 276 seconds) 2018-07-21T20:08:47Z FreeBirdLjj quit (Ping timeout: 276 seconds) 2018-07-21T20:09:32Z Oberon4278 joined #lisp 2018-07-21T20:09:46Z fikka joined #lisp 2018-07-21T20:10:09Z eminhi joined #lisp 2018-07-21T20:10:48Z EvW joined #lisp 2018-07-21T20:11:03Z patlv joined #lisp 2018-07-21T20:12:17Z aindilis joined #lisp 2018-07-21T20:14:45Z fikka quit (Ping timeout: 264 seconds) 2018-07-21T20:15:44Z angavrilov quit (Remote host closed the connection) 2018-07-21T20:16:27Z gravicappa quit (Ping timeout: 240 seconds) 2018-07-21T20:16:50Z smurfrobot joined #lisp 2018-07-21T20:20:01Z fikka joined #lisp 2018-07-21T20:21:27Z smurfrobot quit (Ping timeout: 240 seconds) 2018-07-21T20:24:31Z fikka quit (Ping timeout: 256 seconds) 2018-07-21T20:26:14Z aeth quit (Ping timeout: 260 seconds) 2018-07-21T20:26:22Z gendl: Hi, in CL is there a standard way to specify the default :element-type for opening a file? 2018-07-21T20:26:48Z gendl: or does it always have to be specified explicitly with :element-type on the call to open (or with-open-file etc)? 2018-07-21T20:27:33Z shka1: it defaults to text IIRC 2018-07-21T20:27:37Z aeth joined #lisp 2018-07-21T20:28:05Z PuercoPop: gendl: I think there are implementation specific special variables you can bind 2018-07-21T20:28:09Z PuercoPop: but not a portable way to do so 2018-07-21T20:29:22Z sjl: anyone have a link to that paper that talked about simplifying operations on bytes in cl compilers? 2018-07-21T20:29:35Z gendl: PuercoPop: thanks. 2018-07-21T20:32:10Z runix_1: In CL when I want to "clear" an array, is it then basically enough to just set the fill-pointer to 0 and put in values again, or is there something to also consider when doing this? I suppose the alternative would be to create a new array and let the GC collect the old one? 2018-07-21T20:32:34Z haom left #lisp 2018-07-21T20:32:44Z vlatkoB quit (Remote host closed the connection) 2018-07-21T20:33:36Z fikka joined #lisp 2018-07-21T20:34:55Z sjl: runix_1: if you just set the fill pointer, the other elements won't be able to be GC'ed until they get replaced 2018-07-21T20:36:04Z sjl: If you want to clear out all the values to allow them to be GC'ed, you could do (fill array nil) or something similar 2018-07-21T20:36:14Z sjl: and https://pdfs.semanticscholar.org/7089/0eff0e93aba49174a9346731f4bf9225706d.pdf was the paper I was looking for 2018-07-21T20:40:22Z charh joined #lisp 2018-07-21T20:40:37Z charh quit (Changing host) 2018-07-21T20:40:37Z charh joined #lisp 2018-07-21T20:43:14Z orivej quit (Ping timeout: 276 seconds) 2018-07-21T20:48:27Z gabiruh quit (Ping timeout: 240 seconds) 2018-07-21T20:48:44Z Achylles joined #lisp 2018-07-21T20:50:29Z gendl: PuercoPop: according to the CLHS, "the default is character."http://clhs.lisp.se/Body/f_open.htm. So I guess any implementation which lets you change that default would be violating the standard. 2018-07-21T20:51:22Z gendl: By the way, I heard there's a "specbot" in here, for bringing up pieces of the spec? 2018-07-21T20:51:41Z patlv quit (Ping timeout: 276 seconds) 2018-07-21T20:52:45Z PuercoPop: gendl: yeah, you are right. I was thinking of a default encoding instead 2018-07-21T20:56:10Z patlv joined #lisp 2018-07-21T20:57:12Z PuercoPop: specbot: clhs open 2018-07-21T20:57:46Z PuercoPop: clhs open 2018-07-21T20:57:46Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_open.htm 2018-07-21T20:58:03Z Achylles quit (Quit: Leaving) 2018-07-21T20:59:10Z PuercoPop: weird that a bot doesn't work when the message is directed to them. Btw gendl it can query clhs mop and 'lp' which I'm not sure what it stands for 2018-07-21T21:00:00Z gendl: clhs open 2018-07-21T21:00:01Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_open.htm 2018-07-21T21:01:25Z pierpal quit (Quit: Poof) 2018-07-21T21:01:44Z pierpal joined #lisp 2018-07-21T21:04:25Z patlv quit (Quit: Leaving) 2018-07-21T21:06:28Z _death: PuercoPop: https://github.com/stassats/lisp-bots/blob/master/specs/lp.lisp 2018-07-21T21:07:19Z metallicus joined #lisp 2018-07-21T21:08:41Z PuercoPop: _death: ahh that makes sens.Thanks! 2018-07-21T21:13:59Z BitPuffin quit (Remote host closed the connection) 2018-07-21T21:17:33Z FreeBirdLjj joined #lisp 2018-07-21T21:20:05Z pierpal quit (Quit: Poof) 2018-07-21T21:20:23Z pierpal joined #lisp 2018-07-21T21:21:48Z shka1 quit (Ping timeout: 268 seconds) 2018-07-21T21:22:19Z FreeBirdLjj quit (Ping timeout: 256 seconds) 2018-07-21T21:22:21Z metallicus quit (Quit: Leaving) 2018-07-21T21:24:21Z varjag quit (Ping timeout: 264 seconds) 2018-07-21T21:26:50Z Oberon4278 quit 2018-07-21T21:27:23Z skidd0 quit (Quit: WeeChat 2.1) 2018-07-21T21:28:40Z ikki quit (Quit: Leaving) 2018-07-21T21:31:08Z zaquest quit (Ping timeout: 256 seconds) 2018-07-21T21:35:58Z pierpa joined #lisp 2018-07-21T21:46:37Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2018-07-21T21:48:57Z DonVlad quit (Ping timeout: 240 seconds) 2018-07-21T21:58:33Z slyrus1 quit (Quit: slyrus1) 2018-07-21T21:58:57Z slyrus1 joined #lisp 2018-07-21T22:00:29Z hhdave joined #lisp 2018-07-21T22:02:53Z slyrus1 quit (Client Quit) 2018-07-21T22:03:14Z slyrus1 joined #lisp 2018-07-21T22:05:00Z smurfrobot joined #lisp 2018-07-21T22:05:35Z hhdave quit (Ping timeout: 268 seconds) 2018-07-21T22:05:45Z hhdave_ joined #lisp 2018-07-21T22:06:33Z slyrus1 quit (Client Quit) 2018-07-21T22:06:57Z slyrus1 joined #lisp 2018-07-21T22:07:02Z eSVG joined #lisp 2018-07-21T22:07:56Z slyrus1 quit (Client Quit) 2018-07-21T22:09:06Z slyrus1 joined #lisp 2018-07-21T22:09:06Z slyrus1 quit (Client Quit) 2018-07-21T22:09:21Z smurfrobot quit (Ping timeout: 244 seconds) 2018-07-21T22:09:25Z housel joined #lisp 2018-07-21T22:09:43Z slyrus1 joined #lisp 2018-07-21T22:12:05Z ebzzry quit (Ping timeout: 240 seconds) 2018-07-21T22:14:53Z Fare quit (Ping timeout: 276 seconds) 2018-07-21T22:18:46Z EvW quit (Ping timeout: 265 seconds) 2018-07-21T22:20:55Z EvW1 joined #lisp 2018-07-21T22:26:20Z graphene quit (Remote host closed the connection) 2018-07-21T22:27:44Z graphene joined #lisp 2018-07-21T22:27:57Z random-nick quit (Ping timeout: 240 seconds) 2018-07-21T22:29:51Z megalography joined #lisp 2018-07-21T22:32:02Z housel quit (Remote host closed the connection) 2018-07-21T22:35:24Z lumm quit (Remote host closed the connection) 2018-07-21T22:35:34Z EvW1 quit (Ping timeout: 260 seconds) 2018-07-21T22:35:49Z jmercouris joined #lisp 2018-07-21T22:38:16Z serviteur quit (Remote host closed the connection) 2018-07-21T22:38:17Z pagnol quit (Ping timeout: 276 seconds) 2018-07-21T22:38:17Z trittweiler quit (Ping timeout: 276 seconds) 2018-07-21T22:39:01Z lumm_ joined #lisp 2018-07-21T22:42:38Z eminhi quit (Quit: leaving) 2018-07-21T22:43:32Z lumm_ quit (Ping timeout: 245 seconds) 2018-07-21T22:46:34Z hhdave_ quit (Quit: hhdave_) 2018-07-21T22:47:03Z jfb4 joined #lisp 2018-07-21T22:47:45Z lumm joined #lisp 2018-07-21T22:51:50Z lumm_ joined #lisp 2018-07-21T22:52:04Z lumm quit (Client Quit) 2018-07-21T22:52:28Z lumm_ is now known as lumm 2018-07-21T22:53:55Z Fare joined #lisp 2018-07-21T22:58:17Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-21T22:59:29Z runix_1: Can you have a defmethod be temporary within a function, such that it only exists when the function is "active"? 2018-07-21T23:00:06Z Bike: not really. 2018-07-21T23:00:40Z Bike: you could have the function bind a dynamic variable that the (global) method consults to determine its behavior. 2018-07-21T23:00:48Z asarch joined #lisp 2018-07-21T23:05:18Z lumm quit (Read error: Connection reset by peer) 2018-07-21T23:05:21Z jmercouris: is there a way to undefine a method? 2018-07-21T23:05:40Z lumm joined #lisp 2018-07-21T23:05:56Z jmercouris: okay, so I think it might be possible 2018-07-21T23:06:17Z jmercouris: you could have a defmethod at the top of the function body, and at the bottom you could execute remove-method 2018-07-21T23:06:29Z jmercouris: but I'm not sure if that would work, just guessing here 2018-07-21T23:08:14Z runix_1: ye, I could try that unless I rethink the design 2018-07-21T23:09:09Z Bike: you can do that, but i don't recommend it 2018-07-21T23:09:24Z Bike: for one thing, adding and removing methods could be expensive 2018-07-21T23:10:57Z megalography quit (Ping timeout: 248 seconds) 2018-07-21T23:11:08Z PuercoPop: jmercouris: Bike's suggestion of the dynamic variable + an :around method sounds like the most sensible approach for what you want to do. 2018-07-21T23:12:57Z lumm quit (Ping timeout: 240 seconds) 2018-07-21T23:13:04Z jmercouris: PuercoPop: I don't want to do it 2018-07-21T23:13:21Z lumm joined #lisp 2018-07-21T23:15:02Z edgar-rft: there may be ways to undefine undefined methods even further... 2018-07-21T23:18:03Z _whitelogger quit (Remote host closed the connection) 2018-07-21T23:20:06Z pjb: jmercouris: methods are global, so it would be dynamic binding, not lexical binding. 2018-07-21T23:20:55Z jmercouris: pjb: I am not interested in doing it myself, I was just brainstorming 2018-07-21T23:21:26Z _whitelogger joined #lisp 2018-07-21T23:24:42Z megalography joined #lisp 2018-07-21T23:30:17Z housel joined #lisp 2018-07-21T23:33:38Z Kundry_Wag joined #lisp 2018-07-21T23:34:09Z FreeBirdLjj joined #lisp 2018-07-21T23:34:09Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-21T23:34:25Z lumm quit (Quit: lumm) 2018-07-21T23:34:54Z gabiruh joined #lisp 2018-07-21T23:35:41Z d4ryus1 joined #lisp 2018-07-21T23:36:57Z d4ryus quit (Ping timeout: 240 seconds) 2018-07-21T23:37:27Z asarch quit (Quit: Leaving) 2018-07-21T23:38:54Z d4ryus2 joined #lisp 2018-07-21T23:40:57Z d4ryus1 quit (Ping timeout: 240 seconds) 2018-07-21T23:45:08Z kerrhau quit (Quit: ZNC 1.7.1+deb1 - https://znc.in) 2018-07-21T23:45:41Z nowhere_man joined #lisp 2018-07-21T23:46:29Z Fare quit (Ping timeout: 244 seconds) 2018-07-21T23:50:22Z jmercouris quit (Remote host closed the connection) 2018-07-21T23:51:21Z fikka quit (Ping timeout: 256 seconds) 2018-07-21T23:51:32Z nowhere_man quit (Read error: Connection reset by peer) 2018-07-21T23:52:12Z Kundry_Wag quit (Remote host closed the connection) 2018-07-21T23:53:01Z smurfrobot joined #lisp 2018-07-21T23:57:31Z quazimodo joined #lisp 2018-07-21T23:57:37Z fikka joined #lisp 2018-07-21T23:57:52Z nowhere_man joined #lisp 2018-07-21T23:57:59Z smurfrobot quit (Ping timeout: 260 seconds) 2018-07-22T00:00:02Z kozy quit (Remote host closed the connection) 2018-07-22T00:00:45Z kozy joined #lisp 2018-07-22T00:02:21Z oldtopman joined #lisp 2018-07-22T00:02:45Z fikka quit (Ping timeout: 264 seconds) 2018-07-22T00:07:54Z fikka joined #lisp 2018-07-22T00:12:17Z fikka quit (Ping timeout: 248 seconds) 2018-07-22T00:19:30Z runix_1 quit (Quit: leaving) 2018-07-22T00:25:24Z mathrick quit (Ping timeout: 265 seconds) 2018-07-22T00:27:23Z orivej joined #lisp 2018-07-22T00:27:23Z skidd0 joined #lisp 2018-07-22T00:27:47Z fikka joined #lisp 2018-07-22T00:29:38Z mathrick joined #lisp 2018-07-22T00:32:09Z skidd0: anyone using postmodern, how do you handle database migrations and alterations during development? 2018-07-22T00:32:28Z fikka quit (Ping timeout: 244 seconds) 2018-07-22T00:33:59Z gabiruh quit (Ping timeout: 276 seconds) 2018-07-22T00:40:20Z Thorondor[m]: I think postmodern doesn't have anything for doing that, you will have to do it yourself. 2018-07-22T00:44:30Z pjb quit (Ping timeout: 256 seconds) 2018-07-22T00:48:01Z fikka joined #lisp 2018-07-22T00:53:14Z svillemot quit (Ping timeout: 260 seconds) 2018-07-22T00:53:41Z fikka quit (Ping timeout: 256 seconds) 2018-07-22T00:58:38Z fikka joined #lisp 2018-07-22T01:02:33Z ebrasca joined #lisp 2018-07-22T01:03:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-22T01:03:32Z ebrasca quit (Remote host closed the connection) 2018-07-22T01:04:09Z ebrasca joined #lisp 2018-07-22T01:09:02Z fikka joined #lisp 2018-07-22T01:11:02Z markoong quit (Ping timeout: 276 seconds) 2018-07-22T01:11:09Z quazimodo quit (Ping timeout: 264 seconds) 2018-07-22T01:14:17Z fikka quit (Ping timeout: 276 seconds) 2018-07-22T01:14:42Z Kundry_Wag joined #lisp 2018-07-22T01:17:12Z graphene quit (Read error: Connection reset by peer) 2018-07-22T01:18:34Z graphene joined #lisp 2018-07-22T01:19:13Z pjb joined #lisp 2018-07-22T01:19:37Z pjb is now known as Guest11393 2018-07-22T01:19:44Z Xach: skidd0: I write files to load and then load them. 2018-07-22T01:19:50Z Xach: skidd0: with psql 2018-07-22T01:20:14Z skidd0: to load the alterations? 2018-07-22T01:20:35Z skidd0: i'm coming from the ORM side to the more SQL side 2018-07-22T01:21:18Z Xach: skidd0: yes, to load the alterations. i like using SQL directly with postgres whenever possible. 2018-07-22T01:21:29Z Xach: postmodern does not offer any particular schema management features 2018-07-22T01:21:59Z X-Scale quit (Ping timeout: 260 seconds) 2018-07-22T01:22:17Z Josh_2 joined #lisp 2018-07-22T01:22:27Z skidd0: yeah i just say on the postmodern webpage that migration would be nice to have 2018-07-22T01:22:29Z [X-Scale] joined #lisp 2018-07-22T01:22:32Z skidd0: saw* 2018-07-22T01:23:04Z skidd0: i'm trying to warite something to "clean" the database of any tables 2018-07-22T01:23:07Z [X-Scale] is now known as X-Scale 2018-07-22T01:23:11Z skidd0: so i can start from scratch reliably 2018-07-22T01:24:50Z Xach: skidd0: dropping, creating the database is quite a big hammer and will do that. 2018-07-22T01:25:09Z PuercoPop: skidd0: if you want migrations CRANE offers https://github.com/eudoxia0/crane 2018-07-22T01:25:12Z skidd0: oh can pomo drop the whole db? 2018-07-22T01:25:37Z skidd0: PuercoPop: i want to avoid ORMs for now 2018-07-22T01:25:40Z Xach: skidd0: yes. postgres offers it as a sql statement. "DROP DATABASE whatever" 2018-07-22T01:25:48Z skidd0: until I beter understand stock SQL perspectives 2018-07-22T01:25:57Z skidd0: Xach: oh i see 2018-07-22T01:26:12Z skidd0: so that's be an (:execute :some-s-sql) 2018-07-22T01:26:47Z skidd0: okay, i guess i need to dive into the postgres docs more 2018-07-22T01:27:34Z skidd0: Xach: with that, postmodern want's a database as part of the with-connection macro 2018-07-22T01:27:40Z skidd0: and to connect to a database 2018-07-22T01:28:02Z skidd0: how do you run a DROP DATABASE on the database you're connected to? 2018-07-22T01:28:20Z Xach: skidd0: you don't. you connect to one of the standard databases like "template1". 2018-07-22T01:28:27Z Xach: I think there may be a more suitable one. 2018-07-22T01:28:57Z Xach: Anything in template1 will be part of a database created by CREATE DATABASE foo, iirc. 2018-07-22T01:29:04Z Xach: this drifts from lisp a bit 2018-07-22T01:29:05Z fikka joined #lisp 2018-07-22T01:29:38Z skidd0: I see that there's a "postgres" db as well as the "template1 2018-07-22T01:30:15Z Xach: Perhaps the best to use - check the postgres docs (which are very good) to be certain 2018-07-22T01:30:36Z gabiruh joined #lisp 2018-07-22T01:31:45Z skidd0: yeah very good, very extensive 2018-07-22T01:31:57Z skidd0: gonna be digging here for a bit probably 2018-07-22T01:32:09Z skidd0: unless anyone knows an even more concise postgres overview 2018-07-22T01:32:31Z skidd0: and/or raw sql in general 2018-07-22T01:33:57Z fikka quit (Ping timeout: 244 seconds) 2018-07-22T01:35:02Z Xach: dim wrote a book on postgres. and he wrote a very great -to-postgres converter, pgloader. 2018-07-22T01:35:27Z Xach: it is a lisp program 2018-07-22T01:36:00Z skidd0: w/e-to-pg meaning.. other db dialects? 2018-07-22T01:36:14Z skidd0: or like an ORM Object to SQL Data 2018-07-22T01:36:47Z skidd0: okay i got dropping all the tables to work 2018-07-22T01:37:02Z skidd0: now i need dropping and creating the whole db 2018-07-22T01:37:11Z skidd0: this is fun 2018-07-22T01:39:25Z skidd0: Xach: do you have a link or googleable phrase for his book? 2018-07-22T01:41:42Z smurfrobot joined #lisp 2018-07-22T01:43:20Z Xach: skidd0: https://masteringpostgresql.com 2018-07-22T01:43:28Z elfmacs joined #lisp 2018-07-22T01:43:32Z skidd0: thank you 2018-07-22T01:45:57Z smurfrobot quit (Ping timeout: 240 seconds) 2018-07-22T01:47:12Z saki joined #lisp 2018-07-22T01:48:05Z skidd0: also Xach, and anyone else, do you have anything you remember when first learning lisp that you wish you knew sooner? 2018-07-22T01:48:18Z skidd0: basically, any key advice for a new guy 2018-07-22T01:49:20Z fikka joined #lisp 2018-07-22T01:51:48Z Guest11393 quit (Ping timeout: 256 seconds) 2018-07-22T01:52:58Z Xach: start making stuff, keep trying to do it better, ask for people to look at what you've done and suggest improvements or make you aware of stuff that would make life easier, interact with people and show your work 2018-07-22T01:53:46Z gabiruh quit (Ping timeout: 264 seconds) 2018-07-22T01:54:07Z Josh_2: skidd0: programming newb or lisp newb? 2018-07-22T01:54:12Z skidd0: lisp newb 2018-07-22T01:54:21Z skidd0: thanks Xach 2018-07-22T01:54:22Z fikka quit (Ping timeout: 268 seconds) 2018-07-22T01:54:44Z skidd0: I'm going to put my "learn lisp" to-do program on github once i've got a working version 2018-07-22T01:55:02Z skidd0: i'll post a link here once i do that for anyone interested in doing a code review 2018-07-22T01:56:16Z omilu joined #lisp 2018-07-22T01:57:18Z jeosol: I agree with start to build stuff and refine as you go. I was able to build a very large system follow this, but I have done a lot of refactoring since. 2018-07-22T02:00:03Z FreeBirdLjj joined #lisp 2018-07-22T02:01:52Z robotoad quit (Quit: robotoad) 2018-07-22T02:02:02Z skidd0: I got really into web-dev with Flask (python) because of Miguel's well-structured Flask Mega Tutorial. I've looked at PCL, but are there other examples of project based learning for Common Lisp? 2018-07-22T02:04:34Z FreeBirdLjj quit (Ping timeout: 260 seconds) 2018-07-22T02:05:13Z FreeBirdLjj joined #lisp 2018-07-22T02:05:44Z FreeBirdLjj quit (Read error: Connection reset by peer) 2018-07-22T02:06:30Z sauvin quit (Ping timeout: 244 seconds) 2018-07-22T02:08:17Z Kundry_Wag quit (Remote host closed the connection) 2018-07-22T02:10:01Z fikka joined #lisp 2018-07-22T02:11:09Z FreeBirdLjj joined #lisp 2018-07-22T02:11:10Z makomo quit (Ping timeout: 264 seconds) 2018-07-22T02:11:37Z Kundry_Wag joined #lisp 2018-07-22T02:13:10Z sauvin joined #lisp 2018-07-22T02:14:45Z fikka quit (Ping timeout: 264 seconds) 2018-07-22T02:14:48Z robotoad joined #lisp 2018-07-22T02:16:26Z graphene quit (Remote host closed the connection) 2018-07-22T02:17:51Z graphene joined #lisp 2018-07-22T02:21:19Z sabrac: skidd0: I expect to be dropping a roadmap for potential postmodern development in another 24 hours or so. Migration support is on the roadmap 2018-07-22T02:21:39Z skidd0: oh awesome 2018-07-22T02:21:52Z jeosol: Sabrac, you are the man!!! 2018-07-22T02:22:23Z jeosol: Sabra Crolleton? 2018-07-22T02:22:29Z sabrac: yes? 2018-07-22T02:23:10Z jeosol: nice, I wanted to say this. I did benefit from your postmodern tutorials when I started, used that lib and clsql but mostly with postgresql 2018-07-22T02:23:14Z jeosol: good work man. 2018-07-22T02:25:58Z sabrac: Thank you. I want to find the time to write some tutorials that do not assume the reader already knows sql, but life gets in the way. 2018-07-22T02:26:57Z sabrac: I also get occasional reminders that I have not done a library comparison in awhile. 2018-07-22T02:28:01Z pierpa quit (Quit: Page closed) 2018-07-22T02:30:20Z fikka joined #lisp 2018-07-22T02:35:09Z fikka quit (Ping timeout: 264 seconds) 2018-07-22T02:36:51Z panji joined #lisp 2018-07-22T02:46:13Z jeosol: you planned resource on the roadmap will be useful. Will look out for it. 2018-07-22T02:46:44Z jeosol: hahaha, that's funny. The reminders about the library comparison. Those where useful for sure. The ones on Json, time libraries, and csv business 2018-07-22T02:48:49Z ebzzry joined #lisp 2018-07-22T02:50:36Z fikka joined #lisp 2018-07-22T02:53:57Z Cthulhux quit (Ping timeout: 240 seconds) 2018-07-22T02:56:39Z fikka quit (Ping timeout: 268 seconds) 2018-07-22T02:57:17Z newbie quit (Ping timeout: 245 seconds) 2018-07-22T02:58:09Z pierpal quit (Quit: Poof) 2018-07-22T02:58:26Z Kundry_Wag quit (Remote host closed the connection) 2018-07-22T02:58:27Z pierpal joined #lisp 2018-07-22T02:59:12Z orivej quit (Ping timeout: 244 seconds) 2018-07-22T03:01:11Z fikka joined #lisp 2018-07-22T03:05:39Z panji quit (Quit: Leaving.) 2018-07-22T03:06:21Z fikka quit (Ping timeout: 264 seconds) 2018-07-22T03:07:17Z Kundry_Wag joined #lisp 2018-07-22T03:14:09Z Cthulhux joined #lisp 2018-07-22T03:19:59Z light2yellow quit (Quit: light2yellow) 2018-07-22T03:21:08Z anewuser joined #lisp 2018-07-22T03:21:27Z fikka joined #lisp 2018-07-22T03:21:37Z quazimodo joined #lisp 2018-07-22T03:26:19Z asarch joined #lisp 2018-07-22T03:26:53Z fikka quit (Ping timeout: 276 seconds) 2018-07-22T03:30:53Z beach: Good morning everyone! 2018-07-22T03:32:50Z wigust- joined #lisp 2018-07-22T03:35:53Z wigust quit (Ping timeout: 244 seconds) 2018-07-22T03:36:51Z Lord_Nightmare quit (Quit: ZNC - http://znc.in) 2018-07-22T03:39:23Z marusich joined #lisp 2018-07-22T03:40:20Z Lord_Nightmare joined #lisp 2018-07-22T03:41:29Z FreeBird_ joined #lisp 2018-07-22T03:41:40Z FreeBirdLjj quit (Ping timeout: 268 seconds) 2018-07-22T03:41:46Z fikka joined #lisp 2018-07-22T03:42:35Z skidd0: good morning beach 2018-07-22T03:46:29Z Kundry_Wag quit (Remote host closed the connection) 2018-07-22T03:46:41Z fikka quit (Ping timeout: 248 seconds) 2018-07-22T03:48:02Z equwal joined #lisp 2018-07-22T03:49:04Z LdBeth: Sup 2018-07-22T03:50:23Z fikka joined #lisp 2018-07-22T03:52:53Z equwal quit (Ping timeout: 276 seconds) 2018-07-22T03:54:02Z skidd0: sabrac: i see create-all-tables and create-package-tables, but neither seem to create the tables i identify when i (defclass something .. :table-name somethings) 2018-07-22T03:54:41Z skidd0: do i need to explicitely call (dao-table-definition 'something) for each class? 2018-07-22T03:56:08Z fikka quit (Ping timeout: 276 seconds) 2018-07-22T03:57:38Z cgay_ joined #lisp 2018-07-22T03:57:42Z equwal joined #lisp 2018-07-22T03:58:22Z Josh_2 quit (Quit: ERC (IRC client for Emacs 25.3.1)) 2018-07-22T04:00:57Z fikka joined #lisp 2018-07-22T04:04:12Z jeosol: morning beach 2018-07-22T04:04:23Z jeosol: good morning beach 2018-07-22T04:04:58Z Fare joined #lisp 2018-07-22T04:06:13Z asarch: Is the content of HyperSpec Lisp the same as "ANSI Common Lisp" book? 2018-07-22T04:06:32Z fikka quit (Ping timeout: 276 seconds) 2018-07-22T04:07:34Z skidd0: no 2018-07-22T04:07:45Z skidd0: ANSI Common Lisp by Paul Graham? 2018-07-22T04:08:40Z asarch: Yeah, that book 2018-07-22T04:10:27Z beach: asarch: Yes, the Common Lisp HyperSpec has only minor differences compared to the ANSI standard. 2018-07-22T04:11:03Z beach: asarch: But Paul Graham does not mention the full language. 2018-07-22T04:12:10Z karlosz quit (Quit: karlosz) 2018-07-22T04:13:25Z asarch: What do you mean with "the full language"? 2018-07-22T04:13:49Z beach: The book is too thin to mention every function, every macro, every class, every special form. 2018-07-22T04:13:59Z asarch: I see 2018-07-22T04:15:48Z asarch: Since I already know Kung-Fu, I was thinking to get a book about, for example, "how would I parse a file reading only...?" to check those functions related 2018-07-22T04:16:01Z Kundry_Wag joined #lisp 2018-07-22T04:16:25Z asarch: There is a package of HyperSpec Lisp in OpenBSD ports 2018-07-22T04:17:02Z asarch: The Common Lisp HyperSpec (TM) from LispWorks Ltd. The Common Lisp HyperSpec is a hypertext version of the ANSI Common Lisp 2018-07-22T04:17:02Z asarch: standard. 2018-07-22T04:17:48Z asarch: clisp-hyperspec-7.0.tgz 2018-07-22T04:17:55Z graphene quit (Remote host closed the connection) 2018-07-22T04:18:22Z terpri quit (Ping timeout: 264 seconds) 2018-07-22T04:18:26Z beach: Almost, but not quite. The standard is owned by ANSI and not even LispWorks has the right to create a derived work from it. However, the draft standard is available for everyone to use, and there are only very minor differences between the draft and the final standard. 2018-07-22T04:18:46Z asarch: Is it expensive the standard? 2018-07-22T04:19:06Z asarch: I mean, could I buy a copy and then use that info as reference manual? 2018-07-22T04:19:15Z beach: Maybe. And they lost the source so they only sell badly scanned copies of it. 2018-07-22T04:19:17Z graphene joined #lisp 2018-07-22T04:19:29Z asarch: D'oh! 2018-07-22T04:19:31Z asarch: Really? 2018-07-22T04:19:35Z beach: What is it that you want to do? 2018-07-22T04:20:05Z asarch: The STL (for C/C++) reference manual for Common Lisp? 2018-07-22T04:20:11Z beach: For all practical purposes, the Common Lisp HyperSpec is the reference. Except if you want to include it in the bibliography of a paper or a book. Then you need to refer to the standard. 2018-07-22T04:20:34Z beach: Again, what is it that you want to do? 2018-07-22T04:20:42Z beach: Create a manual and publish it? 2018-07-22T04:20:47Z beach: Just use it on your machine? 2018-07-22T04:20:48Z asarch: No, for my personal use 2018-07-22T04:20:55Z beach: Then copy the Common Lisp HyperSpec. 2018-07-22T04:21:11Z beach: LispWorks explicitly gives you the right to do that. 2018-07-22T04:21:12Z fikka joined #lisp 2018-07-22T04:22:05Z asarch: Just the same I did with the PCL web: to get a hard copy and then read it every time I want to know something specific 2018-07-22T04:22:21Z beach: Oh, you want a paper version? 2018-07-22T04:22:26Z asarch: Yeah 2018-07-22T04:22:39Z beach: Then use the dpANS draft. It is in TeX format and it is free to use. 2018-07-22T04:22:58Z beach: Someone recently did a script to create a complete PDF for it. 2018-07-22T04:23:18Z asarch: YESSS!!! 2018-07-22T04:23:26Z asarch: Thank you beach, thank you very much 2018-07-22T04:23:35Z asarch: Why it is a "draft"? 2018-07-22T04:23:39Z asarch: A draft about what? 2018-07-22T04:23:43Z asarch takes notes... 2018-07-22T04:23:53Z beach: "draft" means "not the final version". 2018-07-22T04:24:07Z beach: It is the version that was distributed for people to comment on. 2018-07-22T04:24:36Z beach: The contents is identical to that of the Common Lisp HyperSpec, because LispWorks used the draft to create the Common Lisp HyperSpec. 2018-07-22T04:25:09Z beach: asarch: Are you sure you want that though. It is around 1000 pages as I recall. 2018-07-22T04:25:50Z asarch: :'-( 2018-07-22T04:26:36Z asarch: Every page cost $0.3 with large volumes here in México 2018-07-22T04:26:41Z fikka quit (Ping timeout: 276 seconds) 2018-07-22T04:26:55Z asarch: I could ask full duplex for that 2018-07-22T04:27:37Z asarch: Is still the Meta Class System available in Common Lisp? 2018-07-22T04:27:49Z beach: ? 2018-07-22T04:28:01Z beach: What is the "Meta Class System"? 2018-07-22T04:28:42Z asarch: I found a paper about it 2018-07-22T04:29:08Z beach: Do you have a reference? 2018-07-22T04:30:00Z asarch: Sure. I am uploading the file to the Mega cloud 2018-07-22T04:31:14Z beach: The title, the authors, and the abstract would be enough. 2018-07-22T04:31:14Z Fare quit (Ping timeout: 276 seconds) 2018-07-22T04:35:16Z asarch: Sorry, medical emergency. I'll post you later 2018-07-22T04:37:55Z Arcaelyx quit (Quit: Textual IRC Client: www.textualapp.com) 2018-07-22T04:37:55Z Kundry_Wag quit (Remote host closed the connection) 2018-07-22T04:40:05Z asarch quit (Quit: Leaving) 2018-07-22T04:41:02Z Kundry_Wag joined #lisp 2018-07-22T04:41:31Z fikka joined #lisp 2018-07-22T04:42:53Z Fare joined #lisp 2018-07-22T04:46:44Z fikka quit (Ping timeout: 260 seconds) 2018-07-22T04:49:37Z Fare quit (Ping timeout: 248 seconds) 2018-07-22T04:51:17Z beach: minion: memo for asarch: Here is a site that has a full PDF of the standard: http://cvberry.com/tech_writings/notes/common_lisp_standard_draft.html and it contains 1360 pages (rather than the 1000 I was guessing). 2018-07-22T04:51:18Z minion: Remembered. I'll tell asarch when he/she/it next speaks. 2018-07-22T04:51:37Z beach: Sorr, of the DRAFT, not of the standard. 2018-07-22T04:51:42Z beach: y 2018-07-22T04:52:00Z fikka joined #lisp 2018-07-22T04:52:57Z d4ryus3 joined #lisp 2018-07-22T04:53:54Z d4ryus2 quit (Ping timeout: 244 seconds) 2018-07-22T04:56:29Z fikka quit (Ping timeout: 244 seconds) 2018-07-22T05:00:53Z smurfrobot joined #lisp 2018-07-22T05:02:22Z fikka joined #lisp 2018-07-22T05:05:35Z smurfrobot quit (Ping timeout: 240 seconds) 2018-07-22T05:07:34Z fikka quit (Ping timeout: 264 seconds) 2018-07-22T05:14:28Z Pixel_Outlaw quit (Quit: Leaving) 2018-07-22T05:14:41Z smurfrobot joined #lisp 2018-07-22T05:16:17Z d4ryus3 quit (Ping timeout: 248 seconds) 2018-07-22T05:16:34Z LdBeth: The ANSI standard can be obtained for $60, but I don’t see there’s much difference in contents, and it’s a photo scanned PDF. 2018-07-22T05:17:43Z nika joined #lisp 2018-07-22T05:18:07Z d4ryus3 joined #lisp 2018-07-22T05:21:04Z graphene quit (Remote host closed the connection) 2018-07-22T05:22:29Z graphene joined #lisp 2018-07-22T05:22:31Z fikka joined #lisp 2018-07-22T05:27:21Z fikka quit (Ping timeout: 264 seconds) 2018-07-22T05:27:33Z smurfrobot quit (Remote host closed the connection) 2018-07-22T05:30:14Z rumbler31 joined #lisp 2018-07-22T05:31:58Z orivej joined #lisp 2018-07-22T05:32:59Z igemnace joined #lisp 2018-07-22T05:34:34Z vhost- quit (Ping timeout: 260 seconds) 2018-07-22T05:35:35Z rumbler31 quit (Ping timeout: 276 seconds) 2018-07-22T05:35:37Z DonVlad joined #lisp 2018-07-22T05:36:17Z phadthai quit (Remote host closed the connection) 2018-07-22T05:39:12Z smurfrobot joined #lisp 2018-07-22T05:42:47Z fikka joined #lisp 2018-07-22T05:44:04Z Kundry_Wag quit (Remote host closed the connection) 2018-07-22T05:47:56Z fikka quit (Ping timeout: 276 seconds) 2018-07-22T05:49:45Z smurfrobot quit (Remote host closed the connection) 2018-07-22T05:54:49Z anewuser quit (Quit: anewuser) 2018-07-22T05:56:36Z smurfrobot joined #lisp 2018-07-22T05:59:20Z zaquest joined #lisp 2018-07-22T06:03:30Z fikka joined #lisp 2018-07-22T06:08:24Z fikka quit (Ping timeout: 260 seconds) 2018-07-22T06:11:45Z Bike quit (Quit: Lost terminal) 2018-07-22T06:12:36Z newbie joined #lisp 2018-07-22T06:13:57Z fikka joined #lisp 2018-07-22T06:14:11Z terpri joined #lisp 2018-07-22T06:15:32Z smurfrobot quit (Remote host closed the connection) 2018-07-22T06:15:38Z asarch joined #lisp 2018-07-22T06:15:55Z asarch: Bleh! Mega server doesn't work on OpenBSD 2018-07-22T06:15:56Z minion: asarch, memo from beach: Here is a site that has a full PDF of the standard: http://cvberry.com/tech_writings/notes/common_lisp_standard_draft.html and it contains 1360 pages (rather than the 1000 I was guessing). 2018-07-22T06:16:10Z asarch: Thank you!!! 2018-07-22T06:16:16Z asarch: Thank you very much :-) 2018-07-22T06:16:37Z asarch: Could I e-mail you the paper about MCS? 2018-07-22T06:17:34Z asarch: "Many people apparently use the Common Lisp Hyperspec, but I personally find this document highly confusing and difficult to learn from in any meaningful way." <- I thought I was the only one 2018-07-22T06:18:55Z fikka quit (Ping timeout: 268 seconds) 2018-07-22T06:19:58Z beach: Sure, you can email it to me. 2018-07-22T06:20:36Z beach: The Common Lisp HyperSpec is not meant to be learned from. It is meant for people who implement Common Lisp systems. 2018-07-22T06:20:56Z beach: Also as a reference document for those who already know how to use Common Lisp. 2018-07-22T06:22:08Z nika quit (Quit: Leaving...) 2018-07-22T06:22:24Z dddddd quit (Remote host closed the connection) 2018-07-22T06:24:16Z beach: asarch: I am off for a while. Back in a few hours. 2018-07-22T06:24:21Z asarch: Sure 2018-07-22T06:24:26Z asarch: Have a nice day :-) 2018-07-22T06:24:31Z asarch: Thanks for the link 2018-07-22T06:27:52Z smurfrobot joined #lisp 2018-07-22T06:31:44Z orivej quit (Ping timeout: 260 seconds) 2018-07-22T06:32:35Z smurfrobot quit (Ping timeout: 244 seconds) 2018-07-22T06:33:57Z fikka joined #lisp 2018-07-22T06:36:25Z vlatkoB joined #lisp 2018-07-22T06:37:17Z asarch: Here is the document in Dropbox: https://www.dropbox.com/s/2swg57jeouwd5w0/The%20Meta%20Class%20System%20MCS-%20A%20Portable%20Object%20System%20for%20Common%20Lisp.pdf?dl=0 2018-07-22T06:39:17Z fikka quit (Ping timeout: 276 seconds) 2018-07-22T06:48:04Z saki quit (Ping timeout: 260 seconds) 2018-07-22T06:48:29Z saki joined #lisp 2018-07-22T06:52:41Z phoe: 1991. That's before the standardization. 2018-07-22T06:52:50Z phoe: And before the inclusion of CLOS in the standard, obviously. 2018-07-22T06:54:16Z fikka joined #lisp 2018-07-22T06:56:14Z Arcaelyx joined #lisp 2018-07-22T06:59:09Z fikka quit (Ping timeout: 264 seconds) 2018-07-22T07:03:48Z asarch: D'oh! 2018-07-22T07:04:29Z asarch: That was my next question: "who was first, MCS or CLOS?" 2018-07-22T07:04:34Z asarch: Anyway, thank you phoe 2018-07-22T07:04:37Z asarch: Thank you very much :-) 2018-07-22T07:09:20Z zigpaw quit (Remote host closed the connection) 2018-07-22T07:09:35Z zigpaw joined #lisp 2018-07-22T07:11:57Z shka1 joined #lisp 2018-07-22T07:14:56Z fikka joined #lisp 2018-07-22T07:16:01Z LdBeth: asarch: CLOS is very late, before it is CommonLoops and Flavor 2018-07-22T07:16:12Z _death: https://github.com/g000001/mcs 2018-07-22T07:17:23Z LdBeth: asarch: but obviously MCS is after CLOS 2018-07-22T07:19:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-22T07:25:22Z fikka joined #lisp 2018-07-22T07:30:27Z fikka quit (Ping timeout: 268 seconds) 2018-07-22T07:33:45Z asarch: Is MCS still alive? 2018-07-22T07:38:18Z slyrus1 quit (Quit: slyrus1) 2018-07-22T07:39:12Z asarch: I guess not 2018-07-22T07:39:31Z asarch: CLOS is now the defacto standard, isn't it? 2018-07-22T07:39:54Z _death: it's also the de jure standard.. 2018-07-22T07:43:38Z d4ryus3 quit (Ping timeout: 276 seconds) 2018-07-22T07:44:10Z slyrus1 joined #lisp 2018-07-22T07:44:57Z quazimodo quit (Ping timeout: 240 seconds) 2018-07-22T07:45:22Z fikka joined #lisp 2018-07-22T07:47:09Z quazimodo joined #lisp 2018-07-22T07:48:42Z svillemot joined #lisp 2018-07-22T07:50:11Z fikka quit (Ping timeout: 268 seconds) 2018-07-22T07:50:34Z asarch: I see 2018-07-22T07:50:48Z asarch: Thank you 2018-07-22T07:50:53Z asarch: Thank you very much 2018-07-22T07:51:01Z asarch quit (Quit: Leaving) 2018-07-22T07:51:58Z smurfrobot joined #lisp 2018-07-22T07:55:33Z equwal quit (Ping timeout: 264 seconds) 2018-07-22T07:56:22Z wigust- quit (Quit: ZNC 1.7.0 - https://znc.in) 2018-07-22T07:56:54Z smurfrobot quit (Ping timeout: 260 seconds) 2018-07-22T07:57:11Z graphene quit (Remote host closed the connection) 2018-07-22T07:58:32Z graphene joined #lisp 2018-07-22T08:02:53Z igemnace quit (Remote host closed the connection) 2018-07-22T08:04:31Z phadthai joined #lisp 2018-07-22T08:06:01Z fikka joined #lisp 2018-07-22T08:11:09Z fikka quit (Ping timeout: 256 seconds) 2018-07-22T08:16:27Z fikka joined #lisp 2018-07-22T08:20:49Z quazimodo quit (Ping timeout: 260 seconds) 2018-07-22T08:20:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-22T08:22:45Z quazimodo joined #lisp 2018-07-22T08:26:19Z vhost- joined #lisp 2018-07-22T08:26:19Z vhost- quit (Changing host) 2018-07-22T08:26:19Z vhost- joined #lisp 2018-07-22T08:26:33Z fikka joined #lisp 2018-07-22T08:27:42Z robotoad quit (Quit: robotoad) 2018-07-22T08:30:44Z pierpal quit (Ping timeout: 260 seconds) 2018-07-22T08:31:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-22T08:36:43Z fikka joined #lisp 2018-07-22T08:37:56Z makomo joined #lisp 2018-07-22T08:38:08Z ebrasca quit (Read error: Connection reset by peer) 2018-07-22T08:38:24Z ebrasca joined #lisp 2018-07-22T08:40:51Z angavrilov joined #lisp 2018-07-22T08:41:45Z fikka quit (Ping timeout: 264 seconds) 2018-07-22T08:56:46Z fikka joined #lisp 2018-07-22T09:01:32Z pierpal joined #lisp 2018-07-22T09:02:09Z fikka quit (Ping timeout: 256 seconds) 2018-07-22T09:02:10Z pierpal quit (Remote host closed the connection) 2018-07-22T09:03:11Z graphene quit (Remote host closed the connection) 2018-07-22T09:04:17Z pagnol joined #lisp 2018-07-22T09:04:31Z graphene joined #lisp 2018-07-22T09:07:22Z fikka joined #lisp 2018-07-22T09:11:41Z trittweiler joined #lisp 2018-07-22T09:11:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-22T09:17:54Z fikka joined #lisp 2018-07-22T09:22:15Z orivej joined #lisp 2018-07-22T09:22:34Z fikka quit (Ping timeout: 244 seconds) 2018-07-22T09:34:06Z milanj quit (Quit: This computer has gone to sleep) 2018-07-22T09:37:48Z fikka joined #lisp 2018-07-22T09:38:49Z marusich quit (Quit: Leaving) 2018-07-22T09:42:21Z buoyantair joined #lisp 2018-07-22T09:42:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-22T09:42:49Z random-nick joined #lisp 2018-07-22T09:44:40Z lumm joined #lisp 2018-07-22T09:45:36Z pjb joined #lisp 2018-07-22T09:45:46Z pjb is now known as Guest24137 2018-07-22T09:47:45Z rotty quit (Ping timeout: 264 seconds) 2018-07-22T09:48:16Z fikka joined #lisp 2018-07-22T09:49:32Z puchacz joined #lisp 2018-07-22T09:50:17Z puchacz: hi, will sorting be faster if I am only interested in top N elements? and have we got library for it? 2018-07-22T09:51:59Z beach: Definitely faster. I am not sure there is a library for it. 2018-07-22T09:52:04Z beach: Is it a list or a vector? 2018-07-22T09:52:16Z puchacz: I can make it a vector 2018-07-22T09:52:38Z beach: A displaced array might work. 2018-07-22T09:53:10Z fikka quit (Ping timeout: 264 seconds) 2018-07-22T09:55:27Z beach: It seems to work. 2018-07-22T09:55:38Z puchacz: beach, what did you do pls? 2018-07-22T09:56:09Z beach: (defparameter *v* (make-array N :displaced to )) 2018-07-22T09:56:15Z beach: Then (sort *v* #'...) 2018-07-22T09:56:34Z beach: er, :displace-to 2018-07-22T09:56:41Z puchacz: so how does it take into account that we want top N? 2018-07-22T09:56:57Z beach: See the argument to MAKE-ARRAY? 2018-07-22T09:56:59Z beach: it is N 2018-07-22T09:57:06Z puchacz: ah, ok :) 2018-07-22T09:57:42Z puchacz: thanks! 2018-07-22T09:57:50Z puchacz: I have another related problem 2018-07-22T09:58:08Z newbie quit (Read error: Connection reset by peer) 2018-07-22T09:58:11Z beach: Don't we all? 2018-07-22T09:58:11Z puchacz: I can run few database SELECTs, each can be ORDERed BY 2018-07-22T09:58:48Z puchacz: and then I want top N from concatenation of result..... 2018-07-22T09:58:57Z puchacz: mind that each resultset is already sorted 2018-07-22T09:59:27Z puchacz: (sort (reduce #'append result-sets :from-end t) sorter-func) seems soooo wasteful 2018-07-22T09:59:28Z _death: if you're interest in the top N elements, then you don't need a full sort.. I'm not sure what a displaced vector has to do with it 2018-07-22T09:59:40Z shka1: puchacz: merge it 2018-07-22T10:00:02Z puchacz: shka1: "merge sort" as a name of algorithm rings a bell 2018-07-22T10:00:12Z beach: _death: It selects the top N elements. 2018-07-22T10:00:14Z shka1: yeah, but not merge sort 2018-07-22T10:00:16Z shka1: just merge 2018-07-22T10:00:51Z puchacz: how? 2018-07-22T10:00:57Z beach: clhs merge 2018-07-22T10:00:57Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_merge.htm 2018-07-22T10:01:02Z puchacz: ah, thanks 2018-07-22T10:01:08Z _death: beach: suppose you have #(1 3 2 4) and you need the two largest elements.. how would that work? 2018-07-22T10:01:38Z beach: Oh, maybe I misunderstood. 2018-07-22T10:01:49Z Guest24137: _death: you would have to implement your own algorithm to drop the elements you don't want. 2018-07-22T10:01:52Z Guest24137 is now known as pjb` 2018-07-22T10:01:54Z beach: By "top N" I assumed the first N. 2018-07-22T10:02:07Z puchacz: top N - N largest elements 2018-07-22T10:02:17Z beach: Oh, sorry then. 2018-07-22T10:03:02Z _death: I think a heap structure may work 2018-07-22T10:03:05Z pjb` is now known as pjb 2018-07-22T10:03:38Z puchacz: shka1: merge does not let me take top N either 2018-07-22T10:03:41Z beach: Yeah, that or quicksort but recursively sorting only half. 2018-07-22T10:03:47Z shka1: puchacz: write your own 2018-07-22T10:03:57Z shka1: merge-into or something like that 2018-07-22T10:04:04Z puchacz: shka1: it seems I will have to 2018-07-22T10:04:05Z Ven`` joined #lisp 2018-07-22T10:04:14Z pjb: Actually, you can collect the N biggest elements in O(M). then sort them in O(N*log(N)). 2018-07-22T10:04:37Z beach: What is M? 2018-07-22T10:04:46Z puchacz: pjb: true. I think pjb means N, not M 2018-07-22T10:04:48Z shka1: number of vectors 2018-07-22T10:05:04Z pjb: with M=(length vector) and N being the top N parameter. 2018-07-22T10:05:17Z puchacz: okay 2018-07-22T10:05:22Z puchacz: I should try 2018-07-22T10:05:24Z puchacz: thanks! 2018-07-22T10:06:31Z shka1: puchacz: https://github.com/sirherrbatka/cl-data-structures/blob/6ae7362c0828a2e3eb4e8c9fcff1268e1221d0fc/src/utils/ordered-algorithms.lisp#L18 just limit the number of iterations in the main loop starting at line 44 2018-07-22T10:07:30Z hhdave joined #lisp 2018-07-22T10:08:20Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-22T10:08:41Z fikka joined #lisp 2018-07-22T10:10:23Z hhdave_ joined #lisp 2018-07-22T10:11:57Z hhdave quit (Ping timeout: 240 seconds) 2018-07-22T10:11:57Z hhdave_ is now known as hhdave 2018-07-22T10:13:12Z fikka quit (Ping timeout: 244 seconds) 2018-07-22T10:15:59Z rotty joined #lisp 2018-07-22T10:17:00Z smurfrobot joined #lisp 2018-07-22T10:22:14Z smurfrobot quit (Ping timeout: 276 seconds) 2018-07-22T10:23:46Z rozenglass joined #lisp 2018-07-22T10:24:26Z Baggers joined #lisp 2018-07-22T10:27:44Z johnnymacs joined #lisp 2018-07-22T10:27:52Z johnnymacs: Is garbace collection in the lisp specification 2018-07-22T10:28:16Z fikka joined #lisp 2018-07-22T10:28:31Z beach: No. 2018-07-22T10:28:47Z johnnymacs: Then the satement "lisp is not suitable for kernel writing because it has garbage collection" iis objectively false. 2018-07-22T10:29:10Z johnnymacs: However if you said "sbcl is..." then it is techincally true unless you edit sbcl to not have garbage collection 2018-07-22T10:29:14Z johnnymacs: afaik 2018-07-22T10:29:32Z beach: Yes, the person who uttered that would have to come up with a reason why kernels could not have garbage collectors as well. 2018-07-22T10:29:37Z pjb: For example, Movitz is a CL implementation without a GC. 2018-07-22T10:29:45Z pjb: Since it was designed to write kernels… 2018-07-22T10:29:52Z random-nick: also, Mezzano is an OS with garbage collection 2018-07-22T10:29:53Z beach: pjb: Oh? 2018-07-22T10:30:15Z pjb: Which disproves the above statements two ways. 2018-07-22T10:30:19Z johnnymacs: One could argue because it is so expensive to port all linux software to a new and radically different kernel and because it is also so expensive to add garbage collection to the linux that they refuse to accept it 2018-07-22T10:30:28Z johnnymacs: *to a new kernel 2018-07-22T10:30:58Z beach: johnnymacs: That's a different argument all together. 2018-07-22T10:31:07Z johnnymacs: Indeed 2018-07-22T10:31:08Z jackdaniel: johnnymacs: I think that what the claim really is (as in sense - means) is that language without manual memory managament is not suitable to write kernels. I don't have opinion on that, just pointing out that taking causal claims verbatim and 'disproving' them is not especially ahrd 2018-07-22T10:31:27Z hhdave quit (Ping timeout: 240 seconds) 2018-07-22T10:31:30Z johnnymacs: thoughough that particular argument has to do with real world logistics thus making it more complicated than abstract things like the hyperspec 2018-07-22T10:31:37Z beach: johnnymacs: While garbage collection is not in the specification, in practice you must have it. 2018-07-22T10:31:38Z johnnymacs: lots of mutable state involved in indsutry 2018-07-22T10:32:29Z beach: johnnymacs: So "SBCL is ..." is not technically true either. 2018-07-22T10:32:36Z johnnymacs: sure 2018-07-22T10:32:58Z johnnymacs: What would you say to someone who thinks a kernel should not have garbage collection 2018-07-22T10:33:12Z pjb: Give a good reason why? 2018-07-22T10:33:27Z svillemot quit (Ping timeout: 240 seconds) 2018-07-22T10:33:28Z jackdaniel: that he might be right, but there is no evidence for that 2018-07-22T10:33:33Z beach: johnnymacs: That he or she would have to make an argument for it, and that argument would be easy to poke holes in. 2018-07-22T10:33:33Z johnnymacs: Well I don't know why they think that because I am not a kernel writer. I was hoping you would have a guess as to why they think that 2018-07-22T10:33:51Z johnnymacs: Do you have an idea of what arguments they commonly give? 2018-07-22T10:33:51Z pjb: Notice that linux, minix, etc all have a whole module consacred to memory management. 2018-07-22T10:34:10Z beach: johnnymacs: Many people think that GC is slower than manual memory management, or that it must have long pauses. Neither is true. 2018-07-22T10:34:25Z jackdaniel: johnnymacs: one argument could be GC pauses; another could be overhead (and kernel must be as fast as it can) etc. of course these are arguable 2018-07-22T10:34:28Z svillemot joined #lisp 2018-07-22T10:34:35Z beach: johnnymacs: So it usually shows the ignorance of the person in question. 2018-07-22T10:34:59Z beach: jackdaniel: Tracing GC is typically way faster than malloc()/free(). 2018-07-22T10:35:04Z johnnymacs: True but when I argue with them they will call me ignorant and their friends will be convinced they are right and all gang up on me asking me for evidence 2018-07-22T10:35:28Z beach: johnnymacs: Oh, I strongly advise you to avoid such an argument. 2018-07-22T10:35:54Z beach: johnnymacs: Instead, just ask questions... 2018-07-22T10:35:55Z johnnymacs: The thing is i am really strongly convinced that SBCL is a superior language than most languages but it is hard to convince others of it. 2018-07-22T10:35:57Z jackdaniel: beach: could be, I'm not familiar with the subject enough to argue. I could guess, that some tradeoff exists, i.e long pauses OR moderate overhead 2018-07-22T10:36:23Z beach: johnnymacs: "Why do you think GC is unsuited?" 2018-07-22T10:36:40Z beach: johnnymacs: "What makes you think necessarily has GC has long pauses?" 2018-07-22T10:36:51Z johnnymacs: I still do not think I am at the point where no matter what answer they give I will have a comeback demonstrating gc is just as suited 2018-07-22T10:36:56Z beach: johnnymacs: "What makes you think that real-time GC is impossible?" 2018-07-22T10:37:12Z beach: johnnymacs: That's why I say, don't answer, just ask. 2018-07-22T10:37:14Z johnnymacs: You can ask that question because you possess the knowledge to poke holes in their argument 2018-07-22T10:37:22Z pjb: Basically, it's like you're comparing two 400 m runners. They argue whether you're taking the inside lane or the outside line, and whether you have crocheted shoes or not. But lisp just cut straight thru the grass toward the finish line. 2018-07-22T10:37:24Z puchacz: shka1: thanks for the link 2018-07-22T10:37:37Z zmt01 joined #lisp 2018-07-22T10:37:48Z beach: johnnymacs: No, just answer that you would like to see the reference. 2018-07-22T10:38:22Z beach: johnnymacs: Just don't be satisfied with the "Oh, everybody knows that" answer. 2018-07-22T10:38:23Z johnnymacs: beach: invariably if I do not fully undestand or not if the reference proves garabge collection is bad I will have to come hear for your evidence for why it is a hole in thair argument 2018-07-22T10:38:30Z johnnymacs: until I stop coming across holes I can not identify 2018-07-22T10:39:33Z beach: johnnymacs: I strongly advise against arguing. Just ask them to justify. In the end you can accept the argument if you like, or come back later with a pointer to an article that says the contrary. 2018-07-22T10:40:08Z beach: johnnymacs: Like if they say "real-time GC is not possible", you show them (later) the chapter from the book or an article about it. 2018-07-22T10:40:13Z johnnymacs: I consider it worth my time to convince the world of the speriority of languages which are written in compliance and according to the philosophy of the common lisp hyperspec until more efficient yet equally capable hyperspec comes along. 2018-07-22T10:40:51Z johnnymacs: Or even a more capable hyperspec which is unlikely unless we invent a new kind of computer. 2018-07-22T10:40:54Z beach: johnnymacs: You are wasting your time. People won't let themselves be convinced that easily. 2018-07-22T10:41:10Z mm__redacted quit (Ping timeout: 265 seconds) 2018-07-22T10:41:18Z jackdaniel doesn't believe in superiority among incomparable (in sense of aesthetics, functionality, hackability etc) languages 2018-07-22T10:41:33Z johnnymacs: Let me express this then 2018-07-22T10:42:12Z jackdaniel: also this may be a bad strategy to convert people to the language you like: your language sucks because mine is better (in essence!) ;-) 2018-07-22T10:42:32Z johnnymacs: brainfuck is as superior as lisp because you can use brainfuck to write a lisp compliant with the common lisp hyperspec and run it. However it takes more work to do that in brainfuck than it takes to do it in sbcl thus making sbcl the victor. And if you are in braknfuck and you don't add in the capabilities of common lisp it objectively is worse thanc common lisp. 2018-07-22T10:42:36Z beach: johnnymacs: The psychological barriers are just way too great. You are asking people who spent many years of their life investing time and energy into a particular technology to admit that they made the wrong choice. Our brains have very strong mechanisms preventing that. 2018-07-22T10:43:08Z johnnymacs: First of all I think anyone who is willing to listen to evidenc and has the capacity to understand lisp will given enough tiem see the truth about lisp if explained to them with the right algorithm. 2018-07-22T10:43:27Z johnnymacs: Second of all I find humans to be a resource which should be allocated to lisp instead of python whenever possible. 2018-07-22T10:43:29Z pjb: Most languages are not intrinsically bad (thinking of C here). But people using them may be bad (or ignorant). Trying to convince them using a better programming language won't necessarily make them better, just bring bad programmers to the good language… 2018-07-22T10:43:31Z johnnymacs: or schem 2018-07-22T10:43:32Z beach: johnnymacs: That just isn't true. 2018-07-22T10:43:33Z johnnymacs: either one 2018-07-22T10:43:39Z johnnymacs: beach: which? 2018-07-22T10:43:53Z beach: johnnymacs: That people are rational and will listen to argument. 2018-07-22T10:44:09Z jackdaniel: "brainfuck is objectively worse than CL" – I throw at you argument: if someone is amused with using brainfuck (for fun), and tired with writing CL, then given "fun" criteria CL is *worse* than brainfuck for that particular person 2018-07-22T10:44:10Z johnnymacs: There is a probability as to how rational a person can be for how long. 2018-07-22T10:44:12Z saki quit (Quit: saki) 2018-07-22T10:44:39Z beach: johnnymacs: Have you read my essay on the psychology of learning? 2018-07-22T10:44:56Z johnnymacs: beach: you can send it to me but I do not have time to read it right now 2018-07-22T10:45:06Z johnnymacs: could you state what you think is a true reaction to my statement 2018-07-22T10:45:59Z johnnymacs: If not I can try to demonstrate how the human mind is capable of reason. 2018-07-22T10:46:24Z beach: I have already said what I think. There are strong psychological forces that will make it very hard for you. 2018-07-22T10:46:28Z beach: http://www.metamodulaire.com/Essays/psychology.html 2018-07-22T10:46:34Z johnnymacs: Almost every time I fail yes. 2018-07-22T10:46:56Z beach: Not your fault. 2018-07-22T10:47:08Z johnnymacs: I also try to spread lispy ideas covertly 2018-07-22T10:47:16Z beach: johnnymacs: That's a much better idea. 2018-07-22T10:47:22Z jackdaniel: well, it might be the attitude. I really believe that "your language is inferior to my because" 2018-07-22T10:47:32Z johnnymacs: I often tout langauges which fall more closely to the paradigms fo lisp: javascript, c# 2018-07-22T10:47:32Z jackdaniel: is not the best strategy ;) 2018-07-22T10:47:46Z jackdaniel: s/my/mine/ 2018-07-22T10:47:48Z beach: johnnymacs: I consider myself fairly knowledgeable in these domains, but I gave up trying to argue with people a long time ago. 2018-07-22T10:48:51Z johnnymacs: Here is how I see it. My goal in life is to improve computers as much as possible before I die. I see every line in languages such as python or php for example to be wasted because there is a near guarantee that there are such flaws in the designs of these langauges that they have no choice but to retire their respective compiler projects at some point. 2018-07-22T10:49:07Z johnnymacs: Thus humanity's man hours are wasted and makes us more vulnerable agaisnt alien attack because our computers advance more slowly 2018-07-22T10:49:17Z JuanDaugherty joined #lisp 2018-07-22T10:49:17Z johnnymacs: This is the same reason why I promote bsd/gpl etc 2018-07-22T10:49:32Z beach: johnnymacs: The only strategy that I have found that works is to do good work in the language that you prefer, and hope that people can see that it is better than theirs. 2018-07-22T10:49:46Z JuanDaugherty: given the generational turnover/attrition rate it's especially pointless, dumb 2018-07-22T10:50:11Z JuanDaugherty: wait the boogers out 2018-07-22T10:50:12Z johnnymacs: I find it easier these days to move people to languages closer and closer to lisp. I go online and post as random people and say lisp ideas. 2018-07-22T10:50:25Z johnnymacs: My most touting goes towards javascript. 2018-07-22T10:50:57Z caltelt quit (Ping timeout: 256 seconds) 2018-07-22T10:51:20Z johnnymacs: I also tell people alfonzo church beat alan turing to the punch. 2018-07-22T10:51:46Z beach: You might want to check his first name. 2018-07-22T10:51:54Z jackdaniel: you can never predict which language will be a stepping stone for progress. Let's imagine C and UNIX were never invented, and that PC idea never took off. That'd lead to less tinkerers and programmers; also that'd lead to no SBCL ;) 2018-07-22T10:51:55Z johnnymacs: noted 2018-07-22T10:52:12Z pjb: Alonzo Church says wikipedia. 2018-07-22T10:52:13Z jackdaniel: of course that's one of possible scenarios 2018-07-22T10:52:18Z johnnymacs: The other thing is that yes we are writing in all these langauges that will be thrown away. And the objectively best languages, schem and lisp, are both langauges for writing languages inside of. 2018-07-22T10:52:23Z hhdave joined #lisp 2018-07-22T10:52:27Z johnnymacs: And so we dont need to be wasting any of our code like that 2018-07-22T10:52:37Z johnnymacs: I can't allow humanity to waste all of our smart people 2018-07-22T10:52:54Z JuanDaugherty: Alfonso, alonso, schlemeil, schmazel 2018-07-22T10:52:59Z jmercouris joined #lisp 2018-07-22T10:53:00Z johnnymacs: Al 2018-07-22T10:53:03Z johnnymacs: Al C. 2018-07-22T10:53:18Z jackdaniel: good you are not a dictator, I'd be forced to write in Lisp! ;-) laters :-P 2018-07-22T10:53:30Z JuanDaugherty: *schlmazel 2018-07-22T10:53:38Z johnnymacs: If I were a dictator I would burn intel. 2018-07-22T10:53:43Z johnnymacs: First move 2018-07-22T10:53:57Z pjb: Start you own company, be the CEO/CTO and dictate lisp to all your hires. 2018-07-22T10:54:04Z johnnymacs: Then I would put IBM in charge of all government computer stuff 2018-07-22T10:54:28Z random-nick: why IBM? 2018-07-22T10:54:29Z johnnymacs: Heck maybe I would even do whatever I wanted and then when I was done give the world to the ceo of ibm 2018-07-22T10:54:31Z beach goes to take a nap and hopes this discussion will be over by the time he wakes up. 2018-07-22T10:54:42Z johnnymacs: yeah its off topic sure 2018-07-22T10:54:45Z johnnymacs: bye 2018-07-22T10:54:45Z johnnymacs left #lisp 2018-07-22T10:55:07Z JuanDaugherty: well he was the main topic enforcer 2018-07-22T10:55:58Z JuanDaugherty: so now we can have a long digression on IBM 2018-07-22T10:56:19Z Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-22T10:57:05Z JuanDaugherty thinks about what the MVS lisp product must have been like 2018-07-22T10:59:24Z JuanDaugherty: http://www.softwarepreservation.org/projects/LISP/ibm/SH20_2076_0-LISP_370_Program_Description-1978.pdf 2018-07-22T11:00:35Z hhdave quit (Ping timeout: 276 seconds) 2018-07-22T11:02:22Z puchacz: beach: sorry, is realtime gc possible ;)? not trolling, just curious - despite 2 decades of java in the mainstream, and major companies backing it, it did not happen.... 2018-07-22T11:02:55Z JuanDaugherty: in effect it's a moot point 2018-07-22T11:03:35Z JuanDaugherty: people with little experience charge off on tangents without bothering to find shit out because they heard this or that 2018-07-22T11:04:24Z JuanDaugherty: try actually observing how much time a well behaved sbcl system using the ordinary generational gc spends in gc 2018-07-22T11:04:33Z fikka quit (Ping timeout: 256 seconds) 2018-07-22T11:04:41Z hhdave joined #lisp 2018-07-22T11:04:58Z JuanDaugherty: and nobody is proposing or shouldn't be, writing device drivers in common lisp 2018-07-22T11:06:08Z jackdaniel: JuanDaugherty: RT is about deadline guarantees, not about throughput; as of drivers, I don't see a reason why they couldn't be written in CL (or other high level language) 2018-07-22T11:06:28Z JuanDaugherty: OK 2018-07-22T11:07:16Z fikka joined #lisp 2018-07-22T11:07:25Z hhdave quit (Client Quit) 2018-07-22T11:08:09Z JuanDaugherty: the burroughs machines did use algol for everything including device drivers but that's a special case 2018-07-22T11:08:35Z shka1: JuanDaugherty: that was few decades back i think :-) 2018-07-22T11:08:54Z JuanDaugherty: not sure what lisp machines did but imagine they used some machine lang some lisp 2018-07-22T11:09:14Z cage_ joined #lisp 2018-07-22T11:10:08Z JuanDaugherty quit (Quit: Exeunt) 2018-07-22T11:11:07Z jackdaniel: puchacz: there are at least two commercial RT GC for JVM according to https://en.wikipedia.org/wiki/Tracing_garbage_collection#Real-time_garbage_collection 2018-07-22T11:11:34Z puchacz: ok 2018-07-22T11:15:57Z markoong joined #lisp 2018-07-22T11:21:35Z jmercouris: +1 on what jackdaniel it is possible to write a driver in Lisp, it would just probably be a bit harder, from my understanding, most drivers are copy/pasta'd forks of old drivers with modifications depending on how the device has changed 2018-07-22T11:21:57Z jmercouris: so in Lisp you wouldn't have the advantage of all the previous code you could copy/pasta 2018-07-22T11:22:03Z jmercouris: s/pasta/paste 2018-07-22T11:25:20Z Josh_2 joined #lisp 2018-07-22T11:25:54Z Cthulhux quit (Changing host) 2018-07-22T11:25:54Z Cthulhux joined #lisp 2018-07-22T11:26:05Z fikka quit (Ping timeout: 256 seconds) 2018-07-22T11:26:26Z jmercouris: beach: I've noticed its been several months since any progress on climacs, is that because you are focusing on SICL's GC? 2018-07-22T11:31:53Z fikka joined #lisp 2018-07-22T11:31:57Z smurfrobot joined #lisp 2018-07-22T11:32:44Z jmercouris: beach: McClim does work on OSX, indeed using X 2018-07-22T11:32:55Z jmercouris: what is the motivation for trying to do a 'native' port? 2018-07-22T11:33:30Z jmercouris: is it for reasons of performance? 2018-07-22T11:35:17Z milanj joined #lisp 2018-07-22T11:35:27Z rumbler31 joined #lisp 2018-07-22T11:36:30Z smurfrobot quit (Ping timeout: 268 seconds) 2018-07-22T11:40:50Z jackdaniel: ftr, it is McCLIM; as of writing drivers, it is more about support from the underlying operating system 2018-07-22T11:40:53Z rumbler31 quit (Ping timeout: 276 seconds) 2018-07-22T11:41:29Z jackdaniel: I was writing Linux drivers and it's far from copy-paste, it is mostly about using: a) exisitng abstractions; b) datasheets; c) other documentation 2018-07-22T11:42:05Z jackdaniel: to part a) is crucial wrt writing drivers in Lisp. I think all Mezzano drivers are written in Common Lisp 2018-07-22T11:45:32Z jmercouris: beach: jackdaniel: would there be any interest in updated graphics for McCLIM? 2018-07-22T11:45:48Z jackdaniel: define "updated graphics" 2018-07-22T11:46:08Z jackdaniel: I'm working on a set of gadgets following material design guidelines if that's what you talk about 2018-07-22T11:46:20Z jackdaniel: if you are interested in helping then I'm all ears ;-) 2018-07-22T11:46:46Z jackdaniel: https://files.mastodon.social/media_attachments/files/005/005/502/original/7331eec572c7081d.png screencap from week ago 2018-07-22T11:47:00Z jackdaniel: rendered in CLIM, not gimp or anything 2018-07-22T11:48:02Z jmercouris: I'm not interested in material design 2018-07-22T11:48:11Z jmercouris: if you are interested in making a set of graphics that look good, I'm willing to help 2018-07-22T11:48:25Z jackdaniel: graphics for what? 2018-07-22T11:48:29Z jmercouris: unfortunately the intersection of graphics that look good, and material design have no overlap 2018-07-22T11:48:52Z jmercouris: well, I don't know what your terminology is, but I refer to things as widgets 2018-07-22T11:48:52Z jackdaniel: graphics are merely a tiny bit of design, so I'm not sure what you are after 2018-07-22T11:48:55Z jmercouris: so for example a button 2018-07-22T11:49:05Z jmercouris: how does a standard McCLIM button look like, what does a pane look like 2018-07-22T11:49:11Z jmercouris: these are things I would be interested in working on 2018-07-22T11:50:14Z jackdaniel: portable gadget set will follow what I've said above for a good reason: there is specification for it - not opinionated "I think that looks better" metodology 2018-07-22T11:50:36Z jmercouris: the material design specification is not the only design specification in the world 2018-07-22T11:50:43Z jmercouris: it also happens to be one of the worst ones in the world 2018-07-22T11:51:01Z jackdaniel: but nothing prevents you from adding your own gadget set; I'll do my best to guide you with techinicalities in McCLIM 2018-07-22T11:51:06Z jmercouris: "google makes great looking products" - no one ever 2018-07-22T11:51:36Z jackdaniel: if it is good and complete I see no problem with including it, I have other interesting projects too, so I don't feel a great urge to force my idea here 2018-07-22T11:51:53Z Josh_2: idk Google products look pretty nice imo 2018-07-22T11:51:53Z jmercouris: ok, where can I begin reading 2018-07-22T11:52:11Z jackdaniel: *but* if you are only willing to complain, that what I'm working on doesn't look good to you, then it is a different story 2018-07-22T11:52:15Z Josh_2: Like Google Docs, Android, Gmail, they all look nice 2018-07-22T11:52:43Z jmercouris: jackdaniel: I am only willing to complain? I've released a large amount of software and patches on the internet, complaining is just one of the things I do 2018-07-22T11:52:50Z jmercouris: and if you take a criticism as a complaint, then as you wish 2018-07-22T11:52:56Z EvW joined #lisp 2018-07-22T11:53:04Z jackdaniel: jmercouris: http://bauhh.dyndns.org:8000/clim-spec/8-4.html#_429 ; http://bauhh.dyndns.org:8000/clim-spec/30-3.html#_1712 ; http://bauhh.dyndns.org:8000/clim-spec/28-5.html#_1553 2018-07-22T11:53:06Z random-nick: jmercouris: "gadgets" in McCLIM are things like buttons, sliders, text input fields and such 2018-07-22T11:53:07Z jmercouris: It is objective that material design is terrible 2018-07-22T11:53:09Z fikka quit (Ping timeout: 268 seconds) 2018-07-22T11:53:31Z jackdaniel: I've just provided a disclaimer, that I'm not interested in debunking your own convictions, but if you are willing to create a portable set of gadgets for McCLIM I can help 2018-07-22T11:53:52Z dddddd joined #lisp 2018-07-22T11:54:07Z jmercouris: jackdaniel: Sure, I can provide all of the assets and specifications 2018-07-22T11:54:11Z jackdaniel: and I really thing, that anyone who claims that something is *objectively* best/terrible/whatever when taken in terms of aesthetics, or a preference, is not very competent or honest 2018-07-22T11:54:23Z jackdaniel: I'm not interested in assets and specifications, I'm interested in code which works 2018-07-22T11:54:28Z jmercouris: jackdaniel: Computer Science is one thing, design is another 2018-07-22T11:54:57Z jmercouris: Anyways, sounds like you want to someone implement the actual gadgets, which means there does not exist a current way to theme McCLIM 2018-07-22T11:55:16Z jmercouris: which also leads me to believe that the current gadgets are implemented in code, and not really composed of bitmaps or anything that can be modified 2018-07-22T11:55:19Z jackdaniel: I've linked you a few starting points, then there is #clim channel. the gist of it is to inherit from existing gadget and define handle-repaint method 2018-07-22T11:55:29Z quazimodo quit (Ping timeout: 260 seconds) 2018-07-22T11:55:40Z fluke` quit (Read error: Connection reset by peer) 2018-07-22T11:55:46Z jmercouris: Ok, I will investigate 2018-07-22T11:56:06Z jmercouris: I appreciate the vote of "incompetence" 2018-07-22T11:56:09Z fluke` joined #lisp 2018-07-22T11:56:57Z jackdaniel: sure 2018-07-22T11:57:05Z quazimodo joined #lisp 2018-07-22T11:57:07Z jmercouris: That was sarcastic 2018-07-22T11:57:15Z jmercouris: Just to be clear, I don't appreciate it at all 2018-07-22T11:57:24Z jackdaniel: ah :( 2018-07-22T11:57:32Z Smokitch joined #lisp 2018-07-22T11:57:51Z jackdaniel: Josh_2: imo they look good too, and take many important aspects into account 2018-07-22T11:58:27Z jmercouris: Most certainly, that's why designers the world over are using google products, and hailing them for their fantastic interfaces 2018-07-22T11:58:36Z jmercouris: Again, I'm being sarcastic, but what do I know 2018-07-22T11:58:50Z jmercouris: I'm done ranting 2018-07-22T11:59:58Z Josh_2: being able to have customizable graphics is a good idea 2018-07-22T12:03:22Z random-nick: jmercouris: well, the idea is to have the backends provide gadgets from the platform's native widget toolkit 2018-07-22T12:04:04Z random-nick: and then to have fallback portable gadgets implemented in lisp using clim functions 2018-07-22T12:04:06Z jmercouris: random-nick: so that's the idea behind having different backends? 2018-07-22T12:04:53Z jackdaniel: there are three layers of it. portable toolkit should be possible to use on any backend and adaptive toolkit (optional) is backend specific 2018-07-22T12:05:28Z jackdaniel: there are three layers of it. portable toolkit should be possible to use on any backend and adaptive toolkit (optional) is backend specific 2018-07-22T12:05:36Z jackdaniel: ops, sorry 2018-07-22T12:06:18Z jackdaniel: backends are for different platforms (display servers): Xserver, Wayland, GTK, Cocoa, WinAPI etc 2018-07-22T12:06:47Z pierpal joined #lisp 2018-07-22T12:06:55Z jmercouris: so any backend can, or cannot be used with any toolkit? 2018-07-22T12:07:01Z cage__ joined #lisp 2018-07-22T12:07:03Z jmercouris: I assume a portable toolkit can be used with any backend 2018-07-22T12:07:07Z jackdaniel: any backend can be used with portable toolkit 2018-07-22T12:07:22Z jackdaniel: but adaptive toolkit is backend-specific 2018-07-22T12:07:25Z jmercouris: but a specific toolkit eg. cocoa might only be usable on OSX backend 2018-07-22T12:07:29Z cage_ quit (Read error: Connection reset by peer) 2018-07-22T12:07:35Z jackdaniel: i.e you use native GTK buttons - you can't use them on raw WinAPI 2018-07-22T12:07:49Z jmercouris: I see, and how do you deal with differences in the specifications of those widgets? 2018-07-22T12:07:50Z jackdaniel: yes 2018-07-22T12:08:03Z jackdaniel: gadgets have strictly functional specification 2018-07-22T12:08:13Z jackdaniel: how they look and are used is not defined in a standard 2018-07-22T12:08:25Z jackdaniel: portable toolkit provides some example implementation of abstract idea 2018-07-22T12:08:31Z jmercouris: Okay, but for example, let's say a specific type of callback exists in one implementation, but not another 2018-07-22T12:08:33Z jmercouris: what do you do then? 2018-07-22T12:08:50Z fikka joined #lisp 2018-07-22T12:09:12Z jmercouris: for a special type of button press 2018-07-22T12:09:15Z jmercouris: as an example 2018-07-22T12:09:27Z jackdaniel: abstract gadgets in CLIM specification have limited protocol of things which happen 2018-07-22T12:09:42Z jmercouris: and that protocol is limited enough that it encompasses all GUI toolkits without gaps? 2018-07-22T12:09:43Z jackdaniel: which should work on all platforms. you have all abstract gadgets listed in the specification I've linked about 2018-07-22T12:09:47Z jmercouris: or at least the ones you wish to target? 2018-07-22T12:10:18Z jackdaniel: it presents "common" gadgets with their usual functionality 2018-07-22T12:10:31Z jackdaniel: it is possible that some existing toolkit doesn't support some of it, or that it supports more of it 2018-07-22T12:10:50Z jackdaniel: of course nothing prevents the programmer from defining his own gadget 2018-07-22T12:11:01Z jackdaniel: if adaptive toolkit can't produce it, then portable implementation is used 2018-07-22T12:11:04Z jmercouris: I see 2018-07-22T12:15:45Z pjb: puchacz: https://www.ibm.com/developerworks/library/j-rtj4/index.html 2018-07-22T12:16:27Z pjb: puchacz: real time java garbage collection happened several times. Here is the one by IBM, but other company propose other RTGC implementations for the JVM. 2018-07-22T12:19:30Z jeosol: syntax question: do you guys use '/' in variable (slot) names for example, I have a numeric quantity that a ratio of current value over initial value, then the variable name will be current/initial. Good/bad/doesn't matter 2018-07-22T12:20:07Z jackdaniel: looks OK to me 2018-07-22T12:20:20Z jeosol: thanks jackdaniel 2018-07-22T12:20:54Z Ven`` joined #lisp 2018-07-22T12:20:57Z jeosol: current-inital-ratio seems a bit long, but current/initial seems shorter. not sure if others code this way. 2018-07-22T12:21:16Z jeosol: I'll go with the / variant 2018-07-22T12:22:45Z pjb: puchacz: it's rather lame to affirm things without using google first. 2018-07-22T12:23:15Z pjb: jeosol: yes, you can have fun. (let ((1/2mv2 (* 1/2 m v v))) …) 2018-07-22T12:23:39Z Baggers quit (Remote host closed the connection) 2018-07-22T12:23:49Z pjb: jeosol: you can also use unicode, all current CL implementations support it. (let ((½mv² (* 1/2 m v v))) … ½mv² …) 2018-07-22T12:24:15Z pjb: jeosol: for lexical scopes, it doesn't matter much. 2018-07-22T12:26:42Z smurfrobot joined #lisp 2018-07-22T12:28:10Z jeosol: pjb: Thanks for the info especially with unicode. The code reads more natural that way. My variable names are numeric quantities in equations. 2018-07-22T12:28:28Z jeosol: reads more natural this way and spot mistakes. Merci 2018-07-22T12:29:07Z runix_1 joined #lisp 2018-07-22T12:29:35Z pjb: jeosol: if your code has a lot of formula, you could implement a reader macro to let you format your code like in HAL/S. 2018-07-22T12:29:44Z pjb: https://en.wikipedia.org/wiki/HAL/S 2018-07-22T12:30:48Z pjb: An alternative would be to use a reader macro just as a marker for emacs, so that it can read the expression, format it with LaTeX, and compose it over the source. 2018-07-22T12:31:08Z pjb: See for example, https://www.emacswiki.org/emacs/PrettyGreek 2018-07-22T12:31:19Z pjb: Something similar can be done for more complex expressions. 2018-07-22T12:31:51Z jmercouris quit (Remote host closed the connection) 2018-07-22T12:32:06Z pjb: This means that you would still type or edit sexps, but you would see the nice formated and rendered expression in the emacs buffer. 2018-07-22T12:32:41Z Bike joined #lisp 2018-07-22T12:33:15Z jeosol: Wow, that would have been very useful. I had to write code to compute volume of arbitrary grid, it was a bit messy due to the many equations. 2018-07-22T12:33:30Z jeosol: s/grid/grid-cell 2018-07-22T12:38:52Z Moosef joined #lisp 2018-07-22T12:47:45Z beach: puchacz: Yes, it is possible, but there would be more overhead. Just as if you wanted a real-time malloc()/free() which would be even harder. 2018-07-22T12:48:36Z beach: minion: memo for jmercouris: Yes, I have been busy with SICL specification stuff. 2018-07-22T12:48:36Z minion: Remembered. I'll tell jmercouris when he/she/it next speaks. 2018-07-22T12:52:24Z pjb: jeosol: in the worst case, what you can do is to write a CL macro that will scan the formula in your math book, run OCR on it, and translate it to a lisp sexp. The whole at compilation time. 2018-07-22T12:53:57Z flazh quit (Ping timeout: 240 seconds) 2018-07-22T12:56:02Z gabiruh joined #lisp 2018-07-22T12:59:10Z light2yellow joined #lisp 2018-07-22T13:00:42Z flazh joined #lisp 2018-07-22T13:05:11Z graphene quit (Remote host closed the connection) 2018-07-22T13:07:46Z svillemot quit (Ping timeout: 268 seconds) 2018-07-22T13:07:46Z graphene joined #lisp 2018-07-22T13:07:50Z nsrahmad joined #lisp 2018-07-22T13:12:29Z pagnol quit (Ping timeout: 244 seconds) 2018-07-22T13:12:38Z pjb quit (Ping timeout: 276 seconds) 2018-07-22T13:13:56Z quazimodo quit (Ping timeout: 268 seconds) 2018-07-22T13:16:54Z Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-22T13:19:45Z svillemot joined #lisp 2018-07-22T13:27:10Z graphene quit (Remote host closed the connection) 2018-07-22T13:28:07Z gabiruh quit (Ping timeout: 268 seconds) 2018-07-22T13:28:36Z graphene joined #lisp 2018-07-22T13:30:18Z pjb joined #lisp 2018-07-22T13:38:26Z gravicappa joined #lisp 2018-07-22T13:47:35Z Ven`` joined #lisp 2018-07-22T13:48:45Z milanj quit (Quit: This computer has gone to sleep) 2018-07-22T13:53:43Z BitPuffin joined #lisp 2018-07-22T13:57:05Z pierpal quit (Quit: Poof) 2018-07-22T13:57:25Z pierpal joined #lisp 2018-07-22T13:57:57Z rozenglass quit (Ping timeout: 256 seconds) 2018-07-22T13:58:33Z smurfrobot quit (Remote host closed the connection) 2018-07-22T14:04:31Z smurfrobot joined #lisp 2018-07-22T14:08:17Z Kundry_Wag joined #lisp 2018-07-22T14:11:13Z sendai_ joined #lisp 2018-07-22T14:11:41Z buoyantair quit (Ping timeout: 276 seconds) 2018-07-22T14:12:22Z makomo quit (Ping timeout: 264 seconds) 2018-07-22T14:12:46Z makomo joined #lisp 2018-07-22T14:13:57Z azimut quit (Ping timeout: 240 seconds) 2018-07-22T14:16:44Z EvW quit (Ping timeout: 265 seconds) 2018-07-22T14:17:21Z smurfrobot quit (Remote host closed the connection) 2018-07-22T14:17:22Z drduck joined #lisp 2018-07-22T14:19:59Z EvW1 joined #lisp 2018-07-22T14:27:00Z nsrahmad quit (Quit: Leaving) 2018-07-22T14:27:01Z smurfrobot joined #lisp 2018-07-22T14:27:03Z Kaisyu joined #lisp 2018-07-22T14:27:44Z elfmacs quit (Ping timeout: 260 seconds) 2018-07-22T14:28:45Z Kundry_Wag quit (Remote host closed the connection) 2018-07-22T14:29:03Z Kundry_Wag joined #lisp 2018-07-22T14:32:11Z graphene quit (Remote host closed the connection) 2018-07-22T14:33:27Z graphene joined #lisp 2018-07-22T14:44:37Z asarch joined #lisp 2018-07-22T14:44:57Z anewuser joined #lisp 2018-07-22T14:49:32Z smurfrobot quit (Remote host closed the connection) 2018-07-22T14:55:05Z charh quit (Remote host closed the connection) 2018-07-22T14:57:28Z Josh_2 quit (Quit: ERC (IRC client for Emacs 25.3.1)) 2018-07-22T14:58:32Z Moosef quit (Quit: Connection closed for inactivity) 2018-07-22T14:59:47Z EvW1 quit (Ping timeout: 245 seconds) 2018-07-22T15:02:33Z nsrahmad joined #lisp 2018-07-22T15:03:58Z Baggers joined #lisp 2018-07-22T15:06:15Z Moosef joined #lisp 2018-07-22T15:10:30Z cage___ joined #lisp 2018-07-22T15:10:53Z milanj joined #lisp 2018-07-22T15:13:14Z cage__ quit (Ping timeout: 260 seconds) 2018-07-22T15:14:29Z cage___ quit (Read error: Connection reset by peer) 2018-07-22T15:15:58Z smurfrobot joined #lisp 2018-07-22T15:16:08Z smurfrobot quit (Remote host closed the connection) 2018-07-22T15:16:23Z smurfrobot joined #lisp 2018-07-22T15:16:58Z cage_ joined #lisp 2018-07-22T15:19:18Z pagnol joined #lisp 2018-07-22T15:22:33Z orivej quit (Ping timeout: 264 seconds) 2018-07-22T15:26:13Z orivej joined #lisp 2018-07-22T15:28:31Z beach: flip214: Around? 2018-07-22T15:30:37Z beach: flip214: For root pointers, I just made a rule that if any invocation has a pointer to a rack (to the beginning of it, or to any element of it), then it must also have a pointer to the header. That other pointer is then subject to register allocation just like everything else. I just have to make sure it is not eliminated even though it is "dead". It would very likely migrate to the stack of course. 2018-07-22T15:31:38Z orivej quit (Ping timeout: 276 seconds) 2018-07-22T15:37:53Z Lauven joined #lisp 2018-07-22T15:40:16Z flip214: beach: yes. 2018-07-22T15:40:36Z flip214: for a few minutes, at least. 2018-07-22T15:40:45Z rumbler31 joined #lisp 2018-07-22T15:40:46Z jibanes quit (Ping timeout: 244 seconds) 2018-07-22T15:42:11Z flip214: what's the question? 2018-07-22T15:42:41Z jibanes joined #lisp 2018-07-22T15:42:45Z beach: You suggested I store header pointers in the thread object. I am suggesting an alternative. 2018-07-22T15:43:07Z flip214: what "invocation" would that be? a GC run? 2018-07-22T15:43:21Z beach: No, anything that creates a stack frame. 2018-07-22T15:43:25Z flip214: ah, okay. 2018-07-22T15:43:26Z beach: Any function, basically. 2018-07-22T15:43:47Z nanoz joined #lisp 2018-07-22T15:44:25Z flip214: well, the important thing is that there's a defined space for per-thread root pointers; and as registers are likely to contain arbitrary integer values, they might become false positives. 2018-07-22T15:44:42Z flip214: so storing on the stack looks okay. 2018-07-22T15:44:44Z beach: No, they can't. 2018-07-22T15:45:08Z beach: The compiler emits information that says whether a register or stack location contains a Common Lisp object or not. 2018-07-22T15:45:16Z flip214: although that means that you might need additional stack space, which might become a problem for deep recursive calls. 2018-07-22T15:45:44Z flip214: oh, so you go that way. Fine too -- sounded just like more work to me, but what do I know? 2018-07-22T15:45:56Z rumbler31 quit (Ping timeout: 276 seconds) 2018-07-22T15:46:04Z beach: That will be a problem anyway, because I would need space in the thread object for arbitrarily many pointers. 2018-07-22T15:46:10Z beach: Might as well store them on the stack. 2018-07-22T15:46:23Z beach: The stack is cheaper too. 2018-07-22T15:47:13Z beach: More work? How? 2018-07-22T15:47:40Z flip214: beach: no, at most one per register. 2018-07-22T15:48:00Z beach: I don't see that. 2018-07-22T15:48:01Z flip214: "more work" as in "the compiler needs to tell the GC which register store pointers at which point in time" 2018-07-22T15:48:21Z beach: Oh, that's just implementation work. No more work at run time. 2018-07-22T15:48:55Z beach: Suppose for a moment that every register is a caller-saves. 2018-07-22T15:49:12Z beach: Now, you have a function that accesses the rack of some object o1. 2018-07-22T15:49:22Z beach: But it no longer needs the pointer to the header. 2018-07-22T15:49:41Z sabrac quit (Quit: Konversation terminated!) 2018-07-22T15:49:43Z beach: So you store the pointer to the rack on the stack and then you call another function. 2018-07-22T15:50:03Z beach: That function needs a pointer to the rack of some object o2. 2018-07-22T15:50:21Z beach: So you store that pointer on the stack and then call a third function. 2018-07-22T15:50:24Z beach: etc, etc. etc. 2018-07-22T15:50:42Z beach: You now have rack pointers in 3 stack frames, but no header pointers. 2018-07-22T15:51:11Z beach: If I were to store those header pointers in the thread object, I would need one such location per stack frame, so not a bounded number. 2018-07-22T15:53:18Z karlosz joined #lisp 2018-07-22T15:53:46Z pagnol quit (Ping timeout: 264 seconds) 2018-07-22T15:54:18Z subroot joined #lisp 2018-07-22T15:55:12Z flip214: But if o1, o2 etc. are no longer needed, what do you need the rack pointers for? To speed up GC because it knows which racks are in use? 2018-07-22T15:55:34Z Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-22T15:56:04Z beach: OK, suppose I do (+ (aref x (f a)) (aref x (g b))) 2018-07-22T15:56:16Z EvW joined #lisp 2018-07-22T15:56:34Z SaganMan joined #lisp 2018-07-22T15:56:49Z beach: To access the elements, I no longer need the reference to the header. Just a pointer to the rack. So when (b b) is called, there would normally be no reference to the header. 2018-07-22T15:57:53Z flip214: oh, I'm sorry. I think I got the terminology wrong - the "rack" is the "object" in SICL, right? 2018-07-22T15:58:05Z beach: No the header is *the* object. 2018-07-22T15:58:14Z beach: But it doesn't contain any information other than the class. 2018-07-22T15:58:19Z pagnol joined #lisp 2018-07-22T15:58:32Z beach: So if there is no pointer to the header, the object will be reclaimed by the GC. 2018-07-22T15:58:52Z beach: Sorry, the header contains the class and a pointer to the rack. 2018-07-22T15:59:30Z beach: I need to go fix dinner. I'll talk about this some other time. 2018-07-22T15:59:36Z flip214: beach: me too. 2018-07-22T15:59:55Z flip214: If your paper is in (kind of) shape, I'd like to read it again. 2018-07-22T16:00:12Z beach: OK, great. 2018-07-22T16:04:34Z fikka quit (Ping timeout: 260 seconds) 2018-07-22T16:09:54Z fikka joined #lisp 2018-07-22T16:12:49Z rippa joined #lisp 2018-07-22T16:13:54Z graphene quit (Remote host closed the connection) 2018-07-22T16:15:04Z fikka quit (Ping timeout: 260 seconds) 2018-07-22T16:15:29Z graphene joined #lisp 2018-07-22T16:15:38Z Kundry_Wag quit (Remote host closed the connection) 2018-07-22T16:16:17Z Kundry_Wag joined #lisp 2018-07-22T16:17:38Z smurfrobot quit (Remote host closed the connection) 2018-07-22T16:18:08Z puchacz: beach: tks. I did not realise malloc/free is harder for RT than GC. anyway :) 2018-07-22T16:18:19Z puchacz: purely academic curiosity, I don't need RT 2018-07-22T16:18:21Z beach: Many people don't. 2018-07-22T16:18:28Z beach: .. realize that. 2018-07-22T16:18:43Z beach: But if you study Paul Wilson's allocator survey, you will see why. 2018-07-22T16:19:04Z beach: Most modern GCs can do an allocation by bumping a pointer (and maybe a test). 2018-07-22T16:19:14Z smurfrobot joined #lisp 2018-07-22T16:19:42Z beach: ... whereas malloc() needs to find an appropriate block, and maybe split it up, link it into a list, etc, etc. Lots of memory accesses there. 2018-07-22T16:19:59Z fikka joined #lisp 2018-07-22T16:20:19Z EvW quit (Remote host closed the connection) 2018-07-22T16:20:24Z beach: People who argue in favor of manual memory management usually don't know how malloc() and free() are implemented. 2018-07-22T16:20:30Z EvW1 joined #lisp 2018-07-22T16:20:34Z puchacz: I don't understand why most software like OSes, window managers, browsers, office packs etc. are written with manual memory management, usually in C++ 2018-07-22T16:20:45Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-22T16:20:50Z beach: puchacz: The usual ignorance. 2018-07-22T16:20:57Z beach: Ignorance is very powerful. 2018-07-22T16:21:00Z puchacz: rly :) ? 2018-07-22T16:21:29Z puchacz: I guess lack of skills may be the reason many desktop Java apps feel slow 2018-07-22T16:21:46Z beach: Plus, if they are using C++, they sometimes think that delete is has O(1) complexity, but it can be arbitrary if the structure is big. 2018-07-22T16:21:47Z puchacz: i.e. slow to respond to user inputs, and they feel like they eat a lot of memory 2018-07-22T16:21:58Z beach: I totally agree. 2018-07-22T16:22:13Z puchacz: so is it JVM problem or lack of skills? 2018-07-22T16:22:22Z puchacz: of app programmers? 2018-07-22T16:23:03Z beach: I suspect the JVM is very good. So bad programmers would be my guess. 2018-07-22T16:23:11Z fluke` quit (Read error: Connection reset by peer) 2018-07-22T16:23:31Z puchacz: there is also Java itself atop of JVM. 2018-07-22T16:23:36Z fluke` joined #lisp 2018-07-22T16:24:01Z beach: The Java compiler has been pretty optimized as well. I really don't know what the problem might be. 2018-07-22T16:24:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-22T16:28:28Z lnostdal quit (Quit: https://www.Quanto.ga/) 2018-07-22T16:30:19Z fikka joined #lisp 2018-07-22T16:33:21Z lumm quit (Quit: lumm) 2018-07-22T16:33:57Z pagnol quit (Ping timeout: 240 seconds) 2018-07-22T16:36:07Z lumm joined #lisp 2018-07-22T16:36:09Z charh joined #lisp 2018-07-22T16:36:17Z beach: puchacz: I wonder whether it has to do with programmer skills. Isn't it the case that C++ programmers in general come from a better trained crowd, so that they know more about algorithms and data structures. I have the impression that Java programmers are often hired immediately out of a short training program, and they reuse existing libraries without knowing the complexity of operations. Not universally true of course. But perhaps 2018-07-22T16:36:17Z beach: statistically. 2018-07-22T16:36:26Z Kundry_Wag joined #lisp 2018-07-22T16:36:42Z charh quit (Changing host) 2018-07-22T16:36:42Z charh joined #lisp 2018-07-22T16:41:36Z rumbler31 joined #lisp 2018-07-22T16:45:52Z rumbler31 quit (Ping timeout: 244 seconds) 2018-07-22T16:45:57Z dtornabene joined #lisp 2018-07-22T16:45:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-22T16:46:11Z jeosol: regex experts here: I current using the following for capture a float "([-+]?\\d*\\.?\\d+[eE]?[-+]?[0-9]+?)" in some string using cl-ppre. How do I convert this so this is optional. To provide context, I am trying to parse a string like 2018-07-22T16:46:51Z jeosol: "jeosol 9.456 " in one case and sometimes "jeosol 9.456 8.563", i.e., in one case, I have one number other times two, 2018-07-22T16:47:08Z Bike: {1,2}? 2018-07-22T16:47:11Z jeosol: I have the part to capture the string name, it's the number side 2018-07-22T16:48:16Z jeosol: " : NAME : 9.810E+05 : 0.00524 0.00840 : 0.00524 0.00840 : " 2018-07-22T16:48:53Z jeosol: what is what the full string looks like, the large spaces before the : after a number may contain a number for different problem instance. This is output from a black-box exe 2018-07-22T16:50:30Z jeosol: s/what/that 2018-07-22T16:51:36Z varjag joined #lisp 2018-07-22T16:51:49Z brendyn quit (Ping timeout: 260 seconds) 2018-07-22T16:51:57Z JuanDaugherty joined #lisp 2018-07-22T16:52:14Z jeosol: ok, beach, thx 2018-07-22T16:52:48Z jeosol: solution is a bit nasty, adding that floating regex ...{0,1}? seems to work, at least I get out the first numeric value. 2018-07-22T16:53:48Z jeosol: Thanks lord beach. that works. 2018-07-22T16:57:12Z EvW1 quit (Ping timeout: 265 seconds) 2018-07-22T16:57:45Z nsrahmad quit (Quit: Leaving) 2018-07-22T16:59:38Z slyrus1 quit (Ping timeout: 268 seconds) 2018-07-22T17:00:18Z slyrus_ quit (Ping timeout: 256 seconds) 2018-07-22T17:01:18Z Demosthenex joined #lisp 2018-07-22T17:01:33Z jibanes quit (Ping timeout: 256 seconds) 2018-07-22T17:01:48Z fikka joined #lisp 2018-07-22T17:02:56Z Demosthenex: i'm using dexador to query a web api with a rate limiter i hit sometime. I'm trying to make a restart-case which will just retry the call after a delay. i'm completely new to conditions and restarts, and most of the tutorials are more confusing than helpful. any pointers? 2018-07-22T17:03:32Z Xach: Demosthenex: i enjoyed the explanation in practical common lisp. 2018-07-22T17:03:33Z jibanes joined #lisp 2018-07-22T17:04:21Z Demosthenex: Xach: that book is dead sexy. i read thru that chapter several times, but don't feel like i quite got it. 2018-07-22T17:04:45Z Xach: Demosthenex: what have you written so far? 2018-07-22T17:06:21Z fluke` quit (Read error: Connection reset by peer) 2018-07-22T17:06:41Z fikka quit (Ping timeout: 248 seconds) 2018-07-22T17:06:43Z klltkr: Hello all 2018-07-22T17:07:06Z Demosthenex: i think what i'm most confused about is the "keywords" which are part of the language, and items that are written in by the tutorial authors. i've been reading about these for over a half hour on teh web and still don't get it. 2018-07-22T17:07:15Z Demosthenex: i mean, is tehre really a handler called "just-continue"? 2018-07-22T17:08:00Z fluke` joined #lisp 2018-07-22T17:08:18Z Xach: Demosthenex: not a standard one. 2018-07-22T17:08:32Z Moosef quit (Quit: Connection closed for inactivity) 2018-07-22T17:08:35Z Xach: Demosthenex: so you have done some reading but no coding yet? 2018-07-22T17:09:32Z Demosthenex: i have working dexador calls, just trying to understand how to wrap it in restart-case 2018-07-22T17:09:51Z Demosthenex: i was able to make one that just retries infinitely, but i'm trying to handle a specific error and delay then try again... 2018-07-22T17:10:15Z Demosthenex: i think i'm looking for a clearer tutorial, or some really short examples. not a copy/paste session ;] 2018-07-22T17:10:36Z Xach: Ok. Good luck with it. 2018-07-22T17:10:50Z Xach: I don't know of anything in particular. 2018-07-22T17:11:44Z megalography quit (Ping timeout: 276 seconds) 2018-07-22T17:11:47Z Demosthenex: yep, i'm continuing reading for now. but i'll take any pointers to docs. obviously i've already seen pcl 2018-07-22T17:12:16Z Xach: I know how it works and can give specific advice on specific code but don't know of tutorials that will fit how you want to learn. 2018-07-22T17:12:27Z slyrus_ joined #lisp 2018-07-22T17:14:23Z SaganMan: Hello peeps 2018-07-22T17:15:57Z newbie32 joined #lisp 2018-07-22T17:16:41Z klltkr: Yo SaganMan 2018-07-22T17:17:42Z SaganMan: hello 2018-07-22T17:18:06Z fluke` quit (Read error: Connection reset by peer) 2018-07-22T17:18:49Z cgay_ quit (Remote host closed the connection) 2018-07-22T17:19:12Z fluke` joined #lisp 2018-07-22T17:19:55Z nanoz quit (Read error: Connection reset by peer) 2018-07-22T17:20:05Z smurfrobot quit (Remote host closed the connection) 2018-07-22T17:20:29Z cgay_ joined #lisp 2018-07-22T17:22:08Z fikka joined #lisp 2018-07-22T17:25:06Z megalography joined #lisp 2018-07-22T17:25:30Z nullniverse joined #lisp 2018-07-22T17:26:24Z xantoz quit (Quit: WeeChat 2.0.1) 2018-07-22T17:27:04Z nanoz joined #lisp 2018-07-22T17:27:20Z fikka quit (Ping timeout: 276 seconds) 2018-07-22T17:27:24Z varjag quit (Ping timeout: 260 seconds) 2018-07-22T17:28:06Z lnostdal joined #lisp 2018-07-22T17:28:15Z jeosol: hello SaganMan 2018-07-22T17:28:48Z xantoz joined #lisp 2018-07-22T17:30:35Z fluke` quit (Ping timeout: 276 seconds) 2018-07-22T17:30:40Z Kundry_Wag quit (Remote host closed the connection) 2018-07-22T17:30:59Z puchacz: beach: agree (about C++ being more hardcore programmers Java programmers) 2018-07-22T17:31:22Z fikka joined #lisp 2018-07-22T17:31:38Z fluke` joined #lisp 2018-07-22T17:31:56Z pagnol joined #lisp 2018-07-22T17:32:04Z marusich joined #lisp 2018-07-22T17:32:23Z FreeBird_ quit (Remote host closed the connection) 2018-07-22T17:35:10Z trittweiler: Demosthenex, Have a look at this snippet: https://pastebin.com/EEJSKUWZ -- that's perhaps along the lines of what you want. But perhaps that's as far as you got, and you're stuck at not retrying after, say, 3 attempts? 2018-07-22T17:35:29Z Demosthenex: Xach: so my example, i call to fetch data from a restful api. https://bpaste.net/show/a47a6a39bf78 my goal is to only respond to the specific DEXADOR condition by causing a sleep for 10 seconds and then retrying my http call. 2018-07-22T17:36:18Z ckonstanski joined #lisp 2018-07-22T17:37:06Z Demosthenex: trittweiler: is (go :again) a dolist syntax sugar? 2018-07-22T17:37:42Z trittweiler: dolist expands to an implicit tagbody 2018-07-22T17:37:57Z Demosthenex: because i had the impression restart-case had a way to just reexecute the same code it was wrapping 2018-07-22T17:38:18Z Demosthenex: and part of my problem has been divining what's part of the language, and what's a name made up by the tutorial author 2018-07-22T17:39:39Z trittweiler: if you didn't do that GO, the execution after the restart-case clause would continue after the (restart-case ...) <--, i.e. at the end of the loop, and the next step would be the next dolist iteration (i.e. you would have implemented a "skip url on error-503") 2018-07-22T17:39:48Z Demosthenex: so while i get most of your example, i'm tripped up over your dolist combined with restat-case 2018-07-22T17:40:54Z Demosthenex: so you're using the dolist tag to jump execution back before the restart statement, i get that... but i'm trying to wrap a single function call 2018-07-22T17:41:15Z Demosthenex: isn't there a builtin that just says repeat? i mean, the debugger lets me do that 2018-07-22T17:42:00Z Bike: those repeats are from loops as well. 2018-07-22T17:42:06Z trittweiler: You mean the RETRY restart in Slime? That's actually a restart-case somewhere in the common lisp backend of slime. 2018-07-22T17:42:21Z jeosol: CLOS question: what is a clean way to construct a CLOS object from a list of the form (:initarg-1 value-1 :initarg-2 value-2 ...). This list is a bit long. Passing that with constructor having &rest args gives error. 2018-07-22T17:42:41Z Bike: jeosol: applying make-instance to that should be fine 2018-07-22T17:43:27Z trittweiler: (defun evaluate-for-emacs (form) (tagbody :again (restart-case (eval form) (retry () (go :again))) 2018-07-22T17:44:03Z Demosthenex: trittweiler: i think that's where i'm tripped up. there look there there are a list of always available restarts, and some that are created, but i haven't yet seen a list of what's built in. 2018-07-22T17:44:10Z Bike: none of them are built in 2018-07-22T17:44:20Z jeosol: beach: I get a keyword agument not a symbol error: ... my list form above 2018-07-22T17:44:24Z Bike: every single one of those corresonds to a restart-case or restart-bind 2018-07-22T17:44:58Z Bike: jeosol: it's "bike". and what exactly are you doing? something like (apply #'make-instance class initargs) is what i'd expect. 2018-07-22T17:45:01Z koenig1 joined #lisp 2018-07-22T17:45:02Z pierpal quit (Quit: Poof) 2018-07-22T17:45:07Z beach: jeosol: I know nothing about regular expressions, so I was not the one helping you. 2018-07-22T17:45:08Z jeosol: I am sorry Bike 2018-07-22T17:45:20Z pierpal joined #lisp 2018-07-22T17:45:52Z jeosol: Brain freeze, need some sleep 2018-07-22T17:45:57Z koenig quit (Ping timeout: 240 seconds) 2018-07-22T17:46:05Z trittweiler: Demosthenex, Do you understand dynamic-variables? 2018-07-22T17:46:50Z mathrick quit (Ping timeout: 260 seconds) 2018-07-22T17:48:02Z beach: jeosol: By the way, the term "CLOS object" does not exist in the Common Lisp HyperSpec. If it had any reasonable definition at all, it would be "any Common Lisp datum". 2018-07-22T17:48:28Z jeosol: haha. thanks for the correct. I meant to say instance of a class. 2018-07-22T17:48:42Z beach: Yes, every Common Lisp object is an instance of some class. 2018-07-22T17:48:47Z Kaisyu quit (Quit: Connection closed for inactivity) 2018-07-22T17:48:53Z beach: jeosol: Try (class-of 234) for instance. 2018-07-22T17:49:07Z cage_ quit (Remote host closed the connection) 2018-07-22T17:49:28Z cage_ joined #lisp 2018-07-22T17:49:31Z beach: jeosol: What most people mean when they say "CLOS object" is probably "standard object". 2018-07-22T17:49:49Z jeosol: So I had a defclass defined and I get a list as above,and I want to create a corresponding class object from the list. And do this many times. 2018-07-22T17:49:56Z Demosthenex: trittweiler: as in dynamic vs lexical scope? 2018-07-22T17:49:58Z pioneer42 joined #lisp 2018-07-22T17:50:01Z Bike: yeah, you should apply make-instance for that. 2018-07-22T17:50:29Z beach: jeosol: (apply #'make-instance 'class-name arguments) 2018-07-22T17:50:31Z jeosol: beach: I see. But in my case above, I should I have instance of a user-defined class, I guess. 2018-07-22T17:50:58Z beach: jeosol: It is called a "standard class" and its instances are called "standard objects". 2018-07-22T17:51:09Z smurfrobot joined #lisp 2018-07-22T17:52:21Z trittweiler: Demosthenex, Look at CRAWL-2 in https://pastebin.com/wCtccKXL - that will show you what CRAWL essentially expands to. I think that might help you understand RESTART-CASE better and to see what all those magic names are about 2018-07-22T17:53:10Z mathrick joined #lisp 2018-07-22T17:54:48Z Fare joined #lisp 2018-07-22T17:55:08Z beach: jeosol: Did you manage to get it to work? 2018-07-22T17:55:37Z vtomole joined #lisp 2018-07-22T17:56:08Z Demosthenex: trittweiler: so, how can you get restart-case to repeat (push (http-get url) web-pages) without using the (go :again) call that leverages your do loop? my use case is a single function call, and if it fails with a specific condition i just want to call it again... 2018-07-22T17:56:37Z Bike: you can use tagbody to get explicitly what dolist has implicitly 2018-07-22T17:56:41Z Demosthenex: trittweiler: i do understand how the handler has to be "above" the restart-case, and call back into the restart. 2018-07-22T17:57:53Z Demosthenex: and the PCL example just gives an example of using a restart to return a nil value (ie: skip). 2018-07-22T17:59:24Z jeosol: Beach: Yes, I got it to work. 2018-07-22T18:00:01Z Demosthenex: so perhaps i can just make my function call there isntead of nil, but that's where the state confusion comes in, the rollback of the stack, etc. can i depend on my variables being the same at that point? that's why i thought there was a simple "repeat" buried in a keyword 2018-07-22T18:00:12Z jeosol: my error was initially from mismatched initarg names, I was constructing that list by a different function and then splicing the values, definitely not clean. 2018-07-22T18:00:19Z jeosol: So I missed a few names 2018-07-22T18:01:23Z Lauven_ joined #lisp 2018-07-22T18:01:34Z krwq joined #lisp 2018-07-22T18:01:40Z ckonstanski quit (Quit: bye) 2018-07-22T18:02:26Z Lauven quit (Ping timeout: 276 seconds) 2018-07-22T18:03:57Z megalography quit (Ping timeout: 240 seconds) 2018-07-22T18:05:19Z Kundry_Wag joined #lisp 2018-07-22T18:06:52Z random-nick quit (Read error: Connection reset by peer) 2018-07-22T18:07:19Z trittweiler: Demosthenex, That is why it uses handler-bind and not handler-case. When you use handler-bind, the handler is actually executed at the place of the invocation of SIGNAL (or ERROR). 2018-07-22T18:08:04Z trittweiler: Demosthenex, The handler-bind does not actually have to be above the restart-case. :) 2018-07-22T18:08:31Z trittweiler: Demosthenex, It just makes more sense, otherwise you'd set-up a new handler in each iteration. So you want it outside of the loop 2018-07-22T18:09:40Z Josh_2 joined #lisp 2018-07-22T18:11:18Z Lauven joined #lisp 2018-07-22T18:12:23Z Demosthenex: trittweiler: i think i have it. i'm using a simple handler-case with a sleep and just re-executing the function call. the only downside is that it can only happen once, it can't sleep repeatedly 2018-07-22T18:12:24Z trittweiler: Demosthenex, If you want to repeat (foobar x y z) on error THE-ERROR, just do (loop until (handler-case (progn (foo x y z) t) (the-error () nil)) 2018-07-22T18:13:13Z Demosthenex: trittweiler: i guess that's part of my misunderstanding. i'd have thought a restart had a way to repeat that function :P 2018-07-22T18:13:29Z Lauven_ quit (Ping timeout: 276 seconds) 2018-07-22T18:14:04Z Demosthenex: and it's quite gross atm the way i have the entire long function call repeated in my handler, it's definitely not lispy 2018-07-22T18:14:27Z lnostdal quit (Ping timeout: 240 seconds) 2018-07-22T18:14:28Z Demosthenex: maybe i should just loop it. i've avoided loop though 2018-07-22T18:15:47Z nanoz quit (Read error: Connection reset by peer) 2018-07-22T18:17:41Z Fare quit (Ping timeout: 256 seconds) 2018-07-22T18:18:28Z vultyre joined #lisp 2018-07-22T18:18:42Z vultyre left #lisp 2018-07-22T18:19:18Z megalography joined #lisp 2018-07-22T18:20:33Z vultyre joined #lisp 2018-07-22T18:20:37Z cage_ quit (Quit: Leaving) 2018-07-22T18:23:13Z jackdaniel: Demosthenex: (handler-case (my-function-call) (error () (my-function-call)) 2018-07-22T18:23:34Z jackdaniel: ah, loop indefinetely, hm 2018-07-22T18:24:19Z Bike: i wouldn't repeat the call in the handler or anything if i could avoid it 2018-07-22T18:24:54Z jackdaniel: (tagbody repeat (handler-case (my-function-call) (error () (go repeat))) ; would be more like it 2018-07-22T18:25:08Z vultyre quit (Quit: Leaving) 2018-07-22T18:25:11Z jackdaniel: but either way, that's not a wise thing of handling errors :) 2018-07-22T18:25:17Z jackdaniel: s/thing/way/ 2018-07-22T18:25:25Z asarch quit (Ping timeout: 256 seconds) 2018-07-22T18:25:29Z vultyre joined #lisp 2018-07-22T18:26:21Z Demosthenex: jackdaniel: well, i was looking at restarts. just confused as heck ;] 2018-07-22T18:27:35Z jackdaniel: restarts are meant for interactive use in the debugger in my understanding 2018-07-22T18:27:47Z Bike: you can invoke them programmatically too. 2018-07-22T18:27:52Z jackdaniel: if you want to handle errors, then handler-case and handler-bind are the way to do it 2018-07-22T18:28:14Z jackdaniel: Bike: I'm aware of that – hence "are meant" and "in my understanding" 2018-07-22T18:28:33Z koenig1 is now known as koenig 2018-07-22T18:28:45Z Demosthenex: jackdaniel: i'm querying a web api and hitting a rate limiter sometimes. i'm trying to catch the condition/error raised by dexador that matches the rate limiter, sleep, and then retry 2018-07-22T18:29:31Z Demosthenex: to that effect, trittweiler has made a nice pastebin example, but it's using do to repeat the code. that's narrowing down my question though, can i repeat it via restarts, or just use loop and do 2018-07-22T18:30:37Z Demosthenex: i thought there would be a way to repeat it via restart, not using traditional control macros 2018-07-22T18:31:24Z Bike: there really is not. you are asking for a loop, and to do a loop you do a loop 2018-07-22T18:31:38Z jackdaniel: or loop a do (jk) 2018-07-22T18:31:46Z Demosthenex: Bike: had i written the code, i may have done a loop. but dexador throws a condition, so i went to conditions 2018-07-22T18:32:17Z Demosthenex: and it seemed likely i could have it repeat via restart 2018-07-22T18:32:22Z Bike: you can 2018-07-22T18:32:25Z Bike: but the restart will loop 2018-07-22T18:32:31Z Bike: like in the crawl-2 example you were given 2018-07-22T18:32:53Z Demosthenex: in crawl/crawl2 the dolist construct and a goto are doing the looping 2018-07-22T18:32:59Z Bike: yeah, the goto 2018-07-22T18:33:02Z Bike: so you can just do the tagbody 2018-07-22T18:33:15Z Bike: there is no combined restart and loop construct. if you want to do both, you do both. 2018-07-22T18:33:47Z Demosthenex: but isn't that the point of restart? if the call failed, rollback and try again with potential fixes? 2018-07-22T18:33:54Z Fare joined #lisp 2018-07-22T18:34:02Z Bike: That is one thing you can use a restart for, but not the only one. 2018-07-22T18:34:19Z Bike: You could also have a restart that returns some kind of "request failed" token, for instance 2018-07-22T18:34:21Z trittweiler: Demosthenex, nope, that's orthogonal to each other. That's the beauty of Common Lisp, many well-designed, orthogonal concepts 2018-07-22T18:34:35Z JuanDaugherty quit (Quit: Exeunt) 2018-07-22T18:35:07Z lemonpepper24 joined #lisp 2018-07-22T18:35:11Z trittweiler: Demosthenex, restarts are really just dynamically scoped functions in their own namespace 2018-07-22T18:35:30Z jackdaniel: so you can foot yourself on the foot in n-dimensional space :-) 2018-07-22T18:35:35Z jackdaniel: shoot* drat 2018-07-22T18:36:01Z vultyre quit (Quit: Leaving) 2018-07-22T18:36:46Z lnostdal joined #lisp 2018-07-22T18:38:40Z jack_rabbit joined #lisp 2018-07-22T18:39:51Z Bike: so if you want to execute a call until it succeeds, i'd do something like (loop (restart-case (return (call-goes-here)) (retry ())) i think 2018-07-22T18:41:15Z Demosthenex: yeah. its not as "meta" as i thought then ;] 2018-07-22T18:42:02Z Bike: if the call alters any state, you'll have to repair it yourself 2018-07-22T18:42:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-22T18:43:02Z Demosthenex: i try to stay functional, i often encapsulate local vars and state in let's that are very local.... i can't recall the last time i used setf outside the repl... and loop doesn't return the last call like other things 2018-07-22T18:43:05Z rumbler31 joined #lisp 2018-07-22T18:43:25Z Bike: that's what the return is for 2018-07-22T18:43:34Z Demosthenex: using (loop until with ='s and return is so not lisp. that's C all over :PP 2018-07-22T18:43:46Z smurfrobot quit (Remote host closed the connection) 2018-07-22T18:43:47Z Bike: as you like. 2018-07-22T18:44:28Z Demosthenex: time for more recursion! 2018-07-22T18:46:26Z random-nick joined #lisp 2018-07-22T18:46:36Z trittweiler: you have not read a lot of Common Lisp code if you think that recursion is used more frequently than loop :) 2018-07-22T18:46:51Z Demosthenex: trittweiler: i am a noob. 2018-07-22T18:47:49Z Josh_2: Use do/dotimes/dolist if you don't like loop 2018-07-22T18:47:54Z Josh_2: I like do a whole bunch 2018-07-22T18:47:56Z rumbler31 quit (Ping timeout: 276 seconds) 2018-07-22T18:48:16Z Oladon joined #lisp 2018-07-22T18:48:18Z trittweiler: Common Lisp has lots of looping constructs which are usually favored over recursion. Also be aware that tail-call optimization is not mandatory by the standard, and implementations may only do it at certain compilation settings 2018-07-22T18:48:28Z Demosthenex: i use mapcar and friends constantly. never used do, loop, or dolist, etc :P 2018-07-22T18:48:54Z Jesin quit (Quit: Leaving) 2018-07-22T18:49:57Z Demosthenex: but i don't often do hugely complex code, or interact with users. it's all backend 2018-07-22T18:50:05Z Josh_2: difference strokes for different folks 2018-07-22T18:51:12Z Demosthenex: sure. i learned tons of other languages before getting to lisp, and i like functional constructs. 2018-07-22T18:51:35Z Demosthenex: thus the idea of using a restart natively to allow me to continue linearly passing data between layers appealed, instead of throwing a loop in the middle 2018-07-22T18:52:39Z Jesin joined #lisp 2018-07-22T18:53:49Z aeth: loop is only necessary for collect. It's not really necessary for anything else, although it may be more or less efficient than direct alternatives because it's usually implemented very differently. 2018-07-22T18:54:08Z aeth: by necessary I mean something like (loop for i from 1 to 100 collect i) 2018-07-22T18:54:33Z aeth: You're not going to get something equally concise and simple (and it only gets worse when you have two different collects) without a library. 2018-07-22T18:55:06Z DonVlad quit (Remote host closed the connection) 2018-07-22T18:55:39Z smurfrobot joined #lisp 2018-07-22T18:56:08Z runix_1: Are there CL standard compiler declarations/directives such as e.g. #+nil, and where can I find documentation for these? (can't find anything with google) 2018-07-22T18:56:44Z Bike: clhs #+ 2018-07-22T18:56:44Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/02_dhq.htm 2018-07-22T18:56:48Z Bike: that one's a reader macro 2018-07-22T18:57:19Z Bike: this might be a bit hard to read, so- #+nil essentially comments out the next form 2018-07-22T18:58:56Z fikka joined #lisp 2018-07-22T18:59:07Z runix_1: thanks 2018-07-22T19:00:21Z puchacz quit (Quit: Konversation terminated!) 2018-07-22T19:00:21Z rozenglass joined #lisp 2018-07-22T19:00:32Z pjb: No, not #+nil. It is semantically very different from #-(and) or #+(or) 2018-07-22T19:01:32Z pjb: (and) is true so #-(and) foo will not read foo. (or) is false so #+(or) foo won't read foo. 2018-07-22T19:01:33Z jackdaniel: intention behind #+nil before a form is to comment it. it is incorrect but works. if you write your own code write #+(or) 2018-07-22T19:01:52Z _death: Demosthenex: using a restart for this purpose makes sense.. here's an old macro: https://plaster.tymoon.eu/view/858#858 2018-07-22T19:02:08Z pjb: Intention behid #+nil is to read the following form on in the New Implementation of Lisp, the NIL. 2018-07-22T19:02:11Z jackdaniel: (works under certain, most probably met conditions) 2018-07-22T19:03:32Z lemonpepper24 quit (Ping timeout: 245 seconds) 2018-07-22T19:03:39Z fikka quit (Ping timeout: 260 seconds) 2018-07-22T19:06:20Z DonVlad joined #lisp 2018-07-22T19:07:04Z dtornabene quit (Read error: Connection reset by peer) 2018-07-22T19:07:18Z dtornabene joined #lisp 2018-07-22T19:07:26Z Lauven quit (Ping timeout: 244 seconds) 2018-07-22T19:07:42Z Lauven joined #lisp 2018-07-22T19:10:13Z housel: Though I did use Lisp on Vaxen in the 80s, I never got a chance to use NIL (only Franz Lisp on BSD 4.2). 2018-07-22T19:11:50Z Demosthenex: _death: yeah, that's a goto again, similar to the other. but thanks for the example! =] 2018-07-22T19:12:22Z gravicappa quit (Ping timeout: 264 seconds) 2018-07-22T19:12:44Z jackdaniel: housel: I think that pjb was referencing a joke (I think made by Steel) that CL will work all fine until the New Implementation of Lisp is created 2018-07-22T19:12:55Z _death: user code doesn't need to know it's goto :) 2018-07-22T19:13:11Z jackdaniel: because given how feature conditions are used to distinguish implementations #+sbcl #+ecl etc this implementation will have #+nil for that 2018-07-22T19:13:31Z jackdaniel: and all code which was commented improperly with #+nil will be suddenly enabled :) 2018-07-22T19:13:46Z pjb: jackdaniel: actuall, the New Implementation of Lisp is an old implementation! Dating 1983: https://www.researchgate.net/publication/236556054_Introduction_to_NIL_New_implementation_of_LISP 2018-07-22T19:14:04Z jackdaniel: so you weren't referencing that joke, alright 2018-07-22T19:14:09Z trittweiler: Demosthenex, a retry logically necessities a go-to (except if you have first-class continuations) 2018-07-22T19:14:12Z _death: #-common-lisp (ignore-me) 2018-07-22T19:14:48Z pjb: or https://en.wikipedia.org/wiki/NIL_(programming_language) 2018-07-22T19:15:11Z Pixel_Outlaw joined #lisp 2018-07-22T19:15:20Z pjb: Interesting timeline on this page. 2018-07-22T19:15:25Z housel: IIRC I think NIL did use #+NIL as its feature test 2018-07-22T19:15:29Z Lauven quit (Quit: leaving) 2018-07-22T19:15:36Z robotoad joined #lisp 2018-07-22T19:16:37Z Demosthenex: trittweiler: i was reading something about saving the point in the stack, and rewinding or preserving that data. that's why i thought it worked that way 2018-07-22T19:17:13Z Bike: stack unwinding is a bit different 2018-07-22T19:17:38Z Bike: if you signal an error, and a handler bind catches it, and the handler bind does invoke-restart, with the way most implementations work no stack is actually unwound 2018-07-22T19:18:00Z Bike: restarts are, as trittweiler puts it, just functions 2018-07-22T19:18:08Z Kundry_Wag quit (Remote host closed the connection) 2018-07-22T19:18:18Z pjb: But invoking the restart may unwind the stack. 2018-07-22T19:19:20Z fikka joined #lisp 2018-07-22T19:19:26Z Bike: i wouldn't think so 2018-07-22T19:20:32Z dtornabene_ joined #lisp 2018-07-22T19:21:05Z edgar-rft quit (Ping timeout: 276 seconds) 2018-07-22T19:22:05Z dtornabene quit (Ping timeout: 240 seconds) 2018-07-22T19:22:30Z megalography quit (Ping timeout: 260 seconds) 2018-07-22T19:23:51Z pjb: Obviously. 2018-07-22T19:24:10Z pjb: What happens if you select the ABORT restart? 2018-07-22T19:24:22Z fikka quit (Ping timeout: 264 seconds) 2018-07-22T19:24:26Z Bike: well, the restart itself might unwind, sure 2018-07-22T19:24:30Z Bike: i meant the act of invoking 2018-07-22T19:24:52Z pjb: Yeah, just what I wrote: But invoking the restart may unwind the stack. 2018-07-22T19:24:54Z dtornabene__ joined #lisp 2018-07-22T19:24:59Z dtornabene_ quit (Read error: Connection reset by peer) 2018-07-22T19:27:55Z Demosthenex: and yet, this is why i thought there was a builtin retry function 2018-07-22T19:28:38Z Bike: well... you thought wrong. dunno what else to tell you 2018-07-22T19:29:01Z Bike: stack unwinding and rewinding is separate from control flow anyway, if closely related 2018-07-22T19:29:24Z jasmith joined #lisp 2018-07-22T19:30:27Z EvW joined #lisp 2018-07-22T19:32:00Z _death: I don't think there's any nonlocal exit here: http://www.nhplace.com/kent/CL/Revision-18.lisp 2018-07-22T19:32:24Z vtomole quit (Ping timeout: 252 seconds) 2018-07-22T19:32:35Z _death: erm, I mean non-lexical, non-local exit :) 2018-07-22T19:34:57Z Bike: am i supposed to be able to read this 2018-07-22T19:35:45Z _death: yeah it's weird.. I don't remember reformatting it when I downloaded it years ago 2018-07-22T19:36:38Z edgar-rft joined #lisp 2018-07-22T19:36:53Z megalography joined #lisp 2018-07-22T19:37:49Z pjb: Well, invoke-restart just calls the restart, and indeed, the restart may perform the non-local exit explicitely, or just return. 2018-07-22T19:37:53Z _death: view source.. I think it's just the wrong content-type 2018-07-22T19:38:14Z pjb: so Bike is right. 2018-07-22T19:38:50Z EvW quit (Ping timeout: 260 seconds) 2018-07-22T19:38:54Z trittweiler: absolutely, that's the whole point of invoke-restart-interactively 2018-07-22T19:39:36Z fikka joined #lisp 2018-07-22T19:40:10Z pioneer42 left #lisp 2018-07-22T19:42:29Z Anthaas quit (Ping timeout: 256 seconds) 2018-07-22T19:42:29Z EvW1 joined #lisp 2018-07-22T19:44:45Z fikka quit (Ping timeout: 256 seconds) 2018-07-22T19:44:48Z svillemot quit (Quit: leaving) 2018-07-22T19:44:54Z JuanDaugherty joined #lisp 2018-07-22T19:49:02Z megalography quit (Ping timeout: 276 seconds) 2018-07-22T19:50:04Z fikka joined #lisp 2018-07-22T19:53:44Z dtornabene__ quit (Quit: Leaving) 2018-07-22T19:54:21Z Oladon quit (Quit: Leaving.) 2018-07-22T19:54:59Z fikka quit (Ping timeout: 260 seconds) 2018-07-22T19:59:58Z fikka joined #lisp 2018-07-22T20:01:07Z vlatkoB quit (Remote host closed the connection) 2018-07-22T20:03:26Z eSVGDelux joined #lisp 2018-07-22T20:03:34Z lemonpepper24 joined #lisp 2018-07-22T20:04:58Z eSVG quit (Ping timeout: 260 seconds) 2018-07-22T20:05:10Z angavrilov quit (Remote host closed the connection) 2018-07-22T20:05:17Z fikka quit (Ping timeout: 276 seconds) 2018-07-22T20:05:19Z svillemot joined #lisp 2018-07-22T20:06:14Z megalography joined #lisp 2018-07-22T20:09:47Z svillemot quit (Quit: ZNC 1.6.5+deb1+deb9u1 - http://znc.in) 2018-07-22T20:10:06Z svillemot joined #lisp 2018-07-22T20:12:05Z DonVlad quit 2018-07-22T20:16:04Z zmt01 quit (Quit: Gone.) 2018-07-22T20:16:13Z pierpal quit (Quit: Poof) 2018-07-22T20:16:30Z pierpal joined #lisp 2018-07-22T20:16:55Z rumbler31 joined #lisp 2018-07-22T20:18:06Z rumbler31 quit (Read error: Connection reset by peer) 2018-07-22T20:18:11Z anewuser quit (Ping timeout: 256 seconds) 2018-07-22T20:18:28Z rumbler31 joined #lisp 2018-07-22T20:20:05Z jmercouris joined #lisp 2018-07-22T20:20:18Z fikka joined #lisp 2018-07-22T20:22:57Z rumbler31 quit (Ping timeout: 248 seconds) 2018-07-22T20:23:27Z rumbler31 joined #lisp 2018-07-22T20:24:22Z phoe: If I allocate a STATIC-VECTOR and then save the Lisp image, will the vector still be there when I load the image again? 2018-07-22T20:24:34Z phoe: That's likely a rhetoric question but I need to be sure on that one. 2018-07-22T20:25:18Z anewuser joined #lisp 2018-07-22T20:25:26Z fikka quit (Ping timeout: 276 seconds) 2018-07-22T20:27:06Z JuanDaugherty quit (Quit: Exeunt) 2018-07-22T20:27:14Z pjb: phoe: depends. 2018-07-22T20:27:54Z pjb: phoe: notice that there are no static anything in Common Lisp, so it's already implementation dependant. 2018-07-22T20:27:56Z rumbler31 quit (Ping timeout: 265 seconds) 2018-07-22T20:28:30Z pjb: phoe: then of course, whether any kind of object is preserved thru an image saving will depend on whether there is a live reference to that object or not. 2018-07-22T20:28:54Z pjb: phoe: which of course depends also on whether such a reference can exist. For example, foreign pointers are no such references (they're just integers). 2018-07-22T20:29:04Z pjb: So you see, the right answer ss really: depends. 2018-07-22T20:29:36Z PuercoPop: pjb: they are referring to the library static-vectors I think 2018-07-22T20:30:47Z pierpa joined #lisp 2018-07-22T20:31:03Z pjb: Well, this package uses CFFI, so it would depend strongly on the third depend, I would say. 2018-07-22T20:31:16Z pjb: So the ultimate answer is probably, no. 2018-07-22T20:31:46Z rozenglass quit (Ping timeout: 268 seconds) 2018-07-22T20:36:05Z jack_rabbit is now known as knusbaum 2018-07-22T20:36:18Z dilated_dinosaur quit (Ping timeout: 244 seconds) 2018-07-22T20:40:33Z fikka joined #lisp 2018-07-22T20:43:38Z lemonpepper24 quit (Ping timeout: 276 seconds) 2018-07-22T20:45:35Z fikka quit (Ping timeout: 276 seconds) 2018-07-22T20:48:19Z jeosol: anyone encounted this error in emacs+slime: error in process filter: Reply to canceled synchronous eval request tag=slime-result-1869-33542 sexp=(swank:simple-completions "cl-ppcre::g" 2018-07-22T20:50:08Z dilated_dinosaur joined #lisp 2018-07-22T21:01:03Z fikka joined #lisp 2018-07-22T21:01:16Z smurfrobot quit (Remote host closed the connection) 2018-07-22T21:01:33Z d4ryus joined #lisp 2018-07-22T21:03:08Z Demosthenex quit (Ping timeout: 276 seconds) 2018-07-22T21:03:10Z megalography quit (Ping timeout: 244 seconds) 2018-07-22T21:03:20Z nickenchuggets joined #lisp 2018-07-22T21:03:20Z nickenchuggets quit (Changing host) 2018-07-22T21:03:20Z nickenchuggets joined #lisp 2018-07-22T21:04:40Z Demosthenex joined #lisp 2018-07-22T21:06:23Z fikka quit (Ping timeout: 276 seconds) 2018-07-22T21:12:43Z fikka joined #lisp 2018-07-22T21:14:09Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2018-07-22T21:19:47Z Smokitch quit 2018-07-22T21:27:11Z Fare quit (Ping timeout: 276 seconds) 2018-07-22T21:33:38Z smurfrobot joined #lisp 2018-07-22T21:38:59Z smurfrobot quit (Remote host closed the connection) 2018-07-22T21:49:24Z rumbler31 joined #lisp 2018-07-22T21:52:22Z megalography joined #lisp 2018-07-22T21:55:45Z rumbler31 quit (Ping timeout: 248 seconds) 2018-07-22T21:57:53Z NotSpooky joined #lisp 2018-07-22T22:00:39Z smurfrobot joined #lisp 2018-07-22T22:00:52Z sabrac joined #lisp 2018-07-22T22:01:35Z sabrac: Hello everyone 2018-07-22T22:03:21Z NotSpooky quit (Ping timeout: 264 seconds) 2018-07-22T22:03:45Z subroot quit (Read error: Connection reset by peer) 2018-07-22T22:04:38Z wigust joined #lisp 2018-07-22T22:07:55Z Demosthenex: indeed! 2018-07-22T22:07:55Z ebrasca quit (Read error: Connection reset by peer) 2018-07-22T22:08:04Z ebrasca joined #lisp 2018-07-22T22:08:06Z jeosol: Hi Sabrac 2018-07-22T22:10:36Z patlv joined #lisp 2018-07-22T22:10:47Z jfrancis quit (Ping timeout: 255 seconds) 2018-07-22T22:11:57Z jfranc___ quit (Ping timeout: 240 seconds) 2018-07-22T22:12:37Z runix_1 quit (Quit: leaving) 2018-07-22T22:14:08Z jfrancis joined #lisp 2018-07-22T22:15:30Z jfrancis_ joined #lisp 2018-07-22T22:18:27Z jfrancis quit (Ping timeout: 240 seconds) 2018-07-22T22:20:48Z Kundry_Wag joined #lisp 2018-07-22T22:23:27Z random-nick quit (Ping timeout: 240 seconds) 2018-07-22T22:23:36Z karlosz quit (Quit: karlosz) 2018-07-22T22:24:13Z karlosz joined #lisp 2018-07-22T22:26:34Z Baggers quit (Remote host closed the connection) 2018-07-22T22:30:40Z EvW1 quit (Ping timeout: 256 seconds) 2018-07-22T22:32:29Z jmercouris quit (Remote host closed the connection) 2018-07-22T22:34:41Z BitPuffin quit (Remote host closed the connection) 2018-07-22T22:35:39Z patlv quit (Ping timeout: 244 seconds) 2018-07-22T22:39:39Z patlv joined #lisp 2018-07-22T22:41:23Z NotSpooky joined #lisp 2018-07-22T22:44:05Z anewuser quit (Ping timeout: 240 seconds) 2018-07-22T22:45:11Z patlv quit (Ping timeout: 276 seconds) 2018-07-22T22:45:44Z patlv joined #lisp 2018-07-22T22:45:53Z caltelt joined #lisp 2018-07-22T22:47:53Z MoziM joined #lisp 2018-07-22T22:47:57Z pierpal quit (Ping timeout: 240 seconds) 2018-07-22T22:50:26Z anewuser joined #lisp 2018-07-22T22:54:53Z graphene quit (Remote host closed the connection) 2018-07-22T22:56:10Z graphene joined #lisp 2018-07-22T22:56:20Z lemonpepper24 joined #lisp 2018-07-22T22:56:48Z jasom quit (Ping timeout: 265 seconds) 2018-07-22T22:58:12Z smurfrobot quit (Remote host closed the connection) 2018-07-22T22:58:38Z smurfrobot joined #lisp 2018-07-22T23:00:36Z lumm quit (Quit: lumm) 2018-07-22T23:00:38Z jasom joined #lisp 2018-07-22T23:00:57Z shka1 quit (Ping timeout: 240 seconds) 2018-07-22T23:03:02Z SaganMan quit (Ping timeout: 244 seconds) 2018-07-22T23:06:56Z DemolitionMan quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2018-07-22T23:09:24Z nullniverse quit (Quit: Undertaking stack overflow prevention) 2018-07-22T23:09:57Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-22T23:13:47Z acolarh quit (Ping timeout: 276 seconds) 2018-07-22T23:15:08Z acolarh joined #lisp 2018-07-22T23:15:15Z smurfrobot quit (Remote host closed the connection) 2018-07-22T23:18:57Z patlv quit (Ping timeout: 248 seconds) 2018-07-22T23:26:44Z patlv joined #lisp 2018-07-22T23:27:00Z mange joined #lisp 2018-07-22T23:27:43Z edgar-rft quit (Quit: edgar-rft) 2018-07-22T23:27:44Z Demosthenex: ok, so dexador defines a :status slot in it's condition it raises, how can i acces that in my handle-case? kind of hard to get interactive debugging there ;] 2018-07-22T23:28:29Z anewuser quit (Ping timeout: 260 seconds) 2018-07-22T23:29:29Z PuercoPop: Demosthenex: The condition's slot should have a :reader so you could do something like (status c) or (slot-value 'status c) 2018-07-22T23:30:24Z PuercoPop: Also you don't need to do an actual http request when testing, you could raise the condition directly while testing your code 2018-07-22T23:31:11Z Kundry_Wag joined #lisp 2018-07-22T23:31:45Z SaganMan joined #lisp 2018-07-22T23:34:22Z PuercoPop: it apperas the reader is resposne-status 2018-07-22T23:35:27Z patlv quit (Ping timeout: 240 seconds) 2018-07-22T23:37:58Z PuercoPop: sabrac: Before I forget, a step for json{,b} support would be to include https://github.com/gtod/postgres-json/blob/master/postgres/s-sql.lisp 2018-07-22T23:41:50Z Kaisyu joined #lisp 2018-07-22T23:46:17Z pagnol quit (Ping timeout: 276 seconds) 2018-07-22T23:52:46Z rumbler31 joined #lisp 2018-07-22T23:55:57Z markoong quit (Ping timeout: 240 seconds) 2018-07-22T23:55:58Z Demosthenex: PuercoPop: not a bad idea! i'm thinking that at this time i need to make a more detailed get function to incorporate rate limits and other details without throwing conditions =] 2018-07-22T23:56:57Z rumbler31 quit (Ping timeout: 240 seconds) 2018-07-22T23:57:17Z sabrac: PuercoPop: Thank you. Noted. 2018-07-22T23:57:54Z Demosthenex: and for future reference it should be noted that dexador has helpful handler-case examples and handler-bind for build in restarts on their site :P 2018-07-22T23:59:17Z fikka quit (Ping timeout: 276 seconds) 2018-07-23T00:00:55Z patlv joined #lisp 2018-07-23T00:01:09Z Guest48278 quit (Ping timeout: 260 seconds) 2018-07-23T00:04:21Z fikka joined #lisp 2018-07-23T00:06:28Z anon joined #lisp 2018-07-23T00:06:29Z anon quit (Changing host) 2018-07-23T00:06:29Z anon joined #lisp 2018-07-23T00:06:52Z anon is now known as Guest94317 2018-07-23T00:07:09Z sabrac: PuercoPop: It also has transaction and isolation level enhancements that look useful. Will ping the author. 2018-07-23T00:09:21Z fikka quit (Ping timeout: 264 seconds) 2018-07-23T00:09:55Z jfrancis joined #lisp 2018-07-23T00:15:48Z smurfrobot joined #lisp 2018-07-23T00:20:43Z pagnol joined #lisp 2018-07-23T00:20:57Z smurfrobot quit (Ping timeout: 240 seconds) 2018-07-23T00:23:38Z makomo quit (Ping timeout: 268 seconds) 2018-07-23T00:24:36Z fikka joined #lisp 2018-07-23T00:27:32Z milanj quit (Quit: This computer has gone to sleep) 2018-07-23T00:29:44Z fikka quit (Ping timeout: 260 seconds) 2018-07-23T00:32:50Z loli quit (Read error: Connection reset by peer) 2018-07-23T00:35:04Z fikka joined #lisp 2018-07-23T00:35:50Z quazimodo joined #lisp 2018-07-23T00:37:27Z pagnol quit (Ping timeout: 240 seconds) 2018-07-23T00:38:03Z loli joined #lisp 2018-07-23T00:39:29Z fikka quit (Ping timeout: 248 seconds) 2018-07-23T00:41:53Z EvW joined #lisp 2018-07-23T00:53:33Z karswell joined #lisp 2018-07-23T00:53:37Z rumbler31 joined #lisp 2018-07-23T00:55:07Z fikka joined #lisp 2018-07-23T00:56:15Z elfmacs joined #lisp 2018-07-23T00:58:25Z pierpal joined #lisp 2018-07-23T00:58:26Z rumbler31 quit (Ping timeout: 276 seconds) 2018-07-23T00:59:48Z fikka quit (Ping timeout: 244 seconds) 2018-07-23T01:02:02Z Fare joined #lisp 2018-07-23T01:02:27Z pierpal quit (Ping timeout: 240 seconds) 2018-07-23T01:03:08Z Kundry_Wag quit (Remote host closed the connection) 2018-07-23T01:03:41Z Kundry_Wag joined #lisp 2018-07-23T01:08:04Z Kundry_Wag quit (Ping timeout: 244 seconds) 2018-07-23T01:11:47Z JuanDaugherty joined #lisp 2018-07-23T01:14:59Z dddddd quit (Remote host closed the connection) 2018-07-23T01:15:48Z fikka joined #lisp 2018-07-23T01:18:27Z NotSpooky quit (Remote host closed the connection) 2018-07-23T01:18:54Z NotSpooky joined #lisp 2018-07-23T01:18:55Z lemonpepper24 quit (Ping timeout: 244 seconds) 2018-07-23T01:20:21Z robotoad quit (Ping timeout: 265 seconds) 2018-07-23T01:20:46Z fikka quit (Ping timeout: 264 seconds) 2018-07-23T01:22:09Z X-Scale quit (Ping timeout: 248 seconds) 2018-07-23T01:22:53Z [X-Scale] joined #lisp 2018-07-23T01:23:06Z [X-Scale] is now known as X-Scale 2018-07-23T01:25:44Z Bike quit (Ping timeout: 260 seconds) 2018-07-23T01:26:01Z jasmith quit (Quit: Leaving) 2018-07-23T01:31:12Z Bike joined #lisp 2018-07-23T01:31:39Z Josh_2 quit (Remote host closed the connection) 2018-07-23T01:32:12Z equwal joined #lisp 2018-07-23T01:32:54Z pierpal joined #lisp 2018-07-23T01:33:10Z skidd0 quit (Quit: WeeChat 2.1) 2018-07-23T01:33:28Z robotoad joined #lisp 2018-07-23T01:35:43Z pjb quit (Ping timeout: 256 seconds) 2018-07-23T01:36:06Z fikka joined #lisp 2018-07-23T01:36:47Z equwal quit (Remote host closed the connection) 2018-07-23T01:37:05Z equwal joined #lisp 2018-07-23T01:39:40Z lemonpepper24 joined #lisp 2018-07-23T01:40:37Z fikka quit (Ping timeout: 244 seconds) 2018-07-23T01:42:09Z iAmDecim joined #lisp 2018-07-23T01:43:17Z jibanes quit (Ping timeout: 276 seconds) 2018-07-23T01:44:38Z jibanes joined #lisp 2018-07-23T01:56:26Z fikka joined #lisp 2018-07-23T01:59:53Z robotoad quit (Quit: robotoad) 2018-07-23T02:01:33Z fikka quit (Ping timeout: 264 seconds) 2018-07-23T02:03:33Z Misha_B joined #lisp 2018-07-23T02:04:38Z patlv quit (Quit: Leaving) 2018-07-23T02:04:43Z rumbler31 joined #lisp 2018-07-23T02:08:08Z orivej joined #lisp 2018-07-23T02:11:17Z pjb joined #lisp 2018-07-23T02:11:40Z pjb is now known as Guest70583 2018-07-23T02:17:05Z fikka joined #lisp 2018-07-23T02:17:44Z light2yellow quit (Quit: light2yellow) 2018-07-23T02:18:31Z pierpa quit (Quit: Page closed) 2018-07-23T02:22:19Z fikka quit (Ping timeout: 260 seconds) 2018-07-23T02:26:06Z robotoad joined #lisp 2018-07-23T02:26:36Z Pixel_Outlaw quit (Quit: Leaving) 2018-07-23T02:27:33Z fikka joined #lisp 2018-07-23T02:32:41Z fikka quit (Ping timeout: 276 seconds) 2018-07-23T02:33:04Z scymtym quit (Remote host closed the connection) 2018-07-23T02:35:45Z megalography quit (Ping timeout: 248 seconds) 2018-07-23T02:39:46Z Guest70583 quit (Ping timeout: 260 seconds) 2018-07-23T02:42:33Z AetherWind joined #lisp 2018-07-23T02:44:56Z asarch joined #lisp 2018-07-23T02:47:34Z fikka joined #lisp 2018-07-23T02:49:31Z megalography joined #lisp 2018-07-23T02:49:49Z brendyn joined #lisp 2018-07-23T02:50:06Z marusich quit (Quit: Leaving) 2018-07-23T02:51:25Z JuanDaugherty quit (Quit: Exeunt) 2018-07-23T02:51:30Z pierpal quit (Quit: Poof) 2018-07-23T02:51:48Z pierpal joined #lisp 2018-07-23T02:52:33Z fikka quit (Ping timeout: 264 seconds) 2018-07-23T02:54:03Z NotSpooky quit (Remote host closed the connection) 2018-07-23T02:54:30Z NotSpooky joined #lisp 2018-07-23T02:54:44Z erratic quit (Ping timeout: 256 seconds) 2018-07-23T02:57:57Z Arcaelyx quit (Ping timeout: 240 seconds) 2018-07-23T03:00:49Z megalography quit (Ping timeout: 260 seconds) 2018-07-23T03:03:10Z graphene quit (Remote host closed the connection) 2018-07-23T03:04:32Z graphene joined #lisp 2018-07-23T03:04:46Z beach: Good morning everyone! 2018-07-23T03:05:22Z Arcaelyx joined #lisp 2018-07-23T03:05:43Z smasta joined #lisp 2018-07-23T03:07:12Z mathrick quit (Ping timeout: 256 seconds) 2018-07-23T03:07:29Z equwal: Good morning! 2018-07-23T03:08:12Z fikka joined #lisp 2018-07-23T03:11:31Z EvW quit (Ping timeout: 265 seconds) 2018-07-23T03:12:27Z smurfrobot joined #lisp 2018-07-23T03:13:04Z fikka quit (Ping timeout: 260 seconds) 2018-07-23T03:15:22Z megalography joined #lisp 2018-07-23T03:17:09Z smurfrobot quit (Ping timeout: 260 seconds) 2018-07-23T03:18:11Z karlosz quit (Ping timeout: 276 seconds) 2018-07-23T03:18:42Z fikka joined #lisp 2018-07-23T03:19:14Z mathrick joined #lisp 2018-07-23T03:23:34Z fikka quit (Ping timeout: 260 seconds) 2018-07-23T03:28:23Z karlosz joined #lisp 2018-07-23T03:28:40Z fikka joined #lisp 2018-07-23T03:32:11Z graphene quit (Remote host closed the connection) 2018-07-23T03:33:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-23T03:33:35Z graphene joined #lisp 2018-07-23T03:33:45Z no-defun-allowed: hi beach 2018-07-23T03:36:51Z beach: no-defun-allowed: New nick? 2018-07-23T03:37:17Z no-defun-allowed: hm, matrix updated i guess 2018-07-23T03:37:22Z no-defun-allowed: it used to say theemacsshibe[m] 2018-07-23T03:37:34Z kajo quit (Quit: From my rotting body, flowers shall grow and I am in them and that is eternity. -- E. M.) 2018-07-23T03:39:01Z fikka joined #lisp 2018-07-23T03:41:35Z caltelt_ quit (Ping timeout: 240 seconds) 2018-07-23T03:42:22Z megalography quit (Ping timeout: 264 seconds) 2018-07-23T03:43:02Z igemnace joined #lisp 2018-07-23T03:43:02Z Bike quit (Quit: Lost terminal) 2018-07-23T03:43:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-23T03:46:24Z karlosz quit (Quit: karlosz) 2018-07-23T03:49:03Z fikka joined #lisp 2018-07-23T03:50:39Z voidlily quit (Remote host closed the connection) 2018-07-23T03:53:19Z Fare quit (Ping timeout: 260 seconds) 2018-07-23T03:53:24Z fikka quit (Ping timeout: 244 seconds) 2018-07-23T03:53:30Z voidlily joined #lisp 2018-07-23T03:56:47Z Fare joined #lisp 2018-07-23T03:58:53Z smurfrobot joined #lisp 2018-07-23T04:01:11Z Misha_B quit (Read error: Connection reset by peer) 2018-07-23T04:04:58Z megalography joined #lisp 2018-07-23T04:05:11Z graphene quit (Remote host closed the connection) 2018-07-23T04:06:33Z graphene joined #lisp 2018-07-23T04:06:52Z nanoz joined #lisp 2018-07-23T04:09:29Z fikka joined #lisp 2018-07-23T04:10:26Z smurfrobot quit (Remote host closed the connection) 2018-07-23T04:10:48Z smurfrobot joined #lisp 2018-07-23T04:13:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-23T04:17:24Z NotSpooky quit (Quit: Leaving) 2018-07-23T04:19:56Z fikka joined #lisp 2018-07-23T04:21:25Z jasmith joined #lisp 2018-07-23T04:22:16Z iAmDecim left #lisp 2018-07-23T04:22:54Z igemnace quit (Quit: WeeChat 2.2) 2018-07-23T04:23:46Z iAmDecim joined #lisp 2018-07-23T04:24:16Z SaganMan: Morning beach 2018-07-23T04:24:34Z SaganMan: lol no-defun-allowed 2018-07-23T04:24:53Z smurfrobot quit (Remote host closed the connection) 2018-07-23T04:24:57Z fikka quit (Ping timeout: 256 seconds) 2018-07-23T04:26:40Z smasta quit (Read error: Connection reset by peer) 2018-07-23T04:29:36Z Kevslinger quit (Quit: Connection closed for inactivity) 2018-07-23T04:29:58Z fikka joined #lisp 2018-07-23T04:31:41Z no-defun-allowed: :^) 2018-07-23T04:35:32Z fikka quit (Ping timeout: 276 seconds) 2018-07-23T04:40:44Z brendyn quit (Ping timeout: 276 seconds) 2018-07-23T04:41:04Z sabrac quit (Quit: Konversation terminated!) 2018-07-23T04:47:45Z asarch quit (Quit: Leaving) 2018-07-23T04:50:06Z fikka joined #lisp 2018-07-23T04:51:50Z no-defun-allowed: (expt (exp 1.0d0) (* pi (sqrt -1))) is actually pretty accurate 2018-07-23T04:55:09Z fikka quit (Ping timeout: 260 seconds) 2018-07-23T04:58:19Z Inline quit (Quit: Leaving) 2018-07-23T04:58:54Z shka1 joined #lisp 2018-07-23T05:00:34Z fikka joined #lisp 2018-07-23T05:01:05Z fikka quit (Read error: Connection reset by peer) 2018-07-23T05:10:19Z lemonpepper24 quit (Ping timeout: 260 seconds) 2018-07-23T05:10:48Z fikka joined #lisp 2018-07-23T05:11:35Z nanoz quit (Ping timeout: 240 seconds) 2018-07-23T05:13:26Z iAmDecim quit (Remote host closed the connection) 2018-07-23T05:15:28Z smurfrobot joined #lisp 2018-07-23T05:15:50Z fikka quit (Ping timeout: 276 seconds) 2018-07-23T05:31:09Z fikka joined #lisp 2018-07-23T05:36:22Z fikka quit (Ping timeout: 264 seconds) 2018-07-23T05:37:17Z nickenchuggets quit (Quit: Leaving) 2018-07-23T05:39:14Z caltelt quit (Ping timeout: 276 seconds) 2018-07-23T05:45:30Z flamebeard joined #lisp 2018-07-23T05:48:20Z lemo joined #lisp 2018-07-23T05:49:18Z smurfrobot quit (Remote host closed the connection) 2018-07-23T05:51:23Z fikka joined #lisp 2018-07-23T05:56:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-23T05:57:24Z vlatkoB joined #lisp 2018-07-23T05:59:23Z smurfrobot joined #lisp 2018-07-23T06:01:52Z fikka joined #lisp 2018-07-23T06:02:23Z fikka quit (Read error: Connection reset by peer) 2018-07-23T06:11:43Z eminhi joined #lisp 2018-07-23T06:12:05Z fikka joined #lisp 2018-07-23T06:16:31Z fikka quit (Ping timeout: 244 seconds) 2018-07-23T06:24:35Z smurfrobot quit (Remote host closed the connection) 2018-07-23T06:24:44Z orivej quit (Ping timeout: 276 seconds) 2018-07-23T06:32:22Z fikka joined #lisp 2018-07-23T06:33:21Z quazimodo quit (Ping timeout: 264 seconds) 2018-07-23T06:33:28Z smurfrobot joined #lisp 2018-07-23T06:33:55Z robotoad quit (Quit: robotoad) 2018-07-23T06:33:57Z shka1 quit (Ping timeout: 240 seconds) 2018-07-23T06:36:07Z scymtym joined #lisp 2018-07-23T06:37:14Z fikka quit (Ping timeout: 260 seconds) 2018-07-23T06:41:17Z smurfrobot quit (Remote host closed the connection) 2018-07-23T06:42:32Z smurfrobot joined #lisp 2018-07-23T06:42:52Z fikka joined #lisp 2018-07-23T06:47:44Z fikka quit (Ping timeout: 260 seconds) 2018-07-23T06:48:20Z fikka joined #lisp 2018-07-23T06:49:05Z equwal quit (Ping timeout: 240 seconds) 2018-07-23T06:49:24Z igemnace joined #lisp 2018-07-23T06:50:08Z gravicappa joined #lisp 2018-07-23T06:54:24Z dddddd joined #lisp 2018-07-23T06:58:49Z samla joined #lisp 2018-07-23T06:59:59Z Smokitch joined #lisp 2018-07-23T07:00:24Z samla: I'm on my bus to work and I just wondered: can deftypes contain arbitrary code? That is, is it like defmacro but must only return a valid type form? 2018-07-23T07:00:43Z krwq left #lisp 2018-07-23T07:01:53Z LdBeth: samla: yes 2018-07-23T07:02:09Z Fare quit (Ping timeout: 264 seconds) 2018-07-23T07:02:14Z samla: Nice haha :-) 2018-07-23T07:03:01Z cpape quit (Remote host closed the connection) 2018-07-23T07:08:19Z smurfrobot quit (Remote host closed the connection) 2018-07-23T07:12:28Z lemo quit (Quit: lemo) 2018-07-23T07:12:49Z lemo joined #lisp 2018-07-23T07:15:58Z bmansurov quit (Ping timeout: 264 seconds) 2018-07-23T07:16:48Z bmansurov joined #lisp 2018-07-23T07:17:42Z milanj joined #lisp 2018-07-23T07:23:27Z bmansurov quit (Ping timeout: 256 seconds) 2018-07-23T07:24:54Z bmansurov joined #lisp 2018-07-23T07:30:57Z angavrilov joined #lisp 2018-07-23T07:40:09Z eSVGDelux quit (Quit: Leaving) 2018-07-23T07:45:36Z graphene quit (Remote host closed the connection) 2018-07-23T07:46:58Z graphene joined #lisp 2018-07-23T07:50:25Z fikka quit (Ping timeout: 248 seconds) 2018-07-23T07:52:35Z newbie32 quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2018-07-23T07:53:23Z xificurC: is there a way to tell the printer to print downcased symbols? 2018-07-23T07:53:51Z samla quit (Remote host closed the connection) 2018-07-23T07:54:03Z edgar_ joined #lisp 2018-07-23T07:56:11Z edgar_ quit (Client Quit) 2018-07-23T07:56:41Z edgar_ joined #lisp 2018-07-23T07:56:57Z JuanDaugherty joined #lisp 2018-07-23T07:57:04Z beach: xificurC: Sort of. 2018-07-23T07:57:25Z beach: xificurC: (setf (readtable-case *readtable*) :invert) 2018-07-23T07:57:46Z beach: xificurC: But it's best to set it back before you start interacting again. 2018-07-23T07:58:02Z samla joined #lisp 2018-07-23T07:58:44Z _death: (setf *print-case* :downcase) 2018-07-23T07:59:46Z beach: Yeah, that's better. 2018-07-23T08:01:40Z quazimodo joined #lisp 2018-07-23T08:01:53Z shka: good day 2018-07-23T08:02:06Z beach: Hello shka. 2018-07-23T08:02:16Z edgar_ quit (Quit: Leaving) 2018-07-23T08:02:59Z edgar_ joined #lisp 2018-07-23T08:03:32Z mange quit (Ping timeout: 276 seconds) 2018-07-23T08:04:10Z edgar_ quit (Client Quit) 2018-07-23T08:05:44Z samla quit (Remote host closed the connection) 2018-07-23T08:06:16Z fikka joined #lisp 2018-07-23T08:06:24Z xificurC: _death: thanks, that's safer than twiddling with readtable-case :) 2018-07-23T08:07:09Z beach: Still not perfect. 2018-07-23T08:07:33Z hhdave joined #lisp 2018-07-23T08:08:10Z xificurC: beach: in which way, might be enough for my simple use case 2018-07-23T08:09:05Z beach: Well, you haven't told us the details about your use case. But this one: (let ((*print-case* :downcase)) (print '|aB|)) won't print the B in lower case. 2018-07-23T08:09:44Z beach: And you didn't tell us whether only entirely upper-case symbols were concerned. 2018-07-23T08:09:57Z xificurC: I just have a bunch of well behaved symbols and keywords and want to print them lowercased. No mixed cases on the symbols, everything was read in with default settings, no bars 2018-07-23T08:10:05Z beach: Good. 2018-07-23T08:10:15Z shka: it sound suspecious 2018-07-23T08:10:18Z shka: *sounds 2018-07-23T08:10:19Z xificurC: :) 2018-07-23T08:10:25Z xificurC: shka: the use case? 2018-07-23T08:10:37Z shka: yup 2018-07-23T08:10:46Z shka: why lowercase specificly? 2018-07-23T08:11:24Z xificurC: ah that. taste 2018-07-23T08:11:41Z fikka quit (Ping timeout: 268 seconds) 2018-07-23T08:12:01Z shka: riiiiiiiight 2018-07-23T08:12:08Z xificurC: ? 2018-07-23T08:12:16Z shka: in that case i think it is not worth it 2018-07-23T08:12:26Z shka: i mean, do only things you must do 2018-07-23T08:12:47Z shka: why forcing language out of its design 2018-07-23T08:12:50Z shka: ? 2018-07-23T08:13:26Z xificurC: I was told to do it. I could only go back and argue. If it's this simple to get it done, then that's the path of least resistance 2018-07-23T08:13:42Z shka: well, i guess... 2018-07-23T08:13:53Z lemo quit (Changing host) 2018-07-23T08:13:53Z lemo joined #lisp 2018-07-23T08:14:03Z shka: it does not make idea good anyway 2018-07-23T08:14:42Z JuanDaugherty quit (Quit: Exeunt) 2018-07-23T08:14:53Z xificurC: it doesn't pose any issues for now either way 2018-07-23T08:18:40Z Guest70583 joined #lisp 2018-07-23T08:18:41Z fikka joined #lisp 2018-07-23T08:19:23Z milanj quit (Quit: This computer has gone to sleep) 2018-07-23T08:19:42Z hhdave quit (Ping timeout: 268 seconds) 2018-07-23T08:20:01Z Guest70583 is now known as pjb 2018-07-23T08:21:31Z xificurC: hehe, *print-case* doesn't seem to work with keywords 2018-07-23T08:21:43Z trittweiler: xificurC, You may also want to have a look at the ~( FORMAT directive 2018-07-23T08:22:46Z beach: xificurC: Oh? 2018-07-23T08:22:50Z xificurC: trittweiler: I know ~( , unfortunately it doesn't fit this task. 2018-07-23T08:22:54Z xificurC: beach: scratch that 2018-07-23T08:23:03Z xificurC: works 2018-07-23T08:23:08Z beach: Whew! 2018-07-23T08:24:54Z lemo quit (Quit: lemo) 2018-07-23T08:27:54Z vlad_ joined #lisp 2018-07-23T08:28:04Z dadabidet joined #lisp 2018-07-23T08:28:26Z dadabidet: hello, any website available when I can exercise myself with lisp? 2018-07-23T08:28:45Z lemo joined #lisp 2018-07-23T08:29:04Z shka: dadabidet: practical common lisp is largely avaialable for free, and so is PAIP 2018-07-23T08:29:18Z beach: dadabidet: Some books are available on the web. Are you looking for something more sophisticated? 2018-07-23T08:29:20Z shka: both excelent for various reasons 2018-07-23T08:29:35Z dadabidet: Im just a beginner and I learn by practice 2018-07-23T08:30:01Z dadabidet: I already know python, C, etc 2018-07-23T08:30:14Z dadabidet: I like to use functional programming when I can 2018-07-23T08:30:22Z beach: dadabidet: So what are you looking for in a website that would support your way of learning? 2018-07-23T08:30:24Z shka: dadabidet: i think that you should pick a book 2018-07-23T08:30:38Z pagnol joined #lisp 2018-07-23T08:30:52Z xificurC: I think he wants koans 2018-07-23T08:30:53Z beach: dadabidet: Ah, you know Common Lisp in that a particularly "functional" programming language in that sense, though it supports a functional style among others. 2018-07-23T08:30:55Z random-nick joined #lisp 2018-07-23T08:32:34Z _cosmonaut_ joined #lisp 2018-07-23T08:34:58Z shka: land of lisp advocates for functional style in common lisp 2018-07-23T08:35:22Z beach: I am sorry to hear that. 2018-07-23T08:35:30Z shka: why? 2018-07-23T08:35:36Z lemo quit (Quit: lemo) 2018-07-23T08:35:50Z beach: I am just partly joking. I think it would be sad not to take advantage of the excellent object system. 2018-07-23T08:36:05Z shka: oh, obviously 2018-07-23T08:36:11Z lemo joined #lisp 2018-07-23T08:36:18Z shka: but you can mix the two 2018-07-23T08:36:26Z lemo quit (Changing host) 2018-07-23T08:36:26Z lemo joined #lisp 2018-07-23T08:36:28Z beach: That's different. 2018-07-23T08:36:35Z makomo joined #lisp 2018-07-23T08:36:55Z shka: or you can simply provide protocols with inmutable objects 2018-07-23T08:36:57Z beach: I take "advocate a functional style" to mean not to use mutation. 2018-07-23T08:37:16Z shka: that's what it means nowdays 2018-07-23T08:37:43Z dadabidet: Im more interested in a code challenge than a long, boring book about lisp 2018-07-23T08:37:51Z dadabidet: I want to write code 2018-07-23T08:37:57Z shka: land of lisp is not boring 2018-07-23T08:38:01Z shka: :P 2018-07-23T08:38:01Z xificurC: it often gets relaxed not to use visible mutations 2018-07-23T08:38:09Z shka: quite opposite in fact 2018-07-23T08:38:48Z xificurC: not sure of the quality, but there's https://github.com/google/lisp-koans 2018-07-23T08:39:34Z xificurC: dadabidet: I like doing exercises too, but reading an introductory book first will pay off in the long run 2018-07-23T08:39:55Z dadabidet: https://learnxinyminutes.com/docs/common-lisp/ seems fine 2018-07-23T08:40:03Z graphene quit (Remote host closed the connection) 2018-07-23T08:41:28Z graphene joined #lisp 2018-07-23T08:43:00Z beach: dadabidet: You can get exercises from some of those books without reading the text, if that's what you want to do. 2018-07-23T08:44:23Z xrash joined #lisp 2018-07-23T08:44:31Z dadabidet: I want to learn it quickly, I don't want to read long explanations. I want something that explains this == that and it does this used like this 2018-07-23T08:45:00Z schweers joined #lisp 2018-07-23T08:45:00Z beach: xificurC: So how do the koans work? Do you have to type your code as input to a REPL or something? 2018-07-23T08:45:01Z dadabidet: not some long novel about how to use lisp and why and how blablabla 2018-07-23T08:45:12Z beach: dadabidet: You can get exercises from some of those books without reading the text, if that's what you want to do. 2018-07-23T08:46:22Z beach: dadabidet: Your learning style is very risky though. If you know anything about programming already, you know that its main purpose is communication with other humans. Just because your program "works", does not mean it is suitable for such communication. 2018-07-23T08:46:53Z dadabidet: then call me an autist I guess 2018-07-23T08:47:02Z beach: dadabidet: And that's fine as long as you don't need to ask for help. Because then, the people you ask might require you to use widely accepted conventions. 2018-07-23T08:47:37Z dadabidet: conventions are for psycho rigid people and normative slaves 2018-07-23T08:47:40Z beach: dadabidet: But if you just want to fix your own code, not ask for help, then sure, any exercise will do. The koans, the exercises in PAIP, etc. 2018-07-23T08:48:19Z beach: dadabidet: Yes, I see where this is going. 2018-07-23T08:50:01Z lemo quit (Quit: lemo) 2018-07-23T08:51:13Z dadabidet: Ill get by, thanks for the book suggestions 2018-07-23T08:51:24Z beach: Good luck. 2018-07-23T08:51:46Z dadabidet: :) 2018-07-23T08:59:55Z heisig joined #lisp 2018-07-23T09:01:03Z dadabidet: is scheme easier to learn than lisp? 2018-07-23T09:01:11Z pjb: xificurC: *print-case* works perfectly with keywords: (let ((*print-case* :downcase)) (prin1-to-string :foo)) #| --> ":foo" |# 2018-07-23T09:01:45Z antoszka: dadabidet: It's a smaller language, not making it necessarily easier to learn, as you still need to get things done in the end. 2018-07-23T09:01:46Z beach: dadabidet: This channel is dedicated to Common Lisp, so you won't get a straight answer. 2018-07-23T09:01:48Z pjb: xificurC: (loop :for *print-case* :in '(:downcase :upcase :capitalize) :collect (prin1-to-string :foo)) #| --> (":foo" ":FOO" ":Foo") |# 2018-07-23T09:02:25Z antoszka: dadabidet: A good place to discuss this might be #lispcafe, where many of us hang out. 2018-07-23T09:02:33Z pjb: dadabidet: it depends on you learning style and learning pace. 2018-07-23T09:02:47Z beach: pjb: We already know the learning style. 2018-07-23T09:02:51Z fm4d left #lisp 2018-07-23T09:03:30Z pjb: dadabidet: for example, one big problem I had trying to learn lisp with scheme, is that each time I came back to it the language or idiom was different. It went from r3rs to r5rs, and depending on the computer to various scheme implementations each with different variants and extensions. It was very confusing. 2018-07-23T09:04:01Z pjb: dadabidet: I only took off when I encountered Common Lisp, since then the language was the same both in time and space. 2018-07-23T09:05:36Z pjb: dadabidet: now, about ease of learning, I would say that's a consideration only for your first programming language. So for children, I would say, learn scheme first. And then you will learn real ("industrial strength") programming languages. 2018-07-23T09:06:58Z beach: pjb: I don't think dadabidet is interested in idioms or industrial programming. 2018-07-23T09:07:32Z dadabidet: I found his input interesting 2018-07-23T09:07:50Z dadabidet: I like industrial languages 2018-07-23T09:07:53Z pjb: https://soundcloud.com/industrialstrength 2018-07-23T09:07:58Z pjb: :-) 2018-07-23T09:08:42Z schweers: If we count Common Lisp as an industrial language, then it seems large parts of industry don’t like industrial languages ;-P 2018-07-23T09:08:53Z schweers: at least not all of them 2018-07-23T09:09:08Z pjb: The industry of math theorem production… 2018-07-23T09:10:23Z beach: schweers: They probably don't respect conventions either. 2018-07-23T09:11:11Z schweers: hmm … I guess it depends on which conventions. It seems to me that every company has their own „coding conventions“, so I guess they don’t respect them. 2018-07-23T09:11:23Z pjb: Convention and style are to be broken, but only with better conventions and better style. (and as always, "better" and "best" have a local definitiokn). 2018-07-23T09:12:39Z pjb: Imagine the convention police coming to Church and telling them that with his lambda-calculus he wasn't following the conventions and style of Turing Machine programming! 2018-07-23T09:12:51Z xificurC: pjb: yes, I wrote a couple lines after that I misspoke 2018-07-23T09:13:17Z pjb: Oh, it referenced that. Ok. 2018-07-23T09:13:19Z beach: schweers: That's a bad sign according to my experience. It usually means that someone with power has his or her own ideas and is ready and willing to impose them on others. 2018-07-23T09:13:36Z pjb: It's how it works, indeed. 2018-07-23T09:13:37Z megalography quit (Ping timeout: 248 seconds) 2018-07-23T09:13:55Z nickenchuggets joined #lisp 2018-07-23T09:13:55Z nickenchuggets quit (Changing host) 2018-07-23T09:13:55Z nickenchuggets joined #lisp 2018-07-23T09:14:00Z gousuto joined #lisp 2018-07-23T09:14:00Z gousuto quit (Changing host) 2018-07-23T09:14:00Z gousuto joined #lisp 2018-07-23T09:14:44Z schweers: I have seen one company, where – if I recall correctly – they mandated where to put curly braces for C# and C++ code. Which I guess is the most important thing in a programming project. 2018-07-23T09:15:36Z xificurC: beach: I think I did the koans a very, very long time ago, but not sure anymore, might have been a dream :) The README shows the simplest use is to run `sh meditate.sh` to see immediate feedback on file changes. So one is expected to fill in a blank in a file, save it and see the result in the terminal 2018-07-23T09:15:52Z beach: schweers: I wouldn't necessarily frown upon such stuff. They could very well have tools that use regular expressions to parse code, and such tools might require more rigor than what the compiler requires. 2018-07-23T09:16:04Z pjb: schweers: the point is that when one convention is followed, it allows for automatic detection of problems, and to ignore these low level considerations. 2018-07-23T09:16:07Z xificurC: so no REPL in default setup, although noone is forcing you to not use one 2018-07-23T09:16:08Z dadabidet quit (Quit: Leaving) 2018-07-23T09:16:19Z beach: xificurC: I guess I'll have to see for myself sometime. 2018-07-23T09:16:44Z schweers: As far as I know they did not. But I can’t help but wonder that such discussion only befalls languages with „syntax“. I.e. not the lisp family. 2018-07-23T09:16:46Z pjb: schweers: of course, this works only if your convention aim at making invisible unimportant things like parentheses or braces, not if it put one of them per line… 2018-07-23T09:16:59Z schweers: beach: also: wouldn’t you frown upon using regexps to parse code? 2018-07-23T09:17:14Z beach: schweers: Heh, I guess so. :) 2018-07-23T09:17:36Z beach: schweers: It is less necessary in Common Lisp than in other languages. 2018-07-23T09:17:41Z pjb: To have fun, I would write a C compiler using only regexps, that's able to compile most of the C code out there… 2018-07-23T09:17:52Z schweers: beach: I know, which is my point 2018-07-23T09:17:53Z xificurC: replicating a parser to get an AST for some languages is really complicated though :) See shellcheck for a good example 2018-07-23T09:17:58Z pjb: Notice that no actual program has an infinite level of embedded expressions. 2018-07-23T09:18:23Z beach: schweers: To get a somewhat maintainable code base, GNU Emacs has some interesting use of the combination of C macros and Unix tools. 2018-07-23T09:18:47Z schweers: I know, I tried to understand it at one point. 2018-07-23T09:18:49Z pjb: clisp, similarly. 2018-07-23T09:19:02Z pjb: and actually, any sizeable C program. 2018-07-23T09:19:07Z beach: Yeah. 2018-07-23T09:19:39Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-23T09:19:39Z gousuto quit (Read error: Connection reset by peer) 2018-07-23T09:19:54Z xificurC: my favorite C code using all the well known style conventions - https://github.com/jsoftware/jsource/blob/master/jsrc/vrand.c 2018-07-23T09:20:36Z xificurC: also solving the longest running debate of spaces or tabs 2018-07-23T09:21:01Z beach: That looks just awful to me. 2018-07-23T09:21:06Z beach: Am I missing something? 2018-07-23T09:21:31Z xificurC: an /s probably 2018-07-23T09:22:23Z xificurC: it is awful. Offtopic, sorry 2018-07-23T09:23:16Z LdBeth: I’m allergic to none descriptive symbols 2018-07-23T09:24:22Z xificurC: you mean like F2(jtdeal){A h,y,z;I at,d,*hv,i,i1,j,k,m,n,p,q,*v,wt,*yv,*zv;UI c,s,t,x=jt->rngM[jt->rng]; ? 2018-07-23T09:25:07Z LdBeth: Exactly 2018-07-23T09:26:23Z LdBeth: In my opinion good source code should be self descriptive. 2018-07-23T09:27:11Z schweers: some people seem to seriously claim that long names take longer to type 2018-07-23T09:27:46Z schweers: my only complaint with discriptive (i.e. long) names is that they take up screen real estate. But that’s a tradeoff I am mostly willing to make. 2018-07-23T09:27:49Z light2yellow joined #lisp 2018-07-23T09:27:56Z megalography joined #lisp 2018-07-23T09:28:07Z xificurC: I'm not sure if I would agree, although you haven't given all the details. Of course this example was far over any limit 2018-07-23T09:28:17Z lumm joined #lisp 2018-07-23T09:28:45Z LdBeth: And, also, well factorized. 2018-07-23T09:29:41Z LdBeth: e.g DEF .cat ...; DEF .pet ...; .pet .cat 2018-07-23T09:30:17Z hhdave joined #lisp 2018-07-23T09:30:22Z xificurC: what language's syntax are you trying to mimic here? 2018-07-23T09:30:30Z xificurC: s/what/which/ 2018-07-23T09:30:31Z LdBeth: FORTH 2018-07-23T09:30:54Z xificurC: why DEF then 2018-07-23T09:31:23Z erratic joined #lisp 2018-07-23T09:32:08Z LdBeth: You can define a macro to convert DEF to : which makes it easy to read 2018-07-23T09:32:15Z LdBeth: So why not? :) 2018-07-23T09:32:27Z xificurC: forth can be terse to the point one needs separate documentation to get to the "descriptive" point 2018-07-23T09:33:05Z quazimodo quit (Ping timeout: 240 seconds) 2018-07-23T09:33:37Z xificurC: but I can hear the off-topic-stick being pulled from somewhere, so I'll shut up now 2018-07-23T09:33:56Z LdBeth: It does not limit user on how to use it. 2018-07-23T09:34:06Z LdBeth me too 2018-07-23T09:34:33Z schweers comes FORTH with the stick ;-P 2018-07-23T09:35:42Z quazimodo joined #lisp 2018-07-23T09:38:05Z smurfrobot joined #lisp 2018-07-23T09:40:57Z DataLinkDroid joined #lisp 2018-07-23T09:44:09Z renzhi joined #lisp 2018-07-23T09:44:11Z shka: there used to be common lisp library for matrixes with GPU support 2018-07-23T09:44:18Z shka: can't remember how it was called now 2018-07-23T09:44:33Z shka: can anyone refresh my memory? 2018-07-23T09:45:04Z hhdave quit (Ping timeout: 260 seconds) 2018-07-23T09:53:23Z pjb: In my opinion good source code should be self destructive. 2018-07-23T09:53:54Z zooey quit (Remote host closed the connection) 2018-07-23T09:54:11Z pjb: shka: cl-cuda 2018-07-23T09:54:27Z pjb: and perhaps a few others, if you go thru external libraries. 2018-07-23T09:54:57Z troydm quit (Ping timeout: 240 seconds) 2018-07-23T09:55:05Z zooey joined #lisp 2018-07-23T09:55:33Z smurfrobot quit (Remote host closed the connection) 2018-07-23T09:56:35Z hhdave_ joined #lisp 2018-07-23T09:59:43Z shka: pjb: hmmm, ok 2018-07-23T10:07:28Z pagnol quit (Ping timeout: 244 seconds) 2018-07-23T10:07:28Z eminhi quit (Quit: leaving) 2018-07-23T10:10:13Z quazimodo quit (Remote host closed the connection) 2018-07-23T10:12:14Z m00natic joined #lisp 2018-07-23T10:16:35Z orivej joined #lisp 2018-07-23T10:24:29Z pagnol joined #lisp 2018-07-23T10:32:35Z brendyn joined #lisp 2018-07-23T10:32:55Z shka: pjb: cl-cuda looks mighty impressive 2018-07-23T10:33:10Z shka: sadly i don't have nvidia graphics card 2018-07-23T10:34:15Z LdBeth: pjb: destroy the city you live in 2018-07-23T10:39:48Z AetherWind quit (Quit: Leaving) 2018-07-23T10:41:10Z graphene quit (Remote host closed the connection) 2018-07-23T10:42:29Z graphene joined #lisp 2018-07-23T10:46:49Z msb quit (Ping timeout: 265 seconds) 2018-07-23T10:47:06Z msb joined #lisp 2018-07-23T10:48:51Z optikalmouse joined #lisp 2018-07-23T10:52:15Z Ven`` joined #lisp 2018-07-23T10:52:20Z Ven`` quit (Read error: No route to host) 2018-07-23T10:55:20Z smurfrobot joined #lisp 2018-07-23T10:57:11Z BitPuffin joined #lisp 2018-07-23T11:00:54Z fikka quit (Ping timeout: 260 seconds) 2018-07-23T11:00:57Z pjb: LdBeth: it's already barely recognizable; it'll probably soon fall over without me doing anything. 2018-07-23T11:03:07Z Ven`` joined #lisp 2018-07-23T11:03:26Z LdBeth becomes noticeably transparent 2018-07-23T11:05:42Z pjb: shka: buying advice: https://www.nvidia.com/en-us/data-center/dgx-station/ (Dear Santa, I've been a good boy, …) 2018-07-23T11:05:51Z pfdietz quit (Ping timeout: 244 seconds) 2018-07-23T11:06:33Z pjb: Hey, there's a 5 for 4 promotion1 2018-07-23T11:06:33Z fikka joined #lisp 2018-07-23T11:06:38Z pjb: https://www.nvidia.com/object/nvidia-dgx-station-order-now.html 2018-07-23T11:07:26Z smurfrobot quit (Remote host closed the connection) 2018-07-23T11:08:36Z pfdietz joined #lisp 2018-07-23T11:09:39Z smurfrobot joined #lisp 2018-07-23T11:10:17Z no-defun-allowed: pjb: hey we don't want fireballs in the lab, just ai machines! 2018-07-23T11:10:46Z jmercouris joined #lisp 2018-07-23T11:10:57Z LdBeth: Which is steam powered 2018-07-23T11:10:58Z jmercouris: Anyone ever use Crane? 2018-07-23T11:10:59Z minion: jmercouris, memo from beach: Yes, I have been busy with SICL specification stuff. 2018-07-23T11:11:11Z jmercouris: I am looking at the readme here: https://github.com/eudoxia0/crane#filtering 2018-07-23T11:11:28Z jmercouris: and every time I invoke a filter, I get a message that some method is not implemented, perhaps I have to implement it 2018-07-23T11:11:29Z jmercouris: I'm not sure 2018-07-23T11:12:04Z markoong joined #lisp 2018-07-23T11:12:06Z pjb: I'm not sure either. 2018-07-23T11:12:23Z jmercouris: Here is the error: https://gist.github.com/1f1ea2acefb51828346f397bd5247cbc 2018-07-23T11:12:45Z jmercouris: Seems that I have to implement inflate for some reason, I can't imagine why, nothing mentioned in the readme 2018-07-23T11:13:09Z fikka quit (Ping timeout: 260 seconds) 2018-07-23T11:13:14Z pjb: M-. on the name of the method will list all the methods available. Check the list. 2018-07-23T11:13:50Z fikka joined #lisp 2018-07-23T11:14:02Z jmercouris: There seems to be quite a few available 2018-07-23T11:14:08Z pjb: I mean, the name of the generic function. methods don't have names. 2018-07-23T11:14:15Z jmercouris: https://gist.github.com/6db603973eb174fc371e8c10b57ee5e3 2018-07-23T11:14:21Z pjb: You would need a (string symbol) specialisation. 2018-07-23T11:14:53Z jackdaniel: casual look at README shows Inflate/Deflate paragraph 2018-07-23T11:14:58Z pjb: So there's a method for the symbol crane.types:text, but you passed the symbol text. 2018-07-23T11:15:04Z jackdaniel: which shows definflate and defdeflate macros 2018-07-23T11:15:07Z jmercouris: jackdaniel: Yes I've looked at it and linked it 2018-07-23T11:15:13Z pjb: Perhaps using the package crane.types, or passing crane.type:text would work better. 2018-07-23T11:15:33Z jmercouris: I just don't understand what definflate and defdeflate do, and what I would have to do 2018-07-23T11:15:52Z pjb: You would have to pass the exact symbol, not another symbol with the same name. 2018-07-23T11:16:00Z ebrasca` joined #lisp 2018-07-23T11:16:18Z jmercouris: Ah, I see 2018-07-23T11:16:24Z jackdaniel: if you had looked at src/inflate-deflate.lisp file you'd fine some documentation string in package definition 2018-07-23T11:16:28Z edgar_ joined #lisp 2018-07-23T11:16:43Z jackdaniel: they are used to serialize-deserialize CLOS objects 2018-07-23T11:17:00Z jackdaniel: (with mapping to column types) 2018-07-23T11:17:14Z ebrasca quit (Ping timeout: 260 seconds) 2018-07-23T11:17:19Z jmercouris: Yea, but if you read up above, I've defined a standard class, I'm not interested in inflating and deflating 2018-07-23T11:17:26Z ebrasca` is now known as ebrasca 2018-07-23T11:17:27Z jmercouris: I'm sorry I don't mean standard class 2018-07-23T11:17:35Z vlad_ quit (Ping timeout: 240 seconds) 2018-07-23T11:17:36Z jmercouris: I mean a "deftable" 2018-07-23T11:17:45Z jmercouris: which should support filtering without having to create an inflater/deflater 2018-07-23T11:17:53Z jmercouris: I think PJB is right, something is wrong with my symbols 2018-07-23T11:18:13Z jackdaniel: I don't understand what you are saying, but since you have your answer I won't inquire 2018-07-23T11:18:21Z fikka quit (Ping timeout: 264 seconds) 2018-07-23T11:18:29Z jmercouris: pjb was correct 2018-07-23T11:18:38Z jmercouris: pjb: thank you 2018-07-23T11:18:49Z pjb: you're welcome! 2018-07-23T11:19:31Z edgar_ quit (Client Quit) 2018-07-23T11:19:57Z edgar_ joined #lisp 2018-07-23T11:20:25Z fikka joined #lisp 2018-07-23T11:21:57Z edgar_ quit (Client Quit) 2018-07-23T11:22:22Z edgar_ joined #lisp 2018-07-23T11:24:23Z xrash quit (Read error: Connection reset by peer) 2018-07-23T11:25:07Z optikalmouse quit (Quit: Leaving) 2018-07-23T11:25:35Z edgar_ quit (Client Quit) 2018-07-23T11:31:29Z shka: pjb: heh, i can't afford that 2018-07-23T11:31:35Z shka: but it looks sexy 2018-07-23T11:32:09Z shka: and the case is elegantly designed 2018-07-23T11:32:39Z shka: which i oddly enough like 2018-07-23T11:33:07Z shka: if you are selling super high end computer, it should not also run well, but also look awesome 2018-07-23T11:33:17Z shka: *not only 2018-07-23T11:33:41Z xrash joined #lisp 2018-07-23T11:35:58Z Kundry_Wag joined #lisp 2018-07-23T11:42:02Z lieven: lol back in the day, the Cray came with leather seats 2018-07-23T11:42:13Z faraco joined #lisp 2018-07-23T11:42:55Z shka: i approve that 2018-07-23T11:44:01Z Kundry_Wag quit (Remote host closed the connection) 2018-07-23T11:47:23Z faraco quit (Quit: leaving) 2018-07-23T11:51:38Z smurfrobot quit (Remote host closed the connection) 2018-07-23T11:53:09Z Kundry_Wag joined #lisp 2018-07-23T11:53:48Z smurfrobot joined #lisp 2018-07-23T11:55:11Z EvW1 joined #lisp 2018-07-23T11:55:22Z Kundry_Wag quit (Remote host closed the connection) 2018-07-23T11:58:36Z smurfrobot quit (Ping timeout: 256 seconds) 2018-07-23T12:04:17Z pjb: and in movies, the Cray was owned by the maffia… 2018-07-23T12:06:16Z pjb: eg in Sneakers https://www.youtube.com/watch?v=coDtzN6bXAM 2018-07-23T12:07:03Z pjb: And the leather seats were USEFUL. At least one useful computer feature! LOL 2018-07-23T12:07:39Z pjb: 1992, cryptography, electronic money. bitcoins! 2018-07-23T12:08:44Z shka: pjb: nice 2018-07-23T12:09:03Z nowhere_man joined #lisp 2018-07-23T12:09:20Z Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-23T12:10:02Z Ven`` joined #lisp 2018-07-23T12:10:34Z fikka quit (Ping timeout: 264 seconds) 2018-07-23T12:15:12Z Fare joined #lisp 2018-07-23T12:15:34Z X-Scale quit (Ping timeout: 260 seconds) 2018-07-23T12:20:21Z gigetoo quit (Ping timeout: 240 seconds) 2018-07-23T12:21:02Z fikka joined #lisp 2018-07-23T12:21:44Z xificurC: sbcl script starts a subprocess with uiop:run-program. Hitting Ctrl-C stops sbcl but not the subprocess. Is this expected? 2018-07-23T12:21:54Z shka: xificurC: yes 2018-07-23T12:22:19Z xificurC: shka: so the parent process doesn't forward the sigterm? Can I tell it to? 2018-07-23T12:22:47Z shka: first of, it is not sigterm 2018-07-23T12:23:25Z xificurC: sigint, sorry 2018-07-23T12:23:51Z smurfrobot joined #lisp 2018-07-23T12:23:53Z gigetoo joined #lisp 2018-07-23T12:24:12Z EvW1 quit (Ping timeout: 260 seconds) 2018-07-23T12:25:00Z shka: anyway, run-program simply waits for program 2018-07-23T12:25:05Z shka: but that's one way street 2018-07-23T12:27:40Z xificurC: signals are complicated.. I'm reading a SIGINT is sent to a process group, does that mean run-program doesn't make the forked process belong to the same process group? 2018-07-23T12:27:41Z lemo joined #lisp 2018-07-23T12:28:25Z xificurC: also, why does it have to be a 1way street? When the parent receives the SIGINT it could forward the signal to all children 2018-07-23T12:29:05Z lemo quit (Changing host) 2018-07-23T12:29:05Z lemo joined #lisp 2018-07-23T12:29:14Z lemo quit (Client Quit) 2018-07-23T12:29:31Z lemo joined #lisp 2018-07-23T12:29:43Z lemo quit (Changing host) 2018-07-23T12:29:43Z lemo joined #lisp 2018-07-23T12:30:09Z Ven`` quit (Ping timeout: 260 seconds) 2018-07-23T12:31:08Z lemo quit (Client Quit) 2018-07-23T12:32:22Z jackdaniel: xificurC: one way of doing that is using sb-sys package (which is not part of SBCL's API I think) and provide your own sigint-handler with sb-ext:enable-interrupt 2018-07-23T12:32:45Z karswell quit (Remote host closed the connection) 2018-07-23T12:33:00Z jackdaniel: as of terminating process group, sb-ext:process-kill has optional third argument whom, which allows sending a signal to a process group 2018-07-23T12:33:36Z lemo joined #lisp 2018-07-23T12:33:44Z karswell joined #lisp 2018-07-23T12:33:47Z lemo quit (Changing host) 2018-07-23T12:33:47Z lemo joined #lisp 2018-07-23T12:33:47Z malice` joined #lisp 2018-07-23T12:33:59Z jackdaniel: regarding "waiting for program", that's what :wait argument is for, by default it waits synchronously for process execution, but if it is fed with NIL, then normal execution may happen concurrently (without spawning a new thread) 2018-07-23T12:34:33Z X-Scale joined #lisp 2018-07-23T12:34:51Z malice`: Hi! I'm looking for way to reduce verbosity of log4cl. Tried documentation but it's not precise (or I'm not smart enough). I want to turn off logging of log4cl:info 2018-07-23T12:35:02Z jackdaniel: xificurC: example how to replace SBCL's sigint handler (and other implementations) may be find in slime sources (swank/sbcl.lisp) 2018-07-23T12:35:07Z jmercouris quit (Remote host closed the connection) 2018-07-23T12:35:09Z xificurC: jackdaniel: the almighty internet claims pressing Ctrl-C already sends SIGINT to every process within the foreground process group. I'm contemplating why is this different than what a shell script does - unless you force a process into the background it does terminate the subprocess when receiving a SIGINT. I've come to think of this as sane 2018-07-23T12:35:09Z malice`: Is there a simple way to do that? There are log levels defined, I hoped there would be some global log-level 2018-07-23T12:35:17Z jackdaniel: malice`: type (log:config :warn) 2018-07-23T12:35:35Z malice`: jackdaniel: thanks 2018-07-23T12:35:46Z pjb: xificurC: because the shell manages process groups! 2018-07-23T12:36:09Z Ven`` joined #lisp 2018-07-23T12:36:27Z pjb: xificurC: https://unix.stackexchange.com/questions/149741/why-is-sigint-not-propagated-to-child-process-when-sent-to-its-parent-process 2018-07-23T12:36:29Z xificurC: pjb: so you're saying sbcl (or CL in general?) doesnt? 2018-07-23T12:36:36Z pjb: Yes. 2018-07-23T12:36:49Z pjb: cl implementations don't behave like a shell by default. 2018-07-23T12:38:18Z pjb: You would have to call setpgid in the child. 2018-07-23T12:38:24Z jackdaniel: malice`: generally "changing the log level" here: https://github.com/sharplispers/log4cl (README.md) 2018-07-23T12:38:27Z smurfrobot quit (Remote host closed the connection) 2018-07-23T12:38:46Z smurfrobot joined #lisp 2018-07-23T12:38:49Z xificurC: you're saying "like a shell", but when you're running 1 process and waiting for it synchronously to finish, do you see any reason why hitting Ctrl-C shouldn't kill that subprocess? :) 2018-07-23T12:38:49Z pjb: run-program doesn't do that. So either you re-implement it using fork exec etc, or you wrap your command in another command that would setpgid for you. 2018-07-23T12:39:22Z dddddd quit (Ping timeout: 244 seconds) 2018-07-23T12:39:35Z pjb: eg https://github.com/mweitzel/ersatz-setpgid 2018-07-23T12:40:08Z malice`: jackdaniel: Thanks. I found the log-config function now, although the documentation on the quickdocks was weirdly formatted which discouraged me from reading it. I believe it might be outdated since it does not mention any exported symbols from log package. Thanks anyway! 2018-07-23T12:40:53Z pjb: Then of course you would also have to manage foreground/background, because run-process would fork a background process, abd sbcl would stay foreground (connected to the terminal), so typing C-c in the terminal would still send SIGINT to sbcl, not to the background process. 2018-07-23T12:41:09Z jackdaniel: I'm recommending going to the library intself and read the documentation. I'm highly suspicious about documentation scrappers quality whatsoever 2018-07-23T12:41:16Z pjb: xificurC: it may be instructive to study the sources of bash (or a simplier shell). 2018-07-23T12:42:00Z Kevslinger joined #lisp 2018-07-23T12:42:01Z jackdaniel: itself* 2018-07-23T12:42:54Z xificurC: ugh 2018-07-23T12:43:02Z xificurC: thanks for the pointers jackdaniel and pjb 2018-07-23T12:43:08Z jackdaniel: sure 2018-07-23T12:44:00Z saki joined #lisp 2018-07-23T12:44:15Z gravicappa quit (Ping timeout: 268 seconds) 2018-07-23T12:44:16Z pjb: xificurC: of course, you can also handle SIGINT in sbcl, and call kill on the subprocess if that's what you want to do. 2018-07-23T12:44:20Z xificurC: one more thing on what you wrote jackdaniel, you wrote I can use sb-ext:process-kill to kill a process group, but pjb said cl doesn't manage process groups at all 2018-07-23T12:44:56Z xificurC: so if I were to manage process groups Ctrl-C would actually suffice 2018-07-23T12:44:57Z jackdaniel: CL as standard doesn't have notion of process at all and run-program is an extension 2018-07-23T12:45:16Z jackdaniel: just type C-. on sb-ext:process-kill 2018-07-23T12:45:35Z pjb: to kill a process group you use killpg(2) instead of kill(2). check the sources of sb-ext:process-kill 2018-07-23T12:47:32Z xificurC: ok, thanks 2018-07-23T12:52:17Z Ven`` quit (Ping timeout: 248 seconds) 2018-07-23T12:53:11Z graphene quit (Remote host closed the connection) 2018-07-23T12:54:34Z graphene joined #lisp 2018-07-23T12:54:40Z jfrancis_ quit (Remote host closed the connection) 2018-07-23T12:55:07Z Xach: jackdaniel: what does C-. do? 2018-07-23T12:55:38Z jackdaniel: Xach: my bad, I meant M-. (mistake) 2018-07-23T12:56:00Z Xach: ah bummer i thought i would learn a cool new key today! 2018-07-23T12:56:46Z jackdaniel: C-. is unocuppied on my session, so if you have similar setting you may bind to it arbitrarily cool thing! ;-) 2018-07-23T12:59:48Z lemo quit (Quit: lemo) 2018-07-23T13:04:50Z Ven`` joined #lisp 2018-07-23T13:11:01Z Kundry_Wag joined #lisp 2018-07-23T13:12:51Z LiamH joined #lisp 2018-07-23T13:22:39Z fikka quit (Ping timeout: 260 seconds) 2018-07-23T13:23:10Z Ven`` quit (Ping timeout: 256 seconds) 2018-07-23T13:24:28Z Bike joined #lisp 2018-07-23T13:24:43Z jfrancis_ joined #lisp 2018-07-23T13:25:38Z graphene quit (Remote host closed the connection) 2018-07-23T13:26:58Z graphene joined #lisp 2018-07-23T13:27:35Z eli_oat quit (Quit: eli_oat) 2018-07-23T13:28:05Z eli_oat joined #lisp 2018-07-23T13:29:07Z smurfrobot quit (Remote host closed the connection) 2018-07-23T13:29:13Z jfrancis_ quit (Ping timeout: 265 seconds) 2018-07-23T13:30:50Z karlosz joined #lisp 2018-07-23T13:33:12Z igemnace quit (Remote host closed the connection) 2018-07-23T13:33:17Z cpape joined #lisp 2018-07-23T13:34:40Z Ven`` joined #lisp 2018-07-23T13:34:49Z smurfrobot joined #lisp 2018-07-23T13:35:13Z fikka joined #lisp 2018-07-23T13:35:23Z kuwze quit (Quit: Page closed) 2018-07-23T13:36:39Z milanj joined #lisp 2018-07-23T13:38:41Z mindCrime joined #lisp 2018-07-23T13:39:55Z mindCrime quit (Remote host closed the connection) 2018-07-23T13:40:02Z fikka quit (Ping timeout: 256 seconds) 2018-07-23T13:40:23Z fikka joined #lisp 2018-07-23T13:47:04Z beach: jmercouris: I am now convinced that I need domain-specific functionality in the HIR viewer, like collapsing or expanding basic blocks, collapsing or expanding nested functions (without having to identify every node explicitly), etc. 2018-07-23T13:48:02Z beach: Since I am not up to writing plug-ins in C++ for existing graph viewers, I think I need for it to be a CLIM application. 2018-07-23T13:48:43Z Oladon joined #lisp 2018-07-23T13:50:43Z jfrancis_ joined #lisp 2018-07-23T13:51:20Z jfrancis_ quit (Remote host closed the connection) 2018-07-23T13:51:26Z jfrancis_ joined #lisp 2018-07-23T13:51:49Z flamebeard quit 2018-07-23T13:57:50Z karswell quit (Ping timeout: 260 seconds) 2018-07-23T13:59:29Z Ven`` quit (Ping timeout: 268 seconds) 2018-07-23T13:59:42Z MoziM quit (Quit: WeeChat 2.2) 2018-07-23T14:07:21Z phoe: How can I reliably contact Dave Cooper? Is the @genworks.com mail good enough? 2018-07-23T14:07:50Z Inline joined #lisp 2018-07-23T14:10:29Z Xach: phoe: he is here on irc also. 2018-07-23T14:11:42Z smurfrobot quit (Remote host closed the connection) 2018-07-23T14:11:51Z makomo_ joined #lisp 2018-07-23T14:12:15Z fjl joined #lisp 2018-07-23T14:14:25Z fjl quit (Client Quit) 2018-07-23T14:15:06Z lemonpepper24 joined #lisp 2018-07-23T14:15:26Z makomo quit (Ping timeout: 276 seconds) 2018-07-23T14:15:36Z phoe: Xach: gasp. Where? 2018-07-23T14:16:06Z mindCrime joined #lisp 2018-07-23T14:16:06Z phoe: So many months on #lisp and I have not noticed that 2018-07-23T14:17:44Z Xach: gendl is the nickname 2018-07-23T14:18:24Z smurfrobot joined #lisp 2018-07-23T14:20:27Z lemonpepper24 quit (Read error: Connection reset by peer) 2018-07-23T14:22:29Z phoe: Xach: thanks! 2018-07-23T14:22:37Z phoe: gendl: so, well, hey 2018-07-23T14:27:17Z saki quit (Read error: Connection reset by peer) 2018-07-23T14:28:40Z smurfrobot quit (Remote host closed the connection) 2018-07-23T14:28:46Z fikka quit (Ping timeout: 256 seconds) 2018-07-23T14:29:30Z saki joined #lisp 2018-07-23T14:33:02Z jfrancis_: Is there any way to make slime *not* barf when a returned string contains a UTF-8 character? I'd be perfectly fine with almost anything except the exception (munge the string, show me in hex, show me gibberish ASCII - anything but failing). 2018-07-23T14:33:11Z saki quit (Client Quit) 2018-07-23T14:33:19Z jfrancis_: sorry, when a return string contains a NON-UTF-8 character 2018-07-23T14:34:12Z jfrancis_: I'm sure I could hack slime to strip non-ASCII before displaying, but I was hoping there's a knob I could tweak, instead, and not have to maintain a local patch. 2018-07-23T14:35:45Z sjl_ joined #lisp 2018-07-23T14:36:02Z jfrancis_: (bleeding-edge sbcl and slime on both Mac and Linux, if it matters) 2018-07-23T14:36:34Z Bike: i've never had it barf. did you build emacs in some unicode negative environment or something? 2018-07-23T14:36:46Z eminhi joined #lisp 2018-07-23T14:37:10Z trittweiler: jfrancis_, In what way does it barf? Is this an error signaled in Common Lisp? In that case, find the source and that place should perhaps offer a restart to replace the character? Would still need to modify the right places where stuff is being evaluated to invoke that restart automatically. 2018-07-23T14:37:47Z optikalmouse joined #lisp 2018-07-23T14:38:22Z ofi quit (Quit: rcirc on GNU Emacs 26.1) 2018-07-23T14:41:19Z Josh_2 joined #lisp 2018-07-23T14:44:05Z asarch joined #lisp 2018-07-23T14:44:19Z jfrancis_: Naturally, I can't reproduce it at this exact second. We use HipChat at my company. I'm using the HipChat REST API to write a 'bot to do "work stuff". It's working quite well, unless I display a string back to slime that contains an emoticon. At that point, slime barfs with a "non-UTF-8" error. Let me see if I can get it to happen again so I can quote it exactly. 2018-07-23T14:44:48Z Josh_2: jfrancis_: are you trying to automate your job? 2018-07-23T14:45:28Z dlowe: aren't we all? 2018-07-23T14:45:34Z dlowe: and if not, why not? 2018-07-23T14:45:44Z jfrancis_: Hah! Don't I wish. I work from home, so I have considered outsourcing it, paying somebody half my salary, and sitting on the beach drinking mai tais with the difference. 2018-07-23T14:46:06Z Josh_2: xD it's like the story of the macro 2018-07-23T14:50:14Z optikalmouse: jfrancis_: that's clever; does the HipChat REST API require any special permissions? 2018-07-23T14:50:31Z optikalmouse: as in, do I need to bug my tech support department? or can I just proceed to automate my job? 2018-07-23T14:54:07Z eli_oat quit (Quit: Leaving.) 2018-07-23T14:54:17Z brendyn quit (Ping timeout: 265 seconds) 2018-07-23T14:55:00Z smurfrobot joined #lisp 2018-07-23T14:55:12Z eli_oat joined #lisp 2018-07-23T14:56:36Z fikka joined #lisp 2018-07-23T14:58:08Z FreeBirdLjj joined #lisp 2018-07-23T15:00:07Z fm4d joined #lisp 2018-07-23T15:00:20Z phoe: jfrancis_: huh? why would an emoticon be non-UTF-8 though? 2018-07-23T15:00:47Z phoe: Could you get it to store the response in some kind of byte string so we can analyze if it actually is UTF-8 or not? 2018-07-23T15:01:25Z Bike: perhaps it's a new emote that something in the decoding isn't aware of. 2018-07-23T15:01:54Z flip214: the emoticon is so sad that the library crashes as well 2018-07-23T15:03:59Z jfrancis_: About to get in the car. Let me capture the problem when I get to the other end with access to the chat system that's causing the problem. 2018-07-23T15:04:44Z jfrancis_: It also pukes when users send strings containing non-ASCII chars in their names (like umlauts, etc). 2018-07-23T15:04:57Z Bike: unusual. 2018-07-23T15:05:04Z EvW1 joined #lisp 2018-07-23T15:05:26Z varjag joined #lisp 2018-07-23T15:07:34Z knusbaum quit (Ping timeout: 264 seconds) 2018-07-23T15:08:19Z pagnol quit (Ping timeout: 256 seconds) 2018-07-23T15:11:26Z mgsk left #lisp 2018-07-23T15:13:13Z phoe: Weird. Very weird. 2018-07-23T15:15:28Z flip214: perhaps it's an UCS16 problem really, with the emoticons being outside that range 2018-07-23T15:16:05Z flip214: or data comes back as latin1 or so 2018-07-23T15:16:26Z flip214: jfrancis_: if you can, capture the slime network traffic, so that we can see which bytes get transmitted really 2018-07-23T15:16:56Z elfmacs quit (Ping timeout: 256 seconds) 2018-07-23T15:17:39Z smurfrobot quit (Remote host closed the connection) 2018-07-23T15:18:06Z jfrancis_: I can do that. Will likely be a few hours. Sigh. Was hoping this was a "just (setf ...) and the problem goes away kind of thing". :D 2018-07-23T15:18:15Z pjb` joined #lisp 2018-07-23T15:18:43Z flip214: jfrancis_: yeah, but a 64bit CPU has so much addressable memory that it'll take some time to find out _which_ byte to SETF ;) 2018-07-23T15:18:46Z johs quit (Ping timeout: 256 seconds) 2018-07-23T15:18:47Z rme quit (Ping timeout: 256 seconds) 2018-07-23T15:18:47Z creat quit (Ping timeout: 256 seconds) 2018-07-23T15:18:51Z galdor1 joined #lisp 2018-07-23T15:19:07Z jfrancis_: I'll just set them all. That'll show 'em. 2018-07-23T15:19:20Z sveit_ quit (Ping timeout: 256 seconds) 2018-07-23T15:19:20Z tazjin quit (Ping timeout: 256 seconds) 2018-07-23T15:19:20Z l1x quit (Ping timeout: 256 seconds) 2018-07-23T15:19:21Z convexferret quit (Ping timeout: 256 seconds) 2018-07-23T15:19:21Z tfb quit (Ping timeout: 256 seconds) 2018-07-23T15:19:21Z parseval quit (Ping timeout: 256 seconds) 2018-07-23T15:19:23Z koenig1 joined #lisp 2018-07-23T15:19:55Z kilimanjaro quit (Ping timeout: 256 seconds) 2018-07-23T15:19:55Z stylewarning quit (Ping timeout: 256 seconds) 2018-07-23T15:19:55Z Duns_Scrotus quit (Ping timeout: 256 seconds) 2018-07-23T15:19:55Z zkat quit (Ping timeout: 256 seconds) 2018-07-23T15:19:55Z XachX quit (Ping timeout: 256 seconds) 2018-07-23T15:19:55Z gz quit (Ping timeout: 256 seconds) 2018-07-23T15:19:55Z danlentz quit (Ping timeout: 256 seconds) 2018-07-23T15:19:55Z tobel quit (Ping timeout: 256 seconds) 2018-07-23T15:19:55Z abbe quit (Ping timeout: 256 seconds) 2018-07-23T15:20:06Z jfrancis_: Then the next problem is to find a working mqtt library for CL. There really doesn't seem to be one (that's been touched in ten years). 2018-07-23T15:20:28Z koenig quit (Ping timeout: 256 seconds) 2018-07-23T15:20:29Z asedeno quit (Ping timeout: 256 seconds) 2018-07-23T15:20:29Z cpt_nemo quit (Ping timeout: 256 seconds) 2018-07-23T15:20:29Z nyaray quit (Ping timeout: 256 seconds) 2018-07-23T15:20:29Z antoszka quit (Ping timeout: 256 seconds) 2018-07-23T15:21:02Z cpape quit (Ping timeout: 256 seconds) 2018-07-23T15:21:02Z pjb quit (Ping timeout: 256 seconds) 2018-07-23T15:21:02Z Ziemas quit (Ping timeout: 256 seconds) 2018-07-23T15:21:02Z lonjil quit (Ping timeout: 256 seconds) 2018-07-23T15:21:03Z fm4d quit (Ping timeout: 256 seconds) 2018-07-23T15:21:03Z galdor quit (Ping timeout: 256 seconds) 2018-07-23T15:21:09Z fikka quit (Ping timeout: 256 seconds) 2018-07-23T15:21:11Z cage_ joined #lisp 2018-07-23T15:21:26Z rme joined #lisp 2018-07-23T15:21:27Z tfb joined #lisp 2018-07-23T15:21:27Z msb quit (Ping timeout: 240 seconds) 2018-07-23T15:21:29Z johs joined #lisp 2018-07-23T15:21:42Z convexferret joined #lisp 2018-07-23T15:21:54Z parseval joined #lisp 2018-07-23T15:21:57Z asarch quit (Quit: Leaving) 2018-07-23T15:22:21Z tazjin joined #lisp 2018-07-23T15:22:30Z l1x joined #lisp 2018-07-23T15:22:41Z tfb is now known as Guest54345 2018-07-23T15:22:51Z abbe joined #lisp 2018-07-23T15:23:00Z asedeno joined #lisp 2018-07-23T15:23:03Z nyaray joined #lisp 2018-07-23T15:23:04Z Duns_Scrotus joined #lisp 2018-07-23T15:23:06Z danlentz joined #lisp 2018-07-23T15:23:06Z tobel joined #lisp 2018-07-23T15:23:12Z heisig quit (Quit: Leaving) 2018-07-23T15:23:21Z zkat joined #lisp 2018-07-23T15:23:26Z stylewarning joined #lisp 2018-07-23T15:23:49Z XachX joined #lisp 2018-07-23T15:24:38Z Guest54345 quit (Client Quit) 2018-07-23T15:25:08Z Guest54345 joined #lisp 2018-07-23T15:25:35Z Ziemas joined #lisp 2018-07-23T15:25:36Z fm4d joined #lisp 2018-07-23T15:25:44Z XachX quit (Changing host) 2018-07-23T15:25:45Z XachX joined #lisp 2018-07-23T15:26:17Z jfranci__ joined #lisp 2018-07-23T15:26:26Z skeuomorf joined #lisp 2018-07-23T15:27:01Z cpt_nemo joined #lisp 2018-07-23T15:27:05Z sveit joined #lisp 2018-07-23T15:27:32Z optikalmouse quit (Quit: optikalmouse) 2018-07-23T15:27:42Z Guest54345 quit (Client Quit) 2018-07-23T15:27:44Z creat joined #lisp 2018-07-23T15:27:53Z msb joined #lisp 2018-07-23T15:27:57Z gendl: phoe: Hi, thanks for your inquiry about CLF. 2018-07-23T15:28:08Z lonjil joined #lisp 2018-07-23T15:28:14Z rumbler31 quit (Remote host closed the connection) 2018-07-23T15:28:16Z gendl: We've been moving kind of slowly in the summer but the ASDF fundraiser is planned to launch in September. 2018-07-23T15:28:21Z robotoad joined #lisp 2018-07-23T15:28:21Z jack_rabbit joined #lisp 2018-07-23T15:28:33Z gendl: The meetings are supposed to be monthly but the July one didn't really happen. 2018-07-23T15:28:35Z tfb_ joined #lisp 2018-07-23T15:28:36Z jfrancis_ quit (Ping timeout: 265 seconds) 2018-07-23T15:28:45Z jack_rabbit quit (Remote host closed the connection) 2018-07-23T15:29:05Z gendl: We also got a volunteer who completely revamped common-lisp.net, which should be launched by September as well. 2018-07-23T15:29:21Z jack_rabbit joined #lisp 2018-07-23T15:29:27Z cage_ quit (Remote host closed the connection) 2018-07-23T15:30:04Z koenig1 is now known as koenig 2018-07-23T15:30:45Z Ukari joined #lisp 2018-07-23T15:30:50Z cage_ joined #lisp 2018-07-23T15:31:13Z tfb_ is now known as tfb 2018-07-23T15:31:28Z fikka joined #lisp 2018-07-23T15:31:28Z gendl: There are other bits of news but maybe here isn't the best place to spew them randomly. I'm hoping the new common-lisp.net will start doing a much better job of tracking CLF activity. It will also merge the pretty much defunct cl-foundation.org site - the plan is that site will start redirecting to a section of common-lisp.net which gives information about the CLF. 2018-07-23T15:32:45Z eminhi quit (Remote host closed the connection) 2018-07-23T15:33:24Z antoszka joined #lisp 2018-07-23T15:34:55Z pagnol joined #lisp 2018-07-23T15:36:22Z kilimanjaro joined #lisp 2018-07-23T15:36:24Z jack_rabbit is now known as knusbaum 2018-07-23T15:36:40Z gz joined #lisp 2018-07-23T15:38:15Z al-damiri joined #lisp 2018-07-23T15:40:37Z saki joined #lisp 2018-07-23T15:43:59Z graphene quit (Remote host closed the connection) 2018-07-23T15:44:00Z gravicappa joined #lisp 2018-07-23T15:44:24Z varjag quit (Ping timeout: 260 seconds) 2018-07-23T15:44:59Z fikka quit (Ping timeout: 260 seconds) 2018-07-23T15:45:02Z smurfrobot joined #lisp 2018-07-23T15:45:23Z graphene joined #lisp 2018-07-23T15:47:10Z fikka joined #lisp 2018-07-23T15:48:28Z phoe: gendl: awesome! Thanks for the heads-up, and if you need any help, please poke me. 2018-07-23T15:48:47Z malice`: Can I anyhow get the behaviour of :after method on initialize-instance for conditions? I have a base condition that I wanted to extend through "inheritance", but initialize-instance is not supported as conditions are not required to be CLOS objects 2018-07-23T15:49:07Z Oladon quit (Quit: Leaving.) 2018-07-23T15:49:41Z jack_rabbit_ joined #lisp 2018-07-23T15:50:19Z phoe: malice`: make your voice heard at https://bugs.launchpad.net/sbcl/+bug/1761735 2018-07-23T15:51:47Z malice`: phoe: thanks for the link 2018-07-23T15:51:53Z malice`: Can I bypass this problem? Is there a way to call :report function for superclass? 2018-07-23T15:52:13Z malice`: This way I could set things up in :report, and then call the :report of the superclass 2018-07-23T15:52:20Z knusbaum quit (Ping timeout: 268 seconds) 2018-07-23T15:52:33Z megalography quit (Ping timeout: 264 seconds) 2018-07-23T15:54:20Z smurfrobot quit (Remote host closed the connection) 2018-07-23T15:54:37Z smurfrobot joined #lisp 2018-07-23T15:54:40Z jfranci__ quit (Remote host closed the connection) 2018-07-23T15:55:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-23T15:55:06Z smurfrobot quit (Read error: Connection reset by peer) 2018-07-23T15:56:36Z sjl_ quit (Quit: WeeChat 2.2-dev) 2018-07-23T15:57:05Z graphene quit (Remote host closed the connection) 2018-07-23T15:57:36Z nika joined #lisp 2018-07-23T15:58:25Z graphene joined #lisp 2018-07-23T16:00:06Z phoe: malice`: no 2018-07-23T16:00:10Z graphene quit (Remote host closed the connection) 2018-07-23T16:00:13Z phoe: malice`: make your voice heard at https://bugs.launchpad.net/sbcl/+bug/1761735 (: 2018-07-23T16:00:30Z malice`: Okay, workaround: custom function that is used to throw the error and does what constructor does... 2018-07-23T16:01:28Z graphene joined #lisp 2018-07-23T16:02:09Z pagnol quit (Ping timeout: 264 seconds) 2018-07-23T16:02:39Z ebrasca: Hi 2018-07-23T16:03:22Z phoe: hey ebrasca 2018-07-23T16:04:22Z EvW1 quit (Ping timeout: 265 seconds) 2018-07-23T16:04:50Z tfb: malice`: you can also just make the report function be a generic function and just use call-next-method in it 2018-07-23T16:04:51Z ebrasca: phoe: Is waveflow someting like org mode? 2018-07-23T16:05:01Z phoe: ebrasca: nope, not at all 2018-07-23T16:05:09Z phoe: it's not meant for text documents 2018-07-23T16:05:12Z phoe: and it's not yet finished 2018-07-23T16:05:27Z phoe: I'll write a blogpost detailing the why and the how once I finish writing, documenting and testing it. 2018-07-23T16:06:27Z malice`: tfb: right 2018-07-23T16:06:35Z megalography joined #lisp 2018-07-23T16:06:36Z fikka joined #lisp 2018-07-23T16:07:03Z newbie07 joined #lisp 2018-07-23T16:07:08Z orivej quit (Ping timeout: 268 seconds) 2018-07-23T16:09:44Z ebrasca: phoe: But in org mode you can manage tasks over time. 2018-07-23T16:09:47Z beach quit (Ping timeout: 245 seconds) 2018-07-23T16:10:06Z lumm_ joined #lisp 2018-07-23T16:11:14Z lumm quit (Ping timeout: 260 seconds) 2018-07-23T16:11:15Z lumm_ is now known as lumm 2018-07-23T16:11:24Z Kundry_Wag quit (Remote host closed the connection) 2018-07-23T16:11:45Z beach joined #lisp 2018-07-23T16:11:58Z sjl_ joined #lisp 2018-07-23T16:12:33Z Kaisyu quit (Quit: Connection closed for inactivity) 2018-07-23T16:12:36Z phoe: ebrasca: Yes, but you cannot* do it programmatically. 2018-07-23T16:12:44Z phoe: *of course you can, it's emacs, but it defeats the point 2018-07-23T16:13:30Z ebrasca: phoe: mmm org mode ++ for tasking in repl. 2018-07-23T16:14:23Z shka1 joined #lisp 2018-07-23T16:15:33Z Khisanth quit (Ping timeout: 256 seconds) 2018-07-23T16:16:10Z ebrasca: phoe: How are you? 2018-07-23T16:17:07Z phoe: ebrasca: I'm okay, thinking of setting up a Lisp CI&buildfarm on Linux, Windows and macOS. 2018-07-23T16:17:42Z beach: minion: Please tell malice` about CLOS-object. 2018-07-23T16:17:42Z minion: malice`: CLOS-object: There is no definition of the term "CLOS object" in the Common Lisp HyperSpec. If there were, it would probably be "any Common Lisp datum", because every Common Lisp datum is an instance of a class. Perhaps when you say "CLOS object" you really mean "standard object", i.e. the kind of object you usually get when you instantiate a class defined by DEFCLASS 2018-07-23T16:18:08Z Kundry_Wag joined #lisp 2018-07-23T16:18:22Z malice`: right 2018-07-23T16:18:32Z malice`: sorry for being incorrect 2018-07-23T16:19:12Z ebrasca: phoe: wow buildfarm sound good, what is CI? 2018-07-23T16:22:31Z phoe: ebrasca: https://en.wikipedia.org/wiki/Continuous_integration 2018-07-23T16:22:50Z schweers quit (Ping timeout: 276 seconds) 2018-07-23T16:23:10Z fikka quit (Ping timeout: 264 seconds) 2018-07-23T16:24:56Z nowhere_man quit (Read error: Connection reset by peer) 2018-07-23T16:25:57Z _cosmonaut_ quit (Ping timeout: 240 seconds) 2018-07-23T16:28:48Z rumbler31 joined #lisp 2018-07-23T16:29:36Z Khisanth joined #lisp 2018-07-23T16:31:14Z ikaros28 joined #lisp 2018-07-23T16:31:37Z sendai_ is now known as azimut 2018-07-23T16:31:59Z fikka joined #lisp 2018-07-23T16:33:54Z nowhere_man joined #lisp 2018-07-23T16:34:04Z igemnace joined #lisp 2018-07-23T16:35:16Z rumbler31 quit (Ping timeout: 256 seconds) 2018-07-23T16:38:24Z Kundry_Wag quit 2018-07-23T16:38:30Z malice` quit (Ping timeout: 252 seconds) 2018-07-23T16:38:41Z Kundry_Wag joined #lisp 2018-07-23T16:39:06Z hhdave_ quit (Ping timeout: 244 seconds) 2018-07-23T16:41:15Z pjb`` joined #lisp 2018-07-23T16:42:06Z ebrasca: phoe: Have fun. 2018-07-23T16:43:07Z pjb` quit (Ping timeout: 245 seconds) 2018-07-23T16:45:39Z fikka quit (Ping timeout: 260 seconds) 2018-07-23T16:46:31Z phoe: ebrasca: you too! 2018-07-23T16:46:34Z jfrancis_ joined #lisp 2018-07-23T16:49:06Z jmercouris joined #lisp 2018-07-23T16:51:22Z jfrancis_ quit (Ping timeout: 264 seconds) 2018-07-23T16:54:30Z pjb``` joined #lisp 2018-07-23T16:55:38Z mathrick quit (Ping timeout: 260 seconds) 2018-07-23T16:56:48Z pjb`` quit (Ping timeout: 256 seconds) 2018-07-23T16:59:13Z patlv joined #lisp 2018-07-23T17:00:23Z Kundry_Wag quit (Remote host closed the connection) 2018-07-23T17:00:24Z fikka joined #lisp 2018-07-23T17:00:36Z smurfrobot joined #lisp 2018-07-23T17:00:57Z JuanDaugherty joined #lisp 2018-07-23T17:02:38Z m00natic quit (Remote host closed the connection) 2018-07-23T17:03:19Z Kundry_Wag joined #lisp 2018-07-23T17:04:12Z jfrancis_ joined #lisp 2018-07-23T17:04:24Z jfrancis_ quit (Remote host closed the connection) 2018-07-23T17:04:47Z jfrancis_ joined #lisp 2018-07-23T17:04:53Z Kundry_Wag quit (Remote host closed the connection) 2018-07-23T17:05:18Z smurfrobot quit (Ping timeout: 256 seconds) 2018-07-23T17:05:24Z rozenglass joined #lisp 2018-07-23T17:05:29Z fikka quit (Ping timeout: 260 seconds) 2018-07-23T17:06:54Z Kundry_Wag joined #lisp 2018-07-23T17:08:06Z pjb``` is now known as pjb 2018-07-23T17:09:42Z Kundry_Wag quit (Remote host closed the connection) 2018-07-23T17:10:09Z lnostdal quit (Ping timeout: 260 seconds) 2018-07-23T17:10:48Z JuanDaugherty quit (Quit: Exeunt) 2018-07-23T17:14:37Z Kundry_Wag joined #lisp 2018-07-23T17:22:33Z Kundry_Wag quit (Remote host closed the connection) 2018-07-23T17:23:26Z rippa joined #lisp 2018-07-23T17:23:34Z lnostdal joined #lisp 2018-07-23T17:27:59Z troydm joined #lisp 2018-07-23T17:28:34Z Fare quit (Ping timeout: 264 seconds) 2018-07-23T17:31:15Z rumbler31 joined #lisp 2018-07-23T17:31:18Z Bike quit (Ping timeout: 252 seconds) 2018-07-23T17:32:22Z Kundry_Wag joined #lisp 2018-07-23T17:35:49Z rumbler31 quit (Ping timeout: 260 seconds) 2018-07-23T17:35:55Z Bike joined #lisp 2018-07-23T17:36:58Z Kundry_Wag quit (Ping timeout: 244 seconds) 2018-07-23T17:38:35Z mathrick joined #lisp 2018-07-23T17:41:37Z nika quit (Quit: Leaving...) 2018-07-23T17:42:15Z charh quit (Remote host closed the connection) 2018-07-23T17:44:13Z giraffe quit (Remote host closed the connection) 2018-07-23T17:44:13Z itruslove quit (Remote host closed the connection) 2018-07-23T17:46:06Z fikka joined #lisp 2018-07-23T17:47:16Z cage_ quit (Quit: Leaving) 2018-07-23T17:51:06Z Bike quit (Ping timeout: 252 seconds) 2018-07-23T17:51:08Z Bike_ joined #lisp 2018-07-23T17:54:28Z jasom: CI used to mean continuous integration. Now it seems to just mean "we run a few tests automatically on each commit" 2018-07-23T17:55:38Z aeth: exactly 2018-07-23T17:55:40Z jasom: though to be fair, most small shops do continuous integration by default thanks to cvs/svn/git/hg becoming ubiquitous 2018-07-23T17:56:25Z aeth: thanks to git branches being confusing. 2018-07-23T17:57:20Z aeth: If I'm reading the article correct, the way you do CI is to merge into a mainline (master in git, trunk in SVN) multiple times a day. 2018-07-23T17:58:33Z gravicappa quit (Ping timeout: 264 seconds) 2018-07-23T17:58:34Z jmercouris quit (Remote host closed the connection) 2018-07-23T17:59:16Z jasom: aeth: the main thing is that everyone is developing based off of the mainline and the mainline us updated more often than once per day. 2018-07-23T17:59:30Z aeth: At least of the git repos that are FOSS, for branches there's master, past and current stable versions (if the project is still versioned traditionally, which is increasingly rare), and maybe a few experimental feature branches. 2018-07-23T17:59:31Z jasom: CI was taking "nightly integration" to the extreme 2018-07-23T17:59:40Z aeth: CI replaces "current stable version(s)" with master, afaik 2018-07-23T18:00:12Z jasom: no it has nothing to do with "current stable versions" if your mainline is super buggy, but it's what developers are basing their changes off of it's still CI 2018-07-23T18:00:34Z jasom: an alpha version of non FOSS could be integrated nightly or continoussly, for example 2018-07-23T18:00:36Z jasom: anyway, gtg 2018-07-23T18:02:15Z Kundry_Wag joined #lisp 2018-07-23T18:02:46Z aeth: I thought CI meant (in part) that you deploy from master. 2018-07-23T18:03:04Z aeth: I guess not 2018-07-23T18:04:17Z aeth: Ah, CI/CD is a thing separate from CI. 2018-07-23T18:06:09Z charh joined #lisp 2018-07-23T18:09:57Z patlv quit (Ping timeout: 240 seconds) 2018-07-23T18:13:33Z megalography quit (Ping timeout: 268 seconds) 2018-07-23T18:17:14Z ebrasca: Some tips with git branches and cl? 2018-07-23T18:17:23Z fikka quit (Ping timeout: 256 seconds) 2018-07-23T18:20:40Z skeuomorf quit (Ping timeout: 256 seconds) 2018-07-23T18:23:04Z itruslove joined #lisp 2018-07-23T18:24:10Z orivej joined #lisp 2018-07-23T18:26:36Z megalography joined #lisp 2018-07-23T18:26:47Z Fare joined #lisp 2018-07-23T18:27:05Z giraffe joined #lisp 2018-07-23T18:32:04Z rumbler31 joined #lisp 2018-07-23T18:35:31Z fikka joined #lisp 2018-07-23T18:35:52Z sauvin quit (Ping timeout: 244 seconds) 2018-07-23T18:36:07Z kaun joined #lisp 2018-07-23T18:36:59Z rumbler31 quit (Ping timeout: 268 seconds) 2018-07-23T18:37:05Z random-nick quit (Ping timeout: 240 seconds) 2018-07-23T18:37:31Z sjl_ quit (Quit: WeeChat 2.2-dev) 2018-07-23T18:39:46Z eli_oat1 joined #lisp 2018-07-23T18:41:06Z sjl_ joined #lisp 2018-07-23T18:41:12Z dtornabene joined #lisp 2018-07-23T18:41:59Z Ven`` joined #lisp 2018-07-23T18:47:46Z acolarh quit (Ping timeout: 264 seconds) 2018-07-23T18:49:19Z smurfrobot joined #lisp 2018-07-23T18:51:55Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-23T18:53:58Z smurfrobot quit (Ping timeout: 256 seconds) 2018-07-23T18:59:06Z FreeBirdLjj joined #lisp 2018-07-23T19:00:12Z Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-23T19:01:47Z jfranci__ joined #lisp 2018-07-23T19:02:04Z acolarh joined #lisp 2018-07-23T19:05:21Z jfrancis_ quit (Ping timeout: 268 seconds) 2018-07-23T19:14:06Z cpape joined #lisp 2018-07-23T19:14:33Z pierpal quit (Quit: Poof) 2018-07-23T19:14:47Z igemnace quit (Remote host closed the connection) 2018-07-23T19:14:53Z pierpal joined #lisp 2018-07-23T19:15:16Z puchacz joined #lisp 2018-07-23T19:21:06Z graphene quit (Remote host closed the connection) 2018-07-23T19:21:45Z aeth_ joined #lisp 2018-07-23T19:22:27Z graphene joined #lisp 2018-07-23T19:24:05Z aeth quit (Ping timeout: 276 seconds) 2018-07-23T19:24:32Z eli_oat1 quit (Quit: Leaving.) 2018-07-23T19:25:47Z random-nick joined #lisp 2018-07-23T19:26:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-23T19:28:09Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-23T19:28:44Z dddddd joined #lisp 2018-07-23T19:31:13Z milanj quit (Quit: This computer has gone to sleep) 2018-07-23T19:35:32Z phoe: ebrasca: these concepts are orthogonal to each other. 2018-07-23T19:37:21Z charh quit (Ping timeout: 244 seconds) 2018-07-23T19:38:42Z varjag joined #lisp 2018-07-23T19:40:00Z aeth_ is now known as aeth 2018-07-23T19:40:41Z pierpal quit (Quit: Poof) 2018-07-23T19:40:58Z pierpal joined #lisp 2018-07-23T19:41:07Z kaun quit (Ping timeout: 268 seconds) 2018-07-23T19:45:29Z pjb quit (Read error: Connection reset by peer) 2018-07-23T19:46:26Z jfranci__ quit (Remote host closed the connection) 2018-07-23T19:46:35Z pjb joined #lisp 2018-07-23T19:47:32Z Bike_ is now known as Bike 2018-07-23T19:48:31Z vlatkoB quit (Remote host closed the connection) 2018-07-23T20:01:05Z milanj joined #lisp 2018-07-23T20:04:52Z Denommus joined #lisp 2018-07-23T20:10:02Z puchacz quit (Quit: Konversation terminated!) 2018-07-23T20:11:17Z Jesin quit (Quit: Leaving) 2018-07-23T20:12:03Z Ven`` joined #lisp 2018-07-23T20:14:06Z varjagg joined #lisp 2018-07-23T20:16:40Z Jesin joined #lisp 2018-07-23T20:17:09Z varjag quit (Ping timeout: 264 seconds) 2018-07-23T20:17:24Z shka1 quit (Ping timeout: 260 seconds) 2018-07-23T20:19:34Z orivej quit (Ping timeout: 264 seconds) 2018-07-23T20:24:48Z pagnol joined #lisp 2018-07-23T20:28:16Z zotan quit (Ping timeout: 265 seconds) 2018-07-23T20:32:34Z zotan joined #lisp 2018-07-23T20:33:26Z rumbler31 joined #lisp 2018-07-23T20:33:40Z zigpaw quit (Remote host closed the connection) 2018-07-23T20:33:56Z zigpaw joined #lisp 2018-07-23T20:34:08Z Smokitch quit 2018-07-23T20:35:23Z vtomole joined #lisp 2018-07-23T20:36:41Z Josh_2 quit (Quit: ERC (IRC client for Emacs 25.3.1)) 2018-07-23T20:37:10Z smurfrobot joined #lisp 2018-07-23T20:37:53Z rumbler31 quit (Ping timeout: 248 seconds) 2018-07-23T20:38:29Z Ven` joined #lisp 2018-07-23T20:38:39Z klltkr: Yo 2018-07-23T20:39:19Z papachan joined #lisp 2018-07-23T20:40:28Z patlv joined #lisp 2018-07-23T20:40:38Z Ven`` quit (Ping timeout: 256 seconds) 2018-07-23T20:41:54Z smurfrobot quit (Ping timeout: 260 seconds) 2018-07-23T20:43:12Z jfrancis_ joined #lisp 2018-07-23T20:47:40Z fikka joined #lisp 2018-07-23T20:50:35Z Ven` quit (Ping timeout: 240 seconds) 2018-07-23T20:57:59Z pierpal quit (Quit: Poof) 2018-07-23T20:58:18Z pierpal joined #lisp 2018-07-23T21:05:21Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2018-07-23T21:06:08Z Fare quit (Ping timeout: 256 seconds) 2018-07-23T21:06:25Z phoe: heyy 2018-07-23T21:06:32Z jack_rabbit_ is now known as knusbaum 2018-07-23T21:10:04Z Fare joined #lisp 2018-07-23T21:10:31Z charh joined #lisp 2018-07-23T21:10:59Z vultyre joined #lisp 2018-07-23T21:19:09Z jack_rabbit_ joined #lisp 2018-07-23T21:20:35Z random-nick quit (Ping timeout: 240 seconds) 2018-07-23T21:21:35Z pierpa joined #lisp 2018-07-23T21:21:37Z knusbaum quit (Ping timeout: 248 seconds) 2018-07-23T21:23:42Z wigust- joined #lisp 2018-07-23T21:27:24Z wigust quit (Ping timeout: 260 seconds) 2018-07-23T21:32:10Z sjl quit (Quit: WeeChat 2.2-dev) 2018-07-23T21:34:02Z dtornabene quit (Remote host closed the connection) 2018-07-23T21:34:09Z rumbler31 joined #lisp 2018-07-23T21:38:45Z rumbler31 quit (Ping timeout: 264 seconds) 2018-07-23T21:39:50Z zaquest quit (Quit: Leaving) 2018-07-23T21:45:02Z jrgomez joined #lisp 2018-07-23T21:45:27Z jrgomez left #lisp 2018-07-23T21:45:55Z asarch joined #lisp 2018-07-23T21:47:10Z jasmith quit (Quit: Leaving) 2018-07-23T21:48:05Z Josh_2 joined #lisp 2018-07-23T21:51:40Z LiamH quit (Quit: Leaving.) 2018-07-23T21:52:05Z mindCrime quit (Ping timeout: 240 seconds) 2018-07-23T21:56:14Z nickenchuggets joined #lisp 2018-07-23T21:56:14Z nickenchuggets quit (Changing host) 2018-07-23T21:56:14Z nickenchuggets joined #lisp 2018-07-23T21:57:01Z Ven`` joined #lisp 2018-07-23T21:57:09Z markoong quit (Ping timeout: 260 seconds) 2018-07-23T21:57:28Z adlai joined #lisp 2018-07-23T21:58:57Z Fare quit (Ping timeout: 248 seconds) 2018-07-23T22:00:52Z Ven`` quit (Client Quit) 2018-07-23T22:01:06Z markoong joined #lisp 2018-07-23T22:01:41Z markoong quit (Client Quit) 2018-07-23T22:03:16Z angavrilov quit (Remote host closed the connection) 2018-07-23T22:03:26Z Denommus quit (Read error: Connection reset by peer) 2018-07-23T22:04:49Z adlai quit (Ping timeout: 248 seconds) 2018-07-23T22:06:18Z Bike quit (Ping timeout: 252 seconds) 2018-07-23T22:06:35Z patlv quit (Ping timeout: 240 seconds) 2018-07-23T22:06:46Z varjagg quit (Ping timeout: 256 seconds) 2018-07-23T22:10:58Z makomo_ quit (Quit: WeeChat 2.0.1) 2018-07-23T22:11:41Z equwal joined #lisp 2018-07-23T22:11:47Z xificurC quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2018-07-23T22:12:45Z xificurC joined #lisp 2018-07-23T22:16:33Z equwal quit (Ping timeout: 264 seconds) 2018-07-23T22:18:44Z sjl joined #lisp 2018-07-23T22:23:04Z cpape quit (Remote host closed the connection) 2018-07-23T22:23:21Z cpape joined #lisp 2018-07-23T22:23:36Z stylewarning: yo 2018-07-23T22:27:22Z klltkr: Yo 2018-07-23T22:28:44Z patlv joined #lisp 2018-07-23T22:32:33Z jack_rabbit_ quit (Ping timeout: 248 seconds) 2018-07-23T22:35:25Z jasmith joined #lisp 2018-07-23T22:36:27Z patlv quit (Ping timeout: 240 seconds) 2018-07-23T22:37:04Z patlv joined #lisp 2018-07-23T22:40:15Z varjagg joined #lisp 2018-07-23T22:40:21Z jack_rabbit joined #lisp 2018-07-23T22:45:22Z varjagg quit (Ping timeout: 264 seconds) 2018-07-23T22:48:00Z jfrancis_ quit (Remote host closed the connection) 2018-07-23T22:49:23Z asarch quit (Quit: Leaving) 2018-07-23T22:49:23Z pierpal quit (Ping timeout: 256 seconds) 2018-07-23T22:56:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-23T22:58:24Z vtomole quit (Quit: Page closed) 2018-07-23T22:59:02Z mange joined #lisp 2018-07-23T23:00:00Z knusbaum joined #lisp 2018-07-23T23:03:04Z patlv quit (Ping timeout: 260 seconds) 2018-07-23T23:03:26Z pagnol quit (Ping timeout: 256 seconds) 2018-07-23T23:05:30Z Arcaelyx quit (Quit: Textual IRC Client: www.textualapp.com) 2018-07-23T23:08:04Z robotoad quit (Quit: robotoad) 2018-07-23T23:09:17Z rumbler31 joined #lisp 2018-07-23T23:09:57Z rumbler31 quit (Remote host closed the connection) 2018-07-23T23:11:21Z Bike joined #lisp 2018-07-23T23:16:19Z Kundry_Wag quit (Remote host closed the connection) 2018-07-23T23:19:25Z kuwze joined #lisp 2018-07-23T23:19:59Z Kundry_Wag joined #lisp 2018-07-23T23:20:11Z graphene quit (Remote host closed the connection) 2018-07-23T23:21:37Z graphene joined #lisp 2018-07-23T23:22:52Z al-damiri quit (Quit: Connection closed for inactivity) 2018-07-23T23:23:27Z patlv joined #lisp 2018-07-23T23:27:42Z robotoad joined #lisp 2018-07-23T23:30:20Z vultyre quit (Remote host closed the connection) 2018-07-23T23:32:23Z Kaisyu7 quit (Quit: ERC (IRC client for Emacs 25.3.2)) 2018-07-23T23:33:16Z fikka joined #lisp 2018-07-23T23:33:36Z dilated_dinosaur quit (Ping timeout: 268 seconds) 2018-07-23T23:38:04Z fikka quit (Ping timeout: 260 seconds) 2018-07-23T23:39:25Z patlv quit (Remote host closed the connection) 2018-07-23T23:39:49Z patlv joined #lisp 2018-07-23T23:42:31Z vultyre joined #lisp 2018-07-23T23:42:32Z vultyre quit (Max SendQ exceeded) 2018-07-23T23:42:59Z vultyre joined #lisp 2018-07-23T23:44:54Z lumm quit (Ping timeout: 260 seconds) 2018-07-23T23:46:22Z Kaisyu joined #lisp 2018-07-23T23:47:21Z dilated_dinosaur joined #lisp 2018-07-23T23:48:58Z himmAllRight27 joined #lisp 2018-07-23T23:49:39Z himmAllRight27 quit (Client Quit) 2018-07-23T23:50:57Z patlv quit (Ping timeout: 240 seconds) 2018-07-23T23:53:43Z Derpy1 joined #lisp 2018-07-23T23:56:25Z Derpy1 quit (Client Quit) 2018-07-24T00:00:48Z Josh_2 quit (Quit: ERC (IRC client for Emacs 25.3.1)) 2018-07-24T00:03:21Z Kaisyu7 joined #lisp 2018-07-24T00:04:44Z lumm joined #lisp 2018-07-24T00:05:50Z patlv joined #lisp 2018-07-24T00:09:45Z BitPuffin quit (Remote host closed the connection) 2018-07-24T00:10:33Z rumbler31 joined #lisp 2018-07-24T00:14:27Z kuwze quit (Ping timeout: 252 seconds) 2018-07-24T00:16:09Z rumbler31 quit (Ping timeout: 268 seconds) 2018-07-24T00:24:37Z Kundry_W_ joined #lisp 2018-07-24T00:24:41Z jfrancis_ joined #lisp 2018-07-24T00:29:16Z Kundry_W_ quit (Ping timeout: 244 seconds) 2018-07-24T00:29:27Z jfrancis_ quit (Ping timeout: 265 seconds) 2018-07-24T00:30:36Z graphene quit (Remote host closed the connection) 2018-07-24T00:31:54Z graphene joined #lisp 2018-07-24T00:34:22Z caltelt joined #lisp 2018-07-24T00:37:31Z lumm quit (Quit: lumm) 2018-07-24T00:40:41Z MinnowTaur joined #lisp 2018-07-24T00:43:29Z vhost- quit (Quit: WeeChat 2.2-dev) 2018-07-24T00:45:37Z aeth: Is it bad for performance to use apply in a situation that pretty much looks like where apply was made for? That is, (apply #'function-taking-in-rest list) vs. (function-taking-in-list list) 2018-07-24T00:46:59Z Kundry_Wag quit (Ping timeout: 268 seconds) 2018-07-24T00:48:14Z Zhivago: Surely that depends on the implementation. I can imagine that apply will have some list processing overhead where the list is dynamic. 2018-07-24T00:48:40Z Zhivago: But you'd be paying for that somewhere along the line, unless you got rid of the dynamic argument lists. 2018-07-24T00:48:58Z aeth: The input is incredibly arbitrary. 2018-07-24T00:49:22Z newbie07 quit (Ping timeout: 245 seconds) 2018-07-24T00:51:03Z dddddd quit (Remote host closed the connection) 2018-07-24T00:52:07Z aeth: I'm essentially reimplementing a subset of Lisp except prefixing a stream on front writing the infix representation to the stream. e.g. (defun infix+ (stream &rest numbers) ...) where '(+) becomes "0", '(+ 1) becomes "1", '(+ 1 2) becomes "(1 + 2)", etc. 2018-07-24T00:52:27Z vhost- joined #lisp 2018-07-24T00:52:27Z vhost- quit (Changing host) 2018-07-24T00:52:27Z vhost- joined #lisp 2018-07-24T00:53:27Z xrash quit (Ping timeout: 240 seconds) 2018-07-24T00:55:29Z jfrancis_ joined #lisp 2018-07-24T00:56:27Z Pixel_Outlaw joined #lisp 2018-07-24T00:56:36Z aeth: If macros didn't exist I could probably implement the whole thing (when the input is a list) as (apply (gethash (car list) functions) (cdr list)) 2018-07-24T00:58:33Z pierpal joined #lisp 2018-07-24T01:00:02Z jfrancis_ quit (Ping timeout: 260 seconds) 2018-07-24T01:00:04Z elfmacs joined #lisp 2018-07-24T01:00:38Z aeth: (That wouldn't quite work even without macros because if (:foo 1 2 3) is undefined it would become "foo(1, 2, 3)") 2018-07-24T01:03:22Z pierpal quit (Ping timeout: 264 seconds) 2018-07-24T01:03:27Z patlv quit (Ping timeout: 240 seconds) 2018-07-24T01:04:37Z eminhi joined #lisp 2018-07-24T01:06:58Z fikka joined #lisp 2018-07-24T01:08:21Z Kundry_Wag joined #lisp 2018-07-24T01:11:38Z fikka quit (Ping timeout: 244 seconds) 2018-07-24T01:12:10Z rumbler31 joined #lisp 2018-07-24T01:16:35Z rumbler31 quit (Ping timeout: 240 seconds) 2018-07-24T01:18:07Z jfrancis_ joined #lisp 2018-07-24T01:24:32Z Fare joined #lisp 2018-07-24T01:24:59Z asarch joined #lisp 2018-07-24T01:25:22Z Kundry_W_ joined #lisp 2018-07-24T01:27:27Z jfrancis_ quit (Ping timeout: 265 seconds) 2018-07-24T01:28:47Z quazimodo joined #lisp 2018-07-24T01:29:01Z caltelt_ joined #lisp 2018-07-24T01:30:22Z Kundry_W_ quit (Ping timeout: 264 seconds) 2018-07-24T01:30:24Z pierpal joined #lisp 2018-07-24T01:32:38Z asarch: Stupid questions: 2018-07-24T01:32:41Z asarch: 1) If ' is to (QUOTE ...), what is ` to? 2018-07-24T01:32:41Z asarch: 2) What is a "parameter list"? Is it the list of the arguments of a function, macro, etc? 2018-07-24T01:32:41Z asarch: 3) What is a "lambda list"? 2018-07-24T01:32:41Z asarch: 4) If doing this (let ((x 10)) (format t "~a" x)) would be the same as this ((lambda (x) (format t "~a" x)) 10). Then how would I emulate FLET? 2018-07-24T01:33:28Z Bike: ` doesn't have one 2018-07-24T01:33:49Z Bike: i don't believe "parameter list" is used in the spec 2018-07-24T01:33:56Z asarch takes notes... 2018-07-24T01:34:20Z Bike: a "lambda list" specifies how a function ormacro or whatever takes arguments 2018-07-24T01:34:33Z Bike: i don't understand the last question 2018-07-24T01:34:44Z MinnowTaur quit (Ping timeout: 256 seconds) 2018-07-24T01:34:46Z Bike: do you mean that you want to have a function's parameters bind in the function namespace? 2018-07-24T01:35:10Z asarch: What question number? 2018-07-24T01:35:16Z Bike: four 2018-07-24T01:35:18Z Bike: the last one 2018-07-24T01:35:20Z Bike: since you asked four. 2018-07-24T01:36:01Z asarch: Ah, according with PCL, LET is just a macro that expand to the second form 2018-07-24T01:36:20Z asarch: My question was, how is FLET expanded? 2018-07-24T01:36:29Z Bike: it's not 2018-07-24T01:36:33Z Bike: and let is not a macro 2018-07-24T01:36:48Z Bike: i mean, an implementation could make it one, but there's no need to, or to be able to 2018-07-24T01:37:01Z Bike: in most implementations let is specially handled 2018-07-24T01:37:33Z asarch: D'oh! I see the rest of the paragraph: "in some Lisp dialects--though not Common Lisp--" 2018-07-24T01:37:46Z Bike: yeah, in scheme i think it is actually a macro. 2018-07-24T01:37:51Z asarch: http://www.gigamonkeys.com/book/variables.html, footnote #6 2018-07-24T01:39:08Z spm_ joined #lisp 2018-07-24T01:39:54Z asarch: "Parameter lists are sometimes also called lambda lists because of the historical relationship between Lisp's notion of functions and the lambda calculus." 2018-07-24T01:40:05Z asarch: http://www.gigamonkeys.com/book/functions.html, footnote #3 2018-07-24T01:41:55Z asarch: So, the parameter list is actually the list of the arguments for a function/macro/etc, right? And, how is a Lambda list? 2018-07-24T01:42:43Z light2yellow quit (Quit: cant handle it anymore) 2018-07-24T01:42:47Z Bike: i'm telling you i don't think "parameter list" is an official term. 2018-07-24T01:42:53Z Bike: if it's anything it's juts a synonym for "lambda list". 2018-07-24T01:42:55Z rumbler31 joined #lisp 2018-07-24T01:44:21Z mfiano: a function's parameters are defined by the ordinary lambda list, a type of lambda list 2018-07-24T01:44:44Z mfiano: and yes LET is one of 25 epe ial operators. neither a function nor a macro 2018-07-24T01:44:57Z mfiano: the standard defines 'parameter' 2018-07-24T01:45:02Z mfiano: parameter n. 1. (of a function) a variable in the definition of a function which takes on the value of a corresponding argument (or of a list of corresponding arguments) to that function when it is called, or which in some cases is given a default value because there is no corresponding argument. 2018-07-24T01:46:56Z Bike: parameter certainly means something, yes 2018-07-24T01:48:15Z mfiano: parameter list doesnt really make sense, because there may be more data than parametric data in a lambda list 2018-07-24T01:48:40Z vultyre quit (Quit: Leaving) 2018-07-24T01:51:37Z patlv joined #lisp 2018-07-24T01:52:18Z spm_: Greets. Perhaps silly question, but any clues on how to get rid of case (or uppercase all symbols) when executing CL-DBI queries? DB appears to convert everything to lowercase, so I can't address the plist elements unless I escape the keys (getf row :|field1|), etc. I looked at the test code for cl-dbi, and see they use the pipe-escapes but that seems ugly... 2018-07-24T01:53:07Z jfrancis_ joined #lisp 2018-07-24T01:53:13Z asarch: So the book is wrong? 2018-07-24T01:53:37Z asarch burns his hard copy of the book 2018-07-24T01:54:23Z Bike: it uses a term that's not in the spec 2018-07-24T01:54:31Z Bike: and tells you it means a term that is in the spec 2018-07-24T01:54:45Z mfiano: in other languages a parameter list is a known term. CL is a standard with very specific vocabulary and function parameter location does a bit more than just define a list if parameters 2018-07-24T01:55:40Z mfiano: i suppose the book is being a bit too friendly in cases, but its been a long time since ive read it 2018-07-24T01:56:50Z patlv quit (Ping timeout: 256 seconds) 2018-07-24T01:57:54Z jfrancis_ quit (Ping timeout: 265 seconds) 2018-07-24T01:59:02Z optikalmouse joined #lisp 2018-07-24T02:00:15Z spm_: In PCL in that chapter, he's describing how parameters to a function are specified: as a list (of parameters) e.g. a "parameter list". The footnote calls out that these can be referred to as a "lambda-list" for historical reasons, and I believe his doing so is to make the hyperspec docs understandable (as, for instance, the hyperspec for the defun macro shows the argument as lambda-list). 2018-07-24T02:01:05Z robotoad quit (Quit: robotoad) 2018-07-24T02:03:04Z Fare quit (Ping timeout: 256 seconds) 2018-07-24T02:03:31Z fikka joined #lisp 2018-07-24T02:06:50Z jfrancis_ joined #lisp 2018-07-24T02:07:03Z smurfrobot joined #lisp 2018-07-24T02:08:01Z vhost- quit (Ping timeout: 248 seconds) 2018-07-24T02:08:34Z fikka quit (Ping timeout: 260 seconds) 2018-07-24T02:09:37Z Kundry_W_ joined #lisp 2018-07-24T02:10:52Z asarch: How does a lambda list look like? 2018-07-24T02:11:26Z jfrancis_ quit (Ping timeout: 265 seconds) 2018-07-24T02:12:07Z mfiano: That depends on which kind 2018-07-24T02:13:04Z robotoad joined #lisp 2018-07-24T02:14:33Z Kundry_W_ quit (Ping timeout: 268 seconds) 2018-07-24T02:14:49Z brendyn joined #lisp 2018-07-24T02:15:23Z karlosz quit (Quit: karlosz) 2018-07-24T02:15:59Z jfrancis_ joined #lisp 2018-07-24T02:16:47Z Fare joined #lisp 2018-07-24T02:18:43Z aeth: defmethod, defmacro, and defun have different lambda lists. I think destructuring-bind's is the same as defmacro 2018-07-24T02:19:35Z mfiano: it is not 2018-07-24T02:19:59Z mfiano: that is ehy it is referred to as a destructuring lambda list 2018-07-24T02:20:04Z mfiano: why* 2018-07-24T02:20:37Z jfrancis_ quit (Ping timeout: 265 seconds) 2018-07-24T02:24:33Z cmatei quit (Ping timeout: 248 seconds) 2018-07-24T02:25:08Z MinnowTaur joined #lisp 2018-07-24T02:26:47Z Kundry_Wag quit (Remote host closed the connection) 2018-07-24T02:27:23Z Kundry_Wag joined #lisp 2018-07-24T02:27:54Z cmatei joined #lisp 2018-07-24T02:28:25Z smurfrobot quit (Remote host closed the connection) 2018-07-24T02:30:56Z dtornabene joined #lisp 2018-07-24T02:31:34Z pierpa quit (Quit: Page closed) 2018-07-24T02:31:43Z Kundry_Wag quit (Ping timeout: 244 seconds) 2018-07-24T02:32:59Z karlosz joined #lisp 2018-07-24T02:35:12Z karlosz quit (Client Quit) 2018-07-24T02:37:40Z graphene quit (Remote host closed the connection) 2018-07-24T02:38:13Z karlosz joined #lisp 2018-07-24T02:38:59Z graphene joined #lisp 2018-07-24T02:39:36Z asarch: What about in a defun, how would it look like? 2018-07-24T02:40:01Z mange quit (Ping timeout: 248 seconds) 2018-07-24T02:40:37Z Bike: (x y z) or (x y &rest r) or (&key (z nil) b &allow-other-keys) or any number of other possibilities. 2018-07-24T02:41:40Z aeth: http://www.lispworks.com/documentation/HyperSpec/Body/03_da.htm 2018-07-24T02:42:30Z aeth: and this is all of them: http://www.lispworks.com/documentation/HyperSpec/Body/03_d.htm 2018-07-24T02:46:28Z aeth: "A destructuring lambda list can contain all of the lambda list keywords listed for macro lambda lists except for &environment" and that's why I thought that they were the same 2018-07-24T02:50:52Z dtornabene quit (Remote host closed the connection) 2018-07-24T02:52:13Z asarch: THANK YOU!!! 2018-07-24T02:52:20Z asarch: Thank you very much guys :-) 2018-07-24T02:55:46Z megalography quit (Ping timeout: 256 seconds) 2018-07-24T02:55:56Z fikka joined #lisp 2018-07-24T02:58:08Z pierpal quit (Quit: Poof) 2018-07-24T02:58:23Z shka1 joined #lisp 2018-07-24T02:58:23Z pierpal joined #lisp 2018-07-24T02:59:35Z Kundry_Wag joined #lisp 2018-07-24T03:00:17Z aeth: because it doesn't put it on one page: 3.4.1 defun/lambda/flet/labels/handler-case/restart-case/define-method-combination, 3.4.2 defgeneric, 3.4.3 defmethod/defgenric, 3.4.4 defmacro/macrolet/define-compiler-macro/define-setf-expander, 3.4.5. destructuring-bind, 3.4.6. defstruct (constructors), 3.4.7 defsetf, 3.4.8. deftype, 3.4.9. define-modify-macro, and 3.4.10. define-method-combination 2018-07-24T03:00:39Z fikka quit (Ping timeout: 244 seconds) 2018-07-24T03:01:00Z aeth: Of course, this is just the standard. Libraries can have their own lambda-lists, e.g. specialization-store 2018-07-24T03:01:23Z anewuser joined #lisp 2018-07-24T03:01:45Z edgar joined #lisp 2018-07-24T03:01:59Z asarch: Ok 2018-07-24T03:02:23Z edgar quit (Client Quit) 2018-07-24T03:02:34Z karlosz quit (Quit: karlosz) 2018-07-24T03:02:49Z edgar joined #lisp 2018-07-24T03:02:59Z milanj quit (Quit: This computer has gone to sleep) 2018-07-24T03:04:03Z edgar quit (Client Quit) 2018-07-24T03:04:43Z edgar joined #lisp 2018-07-24T03:05:04Z Pixel_Outlaw quit (Remote host closed the connection) 2018-07-24T03:05:35Z edgar quit (Client Quit) 2018-07-24T03:05:51Z edgar joined #lisp 2018-07-24T03:09:01Z bjorkintosh joined #lisp 2018-07-24T03:10:14Z MinnowTaur quit (Remote host closed the connection) 2018-07-24T03:10:52Z megalography joined #lisp 2018-07-24T03:16:29Z karlosz joined #lisp 2018-07-24T03:17:13Z optikalmouse quit (Quit: Leaving) 2018-07-24T03:19:44Z sjl_ quit (Ping timeout: 260 seconds) 2018-07-24T03:22:03Z sellout-1 joined #lisp 2018-07-24T03:24:01Z Kundry_W_ joined #lisp 2018-07-24T03:24:32Z sellout- quit (Ping timeout: 256 seconds) 2018-07-24T03:25:04Z erratic quit (Quit: this server has gone to sleep) 2018-07-24T03:25:34Z graphene quit (Remote host closed the connection) 2018-07-24T03:26:50Z graphene joined #lisp 2018-07-24T03:28:45Z Kundry_W_ quit (Ping timeout: 256 seconds) 2018-07-24T03:32:49Z Kundry_Wag quit (Ping timeout: 248 seconds) 2018-07-24T03:34:39Z erratic joined #lisp 2018-07-24T03:35:12Z fm4d quit (Ping timeout: 245 seconds) 2018-07-24T03:38:50Z eminhi quit (Ping timeout: 256 seconds) 2018-07-24T03:43:24Z LdBeth: Good afternoon 2018-07-24T03:48:21Z eli_oat quit (Quit: eli_oat) 2018-07-24T03:48:35Z eli_oat joined #lisp 2018-07-24T03:51:55Z smurfrobot joined #lisp 2018-07-24T03:55:21Z AetherWind joined #lisp 2018-07-24T03:56:25Z jfrancis_ joined #lisp 2018-07-24T03:56:27Z smurfrobot quit (Ping timeout: 244 seconds) 2018-07-24T03:59:42Z asarch: My last stupid question for today: You need to do a small a quick program (maybe to fix a calculation for something), what do you usually use for that? LET, FLET, LET*, lambda, etc? 2018-07-24T04:00:11Z orivej joined #lisp 2018-07-24T04:00:12Z jfranci__ joined #lisp 2018-07-24T04:00:22Z Fare quit (Ping timeout: 256 seconds) 2018-07-24T04:00:35Z Bike: those are all different things. i use what i need 2018-07-24T04:00:41Z asarch: Ok 2018-07-24T04:00:59Z asarch: Why LAMBDA and not just Λ or λ? 2018-07-24T04:01:17Z Bike: most keyboards are short on greek. 2018-07-24T04:02:58Z jfrancis_ quit (Ping timeout: 260 seconds) 2018-07-24T04:03:03Z asarch: I know, but what if the programmer: (funcall (λ (x y) (+x y)) 10 3)? 2018-07-24T04:03:18Z Bike: i can't type a lambda without reconfiguring my system a bit 2018-07-24T04:03:20Z Bike: that's all 2018-07-24T04:03:27Z asarch: Oh :-( 2018-07-24T04:03:34Z asarch: Ok, ok 2018-07-24T04:16:06Z elfmacs quit (Ping timeout: 256 seconds) 2018-07-24T04:23:05Z patlv joined #lisp 2018-07-24T04:26:33Z cgay_ quit (Quit: Lost terminal) 2018-07-24T04:27:36Z vtomole joined #lisp 2018-07-24T04:28:35Z cgay_ joined #lisp 2018-07-24T04:31:50Z aeth: It's probably better to turn your lambda into a λ via emacs, locally to your end. It will mess up indentation sometimes, though. 2018-07-24T04:32:24Z aeth: It's pretty rare, though. The only common case with common style where the indentation would be aligned improperly would be (lambda (some-long-variable\n 2018-07-24T04:32:45Z aeth: (But if you're writing a complicated function as a lambda it should probably be named with flet or defun.) 2018-07-24T04:33:35Z aeth: The best thing about it is you can just type "lambda" and emacs will display it, locally to you, as λ 2018-07-24T04:34:57Z patlv quit (Ping timeout: 240 seconds) 2018-07-24T04:36:34Z zfree joined #lisp 2018-07-24T04:40:29Z phoe quit (Ping timeout: 276 seconds) 2018-07-24T04:40:43Z phoe joined #lisp 2018-07-24T04:41:19Z LdBeth: Well I would just give it a name so I can reference to it later 2018-07-24T04:42:13Z asarch: (mapcar #'(lambda (x) (+ x 10))) -> (mapcar #'(λ (x) (+ x 10))) 2018-07-24T04:43:10Z LdBeth: CL21 allows one to write (mapcar ^(+ % 10) ... 2018-07-24T04:43:28Z aeth: That's a terrible name. What if there's a new standard in 2021? 2018-07-24T04:43:48Z aeth: Unlikely, but possible. 2018-07-24T04:43:59Z fikka joined #lisp 2018-07-24T04:44:16Z edgar quit (Quit: Leaving) 2018-07-24T04:45:27Z beach: Good morning everyone! 2018-07-24T04:45:38Z moei quit (Read error: Connection reset by peer) 2018-07-24T04:45:54Z LdBeth: Good morning beach 2018-07-24T04:46:14Z moei joined #lisp 2018-07-24T04:46:33Z whartung_ joined #lisp 2018-07-24T04:46:49Z alter-schjetne joined #lisp 2018-07-24T04:47:38Z jfranci__ quit (Remote host closed the connection) 2018-07-24T04:48:57Z whartung quit (Ping timeout: 240 seconds) 2018-07-24T04:48:58Z whartung_ is now known as whartung 2018-07-24T04:48:59Z fikka quit (Ping timeout: 260 seconds) 2018-07-24T04:48:59Z elfmacs joined #lisp 2018-07-24T04:49:35Z schjetne quit (Ping timeout: 276 seconds) 2018-07-24T04:50:19Z jfrancis_ joined #lisp 2018-07-24T04:53:25Z jfrancis_ quit (Remote host closed the connection) 2018-07-24T04:56:18Z igemnace joined #lisp 2018-07-24T04:59:31Z Bike quit (Quit: Lost terminal) 2018-07-24T05:03:54Z bjorkintosh quit (Remote host closed the connection) 2018-07-24T05:05:16Z zigpaw quit (Quit: Ping timeout (120 seconds)) 2018-07-24T05:05:23Z megalography quit (Ping timeout: 260 seconds) 2018-07-24T05:05:23Z bjorkint0sh joined #lisp 2018-07-24T05:06:06Z orivej quit (Ping timeout: 256 seconds) 2018-07-24T05:06:23Z zigpaw joined #lisp 2018-07-24T05:07:03Z vtomole quit (Ping timeout: 252 seconds) 2018-07-24T05:07:51Z orivej joined #lisp 2018-07-24T05:11:04Z Kaisyu7 quit (Quit: ERC (IRC client for Emacs 25.3.2)) 2018-07-24T05:12:03Z bjorkint0sh quit (Quit: Leaving) 2018-07-24T05:12:35Z hphat^ quit 2018-07-24T05:14:04Z orivej quit (Ping timeout: 260 seconds) 2018-07-24T05:15:07Z milanj joined #lisp 2018-07-24T05:16:41Z JuanDaugherty joined #lisp 2018-07-24T05:18:56Z megalography joined #lisp 2018-07-24T05:20:21Z Inline quit (Remote host closed the connection) 2018-07-24T05:20:53Z Kaisyu7 joined #lisp 2018-07-24T05:23:47Z karlosz quit (Quit: karlosz) 2018-07-24T05:24:05Z pierpal quit (Quit: Poof) 2018-07-24T05:24:17Z jack_rabbit quit (Ping timeout: 265 seconds) 2018-07-24T05:24:24Z pierpal joined #lisp 2018-07-24T05:24:37Z ofi joined #lisp 2018-07-24T05:30:02Z Kundry_Wag joined #lisp 2018-07-24T05:31:28Z nickenchuggets quit (Quit: Leaving) 2018-07-24T05:31:41Z sauvin joined #lisp 2018-07-24T05:32:03Z Kaisyu7 quit (Quit: ERC (IRC client for Emacs 25.3.2)) 2018-07-24T05:35:09Z asarch quit (Quit: Leaving) 2018-07-24T05:37:51Z Kaisyu7 joined #lisp 2018-07-24T05:38:30Z fikka joined #lisp 2018-07-24T05:40:44Z smurfrobot joined #lisp 2018-07-24T05:41:14Z anewuser quit (Ping timeout: 256 seconds) 2018-07-24T05:43:30Z fikka quit (Ping timeout: 256 seconds) 2018-07-24T05:45:42Z flamebeard joined #lisp 2018-07-24T05:47:38Z vlatkoB joined #lisp 2018-07-24T05:53:05Z smurfrobot quit (Remote host closed the connection) 2018-07-24T05:55:27Z quazimodo quit (Ping timeout: 240 seconds) 2018-07-24T05:56:55Z ofi quit (Remote host closed the connection) 2018-07-24T05:57:24Z ofi joined #lisp 2018-07-24T05:59:01Z SaganMan quit (Ping timeout: 268 seconds) 2018-07-24T06:03:02Z Kundry_Wag quit (Ping timeout: 244 seconds) 2018-07-24T06:08:22Z elfmacs quit (Quit: WeeChat 2.2) 2018-07-24T06:10:01Z fikka joined #lisp 2018-07-24T06:11:00Z Kundry_Wag joined #lisp 2018-07-24T06:14:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-24T06:15:48Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-24T06:16:29Z shka1 quit (Ping timeout: 260 seconds) 2018-07-24T06:17:10Z graphene quit (Remote host closed the connection) 2018-07-24T06:17:45Z jfrancis_ joined #lisp 2018-07-24T06:18:28Z graphene joined #lisp 2018-07-24T06:22:02Z jfrancis_ quit (Ping timeout: 256 seconds) 2018-07-24T06:23:53Z JuanDaugherty quit (Quit: Exeunt) 2018-07-24T06:24:24Z varjagg joined #lisp 2018-07-24T06:32:34Z wildbartty quit (Remote host closed the connection) 2018-07-24T06:32:47Z wildbartty joined #lisp 2018-07-24T06:32:49Z caltelt quit (Ping timeout: 260 seconds) 2018-07-24T06:37:53Z smurfrobot joined #lisp 2018-07-24T06:40:10Z fikka joined #lisp 2018-07-24T06:41:30Z pierpal quit (Quit: Poof) 2018-07-24T06:41:46Z pierpal joined #lisp 2018-07-24T06:48:20Z vhost- joined #lisp 2018-07-24T06:48:20Z vhost- quit (Changing host) 2018-07-24T06:48:20Z vhost- joined #lisp 2018-07-24T06:48:57Z smurfrobot quit (Remote host closed the connection) 2018-07-24T06:49:18Z varjagg quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2018-07-24T06:49:25Z elfmacs joined #lisp 2018-07-24T06:50:40Z rozenglass quit (Remote host closed the connection) 2018-07-24T06:53:10Z angavrilov joined #lisp 2018-07-24T06:54:54Z fikka quit (Ping timeout: 256 seconds) 2018-07-24T07:01:31Z sword quit (Remote host closed the connection) 2018-07-24T07:04:04Z robotoad quit (Quit: robotoad) 2018-07-24T07:13:11Z quazimodo joined #lisp 2018-07-24T07:17:03Z jfrancis_ joined #lisp 2018-07-24T07:21:34Z jfrancis_ quit (Ping timeout: 244 seconds) 2018-07-24T07:23:30Z fikka joined #lisp 2018-07-24T07:25:11Z White_Flame quit (Ping timeout: 244 seconds) 2018-07-24T07:28:14Z fikka quit (Ping timeout: 260 seconds) 2018-07-24T07:32:48Z Arcaelyx joined #lisp 2018-07-24T07:34:23Z White_Flame joined #lisp 2018-07-24T07:40:41Z aindilis quit (Read error: Connection reset by peer) 2018-07-24T07:41:40Z jfrancis_ joined #lisp 2018-07-24T07:42:14Z aindilis joined #lisp 2018-07-24T07:45:08Z jfranci__ joined #lisp 2018-07-24T07:46:13Z jfrancis_ quit (Ping timeout: 256 seconds) 2018-07-24T07:48:58Z zaquest joined #lisp 2018-07-24T07:49:33Z jfranci__ quit (Ping timeout: 264 seconds) 2018-07-24T07:55:22Z shka: good morning 2018-07-24T07:58:46Z beach: Hello shka. 2018-07-24T08:00:44Z Kundry_Wag joined #lisp 2018-07-24T08:05:28Z hhdave_ joined #lisp 2018-07-24T08:07:09Z graphene quit (Read error: Connection reset by peer) 2018-07-24T08:08:28Z graphene joined #lisp 2018-07-24T08:09:42Z vhost- quit (Ping timeout: 256 seconds) 2018-07-24T08:18:12Z fikka joined #lisp 2018-07-24T08:21:01Z graphene quit (Remote host closed the connection) 2018-07-24T08:22:17Z graphene joined #lisp 2018-07-24T08:23:37Z Moosef joined #lisp 2018-07-24T08:23:39Z fikka quit (Ping timeout: 260 seconds) 2018-07-24T08:25:51Z Kundry_W_ joined #lisp 2018-07-24T08:30:39Z Kundry_W_ quit (Ping timeout: 260 seconds) 2018-07-24T08:33:30Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-24T08:35:05Z playful-owl joined #lisp 2018-07-24T08:43:34Z zfree quit (Quit: zfree) 2018-07-24T08:45:15Z orivej joined #lisp 2018-07-24T08:45:16Z pagnol joined #lisp 2018-07-24T08:48:12Z SaganMan joined #lisp 2018-07-24T09:06:15Z _cosmonaut_ joined #lisp 2018-07-24T09:12:20Z schweers joined #lisp 2018-07-24T09:12:41Z fikka joined #lisp 2018-07-24T09:15:13Z logicmoo quit (Ping timeout: 248 seconds) 2018-07-24T09:15:33Z saki quit (Ping timeout: 256 seconds) 2018-07-24T09:15:54Z Arcaelyx_ joined #lisp 2018-07-24T09:16:57Z FreeBirdLjj joined #lisp 2018-07-24T09:17:15Z fikka quit (Ping timeout: 256 seconds) 2018-07-24T09:17:52Z FreeBirdLjj quit (Read error: Connection reset by peer) 2018-07-24T09:18:32Z FreeBirdLjj joined #lisp 2018-07-24T09:19:55Z dmiles joined #lisp 2018-07-24T09:20:05Z Arcaelyx quit (Ping timeout: 276 seconds) 2018-07-24T09:23:03Z FreeBirdLjj quit (Ping timeout: 265 seconds) 2018-07-24T09:24:07Z pjb: minion: memo for asarch: (defmacro λ ((&rest params) &body body) `(cl:lambda ,params ,@body)) 2018-07-24T09:24:08Z minion: Remembered. I'll tell asarch when he/she/it next speaks. 2018-07-24T09:24:30Z shka: just use emacs prettify :/ 2018-07-24T09:24:35Z saki joined #lisp 2018-07-24T09:33:02Z jfrancis_ joined #lisp 2018-07-24T09:36:42Z xrash joined #lisp 2018-07-24T09:37:34Z jfrancis_ quit (Ping timeout: 260 seconds) 2018-07-24T09:39:15Z milanj quit (Quit: This computer has gone to sleep) 2018-07-24T09:42:30Z flip214: aeth: CL20.21 2018-07-24T09:50:47Z antoszka: There were quite a few reader macros for shorthand lambda notation. 2018-07-24T09:51:50Z antoszka: Some more some less flexible (with regards to argument passing). 2018-07-24T09:53:10Z pjb: As reader macro, you can use the lambda-calculus syntax. λx,y.(+ x y) 2018-07-24T09:53:33Z pjb: But since you wouldn't want infix notation, it may be too much. 2018-07-24T09:54:08Z trittweiler: I always thought sharp-backquote would be a nice choice of taste, like #`(foo ,2 ,1 ,@&rest) == (lambda (x y &rest rest) (apply 'foo y x rest)) 2018-07-24T09:54:14Z eminhi joined #lisp 2018-07-24T09:55:33Z pjb: It's obscure. You have to know it to understand what it does. 2018-07-24T09:55:58Z pjb: (lambda ($1 $2 &rest rest) (apply (function foo) $2 $1 rest)) is clearer :-) 2018-07-24T09:57:00Z pjb: If the parameters don't need names, perhaps you don't need parameters (to explicit them). 2018-07-24T09:57:36Z esrarkesh joined #lisp 2018-07-24T09:57:52Z pjb: Instead of (lambda (x y &rest rest) (apply 'foo y x rest))) write (swap-parameters foo) 2018-07-24T09:58:19Z pjb: (defun swap-parameter (fun) (lambda (x y &rest rest) (apply fun y x rest))) 2018-07-24T10:01:00Z al-damiri joined #lisp 2018-07-24T10:01:03Z trocado joined #lisp 2018-07-24T10:03:38Z Kundry_Wag joined #lisp 2018-07-24T10:05:54Z m00natic joined #lisp 2018-07-24T10:06:52Z Kundry_W_ joined #lisp 2018-07-24T10:08:15Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-24T10:09:14Z elfmacs quit (Ping timeout: 260 seconds) 2018-07-24T10:09:29Z smurfrobot joined #lisp 2018-07-24T10:09:52Z xrash quit (Read error: Connection reset by peer) 2018-07-24T10:10:29Z xrash joined #lisp 2018-07-24T10:11:32Z Kundry_W_ quit (Ping timeout: 256 seconds) 2018-07-24T10:12:57Z Kundry_Wag joined #lisp 2018-07-24T10:15:48Z random-nick joined #lisp 2018-07-24T10:17:19Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-24T10:19:37Z Kundry_Wag joined #lisp 2018-07-24T10:20:45Z milanj joined #lisp 2018-07-24T10:23:36Z LdBeth: I can’t think out any actual use case about this 2018-07-24T10:24:00Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-24T10:24:52Z shka: LdBeth: (reduce (swap-parameters #'cons) '(1 2 3 4 5) :initial-value nil) 2018-07-24T10:24:56Z shka: for instance 2018-07-24T10:26:11Z LdBeth: Then hack on reduce 2018-07-24T10:26:47Z Kundry_Wag joined #lisp 2018-07-24T10:29:16Z brendarn joined #lisp 2018-07-24T10:30:18Z Kundry_Wag_ joined #lisp 2018-07-24T10:30:22Z brendyn quit (Ping timeout: 264 seconds) 2018-07-24T10:30:25Z dmiles quit (Ping timeout: 248 seconds) 2018-07-24T10:30:30Z vlatkoB_ joined #lisp 2018-07-24T10:30:32Z xificurC: I'm a bit lost with packages. When I add a package do :depends-on in asdf:defsystem, those packages are automatically available when I do in-package? From hands-on experience it seems to be the case. 2018-07-24T10:30:51Z shka: xificurC: you are truely lost 2018-07-24T10:31:04Z shka: packages and systems are two separate terms 2018-07-24T10:31:27Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-24T10:31:32Z shka: package is for reader, systems are something completly different 2018-07-24T10:32:31Z xificurC: shka: I get that they are different, I don't get the interplay :) when I do (require 'foo) and foo is a name of a system that describes a single package with the same name 2018-07-24T10:32:44Z shka: it is not required for a system to provide package with the same name as the system 2018-07-24T10:32:57Z shka: it is just what people do 2018-07-24T10:33:04Z xificurC: did I just require the package or the system? 2018-07-24T10:33:14Z shka: you can't requirte the package 2018-07-24T10:33:18Z Moosef quit (Quit: Connection closed for inactivity) 2018-07-24T10:33:23Z LdBeth: (defun seduce (fn list &rest args) 2018-07-24T10:33:24Z LdBeth: (do ((lst list (cdr lst))) 2018-07-24T10:33:24Z LdBeth: (funcall fn (second lst) (first lst)))) 2018-07-24T10:33:46Z vlatkoB quit (Ping timeout: 244 seconds) 2018-07-24T10:33:50Z shka: i prefer pjb version 2018-07-24T10:34:00Z BitPuffin joined #lisp 2018-07-24T10:34:01Z shka: xificurC: packages are only for reading 2018-07-24T10:34:04Z shka: for nothing else 2018-07-24T10:34:15Z shka: so you can't really require it 2018-07-24T10:34:42Z xificurC: clhs of require talks about modules.. great, more terms incoming 2018-07-24T10:34:45Z shka: you can load a package and that would produce new package, but that's just a namespace 2018-07-24T10:34:56Z _death: xificurC: https://web.archive.org/web/20150214050540/http://weitz.de:80/packages.html 2018-07-24T10:35:08Z shka: what system is just way to load files 2018-07-24T10:35:44Z shka: so interplay is simple: system says how to load code, code can specify packages, and people can name package just like system 2018-07-24T10:35:45Z xificurC: _death: I'll read that, thanks 2018-07-24T10:36:00Z shka: and that's pretty much it 2018-07-24T10:36:17Z shka: makes sense? 2018-07-24T10:36:34Z xificurC: shka: ok, cleared up a bit. Now the question I was aiming at :) 2018-07-24T10:36:47Z LdBeth: package is a data structure contains symbols and their bindings 2018-07-24T10:37:01Z shka: just symbols 2018-07-24T10:37:08Z xificurC: what to do with external, ehm, systems? Those from quicklisp, can I just add them to the :depends-on list and it will magically get downloaded etc when needed? 2018-07-24T10:37:18Z shka: yup 2018-07-24T10:37:25Z shka: quicklisp can do that for you 2018-07-24T10:38:08Z shka: it is basicly a package manager, really 2018-07-24T10:38:26Z xificurC: cool. I could have just tried it out but I was hoping to learn something along the way, and look, I did 2018-07-24T10:38:26Z LdBeth: Well symbols hold their bindings 2018-07-24T10:38:43Z shka: one that is tightly integrated into lisp 2018-07-24T10:39:16Z shka: so in python you would run pip from shell, in cl though, quicklisp hooks into system definition and works automaticly 2018-07-24T10:39:23Z shka: without a need to go to the shell 2018-07-24T10:39:57Z shka: LdBeth: they don't 2018-07-24T10:40:18Z shka: they are associated with bindings in enviorements 2018-07-24T10:40:24Z shka: but that's it 2018-07-24T10:40:40Z dmiles joined #lisp 2018-07-24T10:41:05Z xificurC: cool. Are you using any DAG drawing library? I need to draw something and there's actually a lot of choices in quicklisp. Most bind to graphviz in some way, some have close to 0 docs, and then I found psgraph 2018-07-24T10:41:49Z Ricchi joined #lisp 2018-07-24T10:42:51Z LdBeth: shka: so symbols just hold its print name? 2018-07-24T10:43:02Z shka: LdBeth: home package, property list 2018-07-24T10:43:12Z jmercouris joined #lisp 2018-07-24T10:43:16Z smurfrobot quit (Remote host closed the connection) 2018-07-24T10:43:44Z shka: and boundp works on symbols obviously, but saying that symbol stores it's value may lead to inproper conclusions 2018-07-24T10:44:09Z shka: LdBeth: let me check what i am using actually 2018-07-24T10:44:21Z AetherWind quit (Quit: Leaving) 2018-07-24T10:44:26Z fikka joined #lisp 2018-07-24T10:44:42Z shka: xificurC: i am using :cl-dot 2018-07-24T10:45:16Z shka: LdBeth: wrong highlight, sorry 2018-07-24T10:47:43Z edgar_ joined #lisp 2018-07-24T10:48:05Z edgar_ quit (Remote host closed the connection) 2018-07-24T10:48:43Z trittweiler: xificurC, a package is essentially a hash-table from string to symbol, which is used by the reader to parse identifiers in source files to a unique object (the symbol). In order to make the `x` in "(let ((x 42)) (+ x x))" always refer to the same object. A system is essentially a Lisp object representing an executable plan to build software (i.e. something like a Makefile) 2018-07-24T10:48:45Z edgar_ joined #lisp 2018-07-24T10:48:49Z edgar_ quit (Remote host closed the connection) 2018-07-24T10:48:56Z fikka quit (Ping timeout: 256 seconds) 2018-07-24T10:55:05Z trocado quit (Ping timeout: 240 seconds) 2018-07-24T10:55:38Z quazimodo quit (Ping timeout: 268 seconds) 2018-07-24T10:56:57Z Fare joined #lisp 2018-07-24T10:57:25Z gravicappa joined #lisp 2018-07-24T10:57:41Z quazimodo joined #lisp 2018-07-24T11:00:41Z fikka joined #lisp 2018-07-24T11:04:16Z Kundry_Wag_ quit (Ping timeout: 268 seconds) 2018-07-24T11:04:46Z jfrancis_ joined #lisp 2018-07-24T11:05:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-24T11:08:52Z pjb: shka: you cannot load a package. 2018-07-24T11:08:59Z pjb: shka: don't confuse terms. 2018-07-24T11:09:13Z pjb: in CL, packages are only objects of type PACKAGE. 2018-07-24T11:09:20Z jfrancis_ quit (Ping timeout: 256 seconds) 2018-07-24T11:09:23Z pjb: They're not a bunch of files that can be loaded. 2018-07-24T11:09:49Z pjb: In CL, LOAD only READs and EVALs files. Not anything else. 2018-07-24T11:10:06Z shka: well, point is that package is the code, not the way to load the code 2018-07-24T11:10:09Z pjb: shka: you can load systems, using asdf:oos or ql:quickload. 2018-07-24T11:10:16Z pjb: package is not the code. 2018-07-24T11:10:26Z pjb: package is a data structure containing symbols. 2018-07-24T11:10:39Z shka: yes, it is a lie 2018-07-24T11:10:44Z pjb: packages let you map symbol names to symbols. 2018-07-24T11:10:47Z shka: but it reflects truth :P 2018-07-24T11:11:07Z pjb: It reflects your ignorance of the CL terminology and data types. 2018-07-24T11:11:27Z shka: point is that xificurC is confused, i don't want to confuse him anymore 2018-07-24T11:12:01Z shka: and what is critical in his case is that packages work with readers 2018-07-24T11:12:13Z shka: not with load, not with defsystem 2018-07-24T11:12:17Z pagnol quit (Ping timeout: 268 seconds) 2018-07-24T11:12:43Z shka: so yeah, it is a shortcut, but human patience has it's limits 2018-07-24T11:13:38Z pjb: So read more CLHS, PCL, http://www.flownet.com/gat/packages.pdf and some package implementation, such as: https://gitlab.com/com-informatimago/com-informatimago/tree/master/common-lisp/lisp-reader 2018-07-24T11:13:58Z pjb: When confusion is here it is critical to start writing a dictionary! 2018-07-24T11:14:32Z shka: trust me, I KNOW what is the package 2018-07-24T11:15:01Z shka: what i also know is that pedantic multipage explanation is not what people want from IRC 2018-07-24T11:15:41Z pjb: Or use the glossary that is already written! 2018-07-24T11:16:02Z shka: that won't help to build mental model in newbie 2018-07-24T11:16:09Z pjb: shka: what's pedantic in writing : "loads a fucking system" instead of "loads a package"? 2018-07-24T11:16:27Z pjb: Talking smurf won't help the newbie to build a mental model either1 2018-07-24T11:16:28Z pjb: ! 2018-07-24T11:20:01Z drduck quit (Ping timeout: 265 seconds) 2018-07-24T11:20:33Z shka quit (Ping timeout: 248 seconds) 2018-07-24T11:22:06Z makomo joined #lisp 2018-07-24T11:26:13Z jackdaniel: confusing terminology between systems/packages inhibits building good mental model – these things are often confused and lead to problems 2018-07-24T11:28:57Z lemoinem quit (Ping timeout: 240 seconds) 2018-07-24T11:29:02Z shka joined #lisp 2018-07-24T11:30:47Z zfree joined #lisp 2018-07-24T11:32:04Z Ukari quit (Quit: Leaving.) 2018-07-24T11:36:56Z lemoinem joined #lisp 2018-07-24T11:40:34Z fikka joined #lisp 2018-07-24T11:44:50Z rumbler31 quit (Remote host closed the connection) 2018-07-24T11:46:04Z fikka quit (Ping timeout: 260 seconds) 2018-07-24T11:58:28Z pagnol joined #lisp 2018-07-24T12:02:34Z Kundry_Wag joined #lisp 2018-07-24T12:08:24Z igemnace quit (Quit: WeeChat 2.2) 2018-07-24T12:12:53Z Kundry_Wag quit (Remote host closed the connection) 2018-07-24T12:12:54Z cmatei quit (Ping timeout: 260 seconds) 2018-07-24T12:13:09Z Kundry_Wag joined #lisp 2018-07-24T12:13:10Z cmatei joined #lisp 2018-07-24T12:14:47Z Kundry_Wag quit (Remote host closed the connection) 2018-07-24T12:15:14Z orivej quit (Ping timeout: 260 seconds) 2018-07-24T12:17:14Z Kundry_Wag joined #lisp 2018-07-24T12:17:56Z rumbler31 joined #lisp 2018-07-24T12:18:39Z Kundry_W_ joined #lisp 2018-07-24T12:18:58Z mindCrime joined #lisp 2018-07-24T12:19:08Z Kundry_Wag quit (Remote host closed the connection) 2018-07-24T12:21:14Z lemoinem quit (Ping timeout: 244 seconds) 2018-07-24T12:23:18Z Kundry_W_ quit (Ping timeout: 244 seconds) 2018-07-24T12:24:11Z smurfrobot joined #lisp 2018-07-24T12:25:33Z mindCrime quit (Ping timeout: 264 seconds) 2018-07-24T12:26:24Z makomo quit (Ping timeout: 256 seconds) 2018-07-24T12:29:10Z smurfrobot quit (Ping timeout: 264 seconds) 2018-07-24T12:30:48Z Bike joined #lisp 2018-07-24T12:35:55Z [X-Scale] joined #lisp 2018-07-24T12:36:13Z X-Scale quit (Ping timeout: 244 seconds) 2018-07-24T12:36:21Z [X-Scale] is now known as X-Scale 2018-07-24T12:41:58Z makomo joined #lisp 2018-07-24T12:43:40Z Kundry_Wag joined #lisp 2018-07-24T12:43:42Z lemoinem joined #lisp 2018-07-24T12:48:29Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-24T12:50:40Z JuanDaugherty joined #lisp 2018-07-24T12:51:53Z jkordani_ joined #lisp 2018-07-24T12:52:56Z jfrancis_ joined #lisp 2018-07-24T12:53:36Z quazimodo quit (Ping timeout: 256 seconds) 2018-07-24T12:54:39Z lemoinem quit (Ping timeout: 268 seconds) 2018-07-24T12:54:47Z jkordani quit (Ping timeout: 245 seconds) 2018-07-24T12:54:56Z lemoinem joined #lisp 2018-07-24T12:55:02Z patlv joined #lisp 2018-07-24T12:55:08Z jibanes quit (Ping timeout: 276 seconds) 2018-07-24T12:55:17Z quazimodo joined #lisp 2018-07-24T12:56:41Z jibanes joined #lisp 2018-07-24T12:57:21Z jfrancis_ quit (Ping timeout: 264 seconds) 2018-07-24T13:00:43Z lemoinem quit (Ping timeout: 256 seconds) 2018-07-24T13:01:35Z pierpal quit (Quit: Poof) 2018-07-24T13:01:53Z pierpal joined #lisp 2018-07-24T13:05:21Z LiamH joined #lisp 2018-07-24T13:06:58Z jkordani joined #lisp 2018-07-24T13:07:14Z lemoinem joined #lisp 2018-07-24T13:09:53Z jkordani_ quit (Ping timeout: 248 seconds) 2018-07-24T13:14:10Z graphene quit (Remote host closed the connection) 2018-07-24T13:14:17Z playful-owl quit (Quit: leaving) 2018-07-24T13:15:31Z graphene joined #lisp 2018-07-24T13:17:05Z Fare quit (Ping timeout: 240 seconds) 2018-07-24T13:19:05Z pierpal quit (Read error: Connection reset by peer) 2018-07-24T13:19:18Z pierpal joined #lisp 2018-07-24T13:24:28Z mindCrime joined #lisp 2018-07-24T13:26:01Z pierpal quit (Ping timeout: 256 seconds) 2018-07-24T13:28:47Z fikka joined #lisp 2018-07-24T13:30:47Z Kundry_Wag joined #lisp 2018-07-24T13:34:24Z fikka quit (Ping timeout: 256 seconds) 2018-07-24T13:35:39Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-24T13:36:53Z Kundry_Wag joined #lisp 2018-07-24T13:40:59Z phoe quit (Ping timeout: 260 seconds) 2018-07-24T13:41:05Z Inline joined #lisp 2018-07-24T13:41:13Z phoe joined #lisp 2018-07-24T13:42:04Z Denommus joined #lisp 2018-07-24T13:42:55Z jfrancis_ joined #lisp 2018-07-24T13:47:59Z jfrancis_ quit (Ping timeout: 260 seconds) 2018-07-24T13:52:13Z igemnace joined #lisp 2018-07-24T13:54:04Z sword joined #lisp 2018-07-24T13:55:47Z gabiruh joined #lisp 2018-07-24T14:01:26Z sjl_ joined #lisp 2018-07-24T14:01:29Z DemolitionMan joined #lisp 2018-07-24T14:01:43Z DemolitionMan quit (Client Quit) 2018-07-24T14:03:32Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-24T14:06:05Z jmercouris quit (Remote host closed the connection) 2018-07-24T14:06:19Z angavrilov is now known as angavrilov_ 2018-07-24T14:08:26Z pierpal joined #lisp 2018-07-24T14:12:53Z smurfrobot joined #lisp 2018-07-24T14:13:30Z mindCrime quit (Ping timeout: 256 seconds) 2018-07-24T14:14:46Z knusbaum quit (Ping timeout: 264 seconds) 2018-07-24T14:14:48Z klltkr quit (Remote host closed the connection) 2018-07-24T14:17:44Z smurfrobot quit (Ping timeout: 260 seconds) 2018-07-24T14:19:49Z smurfrobot joined #lisp 2018-07-24T14:20:04Z pierpal quit (Ping timeout: 260 seconds) 2018-07-24T14:23:19Z fikka joined #lisp 2018-07-24T14:24:01Z patlv quit (Ping timeout: 256 seconds) 2018-07-24T14:25:43Z ofi quit (Quit: zzzz) 2018-07-24T14:27:49Z fikka quit (Ping timeout: 244 seconds) 2018-07-24T14:27:49Z gigetoo quit (Ping timeout: 244 seconds) 2018-07-24T14:28:29Z JuanDaugherty quit (Quit: Exeunt) 2018-07-24T14:28:36Z gigetoo joined #lisp 2018-07-24T14:37:08Z pierpal joined #lisp 2018-07-24T14:40:51Z light2yellow joined #lisp 2018-07-24T14:41:29Z pierpal quit (Read error: Connection reset by peer) 2018-07-24T14:44:36Z pierpal joined #lisp 2018-07-24T14:45:47Z Fare joined #lisp 2018-07-24T14:48:57Z pierpal quit (Ping timeout: 264 seconds) 2018-07-24T14:50:33Z ebrasca quit (Remote host closed the connection) 2018-07-24T14:50:54Z papachan quit (Ping timeout: 256 seconds) 2018-07-24T14:58:27Z FreeBirdLjj joined #lisp 2018-07-24T14:59:01Z smurfrobot quit (Remote host closed the connection) 2018-07-24T14:59:54Z smurfrobot joined #lisp 2018-07-24T15:00:17Z kuwze joined #lisp 2018-07-24T15:00:35Z igemnace quit (Ping timeout: 240 seconds) 2018-07-24T15:01:27Z lnostdal quit (Ping timeout: 240 seconds) 2018-07-24T15:02:06Z hhdave_ quit (Ping timeout: 256 seconds) 2018-07-24T15:03:21Z mindCrime joined #lisp 2018-07-24T15:06:51Z jfrancis_ joined #lisp 2018-07-24T15:11:33Z jfrancis_ quit (Ping timeout: 268 seconds) 2018-07-24T15:19:14Z pierpal joined #lisp 2018-07-24T15:20:07Z jibanes quit (Ping timeout: 256 seconds) 2018-07-24T15:21:37Z _cosmonaut_ quit (Ping timeout: 256 seconds) 2018-07-24T15:22:07Z jibanes joined #lisp 2018-07-24T15:22:43Z jack_rabbit joined #lisp 2018-07-24T15:23:58Z can3p[m] quit (Quit: removing from IRC because user idle on matrix for 30+ days) 2018-07-24T15:30:13Z robotoad joined #lisp 2018-07-24T15:32:02Z jack_rabbit quit (Remote host closed the connection) 2018-07-24T15:33:21Z pierpal quit (Ping timeout: 264 seconds) 2018-07-24T15:34:26Z rozenglass joined #lisp 2018-07-24T15:36:49Z brendarn is now known as brendyn 2018-07-24T15:36:58Z pierpal joined #lisp 2018-07-24T15:37:39Z makomo quit (Ping timeout: 260 seconds) 2018-07-24T15:40:51Z pierpal quit (Read error: Connection reset by peer) 2018-07-24T15:41:37Z smurfrobot quit (Remote host closed the connection) 2018-07-24T15:42:22Z edgar_ joined #lisp 2018-07-24T15:42:29Z edgar_ quit (Client Quit) 2018-07-24T15:43:13Z edgar-rft joined #lisp 2018-07-24T15:43:33Z edgar-rft quit (Remote host closed the connection) 2018-07-24T15:44:22Z edgar-rft joined #lisp 2018-07-24T15:46:49Z ikaros28 quit (Ping timeout: 265 seconds) 2018-07-24T15:47:00Z Colleen quit (Remote host closed the connection) 2018-07-24T15:47:34Z Colleen joined #lisp 2018-07-24T15:48:42Z brendyn quit (Ping timeout: 256 seconds) 2018-07-24T15:49:41Z zfree quit (Quit: zfree) 2018-07-24T15:51:04Z xrash quit (Ping timeout: 260 seconds) 2018-07-24T15:51:48Z wheelsucker joined #lisp 2018-07-24T15:51:54Z lumm joined #lisp 2018-07-24T15:53:43Z flamebeard quit 2018-07-24T15:54:26Z ArthurAGleckler[ quit (Quit: removing from IRC because user idle on matrix for 30+ days) 2018-07-24T15:55:58Z fikka joined #lisp 2018-07-24T15:56:34Z pierpal joined #lisp 2018-07-24T15:58:27Z pagnol quit (Ping timeout: 256 seconds) 2018-07-24T16:00:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-24T16:02:46Z pierpal quit (Read error: Connection reset by peer) 2018-07-24T16:03:18Z Kundry_Wag quit (Remote host closed the connection) 2018-07-24T16:03:30Z SAL9000[m] quit (Quit: removing from IRC because user idle on matrix for 30+ days) 2018-07-24T16:04:04Z papachan joined #lisp 2018-07-24T16:05:54Z shka1 joined #lisp 2018-07-24T16:10:38Z graphene quit (Remote host closed the connection) 2018-07-24T16:11:13Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-24T16:11:57Z graphene joined #lisp 2018-07-24T16:12:41Z Ven`` joined #lisp 2018-07-24T16:20:34Z pierpal joined #lisp 2018-07-24T16:21:39Z Kaisyu quit (Quit: Connection closed for inactivity) 2018-07-24T16:22:15Z shka1: hej 2018-07-24T16:22:34Z shka1: czy wie ktoś czy plany techniczne programu Apollo są dostępne publicznie? 2018-07-24T16:22:43Z shka1: eeee sorry 2018-07-24T16:22:47Z shka1: wrong channel 2018-07-24T16:23:30Z cage_ joined #lisp 2018-07-24T16:23:58Z FreeBirdLjj joined #lisp 2018-07-24T16:24:28Z ikaros28 joined #lisp 2018-07-24T16:27:13Z pierpal quit (Ping timeout: 248 seconds) 2018-07-24T16:33:05Z megalography quit (Ping timeout: 248 seconds) 2018-07-24T16:34:02Z rippa joined #lisp 2018-07-24T16:35:14Z orivej joined #lisp 2018-07-24T16:39:30Z karswell joined #lisp 2018-07-24T16:43:22Z pierpal joined #lisp 2018-07-24T16:44:53Z Kundry_Wag joined #lisp 2018-07-24T16:48:03Z megalography joined #lisp 2018-07-24T16:49:56Z newbie43 joined #lisp 2018-07-24T16:50:30Z fikka joined #lisp 2018-07-24T16:51:03Z varjag joined #lisp 2018-07-24T16:54:07Z pierpal quit (Read error: Connection reset by peer) 2018-07-24T16:55:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-24T16:56:02Z cgay_ quit (Remote host closed the connection) 2018-07-24T16:56:16Z cgay_ joined #lisp 2018-07-24T16:58:58Z pierpal joined #lisp 2018-07-24T17:01:52Z pierpal quit (Read error: Connection reset by peer) 2018-07-24T17:06:58Z pierpal joined #lisp 2018-07-24T17:11:33Z pierpal quit (Ping timeout: 256 seconds) 2018-07-24T17:13:51Z makomo joined #lisp 2018-07-24T17:14:16Z megalography quit (Ping timeout: 268 seconds) 2018-07-24T17:17:01Z patlv joined #lisp 2018-07-24T17:19:35Z m00natic quit (Remote host closed the connection) 2018-07-24T17:21:10Z EvW joined #lisp 2018-07-24T17:21:30Z loginoob joined #lisp 2018-07-24T17:21:53Z loginoob: what are my options after being intermediate with lisp? 2018-07-24T17:22:14Z dlowe: writing programs and libraries that solve problems for people. 2018-07-24T17:22:21Z aindilis quit (Remote host closed the connection) 2018-07-24T17:22:31Z random-nick: how do I check if a stream is closed? 2018-07-24T17:22:56Z loginoob: dlowe: what if i cannot think of anything 2018-07-24T17:23:04Z dlowe: random-nick: open-stream-p 2018-07-24T17:23:10Z dlowe: loginoob: talk to people with problems 2018-07-24T17:23:16Z loginoob: ok 2018-07-24T17:23:30Z dlowe: specifically people who can't write their own programs 2018-07-24T17:23:33Z random-nick: dlowe: thank you, I knew I was missing something obvious 2018-07-24T17:24:03Z aindilis joined #lisp 2018-07-24T17:25:25Z patlv quit (Remote host closed the connection) 2018-07-24T17:25:52Z patlv joined #lisp 2018-07-24T17:26:51Z vtomole joined #lisp 2018-07-24T17:27:27Z cage_ quit (Ping timeout: 240 seconds) 2018-07-24T17:27:38Z jasom doesn't know whether to envy or pity someone who has no problems to solve. It seems both relaxing and boring at the same time. 2018-07-24T17:27:55Z megalography joined #lisp 2018-07-24T17:27:58Z Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-24T17:28:10Z cage_ joined #lisp 2018-07-24T17:28:14Z smurfrobot joined #lisp 2018-07-24T17:28:28Z loginoob jasom should pity me 2018-07-24T17:28:51Z jasom: loginoob: good to know, I won't complain about my problems as much :) 2018-07-24T17:30:39Z jasom: loginoob: but more seriously pay attention to times when you are mildy annoyed. Fixing something that mildly annoys you several times per day can be very rewarding. 2018-07-24T17:30:42Z k4rtik joined #lisp 2018-07-24T17:30:43Z k4rtik quit (Changing host) 2018-07-24T17:30:43Z k4rtik joined #lisp 2018-07-24T17:31:05Z flip214: loginoob: find some library, and check for automated tests and good documentation. (perhaps in QL download order?) 2018-07-24T17:31:08Z flip214: repeat. 2018-07-24T17:32:06Z jasom finds it odd how documentation and tests are usually mentioned together, since the documentation is rarely covered by the tests... 2018-07-24T17:32:06Z Einwq joined #lisp 2018-07-24T17:33:27Z flip214: jasom: if there's bad documentation, the behaviour might be inferred by tests. 2018-07-24T17:33:35Z flip214: (or no documentation) 2018-07-24T17:35:29Z terpri quit (Ping timeout: 260 seconds) 2018-07-24T17:35:30Z shka1: documentation is surprisingly strongly linked to tests 2018-07-24T17:36:53Z shka1: on human level 2018-07-24T17:36:56Z jasom: I have seen some tools where the output of the examples is generated by actually running them, which ensures that at least the examples are correct. 2018-07-24T17:37:18Z shka1: documentation-utils-extensions can do that 2018-07-24T17:37:22Z jasom: shka1: because most developers dislike writing both? 2018-07-24T17:37:33Z jasom: shka1: so can org mode IIRC 2018-07-24T17:38:08Z shka1: jasom: mostly because writing good documentation requires writing tests 2018-07-24T17:38:24Z shka1: and writing good tests helps writing good documentation 2018-07-24T17:39:27Z loginoob quit (Ping timeout: 240 seconds) 2018-07-24T17:39:28Z shka1: for instance, writing exceptional-situation documentation is useless without writing tests for those! 2018-07-24T17:41:24Z patlv quit (Ping timeout: 268 seconds) 2018-07-24T17:41:34Z loginoob joined #lisp 2018-07-24T17:44:19Z lnostdal joined #lisp 2018-07-24T17:44:41Z fikka joined #lisp 2018-07-24T17:49:24Z patlv joined #lisp 2018-07-24T17:49:31Z fikka quit (Ping timeout: 256 seconds) 2018-07-24T17:52:32Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-24T17:52:49Z FreeBirdLjj joined #lisp 2018-07-24T17:53:19Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-24T17:53:35Z FreeBirdLjj joined #lisp 2018-07-24T17:53:36Z Amany joined #lisp 2018-07-24T17:54:05Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-24T17:54:43Z FreeBirdLjj joined #lisp 2018-07-24T17:54:52Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-24T17:55:12Z FreeBirdLjj joined #lisp 2018-07-24T17:55:39Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-24T17:55:57Z FreeBirdLjj joined #lisp 2018-07-24T17:56:25Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-24T18:01:52Z EvW quit (Ping timeout: 256 seconds) 2018-07-24T18:02:03Z pierpal joined #lisp 2018-07-24T18:02:17Z loginoob left #lisp 2018-07-24T18:02:44Z pagnol joined #lisp 2018-07-24T18:04:57Z andomin joined #lisp 2018-07-24T18:06:02Z EvW joined #lisp 2018-07-24T18:06:19Z andomin: Hello everyone! I know what i am about to ask is very common question but i am not able to figure it out. 2018-07-24T18:06:24Z andomin: I am not able to find a proper answer to why should I learn CL. I have read paul graham's beating the average and other blogs and answers on SE, all of them are too old and now that we have so many new languages that have implemented features from LISP other than macros. 2018-07-24T18:06:34Z kuwze quit (Quit: Page closed) 2018-07-24T18:06:52Z andomin: Sorry for this stupid question but i really want to know 2018-07-24T18:07:09Z flip214: andomin: simple answer: to learn Common Lisp. 2018-07-24T18:07:23Z beach: I think you should wait until you figure out a good reason. 2018-07-24T18:07:33Z jgkamat: I really enjoy writing CL 2018-07-24T18:07:48Z flip214: andomin: and if you already figured out macros as a difference, ain't that enough motivation to dig deeper? 2018-07-24T18:08:27Z andomin: It is 2018-07-24T18:08:53Z andomin: beach what if i am not able to figure it out myself 2018-07-24T18:09:03Z beach: Then you won't ever learn it. 2018-07-24T18:09:04Z dlowe: that's what we're here for 2018-07-24T18:09:26Z shka1: andomin: for fun? 2018-07-24T18:09:36Z shka1: works for me at least 2018-07-24T18:09:43Z dlowe: I've never regretted learning a new thing. 2018-07-24T18:09:55Z andomin: dlowe so please tell me, my main goal is to be a good programmer.. nothing else 2018-07-24T18:10:26Z andomin: shka1 fun is ok but i have limited time in a day 2018-07-24T18:10:48Z shka1: hm, i see 2018-07-24T18:11:12Z shka1: well, common lisp is excellent language for experimentation 2018-07-24T18:11:28Z dlowe: andomin: okay, what evidence would convince you? 2018-07-24T18:11:58Z dlowe: (actually, I meant we were here for helping you learn it) 2018-07-24T18:12:05Z shka1: so you can use it for building stuff in it that you not exactly figured out 2018-07-24T18:12:12Z shka1: but it takes time as well, obviously 2018-07-24T18:13:02Z shka1: also, IF you have proper libraries in CL, it is surprisingly practical language for various tasks 2018-07-24T18:13:21Z pierpal quit (Ping timeout: 248 seconds) 2018-07-24T18:13:27Z shka1: easy to code, easy to debug, easy to deploy 2018-07-24T18:13:47Z kaun joined #lisp 2018-07-24T18:13:52Z andomin: Will i be a better programmer if after learning lisp I learn some other language? Will i be able to implement my understanding from lisp in another language if i learn another language someday 2018-07-24T18:14:08Z shka1: implementation can produce fairly efficient code, which is awesome 2018-07-24T18:14:54Z dlowe: andomin: that depends on you 2018-07-24T18:15:00Z Bike: man. it ain't that hard to learn a programming language at a moderate level. new programmers tend to stress about about which they learn but it's not like it even takes as much time as a natural language. 2018-07-24T18:15:05Z dlowe: andomin: I think you're looking for assurances that don't exist 2018-07-24T18:15:09Z dlowe: for anything 2018-07-24T18:15:13Z shka1: andomin: in my opinion programmers should learn CL (or some other lisp) mostly because it is just different 2018-07-24T18:15:17Z shka1: seriously different 2018-07-24T18:15:25Z dlowe: it's not that different anymore :p 2018-07-24T18:15:38Z dlowe: due to new languages importing features 2018-07-24T18:15:38Z shka1: and knowing how things work here open eyes on new ways of programming 2018-07-24T18:15:45Z random-nick: dlowe: I haven't seen a mainstream language with proper metaprogramming yet 2018-07-24T18:16:11Z dlowe: random-nick: you've gated contenders by saying "proper" 2018-07-24T18:16:57Z shka1: andomin: that's everything i can tell on this topic, hope it helps 2018-07-24T18:17:15Z pierpal joined #lisp 2018-07-24T18:17:24Z andomin: shka1 thank you for the help :) 2018-07-24T18:17:25Z dlowe: andomin: Ask yourself if a good programmer knows lots of things or only a few 2018-07-24T18:17:34Z andomin: Lots of things 2018-07-24T18:18:17Z dlowe: andomin: Ask yourself if a good programmer can deal with lots of kinds of languages or only a few? 2018-07-24T18:18:36Z andomin: I see people learning algorithms and do exercises of implementing them in their chosen language but there are no algorithms book in lisp 2018-07-24T18:18:51Z dlowe: Depends on the algorithms 2018-07-24T18:19:02Z dlowe: Principles of AI Programming is all in common lisp. 2018-07-24T18:19:19Z dlowe: Ask yourself if good programmers only do what is popular 2018-07-24T18:19:25Z andomin: No 2018-07-24T18:19:49Z megalography quit (Ping timeout: 260 seconds) 2018-07-24T18:19:57Z patlv quit (Ping timeout: 240 seconds) 2018-07-24T18:20:05Z dlowe: If you're going to know a lot of things, deal with lots of kinds of languages, and not only do what is popular, then I suggest you get started. 2018-07-24T18:20:30Z cage_ quit (Quit: Leaving) 2018-07-24T18:21:05Z gravicappa quit (Ping timeout: 240 seconds) 2018-07-24T18:21:06Z andomin: Ok I'll then. Thank you dlowe for taking time to help me in my stupid question 2018-07-24T18:21:11Z dtornabene joined #lisp 2018-07-24T18:21:29Z k4rtik quit (Ping timeout: 268 seconds) 2018-07-24T18:21:42Z pierpal quit (Ping timeout: 256 seconds) 2018-07-24T18:23:41Z kaun left #lisp 2018-07-24T18:24:30Z dlowe: Paradigms of AI Programming is probably a good fit for what you want 2018-07-24T18:24:58Z asarch joined #lisp 2018-07-24T18:25:04Z pierpal joined #lisp 2018-07-24T18:26:27Z random-nick quit (Ping timeout: 240 seconds) 2018-07-24T18:27:00Z pierpal quit (Read error: Connection reset by peer) 2018-07-24T18:27:10Z varjag quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2018-07-24T18:27:20Z sauvin quit (Read error: Connection reset by peer) 2018-07-24T18:29:25Z papachan quit (Ping timeout: 245 seconds) 2018-07-24T18:32:17Z andomin quit (Read error: Connection reset by peer) 2018-07-24T18:32:25Z andomin joined #lisp 2018-07-24T18:35:22Z megalography joined #lisp 2018-07-24T18:38:52Z fikka joined #lisp 2018-07-24T18:39:24Z xrash joined #lisp 2018-07-24T18:40:04Z k4rtik joined #lisp 2018-07-24T18:42:14Z pierpal joined #lisp 2018-07-24T18:42:56Z papachan joined #lisp 2018-07-24T18:43:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-24T18:44:50Z andomin quit (Ping timeout: 245 seconds) 2018-07-24T18:45:35Z schweers quit (Ping timeout: 276 seconds) 2018-07-24T18:46:52Z varjag joined #lisp 2018-07-24T18:47:12Z megalography quit (Ping timeout: 256 seconds) 2018-07-24T18:48:27Z shka1 quit (Ping timeout: 240 seconds) 2018-07-24T18:52:07Z brit joined #lisp 2018-07-24T18:52:15Z brit: Hello there. I'm trying to optimize some code that access structures with arrays of type (simple-array (unsigned-byte 8) *) and getting compilation warnings about the upgraded array element type not being known at compile time. How can I fix that to kill the hairy-data-vector-refs? I'm using SBCL. 2018-07-24T18:57:34Z EvW quit (Ping timeout: 260 seconds) 2018-07-24T19:01:31Z Bike: brit: paste some code? 2018-07-24T19:02:13Z megalography joined #lisp 2018-07-24T19:05:09Z brit: Bike: https://github.com/kingcons/clones/blob/mezzanine/src/ppu.lisp#L317 2018-07-24T19:05:17Z dddddd joined #lisp 2018-07-24T19:05:50Z Bike: not sure with-slots on a struct is a good idea... but whatever. 2018-07-24T19:05:53Z brit: The arefs on lines 319 and 320 have the compiler notes attached. The array its referencing is grabbed through with-slots above but declared on the struct as mentioned. 2018-07-24T19:06:10Z Bike: i'd put declarations in the function body as well. 2018-07-24T19:06:13Z brit: Hmm. Maybe the with-slots is disrupting the type inference? 2018-07-24T19:06:17Z Bike: it might be. 2018-07-24T19:06:22Z brit: Yeah, okay. I should've thought of that. Good idea! :) 2018-07-24T19:06:42Z Bike: if you try macroexpanding it, it will probably result in nt-buffer being replaced with (slot-value ppu 'nt-buffer) or something. 2018-07-24T19:06:58Z brit: Sure, I would just assume that slot-value is _faster_ than going through standard acessors. 2018-07-24T19:08:11Z brit: Yeah, declaring locally fixed it. Hmm. Guess I need to tweak my mental model a bit. 2018-07-24T19:09:13Z Bike: slot-value is probably slower than accessors. 2018-07-24T19:09:27Z megalography quit (Ping timeout: 240 seconds) 2018-07-24T19:09:32Z Bike: mainly because any accessor is unique to a slot, while slot-value has tolook up the slot, in general. 2018-07-24T19:09:44Z random-nick joined #lisp 2018-07-24T19:09:58Z Bike: struct accessors can be very fast indeed. maybe just a memory grab. 2018-07-24T19:10:31Z patlv joined #lisp 2018-07-24T19:10:32Z brit: Okay. Excellent. I've got some things to go patch up. Thank you, Bike! 2018-07-24T19:13:25Z Bike: no problem. 2018-07-24T19:19:16Z raydeejay quit (Quit: ZNC - http://znc.in) 2018-07-24T19:24:13Z megalography joined #lisp 2018-07-24T19:26:06Z milanj quit (Quit: This computer has gone to sleep) 2018-07-24T19:28:48Z milanj joined #lisp 2018-07-24T19:30:26Z pierpal quit (Quit: Poof) 2018-07-24T19:30:44Z pierpal joined #lisp 2018-07-24T19:30:48Z smurfrobot quit (Remote host closed the connection) 2018-07-24T19:32:17Z k4rtik quit (Ping timeout: 248 seconds) 2018-07-24T19:33:03Z klltkr joined #lisp 2018-07-24T19:33:07Z fikka joined #lisp 2018-07-24T19:34:34Z vlatkoB_ quit (Remote host closed the connection) 2018-07-24T19:34:37Z patlv quit (Remote host closed the connection) 2018-07-24T19:35:05Z patlv joined #lisp 2018-07-24T19:37:29Z smurfrobot joined #lisp 2018-07-24T19:37:38Z fikka quit (Ping timeout: 256 seconds) 2018-07-24T19:37:54Z klltkr: Yo 2018-07-24T19:39:34Z patlv quit (Ping timeout: 260 seconds) 2018-07-24T19:41:24Z karlosz joined #lisp 2018-07-24T19:42:44Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-24T19:44:08Z Einwq quit (Quit: Leaving) 2018-07-24T19:44:19Z terpri joined #lisp 2018-07-24T19:45:56Z k4rtik joined #lisp 2018-07-24T19:46:36Z varjag quit (Ping timeout: 244 seconds) 2018-07-24T19:48:31Z Smokitch joined #lisp 2018-07-24T19:48:42Z karlosz quit (Quit: karlosz) 2018-07-24T19:49:12Z varjag joined #lisp 2018-07-24T19:56:57Z pierpal quit (Quit: Poof) 2018-07-24T19:57:16Z pierpal joined #lisp 2018-07-24T20:04:43Z smurfrobot quit (Remote host closed the connection) 2018-07-24T20:06:16Z milanj quit (Quit: This computer has gone to sleep) 2018-07-24T20:22:57Z josemanuel joined #lisp 2018-07-24T20:25:06Z smurfrobot joined #lisp 2018-07-24T20:27:20Z EvW1 joined #lisp 2018-07-24T20:27:29Z fikka joined #lisp 2018-07-24T20:28:49Z nowhere_man joined #lisp 2018-07-24T20:29:34Z cgay_ quit (Remote host closed the connection) 2018-07-24T20:29:46Z smurfrobot quit (Ping timeout: 256 seconds) 2018-07-24T20:29:48Z cgay_ joined #lisp 2018-07-24T20:31:17Z DemolitionMan joined #lisp 2018-07-24T20:31:54Z fikka quit (Ping timeout: 256 seconds) 2018-07-24T20:34:59Z karlosz joined #lisp 2018-07-24T20:38:13Z milanj joined #lisp 2018-07-24T20:38:51Z karlosz quit (Client Quit) 2018-07-24T20:43:26Z orivej quit (Ping timeout: 244 seconds) 2018-07-24T20:46:36Z rumbler31 quit (Remote host closed the connection) 2018-07-24T20:47:59Z knusbaum joined #lisp 2018-07-24T20:48:43Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2018-07-24T20:48:44Z Smokitch quit 2018-07-24T20:52:31Z emacsomancer joined #lisp 2018-07-24T20:53:39Z jmercouris joined #lisp 2018-07-24T20:56:35Z angavrilov_ quit (Remote host closed the connection) 2018-07-24T21:03:43Z Jesin quit (Quit: Leaving) 2018-07-24T21:04:24Z patlv joined #lisp 2018-07-24T21:05:35Z eschatologist joined #lisp 2018-07-24T21:05:53Z Jesin joined #lisp 2018-07-24T21:06:15Z Bike quit (Ping timeout: 252 seconds) 2018-07-24T21:06:44Z newbie04 joined #lisp 2018-07-24T21:07:17Z newbie43 quit (Ping timeout: 245 seconds) 2018-07-24T21:09:06Z pierpa joined #lisp 2018-07-24T21:09:27Z patlv quit (Ping timeout: 240 seconds) 2018-07-24T21:09:32Z klltkr: Get in! https://github.com/malcolmstill/ulubis/pull/56 2018-07-24T21:12:46Z jmercouris: klltkr: what is a wayland compositor? 2018-07-24T21:14:26Z k4rtik quit (Quit: WeeChat 2.2) 2018-07-24T21:14:35Z gector joined #lisp 2018-07-24T21:14:48Z klltkr: jmercouris, think of it like a window manager (e.g. stumpwm) but it targets Wayland rather than Xorg (I'm assuming some linux knowledge here) 2018-07-24T21:15:32Z klltkr: If you look at the gifs here https://github.com/malcolmstill/ulubis...my compositor is drawing everything you're seeing 2018-07-24T21:17:10Z graphene quit (Remote host closed the connection) 2018-07-24T21:18:23Z mindCrime quit (Ping timeout: 265 seconds) 2018-07-24T21:18:27Z graphene joined #lisp 2018-07-24T21:20:31Z klltkr: If you don't use linux it's probably not going to be of interest 2018-07-24T21:21:33Z jmercouris: I don't use Linux 2018-07-24T21:21:40Z jmercouris: I use FreeBSD 2018-07-24T21:22:15Z klltkr: FreeBSD is adding Wayland support I think 2018-07-24T21:22:15Z jmercouris quit (Remote host closed the connection) 2018-07-24T21:22:38Z jmercouris joined #lisp 2018-07-24T21:23:22Z kenster joined #lisp 2018-07-24T21:24:28Z kenster: Hey, I have a stupid question. In a macro, how do I turn ((something :int) (another :int)) into ('(something :int) '(another :int)) while also spreading those parameters with ,@ ? 2018-07-24T21:24:49Z kenster: I have a macro that calls a macro, and both macros use ,@ 2018-07-24T21:26:19Z eminhi quit (Quit: leaving) 2018-07-24T21:28:09Z kenster: I will paste 2018-07-24T21:29:21Z LiamH quit (Quit: Leaving.) 2018-07-24T21:30:22Z kajo joined #lisp 2018-07-24T21:31:07Z kenster: https://hastebin.com/maracudaru.http 2018-07-24T21:31:13Z kenster: weird it doesn't highlight correctly 2018-07-24T21:32:03Z kenster: I'm trying to pass in ((temporary-location :string) (content-type :string) (tags :pointer) (wantsOwned :int)) into defcfun, but without evaulating "temporary-string" as a function 2018-07-24T21:32:47Z kenster: my brain gets confuzzled by the quoting rules when using ,@ on rest parameters into a macro that uses ,@ on rest parameters into another macro 2018-07-24T21:37:53Z patlv joined #lisp 2018-07-24T21:41:22Z jfrancis_ joined #lisp 2018-07-24T21:41:31Z josemanuel quit (Quit: leaving) 2018-07-24T21:41:44Z Bike joined #lisp 2018-07-24T21:42:51Z jmercouris quit (Remote host closed the connection) 2018-07-24T21:43:51Z pierpa: if the backquote notation confuses you then use normal list operations 2018-07-24T21:46:09Z kenster: well, I just need to figure out the write level of quoting. I thought something like `(,@((blah :test))) would work 2018-07-24T21:46:17Z DemolitionMan quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2018-07-24T21:47:10Z rumbler31 joined #lisp 2018-07-24T21:47:33Z wigust joined #lisp 2018-07-24T21:48:53Z pierpa: but why? unless there's an obfuscated CL context I haven't heard about, there's no prize for the most obscure piece of CL one can come around with. 2018-07-24T21:49:49Z wigust- quit (Ping timeout: 260 seconds) 2018-07-24T21:50:24Z jfrancis_ quit (Ping timeout: 260 seconds) 2018-07-24T21:53:11Z rumbler31 quit (Ping timeout: 244 seconds) 2018-07-24T21:53:16Z kenster: I guess you're right pierpa, though I thought my case was at least somewhat common 2018-07-24T21:53:32Z pierpa: hmmm 2018-07-24T21:55:08Z Denommus quit (Remote host closed the connection) 2018-07-24T21:55:31Z wheelsucker quit (Remote host closed the connection) 2018-07-24T21:58:10Z BitPuffin quit (Remote host closed the connection) 2018-07-24T22:01:02Z Jesin quit (Quit: Leaving) 2018-07-24T22:03:59Z random-nick quit (Read error: Connection reset by peer) 2018-07-24T22:06:07Z jfrancis_ joined #lisp 2018-07-24T22:09:52Z brit is now known as brit_away 2018-07-24T22:10:35Z jfrancis_ quit (Ping timeout: 265 seconds) 2018-07-24T22:13:20Z slyrus_ quit (Ping timeout: 244 seconds) 2018-07-24T22:15:21Z fikka joined #lisp 2018-07-24T22:17:27Z brit_away quit (Ping timeout: 240 seconds) 2018-07-24T22:19:11Z equwal joined #lisp 2018-07-24T22:19:49Z fikka quit (Ping timeout: 256 seconds) 2018-07-24T22:21:57Z patlv quit (Ping timeout: 240 seconds) 2018-07-24T22:22:56Z varjag quit (Read error: Connection reset by peer) 2018-07-24T22:26:04Z slyrus_ joined #lisp 2018-07-24T22:31:30Z patlv joined #lisp 2018-07-24T22:41:27Z patlv quit (Ping timeout: 240 seconds) 2018-07-24T22:41:40Z pestyOverlord joined #lisp 2018-07-24T22:42:10Z stylewarning: I'm lacking on a bit of CLOS hygiene. In the construction of an instance of a class, where's the proper place to check that an initarg is supplied, and when can I assume the slot as been bound? 2018-07-24T22:42:25Z stylewarning: All in an :AFTER method of initialize-instance? 2018-07-24T22:43:19Z karlosz joined #lisp 2018-07-24T22:43:54Z stylewarning: Is initialize-instance the right place to set other slots of that instance based on a computation of supplied initargs/bound slots too? 2018-07-24T22:45:10Z graphene quit (Remote host closed the connection) 2018-07-24T22:46:33Z graphene joined #lisp 2018-07-24T22:46:36Z stylewarning: For the first question, PCL suggests using :initform (error ..) 2018-07-24T22:47:13Z pagnol quit (Ping timeout: 256 seconds) 2018-07-24T22:48:43Z newbie68 joined #lisp 2018-07-24T22:49:22Z newbie04 quit (Ping timeout: 245 seconds) 2018-07-24T22:49:41Z rumbler31 joined #lisp 2018-07-24T22:49:54Z stylewarning: For the second question, PCL reminds us that the primary method of initialize-instance on standard-objects will take care of slots being bound, so I can assume it will be in the :after. 2018-07-24T22:50:14Z stylewarning: For the third question, PCL says the :after method of initialize-instance is the right place. 2018-07-24T22:53:34Z karlosz quit (Quit: karlosz) 2018-07-24T22:54:09Z rumbler31 quit (Ping timeout: 244 seconds) 2018-07-24T22:58:50Z mathrick quit (Ping timeout: 260 seconds) 2018-07-24T22:59:11Z subroot joined #lisp 2018-07-24T22:59:35Z Bike: the slots are bound in shared-initialize's primary method 2018-07-24T22:59:48Z mathrick joined #lisp 2018-07-24T23:00:05Z Bike: so yes, initialize instance :after 2018-07-24T23:04:30Z makomo: kenster: do you want to do that within defcmethod? 2018-07-24T23:04:42Z robotoad quit (Quit: robotoad) 2018-07-24T23:06:10Z lumm quit (Ping timeout: 256 seconds) 2018-07-24T23:06:48Z makomo: kenster: from my experience, ',@ is usually not a good idea because you end up with (quote x1 x2 ... xn) which is invalid since QUOTE only takes a single argument 2018-07-24T23:07:10Z graphene quit (Remote host closed the connection) 2018-07-24T23:07:13Z kenster: makomo: I'm trying to pass the types into defcfun while retaining the &body of my macro which gets shoved into a defmethod 2018-07-24T23:07:14Z makomo: if the list happens to have 1 element, i.e. n = 1, then it works 2018-07-24T23:07:28Z kenster: (defcmethod file-upload-info "new" new :pointer nil 2018-07-24T23:07:30Z kenster: '((temporary-location :string) (content-type :string) (tags :pointer) (wantsOwned :int))) 2018-07-24T23:07:41Z kenster: if I could get rid of that quote... 2018-07-24T23:07:45Z kajo quit (Quit: From my rotting body, flowers shall grow and I am in them and that is eternity. -- E. M.) 2018-07-24T23:08:26Z graphene joined #lisp 2018-07-24T23:08:33Z kajo joined #lisp 2018-07-24T23:08:36Z makomo: hm well, defcmethod is a macro so you can 2018-07-24T23:08:48Z kenster: that's what I'm very confused about 2018-07-24T23:08:54Z makomo: why are you doing ',@ in defcmethod when calling cffi-defun though? 2018-07-24T23:08:56Z kenster: it keeps giving me that "invalid function" call stuff 2018-07-24T23:09:17Z kenster: well because I need to apply the defcfun arguments as &rest arguments 2018-07-24T23:09:25Z Bike: ((blah :test)) is definitely an invalid function call 2018-07-24T23:09:42Z kenster: defcfun takes an arbitrary amount of (t :type) type lists 2018-07-24T23:09:54Z fikka joined #lisp 2018-07-24T23:10:10Z kenster: so I want the ((blah :test)) to be remain quoted even after both ,@s 2018-07-24T23:10:14Z makomo: kenster: oh i see. well just get rid of the ' then 2018-07-24T23:10:39Z kenster: where? 2018-07-24T23:10:48Z makomo: then ',@(when ...) 2018-07-24T23:10:49Z makomo: the* 2018-07-24T23:11:04Z makomo: why do you have to quote it if cffi-defun is itself a macro 2018-07-24T23:11:13Z makomo: just splice it in using ,@ and leave it be 2018-07-24T23:11:47Z makomo: looking at the expansion after that fix, i get the expected result 2018-07-24T23:12:25Z makomo: in emacs, with the point on the beginning paren of the defcmethod call, C-c C-m to macroexpand 2018-07-24T23:12:56Z kenster: for some reason it doesn't expand for me I have no idea why 2018-07-24T23:13:13Z kenster: but anyway I still get the error 2018-07-24T23:13:21Z kenster: invalid function call 2018-07-24T23:13:58Z graphene quit (Remote host closed the connection) 2018-07-24T23:14:15Z kenster: I think it's because I have the macros defined in a separate file, for some reason it doesn't expand all the way? or I don't know, slime is just confused 2018-07-24T23:14:29Z makomo: kenster: hm i'm not sure, i never had a problem 2018-07-24T23:14:31Z makomo: https://plaster.tymoon.eu/view/860#860 2018-07-24T23:14:35Z makomo: this is what i get 2018-07-24T23:14:45Z fikka quit (Ping timeout: 264 seconds) 2018-07-24T23:14:47Z makomo: this is with the fix 2018-07-24T23:15:18Z graphene joined #lisp 2018-07-24T23:15:29Z makomo: and this is before, https://plaster.tymoon.eu/view/861#861, note the (quote x1 ... xn) error 2018-07-24T23:16:21Z pjb: kenster: `(,@((blah :test))) cannot work in Common Lisp, unless you redefine the reader macro for #\(. ((something)) is never a Common Lisp form, if you assume the standard reader macro for #\(! 2018-07-24T23:16:26Z karlosz joined #lisp 2018-07-24T23:17:22Z kenster: hmmm this is weird, I removed the ` from the when as you said, and I still get the same error 2018-07-24T23:17:53Z makomo: the apostrophe, not the backquote, but i guess that's what you meant 2018-07-24T23:18:03Z makomo: keep analyzing further, what is defcfun ? 2018-07-24T23:18:11Z kenster: it is what I meant, yeah 2018-07-24T23:18:25Z kenster: https://github.com/cffi/cffi/blob/751a64d981b9ebd3a4f89804fa307073ec556e9a/src/functions.lisp#L389 2018-07-24T23:19:03Z makomo: this is what your defcfun call looks like, https://plaster.tymoon.eu/view/862#862 2018-07-24T23:19:07Z makomo: after macroexpanding cffi-defun 2018-07-24T23:19:29Z kenster: hmm 2018-07-24T23:19:36Z kenster: that makes me think that my asdf is caching my old file or something 2018-07-24T23:19:37Z pjb: kenster: macros are lisp functions like any other lisp functions. 2018-07-24T23:19:37Z makomo: i don't know if that's correct, i haven't used cffi a lot 2018-07-24T23:20:22Z pjb: kenster: so think about functions, abstractions and so on. 2018-07-24T23:20:56Z kenster: :P 2018-07-24T23:21:24Z pjb: kenster: for example: (defun get-rid-of-quote (form) (if (and (listp form) (eq 'quote (first form))) (second form) form)) (get-rid-of-quote ' (quote ((temporary-location :string) (content-type :string) (tags :pointer) (wantsOwned :int)))) #| --> ((temporary-location :string) (content-type :string) (tags :pointer) (wantsowned :int)) |# 2018-07-24T23:21:40Z kenster: (defcfun "sprintf" :int 2018-07-24T23:21:42Z kenster: (str :pointer) 2018-07-24T23:21:43Z kenster: (control :string) 2018-07-24T23:21:44Z Jesin joined #lisp 2018-07-24T23:21:47Z kenster: ) 2018-07-24T23:21:50Z kenster: example 2018-07-24T23:21:51Z pjb: kenster: but note that since the point of macro is to get their arguments unevaluated, there's no point in quoting arguments to macros!!! 2018-07-24T23:21:54Z kenster: without the variable arguments 2018-07-24T23:22:00Z pjb: kenster: so you should not have this quote in the first place! 2018-07-24T23:22:10Z kenster: I'm starting to understand that pjb 2018-07-24T23:22:13Z NotSpooky joined #lisp 2018-07-24T23:22:32Z pjb: Don't write: (my-macro '((temporary-location :string) (content-type :string) (tags :pointer) (wantsOwned :int))), write: (my-macro ((temporary-location :string) (content-type :string) (tags :pointer) (wantsOwned :int))) 2018-07-24T23:22:33Z makomo: kenster: should be good then. what pjb said is what we fixed basically, no need to quote that thing since it's being passed into another macro 2018-07-24T23:22:49Z kenster: there's something wrong with my environment then 2018-07-24T23:22:58Z kenster: I'm using slime-load-system to load it, is that wrong? 2018-07-24T23:23:06Z kenster: I'm livestreaming right now so maybe you can see my setup 2018-07-24T23:23:07Z makomo: kenster: your (defmethod ...) thing looks weird though 2018-07-24T23:23:26Z makomo: kenster: i just use quicklisp 2018-07-24T23:23:27Z kenster: idk if you have the bandwidth but I'm' here https://youtu.be/Jz7M9zIEQjk 2018-07-24T23:23:56Z makomo: nice terminal, loved running emacsclient in it lol 2018-07-24T23:23:56Z aeth: If you're writing advanced macros, use destructuring-bind everywhere where you had to put &rest or something like that. It helps. 2018-07-24T23:24:17Z aeth: There's usually a very simple syntax that you need to enforce. 2018-07-24T23:24:19Z pjb: kenster: macro can use macros in two different ways: a macro can use another macro in its body, so that the other macro is expanded when the first macro is compiled, and the expansion of the other macro is evaluated when the first macro is expanded. Or the firs macro can use the other macro in its expansion, ie. its result, and therefore the other macro will be expanded when the expansion of the first macro is compiled. 2018-07-24T23:25:04Z pjb: In the first case, the arguments to the other macro cannot be the values bound to the parameters of the first macro, since those values are not known yet. 2018-07-24T23:25:11Z papachan quit (Quit: WeeChat 2.2) 2018-07-24T23:25:42Z pjb: In the later case, you can of course splice the parameters of the first macro into the calls to the other macro in the expansion. 2018-07-24T23:26:13Z kenster: were you watching for the last few minutes makomo 2018-07-24T23:26:25Z makomo: kenster: it wasn't live on yt i think, i just opened the twitch stream 2018-07-24T23:26:31Z kenster: oh 2018-07-24T23:27:08Z makomo: oh btw, that defmethod looks wrong to me 2018-07-24T23:27:09Z karlosz quit (Quit: karlosz) 2018-07-24T23:27:25Z kenster: pjb: that makes sense 2018-07-24T23:27:25Z makomo: shouldn't the if be run when constructing the list? 2018-07-24T23:27:32Z asarch: How would I turn on the option to show the closing parenthesis in Emacs? 2018-07-24T23:27:33Z minion: asarch, memo from pjb: (defmacro λ ((&rest params) &body body) `(cl:lambda ,params ,@body)) 2018-07-24T23:27:36Z makomo: i.e. ,(if ...)? 2018-07-24T23:27:54Z makomo: body is known within the macro, so you can test it right away 2018-07-24T23:28:01Z makomo: the variable BODY, that is 2018-07-24T23:28:21Z makomo: and now, another backquote within the if! 2018-07-24T23:28:28Z pjb: asarch: https://www.emacswiki.org/emacs/CategoryParentheses 2018-07-24T23:28:32Z pjb: there are a lot of options. 2018-07-24T23:28:33Z makomo: ,(if body `(...) `(...)) 2018-07-24T23:29:03Z makomo: you want that to be within the expansion right? 2018-07-24T23:29:05Z makomo: the let and the apply 2018-07-24T23:29:38Z makomo: right, so that should work then 2018-07-24T23:30:29Z makomo: you should be able to just use quicklisp to load the system, no? 2018-07-24T23:30:42Z makomo: add the directory with the ASDF file to quicklisp's "local projects" 2018-07-24T23:30:49Z caltelt joined #lisp 2018-07-24T23:31:11Z Kundry_Wag quit (Remote host closed the connection) 2018-07-24T23:31:37Z makomo: so then ql:register-local-projects and ql:quickload 2018-07-24T23:31:42Z makomo: oh i see, so you've got it set up, ok 2018-07-24T23:32:03Z makomo: hmm, i'm not completely sure if it recompiles, i guess? 2018-07-24T23:32:34Z makomo: ah i see, so one of the macros itself is wrong 2018-07-24T23:32:39Z asarch: Thank you pjb! 2018-07-24T23:32:45Z asarch: Thank you very much :-) 2018-07-24T23:32:46Z makomo: kenster: can you expand bit by bit until you hit the error 2018-07-24T23:32:51Z makomo: you can expand within the window that shows up 2018-07-24T23:33:38Z makomo: hmm, i'm not sure why it's giving you that error, defcfun should be a macro 2018-07-24T23:33:43Z makomo: it shoudln't be trying to evaluate it 2018-07-24T23:34:39Z makomo: go into the window on the right and try to macroexpand-1 that 2018-07-24T23:35:07Z Kundry_Wag joined #lisp 2018-07-24T23:35:38Z makomo: hmm lol, maybe it really isn't a macro within your current image 2018-07-24T23:35:44Z makomo: try reloading the whole lisp maybe? 2018-07-24T23:35:56Z caltelt quit (Remote host closed the connection) 2018-07-24T23:37:14Z makomo: and where is defcmethod, in what file? how does your asdf file look again? is it being loaded before this faulty file? 2018-07-24T23:38:26Z makomo: can you open cffi-utils? 2018-07-24T23:39:07Z makomo: LOL 2018-07-24T23:39:34Z broccolistem joined #lisp 2018-07-24T23:39:43Z caltelt joined #lisp 2018-07-24T23:40:06Z makomo: you aren't importing cffi-utils i think? 2018-07-24T23:40:13Z makomo: well, "using"* 2018-07-24T23:40:58Z makomo: the filebucket package isn't using cffi-utils though, it shouldn't be able to see the macro then, unless you explicitly qualify it with cffi-utils:defcfun 2018-07-24T23:41:44Z patlv joined #lisp 2018-07-24T23:42:31Z makomo: try USEing cffi-utils within DEFPACKAGE for filebucket maybe 2018-07-24T23:43:57Z megalography quit (Ping timeout: 240 seconds) 2018-07-24T23:44:20Z makomo: yeah, i don't get why it's not treating it as a macro 2018-07-24T23:44:45Z caltelt quit (Ping timeout: 264 seconds) 2018-07-24T23:45:09Z makomo: yeah, i always use quicklisp's quickload 2018-07-24T23:45:35Z xrash quit (Ping timeout: 240 seconds) 2018-07-24T23:45:37Z makomo: also, look at Quickproject, you can get it from Quicklisp as wlel 2018-07-24T23:45:39Z makomo: well* 2018-07-24T23:45:54Z makomo: quickproject:make-project to make a project skeleton 2018-07-24T23:46:23Z esrarkesh: is usocket what everyone uses when they do socket programming with cl? 2018-07-24T23:46:28Z makomo: kenster: i don't think so, quicklisp should work fine. 2018-07-24T23:46:31Z pjb: sometimes. 2018-07-24T23:46:47Z makomo: kenster: can you manually try and eval DEFCFUN's macro definition? 2018-07-24T23:47:01Z pjb: (macroexpand-1 '(defcfun …)) 2018-07-24T23:47:11Z pjb: (pprint (macroexpand-1 '(defcfun …))) ; when it's long. 2018-07-24T23:48:09Z makomo: kenster: oh wait no, defcmethod i guess 2018-07-24T23:49:09Z makomo: kenster: slime-eval-defun from anywhere within the top-level form 2018-07-24T23:49:14Z rozenglass quit (Remote host closed the connection) 2018-07-24T23:49:24Z makomo: kenster: , e f in spacemacs 2018-07-24T23:50:08Z makomo: can you try and see if you get autocompletion from within the slime repl if you do "cffi-utils:defme..."? 2018-07-24T23:50:45Z makomo: you typed "cff" instead of "cffi" :D 2018-07-24T23:51:37Z makomo: kenster: yeah, i guess it might be using just a text-based autocompletion. whatever. try running the (defcmethod ...) thing from the repl now 2018-07-24T23:53:11Z makomo: >undefined function DEFCMETHOD 2018-07-24T23:53:15Z makomo: lol, what the 2018-07-24T23:54:04Z makomo: the FILE-UPLOAD-INFO variable is unbound because it's trying to evaluate it, it's the same problem i think 2018-07-24T23:54:12Z makomo: it's treating DEFCMETHOD as a function for some reason 2018-07-24T23:55:11Z makomo: kenster: maybe try moving the macros at the top of filebucket.lisp just to see if it'll work? 2018-07-24T23:55:29Z makomo: oh LOL, did you export it? 2018-07-24T23:55:39Z makomo: you exported the symbols, right? :DDD 2018-07-24T23:56:08Z makomo: in your defpackage, after (:use ...) add (:export #:defcmethod) 2018-07-24T23:57:21Z patlv quit (Ping timeout: 264 seconds) 2018-07-24T23:57:47Z megalography joined #lisp 2018-07-24T23:57:48Z makomo: kenster: slime-restart-inferior-lisp 2018-07-25T00:00:20Z phax joined #lisp 2018-07-25T00:00:24Z makomo: kenster: yeah, i get it. a mapping between class names in lisp and C/C++ 2018-07-25T00:00:46Z makomo: the problem here was that the macros themselves were using a different *c-class-struct* symbol though 2018-07-25T00:00:54Z makomo: it was interned in another package, but used the same name 2018-07-25T00:01:42Z NotSpooky quit (Ping timeout: 256 seconds) 2018-07-25T00:02:31Z makomo: kenster: expand it once, bit by bit. it should fail at the defcun macro 2018-07-25T00:02:40Z makomo: kenster: also, C-c C-m 2018-07-25T00:03:07Z makomo: now expand the cffi-defun macro 2018-07-25T00:03:57Z makomo: C-_ to undo the macroexpansion :-) 2018-07-25T00:04:41Z makomo: hmm, maybe your keybindings are different, oh well 2018-07-25T00:05:20Z makomo: i don't remember what the CFFI assertion said. something about the name of the symbol 2018-07-25T00:05:45Z makomo: expand the decfun macro now 2018-07-25T00:05:49Z makomo: you should get the error 2018-07-25T00:06:13Z makomo: you're welcome :-) 2018-07-25T00:07:28Z caltelt joined #lisp 2018-07-25T00:09:04Z makomo: kenster: at this point it looks like you're using defcfun in the wrong way, but i don't know much about cffi to help you with that 2018-07-25T00:11:47Z rumbler31 joined #lisp 2018-07-25T00:14:50Z gabiruh quit (Ping timeout: 268 seconds) 2018-07-25T00:14:59Z asarch quit (Quit: Leaving) 2018-07-25T00:16:30Z Jesin quit (Quit: Leaving) 2018-07-25T00:16:46Z no-defun-allowed: what format string should i use to pad a number out to always look like 12.34? that is, two places before and after the decimal point 2018-07-25T00:17:20Z no-defun-allowed: never mind, got it 2018-07-25T00:17:37Z pierpal quit (Ping timeout: 248 seconds) 2018-07-25T00:18:16Z Xach: no-defun-allowed: i use ~$ for that 2018-07-25T00:18:29Z Xach: i guess that's not quite the same 2018-07-25T00:19:40Z makomo: kenster: see the comment above DEFCFUN. i don't think 2 strings are allowed. the things in the list must be a string and a symbol 2018-07-25T00:19:51Z makomo: kenster: also, https://common-lisp.net/project/cffi/manual/html_node/defcfun.html 2018-07-25T00:20:40Z phax quit (Remote host closed the connection) 2018-07-25T00:21:53Z makomo: kenster: check the expansion manually again -- get used to doing that :D 2018-07-25T00:22:57Z makomo: kenster: c-method-name within defcmethod is (string (gensym)) 2018-07-25T00:23:00Z no-defun-allowed: Xach: PCL had ~2,2$ so i used that 2018-07-25T00:23:12Z makomo: kenster: cffi-method-name* 2018-07-25T00:23:35Z makomo: i'm not sure if that's by design or what, just saying 2018-07-25T00:23:45Z Kaisyu joined #lisp 2018-07-25T00:26:02Z makomo: kenster: what is even the point of cffi-defun? why make it into a separate macro anyway? 2018-07-25T00:26:12Z makomo: kenster: you might want cAdr, since you're working with a list, not a cons cell 2018-07-25T00:26:18Z makomo: cdr is giving you back a list 2018-07-25T00:26:43Z dddddd quit (Remote host closed the connection) 2018-07-25T00:27:12Z Kundry_W_ joined #lisp 2018-07-25T00:28:43Z makomo: kenster: SECOND :-) 2018-07-25T00:29:34Z patlv joined #lisp 2018-07-25T00:30:01Z makomo: kenster: i see, but is a separate macro really needed for that? you could do the job in defcmethod as well 2018-07-25T00:30:23Z Pixel_Outlaw joined #lisp 2018-07-25T00:30:31Z makomo: kenster: in the end it depends on how you'll want to organize things in the future i guess, just a suggestion 2018-07-25T00:30:59Z Zamenhof joined #lisp 2018-07-25T00:31:57Z Kundry_W_ quit (Ping timeout: 240 seconds) 2018-07-25T00:34:00Z patlv quit (Ping timeout: 256 seconds) 2018-07-25T00:34:33Z patlv joined #lisp 2018-07-25T00:38:06Z pioneer42 joined #lisp 2018-07-25T00:41:46Z Kundry_Wag quit (Remote host closed the connection) 2018-07-25T00:42:21Z vhost- joined #lisp 2018-07-25T00:42:21Z vhost- quit (Changing host) 2018-07-25T00:42:22Z vhost- joined #lisp 2018-07-25T00:48:43Z Kundry_Wag joined #lisp 2018-07-25T00:49:54Z vhost- quit (Read error: Connection reset by peer) 2018-07-25T00:49:57Z vh0st- joined #lisp 2018-07-25T00:50:43Z NotSpooky joined #lisp 2018-07-25T00:51:34Z acolarh quit (Ping timeout: 256 seconds) 2018-07-25T00:57:58Z fikka joined #lisp 2018-07-25T01:02:54Z fikka quit (Ping timeout: 256 seconds) 2018-07-25T01:04:57Z sjl quit (Quit: WeeChat 2.2-dev) 2018-07-25T01:06:01Z patlv quit (Ping timeout: 268 seconds) 2018-07-25T01:07:02Z trocado joined #lisp 2018-07-25T01:09:44Z kajo quit (Quit: From my rotting body, flowers shall grow and I am in them and that is eternity. -- E. M.) 2018-07-25T01:12:01Z caltelt quit (Ping timeout: 248 seconds) 2018-07-25T01:12:09Z gabiruh joined #lisp 2018-07-25T01:13:02Z caltelt joined #lisp 2018-07-25T01:16:30Z gabiruh quit (Ping timeout: 256 seconds) 2018-07-25T01:16:31Z karswell quit (Read error: Connection reset by peer) 2018-07-25T01:18:12Z karlosz joined #lisp 2018-07-25T01:25:57Z trocado quit (Ping timeout: 240 seconds) 2018-07-25T01:29:30Z gabiruh joined #lisp 2018-07-25T01:33:01Z pioneer42 left #lisp 2018-07-25T01:35:28Z patlv joined #lisp 2018-07-25T01:37:30Z pestyOverlord quit (Quit: Leaving...) 2018-07-25T01:38:52Z serviteur joined #lisp 2018-07-25T01:39:32Z nickenchuggets joined #lisp 2018-07-25T01:39:32Z nickenchuggets quit (Changing host) 2018-07-25T01:39:32Z nickenchuggets joined #lisp 2018-07-25T01:40:26Z Kundry_W_ joined #lisp 2018-07-25T01:43:37Z quazimodo quit (Ping timeout: 244 seconds) 2018-07-25T01:45:24Z Kundry_W_ quit (Ping timeout: 256 seconds) 2018-07-25T01:45:47Z quazimodo joined #lisp 2018-07-25T01:49:21Z patlv quit (Remote host closed the connection) 2018-07-25T01:49:37Z patlv joined #lisp 2018-07-25T01:50:52Z smurfrobot joined #lisp 2018-07-25T01:52:31Z fikka joined #lisp 2018-07-25T01:54:01Z quaker joined #lisp 2018-07-25T01:56:22Z robotoad joined #lisp 2018-07-25T01:56:35Z quaker quit (Client Quit) 2018-07-25T01:57:21Z fikka quit (Ping timeout: 248 seconds) 2018-07-25T02:02:38Z klltkr_ joined #lisp 2018-07-25T02:04:01Z acolarh joined #lisp 2018-07-25T02:04:06Z klltkr quit (Ping timeout: 256 seconds) 2018-07-25T02:04:07Z makomo_ joined #lisp 2018-07-25T02:07:22Z makomo quit (Ping timeout: 256 seconds) 2018-07-25T02:07:31Z zlib_is_awesome joined #lisp 2018-07-25T02:09:22Z smurfrobot quit (Remote host closed the connection) 2018-07-25T02:11:26Z MoziM joined #lisp 2018-07-25T02:21:27Z patlv quit (Ping timeout: 240 seconds) 2018-07-25T02:26:52Z Zamenhof left #lisp 2018-07-25T02:27:44Z EvW1 quit (Ping timeout: 255 seconds) 2018-07-25T02:32:13Z easye` joined #lisp 2018-07-25T02:35:34Z serviteur quit (Remote host closed the connection) 2018-07-25T02:36:16Z lyosha[m] quit (Ping timeout: 256 seconds) 2018-07-25T02:36:16Z Cal[m] quit (Ping timeout: 256 seconds) 2018-07-25T02:36:16Z xristos quit (Ping timeout: 256 seconds) 2018-07-25T02:36:50Z easye quit (Ping timeout: 256 seconds) 2018-07-25T02:36:50Z angular_mike_2 quit (Ping timeout: 256 seconds) 2018-07-25T02:38:10Z kenster: makomo_: you wouldn't happen to know what to do if gensym won't generate a unique symbol? 2018-07-25T02:38:55Z kenster: it keeps saying duplicate definitions for symbol "G0", yet I macroexpanded my defcmethod calls and each one has a different symbol 2018-07-25T02:39:40Z exit70 quit (Ping timeout: 256 seconds) 2018-07-25T02:40:07Z angular_mike_2 joined #lisp 2018-07-25T02:40:12Z kenster: " Duplicate definition for G0 found in one file." 2018-07-25T02:40:12Z Bike: that would indicate a deeply broken implementation of gensym. it is more likely that the problem is elsewhere. 2018-07-25T02:40:37Z xristos joined #lisp 2018-07-25T02:40:56Z xristos is now known as Guest98336 2018-07-25T02:41:26Z pierpal joined #lisp 2018-07-25T02:41:31Z AetherWind joined #lisp 2018-07-25T02:42:04Z lyosha[m] joined #lisp 2018-07-25T02:42:12Z exit70 joined #lisp 2018-07-25T02:43:18Z kenster: hmmmmmmmmmm 2018-07-25T02:43:18Z Cal[m] joined #lisp 2018-07-25T02:45:42Z Guest16049 joined #lisp 2018-07-25T02:50:41Z subroot quit (Ping timeout: 256 seconds) 2018-07-25T02:50:42Z Kundry_W_ joined #lisp 2018-07-25T02:55:32Z Kundry_W_ quit (Ping timeout: 256 seconds) 2018-07-25T02:55:41Z karlosz quit (Quit: karlosz) 2018-07-25T02:57:14Z makomo_ quit (Ping timeout: 256 seconds) 2018-07-25T02:59:38Z pierpa quit (Quit: Page closed) 2018-07-25T03:07:34Z Pixel_Outlaw quit (Quit: Leaving) 2018-07-25T03:12:09Z pagnol joined #lisp 2018-07-25T03:13:19Z Kundry_Wag quit (Remote host closed the connection) 2018-07-25T03:13:43Z smurfrobot joined #lisp 2018-07-25T03:13:53Z Kundry_Wag joined #lisp 2018-07-25T03:14:03Z White_Flame: even if you reset the gensym counter such that two calls to GENSYM both returned #:G123, those two #:G123's would be different instances, as they're uninterned, and wouldn't complain about duplication 2018-07-25T03:14:17Z White_Flame: so you're taking the return value from a single GENSYM call and using it in two places 2018-07-25T03:15:08Z kenster: that's weird 2018-07-25T03:15:11Z pierpal quit (Quit: Poof) 2018-07-25T03:15:18Z kenster: they are completely different calls to the macro 2018-07-25T03:15:30Z pierpal joined #lisp 2018-07-25T03:16:08Z smurfrobot quit (Remote host closed the connection) 2018-07-25T03:16:55Z Jesin joined #lisp 2018-07-25T03:17:19Z kenster: it isn't my only error though, so I'll see after fixing the others 2018-07-25T03:18:04Z beach: Good morning everyone! 2018-07-25T03:18:10Z Kundry_Wag quit (Ping timeout: 244 seconds) 2018-07-25T03:18:27Z Cthulhux quit (Ping timeout: 240 seconds) 2018-07-25T03:24:04Z X-Scale quit (Ping timeout: 260 seconds) 2018-07-25T03:25:06Z kenster: hiya 2018-07-25T03:25:29Z [X-Scale] joined #lisp 2018-07-25T03:25:36Z [X-Scale] is now known as X-Scale 2018-07-25T03:29:57Z caltelt: good evening :D 2018-07-25T03:30:47Z Cthulhux joined #lisp 2018-07-25T03:31:41Z smurfrobot joined #lisp 2018-07-25T03:32:47Z WhoTookMyName joined #lisp 2018-07-25T03:33:48Z NotSpooky quit (Quit: Leaving) 2018-07-25T03:36:20Z smurfrobot quit (Ping timeout: 256 seconds) 2018-07-25T03:38:02Z WhoTookMyName quit (Ping timeout: 256 seconds) 2018-07-25T03:40:26Z Kundry_Wag joined #lisp 2018-07-25T03:40:29Z orivej joined #lisp 2018-07-25T03:40:36Z fikka joined #lisp 2018-07-25T03:41:03Z eminhi joined #lisp 2018-07-25T03:44:58Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-25T03:45:14Z Kundry_Wag joined #lisp 2018-07-25T03:46:33Z fikka quit (Ping timeout: 264 seconds) 2018-07-25T03:47:56Z pagnol_ joined #lisp 2018-07-25T03:50:57Z pagnol quit (Ping timeout: 240 seconds) 2018-07-25T03:51:11Z no-defun-allowed: hi beach 2018-07-25T03:57:21Z brendyn joined #lisp 2018-07-25T03:57:40Z renzhi quit (Quit: WeeChat 2.1) 2018-07-25T03:59:28Z milanj quit (Quit: This computer has gone to sleep) 2018-07-25T04:03:00Z smurfrobot joined #lisp 2018-07-25T04:07:38Z smurfrobot quit (Ping timeout: 256 seconds) 2018-07-25T04:08:59Z patlv joined #lisp 2018-07-25T04:12:21Z pagnol_ quit (Ping timeout: 264 seconds) 2018-07-25T04:13:52Z patlv quit (Ping timeout: 256 seconds) 2018-07-25T04:15:11Z JuanDaugherty joined #lisp 2018-07-25T04:15:17Z smurfrobot joined #lisp 2018-07-25T04:17:23Z Bike quit (Quit: Lost terminal) 2018-07-25T04:17:58Z smurfrobot quit (Remote host closed the connection) 2018-07-25T04:18:58Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-25T04:20:27Z pagnol_ joined #lisp 2018-07-25T04:24:53Z Kundry_Wag joined #lisp 2018-07-25T04:25:41Z daniel-s joined #lisp 2018-07-25T04:25:59Z iAmDecim joined #lisp 2018-07-25T04:26:39Z smurfrobot joined #lisp 2018-07-25T04:29:21Z smurfrobot quit (Remote host closed the connection) 2018-07-25T04:29:27Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-25T04:30:16Z kajo joined #lisp 2018-07-25T04:35:47Z kajo quit (Quit: From my rotting body, flowers shall grow and I am in them and that is eternity. -- E. M.) 2018-07-25T04:36:40Z edgar-rft quit (Quit: Leaving) 2018-07-25T04:38:13Z renzhi joined #lisp 2018-07-25T04:43:58Z iAmDecim quit (Remote host closed the connection) 2018-07-25T04:48:12Z JuanDaugherty quit (Quit: Exeunt) 2018-07-25T04:58:51Z eminhi quit (Quit: leaving) 2018-07-25T04:59:55Z equwal: How can I set something like 2018-07-25T04:59:55Z equwal: (defun x (y) (declare ((integer 0 +max-const+) y))) 2018-07-25T04:59:55Z equwal: without everything breaking because the type-spec doesn't get evaluated? 2018-07-25T04:59:55Z equwal: I' 2018-07-25T05:00:07Z equwal: I'd like some kind of a reader modification I think. 2018-07-25T05:00:59Z smurfrobot joined #lisp 2018-07-25T05:01:07Z beach: (integer 0 #.+max-const+) 2018-07-25T05:02:43Z equwal: Wow I feel stupid for asking, thanks for the help. 2018-07-25T05:03:01Z beach: And you need a TYPE in there I think. 2018-07-25T05:05:35Z smurfrobot quit (Ping timeout: 240 seconds) 2018-07-25T05:06:09Z equwal: Yes. 2018-07-25T05:07:39Z beach: Of course, I would not put in the type declaration in the first place. But that's perhaps just me. What do you expect from it? 2018-07-25T05:08:20Z equwal: I am using (defconstant +max64+ 18446744073709551615) where that big number is 2^64-1 2018-07-25T05:08:52Z equwal: The idea is get more efficiency, but still being sure that it is definitely not a 32 bit machine or whatever. 2018-07-25T05:09:50Z beach: And you know for a fact that this function is a bottleneck when it comes to the performance of your code? 2018-07-25T05:10:07Z beach: My experience is that bottlenecks come and go during development. 2018-07-25T05:10:38Z equwal: No, I am porting some stuff from C by hand and I know that the code won't overflow for that reason. 2018-07-25T05:11:00Z saki quit (Quit: saki) 2018-07-25T05:11:12Z beach: That was not my point though. My point was about performance. 2018-07-25T05:12:23Z knusbaum: http://wiki.c2.com/?PrematureOptimization 2018-07-25T05:13:57Z vertigo quit (Ping timeout: 240 seconds) 2018-07-25T05:14:09Z equwal: Yeah got it, but I am bit twiddling a bunch with ldb, ash, logand, etc to make an RNG so I'd rather not use the number type for everything. 2018-07-25T05:14:26Z equwal: s/number/integer 2018-07-25T05:15:09Z knusbaum: why specify a type at all? 2018-07-25T05:15:21Z kenster quit (Ping timeout: 264 seconds) 2018-07-25T05:16:09Z equwal: I am converting this to LISP http://www.pcg-random.org/download.html 2018-07-25T05:16:23Z beach: To LISP? Oh my god! 2018-07-25T05:16:26Z equwal: lol 2018-07-25T05:17:19Z beach: When you write it like that, most people here will think about some dialect from the 1960s. 2018-07-25T05:17:55Z equwal: Yeah I had to think for a second before deciding not to go and rub it out in favor of 'Common Lisp.' 2018-07-25T05:19:09Z equwal: Anyway it doesn't make a lot of sense not to use those types if I am merely transcribing to CL without any real modifications. 2018-07-25T05:19:26Z graphene quit (Remote host closed the connection) 2018-07-25T05:20:46Z graphene joined #lisp 2018-07-25T05:20:54Z Inline quit (Remote host closed the connection) 2018-07-25T05:24:42Z vlatkoB joined #lisp 2018-07-25T05:26:30Z Kundry_Wag joined #lisp 2018-07-25T05:28:32Z ofi joined #lisp 2018-07-25T05:29:00Z eli_oat quit (Remote host closed the connection) 2018-07-25T05:29:05Z fikka joined #lisp 2018-07-25T05:29:18Z eli_oat joined #lisp 2018-07-25T05:31:13Z Kundry_Wag quit (Ping timeout: 248 seconds) 2018-07-25T05:33:38Z fikka quit (Ping timeout: 256 seconds) 2018-07-25T05:35:06Z sauvin joined #lisp 2018-07-25T05:35:09Z equwal quit (Remote host closed the connection) 2018-07-25T05:35:29Z equwal joined #lisp 2018-07-25T05:38:39Z vtomole_ joined #lisp 2018-07-25T05:40:34Z Kundry_Wag joined #lisp 2018-07-25T05:41:04Z daniel-s quit (Remote host closed the connection) 2018-07-25T05:44:12Z vtomole__ joined #lisp 2018-07-25T05:44:12Z vtomole__ quit (Client Quit) 2018-07-25T05:45:21Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-25T05:46:10Z vtomole_: Any way to get the number of arguments a procedure takes? "(defun square (x) (* x x)) (num-proc #'square) -> 1" 2018-07-25T05:48:05Z vsync: if there are 2 variants of a thing (message), one generic but with all the info, and another specialized for a recipient with IDs mapped to recipient system, what would you call them? 2018-07-25T05:48:47Z vsync: I feel like I know some term used in CLOS/MOP object creation/instantiation but can't remember and don't know if apropos 2018-07-25T05:49:25Z Zhivago: vsync: Rather than what they are, consider how they are used. 2018-07-25T05:49:26Z flamebeard joined #lisp 2018-07-25T05:50:36Z vsync: well the first is used to produce the second... the point of the first is a generic notification of something that is then dispatched and particularized... the second is one that can be transmitted to the target system 2018-07-25T05:50:44Z Kundry_Wag joined #lisp 2018-07-25T05:50:59Z krwq joined #lisp 2018-07-25T05:52:30Z Zhivago: vsync: Ok, so the first is not a message -- it is a notice. The second is a message that can be sent. 2018-07-25T05:54:35Z vsync: not quite 2018-07-25T05:55:38Z dcluna quit (Ping timeout: 276 seconds) 2018-07-25T05:55:51Z Kundry_Wag quit (Ping timeout: 268 seconds) 2018-07-25T05:55:56Z vsync: the first is a message precursor or a proto-message... everything to be filled in is mechanical it's just not bundled yet, so you say "send this to them" and it makes the latter out of the former and hands it off to given recipient 2018-07-25T05:56:18Z vsync: hmm, like a form letter 2018-07-25T05:56:44Z vsync: but template conveys there is no data in there, where in this case there is, just only the common data and per-recipient remains to be merged 2018-07-25T05:59:21Z beach: vtomole_: Try FUNCTION-LAMBDA-EXPRESSION. It is not guaranteed to work, though. 2018-07-25T05:59:32Z beach: clhs function-lambda-expression 2018-07-25T05:59:32Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_fn_lam.htm 2018-07-25T06:01:17Z beach: vsync: Your description is way to general for me to have any idea what you are talking about. That could just be me of course. 2018-07-25T06:01:42Z dcluna joined #lisp 2018-07-25T06:02:16Z beach: vsync: Are these "things" ("messages") just data? 2018-07-25T06:02:52Z beach: And what does it mean for a "thing" to be "specialized"? Is that a subclass? 2018-07-25T06:04:17Z beach: And, if so, how can a datum be used to produce another datum? Usually, it takes some code to produce anything at all. 2018-07-25T06:04:25Z vtomole_: beach: Wow! That will do. I say this a lot- the standard library is so huge :) 2018-07-25T06:05:04Z mfiano: I'm having trouble. How would I write a macro with once-only which expands to a (declare (ignorable ...)) directly below the gensym'd let expansion from once-only? 2018-07-25T06:05:17Z beach: vtomole_: It is not guaranteed to return something useful, for the simple reason that, if it were, you could get the code for the proprietary compiler in one of the commercial implementations. 2018-07-25T06:06:00Z fikka joined #lisp 2018-07-25T06:06:26Z beach: mfiano: You want the entire expansion to be the declaration? 2018-07-25T06:06:37Z mfiano: No. Let me write up an example 2018-07-25T06:08:54Z mfiano: beach: I have this. I would like there to be a (declare (ignorable #:mat1232)) between lines 18-19: https://gist.github.com/mfiano/78840a36c76d4caa5e4667ef6520c0f4 2018-07-25T06:10:11Z vtomole_: beach: Works wonders: "(length (third (function-lambda-expression #'square)))" 2018-07-25T06:10:44Z fikka quit (Ping timeout: 244 seconds) 2018-07-25T06:11:32Z beach: mfiano: Sorry, I can't see how to do that. 2018-07-25T06:15:00Z mfiano: Ok no problem 2018-07-25T06:15:49Z Kundry_Wag joined #lisp 2018-07-25T06:19:33Z pagnol_ quit (Ping timeout: 264 seconds) 2018-07-25T06:19:46Z shka1 joined #lisp 2018-07-25T06:20:53Z graphene quit (Remote host closed the connection) 2018-07-25T06:20:57Z dcluna quit (Ping timeout: 240 seconds) 2018-07-25T06:22:09Z graphene joined #lisp 2018-07-25T06:23:13Z dcluna joined #lisp 2018-07-25T06:24:29Z ofi quit (Remote host closed the connection) 2018-07-25T06:25:13Z ofi joined #lisp 2018-07-25T06:26:14Z vsync: beach: it probably is... if I had the right words to express I wouldn't have the problem 2018-07-25T06:26:25Z vsync: beach: yes, maybe, magic 2018-07-25T06:26:27Z White_Flame quit (Ping timeout: 240 seconds) 2018-07-25T06:26:46Z caltelt quit (Ping timeout: 264 seconds) 2018-07-25T06:27:03Z White_Flame joined #lisp 2018-07-25T06:31:27Z vertigo joined #lisp 2018-07-25T06:35:53Z jackdaniel: vtomole_: not portably. implementations often have functions for that 2018-07-25T06:36:10Z jackdaniel: ah, sorry, something didn't scroll (I see the answer) 2018-07-25T06:36:41Z jackdaniel: fwiw there is library trivial-arguments 2018-07-25T06:38:14Z beach: jackdaniel: Did you see the screen shot of my IR viewer? http://metamodular.com/IR-viewer.png 2018-07-25T06:39:07Z beach: jackdaniel: McCLIM excels for stuff like that. 2018-07-25T06:39:26Z trittweiler: mfiano: Don't use once-only but write the let yourself. :) 2018-07-25T06:39:42Z jackdaniel: looks messy, but given amount of data it would be hard to show it clearly. nice! 2018-07-25T06:39:58Z jackdaniel: line antialiassing would improve the look 2018-07-25T06:40:02Z mfiano: trittweiler: Yeah I did just that, or well with-gensyms 2018-07-25T06:40:04Z beach: jackdaniel: Oh, yes, it's messy. But a lot less so than with GraphViz. 2018-07-25T06:40:11Z jackdaniel: but I figure it is more convenient than going through graphviz 2018-07-25T06:40:14Z beach: jackdaniel: Yes, loke would agree. 2018-07-25T06:40:47Z jackdaniel: I have something ~similar for ECL (but it is buried somewhere, don't remember where) - for examining environments 2018-07-25T06:40:48Z shka1: beach: so you wrote it already? 2018-07-25T06:41:01Z shka1: that was fast 2018-07-25T06:41:09Z beach: shka1: Sort of. It's McCLIM so it is easy to do things like this. 2018-07-25T06:41:27Z shka1: … ok 2018-07-25T06:41:36Z shka1: it does not look easy 2018-07-25T06:41:37Z beach: jackdaniel: It is still work in progress, but yes, I can define some gestures to improve the experience, which I can not do with a dumb image file. 2018-07-25T06:41:48Z jackdaniel: sure 2018-07-25T06:42:23Z shka1: beach: can i look at the source code? 2018-07-25T06:42:28Z jackdaniel: could that be implemented as a clouseau's method specialization? I think that it is extensible that way 2018-07-25T06:42:30Z trittweiler: mfiano: Personally, I don't like macros silently introducing bindings. Wouldn't an inline function (mat-ref 0 1) which does the right aref be nicer? 2018-07-25T06:42:39Z shka1: because i'm a little bit intrigued 2018-07-25T06:42:47Z beach: shka1: Sure: SICL/Code/Cleavir/Intermediate-representation/Visualizer 2018-07-25T06:42:56Z shka1: oh, ok 2018-07-25T06:42:59Z shka1: thanks 2018-07-25T06:43:22Z beach: Less than 300 lines of code so far. 2018-07-25T06:43:52Z beach: ... so you can see why it does not take much time to write. 2018-07-25T06:43:57Z jackdaniel: if someone is in need for a fine Lispy folk music, I can recommend Karolina Cicha's albums – lispy in a sense that she digs into traditional forgotten melodies ;-) 2018-07-25T06:44:06Z trittweiler: vsync, I am working on something similar. In my case, I have a class `packet` which is addressable and which contains a `payload`, and `message` is a subclass of `payload` 2018-07-25T06:44:21Z mfiano: trittweiler: That's not really anything to do with the question, and this macro is exclusively for being able to write linear algebra similar to how it is presented in a math text, so introducing bindings is purposeful. 2018-07-25T06:44:59Z trittweiler: Sure, just brain-storming. 2018-07-25T06:49:34Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-25T06:49:54Z fikka joined #lisp 2018-07-25T06:49:59Z jasom quit (Ping timeout: 260 seconds) 2018-07-25T06:50:24Z jasom joined #lisp 2018-07-25T06:55:31Z al-damiri quit (Quit: Connection closed for inactivity) 2018-07-25T06:56:24Z vtomole_ quit (Ping timeout: 252 seconds) 2018-07-25T06:59:11Z graphene quit (Remote host closed the connection) 2018-07-25T07:00:31Z graphene joined #lisp 2018-07-25T07:05:05Z shka1 quit (Ping timeout: 240 seconds) 2018-07-25T07:13:54Z equwal quit (Ping timeout: 260 seconds) 2018-07-25T07:15:32Z vsync: trittweiler: already using payload for the generic argument name :-) 2018-07-25T07:17:09Z vsync: okay, figured out a little more what I'm going for.... there is an event or so, that we create some communication from a given perspective, not for a given recipient but for a class of recipients; then we create a message from that thing (suitable for sending to a recipient); then a specific document with everything inlined 2018-07-25T07:17:16Z vsync: what is that thing, that initial proto-communication 2018-07-25T07:17:31Z vsync: designated for a class of recipients sharing a perspective 2018-07-25T07:17:43Z zfree joined #lisp 2018-07-25T07:17:52Z newbie68 quit (Read error: Connection reset by peer) 2018-07-25T07:19:02Z orivej quit (Ping timeout: 256 seconds) 2018-07-25T07:20:48Z saki joined #lisp 2018-07-25T07:21:27Z milanj joined #lisp 2018-07-25T07:26:10Z SaganMan quit (Ping timeout: 264 seconds) 2018-07-25T07:26:47Z trittweiler: vsync: announcement? 2018-07-25T07:30:27Z saki quit (Ping timeout: 240 seconds) 2018-07-25T07:31:10Z saki joined #lisp 2018-07-25T07:31:11Z smurfrobot joined #lisp 2018-07-25T07:35:21Z moei quit (Quit: Leaving...) 2018-07-25T07:37:06Z smurfrobot quit (Remote host closed the connection) 2018-07-25T07:37:51Z smurfrobot joined #lisp 2018-07-25T07:43:07Z vsync: yeah maybe, occurred to me 2018-07-25T07:45:14Z SaganMan joined #lisp 2018-07-25T07:47:20Z angavrilov joined #lisp 2018-07-25T07:47:42Z malm quit (Ping timeout: 245 seconds) 2018-07-25T07:49:43Z malm joined #lisp 2018-07-25T07:50:16Z Smokitch joined #lisp 2018-07-25T07:57:30Z smurfrobot quit (Remote host closed the connection) 2018-07-25T08:00:40Z varjag joined #lisp 2018-07-25T08:00:56Z pagnol_ joined #lisp 2018-07-25T08:02:48Z hhdave joined #lisp 2018-07-25T08:03:29Z Fare quit (Ping timeout: 256 seconds) 2018-07-25T08:06:22Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-25T08:08:32Z krwq left #lisp 2018-07-25T08:12:14Z edgar-rft joined #lisp 2018-07-25T08:12:26Z fikka quit (Ping timeout: 256 seconds) 2018-07-25T08:14:54Z fikka joined #lisp 2018-07-25T08:16:17Z dddddd joined #lisp 2018-07-25T08:16:53Z cgay_ quit (Read error: Connection reset by peer) 2018-07-25T08:17:09Z cgay_ joined #lisp 2018-07-25T08:18:32Z heisig joined #lisp 2018-07-25T08:22:03Z _cosmonaut_ joined #lisp 2018-07-25T08:22:08Z zlib_is_awesome quit (Quit: Leaving) 2018-07-25T08:24:34Z Kundry_Wag joined #lisp 2018-07-25T08:25:03Z moei joined #lisp 2018-07-25T08:25:35Z fikka quit (Ping timeout: 244 seconds) 2018-07-25T08:25:56Z edgar-rft quit (Remote host closed the connection) 2018-07-25T08:26:35Z marusich joined #lisp 2018-07-25T08:28:43Z Kevslinger quit (Quit: Connection closed for inactivity) 2018-07-25T08:29:12Z Kundry_Wag quit (Ping timeout: 244 seconds) 2018-07-25T08:29:45Z ofi quit (Ping timeout: 264 seconds) 2018-07-25T08:34:09Z smurfrobot joined #lisp 2018-07-25T08:35:01Z chiyosaki joined #lisp 2018-07-25T08:36:17Z saki quit (Ping timeout: 276 seconds) 2018-07-25T08:38:49Z smurfrobot quit (Ping timeout: 256 seconds) 2018-07-25T08:39:21Z pagnol_ quit (Ping timeout: 264 seconds) 2018-07-25T08:42:21Z varjag quit (Ping timeout: 264 seconds) 2018-07-25T08:46:23Z Kundry_Wag joined #lisp 2018-07-25T08:46:45Z lumm joined #lisp 2018-07-25T08:49:36Z ofi joined #lisp 2018-07-25T08:54:33Z m00natic joined #lisp 2018-07-25T08:59:42Z heisig quit (Remote host closed the connection) 2018-07-25T09:00:23Z lemo joined #lisp 2018-07-25T09:01:07Z lemo quit (Changing host) 2018-07-25T09:01:07Z lemo joined #lisp 2018-07-25T09:08:14Z pjb: vtomole: Usually, (length (third (function-lambda-expression #'square))) doesn't work after compiling. 2018-07-25T09:08:28Z pjb: or file-compiling. 2018-07-25T09:10:14Z dddddd quit (Ping timeout: 256 seconds) 2018-07-25T09:10:24Z pjb: vtomole: the reliable and conforming way to have this (if you need it in your program, and not just for debugging), is to define your own define function macro that will do the book-marking. See an example in ibcl. 2018-07-25T09:10:43Z pjb: https://www.informatimago.com/develop/lisp/com/informatimago/small-cl-pgms/ibcl/index.html 2018-07-25T09:10:48Z varjag joined #lisp 2018-07-25T09:10:52Z xrash joined #lisp 2018-07-25T09:10:58Z fikka joined #lisp 2018-07-25T09:18:48Z Kundry_Wag quit (Ping timeout: 244 seconds) 2018-07-25T09:24:04Z smurfrobot joined #lisp 2018-07-25T09:24:24Z fikka quit (Ping timeout: 256 seconds) 2018-07-25T09:27:07Z schweers joined #lisp 2018-07-25T09:29:41Z smurfrobot quit (Remote host closed the connection) 2018-07-25T09:30:50Z smurfrobot joined #lisp 2018-07-25T09:33:04Z smurfrobot quit (Remote host closed the connection) 2018-07-25T09:40:23Z Kundry_Wag joined #lisp 2018-07-25T09:44:57Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-25T09:45:31Z jmercouris joined #lisp 2018-07-25T09:46:22Z jmercouris: I'm trying to have a makefile that loads an asd, quickloads the system, and then runs it 2018-07-25T09:46:30Z jmercouris: or rather evaluates a form 2018-07-25T09:46:45Z jmercouris: anyways, the problem is that when you do sbcl --eval, you are only allowed to have one form 2018-07-25T09:47:10Z jmercouris: I got this error: (INVOKE-DEBUGGER #) 2018-07-25T09:47:26Z jmercouris: if I wrap everything in a progn, would it work? 2018-07-25T09:47:26Z trittweiler: Iirc you can specify --eval multiple times 2018-07-25T09:47:29Z jmercouris: Okay 2018-07-25T09:47:42Z jmercouris: so something like --eval "first expression" --eval "second expression" ? 2018-07-25T09:48:05Z s0lar_ quit (Ping timeout: 240 seconds) 2018-07-25T09:48:21Z jmercouris: seemed to work putting eval a bunch of times indeed 2018-07-25T09:49:05Z jmercouris: thanks for the tip 2018-07-25T09:50:12Z trittweiler: you're welcome. Depending on what you are trying to achieve, have a look at buildapp, too. (In case you are not aware of its existence) 2018-07-25T09:50:21Z shenghi quit (Ping timeout: 240 seconds) 2018-07-25T09:50:38Z jmercouris: I am aware of it 2018-07-25T09:51:07Z smurfrobot joined #lisp 2018-07-25T09:51:37Z shenghi joined #lisp 2018-07-25T09:56:00Z smurfrobot quit (Ping timeout: 256 seconds) 2018-07-25T09:56:24Z shka: jmercouris: you included lisp code into build process? 2018-07-25T09:56:32Z shka: sounds interesting 2018-07-25T09:57:02Z jmercouris: shka: It is just for bootstrapping/running a server 2018-07-25T09:57:17Z shka: oh ok 2018-07-25T09:57:33Z shka: honestly, I thinked about making C/C++ build system in Common Lisp 2018-07-25T09:57:42Z marusich quit (Quit: Leaving) 2018-07-25T09:57:49Z jmercouris: sounds very difficult 2018-07-25T09:58:12Z shka: it would be interactive, build targets would be represented as lisp objects 2018-07-25T09:58:35Z shka: it is not very difficult, but certeinly non trivial 2018-07-25T09:58:44Z jmercouris: okay, let me rephrase 2018-07-25T09:58:47Z jmercouris: sounds like a very large project 2018-07-25T09:58:53Z jmercouris: I often conflate difficulty with magnitude 2018-07-25T09:58:55Z shka: yeah 2018-07-25T09:58:59Z shka: that's true 2018-07-25T09:59:06Z pagnol joined #lisp 2018-07-25T09:59:09Z shka: and i don't write enough C to justify it 2018-07-25T09:59:17Z shka: cmake is annoying though 2018-07-25T09:59:24Z jmercouris: I think we can all agree 2018-07-25T09:59:32Z jmercouris: I've never ever had an enjoyable build experience in any c project 2018-07-25T09:59:39Z shka: true that 2018-07-25T10:00:01Z shka: anyway, Common Lisp seems to me to be the right tool to make such thing 2018-07-25T10:00:29Z shka: because of multiple dispatch, stable standard, implementations on every platform and so one 2018-07-25T10:01:37Z shka: you could plug everything into it 2018-07-25T10:01:59Z random-nick joined #lisp 2018-07-25T10:02:29Z jibanes quit (Ping timeout: 260 seconds) 2018-07-25T10:04:35Z rozenglass joined #lisp 2018-07-25T10:04:47Z jmercouris: Anything is possible :) 2018-07-25T10:07:58Z shka: yeah, sadly i doubt C++ community would accept this tool 2018-07-25T10:10:20Z jibanes joined #lisp 2018-07-25T10:13:23Z Kundry_Wag joined #lisp 2018-07-25T10:13:53Z makomo_ joined #lisp 2018-07-25T10:15:58Z quazimodo quit (Ping timeout: 256 seconds) 2018-07-25T10:17:08Z pfdietz_ joined #lisp 2018-07-25T10:17:35Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-25T10:17:49Z quazimodo joined #lisp 2018-07-25T10:17:53Z jackdaniel: I find straightforward makefile (even with configure and autotools) much less confusing then some ASDF happy-unexpected behaviour 2018-07-25T10:20:13Z Kaisyu quit (Quit: Connection closed for inactivity) 2018-07-25T10:21:22Z pfdietz quit (Ping timeout: 264 seconds) 2018-07-25T10:23:29Z makomo_ quit (Ping timeout: 260 seconds) 2018-07-25T10:23:35Z vap1 quit (Ping timeout: 240 seconds) 2018-07-25T10:25:14Z heisig joined #lisp 2018-07-25T10:26:44Z JuanDaugherty joined #lisp 2018-07-25T10:28:06Z pagnol quit (Ping timeout: 260 seconds) 2018-07-25T10:28:53Z vaporatorius joined #lisp 2018-07-25T10:28:53Z vap1 joined #lisp 2018-07-25T10:30:22Z chiyosaki quit (Ping timeout: 264 seconds) 2018-07-25T10:34:01Z LdBeth: A proper build system deals more things than resolving dependency 2018-07-25T10:35:57Z beach: GAH, the problem of finding the longest simple path in an arbitrary directed graph is NP hard, but that's exactly what I want to do :(. 2018-07-25T10:36:55Z beach: I guess my graphs are not that complicated, so I can probably come up with something workable. 2018-07-25T10:39:11Z dddddd joined #lisp 2018-07-25T10:40:24Z AetherWind quit (Quit: Leaving) 2018-07-25T10:41:24Z milanj quit (Quit: This computer has gone to sleep) 2018-07-25T10:42:30Z makomo joined #lisp 2018-07-25T10:43:54Z dtornabene quit (Remote host closed the connection) 2018-07-25T10:45:35Z shka: beach: your graphs are large enough for it to matter? 2018-07-25T10:45:45Z balrog| joined #lisp 2018-07-25T10:45:49Z balrog|: Hey, I thought you guys might be interested in this blog by freenode staff member Bryan 'kloeri' Ostergaard https://bryanostergaard.com/ 2018-07-25T10:45:52Z balrog|: or maybe this blog by freenode staff member Matthew 'mst' Trout https://MattSTrout.com/ 2018-07-25T10:45:56Z balrog|: Read what IRC investigative journalists have uncovered on the freenode pedophilia scandal https://encyclopediadramatica.rs/Freenodegate 2018-07-25T10:46:00Z balrog|: Voice your opinions at https://webchat.freenode.net/?channels=#freenode 2018-07-25T10:46:43Z balrog| quit (Killed (Sigyn (Spam is off topic on freenode.))) 2018-07-25T10:51:46Z juristi1 is now known as juristi 2018-07-25T10:52:48Z Guest23519 joined #lisp 2018-07-25T10:55:02Z Guest23519 quit (K-Lined) 2018-07-25T10:55:36Z physpi| joined #lisp 2018-07-25T10:58:41Z pagnol joined #lisp 2018-07-25T11:01:29Z physpi| quit (Quit: ##freenodegate) 2018-07-25T11:02:55Z smurfrobot joined #lisp 2018-07-25T11:07:32Z smurfrobot quit (Ping timeout: 256 seconds) 2018-07-25T11:08:31Z saki joined #lisp 2018-07-25T11:11:45Z orivej joined #lisp 2018-07-25T11:12:30Z yaewa joined #lisp 2018-07-25T11:12:30Z yaewa quit (Client Quit) 2018-07-25T11:13:46Z moei quit (Ping timeout: 256 seconds) 2018-07-25T11:16:09Z Kundry_Wag joined #lisp 2018-07-25T11:26:33Z smurfrobot joined #lisp 2018-07-25T11:28:01Z Kundry_Wag quit (Remote host closed the connection) 2018-07-25T11:28:18Z Kundry_Wag joined #lisp 2018-07-25T11:29:27Z pierpal quit (Ping timeout: 240 seconds) 2018-07-25T11:30:32Z Kundry_Wag quit (Read error: Connection reset by peer) 2018-07-25T11:30:48Z Kundry_Wag joined #lisp 2018-07-25T11:31:05Z dddddd quit (Quit: Hasta otra..) 2018-07-25T11:31:09Z smurfrobot quit (Ping timeout: 260 seconds) 2018-07-25T11:31:23Z dddddd joined #lisp 2018-07-25T11:34:28Z gravicappa joined #lisp 2018-07-25T11:37:09Z varjag quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2018-07-25T11:39:00Z Kundry_Wag quit (Remote host closed the connection) 2018-07-25T11:40:05Z edgar-rft joined #lisp 2018-07-25T11:47:21Z fm4d joined #lisp 2018-07-25T11:47:30Z beach: shka: They can be large, but they are not very "wide", so I think it will be fine. 2018-07-25T11:48:06Z shka: ok 2018-07-25T11:50:35Z makomo quit (Ping timeout: 240 seconds) 2018-07-25T11:50:48Z beach: Plus, this is for displaying the graph, so I can wait a few milliseconds for the layout engine to finish. 2018-07-25T11:52:55Z shka: you can wait longer then a few miliseconds actually 2018-07-25T11:52:58Z shka: so it is not bad 2018-07-25T11:53:09Z JuanDaugherty quit (Quit: Exeunt) 2018-07-25T11:53:11Z beach: Yeah, that was a bit of a joke. 2018-07-25T11:53:19Z shka: oh, ok :-) 2018-07-25T11:53:21Z makomo joined #lisp 2018-07-25T11:53:26Z jackdaniel: just prove that P=NP and move along ;-) 2018-07-25T11:53:41Z Josh_2 joined #lisp 2018-07-25T11:53:53Z beach: Oh, good plan! :) 2018-07-25T11:54:17Z beach: I'll just tell drmeister and Bike that they have to wait for the HIR visualizer for a while. :) 2018-07-25T11:54:35Z jackdaniel: beach: I've asked previously if you considered doing it as a clouseau specialization, you might have missed that question (regarding visualizer) 2018-07-25T11:54:52Z shka: "I am going for a side quest!" 2018-07-25T11:55:16Z beach: jackdaniel: Oh, I totally missed it. 2018-07-25T11:55:23Z beach: That's an interesting idea. 2018-07-25T11:55:59Z jackdaniel: when I finish the infinite amount of tasks I have on my stack I plan to work on clouseau too (mostly tutorials if everything is fine in it) 2018-07-25T11:56:13Z beach: OK. 2018-07-25T11:56:24Z shka: I like this idea 2018-07-25T11:57:02Z shka: I may try doing 2018-07-25T11:57:13Z shka: because such tool could be seriously useful 2018-07-25T11:57:57Z beach: Collectively, we have plenty of ideas for very nice tools, but I think we need more people involved if we are ever going to make significant progress. 2018-07-25T11:58:03Z MoziM quit (Quit: WeeChat 2.2) 2018-07-25T11:58:11Z shka: I may start by refactoring graph display thingy into separate project 2018-07-25T11:58:32Z shka: then i think it shouldn't be THAT hard to plug it into mr inspector 2018-07-25T11:58:58Z jackdaniel: shka: format-graph-from-roots is already in CLIM 2018-07-25T11:59:09Z shka: ooooh, ok 2018-07-25T11:59:13Z jackdaniel: you may provide your own specialized presentation method for that 2018-07-25T11:59:21Z shka: i see 2018-07-25T11:59:29Z shka: ok then 2018-07-25T11:59:32Z jackdaniel: as of clouseau in McCLIM documentation it is described how to specialize on some object types 2018-07-25T11:59:44Z shka: yeah 2018-07-25T11:59:46Z shka: ok 2018-07-25T12:00:15Z shka: actually i would like to display graph of objects in inspector 2018-07-25T12:00:41Z shka: just in general case 2018-07-25T12:00:46Z jackdaniel: I think that there is no "clever" algorithm to place graph nodes in format-graph-from-roots, so you may take that into account 2018-07-25T12:01:08Z jackdaniel: I think graphviz has its algorithms described, so you could implement that in CL 2018-07-25T12:01:19Z shka: it is even published 2018-07-25T12:01:24Z shka: so yes 2018-07-25T12:01:29Z LdBeth: How’s the progress on cario backend for McCLIM 2018-07-25T12:01:56Z shka: beach: are you ok with such feature in clouseau? 2018-07-25T12:02:05Z jackdaniel: you mean cairo? there is no progress, we have no plans for having gtk backend atm 2018-07-25T12:02:26Z jackdaniel: shka: clouseau is extensible, that means you don't have to modify the inspector in order to add functionality to it 2018-07-25T12:02:45Z shka: jackdaniel: even better! 2018-07-25T12:03:02Z beach: shka: Oh, that's hard to say from such a short description. But you can customize it as you please, then we can see if the code is general enough and good enough to be included in the distribution. 2018-07-25T12:03:29Z shka: ok, I will try to hack something on the weekend 2018-07-25T12:03:32Z jackdaniel: that and jmercouris's portable gadgetset and we'll conquer the world ;) or at least find a few more contributors 2018-07-25T12:03:37Z beach: shka: This stuff is written with heavy use of generic functions, so it is designed to be adapted. 2018-07-25T12:03:52Z jackdaniel: lunch time; bbl 2018-07-25T12:05:18Z jmercouris: of course :D 2018-07-25T12:07:21Z pagnol quit (Ping timeout: 256 seconds) 2018-07-25T12:07:58Z shka: what is portable gadgetset? 2018-07-25T12:08:29Z jmercouris: basically, from my very limited understanding, it is a set of platform independent McCLIM gadgets that you can use 2018-07-25T12:08:54Z beach: Indeed. 2018-07-25T12:08:55Z jmercouris: so McCLIM allows you to use gadgets from the native widget toolkit where possible, but you could also use these lisp only gadgets 2018-07-25T12:09:09Z EvW joined #lisp 2018-07-25T12:09:39Z beach: jmercouris: In practice that feature (using native gadgets) is very hard to accomplish, and we are not even sure it can be done with McCLIM right now. 2018-07-25T12:10:20Z beach: jmercouris: I would much rather see one or more sets of gadgets, where each set has a consistent look and feel. 2018-07-25T12:10:26Z Kundry_Wag joined #lisp 2018-07-25T12:11:08Z jmercouris: I see 2018-07-25T12:11:20Z beach: My preference is for obvious reasons. I would much prefer a solution with as much Common Lisp code as possible. 2018-07-25T12:11:44Z shka: that sounds useful 2018-07-25T12:12:37Z shka: having comprehensive set of built widgets helps to get application out ready quickly 2018-07-25T12:13:09Z beach: jmercouris: The CLIM II specification contains a description of all the gadgets that CLIM implementations must have, but we have nothing against extensions. For example, there have been several attempts at a gadget for displaying hierarchies like a directory of files. 2018-07-25T12:13:33Z jmercouris: Several attempts? What makes such a task so difficult? Isn't it just a tree widget? 2018-07-25T12:13:48Z pagnol joined #lisp 2018-07-25T12:13:50Z Kundry_W_ joined #lisp 2018-07-25T12:14:21Z beach: jmercouris: It doesn't sound difficult and I don't know why they were never finished. Perhaps there is one now. I haven't looked lately. 2018-07-25T12:14:35Z jmercouris: beach: links? 2018-07-25T12:14:48Z beach: jmercouris: No, I can't remember. It is all from memory. 2018-07-25T12:14:58Z jmercouris: I see 2018-07-25T12:15:15Z beach: jmercouris: I have been working on McCLIM since the year 2000. 2018-07-25T12:15:23Z jmercouris: Wow 2018-07-25T12:15:27Z jmercouris: That is quite dedication to a project 2018-07-25T12:15:35Z beach: Off and on of course. 2018-07-25T12:15:44Z jmercouris: Ah okay, well, that makes it a little different, but still 2018-07-25T12:15:50Z jmercouris: I think the longest I've worked on a project has been about 3 years 2018-07-25T12:16:02Z beach: shka: We have that, of course. But the people who wrote the code are not graphics designers, so people who are complain that they are ugly, not modern enough, inconsistent, etc. 2018-07-25T12:16:41Z beach: jmercouris: Bah, it took me decades to get the editor-buffer implementation right. :) 2018-07-25T12:17:17Z jmercouris: Hard for me to imagine things on that time scale 2018-07-25T12:18:57Z Kundry_W_ quit (Ping timeout: 264 seconds) 2018-07-25T12:19:04Z pjb: jmercouris: did you try: SHELL=/usr/bin/clisp in your Makefile? 2018-07-25T12:19:19Z jmercouris: pjb: I can't say I did, why would I do that? 2018-07-25T12:19:38Z jsjolen joined #lisp 2018-07-25T12:19:41Z pjb: jmercouris: otherwise, just write a generate.lisp and load it from the Makefile generate:; sbcl --load generate.lisp 2018-07-25T12:19:54Z jmercouris: Oh I see 2018-07-25T12:20:02Z pjb: jmercouris: to be able to write common lisp expressions instead of bash commands in the Makefile rules. 2018-07-25T12:20:13Z jmercouris: yeah, maybe I'll change it down the road 2018-07-25T12:20:17Z shka: beach: i don't care if it is ugly, i just want tool to view my data structures 2018-07-25T12:20:17Z fikka joined #lisp 2018-07-25T12:20:31Z beach: shka: Then you should be fine. 2018-07-25T12:20:42Z shka: i think so :-) 2018-07-25T12:21:09Z shka: also, i really liked flamegraphs 2018-07-25T12:21:31Z beach: Yeah, they seem useful. 2018-07-25T12:21:43Z shka: it didn't work perfectly but it was major improvement over raw sbcl output 2018-07-25T12:22:21Z beach: For the profiler? 2018-07-25T12:22:23Z beach: Sure. 2018-07-25T12:23:40Z EvW quit (Ping timeout: 265 seconds) 2018-07-25T12:24:58Z fikka quit (Ping timeout: 268 seconds) 2018-07-25T12:32:21Z ahmed joined #lisp 2018-07-25T12:32:44Z ahmed is now known as Guest88787 2018-07-25T12:32:57Z Guest88787: I'm newbie to lisp 2018-07-25T12:33:36Z shka: Guest88787: hello 2018-07-25T12:33:43Z Guest88787: I want to do web development in common lisp. 2018-07-25T12:33:52Z shka: that's good 2018-07-25T12:34:02Z Guest88787: hi shka 2018-07-25T12:34:57Z Guest88787: Where should I start.? 2018-07-25T12:35:16Z shka: pick something with good tutorial 2018-07-25T12:35:24Z Guest88787: I have read ANSI CL by Paul Graham. 2018-07-25T12:35:25Z shka: radiance is pretty ok 2018-07-25T12:35:34Z shka: and try to use it 2018-07-25T12:36:15Z Guest88787: Now I'm reading onlisp. It's very hard book. 2018-07-25T12:36:37Z shka: eeeh let's say i am not a huge fan of grahams writing 2018-07-25T12:37:33Z brettgilio joined #lisp 2018-07-25T12:38:06Z Guest88787: Bht Why shka? 2018-07-25T12:38:26Z shka: i find his style to be heavy 2018-07-25T12:38:48Z shka: it is difficult to follow and undestand, at least for me 2018-07-25T12:39:06Z shka: guy steele for instance is much better writer imho 2018-07-25T12:39:29Z Guest88787: CLtL2? 2018-07-25T12:39:35Z shka: yup 2018-07-25T12:39:53Z Guest88787: Isn't that reference book? 2018-07-25T12:40:04Z shka: i would dare to say so :-) 2018-07-25T12:40:12Z jackdaniel: I really liked ANSI CL book, especially the excercises 2018-07-25T12:40:28Z jackdaniel: shka: cltl2 is a reference manual, ANSI CL book is something what aims at teaching you something 2018-07-25T12:40:31Z jackdaniel: about programming etc 2018-07-25T12:40:41Z shka: well, yes 2018-07-25T12:41:20Z Guest88787: yeah it's good book. 2018-07-25T12:41:44Z jackdaniel: Guest88787: if you want more CLOS-centric approach at learning Common Lisp you may read PCL 2018-07-25T12:41:48Z jackdaniel: minion: tell Guest88787 about pcl 2018-07-25T12:41:48Z minion: Guest88787: please look at pcl: pcl-book: "Practical Common Lisp", an introduction to Common Lisp by Peter Seibel, available at http://www.gigamonkeys.com/book/ and in dead-tree form from Apress (as of 11 April 2005). 2018-07-25T12:42:10Z jackdaniel: and if you want to have something fun to read, read PAIP (recently published online) 2018-07-25T12:42:59Z jsjolen: I dreamt about a hack to add monomorphically typed tuples to CL 2018-07-25T12:43:12Z jsjolen: Now I just have to code it 2018-07-25T12:43:44Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-25T12:44:03Z jackdaniel: Guest88787: as of web development, I don't know any book which concentrates on that. common advice is to write backend in CL and frontend in react (or something similar) 2018-07-25T12:44:35Z jsjolen: jackdaniel: There's a book called WebTales or something. It's self-published and so on 2018-07-25T12:45:39Z Guest88787 quit (Ping timeout: 252 seconds) 2018-07-25T12:45:57Z orivej quit (Ping timeout: 264 seconds) 2018-07-25T12:48:43Z EvW1 joined #lisp 2018-07-25T12:49:07Z housel quit (Read error: Connection reset by peer) 2018-07-25T12:49:34Z papachan joined #lisp 2018-07-25T12:49:34Z housel joined #lisp 2018-07-25T12:54:31Z Bike joined #lisp 2018-07-25T12:55:12Z pierpal joined #lisp 2018-07-25T12:56:48Z zfree quit (Quit: zfree) 2018-07-25T12:58:00Z Kundry_Wag joined #lisp 2018-07-25T13:01:10Z Josh_2 quit (Quit: ERC (IRC client for Emacs 25.3.1)) 2018-07-25T13:01:34Z quazimodo quit (Ping timeout: 260 seconds) 2018-07-25T13:02:54Z beach: Oh, this will be gorgeous. I implemented a simple algorithm for finding the longest path. It is definitely fast enough for our HIR graphs and the layout of the instructions will be fantastic with it. 2018-07-25T13:02:57Z Kundry_Wag quit (Ping timeout: 248 seconds) 2018-07-25T13:03:28Z quazimodo joined #lisp 2018-07-25T13:04:50Z lumm_ joined #lisp 2018-07-25T13:05:02Z patlv joined #lisp 2018-07-25T13:06:21Z LiamH joined #lisp 2018-07-25T13:07:11Z EvW1 quit (Remote host closed the connection) 2018-07-25T13:07:37Z brettgilio quit (Remote host closed the connection) 2018-07-25T13:08:56Z smurfrobot joined #lisp 2018-07-25T13:09:14Z lumm quit (Ping timeout: 256 seconds) 2018-07-25T13:09:14Z lumm_ is now known as lumm 2018-07-25T13:11:51Z Kundry_Wag joined #lisp 2018-07-25T13:12:07Z Fare joined #lisp 2018-07-25T13:13:14Z _cosmonaut_ quit (Ping timeout: 260 seconds) 2018-07-25T13:18:26Z gravicappa quit (Ping timeout: 256 seconds) 2018-07-25T13:26:08Z subroot joined #lisp 2018-07-25T13:26:22Z graphene quit (Read error: Connection reset by peer) 2018-07-25T13:26:27Z Sophira| joined #lisp 2018-07-25T13:26:27Z Sophira|: Hey, I thought you guys might be interested in this blog by freenode staff member Bryan 'kloeri' Ostergaard https://bryanostergaard.com/ 2018-07-25T13:26:27Z Sophira|: or maybe this blog by freenode staff member Matthew 'mst' Trout https://MattSTrout.com/ 2018-07-25T13:26:27Z Sophira|: Read what IRC investigative journalists have uncovered on the freenode pedophilia scandal https://encyclopediadramatica.rs/Freenodegate 2018-07-25T13:26:30Z Sophira|: Voice your opinions at https://webchat.freenode.net/?channels=#freenode 2018-07-25T13:26:32Z justyns joined #lisp 2018-07-25T13:26:32Z justyns: Hey, I thought you guys might be interested in this blog by freenode staff member Bryan 'kloeri' Ostergaard https://bryanostergaard.com/ 2018-07-25T13:26:32Z justyns: or maybe this blog by freenode staff member Matthew 'mst' Trout https://MattSTrout.com/ 2018-07-25T13:26:32Z justyns: Read what IRC investigative journalists have uncovered on the freenode pedophilia scandal https://encyclopediadramatica.rs/Freenodegate 2018-07-25T13:26:35Z justyns: Voice your opinions at https://webchat.freenode.net/?channels=#freenode 2018-07-25T13:26:49Z Guest79333| joined #lisp 2018-07-25T13:26:49Z Guest79333|: Hey, I thought you guys might be interested in this blog by freenode staff member Bryan 'kloeri' Ostergaard https://bryanostergaard.com/ 2018-07-25T13:26:49Z Guest79333|: or maybe this blog by freenode staff member Matthew 'mst' Trout https://MattSTrout.com/ 2018-07-25T13:26:49Z Guest79333|: Read what IRC investigative journalists have uncovered on the freenode pedophilia scandal https://encyclopediadramatica.rs/Freenodegate 2018-07-25T13:26:52Z Sophira| quit (Killed (Sigyn (Spam is off topic on freenode.))) 2018-07-25T13:26:52Z Guest79333|: Voice your opinions at https://webchat.freenode.net/?channels=#freenode 2018-07-25T13:26:56Z OwenBarfield joined #lisp 2018-07-25T13:26:56Z justyns quit (Killed (Sigyn (Spam is off topic on freenode.))) 2018-07-25T13:26:59Z OwenBarfield: Hey, I thought you guys might be interested in this blog by freenode staff member Bryan 'kloeri' Ostergaard https://bryanostergaard.com/ 2018-07-25T13:27:02Z OwenBarfield: or maybe this blog by freenode staff member Matthew 'mst' Trout https://MattSTrout.com/ 2018-07-25T13:27:06Z OwenBarfield: Read what IRC investigative journalists have uncovered on the freenode pedophilia scandal https://encyclopediadramatica.rs/Freenodegate 2018-07-25T13:27:08Z OwenBarfield: Voice your opinions at https://webchat.freenode.net/?channels=#freenode 2018-07-25T13:27:41Z random-nick: how did we get 4 spambots in 4 minutes 2018-07-25T13:27:46Z random-nick: s/4/2/ 2018-07-25T13:28:28Z graphene joined #lisp 2018-07-25T13:28:32Z xificurC: what's behind the links? The last one looks legit 2018-07-25T13:30:08Z OwenBarfield quit (Remote host closed the connection) 2018-07-25T13:30:11Z random-nick: the last link or the last spambot? 2018-07-25T13:30:11Z Guest79333| quit (Remote host closed the connection) 2018-07-25T13:30:27Z random-nick: the last link is just webchat to connect to #freenode 2018-07-25T13:30:53Z _cosmonaut_ joined #lisp 2018-07-25T13:30:54Z random-nick: I don't know why, but it's common for spammers to tell you to go to #freenode 2018-07-25T13:31:13Z dlowe: that's the support channel for freenode 2018-07-25T13:31:27Z random-nick: yeah, but what's the point of sending users there 2018-07-25T13:31:31Z schweers: seems really silly to spam freenode with a link to an irc webchat on freenode 2018-07-25T13:31:42Z dlowe: they're trolling support 2018-07-25T13:31:45Z brendyn quit (Ping timeout: 248 seconds) 2018-07-25T13:31:50Z random-nick: schweers: they're spamming multiple networks 2018-07-25T13:31:59Z asarch joined #lisp 2018-07-25T13:32:00Z dlowe: the attack is on the networks, not on individuals in channels 2018-07-25T13:33:41Z armyriad| joined #lisp 2018-07-25T13:34:46Z armyriad| quit (Killed (Sigyn (Spam is off topic on freenode.))) 2018-07-25T13:35:32Z warweasle joined #lisp 2018-07-25T13:42:15Z graphene quit (Remote host closed the connection) 2018-07-25T13:43:01Z Guest16844 joined #lisp 2018-07-25T13:43:02Z Guest16844 quit (Remote host closed the connection) 2018-07-25T13:43:34Z graphene joined #lisp 2018-07-25T13:44:52Z graphene quit (Remote host closed the connection) 2018-07-25T13:45:57Z saki quit (Ping timeout: 264 seconds) 2018-07-25T13:46:01Z chiyosaki joined #lisp 2018-07-25T13:46:09Z graphene joined #lisp 2018-07-25T13:49:38Z captgector joined #lisp 2018-07-25T13:49:38Z gector quit (Read error: Connection reset by peer) 2018-07-25T13:50:20Z lemo quit (Remote host closed the connection) 2018-07-25T13:50:35Z lemo joined #lisp 2018-07-25T13:51:54Z subroot quit (Read error: Connection reset by peer) 2018-07-25T13:53:52Z graphene quit (Remote host closed the connection) 2018-07-25T13:55:09Z graphene joined #lisp 2018-07-25T13:55:21Z flamebeard quit 2018-07-25T13:55:25Z graphene quit (Remote host closed the connection) 2018-07-25T13:56:02Z brit_away joined #lisp 2018-07-25T13:56:18Z brit_away is now known as kingcons 2018-07-25T13:56:41Z graphene joined #lisp 2018-07-25T13:56:42Z vaporatorius quit (Quit: Leaving) 2018-07-25T13:58:19Z jmercouris quit (Ping timeout: 244 seconds) 2018-07-25T13:58:51Z xrash_ joined #lisp 2018-07-25T13:59:14Z xrash quit (Ping timeout: 256 seconds) 2018-07-25T14:03:33Z Inline joined #lisp 2018-07-25T14:03:58Z sjl_ quit (Ping timeout: 264 seconds) 2018-07-25T14:04:54Z xrash joined #lisp 2018-07-25T14:05:50Z xrash_ quit (Ping timeout: 276 seconds) 2018-07-25T14:06:18Z asarch: "There is more to Lisp than this, but the ability to bend Lisp to one’s will is a large part of what distinguishes a Lisp expert from a novice." 2018-07-25T14:06:56Z asarch: And "Experienced Lisp programmers build the language up toward their programs." 2018-07-25T14:06:59Z asarch: Wow! So powerful! 2018-07-25T14:07:07Z asarch: Paul Graham, On Lisp 2018-07-25T14:08:31Z daedreth joined #lisp 2018-07-25T14:08:44Z daedreth: jo? 2018-07-25T14:08:46Z daedreth: O . o 2018-07-25T14:08:54Z dlowe: despite his unofficial designation as "spokesman for lisp", pg's opinions on lisp are not that common. 2018-07-25T14:09:06Z subroot joined #lisp 2018-07-25T14:09:11Z heisig: One could also say "The wisdom not to bend Lisp to one's will on every occasion is a large part of what distinguishes a Lisp expert from a novice." :) 2018-07-25T14:09:19Z dlowe: and he has an idiosyncratic style 2018-07-25T14:09:22Z daedreth: I have a question. I'm working right now through Paul Grahams book. 2018-07-25T14:10:22Z daedreth: Why does (apply #'list 1 nil) evaluate to (1) and (funcall #'list 1 nil) to (1 nil) 2018-07-25T14:10:23Z daedreth: ? 2018-07-25T14:12:05Z ahmed111 joined #lisp 2018-07-25T14:13:19Z heisig: daedreth: The last argument to apply supplies a list of arguments (in this case, none) to the function, while the last argument to funcall is just another argument. 2018-07-25T14:13:29Z Arcaelyx_ quit (Read error: Connection reset by peer) 2018-07-25T14:14:09Z heisig: So for apply, LIST receives just one argument, 1. For FUNCALL, LIST receives two arguments, 1 and NIL. 2018-07-25T14:14:28Z Arcaelyx joined #lisp 2018-07-25T14:16:38Z daedreth: I think I got it, thanks. Recursion is still wrecking my brain a bit though. :D 2018-07-25T14:17:13Z Bike: s easy, you do a thing, and that thing does the thing which is the same thing as the thing you did 2018-07-25T14:17:38Z daedreth: > . < you are mean! 2018-07-25T14:17:49Z patlv quit (Ping timeout: 268 seconds) 2018-07-25T14:18:05Z heisig quit (Quit: Leaving) 2018-07-25T14:18:09Z daedreth: Q ~ Q My brain stack is not big enough. 2018-07-25T14:18:33Z dlowe: specifically, you break down a problem into smaller problems of exactly the same type until it can't be broken down any more. 2018-07-25T14:18:47Z Bike: i am mean 2018-07-25T14:18:53Z patlv joined #lisp 2018-07-25T14:18:57Z mindCrime joined #lisp 2018-07-25T14:19:31Z dlowe: think about how you would hit all the files in a directory tree. You scan through a directory, hitting all the files, but when you get to another directory, you want to do exactly the same thing to that one. 2018-07-25T14:20:29Z sjl_ joined #lisp 2018-07-25T14:20:40Z daedreth: I got that one. I guess it's just getting some experience. Fibonacci and in order tree traversel are alright. 2018-07-25T14:21:31Z Bike: well that's basically it. 2018-07-25T14:21:43Z ahmed111 quit (Quit: Bye) 2018-07-25T14:21:51Z Bike: is there some specific example you're not understanding? 2018-07-25T14:22:30Z xificurC: recursion is when you open a box and find 5 boxes 2018-07-25T14:22:37Z ahmed111 joined #lisp 2018-07-25T14:23:12Z daedreth: excercise 5b) of the second chapter in the PGs Ansi Common lisp book. 2018-07-25T14:23:15Z daedreth: page 29 2018-07-25T14:23:31Z vtomole: fwiw, I didn't understand recursion until I read The Little Schemer. 2018-07-25T14:23:55Z Bike: i don't have the book, so not much i can do for you there 2018-07-25T14:24:35Z beach quit (Ping timeout: 255 seconds) 2018-07-25T14:24:49Z daedreth: then let my type it out. (if I can figure out how to get line breaks in IRC. :D 2018-07-25T14:24:59Z ahmed111 quit (Client Quit) 2018-07-25T14:25:44Z jsjolen quit (Remote host closed the connection) 2018-07-25T14:25:46Z vtomole: Use Github gist or Paste.org 2018-07-25T14:26:19Z random-nick: IRC doesn't allow line breaks in messages 2018-07-25T14:26:21Z ahmed111 joined #lisp 2018-07-25T14:26:36Z beach joined #lisp 2018-07-25T14:26:41Z daedreth: https://github.com/clojurians-org/lisp-ebook the first book 2018-07-25T14:27:11Z Looking joined #lisp 2018-07-25T14:27:36Z Bike: that is probably copyright infringement. 2018-07-25T14:27:43Z Looking quit (Remote host closed the connection) 2018-07-25T14:27:58Z ahmed111 quit (Client Quit) 2018-07-25T14:28:28Z daedreth: I don't really care. The internet is still the internet. If something is out there, there's nothing you can do to stop it. 2018-07-25T14:28:50Z daedreth: I accept the fact, whenever I share anything. 2018-07-25T14:28:51Z ExeciN| joined #lisp 2018-07-25T14:29:20Z xificurC: I don't think the law would agree with your interpretation, or your beliefs 2018-07-25T14:29:39Z nika_ joined #lisp 2018-07-25T14:29:42Z beach: Indeed. 2018-07-25T14:29:43Z Bike: i don't care what you think, i don't want the channel or anyone else to get in legal trouble. 2018-07-25T14:29:48Z daedreth: I'm a criminal, that goes into IT security in order to not get screwed over. 2018-07-25T14:29:57Z daedreth: oh, then sorry 2018-07-25T14:29:57Z Bike: keep it to yourself 2018-07-25T14:29:59Z random-nick: well, you can download On Lisp free of charge nowadays from pg's site 2018-07-25T14:30:04Z ExeciN| quit (Remote host closed the connection) 2018-07-25T14:30:07Z daedreth: I didn't think about that. 2018-07-25T14:31:37Z ahmed111 joined #lisp 2018-07-25T14:31:41Z jfrancis_ joined #lisp 2018-07-25T14:31:46Z EvW joined #lisp 2018-07-25T14:32:03Z daedreth: but writing a LISP function into an IRC chat is horrible. LISP without proper indentation is almost unreadable. 2018-07-25T14:32:31Z beach: You write it in Emacs and then submit it to a pastebin. 2018-07-25T14:32:33Z patlv quit (Ping timeout: 248 seconds) 2018-07-25T14:32:35Z random-nick: daedreth: that's why you should upload it to a paste service first 2018-07-25T14:33:02Z ofi quit (Quit: rcirc on GNU Emacs 26.1) 2018-07-25T14:37:06Z daedreth: https://pastebin.com/M2fveRTx 2018-07-25T14:38:02Z daedreth: Now I understand why people always use pasterbin. It's a neat site that works even without enabled JavaScript. 2018-07-25T14:39:36Z xificurC: you can use ix.io or sprunge.us to bypass browsers as well 2018-07-25T14:39:55Z Kundry_Wag_ joined #lisp 2018-07-25T14:40:27Z beach: daedreth: So what's the question? Do you want to know what it does? 2018-07-25T14:40:56Z pjb: Learning recursion: https://youtu.be/LtlVQ6ianCs?t=81 2018-07-25T14:41:14Z daedreth: Yeah, what does the code. I'm really sure. 2018-07-25T14:41:29Z graphene quit (Remote host closed the connection) 2018-07-25T14:41:35Z daedreth: y is supposed to be a list that gets parsed or something. 2018-07-25T14:42:01Z beach: daedreth: It seems to return the position in the list of the value of X, or NIL if no such value exists. 2018-07-25T14:42:30Z beach: ... the position of the FIRST OCCURRENCE. 2018-07-25T14:42:31Z pppingme_ joined #lisp 2018-07-25T14:42:45Z graphene joined #lisp 2018-07-25T14:43:24Z daedreth: Now that I think about it. I could've just typed it into the repl and tested it. 2018-07-25T14:43:27Z daedreth: lel 2018-07-25T14:44:25Z Bike: yeah, but there's still stuff to see form the code even if you don't get the whole thing 2018-07-25T14:44:38Z Bike: for example, y has NULL, CAR,and CDR called on it, so it's probably supposed to be a list 2018-07-25T14:44:54Z Kevslinger joined #lisp 2018-07-25T14:45:04Z pppingme_ quit (Remote host closed the connection) 2018-07-25T14:45:10Z wheelsucker joined #lisp 2018-07-25T14:45:51Z ahmed111 quit (Read error: Connection reset by peer) 2018-07-25T14:46:23Z Smokitch quit 2018-07-25T14:46:24Z LdBeth: It isn’t tail recursive, does it? 2018-07-25T14:46:31Z daedreth: The think that's melting my brain is the else clause of the second if expression. 2018-07-25T14:46:33Z beach: Nope. 2018-07-25T14:46:39Z ahmed111 joined #lisp 2018-07-25T14:46:48Z beach: daedreth: Do you know anything about proof by induction from math? 2018-07-25T14:46:54Z beach: daedreth: It's the same stuff. 2018-07-25T14:46:55Z daedreth: yes 2018-07-25T14:47:08Z daedreth: should I proof it for u, sensei? 2018-07-25T14:47:25Z beach: daedreth: Let's say you want to find the position of the first occurrence of X in the list Y... 2018-07-25T14:47:35Z beach: daedreth: Base case, the list Y is empty. 2018-07-25T14:47:44Z pjb: So it was ((bat (((((((mario))))))))). 2018-07-25T14:47:55Z beach: daedreth: Then there is no occurrence of X, so you return NIL (meaning no occurrence). 2018-07-25T14:48:09Z daedreth: I got the base case, but the else clause... 2018-07-25T14:48:27Z daedreth: and the "and" inside the "let" 2018-07-25T14:48:36Z beach: daedreth: Then, if the first element of the list is X, then you found the first occurrence and its position is 0, so you return that. 2018-07-25T14:49:05Z beach: daedreth: If not, you find the first occurrence of X is the rest of the list (cdr y). 2018-07-25T14:49:15Z pjb: daedreth: sprunge.us was nicer, but it seems it doesn't work anymore. 2018-07-25T14:49:29Z chiyosaki quit (Ping timeout: 260 seconds) 2018-07-25T14:49:30Z daedreth: beach: got that 2018-07-25T14:49:48Z beach: daedreth: If the result of that recursive call is nil, then there is no occurrence, so you return NIL again (that's what (and NIL ...) does. 2018-07-25T14:50:24Z daedreth: so the "and" is to make sure, that everything up the stack evaluates to nil. 2018-07-25T14:50:25Z beach: daedreth: Finally, if the result of the recursive call is not NIL then by induction it is the position of the first occurrence of X in the rest of the list (cdr y). 2018-07-25T14:50:43Z beach: So you return 1 + that position, because the list is one element longer. 2018-07-25T14:51:00Z beach: daedreth: He should not have written it that way. It is not good style. 2018-07-25T14:51:23Z beach: daedreth: He should have written (if (null z) nil (1+ z)) 2018-07-25T14:51:49Z daedreth: (+ 1 z) :p 2018-07-25T14:52:09Z daedreth: ok, I let me think about this a minute. 2018-07-25T14:52:10Z beach: (+ 1) is better written (1+ ) 2018-07-25T14:52:14Z saki joined #lisp 2018-07-25T14:52:14Z pjb: (1+ x) is not (+ 1 x) but (+ x 1)! 2018-07-25T14:52:21Z pjb: (1- x) is not (- 1 x) but (- x 1)! 2018-07-25T14:52:36Z pjb: think successor, and predecessor. 2018-07-25T14:52:42Z pjb: succ(x) and pred(x) in Pascal. 2018-07-25T14:53:00Z LdBeth: Emm, he could definitely write a loop 2018-07-25T14:53:18Z pjb: but writing loops would involve more variables, therefore more naming. 2018-07-25T14:53:19Z beach: daedreth: So you see, a recursive program has the same structure as a proof by induction. 2018-07-25T14:53:50Z beach: ... or rather, it should, in order to be understandable. 2018-07-25T14:54:00Z shka: :D 2018-07-25T14:54:19Z mindCrime quit (Quit: Leaving) 2018-07-25T14:54:22Z knusbaum quit (Ping timeout: 264 seconds) 2018-07-25T14:55:09Z daedreth: ok, I got it. If you find x at position 3 for example, it will return (+ 3 1) at the end of the 3rd recursive call, because that's the last thing, that get's evaluated int the "and". 2018-07-25T14:55:12Z daedreth: right? 2018-07-25T14:55:26Z pjb: right. 2018-07-25T14:55:36Z pjb: (macroexpand-1 '(and x (+ 1 l))) #| --> (if x (and (+ 1 l))) ; t |# 2018-07-25T14:55:47Z pjb: (macroexpand-1 '(and (+ 1 l))) #| --> (+ 1 l) ; t |# 2018-07-25T14:55:54Z beach: daedreth: Now, of course, no sane experienced Common Lisp programmer would write code that way. But it's a good exercise. 2018-07-25T14:56:35Z pjb: (+ (or 2018-07-25T14:56:42Z hiroaki joined #lisp 2018-07-25T14:56:54Z pjb: (1+ (or (mystery x (cdr y)) 0)) 2018-07-25T14:57:03Z Corvus`_ joined #lisp 2018-07-25T14:57:03Z Corvus`_: Hey, I thought you guys might be interested in this blog by freenode staff member Bryan 'kloeri' Ostergaard https://bryanostergaard.com/ 2018-07-25T14:57:03Z Corvus`_: or maybe this blog by freenode staff member Matthew 'mst' Trout https://MattSTrout.com/ 2018-07-25T14:57:03Z Corvus`_: Read what IRC investigative journalists have uncovered on the freenode pedophilia scandal https://encyclopediadramatica.rs/Freenodegate 2018-07-25T14:57:06Z Corvus`_: 2018-07-25T14:57:09Z Corvus`_: This message was brought to you by Private Internet Access 2018-07-25T14:57:14Z daedreth: (ಥ╭͜ʖ╮ಥ) 2018-07-25T14:57:15Z beach: pjb: Are you showing various unacceptable solutions? 2018-07-25T14:57:29Z Kundry_Wag quit (Remote host closed the connection) 2018-07-25T14:57:32Z pjb: I find it acceptable. 2018-07-25T14:57:33Z Corvus`_ quit (Killed (Sigyn (Spam is off topic on freenode.))) 2018-07-25T14:57:36Z dddddd quit (Remote host closed the connection) 2018-07-25T14:58:03Z shka: damn spammers 2018-07-25T14:58:15Z daedreth: "– American Patriot and known Pedo Positive Timothy James McVeigh" 2018-07-25T14:58:16Z xrash quit (Read error: Connection reset by peer) 2018-07-25T14:58:41Z pjb: But the thing is that often the data flow is more complex, so you cannot use this kind of concise form. 2018-07-25T14:59:01Z smurfrobot quit (Remote host closed the connection) 2018-07-25T15:00:34Z daedreth: I thought I could just casually read through "ANSI Common LISP", but those excercises won't let me pass if I'm unworthy. It's fun though. ^^ 2018-07-25T15:00:44Z shka: this spammer seems to be rather... unstable 2018-07-25T15:01:15Z beach: daedreth: You will get it eventually. 2018-07-25T15:01:44Z graphene quit (Remote host closed the connection) 2018-07-25T15:02:02Z daedreth: The ultimate goal is to be able to use all my knowledge to create the ultimate goal of every programmer. The perfect Emacs configuration. 2018-07-25T15:02:05Z beach: daedreth: Also, just like a proof by induction, you will always see the base case first. If not, you will leave the poor person reading your code in suspense. 2018-07-25T15:02:27Z daedreth: ^agreed 2018-07-25T15:03:10Z graphene joined #lisp 2018-07-25T15:03:22Z FreeBirdLjj joined #lisp 2018-07-25T15:04:21Z LdBeth would finally find out Emacs sucks and the ultimate goal switched to making a new wheel 2018-07-25T15:04:57Z subroot quit (Quit: Leaving) 2018-07-25T15:05:23Z daedreth: Hah! Jokes on you. I'm not a native english speaker, so I didn't got the joke. 2018-07-25T15:05:33Z daedreth: xD 2018-07-25T15:05:51Z daedreth: didn't get* 2018-07-25T15:05:54Z daedreth: ahem 2018-07-25T15:08:09Z jfrancis_ quit (Remote host closed the connection) 2018-07-25T15:08:20Z Asorailahd16 joined #lisp 2018-07-25T15:08:21Z Asorailahd16: Hey, I thought you guys might be interested in this blog by freenode staff member Bryan 'kloeri' Ostergaard https://bryanostergaard.com/ 2018-07-25T15:08:21Z Asorailahd16: or maybe this blog by freenode staff member Matthew 'mst' Trout https://MattSTrout.com/ 2018-07-25T15:08:21Z Asorailahd16: Read what IRC investigative journalists have uncovered on the freenode pedophilia scandal https://encyclopediadramatica.rs/Freenodegate 2018-07-25T15:08:23Z Asorailahd16: 2018-07-25T15:08:26Z Asorailahd16: This message was brought to you by Private Internet Access 2018-07-25T15:08:32Z Asorailahd16 quit (Killed (Sigyn (Spam is off topic on freenode.))) 2018-07-25T15:08:32Z shka: jesus christ 2018-07-25T15:08:43Z jfrancis_ joined #lisp 2018-07-25T15:09:19Z daedreth: I'm afraid to click any of those links. 2018-07-25T15:09:30Z Bike: don't 2018-07-25T15:09:49Z Remco16 joined #lisp 2018-07-25T15:09:53Z shka: guy seems to have some serious mental issues 2018-07-25T15:10:35Z random-nick: daedreth: don't, they're just slander about some freenode opers 2018-07-25T15:11:44Z Remco16 quit (Remote host closed the connection) 2018-07-25T15:12:09Z LdBeth: I’m sure matrix has filtered something 2018-07-25T15:12:14Z Kundry_Wag_ quit (Ping timeout: 260 seconds) 2018-07-25T15:12:32Z jdz: Clicking random links in 2018 is asking for trouble. 2018-07-25T15:12:42Z daedreth: beach: If I ever meet you in real life. You'll get not just one, but TWO cookies. <3 2018-07-25T15:12:57Z jfrancis_ quit (Ping timeout: 240 seconds) 2018-07-25T15:13:10Z graphene quit (Remote host closed the connection) 2018-07-25T15:13:16Z daedreth: That's why everyone should have JavaScript disabled by default. 2018-07-25T15:13:16Z LdBeth the cake is a lie 2018-07-25T15:13:42Z daedreth: I'm not the person to make such jokes. 2018-07-25T15:14:09Z daedreth: If I ever meet him/her I will run to a store and buy that fucking box of cookies. 2018-07-25T15:14:27Z graphene joined #lisp 2018-07-25T15:15:44Z azrazalea quit (Ping timeout: 260 seconds) 2018-07-25T15:17:46Z beach: daedreth: Can we make that a beer instead? 2018-07-25T15:17:55Z fikka joined #lisp 2018-07-25T15:18:14Z beach: daedreth: Just show up at ELS 2019 in Geoa. 2018-07-25T15:18:21Z daedreth: :) ofc 2018-07-25T15:18:32Z azrazalea joined #lisp 2018-07-25T15:19:08Z beach: https://european-lisp-symposium.org/2019/index.html 2018-07-25T15:20:00Z lemo quit (Remote host closed the connection) 2018-07-25T15:20:17Z lemo joined #lisp 2018-07-25T15:20:31Z daedreth: I would have to polish my almost non existent italian. 2018-07-25T15:20:56Z beach: I am betting they speak English. 2018-07-25T15:21:59Z Cory26 joined #lisp 2018-07-25T15:22:21Z Cory26 quit (Killed (Sigyn (Spam is off topic on freenode.))) 2018-07-25T15:22:32Z fikka quit (Ping timeout: 256 seconds) 2018-07-25T15:22:43Z daedreth: I haven't been on any meetup yet. But it would probably be a nice experience though. 2018-07-25T15:23:05Z beach: There are usually nearly 100 people attending. 2018-07-25T15:23:58Z beach: daedreth: Some of us also sometimes meet on other occasions. 2018-07-25T15:24:03Z jfrancis_ joined #lisp 2018-07-25T15:25:50Z graphene quit (Remote host closed the connection) 2018-07-25T15:26:17Z daedreth: I'm a poor student though. ^ - ^ 2018-07-25T15:26:51Z EvW quit (Ping timeout: 265 seconds) 2018-07-25T15:27:12Z graphene joined #lisp 2018-07-25T15:27:38Z LdBeth: ╮( ̄▽ ̄"")╭me too 2018-07-25T15:27:48Z daedreth: living each day as if it were my last and scraping up leftovers from trash cans in order to able to save up some money for the electricity which is needed for my beloved computer in order to learn LISP. 2018-07-25T15:27:56Z ahmed111 quit (Quit: Bye) 2018-07-25T15:28:16Z ahmed111 joined #lisp 2018-07-25T15:30:01Z Zhivago: You don't need electricity for that -- you can always scratch s-exps in the dirt and resolve them manually. 2018-07-25T15:30:33Z aindilis: hi daedreth 2018-07-25T15:30:43Z daedreth: jo 2018-07-25T15:30:56Z aindilis: I used to scrape out of trashcans 2018-07-25T15:31:07Z aindilis: and I have been working on the perfect emacs configuration 2018-07-25T15:31:34Z daedreth: aindlilis: Wanna be best friends for ever? 2018-07-25T15:31:40Z aindilis: sure! 2018-07-25T15:31:49Z daedreth: nice! 2018-07-25T15:32:11Z aindilis: so tell me more 2018-07-25T15:32:20Z daedreth: uhhh...hm... 2018-07-25T15:32:39Z beach: Let's stick to the topic please. 2018-07-25T15:32:44Z daedreth: ^ 2018-07-25T15:32:56Z ahmed111 quit (Client Quit) 2018-07-25T15:33:25Z daedreth: (agreementp (agree (+ 0 1)) --> T 2018-07-25T15:33:31Z ahmed111 joined #lisp 2018-07-25T15:34:09Z beach: There is #lispcafe for discussions that don't belong here. 2018-07-25T15:35:59Z jmercouris joined #lisp 2018-07-25T15:36:28Z jmercouris: I have a design in my program that already works, you have commands, and command-completions 2018-07-25T15:36:37Z fikka joined #lisp 2018-07-25T15:36:37Z jmercouris: a command is function that you can invoke 2018-07-25T15:36:52Z jmercouris: a command completion is a function that you can invoke with a string representing a function call, and it helps you complete it 2018-07-25T15:36:59Z jmercouris: https://gist.github.com/bce04b7cbdb5d3604cc1b54ebd2110b6 2018-07-25T15:37:20Z jmercouris: as you can see, there is a (define-command) and (define-command-completion) macro 2018-07-25T15:37:34Z jmercouris: I don't like the way that these are coupled together, as defined-command-completion depends upon define-command 2018-07-25T15:37:48Z jmercouris: sometimes, in my image, it seems that a command completion will not be correctly associated with a command 2018-07-25T15:37:55Z Kundry_Wag joined #lisp 2018-07-25T15:37:56Z jmercouris: any suggestions ideas are appreciated 2018-07-25T15:38:07Z brand024 joined #lisp 2018-07-25T15:38:13Z jmercouris: s/suggestions ideas/suggestions or ideas 2018-07-25T15:38:13Z brand024 quit (Remote host closed the connection) 2018-07-25T15:38:38Z lemo quit (Read error: Connection reset by peer) 2018-07-25T15:39:37Z LdBeth: Do you want completions to be inherited? 2018-07-25T15:41:09Z jmercouris: LdBeth: what do you mean by inherited? 2018-07-25T15:41:18Z jmercouris: I want a completion function to somehow be associated with a command 2018-07-25T15:44:29Z beach: jmercouris: Perhaps at this point you are ready to see how it works in CLIM. There is the concept of commands, but also of presentations types. 2018-07-25T15:45:12Z erratic quit (Ping timeout: 256 seconds) 2018-07-25T15:47:20Z schweers quit (Ping timeout: 245 seconds) 2018-07-25T15:48:01Z kenster joined #lisp 2018-07-25T15:48:54Z jmercouris: beach: presentation types? 2018-07-25T15:49:07Z beach: Yes, the very essence of CLIM. 2018-07-25T15:49:29Z beach: Brilliant stuff. Makes the applications way more modular. 2018-07-25T15:49:34Z jmercouris: Okay, let me go ahead and clone the repository 2018-07-25T15:49:57Z megalography quit (Ping timeout: 240 seconds) 2018-07-25T15:50:09Z beach: Essentially, when you draw some figure in a window, you can assign a presentation type to it. 2018-07-25T15:50:52Z beach: Then if you have a command that accepts arguments of a certain presentation type, instead of typing those arguments, all figures of that presentation type become clickable. 2018-07-25T15:51:02Z beach: Or, you can use completion. 2018-07-25T15:51:15Z jmercouris: interesting 2018-07-25T15:51:32Z jmercouris: I assume commands are objects and presentation types are classes? 2018-07-25T15:51:50Z beach: Sort of. 2018-07-25T15:52:16Z beach: Presentation types have a few more features than classes do. 2018-07-25T15:52:33Z bsund joined #lisp 2018-07-25T15:52:33Z ahmed111 quit (Ping timeout: 264 seconds) 2018-07-25T15:52:37Z jmercouris: Is there some example in the codebase I can look at? 2018-07-25T15:52:43Z jmercouris: in the examples dir? 2018-07-25T15:52:51Z rippa joined #lisp 2018-07-25T15:53:06Z beach: Sure, there is always the typical address-book demo. 2018-07-25T15:53:13Z beach: It shows the essence. 2018-07-25T15:53:16Z jmercouris: A classic demo 2018-07-25T15:53:20Z beach: Yes. 2018-07-25T15:54:05Z jmercouris: why do they wrap (make-instance 'address) in a function (make-address)? is this a thing I should be doing? 2018-07-25T15:54:32Z beach: Opinions differ. 2018-07-25T15:54:47Z beach: Sonja Keene favors such explicit "constructors". 2018-07-25T15:54:58Z beach: You can read her explanation of why. 2018-07-25T15:56:00Z pjb: Using clisp for GNU make commands: https://pastebin.com/raw/wewdn1Z4 2018-07-25T15:56:06Z optikalmouse joined #lisp 2018-07-25T15:56:11Z pjb: Now of course, clisp is forked a new for each command. 2018-07-25T15:56:32Z rozenglass quit (Ping timeout: 256 seconds) 2018-07-25T15:56:49Z pjb: But you could use the GNU make option .ONESHELL: to have a single instance process all the commands of each rule. 2018-07-25T15:57:10Z graphene quit (Remote host closed the connection) 2018-07-25T15:57:50Z jmercouris: pjb: have you been inspired? 2018-07-25T15:58:15Z jmercouris: beach: here's another strange thing, hanging parenthesis 2018-07-25T15:58:25Z jmercouris: line number 56 as part of a progn 2018-07-25T15:58:30Z jmercouris: I assume that is not an accident? 2018-07-25T15:58:32Z graphene joined #lisp 2018-07-25T15:58:39Z beach: Sounds bad. 2018-07-25T15:59:04Z pjb: for example: https://pastebin.com/raw/J9CP8UMU 2018-07-25T15:59:15Z jmercouris: apparently Mike McDonald is to blame 2018-07-25T15:59:16Z beach: jmercouris: I'll fix it some time. 2018-07-25T15:59:21Z jmercouris: it's part of the initial check-in 2018-07-25T15:59:29Z fikka quit (Ping timeout: 248 seconds) 2018-07-25T15:59:41Z jmercouris: anyways, time to read about presentations 2018-07-25T15:59:52Z pjb: I've seen worse makefiles that a makefile that would use a different interpreter than bash for its commands… 2018-07-25T15:59:57Z beach: jmercouris: There is a paper about them. CLIM is based on the paper. 2018-07-25T16:00:11Z jmercouris: I mean in the source code 2018-07-25T16:01:08Z jmercouris: ah, so a define-presentation-method is a presentation method that specializes on a presentation-type? 2018-07-25T16:01:33Z matze6 joined #lisp 2018-07-25T16:01:34Z jmercouris: or not specializes, but can be made to specialize like this: (define-presentation-method present (object (type address) stream view &key) 2018-07-25T16:01:36Z matze6: Hey, I thought you guys might be interested in this blog by freenode staff member Bryan 'kloeri' Ostergaard https://bryanostergaard.com/ 2018-07-25T16:01:39Z matze6: or maybe this blog by freenode staff member Matthew 'mst' Trout https://MattSTrout.com/ 2018-07-25T16:01:43Z matze6: Read what IRC investigative journalists have uncovered on the freenode pedophilia scandal https://encyclopediadramatica.rs/Freenodegate 2018-07-25T16:01:46Z matze6: 2018-07-25T16:01:48Z matze6: This message was brought to you by Private Internet Access 2018-07-25T16:01:54Z jmercouris: Lol what 2018-07-25T16:02:01Z jmercouris: I wish I could ban this person 2018-07-25T16:02:02Z beach: jmercouris: Pretty much, yes. 2018-07-25T16:02:10Z jmercouris: interesting! 2018-07-25T16:02:14Z jmercouris: You know, that is a good idea, I like it 2018-07-25T16:02:19Z ChanServ has set mode +o Xach 2018-07-25T16:02:23Z Xach has set mode +b *!*matze@123.21.28.* 2018-07-25T16:02:25Z matze6 [~xach@pdpc/supporter/professional/xach] has been kicked from #lisp by Xach (matze6) 2018-07-25T16:02:31Z Xach has set mode -o Xach 2018-07-25T16:02:45Z vh0st- quit (Quit: WeeChat 2.2-dev) 2018-07-25T16:02:48Z jmercouris: maybe I don't have to actually make my own presentation-type or whatever, maybe I could just in fact specialize methods 2018-07-25T16:03:03Z vhost- joined #lisp 2018-07-25T16:03:03Z vhost- quit (Changing host) 2018-07-25T16:03:03Z vhost- joined #lisp 2018-07-25T16:03:06Z jmercouris: I feel like it could be possible just using CLOS, in an elegant way 2018-07-25T16:03:54Z jmercouris: this is impressively short for an address book app, only 201 lines in total 2018-07-25T16:03:57Z jmercouris: and no magic either 2018-07-25T16:04:00Z jmercouris: which is what I really like 2018-07-25T16:04:12Z beach: Yes, CLIM appliations can be very short. 2018-07-25T16:05:35Z optikalmouse: jmercouris: where's the code? I've seen some python qt apps that are relatively tiny, at least compared to C#, Java, Android/iOS, etc. 2018-07-25T16:05:55Z optikalmouse: 201 lines for an address book...don't think python can beat that 2018-07-25T16:06:07Z megalography joined #lisp 2018-07-25T16:06:22Z beach: optikalmouse: McCLIM/Examples/address-book.lisp 2018-07-25T16:08:11Z graphene quit (Remote host closed the connection) 2018-07-25T16:09:11Z jmercouris: optikalmouse: https://github.com/McCLIM/McCLIM/blob/master/Examples/address-book.lisp 2018-07-25T16:09:33Z graphene joined #lisp 2018-07-25T16:10:10Z thunderrd1 joined #lisp 2018-07-25T16:10:13Z thunderrd1: Hey, I thought you guys might be interested in this blog by freenode staff member Bryan 'kloeri' Ostergaard https://bryanostergaard.com/ 2018-07-25T16:10:16Z thunderrd1: or maybe this blog by freenode staff member Matthew 'mst' Trout https://MattSTrout.com/ 2018-07-25T16:10:20Z thunderrd1: Read what IRC investigative journalists have uncovered on the freenode pedophilia scandal https://encyclopediadramatica.rs/Freenodegate 2018-07-25T16:10:20Z shka: i strongly follow this guide https://i.pinimg.com/originals/a3/0a/68/a30a68dcdf20ae4730f4c864a6e2875c.jpg 2018-07-25T16:10:23Z thunderrd1 quit (K-Lined) 2018-07-25T16:10:34Z shka: best book ever :P 2018-07-25T16:13:13Z optikalmouse: oh sweet jesus 2018-07-25T16:13:22Z optikalmouse: those totalitarians are at it again 2018-07-25T16:13:40Z optikalmouse: and infecting #lisp!? come on :( 2018-07-25T16:16:02Z varjag joined #lisp 2018-07-25T16:19:49Z vultyre joined #lisp 2018-07-25T16:21:34Z jack34 joined #lisp 2018-07-25T16:21:37Z jack34: Hey, I thought you guys might be interested in this blog by freenode staff member Bryan 'kloeri' Ostergaard https://bryanostergaard.com/ 2018-07-25T16:21:41Z jack34: or maybe this blog by freenode staff member Matthew 'mst' Trout https://MattSTrout.com/ 2018-07-25T16:21:44Z jack34: Read what IRC investigative journalists have uncovered on the freenode pedophilia scandal https://encyclopediadramatica.rs/Freenodegate 2018-07-25T16:21:47Z jack34: 2018-07-25T16:21:50Z jack34: This message was brought to you by Private Internet Access 2018-07-25T16:22:23Z jmercouris: is it possible to temporarily make this channel invite only? 2018-07-25T16:23:07Z jmercouris quit (Remote host closed the connection) 2018-07-25T16:23:33Z jack34 quit (Killed (Sigyn (Spam is off topic on freenode.))) 2018-07-25T16:29:26Z fikka joined #lisp 2018-07-25T16:30:39Z patlv joined #lisp 2018-07-25T16:30:40Z kenster: I'm streaming some Common lisp programming: https://youtu.be/y1yiYUJ7sFw or https://www.twitch.tv/kingherring 2018-07-25T16:31:13Z optikalmouse: :O 2018-07-25T16:32:40Z lumm quit (Ping timeout: 256 seconds) 2018-07-25T16:32:46Z lumm_ joined #lisp 2018-07-25T16:33:06Z lumm_ is now known as lumm 2018-07-25T16:35:16Z beach: jackdaniel: Around? 2018-07-25T16:37:46Z hhdave quit (Ping timeout: 256 seconds) 2018-07-25T16:38:28Z fikka quit (Ping timeout: 256 seconds) 2018-07-25T16:39:27Z fikka joined #lisp 2018-07-25T16:43:35Z pagnol quit (Ping timeout: 240 seconds) 2018-07-25T16:44:30Z easye` quit (Quit: ERC (IRC client for Emacs 24.5.1)) 2018-07-25T16:44:39Z Denommus joined #lisp 2018-07-25T16:44:44Z easye joined #lisp 2018-07-25T16:45:58Z jfrancis_ quit (Ping timeout: 264 seconds) 2018-07-25T16:46:34Z eli_oat quit (Quit: eli_oat) 2018-07-25T16:48:28Z optikalmouse: kenster: neato 2018-07-25T16:48:36Z optikalmouse: following and watching along :D -> https://www.twitch.tv/kingherring 2018-07-25T16:49:17Z eli_oat joined #lisp 2018-07-25T16:49:31Z fikka quit (Ping timeout: 268 seconds) 2018-07-25T16:52:12Z graphene quit (Remote host closed the connection) 2018-07-25T16:53:08Z labviking joined #lisp 2018-07-25T16:53:08Z labviking: Hey, I thought you guys might be interested in this blog by freenode staff member Bryan 'kloeri' Ostergaard https://bryanostergaard.com/ 2018-07-25T16:53:08Z labviking: or maybe this blog by freenode staff member Matthew 'mst' Trout https://MattSTrout.com/ 2018-07-25T16:53:08Z labviking: Read what IRC investigative journalists have uncovered on the freenode pedophilia scandal https://encyclopediadramatica.rs/Freenodegate 2018-07-25T16:53:11Z labviking: 2018-07-25T16:53:14Z labviking: This message was brought to you by Private Internet Access 2018-07-25T16:53:35Z lumm quit (Quit: lumm) 2018-07-25T16:53:45Z graphene joined #lisp 2018-07-25T16:53:57Z labviking quit (Killed (Sigyn (Spam is off topic on freenode.))) 2018-07-25T16:54:08Z lumm joined #lisp 2018-07-25T16:54:30Z MoziM joined #lisp 2018-07-25T16:55:00Z papachan: spam? 2018-07-25T16:55:06Z Bike: yes. 2018-07-25T16:56:33Z jackdaniel: beach: now I am 2018-07-25T16:57:27Z ChanServ has set mode +o jackdaniel 2018-07-25T16:57:29Z ahmed111 joined #lisp 2018-07-25T16:57:53Z vultyre quit (Quit: Leaving) 2018-07-25T16:58:03Z jackdaniel has set mode +ob Bike shka!*@* 2018-07-25T16:58:42Z Bike: ? 2018-07-25T16:59:02Z jackdaniel: this will last for this session (if you part channel you'll be left) 2018-07-25T16:59:21Z jackdaniel: I see you are active (and I won't be around today), so in case of spam you may kick them 2018-07-25T16:59:31Z Bike: ok. did you ban shka? 2018-07-25T16:59:39Z Bike: or me or... what. 2018-07-25T16:59:40Z _cosmonaut_ quit (Ping timeout: 244 seconds) 2018-07-25T16:59:45Z jackdaniel: wait, did I? 2018-07-25T16:59:46Z jackdaniel: hm 2018-07-25T17:00:14Z jackdaniel: I've typed "/mode +o Bike beach shka" 2018-07-25T17:00:52Z jackdaniel has set mode -b shka!*@* 2018-07-25T17:00:55Z jackdaniel has set mode -b Bike!*@* 2018-07-25T17:00:55Z graphene quit (Remote host closed the connection) 2018-07-25T17:01:02Z jackdaniel has set mode -b beach!*@* 2018-07-25T17:01:09Z jackdaniel: sorry! 2018-07-25T17:02:11Z graphene joined #lisp 2018-07-25T17:04:07Z jackdaniel has set mode +o shka 2018-07-25T17:04:09Z kajo joined #lisp 2018-07-25T17:04:09Z jackdaniel has set mode +o beach 2018-07-25T17:04:11Z jackdaniel has set mode +o Bike 2018-07-25T17:04:33Z jackdaniel: I've listed all bans and it seems I didn't do anything else, once again sorry for the noise/confusion 2018-07-25T17:05:18Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-25T17:07:46Z jackdaniel has set mode -o jackdaniel 2018-07-25T17:07:48Z megalography quit (Ping timeout: 256 seconds) 2018-07-25T17:08:34Z jfrancis_ joined #lisp 2018-07-25T17:09:40Z Kundry_Wag_ joined #lisp 2018-07-25T17:11:52Z shka1 joined #lisp 2018-07-25T17:13:36Z c0ded joined #lisp 2018-07-25T17:13:39Z c0ded: Hey, I thought you guys might be interested in this blog by freenode staff member Bryan 'kloeri' Ostergaard https://bryanostergaard.com/ 2018-07-25T17:13:42Z c0ded: or maybe this blog by freenode staff member Matthew 'mst' Trout https://MattSTrout.com/ 2018-07-25T17:13:46Z c0ded: Read what IRC investigative journalists have uncovered on the freenode pedophilia scandal https://encyclopediadramatica.rs/Freenodegate 2018-07-25T17:13:49Z c0ded: 2018-07-25T17:13:52Z c0ded: This message was brought to you by Private Internet Access 2018-07-25T17:13:56Z ChanServ has set mode +o jackdaniel 2018-07-25T17:13:57Z c0ded quit (Killed (Sigyn (Spam is off topic on freenode.))) 2018-07-25T17:14:47Z Einwq joined #lisp 2018-07-25T17:20:30Z megalography joined #lisp 2018-07-25T17:25:12Z m00natic quit (Remote host closed the connection) 2018-07-25T17:26:20Z fikka joined #lisp 2018-07-25T17:27:29Z ffernand3 joined #lisp 2018-07-25T17:27:33Z ffernand3: Hey, I thought you guys might be interested in this blog by freenode staff member Bryan 'kloeri' Ostergaard https://bryanostergaard.com/ 2018-07-25T17:27:36Z ffernand3: or maybe this blog by freenode staff member Matthew 'mst' Trout https://MattSTrout.com/ 2018-07-25T17:27:39Z ffernand3: Read what IRC investigative journalists have uncovered on the freenode pedophilia scandal https://encyclopediadramatica.rs/Freenodegate 2018-07-25T17:27:42Z ffernand3: 2018-07-25T17:27:45Z ffernand3: This message was brought to you by Private Internet Access 2018-07-25T17:27:45Z LiamH left #lisp 2018-07-25T17:27:51Z ffernand3 quit (Killed (Sigyn (Spam is off topic on freenode.))) 2018-07-25T17:29:00Z badpixel16 joined #lisp 2018-07-25T17:29:04Z badpixel16: Hey, I thought you guys might be interested in this blog by freenode staff member Bryan 'kloeri' Ostergaard https://bryanostergaard.com/ 2018-07-25T17:29:07Z badpixel16: or maybe this blog by freenode staff member Matthew 'mst' Trout https://MattSTrout.com/ 2018-07-25T17:29:10Z badpixel16: Read what IRC investigative journalists have uncovered on the freenode pedophilia scandal https://encyclopediadramatica.rs/Freenodegate 2018-07-25T17:29:13Z badpixel16: 2018-07-25T17:29:16Z badpixel16: This message was brought to you by Private Internet Access 2018-07-25T17:29:22Z badpixel16 quit (Killed (Sigyn (Spam is off topic on freenode.))) 2018-07-25T17:30:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-25T17:30:54Z guntbert13 joined #lisp 2018-07-25T17:30:55Z guntbert13: Hey, I thought you guys might be interested in this blog by freenode staff member Bryan 'kloeri' Ostergaard https://bryanostergaard.com/ 2018-07-25T17:30:55Z guntbert13: or maybe this blog by freenode staff member Matthew 'mst' Trout https://MattSTrout.com/ 2018-07-25T17:30:55Z guntbert13: Read what IRC investigative journalists have uncovered on the freenode pedophilia scandal https://encyclopediadramatica.rs/Freenodegate 2018-07-25T17:30:58Z guntbert13: This message was brought to you by Private Internet Access. Voice your opinions at https://webchat.freenode.net/?channels=%23freenode 2018-07-25T17:31:01Z guntbert13: 2018-07-25T17:31:26Z guntbert13 quit (Killed (Sigyn (Spam is off topic on freenode.))) 2018-07-25T17:35:42Z msb quit (Ping timeout: 256 seconds) 2018-07-25T17:35:43Z trittweiler: Can we set +r as the channel mode? This will prevent unregistered users from joining. I assume those spammers are not actually identified. 2018-07-25T17:35:57Z trittweiler: that would be /mode #lisp +r 2018-07-25T17:36:30Z trittweiler: I'm not seeing them in #emacs which does have +r 2018-07-25T17:36:45Z fikka joined #lisp 2018-07-25T17:37:24Z Bike: i suppose it will be hard to use the channel today otherwise 2018-07-25T17:37:37Z Bike: any objection? 2018-07-25T17:38:21Z msb joined #lisp 2018-07-25T17:41:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-25T17:41:39Z orivej joined #lisp 2018-07-25T17:42:09Z patlv quit (Ping timeout: 260 seconds) 2018-07-25T17:43:10Z Kundry_Wag_ quit (Ping timeout: 268 seconds) 2018-07-25T17:43:21Z random-nick quit (Read error: Connection reset by peer) 2018-07-25T17:44:01Z rozenglass joined #lisp 2018-07-25T17:45:05Z msb quit (Ping timeout: 240 seconds) 2018-07-25T17:46:23Z jackdaniel has set mode +r 2018-07-25T17:46:49Z jackdaniel: I suppose none 2018-07-25T17:46:56Z fikka joined #lisp 2018-07-25T17:47:04Z Inline: nope 2018-07-25T17:47:24Z msb joined #lisp 2018-07-25T17:47:26Z Inline: no problem 2018-07-25T17:47:44Z jackdaniel: I'll lift it tomorrow (given I won't forget) 2018-07-25T17:47:45Z megalography quit (Ping timeout: 264 seconds) 2018-07-25T17:50:25Z optikalmouse quit (Ping timeout: 248 seconds) 2018-07-25T17:50:49Z jfrancis_ quit (Remote host closed the connection) 2018-07-25T17:51:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-25T17:52:01Z patlv joined #lisp 2018-07-25T17:57:28Z fikka joined #lisp 2018-07-25T17:59:04Z daedreth left #lisp 2018-07-25T18:01:32Z megalography joined #lisp 2018-07-25T18:02:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-25T18:04:46Z Wojciech_K joined #lisp 2018-07-25T18:07:05Z ahmed111 quit (Quit: Bye) 2018-07-25T18:07:20Z hiroaki quit (Ping timeout: 255 seconds) 2018-07-25T18:07:37Z fikka joined #lisp 2018-07-25T18:08:57Z rozenglass quit (Ping timeout: 240 seconds) 2018-07-25T18:12:46Z fikka quit (Ping timeout: 268 seconds) 2018-07-25T18:15:22Z patlv quit (Ping timeout: 264 seconds) 2018-07-25T18:17:04Z Khisanth quit (Ping timeout: 256 seconds) 2018-07-25T18:17:27Z random-nick joined #lisp 2018-07-25T18:18:22Z Cthulhux quit (Changing host) 2018-07-25T18:18:22Z Cthulhux joined #lisp 2018-07-25T18:21:52Z al-damiri joined #lisp 2018-07-25T18:23:09Z nika_ quit (Quit: Leaving...) 2018-07-25T18:26:15Z test1600 joined #lisp 2018-07-25T18:27:36Z fikka joined #lisp 2018-07-25T18:28:26Z sauvin quit (Read error: Connection reset by peer) 2018-07-25T18:30:57Z rozenglass joined #lisp 2018-07-25T18:31:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-25T18:37:26Z Khisanth joined #lisp 2018-07-25T18:38:10Z fikka joined #lisp 2018-07-25T18:43:23Z fikka quit (Ping timeout: 276 seconds) 2018-07-25T18:47:56Z vtomole: stylewarning: Hi 2018-07-25T18:48:07Z fikka joined #lisp 2018-07-25T18:48:41Z Guest16049 is now known as karstensrage 2018-07-25T18:49:02Z karstensrage quit (Changing host) 2018-07-25T18:49:02Z karstensrage joined #lisp 2018-07-25T18:53:11Z graphene quit (Remote host closed the connection) 2018-07-25T18:54:36Z graphene joined #lisp 2018-07-25T18:58:42Z fikka quit (Quit: leaving) 2018-07-25T18:58:57Z fikka joined #lisp 2018-07-25T19:03:00Z josemanuel joined #lisp 2018-07-25T19:06:08Z graphene quit (Remote host closed the connection) 2018-07-25T19:07:25Z graphene joined #lisp 2018-07-25T19:07:45Z emacsomancer quit (Ping timeout: 248 seconds) 2018-07-25T19:10:20Z fikka quit (Ping timeout: 256 seconds) 2018-07-25T19:11:46Z brettgilio joined #lisp 2018-07-25T19:13:07Z graphene quit (Remote host closed the connection) 2018-07-25T19:13:14Z kenster: Hey so if I use defmethod inside of a macro, and the macro is in a separate package, how do I export that method? 2018-07-25T19:13:43Z dlowe: put an EXPORT form in your macro expansion 2018-07-25T19:14:25Z graphene joined #lisp 2018-07-25T19:14:26Z megalography quit (Ping timeout: 268 seconds) 2018-07-25T19:14:53Z brettgilio: I've been working with Scheme for about two months. I know this group may have a bias, but should I stick to learning Scheme, or should I learn Common Lisp instead? I'd also like to know why you think so. 2018-07-25T19:15:41Z fikka joined #lisp 2018-07-25T19:18:48Z Bike: if you learn one it'll take you like an hour to get going with the other. 2018-07-25T19:19:15Z brettgilio: ty Bike 2018-07-25T19:19:28Z kenster: dlowe: I tried that and it still says the function is an alien function 2018-07-25T19:19:30Z dddddd joined #lisp 2018-07-25T19:20:46Z fikka quit (Ping timeout: 264 seconds) 2018-07-25T19:21:22Z housel: brettgilio: of course, depends on what sort of programs you want to write, and which language's community is developing libraries in areas that you're interested in, etc. 2018-07-25T19:21:45Z kenster: the thing is the method name used in defmethod is provided by the caller of the function 2018-07-25T19:22:01Z kenster: so it does defmethod FILEBUCKET::NEW in this case 2018-07-25T19:22:26Z kenster: but exporting it to the package of cffi-utils does nothing 2018-07-25T19:22:37Z kenster: so do I have to have a parameter with the caller's package name? seems kind of weird 2018-07-25T19:23:08Z dlowe: kenster: packages don't have anything to do with alien-ness of functions 2018-07-25T19:23:35Z kenster: The alien function "new" is undefined. 2018-07-25T19:23:45Z kenster: ah ok 2018-07-25T19:24:38Z kenster: nevermind 2018-07-25T19:24:42Z kenster: I know the issue 2018-07-25T19:26:32Z kenster: so if i have a (eval-when (:compile-toplevel :load-toplevel :execute) (...)) form that defines a parameter for usage in a macro 2018-07-25T19:26:43Z graphene quit (Remote host closed the connection) 2018-07-25T19:26:56Z kenster: do I have to export it after I do defparameter, no in the (:export ) form of defpackage? 2018-07-25T19:28:08Z graphene joined #lisp 2018-07-25T19:28:34Z kingcons quit (Remote host closed the connection) 2018-07-25T19:28:34Z megalography joined #lisp 2018-07-25T19:28:45Z Bike: it's very preferable to export in defpackage 2018-07-25T19:35:35Z eli_oat quit (Read error: Connection reset by peer) 2018-07-25T19:35:55Z fikka joined #lisp 2018-07-25T19:40:21Z fikka quit (Ping timeout: 244 seconds) 2018-07-25T19:43:29Z zooey quit (Remote host closed the connection) 2018-07-25T19:43:50Z zooey joined #lisp 2018-07-25T19:44:31Z kenster: oddly when I do (gethash class *c-class-structs*) it clearly isn't getting a result, with *c-class-structs* not being nil, and class being 'upload-session which I setf in c-structs.lisp 2018-07-25T19:44:57Z kenster: err with (gethash 'upload-session *c-class-structs*) being a string 2018-07-25T19:45:03Z Jesin quit (Quit: Leaving) 2018-07-25T19:45:30Z kenster: the defparameter is defined with the setf forms inside (eval-when (:compile-toplevel :load-toplevel :execute) (...)) 2018-07-25T19:46:53Z vlatkoB quit (Remote host closed the connection) 2018-07-25T19:47:10Z pjb: kenster: don't export automatically: let the user pass the name of the generic function as an explicit parameter to the macro, and let the user export or not export that symbol as he wishes. 2018-07-25T19:47:27Z kenster: that's what I do, yeah 2018-07-25T19:47:34Z kenster: the alien function is a different error with CFFI 2018-07-25T19:47:50Z kenster: and the reason why is because it's not looking up the C struct name in *c-class-structs* 2018-07-25T19:48:13Z kenster: so my macro expands to the non-struct prefix version 2018-07-25T19:48:20Z pjb: If you call gethash in the macro, at macro-expansion time, ie. in the compilation environment, you must ensure that the hash-table is filled in the compilation environment. 2018-07-25T19:48:23Z kenster: it should be FileUploadingSession_new 2018-07-25T19:48:42Z kenster: yes, so I put the defparameter with the setf forms inside (eval-when (:compile-toplevel :load-toplevel :execute) (...)) 2018-07-25T19:48:50Z pjb: And vice-versa, if you call gethash in the expansion of the macro, so it's executed at run-time, you must ensure that the hash-table is filled at run-time, in the execution environment. 2018-07-25T19:48:51Z kenster: but that eval-when is in a separate package 2018-07-25T19:49:28Z kenster: I think the hash-table is defined, because otherwise gethash would have given me an error 2018-07-25T19:50:06Z pjb: (eval-when (:compile-toplevel :load-toplevel :execute) …) can help but mostly, it works only if it's toplevel. Sometimes you have to fill those hash-table twice, explicitely at macro-expansion time and explicitely in the expansion, at run-time. 2018-07-25T19:50:20Z pjb: The question is how you fill it. 2018-07-25T19:50:54Z kenster: that's weird that the defparameter would execute then and not the setf forms following it 2018-07-25T19:51:15Z kenster: because the hash table is defined, but the hash table isn't populated I guess 2018-07-25T19:51:45Z pjb: One point to note is that not all lisp objects are writable to the fasl file. For some lisp custom lisp objects, you can provide a make-load-form method, but some other objects have to be re-created at load-time to be available at run-time. 2018-07-25T19:52:14Z pjb: So in a way, CL is outside of the Eden. 2018-07-25T19:52:20Z kenster: hmmm 2018-07-25T19:53:03Z shka1: pjb: poetic 2018-07-25T19:53:10Z kenster: so how would the parameter be defined but not the hash values within the value? 2018-07-25T19:53:20Z kenster: it worked before when the eval-when was in the same file 2018-07-25T19:53:39Z pjb: (macroexpand-1 '(defparameter *foo* (make-hash-table))) #| --> (progn (eval-when (:compile-toplevel) (ccl::note-variable-info '*foo* t nil)) (ccl::%defparameter '*foo* (make-hash-table) nil)) ; t |# 2018-07-25T19:53:57Z kenster: fug 2018-07-25T19:53:58Z pjb: defparameter works at run-time. 2018-07-25T19:54:36Z pjb: If you make it work at compilation time with a surrounding eval-when, it will still re-initialize the binding with a new hash-table at run-time. 2018-07-25T19:55:12Z lonjil quit (Ping timeout: 245 seconds) 2018-07-25T19:56:12Z fikka joined #lisp 2018-07-25T19:56:13Z pjb: You have to be careful, because usually when developping, the compilation environment is the same as the execution environment. But once you compile the fasl and load them at run-time in a new image, you only have the execution environment. Or when you boot a fresh image, and asdf load the compiled file and save an executable image. 2018-07-25T19:56:34Z warweasle quit (Quit: rcirc on GNU Emacs 24.4.1) 2018-07-25T19:57:52Z kenster: pjb: https://hastebin.com/elekerudox.lisp 2018-07-25T19:58:23Z kenster: it messed up highlighting, jeez 2018-07-25T19:58:54Z kenster: anyway the important part is (gethash class *c-class-structs*) in defcmethod 2018-07-25T19:59:12Z kenster: I'm only accessing that value in the macro, not at run time 2018-07-25T19:59:40Z kenster: https://hastebin.com/raw/elekerudox 2018-07-25T20:00:14Z kenster: oops I forgot the package definitions for them 2018-07-25T20:00:45Z kenster: well, each of the lisp files have package definitions, just assume that, lol 2018-07-25T20:00:45Z pjb: kenster: I get The value "G45281" is not of the expected type list. when compiling that. 2018-07-25T20:00:54Z lonjil joined #lisp 2018-07-25T20:01:18Z fikka quit (Ping timeout: 268 seconds) 2018-07-25T20:02:17Z kenster: I didn't include the other packages with the dependencies 2018-07-25T20:02:21Z kenster: so that may be why 2018-07-25T20:02:44Z shka1: does not sound like it 2018-07-25T20:03:18Z kenster: it works here so I don't know :/ 2018-07-25T20:03:22Z kenster: just not the part with gethash 2018-07-25T20:03:42Z kenster: I have :cffi :alexandria in my :use 2018-07-25T20:04:16Z kenster: it could be that he is getting to the correct expanded form, and it is just incorrectly evaluated 2018-07-25T20:04:31Z kenster: which would make sense because he probably has the eval-when in the same file 2018-07-25T20:05:03Z kenster: so I have to fix that, but that doesn't solve the issue of the separate file not being able to export a compile time hash 2018-07-25T20:05:06Z sjl joined #lisp 2018-07-25T20:06:49Z test1600 quit (Ping timeout: 260 seconds) 2018-07-25T20:09:08Z lonjil quit (Ping timeout: 256 seconds) 2018-07-25T20:10:19Z moei joined #lisp 2018-07-25T20:14:54Z lonjil joined #lisp 2018-07-25T20:17:47Z Einwq quit (Quit: Leaving) 2018-07-25T20:18:46Z shenghi quit (Ping timeout: 256 seconds) 2018-07-25T20:19:40Z cpape quit (Read error: Connection reset by peer) 2018-07-25T20:26:26Z shenghi joined #lisp 2018-07-25T20:27:59Z brettgilio quit (Remote host closed the connection) 2018-07-25T20:37:17Z xrash joined #lisp 2018-07-25T20:40:17Z patlv joined #lisp 2018-07-25T20:41:05Z pierpal quit (Quit: Poof) 2018-07-25T20:41:17Z aeth: This will work for most standard-classes/structure-classes: (defmacro define-simple-slot-saving-for-class (class) `(defmethod make-load-form ((object ,class) &optional environment) (make-load-form-saving-slots object :environment environment))) 2018-07-25T20:41:26Z pierpal joined #lisp 2018-07-25T20:41:43Z aeth: It works on so many I sort of wonder why this wasn't the default behavior of defclass and defstruct, where you would only overwrite that when you have an issue with that. 2018-07-25T20:42:00Z aeth: s/overwrite/override/ 2018-07-25T20:42:58Z aeth: This describes some of the cases where it won't work: http://www.lispworks.com/documentation/HyperSpec/Body/f_mk_ld_.htm 2018-07-25T20:43:16Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2018-07-25T20:45:24Z shka1 quit (Ping timeout: 256 seconds) 2018-07-25T20:48:53Z kajo quit (Quit: From my rotting body, flowers shall grow and I am in them and that is eternity. -- E. M.) 2018-07-25T20:51:43Z klltkr_: Yo 2018-07-25T20:52:54Z lumm quit (Ping timeout: 256 seconds) 2018-07-25T20:52:59Z stylewarning: vtomole: hi 2018-07-25T20:54:32Z Cymew quit (Remote host closed the connection) 2018-07-25T20:54:51Z graphene quit (Remote host closed the connection) 2018-07-25T20:55:46Z equwal joined #lisp 2018-07-25T20:56:11Z graphene joined #lisp 2018-07-25T20:59:09Z vtomole: stylewarning: Sent a pull request your way:https://github.com/tarballs-are-good/cl-forest/pull/3. I think i'm the only one who uses this as it's been like this for a while :). Would love a review. 2018-07-25T21:00:48Z Bike: aeth: because if it doesn't work it will do so subtly 2018-07-25T21:00:58Z equwal quit (Ping timeout: 264 seconds) 2018-07-25T21:01:40Z asarch quit (Quit: Leaving) 2018-07-25T21:01:51Z vtomole: stylewarning: Also currently looking into this: https://github.com/tarballs-are-good/cl-forest/issues/4 2018-07-25T21:05:24Z kajo joined #lisp 2018-07-25T21:05:48Z cpape joined #lisp 2018-07-25T21:09:51Z kajo quit (Client Quit) 2018-07-25T21:10:33Z vtomole quit (Ping timeout: 252 seconds) 2018-07-25T21:10:47Z JuanDaugherty joined #lisp 2018-07-25T21:17:36Z vtomole joined #lisp 2018-07-25T21:17:57Z orivej quit (Ping timeout: 240 seconds) 2018-07-25T21:19:32Z quazimodo quit (Ping timeout: 256 seconds) 2018-07-25T21:21:33Z quazimodo joined #lisp 2018-07-25T21:24:00Z rumbler31 quit (Remote host closed the connection) 2018-07-25T21:25:46Z onagadori joined #lisp 2018-07-25T21:26:11Z graphene quit (Remote host closed the connection) 2018-07-25T21:27:31Z graphene joined #lisp 2018-07-25T21:31:20Z stylewarning: vtomole: cool, i'll check it out! 2018-07-25T21:31:25Z stylewarning: i'd love for that code to not be so bitrotten! 2018-07-25T21:32:07Z pierpa joined #lisp 2018-07-25T21:32:28Z Zamenhof joined #lisp 2018-07-25T21:33:08Z xrash quit (Ping timeout: 256 seconds) 2018-07-25T21:33:19Z hiroaki joined #lisp 2018-07-25T21:34:30Z stylewarning: vtomole: left some review comments 2018-07-25T21:36:23Z fikka joined #lisp 2018-07-25T21:37:32Z varjag quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2018-07-25T21:40:10Z graphene quit (Remote host closed the connection) 2018-07-25T21:41:32Z graphene joined #lisp 2018-07-25T21:41:58Z wheelsucker quit (Remote host closed the connection) 2018-07-25T21:45:44Z josemanuel quit (Quit: leaving) 2018-07-25T21:52:54Z Bike quit (Ping timeout: 252 seconds) 2018-07-25T21:53:59Z cgay_ quit (Remote host closed the connection) 2018-07-25T21:56:15Z jkordani quit (Read error: Connection reset by peer) 2018-07-25T21:57:21Z Denommus quit (Read error: Connection reset by peer) 2018-07-25T22:06:21Z random-nick quit (Ping timeout: 264 seconds) 2018-07-25T22:09:14Z JuanDaugherty quit (Quit: Exeunt) 2018-07-25T22:10:55Z kajo joined #lisp 2018-07-25T22:11:46Z wigust quit (Ping timeout: 264 seconds) 2018-07-25T22:14:44Z onagadori quit (Read error: Connection reset by peer) 2018-07-25T22:24:35Z rumbler31 joined #lisp 2018-07-25T22:28:54Z vtomole quit (Quit: Page closed) 2018-07-25T22:30:25Z rumbler31 quit (Ping timeout: 248 seconds) 2018-07-25T22:35:28Z quazimodo quit (Ping timeout: 256 seconds) 2018-07-25T22:37:12Z quazimodo joined #lisp 2018-07-25T22:38:57Z lnostdal quit (Ping timeout: 240 seconds) 2018-07-25T22:40:45Z Bike joined #lisp 2018-07-25T22:40:49Z sjl_ quit (Ping timeout: 260 seconds) 2018-07-25T22:49:30Z patlv quit (Ping timeout: 256 seconds) 2018-07-25T22:50:25Z zooey quit (Ping timeout: 250 seconds) 2018-07-25T22:57:04Z zooey joined #lisp 2018-07-25T22:57:18Z anewuser joined #lisp 2018-07-25T23:03:34Z robotoad quit (Quit: robotoad) 2018-07-25T23:03:40Z k-hos quit (Quit: blap) 2018-07-25T23:11:30Z kjeldahl quit (Ping timeout: 245 seconds) 2018-07-25T23:13:42Z Fare quit (Ping timeout: 268 seconds) 2018-07-25T23:21:38Z Kundry_Wag quit (Remote host closed the connection) 2018-07-25T23:22:20Z drduck` quit (Ping timeout: 245 seconds) 2018-07-25T23:24:24Z k-hos joined #lisp 2018-07-25T23:25:54Z patlv joined #lisp 2018-07-25T23:36:10Z brettgilio joined #lisp 2018-07-25T23:39:28Z k-hos quit (Quit: blap) 2018-07-25T23:40:36Z fikka quit (Ping timeout: 244 seconds) 2018-07-25T23:41:36Z lnostdal joined #lisp 2018-07-25T23:41:38Z patlv quit (Ping timeout: 256 seconds) 2018-07-25T23:43:03Z Kaisyu joined #lisp 2018-07-25T23:53:49Z Oladon joined #lisp 2018-07-25T23:57:02Z fikka joined #lisp 2018-07-25T23:57:08Z captgector quit (Read error: Connection reset by peer) 2018-07-25T23:57:52Z captgector joined #lisp 2018-07-26T00:00:06Z k-hos joined #lisp 2018-07-26T00:01:02Z patlv joined #lisp 2018-07-26T00:01:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-26T00:01:59Z kajo quit (Quit: From my rotting body, flowers shall grow and I am in them and that is eternity. -- E. M.) 2018-07-26T00:05:59Z nowhere_man quit (Ping timeout: 260 seconds) 2018-07-26T00:07:26Z fikka joined #lisp 2018-07-26T00:12:21Z fikka quit (Ping timeout: 264 seconds) 2018-07-26T00:13:09Z kenster: I've uploaded the lisp portion of my CDN project if anyone is interested: https://github.com/kennymalac/simple-content-host 2018-07-26T00:13:10Z kenster: :) 2018-07-26T00:13:23Z Fare joined #lisp 2018-07-26T00:16:34Z patlv quit (Ping timeout: 264 seconds) 2018-07-26T00:21:57Z Zamenhof quit (Ping timeout: 252 seconds) 2018-07-26T00:24:17Z patlv joined #lisp 2018-07-26T00:27:27Z fikka joined #lisp 2018-07-26T00:29:54Z light2yellow is now known as l2y 2018-07-26T00:30:58Z Jesin joined #lisp 2018-07-26T00:32:14Z Jesin quit (Client Quit) 2018-07-26T00:32:14Z fikka quit (Ping timeout: 260 seconds) 2018-07-26T00:32:17Z edgar-rft quit (Quit: Leaving) 2018-07-26T00:35:13Z housel quit (Ping timeout: 248 seconds) 2018-07-26T00:37:56Z fikka joined #lisp 2018-07-26T00:38:28Z fikka quit (Read error: Connection reset by peer) 2018-07-26T00:39:14Z rozenglass quit (Remote host closed the connection) 2018-07-26T00:44:38Z Kundry_Wag joined #lisp 2018-07-26T00:45:16Z Kundry_Wag quit (Remote host closed the connection) 2018-07-26T00:48:08Z Jesin joined #lisp 2018-07-26T00:48:10Z fikka joined #lisp 2018-07-26T00:52:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-26T00:55:47Z equwal joined #lisp 2018-07-26T00:57:08Z patlv quit (Ping timeout: 256 seconds) 2018-07-26T00:57:35Z makomo quit (Ping timeout: 244 seconds) 2018-07-26T00:58:37Z fikka joined #lisp 2018-07-26T01:03:16Z fikka quit (Ping timeout: 244 seconds) 2018-07-26T01:14:52Z patlv joined #lisp 2018-07-26T01:18:37Z fikka joined #lisp 2018-07-26T01:23:49Z fikka quit (Ping timeout: 268 seconds) 2018-07-26T01:24:25Z Oladon quit (Quit: Leaving.) 2018-07-26T01:38:53Z fikka joined #lisp 2018-07-26T01:43:02Z renzhi quit (Quit: WeeChat 2.1) 2018-07-26T01:44:34Z fikka quit (Ping timeout: 260 seconds) 2018-07-26T01:45:06Z Jesin quit (Quit: Leaving) 2018-07-26T01:49:28Z fikka joined #lisp 2018-07-26T01:54:09Z fikka quit (Ping timeout: 248 seconds) 2018-07-26T01:54:57Z saki quit (Ping timeout: 264 seconds) 2018-07-26T02:01:13Z graphene quit (Remote host closed the connection) 2018-07-26T02:02:30Z graphene joined #lisp 2018-07-26T02:02:59Z elfmacs joined #lisp 2018-07-26T02:04:00Z acolarh quit (Ping timeout: 256 seconds) 2018-07-26T02:04:17Z Pixel_Outlaw joined #lisp 2018-07-26T02:05:29Z acolarh joined #lisp 2018-07-26T02:09:45Z fikka joined #lisp 2018-07-26T02:12:11Z graphene quit (Remote host closed the connection) 2018-07-26T02:13:28Z graphene joined #lisp 2018-07-26T02:14:46Z fikka quit (Ping timeout: 256 seconds) 2018-07-26T02:20:12Z fikka joined #lisp 2018-07-26T02:24:54Z fikka quit (Ping timeout: 244 seconds) 2018-07-26T02:29:33Z megalography quit (Ping timeout: 244 seconds) 2018-07-26T02:32:06Z dddddd quit (Remote host closed the connection) 2018-07-26T02:32:24Z AetherWind joined #lisp 2018-07-26T02:32:59Z anewuser quit (Quit: anewuser) 2018-07-26T02:40:06Z papachan quit (Quit: Leaving) 2018-07-26T02:40:10Z fikka joined #lisp 2018-07-26T02:42:04Z earl-ducaine quit (Read error: Connection reset by peer) 2018-07-26T02:43:55Z megalography joined #lisp 2018-07-26T02:45:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-26T02:47:44Z equwal quit (Remote host closed the connection) 2018-07-26T02:50:42Z fikka joined #lisp 2018-07-26T02:55:42Z fikka quit (Ping timeout: 268 seconds) 2018-07-26T02:58:21Z robotoad joined #lisp 2018-07-26T03:05:01Z brettgilio quit (Remote host closed the connection) 2018-07-26T03:11:03Z fikka joined #lisp 2018-07-26T03:12:41Z AetherWind quit (Quit: Leaving) 2018-07-26T03:13:21Z pierpa quit (Quit: Page closed) 2018-07-26T03:13:44Z Oladon joined #lisp 2018-07-26T03:16:09Z fikka quit (Ping timeout: 260 seconds) 2018-07-26T03:16:36Z Bike quit (Quit: Lost terminal) 2018-07-26T03:17:29Z AetherWind joined #lisp 2018-07-26T03:20:58Z knusbaum joined #lisp 2018-07-26T03:21:31Z fikka joined #lisp 2018-07-26T03:25:26Z AetherWind quit (Quit: Leaving) 2018-07-26T03:25:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-26T03:27:26Z Pixel_Outlaw quit (Quit: Leaving) 2018-07-26T03:27:49Z patlv quit (Ping timeout: 260 seconds) 2018-07-26T03:28:57Z vhost- quit (Ping timeout: 265 seconds) 2018-07-26T03:31:31Z fikka joined #lisp 2018-07-26T03:33:56Z pierpal quit (Quit: Poof) 2018-07-26T03:34:15Z pierpal joined #lisp 2018-07-26T03:35:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-26T03:36:35Z ahmed111 joined #lisp 2018-07-26T03:37:23Z fikka joined #lisp 2018-07-26T03:38:49Z ahmed111 quit (Client Quit) 2018-07-26T03:40:21Z ahmed111 joined #lisp 2018-07-26T03:42:02Z fikka quit (Ping timeout: 256 seconds) 2018-07-26T03:45:05Z ahmed111 quit (Ping timeout: 248 seconds) 2018-07-26T03:47:10Z graphene quit (Remote host closed the connection) 2018-07-26T03:47:48Z fikka joined #lisp 2018-07-26T03:48:16Z fm4d quit (Ping timeout: 256 seconds) 2018-07-26T03:48:30Z graphene joined #lisp 2018-07-26T03:49:46Z megalography quit (Quit: Leaving.) 2018-07-26T03:52:33Z fikka quit (Ping timeout: 248 seconds) 2018-07-26T03:55:57Z X-Scale quit (Ping timeout: 240 seconds) 2018-07-26T03:56:57Z quazimodo quit (Ping timeout: 240 seconds) 2018-07-26T03:58:19Z fikka joined #lisp 2018-07-26T04:03:04Z fikka quit (Ping timeout: 244 seconds) 2018-07-26T04:07:23Z [X-Scale] joined #lisp 2018-07-26T04:07:31Z [X-Scale] is now known as X-Scale 2018-07-26T04:08:57Z elfmacs quit (Ping timeout: 240 seconds) 2018-07-26T04:09:31Z Oladon quit (Read error: Connection reset by peer) 2018-07-26T04:18:19Z fikka joined #lisp 2018-07-26T04:23:13Z fikka quit (Ping timeout: 244 seconds) 2018-07-26T04:30:52Z igemnace joined #lisp 2018-07-26T04:32:34Z housel joined #lisp 2018-07-26T04:33:43Z vibs29 quit (Ping timeout: 256 seconds) 2018-07-26T04:34:26Z vibs29 joined #lisp 2018-07-26T04:38:39Z fikka joined #lisp 2018-07-26T04:40:49Z wheelsucker joined #lisp 2018-07-26T04:43:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-26T04:44:38Z ahmed111 joined #lisp 2018-07-26T04:49:05Z ahmed111 quit (Ping timeout: 248 seconds) 2018-07-26T04:49:08Z fikka joined #lisp 2018-07-26T04:50:25Z equwal joined #lisp 2018-07-26T04:53:20Z equwal quit (Remote host closed the connection) 2018-07-26T04:53:39Z equwal joined #lisp 2018-07-26T04:53:42Z fikka quit (Ping timeout: 244 seconds) 2018-07-26T04:55:34Z charh quit (Quit: plan9) 2018-07-26T05:00:42Z equwal quit (Remote host closed the connection) 2018-07-26T05:01:40Z equwal joined #lisp 2018-07-26T05:05:08Z robotoad quit (Read error: Connection reset by peer) 2018-07-26T05:06:00Z robotoad joined #lisp 2018-07-26T05:09:11Z fikka joined #lisp 2018-07-26T05:09:36Z kozy quit (Quit: No Ping reply in 180 seconds.) 2018-07-26T05:10:55Z kozy joined #lisp 2018-07-26T05:14:09Z fikka quit (Ping timeout: 248 seconds) 2018-07-26T05:15:05Z capisce quit (Ping timeout: 240 seconds) 2018-07-26T05:16:34Z vlatkoB joined #lisp 2018-07-26T05:17:46Z igemnace quit (Quit: WeeChat 2.2) 2018-07-26T05:18:27Z eminhi joined #lisp 2018-07-26T05:18:39Z bsund quit (Ping timeout: 260 seconds) 2018-07-26T05:18:56Z orivej joined #lisp 2018-07-26T05:24:40Z ofi joined #lisp 2018-07-26T05:25:49Z edgar-rft joined #lisp 2018-07-26T05:28:38Z loli quit (Ping timeout: 268 seconds) 2018-07-26T05:29:49Z fikka joined #lisp 2018-07-26T05:31:04Z rumbler31 joined #lisp 2018-07-26T05:31:30Z sauvin joined #lisp 2018-07-26T05:32:33Z ahmed111 joined #lisp 2018-07-26T05:33:12Z jackdaniel has set mode -r 2018-07-26T05:34:18Z erratic joined #lisp 2018-07-26T05:34:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-26T05:36:04Z rumbler31 quit (Ping timeout: 244 seconds) 2018-07-26T05:36:53Z beach: Good morning everyone! 2018-07-26T05:37:15Z jackdaniel: \o 2018-07-26T05:40:17Z fikka joined #lisp 2018-07-26T05:43:44Z ebzzry quit (Ping timeout: 260 seconds) 2018-07-26T05:44:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-26T05:47:13Z loli joined #lisp 2018-07-26T05:47:48Z ahmed111: Good Morning. 2018-07-26T05:50:07Z beach: ahmed111: Are you new here? I don't recognize your nick. 2018-07-26T05:50:17Z ahmed111: Yeah. 2018-07-26T05:50:18Z fikka joined #lisp 2018-07-26T05:50:46Z beach: What brings you to #lisp? 2018-07-26T05:51:03Z ahmed111: I joined yesterday. 2018-07-26T05:51:06Z beach: jackdaniel: Why do I have a @ in front of my name? 2018-07-26T05:51:36Z ahmed111: I have read Paul Graham's essays about CL. 2018-07-26T05:51:44Z beach: Oh, nice. 2018-07-26T05:53:06Z ahmed111: Currently I'm in minor confusion should I start CL or Clojure. 2018-07-26T05:53:20Z schweers joined #lisp 2018-07-26T05:53:28Z schweers quit (Client Quit) 2018-07-26T05:53:28Z jackdaniel: beach: I've added a few op rights yesterday for time of this spamsession to make it possible to kick bots when I'm not around 2018-07-26T05:53:42Z beach: OK. 2018-07-26T05:53:46Z ahmed111: I have worked with Python previously. 2018-07-26T05:53:47Z jackdaniel has set mode -ooo beach shka jackdaniel 2018-07-26T05:53:53Z schweers joined #lisp 2018-07-26T05:53:58Z jackdaniel: fixed 2018-07-26T05:53:59Z beach: ahmed111: Well, you are in a channel dedicated to Common Lisp, so the advice given here will be biased. 2018-07-26T05:54:09Z beach: jackdaniel: Thanks. 2018-07-26T05:54:44Z ahmed111: beach: yeah. 2018-07-26T05:55:13Z fikka quit (Ping timeout: 248 seconds) 2018-07-26T06:01:22Z jfrancis_ joined #lisp 2018-07-26T06:08:14Z rorx23 joined #lisp 2018-07-26T06:08:36Z rorx23 quit (Killed (Sigyn (Spam is off topic on freenode.))) 2018-07-26T06:10:28Z fikka joined #lisp 2018-07-26T06:14:54Z flamebeard joined #lisp 2018-07-26T06:15:36Z fikka quit (Ping timeout: 256 seconds) 2018-07-26T06:17:10Z elfmacs joined #lisp 2018-07-26T06:17:34Z ahmed111 quit (Quit: Bye) 2018-07-26T06:17:52Z Inline quit (Read error: Connection reset by peer) 2018-07-26T06:18:10Z ahmed111 joined #lisp 2018-07-26T06:21:14Z fikka joined #lisp 2018-07-26T06:23:24Z ahmed111 quit (Ping timeout: 260 seconds) 2018-07-26T06:24:02Z l2y quit (Quit: l2y) 2018-07-26T06:24:18Z gravicappa joined #lisp 2018-07-26T06:25:59Z fikka quit (Ping timeout: 268 seconds) 2018-07-26T06:32:02Z wheelsucker quit (Ping timeout: 256 seconds) 2018-07-26T06:32:54Z equwal quit (Remote host closed the connection) 2018-07-26T06:33:08Z Demosthenex: so with slime in emacs, any way to set the max buffer size? i'm at nearly 200k lines of scrollback atm 2018-07-26T06:33:36Z Demosthenex: i set a truncate and max lines for comint, but that didn't seem to affect slime 2018-07-26T06:33:53Z kenster: what in god's name are you doing with that much scrollback? 2018-07-26T06:34:04Z kenster: no idea though, sorry :/ 2018-07-26T06:34:06Z Demosthenex: i have a bunch of debug messages flying by 2018-07-26T06:34:19Z Demosthenex: i don't want that much scollback ;] thats why i'm asking about truncation 2018-07-26T06:34:32Z equwal joined #lisp 2018-07-26T06:34:46Z equwal quit (Remote host closed the connection) 2018-07-26T06:35:03Z Demosthenex: i'm scraping data from a restful api, and it's flowing pretty smoothly now. maybe i should just log to a file :P 2018-07-26T06:35:10Z kenster: have you tried turning it on an off again 2018-07-26T06:35:34Z Demosthenex: hah! well i may restart slime later to see if the comint changes take effect, but i expected them to be instant 2018-07-26T06:35:38Z Demosthenex: i'm in a batch atm 2018-07-26T06:35:42Z captgector quit (Read error: Connection reset by peer) 2018-07-26T06:36:24Z captgector joined #lisp 2018-07-26T06:36:39Z schweers: Demosthenex: If I recall correctly, you can kill the repl without killing the whole process. This doesn’t help you if you have a running command in said repl (I think). 2018-07-26T06:37:39Z Demosthenex: schweers: i could also manually trim the buffer, but i suspect there's a setting 2018-07-26T06:37:50Z Demosthenex: i already checked slime's and comint's customize 2018-07-26T06:37:55Z schweers: If you find one, let me know. 2018-07-26T06:37:59Z jackdaniel: clearing REPL output (manually) is C-c M-o 2018-07-26T06:38:33Z Demosthenex: jackdaniel: yep. 2018-07-26T06:39:09Z fikka joined #lisp 2018-07-26T06:43:58Z 18WAA3D66 joined #lisp 2018-07-26T06:43:58Z 18WAA3D66: Hey, I thought you guys might be interested in this blog by freenode staff member Bryan 'kloeri' Ostergaard https://bryanostergaard.com/ 2018-07-26T06:43:58Z 18WAA3D66: or maybe this blog by freenode staff member Matthew 'mst' Trout https://MattSTrout.com/ 2018-07-26T06:43:59Z 18WAA3D66: Read what IRC investigative journalists have uncovered on the freenode pedophilia scandal https://encyclopediadramatica.rs/Freenodegate 2018-07-26T06:44:01Z 18WAA3D66: 2018-07-26T06:44:11Z 18WAA3D66: This message was brought to you by Private Internet Access 2018-07-26T06:44:12Z 18WAA3D66 quit (Killed (Sigyn (Spam is off topic on freenode.))) 2018-07-26T06:45:29Z ChanServ has set mode +o jackdaniel 2018-07-26T06:45:39Z jackdaniel has set mode +r 2018-07-26T06:45:51Z Lord_Nightmare: sonofabitch 2018-07-26T06:46:01Z Lord_Nightmare: whatever that link was, ms security essentials did not like it 2018-07-26T06:46:02Z jackdaniel has set mode -o jackdaniel 2018-07-26T06:46:12Z Lord_Nightmare: and quarantined the irc log file 2018-07-26T06:46:27Z jackdaniel: what did you expect from spambot? 2018-07-26T06:46:33Z Lord_Nightmare: HTML/Jadtre.A trojan 2018-07-26T06:47:20Z kenster quit (Ping timeout: 256 seconds) 2018-07-26T06:47:54Z Fare quit (Ping timeout: 260 seconds) 2018-07-26T06:48:49Z ahmed111 joined #lisp 2018-07-26T06:49:02Z charh joined #lisp 2018-07-26T06:52:59Z equwal joined #lisp 2018-07-26T06:53:22Z clhsgang[m]: fucking spammers 2018-07-26T06:53:42Z clhsgang[m]: idea: write irc bot that auto tempbans certain spam phrases 2018-07-26T06:57:42Z equwal quit (Ping timeout: 244 seconds) 2018-07-26T06:59:59Z xificurC quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2018-07-26T07:00:22Z ahmed111 quit (Ping timeout: 256 seconds) 2018-07-26T07:00:44Z xificurC joined #lisp 2018-07-26T07:09:38Z aeth: clhsgang[m]: It wouldn't work, it floods as much as it can, so even if you detected the first line, you'd let in at least 3 lines 2018-07-26T07:09:55Z aeth: and it uses a botnet or proxies or something so it's a different IP each time 2018-07-26T07:10:19Z aeth: It's the exact same line each time though, so you could filter it. Perhaps auto-ignore anyone who says it 2018-07-26T07:11:26Z aeth: In fact, it usually gets killed after 5 lines (saw it die after 1 once), so perhaps the message is even longer and it just takes that long as a network delay to get to it. 2018-07-26T07:11:59Z aeth: See the logs of #scheme if you want to study its behavior. #scheme got hit really hard earlier today. This is the first time I'm seeing it here in #lisp 2018-07-26T07:14:18Z Demosthenex: why is it always a pedo scandal? :P 2018-07-26T07:14:58Z jasom quit (Ping timeout: 256 seconds) 2018-07-26T07:15:01Z jdz: Can we please not give the spammers more attention than they deserve? 2018-07-26T07:16:29Z Arcaelyx quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-26T07:17:05Z bigfondue quit (Ping timeout: 265 seconds) 2018-07-26T07:27:30Z jasom joined #lisp 2018-07-26T07:29:28Z skeuomorf joined #lisp 2018-07-26T07:29:34Z skeuomorf left #lisp 2018-07-26T07:31:14Z clhsgang[m]: damn 2018-07-26T07:36:47Z koenig quit (Ping timeout: 260 seconds) 2018-07-26T07:37:46Z bigfondue joined #lisp 2018-07-26T07:40:46Z koenig joined #lisp 2018-07-26T07:42:07Z Cymew joined #lisp 2018-07-26T07:57:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-26T08:02:45Z xrash joined #lisp 2018-07-26T08:04:00Z fikka joined #lisp 2018-07-26T08:04:24Z Orion3k joined #lisp 2018-07-26T08:05:26Z rozenglass joined #lisp 2018-07-26T08:06:21Z orivej quit (Ping timeout: 264 seconds) 2018-07-26T08:07:02Z pierpal quit (Quit: Poof) 2018-07-26T08:07:23Z pierpal joined #lisp 2018-07-26T08:08:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-26T08:13:06Z equwal joined #lisp 2018-07-26T08:13:34Z alter-schjetne quit (Ping timeout: 264 seconds) 2018-07-26T08:14:06Z fikka joined #lisp 2018-07-26T08:15:41Z al-damiri quit (Quit: Connection closed for inactivity) 2018-07-26T08:17:57Z equwal quit (Ping timeout: 240 seconds) 2018-07-26T08:19:27Z fikka quit (Ping timeout: 268 seconds) 2018-07-26T08:21:27Z fikka joined #lisp 2018-07-26T08:22:51Z equwal joined #lisp 2018-07-26T08:54:14Z dddddd joined #lisp 2018-07-26T08:55:31Z equwal quit (Remote host closed the connection) 2018-07-26T09:00:05Z lel quit (Ping timeout: 276 seconds) 2018-07-26T09:02:59Z lel joined #lisp 2018-07-26T09:25:57Z rozenglass quit (Ping timeout: 240 seconds) 2018-07-26T09:35:19Z Kundry_Wag joined #lisp 2018-07-26T09:40:10Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-26T09:40:14Z sailor_cat joined #lisp 2018-07-26T09:47:58Z eminhi quit (Ping timeout: 256 seconds) 2018-07-26T09:48:56Z random-nick joined #lisp 2018-07-26T09:50:53Z JuanDaugherty joined #lisp 2018-07-26T09:57:57Z X-Scale quit (Ping timeout: 240 seconds) 2018-07-26T09:58:08Z [X-Scale] joined #lisp 2018-07-26T09:58:32Z [X-Scale] is now known as X-Scale 2018-07-26T10:00:57Z gravicappa quit (Ping timeout: 240 seconds) 2018-07-26T10:21:54Z Kaisyu quit (Quit: Connection closed for inactivity) 2018-07-26T10:23:00Z m00natic joined #lisp 2018-07-26T10:26:32Z rozenglass joined #lisp 2018-07-26T10:29:59Z iqubic joined #lisp 2018-07-26T10:30:18Z iqubic: Has anyone here tried the NEXT browser? 2018-07-26T10:32:33Z iqubic: I believe that a fellow by the name of jmercouris was working on it. 2018-07-26T10:32:46Z iqubic: I think it's written in lisp. 2018-07-26T10:33:04Z fikka quit (Ping timeout: 260 seconds) 2018-07-26T10:34:31Z fikka joined #lisp 2018-07-26T10:38:23Z antoszka: I'll give it a go next week. Holiday time. 2018-07-26T10:44:42Z lumm joined #lisp 2018-07-26T10:49:01Z jackdaniel: iqubic: iirc it is a wrapper around webkit2gtk+ 2018-07-26T10:49:21Z jackdaniel: s/webkit2gtk+/webkit/ 2018-07-26T10:49:51Z JuanDaugherty quit (Quit: Exeunt) 2018-07-26T11:00:03Z _whitelogger quit (Remote host closed the connection) 2018-07-26T11:02:17Z _whitelogger joined #lisp 2018-07-26T11:03:35Z MoziM quit (Ping timeout: 240 seconds) 2018-07-26T11:05:41Z MoziM joined #lisp 2018-07-26T11:13:26Z fikka quit (Ping timeout: 265 seconds) 2018-07-26T11:19:09Z ofi quit (Ping timeout: 260 seconds) 2018-07-26T11:32:40Z Kaisyu joined #lisp 2018-07-26T11:33:52Z graphene quit (Remote host closed the connection) 2018-07-26T11:35:13Z graphene joined #lisp 2018-07-26T11:40:44Z dmiles quit (Ping timeout: 260 seconds) 2018-07-26T11:41:07Z test1600 joined #lisp 2018-07-26T11:50:59Z fikka joined #lisp 2018-07-26T11:53:05Z graphene quit (Remote host closed the connection) 2018-07-26T11:54:23Z graphene joined #lisp 2018-07-26T11:55:58Z fikka quit (Ping timeout: 260 seconds) 2018-07-26T11:56:30Z dmiles joined #lisp 2018-07-26T11:56:55Z rumbler31 joined #lisp 2018-07-26T11:57:07Z graphene quit (Remote host closed the connection) 2018-07-26T11:58:29Z graphene joined #lisp 2018-07-26T12:00:41Z lumm quit (Read error: Connection reset by peer) 2018-07-26T12:01:06Z pjb quit (Remote host closed the connection) 2018-07-26T12:01:54Z Fare joined #lisp 2018-07-26T12:02:09Z test1600 quit (Ping timeout: 264 seconds) 2018-07-26T12:02:33Z fikka joined #lisp 2018-07-26T12:02:51Z ahmed111 joined #lisp 2018-07-26T12:03:20Z MrMc joined #lisp 2018-07-26T12:04:57Z MrMc: is there a library for mixing WAV files 2018-07-26T12:05:10Z MrMc: in common lisp? 2018-07-26T12:07:54Z ahmed111 quit (Quit: Bye) 2018-07-26T12:08:17Z eminhi joined #lisp 2018-07-26T12:08:18Z ahmed111 joined #lisp 2018-07-26T12:08:36Z antoszka: MrMc: mixalot? 2018-07-26T12:08:36Z jackdaniel: MrMc: https://common-lisp.net/project/cl-wav-synth/ seems to be aiming that goal 2018-07-26T12:08:51Z jackdaniel: (with graphical editor) 2018-07-26T12:08:59Z jackdaniel: but may be used as normal library 2018-07-26T12:09:20Z antoszka: Andy Hafner's mixalot might be simpler. 2018-07-26T12:09:25Z antoszka: But yeah, check around. 2018-07-26T12:09:38Z jackdaniel: https://common-lisp.net/project/cl-wav-synth/song-3.gif ← shows the graphical interface 2018-07-26T12:12:33Z MrMc: thanks I will have a look at mixalot and cl-wav-synth 2018-07-26T12:18:17Z ahmed111 quit (Quit: python) 2018-07-26T12:20:47Z ahmed111 joined #lisp 2018-07-26T12:21:18Z orivej joined #lisp 2018-07-26T12:24:59Z ahmed111 quit (Quit: Bye) 2018-07-26T12:25:37Z MrMc: cl-wav-synth looks like what I am looking for. 2018-07-26T12:36:37Z igemnace joined #lisp 2018-07-26T12:36:41Z graphene quit (Remote host closed the connection) 2018-07-26T12:37:13Z fikka quit (Ping timeout: 268 seconds) 2018-07-26T12:37:53Z fikka joined #lisp 2018-07-26T12:38:14Z lumm joined #lisp 2018-07-26T12:41:15Z zfree joined #lisp 2018-07-26T12:41:22Z schweers: beach: A few weeks back we had a conversation about the performance difference between classes and structs. I changed a lot of the structs in my code to classes and the performance difference is indeed very small, especially when setting the optimization settings to speed. 2018-07-26T12:41:57Z schweers: I’ll let you know how it goes for the really CPU intensive stuff. 2018-07-26T12:43:45Z rumbler31 quit (Read error: Connection reset by peer) 2018-07-26T12:50:04Z lumm quit (Quit: lumm) 2018-07-26T12:50:55Z lumm joined #lisp 2018-07-26T12:57:40Z patlv joined #lisp 2018-07-26T13:01:43Z Arcaelyx joined #lisp 2018-07-26T13:02:32Z schweers quit (Ping timeout: 276 seconds) 2018-07-26T13:03:33Z Bike joined #lisp 2018-07-26T13:05:10Z LdBeth: MrMc: you might be interested in CLM, a sndlib based sound synthesis system. 2018-07-26T13:10:38Z jkordani joined #lisp 2018-07-26T13:19:00Z dwrngr joined #lisp 2018-07-26T13:19:12Z elfmacs quit (Quit: WeeChat 2.2) 2018-07-26T13:19:45Z Denommus joined #lisp 2018-07-26T13:25:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-26T13:29:25Z patlv quit (Quit: Leaving) 2018-07-26T13:32:40Z eminhi quit (Remote host closed the connection) 2018-07-26T13:34:19Z eminhi joined #lisp 2018-07-26T13:44:14Z iskander quit (Ping timeout: 265 seconds) 2018-07-26T13:47:35Z xificurC quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2018-07-26T13:48:38Z flamebeard quit 2018-07-26T13:48:51Z random-nick quit (Read error: error:1408F10B:SSL routines:ssl3_get_record:wrong version number) 2018-07-26T13:49:15Z random-nick joined #lisp 2018-07-26T13:51:26Z iskander joined #lisp 2018-07-26T13:52:14Z v0|d joined #lisp 2018-07-26T13:52:21Z v0|d: umm, sbcl.org? 2018-07-26T13:52:45Z v0|d: seems down 2 me. 2018-07-26T13:53:19Z aindilis: I can confirm 2018-07-26T13:53:27Z xificurC joined #lisp 2018-07-26T13:54:30Z Bike: yeah. sourceforge gonna sourceforge, probably. 2018-07-26T13:55:14Z Bike: jackdaniel: channel's still +r. dunno if l0de or whoever is still spamming, though. 2018-07-26T13:55:21Z v0|d: what does that mean? 2018-07-26T13:55:34Z Bike: what, +r? 2018-07-26T13:55:50Z v0|d: Bike: sf. 2018-07-26T13:56:07Z Bike: oh. sbcl's website is hosted by sourceforge, i believe. they're kind of flaky sometimes. 2018-07-26T13:56:24Z v0|d: interesting. 2018-07-26T14:06:01Z igemnace quit (Ping timeout: 244 seconds) 2018-07-26T14:07:04Z MrMc quit (Ping timeout: 256 seconds) 2018-07-26T14:11:33Z sendai_ joined #lisp 2018-07-26T14:12:26Z jackdaniel: Bike: I've lifted it this morning and soon after spam resumed 2018-07-26T14:12:37Z Bike: ah, ok. 2018-07-26T14:12:50Z jackdaniel: thanks for the reminder though 2018-07-26T14:13:54Z LiamH joined #lisp 2018-07-26T14:13:54Z Kundry_Wag joined #lisp 2018-07-26T14:14:09Z azimut quit (Ping timeout: 264 seconds) 2018-07-26T14:17:09Z dwrngr: I checked about 17 hours ago and sbcl.org was also down then so that's definitely "flaky" :P 2018-07-26T14:17:23Z dwrngr: But good to know it's a recognized issue 2018-07-26T14:22:14Z FreeBirdLjj joined #lisp 2018-07-26T14:26:12Z beach quit (Ping timeout: 256 seconds) 2018-07-26T14:26:41Z FreeBirdLjj quit (Ping timeout: 248 seconds) 2018-07-26T14:26:41Z orivej quit (Ping timeout: 248 seconds) 2018-07-26T14:33:06Z sjl_ joined #lisp 2018-07-26T14:36:01Z eminhi quit (Quit: Reconnecting) 2018-07-26T14:36:17Z eminhi joined #lisp 2018-07-26T14:38:10Z mindCrime joined #lisp 2018-07-26T14:39:32Z pjb joined #lisp 2018-07-26T14:39:33Z fikka joined #lisp 2018-07-26T14:45:02Z fikka quit (Ping timeout: 256 seconds) 2018-07-26T14:46:20Z Arcaelyx quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-26T14:47:46Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-26T14:51:34Z nika_ joined #lisp 2018-07-26T14:54:22Z knusbaum quit (Ping timeout: 264 seconds) 2018-07-26T14:56:10Z papachan joined #lisp 2018-07-26T14:59:52Z FreeBirdLjj joined #lisp 2018-07-26T14:59:58Z jfrancis_ quit (Remote host closed the connection) 2018-07-26T15:00:51Z cage_ joined #lisp 2018-07-26T15:06:04Z kajo joined #lisp 2018-07-26T15:09:12Z kenster joined #lisp 2018-07-26T15:09:55Z kenster: streaming some Common lisp debugging https://youtu.be/js7-pkqI_3Q or https://www.twitch.tv/kingherring 2018-07-26T15:20:16Z antoszka: spacemacs? 2018-07-26T15:24:08Z trittweiler quit (Ping timeout: 276 seconds) 2018-07-26T15:25:44Z kenster: antoszka: yes 2018-07-26T15:31:54Z Kaisyu quit (Quit: Connection closed for inactivity) 2018-07-26T15:34:09Z fikka joined #lisp 2018-07-26T15:35:37Z ahmed111 joined #lisp 2018-07-26T15:36:47Z antoszka: Cool, I'm using spacemacs, too. Will that be available for watching offline later? 2018-07-26T15:36:56Z antoszka: I mean, asynchronously :) 2018-07-26T15:38:41Z fikka quit (Ping timeout: 248 seconds) 2018-07-26T15:40:09Z ahmed111: ñ 2018-07-26T15:41:37Z ahmed111 quit 2018-07-26T15:46:42Z kenster: antoszka: it should be, yes :) 2018-07-26T15:49:17Z wheelsucker joined #lisp 2018-07-26T15:50:10Z light2yellow joined #lisp 2018-07-26T15:51:18Z rozenglass quit (Read error: Connection reset by peer) 2018-07-26T16:00:08Z rippa joined #lisp 2018-07-26T16:12:32Z ahmed111 joined #lisp 2018-07-26T16:12:47Z ahmed111 quit (Max SendQ exceeded) 2018-07-26T16:15:04Z iqubic left #lisp 2018-07-26T16:17:30Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-26T16:18:04Z Kundry_Wag joined #lisp 2018-07-26T16:18:05Z Kundry_Wag quit (Remote host closed the connection) 2018-07-26T16:19:31Z Kundry_Wag joined #lisp 2018-07-26T16:19:38Z jasmith quit (Ping timeout: 260 seconds) 2018-07-26T16:21:53Z ChanServ has set mode +o jackdaniel 2018-07-26T16:22:01Z jackdaniel has set mode -r 2018-07-26T16:22:03Z jackdaniel has set mode -o Jach[m] 2018-07-26T16:22:10Z jackdaniel has set mode -o jackdaniel 2018-07-26T16:25:32Z FreeBirdLjj joined #lisp 2018-07-26T16:27:57Z kajo quit (Quit: From my rotting body, flowers shall grow and I am in them and that is eternity. -- E. M.) 2018-07-26T16:28:18Z ahmed111 joined #lisp 2018-07-26T16:28:22Z kajo joined #lisp 2018-07-26T16:30:00Z beach joined #lisp 2018-07-26T16:30:14Z vtomole joined #lisp 2018-07-26T16:30:25Z zfree quit (Quit: zfree) 2018-07-26T16:31:21Z saki joined #lisp 2018-07-26T16:33:05Z maverick- joined #lisp 2018-07-26T16:33:29Z maverick- quit (Remote host closed the connection) 2018-07-26T16:37:13Z test1600 joined #lisp 2018-07-26T16:40:05Z lumm quit (Quit: lumm) 2018-07-26T16:40:42Z lumm joined #lisp 2018-07-26T16:44:10Z Kundry_Wag quit (Read error: Connection reset by peer) 2018-07-26T16:44:35Z Kundry_Wag joined #lisp 2018-07-26T16:44:37Z Kundry_W_ joined #lisp 2018-07-26T16:45:51Z ahmed111 quit 2018-07-26T16:49:54Z orivej joined #lisp 2018-07-26T16:51:33Z smurfrobot joined #lisp 2018-07-26T16:52:14Z m00natic quit (Remote host closed the connection) 2018-07-26T16:52:33Z EvW joined #lisp 2018-07-26T16:54:09Z kajo quit (Quit: From my rotting body, flowers shall grow and I am in them and that is eternity. -- E. M.) 2018-07-26T16:55:23Z nowhere_man joined #lisp 2018-07-26T16:59:24Z Kundry_Wag_ joined #lisp 2018-07-26T16:59:34Z jmercouris joined #lisp 2018-07-26T17:01:41Z Kundry_Wag quit (Ping timeout: 244 seconds) 2018-07-26T17:07:10Z smurfrobot quit (Remote host closed the connection) 2018-07-26T17:07:28Z FreeBird_ joined #lisp 2018-07-26T17:08:09Z fikka joined #lisp 2018-07-26T17:09:10Z FreeBirdLjj quit (Ping timeout: 268 seconds) 2018-07-26T17:09:58Z orivej quit (Ping timeout: 256 seconds) 2018-07-26T17:13:14Z fikka quit (Ping timeout: 260 seconds) 2018-07-26T17:15:45Z kajo joined #lisp 2018-07-26T17:15:57Z terpri quit (Ping timeout: 240 seconds) 2018-07-26T17:16:07Z smurfrobot joined #lisp 2018-07-26T17:16:44Z iskander quit (Ping timeout: 260 seconds) 2018-07-26T17:17:35Z Josh_2 joined #lisp 2018-07-26T17:17:54Z Kundry_Wag_ quit (Ping timeout: 256 seconds) 2018-07-26T17:18:40Z ahmed111` joined #lisp 2018-07-26T17:19:17Z omilu quit (Remote host closed the connection) 2018-07-26T17:22:32Z fikka joined #lisp 2018-07-26T17:23:36Z iskander joined #lisp 2018-07-26T17:25:38Z rozenglass joined #lisp 2018-07-26T17:27:32Z fikka quit (Ping timeout: 256 seconds) 2018-07-26T17:28:22Z ahmed111` quit (Remote host closed the connection) 2018-07-26T17:32:41Z smurfrobot quit (Remote host closed the connection) 2018-07-26T17:33:04Z FreeBird_ quit (Remote host closed the connection) 2018-07-26T17:33:31Z nika_ quit (Quit: Leaving...) 2018-07-26T17:35:16Z rozenglass quit (Ping timeout: 244 seconds) 2018-07-26T17:41:31Z kenster: Does anyone know how to get constructor arguments in CLOS? 2018-07-26T17:41:41Z Bike: what do you mean? 2018-07-26T17:41:42Z kenster: I mean of course in the initialize-instance :after method 2018-07-26T17:41:51Z kenster: I want to pass in arguments that aren't slots 2018-07-26T17:42:02Z kenster: (defmethod initialize-instance :after ((self file-upload-info) &key tmp-location content-type tags wants-owned) 2018-07-26T17:42:03Z kenster: (setf (ptr self) (new self tmp-location content-type tags wants-owned))) 2018-07-26T17:42:07Z Bike: just put them in the lambdalist. 2018-07-26T17:42:14Z kenster: tmp-location, content-type, tags, wants-owned etc. are not slots 2018-07-26T17:42:26Z Bike: yeah. 2018-07-26T17:42:31Z jackdaniel: kenster: put them in your method definition 2018-07-26T17:42:33Z Bike: you can just define this method and it should work. 2018-07-26T17:42:40Z jackdaniel: initialize-instance has &allow-other-keys 2018-07-26T17:43:02Z kenster: what method definition? 2018-07-26T17:43:07Z Bike: the one you just wrote. 2018-07-26T17:43:13Z jackdaniel: (defmethod initialize-instance :after …) 2018-07-26T17:43:14Z kenster: oh, well the values are all nil 2018-07-26T17:43:15Z kenster: weird 2018-07-26T17:43:25Z Bike: how are you calling make-instance? 2018-07-26T17:43:25Z jackdaniel: do you pass them in make-instance? 2018-07-26T17:43:48Z jackdaniel: eventually, do you define :default-initargs in class definition? 2018-07-26T17:44:01Z kenster: LOL wrong level of parentheses 2018-07-26T17:44:17Z kenster: I think anyways 2018-07-26T17:44:19Z kenster: sec 2018-07-26T17:44:36Z lumm quit (Quit: lumm) 2018-07-26T17:45:05Z hiroaki quit (Ping timeout: 244 seconds) 2018-07-26T17:45:40Z jmercouris quit (Remote host closed the connection) 2018-07-26T17:45:42Z kenster: okay yeah that was my fault I think 2018-07-26T17:46:11Z kenster: there's no :default-initargs though, would that be a problem? 2018-07-26T17:46:26Z jackdaniel: no, that shouldn't 2018-07-26T17:46:37Z jackdaniel: *it* shouldn't (?) 2018-07-26T17:46:58Z kenster: okay now I have to debug foreign function memory faults 2018-07-26T17:47:01Z kenster: any way to make that easier? lol 2018-07-26T17:47:12Z Bike: not really 2018-07-26T17:47:13Z beach: Program in Common Lisp instead. 2018-07-26T17:47:37Z jackdaniel: kenster: do you use cffi? 2018-07-26T17:48:13Z kenster: yes 2018-07-26T17:48:34Z jackdaniel: and you call some already existing library? or your own foregin functions? 2018-07-26T17:48:59Z kenster: they are my own foreign functions 2018-07-26T17:49:04Z kenster: so they may be broken 2018-07-26T17:49:32Z jackdaniel: I'd first look if you have correct function declarations with defcfun, then I'd debug your own functions from outside lisp (with gdb called from some shabby main.c) 2018-07-26T17:49:46Z jackdaniel: s/from/against/ 2018-07-26T17:50:03Z kenster: okay, thank you 2018-07-26T17:50:15Z kenster: luckily it's an easy mistake, I used auto in an extern "C" block 2018-07-26T17:50:51Z jackdaniel: and since these are your own functions, recompiling them with bunch of printf is also an option - that's my *lame* favourite debugging technique 2018-07-26T17:51:20Z kenster: where do the printfs go ? does cffi put those to *standard-output*? 2018-07-26T17:51:52Z jackdaniel: to stdout (descriptor 1). if standard-output also prints there, then terminal will be the same 2018-07-26T17:51:59Z jackdaniel: but this is not a case if you use slime 2018-07-26T17:52:08Z jackdaniel: then it will appear in inferior-lisp 2018-07-26T17:52:16Z kenster: awesome 2018-07-26T17:54:29Z kenster: okay thank you, hopefully this works out 2018-07-26T17:54:37Z jackdaniel: good luck and have fun ;) 2018-07-26T17:54:44Z jsral joined #lisp 2018-07-26T17:55:22Z kenster: it's very fun haha 2018-07-26T17:57:03Z pierpal quit (Quit: Poof) 2018-07-26T17:57:23Z pierpal joined #lisp 2018-07-26T18:01:41Z trittweiler joined #lisp 2018-07-26T18:04:08Z fikka joined #lisp 2018-07-26T18:06:53Z kenster: hmmm I'm not seeing the printf result in my inferior-lisp, maybe because it is running in a wookie route it doesn't print? but that's weird because I'm able to say, pprint in a route for instance 2018-07-26T18:09:20Z fikka quit (Ping timeout: 276 seconds) 2018-07-26T18:11:34Z Bike: might be buffered 2018-07-26T18:11:39Z Bike: i have no idea what a wookie root is, tho 2018-07-26T18:12:09Z Bike: if you mean pprint like lisp pprint, that's less likely to be affected by an apache routine doing weird things with stdout,or whatever 2018-07-26T18:13:16Z smurfrobot joined #lisp 2018-07-26T18:13:30Z EvW quit (Ping timeout: 260 seconds) 2018-07-26T18:14:23Z kenster: wookie is a common lisp http server 2018-07-26T18:17:37Z dlowe: Chewbacca is a Wookiee from the planet Kashyyyk. But Chewbacca lives on the planet Endor. Now think about it; that does not make sense! 2018-07-26T18:22:50Z Ven`` joined #lisp 2018-07-26T18:24:42Z random-nick quit (Ping timeout: 260 seconds) 2018-07-26T18:31:27Z sauvin quit (Ping timeout: 240 seconds) 2018-07-26T18:33:36Z hiroaki joined #lisp 2018-07-26T18:35:37Z karlosz joined #lisp 2018-07-26T18:36:13Z kenster: jackdaniel: is this necessary? (cffi:defcvar ("stdout" stdout) :pointer) 2018-07-26T18:37:13Z saki quit (Read error: Connection reset by peer) 2018-07-26T18:37:51Z jackdaniel: if you use printf then no. as I said, I would try to debug your C code with conventional methods (not via Lisp) 2018-07-26T18:38:12Z jackdaniel: I'm going to be afk in a minute, so I won't be much help tonight 2018-07-26T18:38:12Z kenster: alrighty then 2018-07-26T18:38:20Z kenster: no worries 2018-07-26T18:38:42Z kenster: oh I'm a dumb ass 2018-07-26T18:38:48Z kenster: it was in *inferior-lisp* all along 2018-07-26T18:41:02Z Bike: did you not check? 2018-07-26T18:41:13Z kenster: I thought it would print in the REPL like a tard 2018-07-26T18:41:16Z kenster: :( 2018-07-26T18:41:18Z Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-26T18:41:28Z jackdaniel: did 2018-07-26T18:41:37Z jackdaniel: didn't I say it will be in inferior-lisp? 2018-07-26T18:41:54Z kenster: >.> 2018-07-26T18:42:06Z Bike: you literally said "I'm not seeing the printf result in my inferior-lisp" 2018-07-26T18:42:20Z Bike: please don't make things up if you don't understand what someone trying to help you is saying 2018-07-26T18:42:21Z kenster: I forgot the two buffers are distinct 2018-07-26T18:42:33Z kenster: the REPL and *inferior-lisp* 2018-07-26T18:42:41Z kenster: in slime, they're two buffers, right? I forgot that 2018-07-26T18:43:11Z kenster: but OK 2018-07-26T18:43:30Z orivej joined #lisp 2018-07-26T18:43:43Z jasom: kenster: *inferior-lisp* is basically the emacs hosted console for running the lisp; the REPL is launched by slime after the lisp is up and running. 2018-07-26T18:44:06Z EvW1 joined #lisp 2018-07-26T18:44:15Z kenster: yeah, I don't think I was cognizant of that fact because SLIME redirects you to the REPL after briefly showing *inferior-lisp* 2018-07-26T18:44:55Z jasom: kenster: It actually depends on how you configure it, but yes that can be confusing. IIRC the repl isn't even loaded by default with slime. 2018-07-26T18:45:26Z jasom: but if you use a prepacked slime+lisp+emacs (e.g. portacle or lispstick) then you do get dumped into the REPL immediately 2018-07-26T18:45:48Z saki joined #lisp 2018-07-26T18:45:52Z kenster: it might just be spacemacs's lisp layer that does that too 2018-07-26T18:45:56Z jasom: some people prefer to not use the repl at all, rather using the evaulation shortcuts from a scratch buffer. 2018-07-26T18:46:29Z kenster: I think you're right though, the repl isn't loaded by default 2018-07-26T18:47:04Z Bike: slime-repl is a separate contrib or suchlike. 2018-07-26T18:48:38Z jasom: minion: memo for beach: I've been reading more on SICL's GC. Will all calls into foreign code be treated as potentially blocking operations? I can't think of any other safe way to do it. 2018-07-26T18:48:39Z minion: Remembered. I'll tell beach when he/she/it next speaks. 2018-07-26T18:49:39Z Bike: it's not like beach is one to concern himself terribly with foreign code 2018-07-26T18:49:39Z jackdaniel: I think beach is not especially interested in restraining himself with non-lisp code (i.e ffi) 2018-07-26T18:49:46Z jackdaniel: heh 2018-07-26T18:50:12Z Bike: man's got a reputation 2018-07-26T18:51:11Z jackdaniel: not that it's not reiterated every now and then on this channel 2018-07-26T18:51:29Z jackdaniel: good night everyone \o 2018-07-26T18:54:15Z jasom: well part of the advantage of a non-moving GC is FFI, and I think he did mention that somewhere in one of his papers 2018-07-26T18:54:32Z kenster: good night jackdaniel thanks for the tips 2018-07-26T18:55:05Z jasom: all you need to do is promote any object you make a foreign pointer to be outside the nursery and you never need to worry about it moving again 2018-07-26T18:58:49Z random-nick joined #lisp 2018-07-26T19:00:32Z fikka joined #lisp 2018-07-26T19:04:27Z xrash quit (Ping timeout: 240 seconds) 2018-07-26T19:05:43Z fikka quit (Ping timeout: 268 seconds) 2018-07-26T19:06:12Z smurfrobot quit (Remote host closed the connection) 2018-07-26T19:07:49Z smurfrobot joined #lisp 2018-07-26T19:09:57Z shenghi quit (Ping timeout: 264 seconds) 2018-07-26T19:10:37Z vlatkoB quit (Remote host closed the connection) 2018-07-26T19:11:14Z shenghi joined #lisp 2018-07-26T19:12:28Z terpri joined #lisp 2018-07-26T19:15:08Z Kundry_Wag joined #lisp 2018-07-26T19:15:54Z EvW1 quit (Ping timeout: 256 seconds) 2018-07-26T19:19:48Z eminhi quit (Quit: leaving) 2018-07-26T19:24:58Z lumm joined #lisp 2018-07-26T19:27:44Z foobared joined #lisp 2018-07-26T19:28:05Z smurfrobot quit (Remote host closed the connection) 2018-07-26T19:31:12Z makomo joined #lisp 2018-07-26T19:39:26Z kjeldahl joined #lisp 2018-07-26T19:47:21Z rozenglass joined #lisp 2018-07-26T19:47:27Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-26T19:48:21Z Josh_2 quit (Ping timeout: 264 seconds) 2018-07-26T19:51:44Z foobared left #lisp 2018-07-26T19:53:32Z saki quit (Ping timeout: 255 seconds) 2018-07-26T19:55:28Z nickenchuggets joined #lisp 2018-07-26T19:55:28Z nickenchuggets quit (Changing host) 2018-07-26T19:55:28Z nickenchuggets joined #lisp 2018-07-26T19:59:18Z MinnowTaur joined #lisp 2018-07-26T20:09:14Z Fare quit (Ping timeout: 268 seconds) 2018-07-26T20:09:22Z Achylles joined #lisp 2018-07-26T20:10:17Z MinnowTaur quit (Remote host closed the connection) 2018-07-26T20:11:26Z rozenglass quit (Ping timeout: 256 seconds) 2018-07-26T20:12:15Z Fare joined #lisp 2018-07-26T20:13:42Z cage_ quit (Quit: Leaving) 2018-07-26T20:15:20Z varjagg joined #lisp 2018-07-26T20:15:24Z nowhere_man quit (Ping timeout: 268 seconds) 2018-07-26T20:15:59Z Kundry_Wag joined #lisp 2018-07-26T20:16:34Z Arcaelyx joined #lisp 2018-07-26T20:17:26Z al-damiri joined #lisp 2018-07-26T20:21:03Z Kundry_Wag quit (Ping timeout: 265 seconds) 2018-07-26T20:22:01Z Fare quit (Ping timeout: 265 seconds) 2018-07-26T20:27:50Z fikka joined #lisp 2018-07-26T20:31:32Z saki joined #lisp 2018-07-26T20:31:35Z hjudt quit (Read error: Connection reset by peer) 2018-07-26T20:32:04Z hjudt joined #lisp 2018-07-26T20:33:04Z karswell joined #lisp 2018-07-26T20:34:05Z Ven`` joined #lisp 2018-07-26T20:34:12Z kenster: gaaah I need help with a macro again :( 2018-07-26T20:38:41Z Bike: you gonna elaborate or are you just making a statement 2018-07-26T20:39:04Z kenster: http://dailyprog.org/f/024m/ 2018-07-26T20:39:40Z kenster: in defmethod I have trouble getting the slot-value of 'ptr out of self 2018-07-26T20:39:47Z kenster: so Itried adding another level of quoting etc. 2018-07-26T20:40:16Z kenster: Illegal function call in method body: 2018-07-26T20:40:17Z kenster: ; ((SETF (PTR SELF) NIL)) 2018-07-26T20:40:24Z kenster: for this function: 2018-07-26T20:40:25Z kenster: (defcmethod upload-session "delete" delete-ptr :void t () 2018-07-26T20:40:27Z kenster: (setf (ptr self) nil)) 2018-07-26T20:40:41Z v0|d: kenster: `` and ',' 2018-07-26T20:41:13Z v0|d: try rplcng ',, with ',' 2018-07-26T20:41:30Z Achylles quit (Remote host closed the connection) 2018-07-26T20:42:07Z pierpal quit (Quit: Poof) 2018-07-26T20:42:14Z kenster: same error 2018-07-26T20:42:26Z kenster: I only did the ',, replacement though, was there something else? 2018-07-26T20:42:27Z pierpal joined #lisp 2018-07-26T20:42:32Z test1600 quit (Quit: Leaving) 2018-07-26T20:42:58Z milanj joined #lisp 2018-07-26T20:43:14Z rippa quit (Ping timeout: 260 seconds) 2018-07-26T20:43:38Z v0|d: ,,has-ptr ? 2018-07-26T20:44:29Z v0|d: look for double commata 2018-07-26T20:47:03Z kenster: I'm not sure what you are implying 2018-07-26T20:47:14Z Kundry_W_ quit (Remote host closed the connection) 2018-07-26T20:47:15Z _death: not sure what you're trying to do (good idea to write down the desired expansion) but I doubt you want nested backquotes 2018-07-26T20:47:29Z Ven`` quit (Ping timeout: 248 seconds) 2018-07-26T20:47:47Z kenster: well if I don't have it nested, I can't get slot-value from self 2018-07-26T20:48:22Z kenster: because I need to do (append '((slot-value self 'ptr)) method-parameters)) 2018-07-26T20:48:37Z kenster: but in defmethod, self is unbound 2018-07-26T20:48:49Z sjl quit (Quit: WeeChat 2.2-dev) 2018-07-26T20:49:28Z kenster: so I have to expand '((slot-value self 'ptr)) within the defmethod's expansion time, not the base macro's expansion time 2018-07-26T20:49:37Z kenster: at least I think so, I don't know for certain 2018-07-26T20:49:56Z _death: did you write down the desired expansion 2018-07-26T20:53:15Z kenster: (defmethod method-name ((self upload-session) &rest method-parameters) (let (if t) (append '((slot-value self 'ptr)) method-parameters)) 2018-07-26T20:53:18Z kenster: oops 2018-07-26T20:53:56Z _death: methods don't have names, by the way 2018-07-26T20:54:37Z v0|d: kenster: try ,@',body inside `` 2018-07-26T20:55:07Z kenster: (apply #:getBucket (slot-value self 'ptr) #) 2018-07-26T20:55:30Z kenster: basically if if-ptr is true I want to put the slot-value self 'ptr as the first argument in the apply 2018-07-26T20:55:48Z _death: #< in an expansion is a no-no 2018-07-26T20:56:39Z v0|d: (append (if ..) rest) 2018-07-26T20:56:47Z v0|d: (append nil a) => a 2018-07-26T20:56:48Z kenster: actually it's (apply #:getBucket '((slot-value self 'ptr) #)) 2018-07-26T20:56:54Z nowhere_man joined #lisp 2018-07-26T20:57:46Z smurfrobot joined #lisp 2018-07-26T20:57:46Z _death: (apply ... ,@(when has-ptr `((slot-value self 'ptr))) ...) 2018-07-26T20:59:16Z _death: you should also know that apply expects a list as its last argument 2018-07-26T21:00:19Z kenster: hmm 2018-07-26T21:01:15Z _death: clhs funcall 2018-07-26T21:01:15Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_funcal.htm 2018-07-26T21:01:21Z rumbler31 joined #lisp 2018-07-26T21:01:30Z karlosz quit (Quit: karlosz) 2018-07-26T21:01:44Z kenster: by putting slot-value in that apply call with when, could I get rid of one level of quoting? 2018-07-26T21:02:23Z rumbler31 quit (Client Quit) 2018-07-26T21:02:27Z smurfrobot quit (Ping timeout: 244 seconds) 2018-07-26T21:02:34Z bsund joined #lisp 2018-07-26T21:04:04Z kajo quit (Ping timeout: 265 seconds) 2018-07-26T21:04:39Z Kundry_Wag joined #lisp 2018-07-26T21:06:12Z kajo joined #lisp 2018-07-26T21:06:33Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-26T21:07:00Z nickenchuggets joined #lisp 2018-07-26T21:07:00Z nickenchuggets quit (Changing host) 2018-07-26T21:07:00Z nickenchuggets joined #lisp 2018-07-26T21:07:17Z Kundry_Wag quit (Remote host closed the connection) 2018-07-26T21:07:36Z _death: you can also pull the expression out of the apply form and have (apply ... ,@the-result ...) .. if I'm guessing what you want correctly, then you didn't need another level of quoting anyway, you were just confused and got yourself further confused 2018-07-26T21:07:39Z kenster: oh fug, it works 2018-07-26T21:07:55Z karlosz joined #lisp 2018-07-26T21:08:14Z kenster: yeah that happens with me and macros 2018-07-26T21:08:22Z kenster: I still haven't read Let Over Lambda :p 2018-07-26T21:08:33Z pestyOverlord joined #lisp 2018-07-26T21:08:46Z pestyOverlord left #lisp 2018-07-26T21:09:26Z _death: again, it's a good idea to write down the macroexpansion you want.. then you can write a function to generate it.. and s/defun/defmacro 2018-07-26T21:10:17Z _death: On Lisp has some good tips on writing macros 2018-07-26T21:10:19Z LiamH quit (Quit: Leaving.) 2018-07-26T21:10:30Z kenster: in this case I was modifying an existing macro 2018-07-26T21:10:37Z kenster: I was already working with this 2018-07-26T21:10:54Z kenster: but before I didn't include the (slot-value self 'ptr) portion if has-ptr was true 2018-07-26T21:11:08Z kenster: I thought it would be trivial to add but the nested backquoting had me confused 2018-07-26T21:11:17Z kenster: unnecessary nested backquoting* 2018-07-26T21:11:27Z Denommus quit (Read error: Connection reset by peer) 2018-07-26T21:12:28Z Kundry_Wag joined #lisp 2018-07-26T21:13:34Z karlosz quit (Ping timeout: 264 seconds) 2018-07-26T21:14:58Z jsral quit (Remote host closed the connection) 2018-07-26T21:15:07Z newbie26 joined #lisp 2018-07-26T21:21:35Z xrash joined #lisp 2018-07-26T21:22:13Z kajo quit (Quit: From my rotting body, flowers shall grow and I am in them and that is eternity. -- E. M.) 2018-07-26T21:22:19Z light2yellow quit (Quit: light2yellow) 2018-07-26T21:24:41Z megalography joined #lisp 2018-07-26T21:26:40Z saki quit (Ping timeout: 256 seconds) 2018-07-26T21:30:03Z zfree joined #lisp 2018-07-26T21:30:25Z Jesin joined #lisp 2018-07-26T21:35:32Z saki joined #lisp 2018-07-26T21:37:55Z pjb: _death: not necessarily. What matters, is that the objects have a make-load-form method, or are otherwise savable in the fasl file. 2018-07-26T21:38:05Z asdf123 quit (Remote host closed the connection) 2018-07-26T21:38:05Z pjb: They don't need to be printable readably at all. 2018-07-26T21:42:54Z Bike quit (Ping timeout: 252 seconds) 2018-07-26T21:48:05Z mindCrime quit (Ping timeout: 240 seconds) 2018-07-26T21:49:50Z Xach quit (Ping timeout: 245 seconds) 2018-07-26T21:50:09Z zfree quit (Quit: zfree) 2018-07-26T21:50:35Z varjagg quit (Ping timeout: 240 seconds) 2018-07-26T21:51:35Z Xach joined #lisp 2018-07-26T21:57:22Z pierpa joined #lisp 2018-07-26T21:57:58Z Kevslinger quit (Quit: Connection closed for inactivity) 2018-07-26T22:02:44Z kenster: hey so it tries to do slot-value self 'ptr but it's using CFFI-UTILS:ptr instead of the correct field name 2018-07-26T22:04:04Z kenster: it's supposed to be FILE-BUCKET:ptr 2018-07-26T22:04:13Z kenster: do I have to pass in the package symbol into the macro? 2018-07-26T22:04:46Z beach quit (Ping timeout: 256 seconds) 2018-07-26T22:06:26Z pjb: yes. 2018-07-26T22:06:39Z pjb: symbols are symbols. 2018-07-26T22:06:41Z kenster: ty 2018-07-26T22:07:19Z varjagg joined #lisp 2018-07-26T22:10:06Z megalography quit (Ping timeout: 268 seconds) 2018-07-26T22:11:34Z varjagg quit (Ping timeout: 256 seconds) 2018-07-26T22:12:33Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-26T22:12:56Z nickenchuggets joined #lisp 2018-07-26T22:12:56Z nickenchuggets quit (Changing host) 2018-07-26T22:12:56Z nickenchuggets joined #lisp 2018-07-26T22:16:47Z Kundry_Wag_ joined #lisp 2018-07-26T22:19:08Z Fare joined #lisp 2018-07-26T22:20:31Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-26T22:20:58Z nickenchuggets joined #lisp 2018-07-26T22:20:58Z nickenchuggets quit (Changing host) 2018-07-26T22:20:58Z nickenchuggets joined #lisp 2018-07-26T22:21:15Z v0|d: kenster: (symbol-package symbol) 2018-07-26T22:22:45Z pjb: kenster: file-bucket:ptr ! 2018-07-26T22:23:42Z caltelt joined #lisp 2018-07-26T22:23:54Z megalography joined #lisp 2018-07-26T22:25:19Z Fare quit (Ping timeout: 260 seconds) 2018-07-26T22:26:10Z tessier_ is now known as tessier 2018-07-26T22:27:53Z varjagg joined #lisp 2018-07-26T22:28:40Z angavrilov quit (Remote host closed the connection) 2018-07-26T22:31:50Z random-nick quit (Ping timeout: 256 seconds) 2018-07-26T22:32:18Z varjagg quit (Ping timeout: 268 seconds) 2018-07-26T22:35:34Z Bike joined #lisp 2018-07-26T22:37:00Z saki quit (Ping timeout: 244 seconds) 2018-07-26T22:43:38Z hiroaki quit (Ping timeout: 255 seconds) 2018-07-26T22:46:13Z smurfrobot joined #lisp 2018-07-26T22:49:24Z mange joined #lisp 2018-07-26T22:49:55Z Kundry_Wag_ quit (Ping timeout: 244 seconds) 2018-07-26T22:50:03Z spm_ quit (Remote host closed the connection) 2018-07-26T22:50:41Z varjagg joined #lisp 2018-07-26T22:51:01Z _death: pjb: this is true but still I don't see it as good style 2018-07-26T22:51:05Z smurfrobot quit (Ping timeout: 240 seconds) 2018-07-26T22:51:35Z dented42 joined #lisp 2018-07-26T22:55:04Z varjagg quit (Ping timeout: 260 seconds) 2018-07-26T22:56:00Z jasmith joined #lisp 2018-07-26T22:56:15Z Fare joined #lisp 2018-07-26T23:02:08Z MoziM quit (Quit: WeeChat 2.2) 2018-07-26T23:03:00Z robotoad quit (Quit: robotoad) 2018-07-26T23:04:09Z MoziM joined #lisp 2018-07-26T23:08:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-26T23:13:54Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-26T23:15:18Z saki joined #lisp 2018-07-26T23:16:02Z knusbaum joined #lisp 2018-07-26T23:18:10Z nowhere_man joined #lisp 2018-07-26T23:21:05Z didi joined #lisp 2018-07-26T23:22:57Z didi: I just noticed: isn't it interesting that remove-* functions don't mutate data, but REMF and REMHASH do? I mean, for consistency, REMF and REMHASH should be called DELF and DELHASH because delete-* functions mutate. 2018-07-26T23:27:51Z Xach: what about maphash 2018-07-26T23:28:08Z Bike: delete doesn't necessarily mutate, though 2018-07-26T23:28:13Z Bike: remf is in its own boat 2018-07-26T23:31:43Z _death: what about remprop.. 2018-07-26T23:31:46Z lumm quit (Ping timeout: 260 seconds) 2018-07-26T23:33:36Z fikka joined #lisp 2018-07-26T23:34:11Z _death: it's interesting that it was retained while, say, putprop was not 2018-07-26T23:38:09Z fikka quit (Ping timeout: 248 seconds) 2018-07-26T23:38:58Z robotoad joined #lisp 2018-07-26T23:39:41Z lumm joined #lisp 2018-07-26T23:48:43Z codenix joined #lisp 2018-07-26T23:53:02Z aeth: didi: The order of gethash is wrong, too 2018-07-26T23:53:39Z aeth: It's (gethash key hash-table) while most other things go (foo object key-or-index-or-whatever) except iirc nth 2018-07-26T23:54:40Z aeth: The latter order has to be the general order because aref accepts multiple indices, e.g. (aref 0d-array) and (aref 1d-array 3) and (aref 9d-array 4 5 6 1 2 3 7 8 9) 2018-07-26T23:54:40Z _death: it is not "wrong".. in certain programs it is actually the preferred order 2018-07-26T23:54:56Z saki quit (Ping timeout: 268 seconds) 2018-07-26T23:55:19Z saki joined #lisp 2018-07-26T23:55:25Z aeth: _death: When everything except 2 has one convention and the rest have the other order, then it's wrong by the conventions of the language 2018-07-26T23:55:52Z edgar-rft: REMAINDER doesn't mutate either :-) 2018-07-26T23:56:10Z Fare quit (Ping timeout: 264 seconds) 2018-07-26T23:56:21Z pierpa: lol 2018-07-26T23:56:56Z Fare joined #lisp 2018-07-26T23:57:12Z caltelt_ quit (Read error: Connection reset by peer) 2018-07-26T23:57:14Z _death: aeth: assoc, find, ... 2018-07-26T23:57:54Z captgector quit (Read error: Connection reset by peer) 2018-07-26T23:58:14Z aeth: _death: find is not an accessor. assoc then makes it 3. Still not good, considering plists, sequences, arrays, etc., go the other order 2018-07-26T23:58:17Z _death: aeth: CL is inconsistent in this regard, but there were reasons, historical or otherwise.. 2018-07-26T23:58:25Z aeth: I'm pretty sure the reason was 100% historical 2018-07-26T23:58:33Z _death: aeth: what I'm saying is that in your own programs, there are reasons to go either way as well 2018-07-26T23:58:38Z captgector joined #lisp 2018-07-26T23:59:01Z _death: aeth: well, there was a reason when the operator was defined too :) 2018-07-26T23:59:09Z aeth: Everything new should follow the new order, i.e. the order ELT, AREF, and GET, etc. 2018-07-26T23:59:20Z _death: aeth: nope 2018-07-26T23:59:25Z aeth: It also makes it more like other languages. 2018-07-26T23:59:27Z xrash quit (Ping timeout: 240 seconds) 2018-07-26T23:59:43Z _death: aeth: other languages don't have special variables or good support for REPLs 2018-07-26T23:59:52Z _death: aeth: other languages suck 2018-07-27T00:00:01Z aeth: _death: Special variables are pretty bad except for I/O streams 2018-07-27T00:00:11Z aeth: Which is probably why that's the main place where they're used in the standard. 2018-07-27T00:00:39Z _death: aeth: thoroughly disagree... 2018-07-27T00:01:03Z caltelt quit (Quit: Leaving) 2018-07-27T00:01:06Z aeth: _death: They kill performance and they're full of surprises (which is why they have to have earmuffs). 2018-07-27T00:01:21Z caltelt joined #lisp 2018-07-27T00:01:27Z Fare quit (Ping timeout: 240 seconds) 2018-07-27T00:01:39Z aeth: When your feature fails at both performance and reliability, it's pretty niche 2018-07-27T00:02:12Z aeth: Most of the time they're used in CL code it's because CL lacks dynamically scoped globals, not because they're the right fit. 2018-07-27T00:02:19Z aeth: (portably lacks it) 2018-07-27T00:02:30Z _death: welp, you're entitled to your opinion.. me, I'll stick with CL :) 2018-07-27T00:02:37Z aeth: s/dynamically scoped/lexically scoped/ 2018-07-27T00:02:40Z aeth: I had it backwards 2018-07-27T00:03:19Z aeth: _death: CL is a language for the programmer, not a language like Java, which is why it has stuff like gotos that 95% of the time are the wrong choice. 2018-07-27T00:03:28Z pierpa: we are all sticking with CL, notwithstanding its many warts 2018-07-27T00:04:19Z aeth: The only use for dynamic variables that I agree with are stream stuff like *standard-output*, *standard-input*, etc., but that's a useful use because otherwise you have to pass streams really deep into your many functions and write the program around it. 2018-07-27T00:04:53Z aeth: Most of the rest of the time if you want globals to get around having too many parameters, you'd want lexically scoped globals 2018-07-27T00:05:15Z aeth: (But globals in general are a bad idea, and CL programmers use them far too often.) 2018-07-27T00:05:29Z _death: aeth: I think you value things differently from the values Lisp tradition emphasizes, and so you miss out on basic things like the worth of special variables 2018-07-27T00:06:45Z aeth: _death: Every language in the 1980s made mistakes, even Lisp. Common Lisp has to keep compatibility with even pre-1980s Lisps. That means it has features that *should* be avoided in most code. That doesn't mean Lisp is bad. As for tradition, I've seen historic pre-structured-programming Lisp programs and they like to use stuff like PROG and GO. 2018-07-27T00:07:21Z aeth: And like I said, Lisp isn't Java. Even if something is 99% of the time a bad idea, Lisp will have it there for the 1% of the time, like goto. 2018-07-27T00:08:09Z _death: aeth: like I said, you have a blind spot for certain values and that makes you see things as a "mistake".. special variables are indispensable when you want to write programs that are actually interactive languages for solving problems 2018-07-27T00:08:57Z aeth: _death: As I said before, sSpecial variables kill performance and reliability. 2018-07-27T00:09:04Z aeth: *special 2018-07-27T00:09:19Z smurfrobot joined #lisp 2018-07-27T00:09:27Z aeth: Obviously programs that care about neither can still use them, and they are still useful in niches like streams. 2018-07-27T00:09:46Z _death: and I think you're wrong about that as well.. but I've no reason to believe anything I say right now can change it 2018-07-27T00:09:46Z Bike: why do these debates always start with stupid shit like naming 2018-07-27T00:09:56Z Bike: i have enough sheds 2018-07-27T00:10:39Z aeth: _death: You can't change my mind because I have written multithreaded CL, where globals *really* start to become unreliable. 2018-07-27T00:10:51Z aeth: There they're useless even for quick hacks 2018-07-27T00:11:06Z _death: aeth: you're not the only programming in the world to have written multithreaded CL :) 2018-07-27T00:11:10Z _death: *programmer 2018-07-27T00:13:49Z smurfrobot quit (Ping timeout: 260 seconds) 2018-07-27T00:15:00Z mindCrime joined #lisp 2018-07-27T00:18:57Z pierpal quit (Ping timeout: 240 seconds) 2018-07-27T00:19:56Z lumm quit (Quit: lumm) 2018-07-27T00:21:46Z Kundry_Wag quit (Remote host closed the connection) 2018-07-27T00:22:21Z no-defun-allowed: are there any fancy clustering packages for CL? 2018-07-27T00:22:23Z pioneer42 joined #lisp 2018-07-27T00:22:31Z no-defun-allowed: like lparallel but for multiple machines 2018-07-27T00:22:47Z _death: lfarm? 2018-07-27T00:23:04Z no-defun-allowed: yeah, i remember seeing one, might have been that 2018-07-27T00:23:14Z no-defun-allowed: looks perfect, ty 2018-07-27T00:23:38Z al-damiri quit (Quit: Connection closed for inactivity) 2018-07-27T00:23:44Z Khisanth quit (Ping timeout: 276 seconds) 2018-07-27T00:27:49Z X-Scale quit (Ping timeout: 260 seconds) 2018-07-27T00:28:40Z Fare joined #lisp 2018-07-27T00:30:07Z X-Scale joined #lisp 2018-07-27T00:34:05Z Fare quit (Ping timeout: 240 seconds) 2018-07-27T00:35:30Z pjb quit (Ping timeout: 256 seconds) 2018-07-27T00:43:27Z Khisanth joined #lisp 2018-07-27T00:43:40Z Kundry_Wag joined #lisp 2018-07-27T00:57:25Z skeuomorf joined #lisp 2018-07-27T00:57:33Z skeuomorf left #lisp 2018-07-27T00:58:00Z Kundry_Wag_ joined #lisp 2018-07-27T00:58:45Z _death: I like to experiment with different styles of programs.. here is a small game that uses the Lisp REPL as the UI https://gist.github.com/death/4c03eb0bb437b309d7b3d8db6248f590 2018-07-27T00:59:58Z nullniverse joined #lisp 2018-07-27T01:00:18Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-27T01:03:58Z fikka joined #lisp 2018-07-27T01:08:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-27T01:12:07Z Kaisyu joined #lisp 2018-07-27T01:13:59Z nowhere_man quit (Remote host closed the connection) 2018-07-27T01:14:33Z nowhere_man joined #lisp 2018-07-27T01:21:48Z ninegrid quit (Remote host closed the connection) 2018-07-27T01:25:34Z lemo joined #lisp 2018-07-27T01:27:39Z dddddd quit (Remote host closed the connection) 2018-07-27T01:32:37Z jusss joined #lisp 2018-07-27T01:36:07Z captgector is now known as gector 2018-07-27T01:38:25Z karlosz joined #lisp 2018-07-27T01:38:33Z Kundry_Wag_ quit (Remote host closed the connection) 2018-07-27T01:45:17Z Oladon joined #lisp 2018-07-27T01:45:56Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-27T01:47:44Z karlosz quit (Ping timeout: 260 seconds) 2018-07-27T01:49:44Z slyrus_ quit (Ping timeout: 256 seconds) 2018-07-27T01:52:06Z smurfrobot joined #lisp 2018-07-27T01:54:06Z karlosz joined #lisp 2018-07-27T01:54:54Z dented42 quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-27T01:56:04Z Kundry_Wag joined #lisp 2018-07-27T01:56:26Z smurfrobot quit (Ping timeout: 244 seconds) 2018-07-27T01:58:20Z vultyre joined #lisp 2018-07-27T01:58:29Z fikka joined #lisp 2018-07-27T02:00:00Z vultyre quit (Client Quit) 2018-07-27T02:00:33Z Kundry_Wag quit (Ping timeout: 248 seconds) 2018-07-27T02:01:19Z slyrus_ joined #lisp 2018-07-27T02:02:44Z robotoad quit (Quit: robotoad) 2018-07-27T02:02:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-27T02:04:54Z makomo_ joined #lisp 2018-07-27T02:05:41Z milanj quit (Quit: This computer has gone to sleep) 2018-07-27T02:05:49Z mindCrime quit (Ping timeout: 260 seconds) 2018-07-27T02:08:08Z makomo quit (Ping timeout: 268 seconds) 2018-07-27T02:10:34Z orivej quit (Ping timeout: 264 seconds) 2018-07-27T02:15:20Z pierpal joined #lisp 2018-07-27T02:17:32Z Kundry_Wag joined #lisp 2018-07-27T02:17:53Z housel quit (Read error: Connection reset by peer) 2018-07-27T02:19:27Z mindCrime joined #lisp 2018-07-27T02:20:09Z robotoad joined #lisp 2018-07-27T02:23:39Z pioneer42 left #lisp 2018-07-27T02:27:44Z asarch joined #lisp 2018-07-27T02:32:05Z mindCrime quit (Ping timeout: 244 seconds) 2018-07-27T02:36:18Z eli_oat joined #lisp 2018-07-27T02:36:59Z eli_oat quit (Client Quit) 2018-07-27T02:37:16Z eli_oat joined #lisp 2018-07-27T02:40:40Z Jesin quit (Quit: Leaving) 2018-07-27T02:44:32Z eli_oat quit (Quit: eli_oat) 2018-07-27T02:44:50Z eli_oat joined #lisp 2018-07-27T02:46:16Z didi left #lisp 2018-07-27T02:47:11Z dented42 joined #lisp 2018-07-27T02:48:14Z eminhi joined #lisp 2018-07-27T02:48:25Z eli_oat quit (Client Quit) 2018-07-27T02:48:40Z eli_oat joined #lisp 2018-07-27T02:49:27Z eli_oat quit (Client Quit) 2018-07-27T02:49:44Z eli_oat joined #lisp 2018-07-27T02:51:18Z Kundry_Wag quit (Ping timeout: 268 seconds) 2018-07-27T02:51:54Z dented42 quit (Ping timeout: 260 seconds) 2018-07-27T02:52:44Z papachan quit (Quit: Leaving) 2018-07-27T02:52:44Z milanj joined #lisp 2018-07-27T03:00:18Z karlosz quit (Quit: karlosz) 2018-07-27T03:00:33Z karlosz joined #lisp 2018-07-27T03:01:43Z karswell quit (Read error: Connection reset by peer) 2018-07-27T03:02:05Z karswell_ joined #lisp 2018-07-27T03:02:24Z makomo_ quit (Ping timeout: 260 seconds) 2018-07-27T03:07:22Z asarch quit (Ping timeout: 256 seconds) 2018-07-27T03:08:22Z fikka joined #lisp 2018-07-27T03:08:41Z Pixel_Outlaw joined #lisp 2018-07-27T03:09:40Z beach joined #lisp 2018-07-27T03:10:12Z beach: Good morning everyone! 2018-07-27T03:10:33Z mindCrime joined #lisp 2018-07-27T03:10:50Z beach: jasom: You may be right. But as Bike and jackdaniel pointed out, I haven't given foreign code much thought. 2018-07-27T03:10:50Z housel joined #lisp 2018-07-27T03:13:28Z fikka quit (Ping timeout: 256 seconds) 2018-07-27T03:14:19Z pierpa quit (Quit: Page closed) 2018-07-27T03:15:44Z mindCrime quit (Ping timeout: 256 seconds) 2018-07-27T03:18:01Z LdBeth: Good afternoon 2018-07-27T03:19:13Z equwal joined #lisp 2018-07-27T03:19:30Z equwal quit (Remote host closed the connection) 2018-07-27T03:21:26Z dented42 joined #lisp 2018-07-27T03:25:09Z scottj quit (Quit: leaving) 2018-07-27T03:26:54Z SaganMan is now known as happiness 2018-07-27T03:27:23Z happiness is now known as SaganMan 2018-07-27T03:27:51Z smurfrobot joined #lisp 2018-07-27T03:27:52Z SaganMan is now known as smiling 2018-07-27T03:29:05Z beach: I am making progress on my IR viewer. Next, I will improve the layout of control arcs that go to other places than the successor instruction: http://metamodular.com/IR-viewer.png 2018-07-27T03:30:01Z Pixel_Outlaw quit (Remote host closed the connection) 2018-07-27T03:30:13Z smiling is now known as SaganMan 2018-07-27T03:38:48Z pierpal quit (Quit: Poof) 2018-07-27T03:39:08Z pierpal joined #lisp 2018-07-27T03:43:43Z nowhere_man quit (Remote host closed the connection) 2018-07-27T03:44:02Z Kundry_Wag joined #lisp 2018-07-27T03:44:09Z nowhere_man joined #lisp 2018-07-27T03:48:32Z fikka joined #lisp 2018-07-27T03:49:43Z eli_oat quit (Quit: eli_oat) 2018-07-27T03:49:57Z eli_oat joined #lisp 2018-07-27T03:50:11Z beach: scymtym: I had an interesting idea for Concrete Syntax Trees. In CST-FROM-EXPRESSION we normally don't get source locations. But we could pretty-print the expression to a string and use the source locations in that string to store in the CST. 2018-07-27T03:50:29Z lemo quit (Quit: lemo) 2018-07-27T03:50:51Z lemo joined #lisp 2018-07-27T03:53:16Z fikka quit (Ping timeout: 256 seconds) 2018-07-27T03:58:15Z smurfrobot quit (Remote host closed the connection) 2018-07-27T04:04:55Z lemo quit (Quit: lemo) 2018-07-27T04:05:14Z lemo joined #lisp 2018-07-27T04:06:49Z eli_oat quit (Quit: eli_oat) 2018-07-27T04:07:06Z eli_oat joined #lisp 2018-07-27T04:08:21Z EvW joined #lisp 2018-07-27T04:10:36Z Bike quit (Quit: Lost terminal) 2018-07-27T04:10:43Z lemo quit (Changing host) 2018-07-27T04:10:43Z lemo joined #lisp 2018-07-27T04:11:22Z lemo quit (Quit: lemo) 2018-07-27T04:11:43Z lemo joined #lisp 2018-07-27T04:11:54Z lemo quit (Changing host) 2018-07-27T04:11:54Z lemo joined #lisp 2018-07-27T04:12:49Z EvW quit (Ping timeout: 248 seconds) 2018-07-27T04:13:25Z saki quit (Read error: Connection reset by peer) 2018-07-27T04:15:40Z karswell_ quit (Remote host closed the connection) 2018-07-27T04:17:05Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-27T04:17:24Z karswell joined #lisp 2018-07-27T04:20:40Z dmiles quit (Ping timeout: 245 seconds) 2018-07-27T04:24:46Z daniel-s joined #lisp 2018-07-27T04:29:09Z vtomole_ joined #lisp 2018-07-27T04:29:21Z karlosz quit (Quit: karlosz) 2018-07-27T04:29:24Z dmiles joined #lisp 2018-07-27T04:29:57Z vsync quit (Ping timeout: 240 seconds) 2018-07-27T04:30:49Z vtomole_: stylewarning: Made some changes https://github.com/tarballs-are-good/cl-forest/pull/3 2018-07-27T04:31:57Z eminhi quit (Quit: leaving) 2018-07-27T04:40:58Z caltelt_ joined #lisp 2018-07-27T04:40:58Z caltelt_ quit (Read error: Connection reset by peer) 2018-07-27T04:44:38Z fikka joined #lisp 2018-07-27T04:49:05Z fikka quit (Ping timeout: 248 seconds) 2018-07-27T04:49:46Z orivej joined #lisp 2018-07-27T04:51:07Z wheelsucker quit (Remote host closed the connection) 2018-07-27T04:51:09Z vlatkoB joined #lisp 2018-07-27T04:52:01Z Fare joined #lisp 2018-07-27T04:52:12Z megalography quit (Ping timeout: 256 seconds) 2018-07-27T04:56:58Z vsync joined #lisp 2018-07-27T05:06:14Z gector quit (Ping timeout: 256 seconds) 2018-07-27T05:07:48Z megalography joined #lisp 2018-07-27T05:08:48Z gector joined #lisp 2018-07-27T05:09:40Z Fare quit (Ping timeout: 244 seconds) 2018-07-27T05:18:58Z smurfrobot joined #lisp 2018-07-27T05:24:09Z smurfrobot quit (Ping timeout: 260 seconds) 2018-07-27T05:25:34Z Fare joined #lisp 2018-07-27T05:32:06Z anewuser joined #lisp 2018-07-27T05:33:11Z test1600 joined #lisp 2018-07-27T05:33:24Z brettgilio joined #lisp 2018-07-27T05:37:30Z fikka joined #lisp 2018-07-27T05:37:35Z dented42 quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-27T05:39:12Z vtomole_ quit (Ping timeout: 252 seconds) 2018-07-27T05:40:10Z sauvin joined #lisp 2018-07-27T05:41:56Z fikka quit (Ping timeout: 256 seconds) 2018-07-27T05:42:04Z ofi joined #lisp 2018-07-27T05:45:20Z lemo quit (Ping timeout: 256 seconds) 2018-07-27T05:47:39Z brettgilio quit (Remote host closed the connection) 2018-07-27T05:50:11Z lemo joined #lisp 2018-07-27T05:53:14Z kenster: (let ((tea '(1 2 3))) (dynamic-c-array-type tea)) 2018-07-27T05:53:15Z kenster: (defmacro dynamic-c-array-type (val &optional val-length) 2018-07-27T05:53:17Z kenster: `'(:array :string ,(or val-length (list-length val)))) 2018-07-27T05:53:17Z milanj quit (Quit: This computer has gone to sleep) 2018-07-27T05:53:59Z scymtym: beach: maybe i'm missing some context, but i don't immediately see why that would be useful. can you elaborate? 2018-07-27T05:54:04Z kenster: the value TEA is not of type LIST, yet when I pass in 'tea it always gives me length of 2 2018-07-27T05:54:20Z kenster: I think I just don't know how to pass in the list correctly, I'm at a blank 2018-07-27T05:54:22Z kenster: ;-; 2018-07-27T05:55:07Z kenster: It's probably really flipping obvious and I just don't know 2018-07-27T05:58:02Z Kundry_Wag joined #lisp 2018-07-27T06:01:05Z Fare quit (Ping timeout: 248 seconds) 2018-07-27T06:02:35Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-27T06:08:45Z ebzzry joined #lisp 2018-07-27T06:09:46Z shrdlu68 joined #lisp 2018-07-27T06:10:47Z shrdlu68 quit (Client Quit) 2018-07-27T06:12:11Z flamebeard joined #lisp 2018-07-27T06:12:17Z Oladon quit (Quit: Leaving.) 2018-07-27T06:15:29Z fikka joined #lisp 2018-07-27T06:20:09Z fikka quit (Ping timeout: 264 seconds) 2018-07-27T06:22:28Z gravicappa joined #lisp 2018-07-27T06:23:04Z orivej quit (Ping timeout: 260 seconds) 2018-07-27T06:23:36Z megalography quit (Quit: Leaving.) 2018-07-27T06:26:06Z Lauven joined #lisp 2018-07-27T06:28:06Z robotoad quit (Quit: robotoad) 2018-07-27T06:29:23Z kenster: (defmacro dynamic-c-array-type (val &optional val-length) 2018-07-27T06:29:24Z kenster: `(list :array :string (or ,val-length ,`(length ,val)))) 2018-07-27T06:29:35Z kenster: I need to stop programming 12 hours a day, I'm such an idiot sometimes 2018-07-27T06:29:36Z anewuser quit (Ping timeout: 268 seconds) 2018-07-27T06:29:50Z Fare joined #lisp 2018-07-27T06:33:04Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-27T06:37:19Z fikka joined #lisp 2018-07-27T06:38:38Z moei quit (Quit: Leaving...) 2018-07-27T06:39:11Z mange quit (Remote host closed the connection) 2018-07-27T06:40:18Z moei joined #lisp 2018-07-27T06:40:33Z Zhivago: Less programming; more engineering. 2018-07-27T06:40:48Z HeyFlash joined #lisp 2018-07-27T06:42:03Z smurfrobot joined #lisp 2018-07-27T06:43:20Z pierpal quit (Quit: Poof) 2018-07-27T06:43:41Z pierpal joined #lisp 2018-07-27T06:44:42Z Lauven quit (Quit: leaving) 2018-07-27T06:49:54Z daniel-s quit (Ping timeout: 244 seconds) 2018-07-27T06:49:57Z beach: scymtym: I am currently testing my IR viewer and I would like to see source code associated with the HIR code. More generally, imagine someone typing forms to the REPL and there is an error. It would be good to have source information so that the place of the error can be shown as source. 2018-07-27T06:54:11Z milanj joined #lisp 2018-07-27T06:55:18Z varjagg joined #lisp 2018-07-27T06:56:36Z beach: Speaking of FFI, there was a very interesting article in the July 2018 issue of CACM entitled "C is not a low-level language". It was about how processors today use vast amount of energy and silicon real estate in order to make C programmers believe that they are still dealing with the PDP-11 semantics of execution. 2018-07-27T06:58:50Z beach: The article also talked about the complexity of a typical C compiler in order to make the C semantics fast enough on current processors. 2018-07-27T06:59:19Z beach: It made me wonder how we (Common Lisp implementers) are able simplify our compilers compared to C compilers such as Clang and LLVM since there are many restrictions in C that we don't have in Common Lisp. 2018-07-27T06:59:54Z Kundry_Wag joined #lisp 2018-07-27T07:02:32Z smurfrobot quit (Remote host closed the connection) 2018-07-27T07:03:57Z Fare quit (Ping timeout: 240 seconds) 2018-07-27T07:04:22Z Kundry_Wag quit (Ping timeout: 244 seconds) 2018-07-27T07:08:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-27T07:11:28Z caltelt quit (Ping timeout: 256 seconds) 2018-07-27T07:12:16Z fikka joined #lisp 2018-07-27T07:20:32Z SaganMan quit (Ping timeout: 256 seconds) 2018-07-27T07:21:36Z nowhere_man joined #lisp 2018-07-27T07:24:57Z knusbaum quit (Ping timeout: 264 seconds) 2018-07-27T07:27:54Z daedreth-notUD joined #lisp 2018-07-27T07:30:45Z daedreth-notUD quit (Client Quit) 2018-07-27T07:31:01Z daedreth-notUD joined #lisp 2018-07-27T07:31:15Z daedreth-notUD: Anyone here at this time? 2018-07-27T07:31:22Z beach: Of course. 2018-07-27T07:31:38Z daedreth-notUD: HeyHo 2018-07-27T07:31:51Z daedreth-notUD: I'm having trouble with quicklisp. 2018-07-27T07:32:26Z beach: Could you be more specific? 2018-07-27T07:32:28Z LdBeth: z. 2018-07-27T07:32:30Z daedreth-notUD: * (quicklisp-quicksart:install) 2018-07-27T07:32:30Z daedreth-notUD: 2018-07-27T07:32:30Z daedreth-notUD: debugger invoked on a SB-INT:SIMPLE-READER-PACKAGE-ERROR in thread 2018-07-27T07:32:34Z daedreth-notUD: #: 2018-07-27T07:32:37Z daedreth-notUD: Package QUICKLISP-QUICKSART does not exist. 2018-07-27T07:32:46Z aeth: quicksart? 2018-07-27T07:32:50Z aeth: did you mean quickstart? 2018-07-27T07:32:55Z daedreth-notUD: ahem 2018-07-27T07:33:15Z makomo_ joined #lisp 2018-07-27T07:34:02Z beach: daedreth-notUD: Don't feel bad. I am turning increasingly dyslexic and I often make mistakes like that without being able to spot the problem. 2018-07-27T07:34:05Z LdBeth: I’m thinking about bring “Do what I mean” feature back to Common Lisp 2018-07-27T07:34:18Z aeth: It actually would be a nice feature if it did that like some terminals do. 2018-07-27T07:34:30Z aeth: Either at the implementation (SBCL) level or in SLIME 2018-07-27T07:35:23Z aeth: My terminal also offers to install packages if they're missing. e.g. if I type "units" and it's not installed, it will find the package that provides "units" and offer to install it. That would be a bit tricky in CL, though, because multiple systems can provide the same-named package. 2018-07-27T07:35:54Z aeth: (obviously you'd have to sudo in the terminal example) 2018-07-27T07:36:32Z daedreth-notUD: ok, the actual problem is when trying to create a quicklisp project. 2018-07-27T07:37:02Z aeth: And, actually, I think some compilers these days do a similar "did you mean foo" when you try to compile code with an undefined variable "goo" or whatever. 2018-07-27T07:37:35Z eschulte_ quit (Ping timeout: 240 seconds) 2018-07-27T07:38:24Z daedreth-notUD: after evaluating (ql:quickload :quickproject) it says "Package QL does not exist." 2018-07-27T07:39:05Z daedreth-notUD: it worked seemlessly on my other machine, but I messed something up on my laptop. 2018-07-27T07:39:11Z eschulte joined #lisp 2018-07-27T07:39:40Z aeth: What does your ~/.sbclrc look like? 2018-07-27T07:39:51Z beach: You must have forgotten a form in your .sbclrc. 2018-07-27T07:39:51Z LdBeth: CL is dynamic typed, so reference a variable before initializing it should be allowed. So I believe it has to be embedded to run time. 2018-07-27T07:39:54Z aeth: (I'm assuming SBCL because your error had SB-INT in it) 2018-07-27T07:40:06Z aeth: LdBeth: In CL it's a warning, not an error 2018-07-27T07:40:27Z aeth: And it's more about potential future globals in the mutuable-at-runtime global state afaik 2018-07-27T07:40:35Z aeth: (Although they *should* have earmuffs) 2018-07-27T07:41:14Z daedreth-notUD: I like the earmuffs. Everyone who doesn't use them deserved to burn in the hellfires of iterative programing. 2018-07-27T07:41:18Z beach: LdBeth: It is not possible to create an uninitialized variable in Common Lisp. Besides, how does it follow from dynamic typing that such a thing would be allowed? 2018-07-27T07:41:58Z aeth: (defun foo () bar) ; warning about bar being undefined 2018-07-27T07:42:08Z aeth: (defvar bar 42) ; now (foo) will work, but you should have put earmuffs on bar in the first place 2018-07-27T07:42:10Z beach: daedreth-notUD: Why the aggressive tone of voice? 2018-07-27T07:42:18Z daedreth-notUD: I'm just joking. 2018-07-27T07:42:25Z daedreth-notUD: I'm a calm sheep. 2018-07-27T07:43:29Z kenster quit (Ping timeout: 248 seconds) 2018-07-27T07:43:41Z beach: LdBeth: Well, I guess you can create a variable with no value, so yes, that's uninitialized. But you can't refer to it until you assigned to it. 2018-07-27T07:44:07Z aeth: LdBeth: Anyway, that doesn't have to do with dynamic typing, that has to do with being able to add global variables after the function was compiled and then the function having to respect that. 2018-07-27T07:44:08Z daedreth-notUD: Does someone here know, where my sbcl configuration lies? 2018-07-27T07:44:23Z beach: daedreth-notUD: You were told already: ~/.sbclrc 2018-07-27T07:44:35Z daedreth-notUD: I should pay more attention. 2018-07-27T07:44:39Z daedreth-notUD: ty 2018-07-27T07:44:44Z beach: ywlcm 2018-07-27T07:45:11Z daedreth-notUD: my ~/.sbclrc looks non existent 2018-07-27T07:45:19Z aeth: daedreth-notUD: what is your OS? 2018-07-27T07:45:23Z beach: That would explain the problem. 2018-07-27T07:45:25Z daedreth-notUD: Arch Linux 2018-07-27T07:47:31Z nickenchuggets joined #lisp 2018-07-27T07:47:31Z nickenchuggets quit (Changing host) 2018-07-27T07:47:31Z nickenchuggets joined #lisp 2018-07-27T07:47:55Z milanj quit (Quit: This computer has gone to sleep) 2018-07-27T07:50:40Z LdBeth: aeth: my bad. I mean “many things are decided at runtime”, which seems close to dynamic typing. 2018-07-27T07:51:08Z Kundry_Wag joined #lisp 2018-07-27T07:54:04Z angavrilov joined #lisp 2018-07-27T07:54:41Z daedreth-notUD: My problem is not with my .sbcl directory, because my other machine also doesn't have it. 2018-07-27T07:55:48Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-27T07:56:45Z beach: daedreth-notUD: It is a file and it is called .sbclrc and it is in your home directory. There is typically no .sbcl directory. 2018-07-27T07:57:43Z scymtym: beach: code entered at the repl must still be READ. why not associate source locations at that point? 2018-07-27T07:57:56Z daedreth-notUD: I was looking for a directory my bad. 2018-07-27T07:58:02Z daedreth-notUD: I think I might've fixed it. 2018-07-27T07:58:20Z beach: scymtym: Wouldn't that require modifying the REPL? 2018-07-27T07:58:25Z daedreth-notUD: I just removed the "Quicklisp" directory in my home directory 2018-07-27T07:58:44Z daedreth-notUD quit (Remote host closed the connection) 2018-07-27T07:59:03Z Kundry_Wag joined #lisp 2018-07-27T07:59:09Z daedreth-notUD joined #lisp 2018-07-27T07:59:33Z beach: daedreth-notUD: There should be a directory named "quicklisp" and not "Quicklisp". 2018-07-27T08:00:08Z scymtym: beach: ok, let's take a step back. is this the SICL REPL or some host's? how is the HIR produced form the REPL input? 2018-07-27T08:00:10Z daedreth-notUD: then I remebered it badly. 2018-07-27T08:00:30Z scymtym: *produced from 2018-07-27T08:00:51Z beach: scymtym: Sorry, I should have been more clear. I was just thinking of the SBCL REPL when I type (cst:cst-from-hir '(...)) 2018-07-27T08:01:30Z beach: I take the CST produced that way, and put it through CST-TO-AST and AST-TO-HIR. 2018-07-27T08:02:21Z aeth: LdBeth: I have to nitpick again. Dynamic typing often works at compile time, through type inference. 2018-07-27T08:02:26Z beach: scymtym: You are right of course. No such thing would be needed in a new system. 2018-07-27T08:02:26Z daedreth-notUD: Everything works now. I somehow messed up my ~/quicklisp folder. 2018-07-27T08:02:44Z daedreth-notUD: sorry for bothering you, but you helped me a lot in finding the error. 2018-07-27T08:02:45Z daedreth-notUD: :D 2018-07-27T08:03:06Z beach: daedreth-notUD: Not a problem. Good luck. 2018-07-27T08:03:25Z scymtym: beach: did you mean cst:cst-from-EXPRESSION in the initial step? 2018-07-27T08:03:34Z beach: Ouch, yes. 2018-07-27T08:03:36Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-27T08:03:59Z beach: I guess I am not quite awake yet, despite having been to the store and all. 2018-07-27T08:04:05Z scymtym: ok, i understand then 2018-07-27T08:04:42Z smurfrobot joined #lisp 2018-07-27T08:04:56Z scymtym: how about making a simple REPL that READs using eclector and displays the visualization for each input? 2018-07-27T08:04:58Z beach: The thing is not a big deal. I was just playing with my IR viewer and it would be nice to see the source. I can fix that by reading from a file at the momentn of course. 2018-07-27T08:05:12Z beach: Yeah, I can do that. 2018-07-27T08:06:41Z beach: scymtym: The other idea I had this morning was to bite the bullet and create a first-class global environment tailored to SBCL. 2018-07-27T08:07:23Z beach: That way I wouldn't have to go through the work to create a complete SICL environment each time I want to create some HIR code in SBCL. 2018-07-27T08:07:44Z beach: Besides, there have been discussions abut a Cleavir-based compiler for SBCL. 2018-07-27T08:08:22Z scymtym: such a fcge would take macros, global functions, etc. from the host? 2018-07-27T08:08:25Z beach: Most macros and functions would just be imported, but a few would have to be customized like MACROEXPAND-1 and macros that explicitly call the macro expander. 2018-07-27T08:08:33Z beach: Yeah, most. 2018-07-27T08:09:20Z beach: I think the list of specific stuff would be reasonably small. 2018-07-27T08:09:26Z trittweiler: beach: the CST are just the READ forms? You can perhaps use an EQ hash-table to associate something with a read form, and retrieve from that hash-table later? (Assuming you have access to the originally read form from within later in the compiler) 2018-07-27T08:09:27Z daedreth-notUD left #lisp 2018-07-27T08:10:00Z beach: trittweiler: The CST already has better source tracking than what a hash table can do. 2018-07-27T08:10:17Z scymtym: on the bright side, separate code for macroexpansion open the door for source tracking through macroexpansion 2018-07-27T08:10:24Z fikka quit (Ping timeout: 256 seconds) 2018-07-27T08:10:31Z beach: scymtym: Indeed. 2018-07-27T08:11:16Z fikka joined #lisp 2018-07-27T08:11:27Z beach: trittweiler: But creating the CST requires the use of the Eclector reader and it has to use a stream that supplies source location. 2018-07-27T08:12:10Z newbie26 quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2018-07-27T08:12:24Z scymtym: depending on how source locations are represented, that can be true for most standard streams, though 2018-07-27T08:12:27Z schweers joined #lisp 2018-07-27T08:12:35Z beach: It could. 2018-07-27T08:13:49Z scymtym: the default implementation make a cons of the FILE-POSITIONs at the start and the end, so it only needs a working FILE-POSITION 2018-07-27T08:13:59Z beach: But I know how I want to do it in SICL, and that requires a bit more work. I want the source location to have several components, the line number, the column number of the beginning and the end of the expression, and a vector of strings that contains the text of the file. 2018-07-27T08:14:14Z beach: The vector of strings would be shared by all source locations in a file of course. 2018-07-27T08:14:39Z beach: scymtym: True. 2018-07-27T08:15:09Z scymtym: sure, there are many ways to do source locations 2018-07-27T08:15:56Z beach: This one would always be very precise though. Even if the original source file is absent or if it has been modified, this technique will show the right position. 2018-07-27T08:17:02Z scymtym: i agree. i also store the file content in (or rather shared between) source locations 2018-07-27T08:17:35Z beach: scymtym: Are you talking SBCL now, or your own experimental compiler? 2018-07-27T08:17:49Z scymtym: beach: https://github.com/scymtym/text.source-location/tree/future 2018-07-27T08:18:12Z scymtym: i use the library for multiple things 2018-07-27T08:18:20Z beach: I see. 2018-07-27T08:19:15Z beach: Should I use this library rather than my own implementation? 2018-07-27T08:19:19Z scymtym: SBCL has yet another way (probably more than one) to do source locations 2018-07-27T08:19:19Z smurfrobot quit (Remote host closed the connection) 2018-07-27T08:20:11Z beach: scymtym: We are always looking for opportunities for code sharing, so this might be another such case, yes? 2018-07-27T08:20:38Z scymtym: beach: i wouldn't recommend it at this point but i'm planning to make it general enough that it may become an option in the future 2018-07-27T08:20:49Z beach: Sounds good to me. 2018-07-27T08:20:53Z beach: Keep us informed. 2018-07-27T08:21:19Z scymtym: definitely an opportunity. it works similarly to what you described 2018-07-27T08:21:44Z beach: I can imagine, yes. 2018-07-27T08:22:02Z scymtym: the main difference is that instead of an array of lines it uses the original string and an array of newline positions 2018-07-27T08:22:33Z beach: OK, that's not a big deal as long as it presents a consistent interface. 2018-07-27T08:23:10Z skeuomorf joined #lisp 2018-07-27T08:23:22Z skeuomorf left #lisp 2018-07-27T08:23:23Z beach: I settled on the array of strings to avoid problems with representation of newline in different systems, but you solve it as well. 2018-07-27T08:24:52Z scymtym: your solution might be better for that, but i can generate excerpts more easily. i will have to think some more about which approach to use 2018-07-27T08:25:09Z beach: OK. 2018-07-27T08:31:56Z _cosmonaut_ joined #lisp 2018-07-27T08:33:26Z smurfrobot joined #lisp 2018-07-27T08:34:27Z Ven`` joined #lisp 2018-07-27T08:36:32Z random-nick joined #lisp 2018-07-27T08:37:42Z schjetne joined #lisp 2018-07-27T08:45:29Z dddddd joined #lisp 2018-07-27T08:45:58Z smokeink joined #lisp 2018-07-27T08:46:21Z smurfrobot quit (Remote host closed the connection) 2018-07-27T08:48:21Z nowhere_man quit (Ping timeout: 268 seconds) 2018-07-27T08:50:24Z pjb joined #lisp 2018-07-27T08:54:07Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-27T08:54:31Z nickenchuggets joined #lisp 2018-07-27T08:54:31Z nickenchuggets quit (Changing host) 2018-07-27T08:54:31Z nickenchuggets joined #lisp 2018-07-27T08:58:53Z milanj joined #lisp 2018-07-27T08:59:00Z random-nick: hello, what's the best way to define an abstract class? 2018-07-27T09:00:02Z jackdaniel: random-nick: just define a class and don't create an instance of it 2018-07-27T09:00:13Z pjb: Indeed. 2018-07-27T09:00:16Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-27T09:00:17Z jackdaniel: if you must, you may create :after method for initialize-instance specialized on it and signal an error 2018-07-27T09:00:26Z pjb: Not a good idea. 2018-07-27T09:00:32Z jackdaniel: i.e: 2018-07-27T09:00:32Z jackdaniel: (defmethod initialize-instance :after ((object ,name) &key &allow-other-keys) 2018-07-27T09:00:32Z jackdaniel: (when (eq (class-of object) the-class) 2018-07-27T09:00:33Z jackdaniel: (error "~S is a protocol class and thus can't be instantiated" ',name))) 2018-07-27T09:00:49Z jackdaniel: sorry for multiline 2018-07-27T09:01:22Z karswell quit (Remote host closed the connection) 2018-07-27T09:01:25Z random-nick: okay, thank you 2018-07-27T09:01:31Z pjb: s/the-class/(find-class ',name)/ 2018-07-27T09:02:18Z karswell joined #lisp 2018-07-27T09:02:33Z pjb: I prefer: (defclass … (:documentation "This abstract class … blah blah …")) 2018-07-27T09:02:53Z jackdaniel: pjb: I've curbed it from CLIM buffer I have opened accidently :) 2018-07-27T09:03:11Z beach: gilberth came up with that I think. 2018-07-27T09:03:23Z pjb: Also, I don't like to define :before or :after methods in libraries; I find it more useful to reserve them to client code. 2018-07-27T09:04:05Z beach: pjb: It's OK to do it if client code is not supposed to use any class that they specialize on directly. 2018-07-27T09:04:12Z pjb: yes. 2018-07-27T09:04:12Z lemo quit (Changing host) 2018-07-27T09:04:12Z lemo joined #lisp 2018-07-27T09:04:27Z beach: ... which is definitely the case for an abstract class like that. 2018-07-27T09:06:15Z Xof: SBCL has class-eq specializers, which could be used here 2018-07-27T09:08:46Z nullniverse quit (Quit: Undertaking stack overflow prevention) 2018-07-27T09:10:34Z kozy_ joined #lisp 2018-07-27T09:10:36Z kozy quit (Ping timeout: 256 seconds) 2018-07-27T09:15:34Z xrash joined #lisp 2018-07-27T09:22:56Z iskander quit (Ping timeout: 256 seconds) 2018-07-27T09:29:24Z smurfrobot joined #lisp 2018-07-27T09:29:33Z jmercouris joined #lisp 2018-07-27T09:29:45Z iskander joined #lisp 2018-07-27T09:30:42Z jmercouris: Hey everyone, I have an interesting question: https://gist.github.com/e1138150f0a808c7f540c8260a480eb2 2018-07-27T09:30:55Z jmercouris: why does my factorial function return different results with an int vs a float 2018-07-27T09:31:39Z jmercouris: the value is the same, but the representation is different 2018-07-27T09:31:44Z beach: jmercouris: It has to do with the limited precision of floats. 2018-07-27T09:31:57Z beach: jmercouris: It has to do with floating-point contagion. 2018-07-27T09:32:21Z beach: jmercouris: When you use a float in an operation together with an integer, the integer is converted to a float and then the operation is done with floats. 2018-07-27T09:32:23Z jmercouris: I thought lisp had some special type of numbers that maintain all accuracy 2018-07-27T09:32:36Z beach: Not floats. Only integers. 2018-07-27T09:32:37Z jmercouris: like you can use 3/4's and it won't be approximated to 0.6666 2018-07-27T09:32:53Z beach: Right, you can use ratios. 2018-07-27T09:33:12Z jmercouris: so integers have infinite precision? 2018-07-27T09:33:14Z jmercouris: or no? 2018-07-27T09:33:16Z beach: But once you use a float, everything is going to float. 2018-07-27T09:33:19Z beach: Yes. 2018-07-27T09:33:23Z jmercouris: I see 2018-07-27T09:33:26Z jmercouris: so why would you ever use floats? 2018-07-27T09:33:26Z jackdaniel: jmercouris: Lisp has bignums, which may be arbitrary big 2018-07-27T09:33:27Z beach: Not infinite, but arbitrary. 2018-07-27T09:33:37Z jackdaniel: but it would be hard to find infinite memory to contain infinite integer 2018-07-27T09:33:43Z beach: jmercouris: Floats are very fast. 2018-07-27T09:34:08Z beach: jmercouris: The processor has a lot of transistors for floating-point operations. 2018-07-27T09:34:17Z jmercouris: that's true, for most processors at least 2018-07-27T09:34:17Z beach: jmercouris: Not so many (zero in fact) for bignums. 2018-07-27T09:34:35Z jmercouris: I remember on the first androids, there was only virtualized float operations 2018-07-27T09:34:39Z jmercouris: those were incredibly slow 2018-07-27T09:34:51Z jmercouris: led to some interesting ways of writing game engines 2018-07-27T09:35:01Z jackdaniel: you mean ARM processors without fpe? 2018-07-27T09:35:13Z jmercouris: Maybe, it's been a long time, I can't quite remember 2018-07-27T09:35:26Z kajo joined #lisp 2018-07-27T09:35:27Z jackdaniel: it is not android-specific 2018-07-27T09:35:37Z jackdaniel: if you put "normal" Linux on such soc you'd have emulation as well 2018-07-27T09:35:39Z jmercouris: Yeah, that was just an example 2018-07-27T09:35:47Z jackdaniel: but happily armhf is a standard now 2018-07-27T09:35:59Z beach: clhs 12.1.4.1 2018-07-27T09:36:00Z specbot: Rule of Float and Rational Contagion: http://www.lispworks.com/reference/HyperSpec/Body/12_ada.htm 2018-07-27T09:36:10Z beach: jmercouris: ↑ 2018-07-27T09:36:22Z jmercouris: beach: interesting 2018-07-27T09:36:24Z jmercouris: I wonder why though 2018-07-27T09:36:30Z jmercouris: if floats are less precision why you would want to do that kind of casting 2018-07-27T09:36:56Z jmercouris: normally it feels like things are cast to higher precision when possible for operations 2018-07-27T09:37:09Z jmercouris: the only exception I can think of this is significant figures, which has a completely separate context 2018-07-27T09:37:20Z jackdaniel: precision often comes with a performance penalty cost 2018-07-27T09:37:33Z nowhere_man joined #lisp 2018-07-27T09:37:53Z jackdaniel: for sake of good fps in games it is arguably fine to approximate PI with 3 (three) (of course I'm half-joking, but only half) 2018-07-27T09:37:55Z beach: jmercouris: If you try to add a bignum and a float, the result is very likely not going to be an integer. So you do the conversion first, and then use the fast hardware to add. 2018-07-27T09:38:16Z jmercouris: jackdaniel: I've done worst 2018-07-27T09:38:42Z jmercouris: beach: I see 2018-07-27T09:40:52Z beach: jmercouris: Plus, again if you try to add a bignum and a float, the float has limited precision by design. There is no point in trying to maintain a higher precision than the precision of the least precise of the two operands. 2018-07-27T09:41:22Z beach: jmercouris: You would get a number with a large number of significant digits, most of which would be wrong. 2018-07-27T09:41:43Z jmercouris: I see 2018-07-27T09:41:50Z jmercouris: the system has no way to distinguish that 20.0 = 20 2018-07-27T09:42:00Z jmercouris: and that actually 20.0 is not just a loss of information, right? 2018-07-27T09:42:09Z jmercouris: and really the value is perhaps 20.0000000000000000000000000000000001 2018-07-27T09:42:27Z jmercouris: or am I misunderstanding? 2018-07-27T09:42:30Z jackdaniel: eql will tell you they are different 2018-07-27T09:42:37Z jackdaniel: but (= 20.0 20) returns T here 2018-07-27T09:42:39Z pjb: jmercouris: IEEE 754 single float have only 24 bits and double floats only 53 bits of significant digits. 2018-07-27T09:42:42Z smurfrobot quit (Remote host closed the connection) 2018-07-27T09:42:49Z jackdaniel: that said, doing = on floats is a bad idea, always use <= or >= 2018-07-27T09:43:21Z aeth: jackdaniel: 3.14 is probably good enough 2018-07-27T09:43:35Z jackdaniel: and 3 is even better ;) 2018-07-27T09:43:44Z jmercouris: of course it can eql 20.0 against 20, I'm trying to reconcile what beach said about no point in maintaining a higher degree of precision 2018-07-27T09:43:46Z pjb: (+ (expt 2 32) 1) cannot be represented (precisely) as a single-float! (- (+ (expt 2 32) 1) (truncate (float (+ (expt 2 32) 1) 0.0e0))) #| --> 1 |# 2018-07-27T09:43:47Z jackdaniel: babylonians figured out, that PI=3 2018-07-27T09:43:54Z jmercouris: there can be no higher math 2018-07-27T09:44:16Z jackdaniel: 20.0 *of course* can't be EQL to 20 2018-07-27T09:44:23Z jackdaniel: these are two different types 2018-07-27T09:44:43Z jmercouris: yes sorry, I misspoke 2018-07-27T09:45:03Z jmercouris: s/spoke/typed 2018-07-27T09:45:16Z aeth: Eh, in the old days they'd do things like 22/7 (surprisingly close: you get 3.14... from it) 2018-07-27T09:45:17Z beach: jmercouris: 20.0 is a special case. It has an exact representation in float. 2018-07-27T09:48:40Z fikka quit (Ping timeout: 244 seconds) 2018-07-27T09:50:36Z orivej joined #lisp 2018-07-27T09:52:13Z Kundry_Wag joined #lisp 2018-07-27T09:57:09Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-27T09:57:14Z kajo quit (Quit: From my rotting body, flowers shall grow and I am in them and that is eternity. -- E. M.) 2018-07-27T09:59:14Z beach: jmercouris: Here is something you can try: (defun f (x) (multiple-value-bind (m e) (integer-decode-float x) (* m (expt 2 e)))) 2018-07-27T09:59:45Z beach: (then try (f 20.0), (f 200.0) etc, until you don't get the integer value back. 2018-07-27T10:00:21Z beach: For single floats on SBCL, doing (f 200000000000.0) will show you. 2018-07-27T10:00:46Z jmercouris: Yes, I see it now 2018-07-27T10:00:53Z jmercouris: very strange 2018-07-27T10:01:04Z beach: Not at all. 2018-07-27T10:01:22Z jmercouris: very unexpected by myself specifically 2018-07-27T10:01:25Z jmercouris: :D 2018-07-27T10:01:44Z beach: As long as your integer has no more significant digits that the floating-point precision allows, you have an exact representation of the integer as a float. 2018-07-27T10:02:04Z beach: When your integer requires more significant digits than that, the float must be an approximation. 2018-07-27T10:02:05Z jusss quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2018-07-27T10:02:47Z jmercouris: that does make sense 2018-07-27T10:04:45Z beach: The proof is simple actually. Since floats are represented as a mantissa between 0.5 and 1 plus an exponent (power of 2), for a small integer, you can obtain the floating point by shifting right until the number is less than 1, and the exponent becomes the number of positions shifted. 2018-07-27T10:04:57Z beach: That is in fact what my program is doing. 2018-07-27T10:05:10Z beach: Or the inverse, to be precise. 2018-07-27T10:05:12Z smokeink quit (Ping timeout: 244 seconds) 2018-07-27T10:06:06Z beach: But if you need to shift more times than there are bits in the representation of the mantissa, you lose the least significant digits. 2018-07-27T10:06:11Z jmercouris: I think you lost me there 2018-07-27T10:06:14Z jmercouris: what is a mantissa? 2018-07-27T10:06:24Z beach: Not important. 2018-07-27T10:06:33Z beach: You need to read up on floating-point numbers. 2018-07-27T10:07:10Z jmercouris: I'll get there slowly in my book, I believe they are in there 2018-07-27T10:07:36Z beach: https://en.wikipedia.org/wiki/Floating-point_arithmetic 2018-07-27T10:07:55Z beach: They call it "significand" there, but it is sometimes called "mantissa". 2018-07-27T10:08:44Z beach: But this is very likely too much math for you so just drop it and trust me. 2018-07-27T10:09:05Z jmercouris: :D 2018-07-27T10:09:19Z jmercouris: I can't tell if you are being sarcastic, condescending, or serious 2018-07-27T10:09:49Z beach: I was being serious, given what you said the other day. 2018-07-27T10:10:21Z jmercouris: It is not as if I don't understand floating point numbers, I had to learn about them in my undergraduate even 2018-07-27T10:10:49Z jmercouris: based on what I'd read in books about lisp, I'd been led to believe that lisp has its own structures for representing numbers 2018-07-27T10:10:50Z beach: But you never heard the word "mantissa"? Strange! 2018-07-27T10:10:56Z jackdaniel: if you don't know what mantissa is – it is hard to believe you understand floating point numbers 2018-07-27T10:10:59Z jmercouris: and that a float in lisp, was never actually a float 2018-07-27T10:11:13Z beach: jmercouris: Most Common Lisp systems use IEEE floats. 2018-07-27T10:11:32Z jmercouris: I'm sorry I don't remember everything from my undergraduate, it was some time ago 2018-07-27T10:11:44Z jmercouris: but there was a time in the past, in which I most definitely understood what floats were 2018-07-27T10:11:55Z jackdaniel: floating point number is a well estabilished term. it could be that some Lisp didn't use IEEE floats for floats, but that does not mean that floats weren't floats (tautology?) 2018-07-27T10:12:08Z aeth: jmercouris: The "own structures" you're probably thinking about is https://en.wikipedia.org/wiki/Numerical_tower 2018-07-27T10:12:43Z jackdaniel: SICP is a very nice book and it tackles topic of floats in one of its chapters (with excercises!) 2018-07-27T10:19:50Z nowhereman_ joined #lisp 2018-07-27T10:19:58Z nowhere_man quit (Ping timeout: 260 seconds) 2018-07-27T10:20:29Z Kaisyu quit (Quit: Connection closed for inactivity) 2018-07-27T10:23:36Z milanj quit (Quit: This computer has gone to sleep) 2018-07-27T10:23:50Z fluke` quit (Read error: Connection reset by peer) 2018-07-27T10:24:24Z Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-27T10:24:51Z fluke` joined #lisp 2018-07-27T10:34:25Z flip214: beach: http://metamodular.com/garbage-collection.pdf is still the active link? 2018-07-27T10:34:53Z flip214: hmmm, no, I'd want the whole SICL document 2018-07-27T10:37:04Z flip214: no worries, built one from git 2018-07-27T10:38:26Z beach quit (Ping timeout: 256 seconds) 2018-07-27T10:39:31Z smokeink joined #lisp 2018-07-27T10:44:31Z Kundry_Wag joined #lisp 2018-07-27T10:46:09Z Kundry_Wag quit (Remote host closed the connection) 2018-07-27T10:49:48Z m00natic joined #lisp 2018-07-27T10:50:11Z beach joined #lisp 2018-07-27T10:50:30Z beach: flip214: Sorry, my new computer crashed (again). :( 2018-07-27T10:50:45Z beach: flip214: There is no current PDF that covers both chapters and the appendix. 2018-07-27T10:50:53Z beach: I suggest you extract them from the entire document. 2018-07-27T10:55:27Z pagnol joined #lisp 2018-07-27T10:56:06Z hhdave joined #lisp 2018-07-27T10:57:44Z Kundry_Wag joined #lisp 2018-07-27T10:58:08Z trittweiler quit (Ping timeout: 256 seconds) 2018-07-27T11:02:05Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-27T11:03:49Z EvW1 joined #lisp 2018-07-27T11:11:03Z knusbaum joined #lisp 2018-07-27T11:15:11Z jmercouris quit (Remote host closed the connection) 2018-07-27T11:16:53Z lumm joined #lisp 2018-07-27T11:18:37Z Kundry_Wag joined #lisp 2018-07-27T11:18:50Z smurfrobot joined #lisp 2018-07-27T11:21:17Z ofi quit (Ping timeout: 268 seconds) 2018-07-27T11:21:46Z rozenglass joined #lisp 2018-07-27T11:24:22Z smurfrobot quit (Ping timeout: 260 seconds) 2018-07-27T11:27:53Z lumm quit (Quit: lumm) 2018-07-27T11:28:38Z lumm joined #lisp 2018-07-27T11:30:20Z trittweiler joined #lisp 2018-07-27T11:31:27Z smokeink quit (Ping timeout: 240 seconds) 2018-07-27T11:34:33Z lemo quit (Quit: lemo) 2018-07-27T11:38:54Z smokeink joined #lisp 2018-07-27T11:43:46Z smurfrobot joined #lisp 2018-07-27T11:44:54Z Xach: conium breakage has broken hemlock 2018-07-27T11:45:07Z Xach: and there are a number of new clim failures 2018-07-27T11:45:21Z Xach: http://report.quicklisp.org/2018-07-27/failure-report/mcclim.html 2018-07-27T11:45:37Z exit70 quit (Ping timeout: 256 seconds) 2018-07-27T11:47:11Z exit70 joined #lisp 2018-07-27T11:48:50Z eschulte quit (Ping timeout: 276 seconds) 2018-07-27T11:49:56Z eschulte joined #lisp 2018-07-27T11:51:48Z lemo_ joined #lisp 2018-07-27T11:52:26Z Kundry_Wag quit (Ping timeout: 265 seconds) 2018-07-27T11:54:54Z nsrahmad joined #lisp 2018-07-27T11:55:40Z lemo_ quit (Client Quit) 2018-07-27T11:56:10Z lemo_ joined #lisp 2018-07-27T11:56:40Z lemo_ quit (Client Quit) 2018-07-27T11:57:41Z schweers quit (Remote host closed the connection) 2018-07-27T12:00:50Z pjb: How can one forget what floats are once you know it? It's like bicycle driving! 2018-07-27T12:02:23Z TMA: you do not really know for the most part 2018-07-27T12:06:32Z fikka joined #lisp 2018-07-27T12:07:03Z lemo joined #lisp 2018-07-27T12:07:14Z lemo quit (Changing host) 2018-07-27T12:07:14Z lemo joined #lisp 2018-07-27T12:07:55Z papachan joined #lisp 2018-07-27T12:08:07Z Kundry_Wag joined #lisp 2018-07-27T12:09:05Z beach: Hmm. I am specifying my GUI tools as if the width has to be at most 1600 pixels (i.e. what I currently have on one of my two monitors), but soon I will buy a 4k monitor in addition to those, and then it is reasonable to make the applications twice as wide. 2018-07-27T12:10:02Z beach: Now, what do I do in order to take into account more common configurations at the same time as I take advantage of better ones? 2018-07-27T12:11:08Z beach: I mean, one of the most common complaints about Emacs is that it creates windows in any location, and that buffers are not shown in the same window all the time. 2018-07-27T12:11:41Z beach: So an obvious solution to that problem for the tools I am planning is to have fixed locations for the windows. 2018-07-27T12:12:22Z beach: But I don't see how to make that work at the same time as I take into account different numbers of pixels at the user's disposal. 2018-07-27T12:12:56Z test1600 quit (Quit: Leaving) 2018-07-27T12:13:00Z joga: (people complain about being able to have multiple windows?) 2018-07-27T12:13:19Z beach: That's not what I meant. 2018-07-27T12:13:47Z beach: I'll give you an example: I would like to have my REPL window on the right half and any buffer that I edit on the left. 2018-07-27T12:14:03Z beach: But, now say an error is signaled during execution. 2018-07-27T12:14:23Z beach: Then the backtrace window will hide the buffer window, which I can accept. 2018-07-27T12:14:40Z joga: ah I mistook you meaning an entirely separate X window instead of emacs window 2018-07-27T12:14:40Z beach: But then if I hit `v' on a frame, the frame will be displayed in place of the REPL. 2018-07-27T12:15:25Z pjb: beach: don't work in pixel, work in point. 1 point = 1/72 inch. 2018-07-27T12:15:26Z beach: Even if I invoke the quit restart, my repl window will not come back, and I often have my buffer displayed in both windows. 2018-07-27T12:15:45Z daedreth-notUD joined #lisp 2018-07-27T12:15:48Z pjb: computersknow the actual area of their screens, since screens report their DPI. 2018-07-27T12:16:09Z beach: pjb: And how is that going to solve my problem? Either I won't be able to use my additional screen real estate, or a normal configuration will be unreadable. 2018-07-27T12:16:16Z pjb: This is what we have eg. in Display Postscript. 2018-07-27T12:17:06Z pjb: And of course, use windows. They're invented for that, to be independent from the actual size and configuration of screens. 2018-07-27T12:17:24Z beach: ... which is the complaint that I was trying to avoid. 2018-07-27T12:17:30Z eminhi joined #lisp 2018-07-27T12:17:54Z pjb: Well, otherwise you have a different style. More like what is achieved currently by Windows 10 (which is not bad, graphically). 2018-07-27T12:18:17Z beach: I have never used Windows 10. The last one I used (briefly) was NT. 2018-07-27T12:18:34Z pjb: So you specify your UI in terms of panes, and those panes are arranged (and sized too) automatically depending on the screen surface. 2018-07-27T12:18:47Z pjb: It looks like the Startrek UI :-) 2018-07-27T12:18:56Z beach: So some of them will just not be present on small screens? 2018-07-27T12:19:02Z beach: Doesn't sound useful. 2018-07-27T12:19:07Z pjb: The panes are generally oversized, because they cater to touch-UI. 2018-07-27T12:19:32Z pjb: So you can easily scroll to see everything on small screens. 2018-07-27T12:20:01Z beach: Yeah, not acceptable. 2018-07-27T12:20:08Z pjb: On laptops, we now also have trackpads, and on desktop Apple provides also trackpads, so scrolling and sizing is easy. 2018-07-27T12:20:17Z joga: I use a tabbed, tiling window manager to handle window placement and it's rock solid with any screen size, but doesn't exactly solve emacs windowing hurdles by itself unless you have emacs spawn all the windows you need 2018-07-27T12:20:21Z beach: Hold your mouse over an item on the left. Try to scroll to see the explanation on the right. 2018-07-27T12:21:57Z beach: I guess I am not expressing myself very well today. It is no wonder, given two power cuts during the night and two additional computer crashes this morning. Makes it hard to concentrate. 2018-07-27T12:22:10Z pjb: In conclusion, I guess what I mean here is that user interfaces are in flux, and application should detach themselves from the need to micromanage the user interface. The application should provide high level data elements, and the system (or a library) should decide how to present them and how the user interact with the interface, depending on the available hardware, and the user preferences. 2018-07-27T12:22:15Z beach: I think I will be quit and go think about my problem on my own. 2018-07-27T12:22:36Z pjb: You don't need to display the same decorations when you have spoken commands, than when you use a mouse, or when you use a trackpad. 2018-07-27T12:23:17Z pjb: eg. with the mouse, you want to show thew scroll bar all the time. With a trackpad, you don't need as scroll bar, because you can easily scroll with two finger drag. 2018-07-27T12:23:59Z pjb: (and if you use a pen on a table, it still different). 2018-07-27T12:25:35Z saki joined #lisp 2018-07-27T12:27:52Z Kundry_Wag quit (Remote host closed the connection) 2018-07-27T12:28:38Z Kundry_Wag joined #lisp 2018-07-27T12:34:38Z sailor_cat: Hi there 2018-07-27T12:34:47Z sailor_cat: I have a question about lisp's performance 2018-07-27T12:35:03Z sailor_cat: now I'm looking for a best shell script to change bash 2018-07-27T12:35:19Z sailor_cat: and I'v decided to check performance of sbcl 2018-07-27T12:35:28Z sailor_cat: just because I can 2018-07-27T12:36:08Z sailor_cat: I've made a simple test: check a value of one point of Mandelbrot set by naive algorithm 2018-07-27T12:36:40Z sailor_cat: on python and on lisp do a same amount of iteration and check time 2018-07-27T12:37:09Z sailor_cat: I've expected that sbcl will provide better (maybe 1.5x better result), but not. 2018-07-27T12:37:44Z sailor_cat: So, I'm not a real lisper. I only read the Practical Common Lisp few years ago and I need somebody who can explain it 2018-07-27T12:37:52Z pierpal quit (Remote host closed the connection) 2018-07-27T12:38:04Z sailor_cat: here my basic python script https://pastebin.com/S3BkDaWt 2018-07-27T12:38:21Z sailor_cat: and lisp script https://pastebin.com/Yb0zHRCE 2018-07-27T12:38:47Z sailor_cat: also, just to compare, a scala script https://pastebin.com/H6NM9BQq 2018-07-27T12:39:01Z sailor_cat: and here is results: https://pastebin.com/RyZ7jK0i 2018-07-27T12:39:20Z lemo quit (Read error: Connection reset by peer) 2018-07-27T12:39:39Z lemo joined #lisp 2018-07-27T12:39:42Z orivej quit (Ping timeout: 256 seconds) 2018-07-27T12:39:46Z sailor_cat: first column is number of iterations as 10^i, then lisp results (mandelbrot, mandelbrot2 and mandelbrot3), then python result, then scala 2018-07-27T12:40:04Z sailor_cat: Scala is dramaticaly faster, that's ok 2018-07-27T12:40:21Z sailor_cat: But python3 is faster too 2018-07-27T12:40:45Z sailor_cat: And also here I see no benefits for type declaration 2018-07-27T12:41:09Z sailor_cat: like in last line 123sec without types and 113 with them. 2018-07-27T12:41:37Z BitPuffin joined #lisp 2018-07-27T12:41:47Z sailor_cat: Could you please explain is it normal, or I did something wrong? 2018-07-27T12:41:54Z Xof: without thinking very hard about this: the type COMPLEX that you are using is still quite a generic type 2018-07-27T12:42:03Z Xof: it includes things like (COMPLEX RATIONAL) 2018-07-27T12:42:21Z Xof: which is a complex number with arbitrary-precision components 2018-07-27T12:42:44Z Xof: if you change the binding of z0 to #c(0.0 0.0), and the declarations of complex to (complex single-float), maybe you get faster answers 2018-07-27T12:43:10Z Xof: (the compiler notes you get from compiling your code should be telling you that the compiler wasn't able to optimize everything fully) 2018-07-27T12:43:31Z rumbler31 joined #lisp 2018-07-27T12:44:32Z Xof: probably a more minor thing, again without thinking hard or trying your code: just because n is a fixnum doesn't mean that (1- n) is a fixnum, in general 2018-07-27T12:45:02Z Xof: since you're probably only going to call those functions with non-negative n, you could say so: declaring n as (type (and fixnum unsigned-byte) n) 2018-07-27T12:45:16Z sailor_cat: ok, let me try 2018-07-27T12:46:00Z Xof: (that second one only helps mandelbrot2 with its downward-counting loop) 2018-07-27T12:46:16Z shrdlu68 joined #lisp 2018-07-27T12:47:57Z HeyFlash quit (Ping timeout: 244 seconds) 2018-07-27T12:48:10Z Josh_2 joined #lisp 2018-07-27T12:50:50Z eminhi quit (Quit: leaving) 2018-07-27T12:50:55Z EvW1 quit (Ping timeout: 265 seconds) 2018-07-27T12:51:07Z Xof: you may also need to declare the type of z as (complex single-float) explicitly 2018-07-27T12:51:34Z shrdlu68 quit (Ping timeout: 244 seconds) 2018-07-27T12:52:10Z shrdlu68 joined #lisp 2018-07-27T12:52:21Z phoe_ joined #lisp 2018-07-27T12:53:57Z vaporatorius__ joined #lisp 2018-07-27T12:53:57Z vap1 quit (Ping timeout: 240 seconds) 2018-07-27T12:53:58Z smurfrobot quit (Remote host closed the connection) 2018-07-27T12:53:58Z Bike joined #lisp 2018-07-27T12:54:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-27T12:54:57Z eschulte quit (Ping timeout: 264 seconds) 2018-07-27T12:55:40Z Fare joined #lisp 2018-07-27T12:56:48Z Xof: (if I do these things here, I get a factor of ~16 speedup with n=10^9) 2018-07-27T12:57:57Z flazh quit (Ping timeout: 240 seconds) 2018-07-27T12:58:06Z shrdlu68 quit (Ping timeout: 268 seconds) 2018-07-27T12:58:27Z shrdlu68 joined #lisp 2018-07-27T12:58:44Z sailor_cat: man, you're geneous, it's now even faster than scala https://pastebin.com/SRm8rf0g 2018-07-27T12:58:53Z sailor_cat: thank you 2018-07-27T12:59:24Z gravicappa quit (Ping timeout: 256 seconds) 2018-07-27T13:02:59Z eschulte joined #lisp 2018-07-27T13:03:31Z lumm quit (Read error: Connection reset by peer) 2018-07-27T13:03:33Z Xof: always always read the compiler notes 2018-07-27T13:04:57Z nsrahmad left #lisp 2018-07-27T13:05:18Z smurfrobot joined #lisp 2018-07-27T13:06:05Z starman_jr quit (Ping timeout: 256 seconds) 2018-07-27T13:06:06Z sailor_cat: is there a good manual about "how make a fast lisp program"? 2018-07-27T13:06:17Z starman_jr joined #lisp 2018-07-27T13:06:31Z Zhivago: (1) avoid doing unnecessary work. 2018-07-27T13:06:45Z Zhivago: (2) see (1). 2018-07-27T13:06:55Z dlowe: vacuous advice. 2018-07-27T13:07:43Z nsrahmad joined #lisp 2018-07-27T13:07:57Z dlowe: sailor_cat: most of the techniques on making a fast program generally apply, though you may encounter tradeoffs with memory. 2018-07-27T13:08:34Z dlowe: sailor_cat: optimization on lisp specifically involves cajoling the compiler into making fast code (with declarations and fast-pathed forms), and being easy on the garbage collector 2018-07-27T13:08:35Z trittweiler quit (Ping timeout: 240 seconds) 2018-07-27T13:09:05Z dlowe: and both of those tend to be implementation specific 2018-07-27T13:09:06Z _death: I wanted to point out sbcl's manual.. but seems sbcl.org is down 2018-07-27T13:09:58Z dlowe: automatic garbage collection does mean that the memory/speed tradeoff can be a lot more complex if you repeatedly allocate and abandon objects 2018-07-27T13:10:01Z Xof: http://sbcl.sourceforge.net/manual/ 2018-07-27T13:10:35Z eli_oat quit (Quit: eli_oat) 2018-07-27T13:10:56Z _death: thanks 2018-07-27T13:12:00Z dwrngr: It's up for me, although it took a while to resolve 2018-07-27T13:12:05Z _death: ah, it points out to the cmucl manual.. 2018-07-27T13:12:10Z dwrngr: It was down yesterday and the day before for at least 20 hours 2018-07-27T13:12:33Z dwrngr: So I guess the general advice is just try for a couple of days until you get it, which makes it a tough sell in terms of reliability :P 2018-07-27T13:12:34Z _death: dwrngr: heh, now it seems to work again 2018-07-27T13:13:17Z dwrngr: Hard to believe sourceforge has fallen so far 2018-07-27T13:15:17Z dwrngr: Or maybe expectations are just much higher now, heh 2018-07-27T13:16:28Z smurfrobot quit (Remote host closed the connection) 2018-07-27T13:16:57Z FreeBirdLjj joined #lisp 2018-07-27T13:19:51Z jsjolen joined #lisp 2018-07-27T13:20:20Z jsjolen: In a CLHS issue: "Compiler writers who didn't want to handle this won't go to sleep every night in fear that they really should have and that some day someone will be knocking on their door asking why not." 2018-07-27T13:21:01Z FreeBirdLjj quit (Ping timeout: 244 seconds) 2018-07-27T13:22:09Z eschulte quit (Ping timeout: 248 seconds) 2018-07-27T13:22:58Z jackdaniel: yes, common fear 2018-07-27T13:22:59Z dwrngr quit (Read error: Connection reset by peer) 2018-07-27T13:23:05Z dlowe: sourceforge has been crap since 2001 2018-07-27T13:26:40Z sailor_cat: thanks a lot for your advices 2018-07-27T13:27:29Z mindCrime joined #lisp 2018-07-27T13:27:42Z eschulte joined #lisp 2018-07-27T13:28:24Z eli_oat joined #lisp 2018-07-27T13:30:22Z _cosmonaut_ quit (Ping timeout: 260 seconds) 2018-07-27T13:31:00Z Kundry_Wag quit (Remote host closed the connection) 2018-07-27T13:31:04Z Xof: sbcl.org being down is not sourceforge's fault 2018-07-27T13:31:17Z Kundry_Wag joined #lisp 2018-07-27T13:40:18Z papachan: :O 2018-07-27T13:40:20Z jibanes quit (Ping timeout: 256 seconds) 2018-07-27T13:41:56Z jibanes joined #lisp 2018-07-27T13:43:31Z dwrngr joined #lisp 2018-07-27T13:44:00Z daedreth-notUD: sourceforge = proprietary 2018-07-27T13:44:51Z Kundry_Wag_ joined #lisp 2018-07-27T13:44:59Z jackdaniel: some progress with McCLIM gadgets and theming: https://files.mastodon.social/media_attachments/files/005/137/698/original/45323837a6307236.png 2018-07-27T13:46:27Z beach: Great! 2018-07-27T13:48:51Z _cosmonaut_ joined #lisp 2018-07-27T13:53:06Z smurfrobot joined #lisp 2018-07-27T13:56:49Z Denommus joined #lisp 2018-07-27T13:58:03Z jsjolen quit (Read error: Connection reset by peer) 2018-07-27T14:03:23Z smokeink quit (Ping timeout: 276 seconds) 2018-07-27T14:04:06Z vtomole quit (Ping timeout: 252 seconds) 2018-07-27T14:04:58Z Pixel_Outlaw joined #lisp 2018-07-27T14:05:09Z shrdlu68 quit (Ping timeout: 264 seconds) 2018-07-27T14:05:31Z shrdlu68 joined #lisp 2018-07-27T14:06:21Z renzhi joined #lisp 2018-07-27T14:06:26Z Cymew quit (Remote host closed the connection) 2018-07-27T14:10:13Z vtomole joined #lisp 2018-07-27T14:10:54Z phoe_: jackdaniel: that looks pretty darn good 2018-07-27T14:11:29Z MrSleepy joined #lisp 2018-07-27T14:12:05Z flip214: beach: vlime tries to solve that problem via configuration. https://github.com/phmarek/vlime/blob/master/vim/autoload/vlime/ui.vim#L1 2018-07-27T14:12:27Z flip214: but that's not an optimal solution either... I understand your window/buffer movement/ordering issues. 2018-07-27T14:12:31Z Pixel_Outlaw left #lisp 2018-07-27T14:12:50Z beach: flip214: I see, thanks. 2018-07-27T14:14:18Z Kevslinger joined #lisp 2018-07-27T14:17:10Z jibanes quit (Ping timeout: 264 seconds) 2018-07-27T14:17:48Z smurfrobot quit (Remote host closed the connection) 2018-07-27T14:18:14Z v0|d: Xof: what seems to be the problem? 2018-07-27T14:18:18Z sjl_ quit (Ping timeout: 256 seconds) 2018-07-27T14:18:29Z Kundry_Wag_ quit (Ping timeout: 260 seconds) 2018-07-27T14:19:01Z jibanes joined #lisp 2018-07-27T14:21:00Z Inline joined #lisp 2018-07-27T14:23:13Z pierpal joined #lisp 2018-07-27T14:24:38Z nsrahmad quit (Quit: Leaving) 2018-07-27T14:25:51Z rozenglass quit (Read error: Connection reset by peer) 2018-07-27T14:27:41Z FreeBirdLjj joined #lisp 2018-07-27T14:29:46Z nowhereman_ quit (Remote host closed the connection) 2018-07-27T14:30:07Z nowhereman_ joined #lisp 2018-07-27T14:35:44Z sjl_ joined #lisp 2018-07-27T14:38:06Z trittweiler joined #lisp 2018-07-27T14:39:27Z mindCrime quit (Ping timeout: 240 seconds) 2018-07-27T14:41:17Z flazh joined #lisp 2018-07-27T14:43:06Z sailor_cat quit (Read error: Connection reset by peer) 2018-07-27T14:44:57Z shrdlu68 quit (Ping timeout: 240 seconds) 2018-07-27T14:45:18Z kuwze joined #lisp 2018-07-27T14:46:00Z shrdlu68 joined #lisp 2018-07-27T14:48:54Z biopandemic joined #lisp 2018-07-27T14:52:34Z rippa joined #lisp 2018-07-27T14:52:47Z saki quit (Read error: Connection reset by peer) 2018-07-27T14:55:10Z flamebeard quit 2018-07-27T14:56:08Z nowhereman_ quit (Remote host closed the connection) 2018-07-27T14:56:29Z nowhereman_ joined #lisp 2018-07-27T14:56:58Z sailor_cat joined #lisp 2018-07-27T15:07:36Z pagnol quit (Ping timeout: 256 seconds) 2018-07-27T15:11:12Z lemo quit (Changing host) 2018-07-27T15:11:12Z lemo joined #lisp 2018-07-27T15:12:59Z happy-dude joined #lisp 2018-07-27T15:14:09Z eli_oat quit (Ping timeout: 248 seconds) 2018-07-27T15:15:00Z cage_ joined #lisp 2018-07-27T15:17:42Z smurfrobot joined #lisp 2018-07-27T15:18:43Z _cosmonaut_1 joined #lisp 2018-07-27T15:21:55Z _cosmonaut_ quit (Ping timeout: 244 seconds) 2018-07-27T15:22:05Z nsrahmad joined #lisp 2018-07-27T15:22:41Z smurfrobot quit (Ping timeout: 248 seconds) 2018-07-27T15:23:14Z _cosmonaut_1 quit (Ping timeout: 260 seconds) 2018-07-27T15:23:24Z eminhi joined #lisp 2018-07-27T15:28:05Z robotoad joined #lisp 2018-07-27T15:28:19Z nika joined #lisp 2018-07-27T15:28:34Z knusbaum quit (Ping timeout: 264 seconds) 2018-07-27T15:29:41Z eli_oat joined #lisp 2018-07-27T15:33:20Z daedreth-notUD quit (Remote host closed the connection) 2018-07-27T15:35:47Z eli_oat quit (Remote host closed the connection) 2018-07-27T15:37:11Z mindCrime joined #lisp 2018-07-27T15:38:56Z eli_oat joined #lisp 2018-07-27T15:39:01Z smurfrobot joined #lisp 2018-07-27T15:41:15Z kenster joined #lisp 2018-07-27T15:43:44Z smurfrobot quit (Ping timeout: 256 seconds) 2018-07-27T15:45:04Z fikka joined #lisp 2018-07-27T15:46:37Z shrdlu68 quit (Quit: leaving) 2018-07-27T15:46:59Z Xof: v0|d: sbcl.org was registered, if memory serves, by Kevin Rosenberg (kmr); nameservers are provided by medonline.com 2018-07-27T15:47:43Z Xof: medonline.com is currently down / inaccessible. E-mails to Kevin's addresses that I can find go unanswered. sbcl.org has client transfer prohibited 2018-07-27T15:50:06Z fikka quit (Ping timeout: 256 seconds) 2018-07-27T15:51:34Z fikka joined #lisp 2018-07-27T15:55:35Z Kaveren joined #lisp 2018-07-27T15:58:52Z jkordani: uh oh 2018-07-27T16:02:06Z shka1 joined #lisp 2018-07-27T16:02:47Z JuanDaugherty joined #lisp 2018-07-27T16:02:58Z JuanDaugherty: somebody fucked up 2018-07-27T16:04:10Z JuanDaugherty: like the dolts in a chat channel on a certain lang that is supposed to be a realization of mathematics going on about what is and isn't discrete 2018-07-27T16:04:50Z nsrahmad quit (Ping timeout: 260 seconds) 2018-07-27T16:04:50Z JuanDaugherty: compared to serious problems, it's practially amusement 2018-07-27T16:05:03Z vultyre joined #lisp 2018-07-27T16:05:38Z Kundry_Wag quit (Remote host closed the connection) 2018-07-27T16:05:42Z JuanDaugherty: when, yesterday, i discovered paxos and raft i was a lil surprised there didn seem to be a cl or scheme implementation 2018-07-27T16:05:55Z JuanDaugherty: multiple clojure 2018-07-27T16:06:20Z JuanDaugherty: i'm a diligent search would turn up something 2018-07-27T16:06:26Z JuanDaugherty: *i'm sure 2018-07-27T16:07:10Z Kundry_Wag joined #lisp 2018-07-27T16:07:26Z JuanDaugherty: (actually pretty sure i just forgot paxos but raft was new) 2018-07-27T16:11:39Z JuanDaugherty: ofc github sbcl is unimpaired 2018-07-27T16:12:03Z pagnol joined #lisp 2018-07-27T16:12:07Z jackdaniel: ↑ none of this makes sense to me 2018-07-27T16:12:21Z beach: That makes two of us. 2018-07-27T16:12:44Z karstensrage quit (Ping timeout: 276 seconds) 2018-07-27T16:12:48Z sjl joined #lisp 2018-07-27T16:13:00Z JuanDaugherty: good 2018-07-27T16:13:48Z biopandemic quit (Quit: Quit.) 2018-07-27T16:14:07Z sailor_cat quit (Remote host closed the connection) 2018-07-27T16:14:18Z karstensrage joined #lisp 2018-07-27T16:14:28Z karstensrage is now known as Guest10120 2018-07-27T16:14:34Z biopandemic joined #lisp 2018-07-27T16:15:20Z Kundry_Wag_ joined #lisp 2018-07-27T16:18:28Z shka1: hello 2018-07-27T16:19:06Z shka1: JuanDaugherty: feel free to implement paxos 2018-07-27T16:19:32Z shka1: it melt brains :P 2018-07-27T16:19:52Z JuanDaugherty: shka1, ty. I decided, should i need to, using a c/c++ implementation would be the way. There's a header only one. 2018-07-27T16:20:36Z JuanDaugherty: lamports story of paxos is pretty accessible 2018-07-27T16:20:58Z JuanDaugherty: (header only on raft) 2018-07-27T16:25:05Z Fare quit (Ping timeout: 240 seconds) 2018-07-27T16:29:09Z lumm joined #lisp 2018-07-27T16:34:16Z no-good-name-yet joined #lisp 2018-07-27T16:35:24Z Fare joined #lisp 2018-07-27T16:35:26Z fikka quit (Ping timeout: 256 seconds) 2018-07-27T16:36:49Z Josh_2 quit (Quit: ERC (IRC client for Emacs 25.3.1)) 2018-07-27T16:38:57Z hhdave quit (Ping timeout: 248 seconds) 2018-07-27T16:39:14Z fikka joined #lisp 2018-07-27T16:44:26Z Josh_2 joined #lisp 2018-07-27T16:45:08Z Oladon joined #lisp 2018-07-27T16:45:21Z Josh_2 quit (Remote host closed the connection) 2018-07-27T16:47:41Z Kundry_Wag_ quit (Ping timeout: 244 seconds) 2018-07-27T16:49:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-27T16:49:40Z eminhi quit (Remote host closed the connection) 2018-07-27T16:50:02Z josemanuel joined #lisp 2018-07-27T17:02:30Z JuanDaugherty quit (Quit: Exeunt) 2018-07-27T17:09:57Z cage_ quit (Read error: Connection reset by peer) 2018-07-27T17:10:14Z saki joined #lisp 2018-07-27T17:11:02Z cage_ joined #lisp 2018-07-27T17:11:30Z saki quit (Read error: Connection reset by peer) 2018-07-27T17:12:22Z Bike: oh, i thought sbcl.org was hosted by sf. sorry for spreading rumors then. 2018-07-27T17:13:12Z fikka joined #lisp 2018-07-27T17:19:58Z m00natic quit (Remote host closed the connection) 2018-07-27T17:20:08Z lumm quit (Ping timeout: 265 seconds) 2018-07-27T17:20:38Z fikka quit (Ping timeout: 256 seconds) 2018-07-27T17:24:37Z anewuser joined #lisp 2018-07-27T17:30:04Z LiamH joined #lisp 2018-07-27T17:30:17Z anewuser quit (Ping timeout: 265 seconds) 2018-07-27T17:30:26Z Kundry_Wag quit 2018-07-27T17:31:05Z papachan quit (Quit: Leaving) 2018-07-27T17:33:40Z cage__ joined #lisp 2018-07-27T17:33:58Z cage_ quit (Ping timeout: 264 seconds) 2018-07-27T17:34:06Z j0ni joined #lisp 2018-07-27T17:36:28Z cage__ quit (Client Quit) 2018-07-27T17:36:45Z cage__ joined #lisp 2018-07-27T17:36:46Z cage__ quit (Remote host closed the connection) 2018-07-27T17:42:39Z newbie joined #lisp 2018-07-27T17:43:35Z Fare quit (Ping timeout: 240 seconds) 2018-07-27T17:45:58Z Xof quit (Ping timeout: 264 seconds) 2018-07-27T17:46:56Z Fare joined #lisp 2018-07-27T17:47:49Z fikka joined #lisp 2018-07-27T17:52:56Z fikka quit (Ping timeout: 256 seconds) 2018-07-27T17:53:34Z kuwze quit (Quit: Page closed) 2018-07-27T17:54:20Z orivej joined #lisp 2018-07-27T17:55:36Z smurfrobot joined #lisp 2018-07-27T18:00:01Z smurfrobot quit (Ping timeout: 244 seconds) 2018-07-27T18:03:14Z cage_ joined #lisp 2018-07-27T18:05:38Z Oladon1 joined #lisp 2018-07-27T18:05:40Z nika quit (Quit: Leaving...) 2018-07-27T18:06:44Z Oladon quit (Ping timeout: 244 seconds) 2018-07-27T18:09:33Z MoziM quit (Quit: WeeChat 2.2) 2018-07-27T18:13:05Z pagnol quit (Ping timeout: 240 seconds) 2018-07-27T18:20:21Z shka1 quit (Ping timeout: 240 seconds) 2018-07-27T18:22:24Z sauvin quit (Remote host closed the connection) 2018-07-27T18:25:02Z j0ni quit (Remote host closed the connection) 2018-07-27T18:25:32Z cage_ quit (Quit: Leaving) 2018-07-27T18:26:23Z kajo joined #lisp 2018-07-27T18:31:54Z gehlw joined #lisp 2018-07-27T18:34:02Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-27T18:34:40Z FreeBirdLjj joined #lisp 2018-07-27T18:34:48Z Fare quit (Ping timeout: 268 seconds) 2018-07-27T18:36:54Z Xof joined #lisp 2018-07-27T18:38:57Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2018-07-27T18:42:45Z makomo joined #lisp 2018-07-27T18:42:53Z makomo_ quit (Ping timeout: 276 seconds) 2018-07-27T18:45:03Z Kundry_Wag joined #lisp 2018-07-27T18:54:14Z jasmith quit (Ping timeout: 260 seconds) 2018-07-27T18:57:33Z Oladon1 quit (Quit: Leaving.) 2018-07-27T19:01:26Z eli_oat quit (Quit: eli_oat) 2018-07-27T19:02:36Z eli_oat joined #lisp 2018-07-27T19:10:00Z kajo quit (Ping timeout: 256 seconds) 2018-07-27T19:12:14Z knusbaum joined #lisp 2018-07-27T19:16:30Z EvW joined #lisp 2018-07-27T19:17:27Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-27T19:25:54Z nickenchuggets joined #lisp 2018-07-27T19:25:55Z nickenchuggets quit (Changing host) 2018-07-27T19:25:55Z nickenchuggets joined #lisp 2018-07-27T19:36:04Z fikka joined #lisp 2018-07-27T19:41:04Z fikka quit (Ping timeout: 260 seconds) 2018-07-27T19:43:25Z MoziM joined #lisp 2018-07-27T19:43:34Z nowhereman_ quit (Ping timeout: 256 seconds) 2018-07-27T19:43:42Z smurfrobot joined #lisp 2018-07-27T19:43:50Z vultyre quit (Quit: Leaving) 2018-07-27T19:47:57Z smurfrobot quit (Ping timeout: 240 seconds) 2018-07-27T19:50:25Z Kundry_Wag joined #lisp 2018-07-27T19:52:27Z pierpal quit (Quit: Poof) 2018-07-27T19:52:48Z pierpal joined #lisp 2018-07-27T19:53:50Z phoe: It's amazing how different languages have different means of solving issues 2018-07-27T19:53:59Z phoe: ......and Lisp is capable of swallowing so many of them 2018-07-27T19:54:23Z dlowe: well, this bit needs to be set to a 1, and that bit needs to be set to a 0. 2018-07-27T19:54:32Z phoe: I just realized that I started doing error handling the Erlang way, by returning a secondary value that states if a thing was successful or not 2018-07-27T19:54:47Z phoe: It took me a while to actually notice that I don't have to do that - I can signal a condition instead 2018-07-27T20:01:53Z pagnol joined #lisp 2018-07-27T20:05:16Z eli_oat quit (Quit: Leaving.) 2018-07-27T20:11:32Z EvW quit (Ping timeout: 255 seconds) 2018-07-27T20:12:21Z EvW joined #lisp 2018-07-27T20:16:09Z jasom: phoe: well the standard library does it both ways 2018-07-27T20:16:30Z vlatkoB quit (Remote host closed the connection) 2018-07-27T20:17:46Z dlowe: yeah, the question is, is it something you'd want to enter the debugger for? 2018-07-27T20:23:48Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-27T20:30:34Z fikka joined #lisp 2018-07-27T20:34:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-27T20:38:59Z NoNumber joined #lisp 2018-07-27T20:41:19Z pierpal quit (Quit: Poof) 2018-07-27T20:41:24Z fikka joined #lisp 2018-07-27T20:41:38Z pierpal joined #lisp 2018-07-27T20:46:09Z fikka quit (Ping timeout: 268 seconds) 2018-07-27T20:51:45Z fikka joined #lisp 2018-07-27T20:52:31Z gabiruh quit (Read error: Connection reset by peer) 2018-07-27T20:53:53Z gabiruh joined #lisp 2018-07-27T20:53:56Z pierpa joined #lisp 2018-07-27T20:56:09Z fikka quit (Ping timeout: 264 seconds) 2018-07-27T21:00:57Z orivej quit (Ping timeout: 268 seconds) 2018-07-27T21:01:24Z fikka joined #lisp 2018-07-27T21:02:23Z karswell quit (Remote host closed the connection) 2018-07-27T21:03:17Z karswell joined #lisp 2018-07-27T21:06:10Z fikka quit (Ping timeout: 256 seconds) 2018-07-27T21:07:47Z Cymew joined #lisp 2018-07-27T21:08:46Z fikka joined #lisp 2018-07-27T21:12:39Z Cymew quit (Ping timeout: 260 seconds) 2018-07-27T21:13:07Z Fare joined #lisp 2018-07-27T21:15:18Z Bike quit (Ping timeout: 252 seconds) 2018-07-27T21:21:58Z josemanuel quit (Quit: leaving) 2018-07-27T21:23:35Z Fare quit (Ping timeout: 240 seconds) 2018-07-27T21:25:18Z biopandemic quit (Quit: Quit.) 2018-07-27T21:25:35Z biopandemic joined #lisp 2018-07-27T21:25:42Z biopandemic quit (Client Quit) 2018-07-27T21:26:05Z biopandemic joined #lisp 2018-07-27T21:27:28Z SaganMan joined #lisp 2018-07-27T21:28:21Z Denommus quit (Remote host closed the connection) 2018-07-27T21:30:59Z EvW quit (Ping timeout: 265 seconds) 2018-07-27T21:31:44Z smurfrobot joined #lisp 2018-07-27T21:33:00Z kenster: I'm streaming some Common lisp (and C++...) programming if anyone is interested: https://www.twitch.tv/kingherring or https://youtu.be/hWmrSyWZS5A 2018-07-27T21:36:34Z smurfrobot quit (Ping timeout: 260 seconds) 2018-07-27T21:36:45Z Kaveren quit (Ping timeout: 252 seconds) 2018-07-27T21:36:57Z knusbaum quit (Ping timeout: 264 seconds) 2018-07-27T21:37:40Z TCZ joined #lisp 2018-07-27T21:37:57Z mindCrime quit (Ping timeout: 240 seconds) 2018-07-27T21:49:20Z no-good-name-yet quit (Remote host closed the connection) 2018-07-27T21:51:38Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2018-07-27T22:01:06Z varjagg quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2018-07-27T22:04:34Z acolarh quit (Ping timeout: 264 seconds) 2018-07-27T22:10:17Z nowhereman_ joined #lisp 2018-07-27T22:10:24Z sjl_ quit (Ping timeout: 260 seconds) 2018-07-27T22:14:55Z lnostdal quit (Quit: https://www.Quanto.ga/) 2018-07-27T22:17:33Z lemo quit (Read error: Connection reset by peer) 2018-07-27T22:17:33Z lemo_ joined #lisp 2018-07-27T22:17:43Z lemo_ is now known as lemo 2018-07-27T22:18:22Z LiamH quit (Quit: Leaving.) 2018-07-27T22:20:20Z Bike joined #lisp 2018-07-27T22:20:21Z Jeosol2 joined #lisp 2018-07-27T22:21:09Z Kundry_Wag joined #lisp 2018-07-27T22:24:36Z Jeosol2 quit (Ping timeout: 252 seconds) 2018-07-27T22:35:11Z angavrilov quit (Remote host closed the connection) 2018-07-27T22:35:37Z TCZ quit (Quit: Leaving) 2018-07-27T22:36:29Z caltelt joined #lisp 2018-07-27T22:36:37Z BitPuffin quit (Remote host closed the connection) 2018-07-27T22:37:47Z random-nick quit (Read error: Connection reset by peer) 2018-07-27T22:43:56Z MoziM quit (Quit: WeeChat 2.2) 2018-07-27T22:44:53Z v0|d quit (Remote host closed the connection) 2018-07-27T22:46:45Z karswell quit (Remote host closed the connection) 2018-07-27T22:46:48Z karswell_ joined #lisp 2018-07-27T22:48:19Z karlosz joined #lisp 2018-07-27T22:52:30Z karlosz quit (Client Quit) 2018-07-27T22:53:27Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-27T22:54:27Z pagnol quit (Ping timeout: 240 seconds) 2018-07-27T22:54:44Z kenster: hmmm does anyone know why the content of a c struct would get corrupted in cffi? 2018-07-27T22:55:20Z Bike: accessing it wrong? 2018-07-27T22:55:27Z kenster: in the C code, printing out the c struct's values gives a good result until I pass in the structure's pointer into a different function 2018-07-27T22:55:54Z karlosz joined #lisp 2018-07-27T22:56:08Z kenster: but in my C code, when I do the same function calls in an int main, there's no corruption ofc 2018-07-27T23:01:31Z robotoad quit (Quit: robotoad) 2018-07-27T23:03:00Z kenster: ok figured it out I think 2018-07-27T23:07:09Z karlosz quit (Quit: karlosz) 2018-07-27T23:12:51Z robotoad joined #lisp 2018-07-27T23:14:43Z EvW joined #lisp 2018-07-27T23:16:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-27T23:19:54Z smurfrobot joined #lisp 2018-07-27T23:25:15Z smurfrobot quit (Ping timeout: 268 seconds) 2018-07-27T23:45:27Z fikka joined #lisp 2018-07-27T23:49:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-27T23:50:06Z robotoad quit (Quit: robotoad) 2018-07-27T23:50:20Z Kevslinger quit (Quit: Connection closed for inactivity) 2018-07-27T23:50:21Z lemo quit (Changing host) 2018-07-27T23:50:21Z lemo joined #lisp 2018-07-27T23:59:03Z f0461a196 joined #lisp 2018-07-28T00:02:06Z pjb: kenster: basically, you need to know two things: the size of each field, the position of each field. 2018-07-28T00:02:20Z pjb: kenster: tools like swig are not able to correctly extract those informations from C headers. 2018-07-28T00:02:31Z pjb: kenster: for example, they don't process #pragma pack. 2018-07-28T00:03:27Z pjb: kenster: structures can have strange alignment rules and as you can see, it can also depend from notations that are not in the C source (#pragma are outside of C, they're non-C code information given to the compiler.). 2018-07-28T00:03:50Z Kundry_Wag joined #lisp 2018-07-28T00:04:16Z pjb: kenster: conclusion: you need to collect this information yourself (eg. use printf on (char*)s->field - (char*)s to get the offset, sizeof to get the size for each field). 2018-07-28T00:04:39Z pjb: then use that to access the fields yourself using memref, not using defcstruct. 2018-07-28T00:05:01Z pjb: kenster: did I tell you already NOT to use FFI? Just reimplemnt the fucking thing in lisp! 2018-07-28T00:07:08Z happy-dude quit (Quit: Connection closed for inactivity) 2018-07-28T00:13:52Z nowhereman_ quit (Ping timeout: 256 seconds) 2018-07-28T00:15:18Z nowhereman_ joined #lisp 2018-07-28T00:18:19Z kenster: pjb: 2018-07-28T00:18:23Z kenster: sorry for not seeing your msgs 2018-07-28T00:18:41Z kenster: It was actually because of the c values being garbage collected by cffi 2018-07-28T00:18:57Z kenster: because I used foreign-values and was storing the ptrs of those on the c struct 2018-07-28T00:19:02Z kenster: so I made the constructor copy the values 2018-07-28T00:19:03Z pjb: There's no GC in C. Unless you link with Boehm GC? 2018-07-28T00:19:06Z kenster: no 2018-07-28T00:19:14Z kenster: what I mean is, the values went out of scope 2018-07-28T00:19:27Z kenster: cffi discards the values 2018-07-28T00:19:43Z kenster: when you allocate foreign values, it deletes them for you 2018-07-28T00:19:49Z kenster: so the char* pointers I had were wrong 2018-07-28T00:19:49Z pjb: There are CFFI macros that allocate C variables on the stack, yes. 2018-07-28T00:20:05Z pjb: But you don't have to use those macros. you can allocate on the heap. 2018-07-28T00:20:24Z kenster: the file upload procedure works now though 2018-07-28T00:20:32Z kenster: so it's all good 2018-07-28T00:20:53Z pjb: ok 2018-07-28T00:21:32Z kenster: I realized I should have been using cffi-grovel 2018-07-28T00:21:51Z kenster: too late now I suppose 2018-07-28T00:21:53Z kenster: my macros work 2018-07-28T00:23:02Z kenster: though actually the grovel file would be messy because it would generate wrappers for the cc_ functions too, though I suppose I could try to "blacklist" those 2018-07-28T00:23:23Z kenster: the cc_ functions are what the C functions call 2018-07-28T00:27:02Z _whitelogger quit (Remote host closed the connection) 2018-07-28T00:29:14Z _whitelogger joined #lisp 2018-07-28T00:30:57Z X-Scale quit (Ping timeout: 240 seconds) 2018-07-28T00:31:18Z LdBeth: Good morning 2018-07-28T00:32:43Z hvxgr_ quit (Ping timeout: 265 seconds) 2018-07-28T00:34:18Z hvxgr_ joined #lisp 2018-07-28T00:37:47Z makomo quit (Ping timeout: 276 seconds) 2018-07-28T00:45:43Z ebrasca joined #lisp 2018-07-28T00:54:42Z no-defun-allowed: Morning LdBeth 2018-07-28T01:01:14Z EvW quit (Ping timeout: 265 seconds) 2018-07-28T01:05:33Z pioneer42 joined #lisp 2018-07-28T01:06:57Z karswell_ quit (Ping timeout: 264 seconds) 2018-07-28T01:07:55Z smurfrobot joined #lisp 2018-07-28T01:08:11Z acolarh joined #lisp 2018-07-28T01:08:14Z Cymew joined #lisp 2018-07-28T01:10:14Z wheelsucker joined #lisp 2018-07-28T01:12:48Z smurfrobot quit (Ping timeout: 256 seconds) 2018-07-28T01:13:10Z Cymew quit (Ping timeout: 268 seconds) 2018-07-28T01:15:30Z fikka joined #lisp 2018-07-28T01:20:13Z fikka quit (Ping timeout: 244 seconds) 2018-07-28T01:23:21Z karlosz joined #lisp 2018-07-28T01:23:42Z gehlw quit (Quit: Leaving) 2018-07-28T01:31:15Z Kundry_Wag quit (Remote host closed the connection) 2018-07-28T01:31:50Z Kundry_Wag joined #lisp 2018-07-28T01:31:57Z lemo_ joined #lisp 2018-07-28T01:32:37Z flazh quit (Ping timeout: 244 seconds) 2018-07-28T01:33:08Z lemo quit (Ping timeout: 244 seconds) 2018-07-28T01:33:09Z lemo_ is now known as lemo 2018-07-28T01:34:29Z nowhereman_ quit (Remote host closed the connection) 2018-07-28T01:36:04Z jasmith joined #lisp 2018-07-28T01:36:19Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-28T01:40:55Z lemo quit (Changing host) 2018-07-28T01:40:55Z lemo joined #lisp 2018-07-28T01:42:13Z nowhereman_ joined #lisp 2018-07-28T01:49:54Z Fare joined #lisp 2018-07-28T01:54:32Z karlosz quit (Quit: karlosz) 2018-07-28T01:58:25Z Kundry_Wag joined #lisp 2018-07-28T02:17:43Z Trystam joined #lisp 2018-07-28T02:18:57Z Tristam quit (Ping timeout: 240 seconds) 2018-07-28T02:19:11Z Trystam is now known as Tristam 2018-07-28T02:22:04Z skidd0 joined #lisp 2018-07-28T02:22:32Z daniel-s joined #lisp 2018-07-28T02:22:45Z skidd0: has anyone here used snooze? How do you define a route on root? 2018-07-28T02:25:49Z xrash quit (Ping timeout: 265 seconds) 2018-07-28T02:29:56Z robotoad joined #lisp 2018-07-28T02:31:28Z fikka joined #lisp 2018-07-28T02:36:58Z fikka quit (Ping timeout: 264 seconds) 2018-07-28T02:41:04Z Fare quit (Ping timeout: 256 seconds) 2018-07-28T02:47:32Z bleak joined #lisp 2018-07-28T02:48:17Z bleak: What would be a real life metaphor for CLOS-style late binding? 2018-07-28T02:49:25Z bleak: I mean in the same sense that communication between cells is a metaphor for message passing in Smalltalk. 2018-07-28T02:56:01Z smurfrobot joined #lisp 2018-07-28T03:00:54Z smurfrobot quit (Ping timeout: 260 seconds) 2018-07-28T03:00:57Z Cthulhux quit (Ping timeout: 240 seconds) 2018-07-28T03:03:32Z krwq joined #lisp 2018-07-28T03:06:53Z Bike: like, living cells? that's kind of a loose metaphor 2018-07-28T03:08:51Z krwq: how would you go about writing a macro which would add a prefix to every defun name? (also working recursively) 2018-07-28T03:09:05Z Bike: every defun name in what? 2018-07-28T03:11:00Z krwq: i.e. (with-prefix "FOO" (defun bar () (format t "(i am foobar)"))) and also (with-prefix "FOO" (with-prefix "BAR" (defun lol () (format t "(i am foobarlol)")))) 2018-07-28T03:11:21Z Bike: i wouldn't do that 2018-07-28T03:11:34Z krwq: why not? 2018-07-28T03:11:43Z krwq: I.d like to create some kind of namespaces 2018-07-28T03:11:46Z Bike: i would just write (defun foobar ...) 2018-07-28T03:11:49Z Bike: you have packages for that 2018-07-28T03:12:01Z Kundry_Wag quit (Remote host closed the connection) 2018-07-28T03:12:41Z Kundry_Wag joined #lisp 2018-07-28T03:12:43Z krwq: i'd like to do it myself in order to translate one language into lisp 2018-07-28T03:13:00Z Bike: if you really must, i'd use something other than defun 2018-07-28T03:13:06Z Bike: defun-with-prefix or something shorter, whatever 2018-07-28T03:13:11Z Bike: then have with-prefix macrolet 2018-07-28T03:13:15Z bleak: Bike: https://www.aomran.com/object-oriented-programming-is-not-about-objects/ <- has a quote from Alan Kay on this. 2018-07-28T03:13:28Z krwq: specifcally you get input as csharp code, then you translate that to lispish version of that and then translate it to lisp code which you could execute 2018-07-28T03:14:11Z Bike: biochemicals aren't usually sent to just one signal, is all 2018-07-28T03:14:18Z Bike: anyway i don't know any metaphor for multiple dispatch 2018-07-28T03:14:52Z LdBeth: doesn't C# have namespace? 2018-07-28T03:14:54Z krwq: so i already got lispification partially working - i used roslyn to generate lisp-like code 2018-07-28T03:14:56Z krwq: yes it does 2018-07-28T03:15:01Z krwq: that's why i need prefixes 2018-07-28T03:16:17Z krwq: in my lisp code i simply run csharp app which print out on the screen lisp code, then i translate and (rather try to for now) execute it 2018-07-28T03:16:43Z krwq: so i.e. i got csharp app with hello world 2018-07-28T03:17:04Z krwq: this is how my current test case look like (this is working): (defparameter *csharp-hello-world-lispified* 2018-07-28T03:17:04Z krwq: '((c#-using "System") 2018-07-28T03:17:04Z krwq: (c#-using "System" "Collections") 2018-07-28T03:17:04Z krwq: (c#-using "System" "Linq") 2018-07-28T03:17:04Z krwq: (c#-using "System" "Text") 2018-07-28T03:17:05Z krwq: (c#-namespace ("HelloWorld") 2018-07-28T03:17:05Z krwq: (c#-class "Program" 2018-07-28T03:17:06Z krwq: (c#-defun "Main" :void (("args" (c#-arr :string))) 2018-07-28T03:17:06Z krwq: (c#-progn 2018-07-28T03:17:07Z krwq: (c#! ("Console" "WriteLine") "Hello, World!"))))))) 2018-07-28T03:17:09Z Bike: whoa whoa hey 2018-07-28T03:17:14Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-28T03:17:26Z Bike: don't just dump things in the channel, please 2018-07-28T03:18:55Z smurfrobot joined #lisp 2018-07-28T03:19:51Z krwq: https://pastebin.com/1fQKY6dr 2018-07-28T03:20:05Z krwq: so this is my current testcase 2018-07-28T03:21:23Z krwq: i'm thinking how to make it so that it generates something like (defun c#-HelloWorld-Program-Main (args) (format t "Hello, World!")) 2018-07-28T03:21:55Z Cthulhux joined #lisp 2018-07-28T03:22:31Z Bike: assuming the contents of the variable are going to be executed in some lisp like way, i'd just have c#-namespace and c#-class bind a *current-namespace* variable or suchlike 2018-07-28T03:22:37Z Bike: then have c#-defun prepend it to its namespace 2018-07-28T03:22:40Z Bike: nothing to do with cl defun 2018-07-28T03:22:47Z krwq: that's what I did for now 2018-07-28T03:22:59Z Bike: is there a problem with it? 2018-07-28T03:23:38Z krwq: I'm not sure how to finish it: https://pastebin.com/7EPsBD0R 2018-07-28T03:24:19Z Bike: just construct the actual n ame from *current-name*, no? 2018-07-28T03:24:33Z krwq: but then how do i define defun with that name 2018-07-28T03:24:49Z Bike: c#-defun is a macro. just expand into a defun with the appropriate name. 2018-07-28T03:25:06Z krwq: will I be able to read dynamic variables? 2018-07-28T03:25:17Z LdBeth: why not? 2018-07-28T03:25:26Z Bike: oh, right. i suppose you need it to be more lexical. 2018-07-28T03:25:33Z krwq: they might not be bound yet 2018-07-28T03:25:35Z krwq: i think 2018-07-28T03:25:39Z Bike: in that case you use the advanced trick of throwing things into symbol-macrolet 2018-07-28T03:26:08Z krwq: could you give an example? 2018-07-28T03:26:13Z Bike: just a moment 2018-07-28T03:26:46Z krwq: maybe i could just create code and eval it? 2018-07-28T03:27:01Z krwq: at runtime 2018-07-28T03:27:32Z Bike: eval is usually not the right answer 2018-07-28T03:28:50Z krwq: i don't see how else in this case 2018-07-28T03:29:28Z smurfrobot quit (Remote host closed the connection) 2018-07-28T03:29:58Z dented42 joined #lisp 2018-07-28T03:30:03Z jkordani quit (Read error: Connection reset by peer) 2018-07-28T03:30:12Z Bike: krwq: https://pastebin.com/3D8uuF7Z 2018-07-28T03:30:39Z oldtopman quit (Ping timeout: 260 seconds) 2018-07-28T03:32:38Z krwq: this is complicated :P 2018-07-28T03:32:57Z Bike: so's a c# to lisp translator 2018-07-28T03:34:27Z dented42 quit (Client Quit) 2018-07-28T03:37:56Z dddddd quit (Read error: Connection reset by peer) 2018-07-28T03:38:16Z pierpa quit (Quit: Page closed) 2018-07-28T03:41:16Z terpri quit (Ping timeout: 256 seconds) 2018-07-28T03:47:01Z krwq: ok, i'll read about it over the weekend and finish once I understand how this works. If my project starts working for at least simple cases I'll likely put it somewhere public 2018-07-28T03:47:57Z Kundry_Wag joined #lisp 2018-07-28T03:48:16Z dented42 joined #lisp 2018-07-28T03:48:49Z smurfrobot joined #lisp 2018-07-28T03:49:52Z dented42 quit (Client Quit) 2018-07-28T03:58:28Z pierpal quit (Quit: Poof) 2018-07-28T03:58:46Z pierpal joined #lisp 2018-07-28T03:59:09Z smurfrobot quit (Remote host closed the connection) 2018-07-28T04:00:54Z Orion3k quit (Ping timeout: 268 seconds) 2018-07-28T04:10:17Z fikka joined #lisp 2018-07-28T04:11:01Z skidd0 quit (Quit: WeeChat 2.1) 2018-07-28T04:12:12Z orivej joined #lisp 2018-07-28T04:15:05Z fikka quit (Ping timeout: 268 seconds) 2018-07-28T04:15:16Z pjb quit (Ping timeout: 256 seconds) 2018-07-28T04:16:07Z smurfrobot joined #lisp 2018-07-28T04:19:48Z Bike quit (Quit: Lost terminal) 2018-07-28T04:21:52Z Kundry_Wag quit (Ping timeout: 268 seconds) 2018-07-28T04:25:14Z bleak quit (Quit: Page closed) 2018-07-28T04:33:06Z Orion3k joined #lisp 2018-07-28T04:36:32Z smurfrobot quit (Remote host closed the connection) 2018-07-28T04:37:30Z dented42 joined #lisp 2018-07-28T04:42:37Z rippa joined #lisp 2018-07-28T04:48:49Z smurfrobot joined #lisp 2018-07-28T04:57:01Z lemo quit (Read error: Connection reset by peer) 2018-07-28T05:00:46Z smurfrobot quit (Remote host closed the connection) 2018-07-28T05:05:28Z smurfrobot joined #lisp 2018-07-28T05:07:27Z adulteratedjedi quit (Read error: Connection reset by peer) 2018-07-28T05:07:43Z adulteratedjedi joined #lisp 2018-07-28T05:19:04Z beach: Good morning everyone! 2018-07-28T05:21:15Z daniel-s quit (Remote host closed the connection) 2018-07-28T05:21:20Z panji joined #lisp 2018-07-28T05:23:49Z smurfrobot quit (Remote host closed the connection) 2018-07-28T05:29:15Z Fare joined #lisp 2018-07-28T05:30:57Z vlatkoB joined #lisp 2018-07-28T05:34:20Z eminhi joined #lisp 2018-07-28T05:36:35Z panji quit (Ping timeout: 240 seconds) 2018-07-28T05:38:20Z newbie quit (Read error: Connection reset by peer) 2018-07-28T05:40:08Z Guest94317 quit (Quit: leaving) 2018-07-28T05:40:30Z anon joined #lisp 2018-07-28T05:40:31Z anon quit (Changing host) 2018-07-28T05:40:31Z anon joined #lisp 2018-07-28T05:40:53Z anon is now known as Guest29 2018-07-28T05:45:13Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-28T05:50:15Z flazh joined #lisp 2018-07-28T05:50:23Z terpri joined #lisp 2018-07-28T05:53:15Z phoe: dlowe: actually I don't want to enter the debugger all the time - I want to signal a condition. Then the user may do whatever he pleases. 2018-07-28T05:53:26Z phoe: Signaling a condition /= entering the debugger, either. 2018-07-28T05:53:45Z panji joined #lisp 2018-07-28T05:56:29Z sauvin joined #lisp 2018-07-28T05:56:40Z smurfrobot joined #lisp 2018-07-28T05:58:30Z fikka joined #lisp 2018-07-28T05:58:35Z beach: Indeed. 2018-07-28T06:00:22Z Fare quit (Ping timeout: 264 seconds) 2018-07-28T06:02:07Z saki joined #lisp 2018-07-28T06:03:29Z fikka quit (Ping timeout: 260 seconds) 2018-07-28T06:11:56Z Fare joined #lisp 2018-07-28T06:18:35Z Kundry_Wag joined #lisp 2018-07-28T06:22:31Z kajo joined #lisp 2018-07-28T06:24:02Z smurfrobot quit (Remote host closed the connection) 2018-07-28T06:26:58Z aeth: phoe: You still might want to do it the return value way if it's faster if it needs to be fast. 2018-07-28T06:28:16Z aeth: e.g. if there's a reasonable expectation that it won't be successful many times in a hot loop 2018-07-28T06:29:36Z aeth: Multiple return values is also sort of the approach gethash does 2018-07-28T06:30:06Z aeth: (It also has an optional default value, so it kind of lets you handle it two ways.) 2018-07-28T06:31:16Z aeth: Imo, there isn't really a Lisp way. The Lisp way is to allow every style in one language. 2018-07-28T06:31:23Z aeth: s/style/paradigm/ 2018-07-28T06:31:34Z aeth: (There is only one style for things like parens and spaces!) 2018-07-28T06:36:03Z eminhi quit (Quit: leaving) 2018-07-28T06:42:16Z buoyantair joined #lisp 2018-07-28T06:48:51Z buoyantair quit (Quit: buoyantair) 2018-07-28T06:51:19Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-28T06:53:03Z fikka joined #lisp 2018-07-28T06:57:36Z Fare quit (Ping timeout: 244 seconds) 2018-07-28T06:57:44Z fikka quit (Ping timeout: 260 seconds) 2018-07-28T07:01:08Z Fare joined #lisp 2018-07-28T07:08:12Z fikka joined #lisp 2018-07-28T07:09:48Z Fare quit (Ping timeout: 256 seconds) 2018-07-28T07:15:07Z smurfrobot joined #lisp 2018-07-28T07:16:56Z phoe: aeth: it doesn't need to be fast. 2018-07-28T07:30:20Z smurfrobot quit (Remote host closed the connection) 2018-07-28T07:31:06Z shka1 joined #lisp 2018-07-28T07:33:42Z phoe: A signaled condition does not have any kind of dynamic extent, right? I can store a reference to it somewhere and process in a completely different place of the program. 2018-07-28T07:36:05Z beach: Absolutely. 2018-07-28T07:36:32Z phoe: Thanks. For a moment, I wasn't sure of that. 2018-07-28T07:36:41Z FreeBirdLjj joined #lisp 2018-07-28T07:37:34Z shka1 quit (Ping timeout: 265 seconds) 2018-07-28T07:40:28Z smurfrobot joined #lisp 2018-07-28T07:45:46Z Kundry_Wag joined #lisp 2018-07-28T07:46:48Z phoe: Is there some sort of Lisp mechanism that will allow me to do run-time dispatch on conditions and handlers? HANDLER-BIND is a macro and therefore expands at macroexpansion time. 2018-07-28T07:47:45Z phoe: The simplest thing that I can think of is making a HANDLER-BIND on CONDITION and providing it with a function of my choosing. I just wonder if there's a better way. 2018-07-28T07:48:46Z phoe: Either that, or I need to take a step back and rethink what I actually want to achieve. 2018-07-28T07:49:29Z shka1 joined #lisp 2018-07-28T07:54:58Z smurfrobot quit (Remote host closed the connection) 2018-07-28T07:57:01Z phoe: No, I really want a run-time way of dispatching. I don't really want to do it with macros since they don't tie well into the CLOS-heavy style I'm working with here. 2018-07-28T07:57:07Z trittweiler: phoe, yeah, you could handler-bind a generic function, for example. 2018-07-28T07:57:21Z phoe: trittweiler: I was thinking of that, actually 2018-07-28T07:57:54Z phoe: That would mean that the user could define methods on that function. 2018-07-28T07:58:42Z phoe: Hmmm. That's right! Multiple dispatch comes to the rescue here; I don't have to dispatch on a single argument. 2018-07-28T07:58:52Z phoe: trittweiler: thanks. 2018-07-28T08:01:14Z shka1 quit (Ping timeout: 256 seconds) 2018-07-28T08:01:34Z pagnol joined #lisp 2018-07-28T08:04:34Z fikka quit (Ping timeout: 264 seconds) 2018-07-28T08:05:01Z varjag joined #lisp 2018-07-28T08:09:33Z smurfrobot joined #lisp 2018-07-28T08:11:15Z shka1 joined #lisp 2018-07-28T08:12:02Z svillemot left #lisp 2018-07-28T08:15:03Z smurfrobot quit (Remote host closed the connection) 2018-07-28T08:19:03Z nanoz joined #lisp 2018-07-28T08:19:28Z inode joined #lisp 2018-07-28T08:19:34Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-28T08:20:35Z shka1 quit (Ping timeout: 265 seconds) 2018-07-28T08:20:58Z inode left #lisp 2018-07-28T08:24:05Z smurfrobot joined #lisp 2018-07-28T08:25:28Z fikka joined #lisp 2018-07-28T08:26:52Z kenster quit (Ping timeout: 256 seconds) 2018-07-28T08:27:07Z zfree joined #lisp 2018-07-28T08:35:34Z krwq quit (Remote host closed the connection) 2018-07-28T08:40:04Z shka1 joined #lisp 2018-07-28T08:45:39Z pagnol quit (Ping timeout: 260 seconds) 2018-07-28T08:47:48Z alienated joined #lisp 2018-07-28T08:47:51Z alienated: Hey, I thought you guys might be interested in this blog by freenode staff member Bryan 'kloeri' Ostergaard https://bryanostergaard.com/ 2018-07-28T08:47:54Z alienated: or maybe this blog by freenode staff member Matthew 'mst' Trout https://MattSTrout.com/ 2018-07-28T08:47:57Z alienated: Read what IRC investigative journalists have uncovered on the freenode pedophilia scandal https://encyclopediadramatica.rs/Freenodegate 2018-07-28T08:48:01Z alienated: This message was brought to you by Private Internet Access. Voice your opinions at https://webchat.freenode.net/?channels=%23freenode 2018-07-28T08:48:04Z alienated: 2018-07-28T08:48:13Z alienated quit (K-Lined) 2018-07-28T08:48:20Z EvW1 joined #lisp 2018-07-28T08:48:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-28T08:50:40Z nowhereman_ quit (Ping timeout: 256 seconds) 2018-07-28T08:52:48Z EvW1 quit (Ping timeout: 256 seconds) 2018-07-28T09:04:26Z gendl: Does anyone know who has sbcl.org registered? Seems it’s down. 2018-07-28T09:08:15Z beach: Yes, Xof told us yesterday. 2018-07-28T09:08:42Z smurfrobot quit (Remote host closed the connection) 2018-07-28T09:08:54Z beach: Kevin Rosenberg he says. 2018-07-28T09:09:14Z shka1 quit (Ping timeout: 256 seconds) 2018-07-28T09:11:09Z pierpal quit (Ping timeout: 264 seconds) 2018-07-28T09:12:02Z smurfrobot joined #lisp 2018-07-28T09:16:24Z narendra` joined #lisp 2018-07-28T09:18:38Z pagnol joined #lisp 2018-07-28T09:19:11Z cage_ joined #lisp 2018-07-28T09:19:20Z narendra` quit (Remote host closed the connection) 2018-07-28T09:20:41Z narendraj9 joined #lisp 2018-07-28T09:20:42Z fikka joined #lisp 2018-07-28T09:22:12Z zfree quit (Quit: zfree) 2018-07-28T09:25:54Z fikka quit (Ping timeout: 260 seconds) 2018-07-28T09:30:35Z dddddd joined #lisp 2018-07-28T09:31:05Z EvW joined #lisp 2018-07-28T09:33:38Z pagnol quit (Ping timeout: 244 seconds) 2018-07-28T09:35:33Z random-nick joined #lisp 2018-07-28T09:40:00Z smurfrobot quit (Remote host closed the connection) 2018-07-28T09:41:37Z smurfrobot joined #lisp 2018-07-28T09:41:38Z smurfrobot quit (Remote host closed the connection) 2018-07-28T09:41:53Z smurfrobot joined #lisp 2018-07-28T09:43:37Z fikka joined #lisp 2018-07-28T09:43:55Z lnostdal joined #lisp 2018-07-28T09:45:19Z robotoad quit (Quit: robotoad) 2018-07-28T09:48:44Z nowhereman_ joined #lisp 2018-07-28T09:50:24Z lnostdal quit (Quit: https://www.Quanto.ga/) 2018-07-28T09:53:30Z makomo joined #lisp 2018-07-28T09:55:57Z caltelt quit (Ping timeout: 240 seconds) 2018-07-28T09:58:13Z EvW quit (Ping timeout: 265 seconds) 2018-07-28T09:58:34Z fikka quit (Ping timeout: 260 seconds) 2018-07-28T10:00:53Z dented42 quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-28T10:01:06Z lnostdal joined #lisp 2018-07-28T10:01:11Z pjb joined #lisp 2018-07-28T10:02:19Z panji left #lisp 2018-07-28T10:03:14Z narendraj9 quit (Read error: Connection reset by peer) 2018-07-28T10:04:15Z smurfrobot quit (Remote host closed the connection) 2018-07-28T10:05:34Z saki quit (Ping timeout: 260 seconds) 2018-07-28T10:05:43Z saki joined #lisp 2018-07-28T10:06:31Z fikka joined #lisp 2018-07-28T10:07:22Z smurfrobot joined #lisp 2018-07-28T10:07:32Z cage_ quit (Remote host closed the connection) 2018-07-28T10:07:51Z cage_ joined #lisp 2018-07-28T10:09:11Z hph^ joined #lisp 2018-07-28T10:11:06Z isBEKaml joined #lisp 2018-07-28T10:11:08Z isBEKaml quit (Remote host closed the connection) 2018-07-28T10:11:26Z isBEKaml joined #lisp 2018-07-28T10:12:39Z smurfrobot quit (Remote host closed the connection) 2018-07-28T10:16:16Z Kundry_Wag joined #lisp 2018-07-28T10:20:56Z xrash joined #lisp 2018-07-28T10:21:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-28T10:26:44Z isBEKaml quit (Quit: isBEKaml) 2018-07-28T10:27:07Z isBEKaml joined #lisp 2018-07-28T10:27:11Z saki quit (Quit: saki) 2018-07-28T10:29:36Z eminhi joined #lisp 2018-07-28T10:29:41Z robotoad joined #lisp 2018-07-28T10:30:57Z isBEKaml quit (Client Quit) 2018-07-28T10:32:08Z MrSleepy quit (Quit: Leaving) 2018-07-28T10:32:12Z shka1 joined #lisp 2018-07-28T10:35:44Z eminhi quit (Quit: leaving) 2018-07-28T10:47:15Z pagnol joined #lisp 2018-07-28T10:48:58Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-28T10:52:51Z robotoad quit (Quit: robotoad) 2018-07-28T10:53:45Z dmiles quit (Ping timeout: 264 seconds) 2018-07-28T10:54:23Z logicmoo joined #lisp 2018-07-28T10:55:42Z pagnol quit (Quit: Ex-Chat) 2018-07-28T10:56:10Z pagnol joined #lisp 2018-07-28T10:58:04Z shka1: s 2018-07-28T10:58:07Z shka1: sorry 2018-07-28T10:58:31Z pjb: d 2018-07-28T10:58:33Z pjb: don't be 2018-07-28T10:58:39Z EvW joined #lisp 2018-07-28T10:59:46Z nowhereman_ quit (Ping timeout: 264 seconds) 2018-07-28T11:06:22Z smurfrobot joined #lisp 2018-07-28T11:11:29Z smurfrobot quit (Ping timeout: 260 seconds) 2018-07-28T11:18:28Z fikka joined #lisp 2018-07-28T11:19:53Z smurfrobot joined #lisp 2018-07-28T11:23:13Z fikka quit (Ping timeout: 248 seconds) 2018-07-28T11:24:05Z smurfrobot quit (Ping timeout: 240 seconds) 2018-07-28T11:25:25Z varjag quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2018-07-28T11:32:12Z lumm joined #lisp 2018-07-28T11:34:57Z smurfrobot joined #lisp 2018-07-28T11:39:11Z smurfrobot quit (Ping timeout: 244 seconds) 2018-07-28T11:39:34Z nowhereman_ joined #lisp 2018-07-28T11:44:38Z pagnol quit (Ping timeout: 268 seconds) 2018-07-28T11:46:59Z pagnol joined #lisp 2018-07-28T11:49:25Z Inline quit (Quit: Leaving) 2018-07-28T11:50:20Z Inline joined #lisp 2018-07-28T11:51:27Z fikka joined #lisp 2018-07-28T11:56:24Z fikka quit (Ping timeout: 256 seconds) 2018-07-28T11:57:34Z fikka joined #lisp 2018-07-28T12:02:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-28T12:04:17Z angavrilov joined #lisp 2018-07-28T12:09:22Z Inline quit (Quit: Leaving) 2018-07-28T12:11:19Z Inline joined #lisp 2018-07-28T12:30:34Z fikka joined #lisp 2018-07-28T12:34:59Z fikka quit (Ping timeout: 244 seconds) 2018-07-28T12:44:55Z Bike joined #lisp 2018-07-28T12:45:55Z Kundry_Wag joined #lisp 2018-07-28T12:48:28Z Fare joined #lisp 2018-07-28T12:49:02Z nowhere_man joined #lisp 2018-07-28T12:49:29Z nowhereman_ quit (Ping timeout: 260 seconds) 2018-07-28T12:50:37Z Kevslinger joined #lisp 2018-07-28T12:52:10Z nullniverse joined #lisp 2018-07-28T12:52:35Z Fare quit (Ping timeout: 240 seconds) 2018-07-28T12:58:40Z fikka joined #lisp 2018-07-28T13:00:38Z drot quit (Ping timeout: 276 seconds) 2018-07-28T13:03:34Z fikka quit (Ping timeout: 268 seconds) 2018-07-28T13:03:59Z viaken quit (Ping timeout: 276 seconds) 2018-07-28T13:10:18Z ccl-logbot joined #lisp 2018-07-28T13:10:18Z 2018-07-28T13:10:18Z names: ccl-logbot pierpal nullniverse Kevslinger nowhere_man Kundry_Wag Bike Inline angavrilov pagnol lumm EvW logicmoo shka1 xrash hph^ cage_ pjb lnostdal makomo random-nick dddddd nanoz FreeBirdLjj kajo sauvin terpri flazh Guest29 vlatkoB adulteratedjedi rippa Orion3k orivej Cthulhux Tristam jasmith wheelsucker acolarh pioneer42 ebrasca hvxgr_ _whitelogger f0461a196 SaganMan biopandemic gabiruh NoNumber Xof Guest10120 sjl trittweiler jibanes vtomole renzhi 2018-07-28T13:10:18Z names: dwrngr eschulte starman_jr vaporatorius__ phoe_ rumbler31 exit70 beach fluke` iskander kozy_ schjetne moei ebzzry gector vsync housel slyrus_ Khisanth codenix Xach bsund hjudt Arcaelyx kjeldahl shenghi sendai_ xificurC lel koenig bigfondue jasom charh loli erratic edgar-rft vibs29 k-hos zooey cpape lonjil Wojciech_K msb easye azrazalea pfdietz_ malm vertigo White_Flame dcluna Cal[m] lyosha[m] Guest98336 angular_mike_2 klltkr_ broccolistem mathrick 2018-07-28T13:10:18Z names: eschatologist Amany aindilis ikaros28 Colleen gigetoo sword phoe lemoinem cmatei shka Ricchi esrarkesh zaquest wildbartty Kaisyu7 zigpaw whartung sellout-1 dilated_dinosaur zotan aeth giraffe itruslove troydm gz kilimanjaro antoszka tfb creat sveit cpt_nemo Ziemas XachX stylewarning zkat tobel danlentz Duns_Scrotus nyaray asedeno abbe l1x tazjin parseval convexferret johs rme galdor1 DataLinkDroid bmansurov scymtym voidlily jfrancis Demosthenex d4ryus 2018-07-28T13:10:18Z names: xantoz rotty phadthai Lord_Nightmare jfb4 kushal DGASAU beaky groovy2shoes Aritheanie fiddlerwoaroof reverse_light Patternmaster jonh grumble z3r0d5y[m] kumori[m] HDurer[m] ritsch_master[m] clhsgang[m] EuAndreh[m] Jach[m] manila[m] plll[m] equalunique[m] Thorondor[m] eli_oat[m] no-defun-allowed eatonphil[m] wetha[m] kammd[m] dirb[m] katco[m] drunk_foxx[m] magicGNUPONUT[m] remix2000[m] spectrumgomas[m] LdBeth Folkol kqr les joast ravndal djinni` philosau1 2018-07-28T13:10:18Z names: nullman jurov z0d renard_ jsnell_ bkst lowryder stux|RC-only bheesham pacon_ cross cmbntr gko pankracy pyc rgrau lxpz micro sshirokov Fade GGMethos Guest43104 mood drdo spal ozzloy [df]_ deba5e12 gabot fouric theBlackDragon Mon_Ouie AdmiralBumbleBee zymurgy arrsim SlashLife mikaelj ircbrowse_ joga ghostyy tomaw Nikotiini sellout gingerale sbryant Firedancer michalisko otwieracz f32ff mulk pok kbtr_ spacepluk fluxit TMA simplegauss ecraven stux|RC tokenrove 2018-07-28T13:10:18Z names: umpc engblom trn trig-ger_ splittist mbrock_ @p_l drmeister weltung jhei Meow-J___ isoraqathedh jyc bailon meowray greaser|q sukaeto gsl foom alandipert brandonz CEnnis91 davsebamse nydel Patzy funnel gendl cgay @fe[nl]ix Blkt aijony dan64 MetaYan argoneus blt clog drewc loke jackdaniel askatasuna alphor Yaargh peccu4 CrazyEddy swflint knobo Myon Zhivago bhyde khrbt payphone evilbot23 kini rann terrorjack ramus nopf felideon shaftoe_ Tordek dvdmuckle 2018-07-28T13:10:18Z names: pchrist sigjuice himmAllRight stacksmith Plazma borodust sakalli_ vert2_ tessier eagleflo justinmcp juristi runejuhl catern Ober nhandler_ uint nckx arbxs PuercoPop copec crsc nimiux jeosol dim jdz ineiros libre-man flip214 ym mrcom Intensity specbot minion |3b| saturn2 thijso mingus larme cyberlard dxtr vxe cods himmAllRIght17 impulse Murii__ Posterdati hvxgr slyrus krator44 Lord_of_Life bexx_ reu tripty abeaumont cibs jgkamat dieggsy bitch thinkpad 2018-07-28T13:10:18Z names: shachaf esthlos dlowe luis` jself mfiano alms_clozure d4gg4d_ banjiewen mjl billstclair jerme__ devlaf rvirding dkrm krrrcks thekolb PyroLagus lieven phenoble froggey APic carmack emma ft _death spacedbat Oddity bend3r_ snits_ mrSpec djh jxy energizer guaqua samebchase eMBee Mandus lugh tkd 2018-07-28T13:10:25Z rme quit (Ping timeout: 180 seconds) 2018-07-28T13:13:21Z gz quit (Ping timeout: 180 seconds) 2018-07-28T13:13:23Z XachX quit (Ping timeout: 180 seconds) 2018-07-28T13:13:23Z v0|d joined #lisp 2018-07-28T13:13:35Z rme quit (Ping timeout: 180 seconds) 2018-07-28T13:13:55Z v0|d: Xof: um, what does FOP stands for? 2018-07-28T13:19:14Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-28T13:19:46Z EvW quit (Ping timeout: 260 seconds) 2018-07-28T13:20:35Z nowhere_man quit (Ping timeout: 240 seconds) 2018-07-28T13:21:13Z X-Scale joined #lisp 2018-07-28T13:22:37Z ikaros28 quit (Quit: WeeChat 2.2) 2018-07-28T13:36:39Z beach: Improved layout instructions and control arcs in IR viewer: http://metamodular.com/IR-viewer.png 2018-07-28T13:38:24Z Cthulhux quit (Changing host) 2018-07-28T13:38:24Z Cthulhux joined #lisp 2018-07-28T13:40:57Z lemo joined #lisp 2018-07-28T13:41:48Z fikka joined #lisp 2018-07-28T13:46:42Z Kundry_Wag joined #lisp 2018-07-28T13:47:45Z fikka quit (Ping timeout: 264 seconds) 2018-07-28T13:49:00Z nowhere_man joined #lisp 2018-07-28T13:49:59Z EvW joined #lisp 2018-07-28T13:50:18Z v0|d: um, sbcl.sourceforge.net? 2018-07-28T13:50:31Z v0|d: i get 503 no backend servers avail. 2018-07-28T13:50:46Z phoe: v0|d: I get 200 OK 2018-07-28T13:51:07Z shka1: beach: this looks better for sure 2018-07-28T13:51:17Z v0|d: phoe: Ok, it works now 2018-07-28T13:51:30Z beach: shka1: I should hope so. I worked hard on improving it. :) 2018-07-28T13:56:12Z drot joined #lisp 2018-07-28T14:02:47Z ccl-logbot joined #lisp 2018-07-28T14:02:47Z 2018-07-28T14:02:47Z names: ccl-logbot cage_ drot EvW nowhere_man Kundry_Wag lemo X-Scale v0|d pierpal nullniverse Kevslinger Bike Inline angavrilov pagnol lumm logicmoo shka1 xrash hph^ pjb lnostdal makomo random-nick dddddd nanoz FreeBirdLjj kajo sauvin terpri flazh Guest29 vlatkoB adulteratedjedi rippa Orion3k orivej Cthulhux Tristam jasmith wheelsucker acolarh pioneer42 ebrasca hvxgr_ _whitelogger f0461a196 SaganMan biopandemic gabiruh NoNumber Xof Guest10120 sjl trittweiler 2018-07-28T14:02:47Z names: jibanes vtomole renzhi dwrngr eschulte starman_jr vaporatorius__ phoe_ rumbler31 exit70 beach fluke` iskander kozy_ schjetne moei ebzzry gector vsync housel slyrus_ Khisanth codenix Xach bsund hjudt Arcaelyx kjeldahl shenghi sendai_ xificurC lel koenig bigfondue jasom charh loli erratic edgar-rft vibs29 k-hos zooey cpape lonjil Wojciech_K msb easye azrazalea pfdietz_ malm vertigo White_Flame dcluna Cal[m] lyosha[m] Guest98336 angular_mike_2 klltkr_ 2018-07-28T14:02:47Z names: broccolistem mathrick eschatologist Amany aindilis Colleen gigetoo sword phoe lemoinem cmatei shka Ricchi esrarkesh zaquest wildbartty Kaisyu7 zigpaw whartung sellout-1 dilated_dinosaur zotan aeth giraffe itruslove troydm gz kilimanjaro antoszka tfb creat sveit cpt_nemo Ziemas XachX stylewarning zkat tobel danlentz Duns_Scrotus nyaray asedeno abbe l1x tazjin parseval convexferret johs rme galdor1 DataLinkDroid bmansurov scymtym voidlily jfrancis 2018-07-28T14:02:47Z names: Demosthenex d4ryus xantoz rotty phadthai Lord_Nightmare jfb4 kushal DGASAU beaky groovy2shoes Aritheanie fiddlerwoaroof reverse_light Patternmaster jonh grumble z3r0d5y[m] kumori[m] HDurer[m] ritsch_master[m] clhsgang[m] EuAndreh[m] Jach[m] manila[m] plll[m] equalunique[m] Thorondor[m] eli_oat[m] no-defun-allowed eatonphil[m] wetha[m] kammd[m] dirb[m] katco[m] drunk_foxx[m] magicGNUPONUT[m] remix2000[m] spectrumgomas[m] LdBeth Folkol kqr les joast ravndal 2018-07-28T14:02:47Z names: djinni` philosau1 nullman tkd lugh Mandus eMBee samebchase guaqua energizer jxy djh mrSpec snits_ bend3r_ Oddity spacedbat _death ft emma carmack APic froggey phenoble lieven PyroLagus thekolb krrrcks dkrm rvirding devlaf jerme__ billstclair mjl banjiewen d4gg4d_ alms_clozure mfiano jself luis` dlowe esthlos shachaf thinkpad bitch dieggsy jgkamat cibs abeaumont tripty reu bexx_ Lord_of_Life krator44 slyrus hvxgr Posterdati Murii__ impulse himmAllRIght17 2018-07-28T14:02:47Z names: cods vxe dxtr cyberlard larme mingus thijso saturn2 |3b| minion specbot Intensity mrcom ym flip214 libre-man ineiros jdz dim jeosol nimiux crsc copec PuercoPop arbxs nckx uint nhandler_ Ober catern runejuhl juristi justinmcp eagleflo tessier vert2_ sakalli_ borodust Plazma stacksmith himmAllRight sigjuice pchrist dvdmuckle Tordek shaftoe_ felideon nopf ramus terrorjack rann kini evilbot23 payphone khrbt bhyde Zhivago Myon knobo swflint CrazyEddy peccu4 2018-07-28T14:02:47Z names: Yaargh alphor askatasuna jackdaniel loke drewc clog blt argoneus MetaYan dan64 aijony Blkt @fe[nl]ix cgay gendl funnel Patzy nydel davsebamse CEnnis91 brandonz alandipert foom gsl sukaeto greaser|q meowray bailon jyc isoraqathedh Meow-J___ jhei weltung drmeister @p_l mbrock_ splittist trig-ger_ trn engblom umpc tokenrove stux|RC ecraven simplegauss TMA fluxit spacepluk kbtr_ pok mulk f32ff otwieracz michalisko Firedancer sbryant gingerale sellout 2018-07-28T14:02:47Z names: Nikotiini tomaw ghostyy joga ircbrowse_ mikaelj SlashLife arrsim zymurgy AdmiralBumbleBee Mon_Ouie theBlackDragon fouric gabot deba5e12 [df]_ ozzloy spal drdo mood Guest43104 GGMethos Fade sshirokov micro lxpz rgrau pyc pankracy gko cmbntr cross pacon_ bheesham stux|RC-only lowryder bkst jsnell_ renard_ z0d jurov 2018-07-28T14:02:47Z Kundry_Wag quit (Ping timeout: 265 seconds) 2018-07-28T14:08:17Z p_l: beach: funny thing - some people have patched MACLISP on PDP-10 to be Y2k-safe and decided to check what Multics version did... Multics appeared to be Y2k-safe due to a coding mistake :D 2018-07-28T14:08:41Z beach: Heh! I had no idea. 2018-07-28T14:09:45Z p_l: ITS did (year mod 100), Multics version did (year - 1900) 2018-07-28T14:10:03Z p_l: the Maclisp "spec" in this area was to return 2-digit year 2018-07-28T14:10:30Z beach: I see. And no overflow on Multics? 2018-07-28T14:11:35Z EvW quit (Remote host closed the connection) 2018-07-28T14:11:45Z EvW joined #lisp 2018-07-28T14:14:15Z phoe: Overflow? Even if it hosted it in a (signed-byte 8), it'd overflow only after 127 2018-07-28T14:14:20Z p_l: beach: I think in both cases the datatype was big enough, and the 2-digit was used for different reasons 2018-07-28T14:14:20Z phoe: So we still have nine years left 2018-07-28T14:14:30Z beach: p_l: I see. 2018-07-28T14:14:35Z p_l: phoe: except possibly in BCD mode on some machines 2018-07-28T14:15:04Z p_l: actually, I think the CMOS clock in IBM PC used 2 BCD digits for year 2018-07-28T14:15:25Z p_l: the COBOL systems that had so much problem were storing 2 digits in *text* 2018-07-28T14:16:22Z EvW quit (Ping timeout: 256 seconds) 2018-07-28T14:16:50Z p_l: apparently causes fun errors though 2018-07-28T14:17:06Z p_l: like Emacs reporting date as year 118 or so? 2018-07-28T14:21:58Z light2yellow joined #lisp 2018-07-28T14:24:00Z Bike: the oldest known painting of a wheelbarrow was done in 118 2018-07-28T14:25:02Z phoe: see, and they already had emacs back then! 2018-07-28T14:27:47Z pjb: p_l: the nice thing with cobol, is that you can easily deal with the US budget, even in 1950. 2018-07-28T14:28:00Z pjb: p_l: C programmers would have more difficulties there… 2018-07-28T14:28:04Z p_l: yeah 2018-07-28T14:28:13Z pjb: and even naive lisp programmers. 2018-07-28T14:28:44Z p_l: pjb: on at least some platforms COBOL was popular, C was impossible due to non-reentrant functions in standard library 2018-07-28T14:29:12Z pjb: Yeah, reentrant functions was such a big problem once :-) 2018-07-28T14:29:44Z p_l: pjb: on CICS, all functions have to be reentrant because your code can be interrupted all the time 2018-07-28T14:30:17Z p_l: and you have shared environment with other "transactions" (CICS programs) 2018-07-28T14:31:13Z dddddd quit (Remote host closed the connection) 2018-07-28T14:31:36Z varjag joined #lisp 2018-07-28T14:33:22Z wheelsucker quit (Ping timeout: 256 seconds) 2018-07-28T14:39:58Z karlosz joined #lisp 2018-07-28T14:41:00Z fikka joined #lisp 2018-07-28T14:42:23Z lnostdal quit (Quit: https://www.Quanto.ga/) 2018-07-28T14:45:21Z fikka quit (Ping timeout: 248 seconds) 2018-07-28T14:47:03Z smurfrobot joined #lisp 2018-07-28T14:51:36Z smurfrobot quit (Ping timeout: 265 seconds) 2018-07-28T14:52:25Z orivej quit (Ping timeout: 244 seconds) 2018-07-28T14:52:34Z nanoz quit (Ping timeout: 264 seconds) 2018-07-28T14:56:01Z Fare joined #lisp 2018-07-28T15:00:05Z lumm quit (Quit: lumm) 2018-07-28T15:00:07Z nullniverse quit (Ping timeout: 268 seconds) 2018-07-28T15:00:34Z lumm joined #lisp 2018-07-28T15:04:32Z Khisanth quit (Ping timeout: 256 seconds) 2018-07-28T15:05:24Z Khisanth joined #lisp 2018-07-28T15:06:09Z svillemot joined #lisp 2018-07-28T15:09:05Z pagnol quit (Ping timeout: 240 seconds) 2018-07-28T15:09:39Z Ven`` joined #lisp 2018-07-28T15:16:24Z saki joined #lisp 2018-07-28T15:23:22Z caltelt joined #lisp 2018-07-28T15:36:04Z trittweiler quit (Ping timeout: 265 seconds) 2018-07-28T15:39:48Z Fare quit (Ping timeout: 256 seconds) 2018-07-28T15:41:47Z Pixel_Outlaw joined #lisp 2018-07-28T15:42:53Z BitPuffin joined #lisp 2018-07-28T15:42:56Z froggey: hello #lisp 2018-07-28T15:43:04Z froggey: Mezzano Demo 4 is out, featuring McCLIM, Quicklisp, FAT32, a generational GC, and a new compiler backend 2018-07-28T15:43:07Z froggey: https://github.com/froggey/Mezzano/releases/tag/demo4 2018-07-28T15:43:26Z krwq joined #lisp 2018-07-28T15:43:42Z beach: Congratulations! 2018-07-28T15:43:52Z shka1: froggey: sounds awesome 2018-07-28T15:43:57Z krwq: Bike, are you there perhaps? 2018-07-28T15:43:58Z shka1: i read email in the mailing list 2018-07-28T15:44:16Z Bike: i am here and not there 2018-07-28T15:44:22Z phoe: froggey: holy hell, awesome! 2018-07-28T15:44:54Z phoe: I'll test in a moment 2018-07-28T15:45:00Z froggey: thank you 2018-07-28T15:45:30Z EvW1 joined #lisp 2018-07-28T15:46:25Z krwq: ok :) I analyzed and understood your example from yesterday (https://pastebin.com/3D8uuF7Z) - got another question - is there some way to add also imperative adding of prefixes which would cooperate with the scoped ones? (usecase is (c#-using "foo")) 2018-07-28T15:47:03Z Bike: not really 2018-07-28T15:47:05Z Bike: it's all macro time 2018-07-28T15:47:50Z krwq: any easy way to hack around that? (i.e. change all usings so that they wrap everything until end of scope i.e.) 2018-07-28T15:48:42Z krwq: so that more or less (c# (c#-using ...) (c#-using ...) ...) => (c# (c#-using ... (c#-using ... ...))) 2018-07-28T15:49:09Z phoe: nest? 2018-07-28T15:49:12Z Bike: nothing that i want to contemplate 2018-07-28T15:49:32Z phoe: https://fare.livejournal.com/189741.html 2018-07-28T15:49:40Z phoe: that's what came to my mind after krwq example 2018-07-28T15:50:34Z krwq: hmmm i'd still need some kind of state anyway 2018-07-28T15:50:40Z krwq: i thinkl 2018-07-28T15:50:50Z Bike: you'll have to do some processing to find the using nodes at compile time 2018-07-28T15:51:56Z krwq: but i'm thinking of different case - the order of definition of classes doesn't matter in c# but I'll need all the info about them when someone calls c# func) 2018-07-28T15:53:25Z krwq: unless the calling subroutine would generate itself the first time it is used 2018-07-28T15:55:27Z krwq: unless I just go with eval - it seems to simplify things in this case 2018-07-28T15:55:41Z Bike: i really, really don't think you want to use eval 2018-07-28T15:55:47Z Bike: you should process your program at compile time 2018-07-28T15:56:00Z Bike: it's not like a Using declaration is a runtime thing anyway 2018-07-28T15:56:26Z pagnol joined #lisp 2018-07-28T15:57:00Z krwq: this is harder than i thought :P 2018-07-28T16:12:30Z Kundry_Wag joined #lisp 2018-07-28T16:14:47Z newbie joined #lisp 2018-07-28T16:17:46Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-28T16:19:05Z eminhi joined #lisp 2018-07-28T16:21:20Z pjb: krwq: this is software. It's still softer than the softer hardware! 2018-07-28T16:22:51Z Kundry_Wag joined #lisp 2018-07-28T16:25:27Z varjag quit (Ping timeout: 240 seconds) 2018-07-28T16:25:34Z shka1: *softest 2018-07-28T16:26:35Z trocado joined #lisp 2018-07-28T16:27:05Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-28T16:38:09Z orivej joined #lisp 2018-07-28T16:41:05Z EvW1 quit (Ping timeout: 245 seconds) 2018-07-28T16:43:54Z sjl_ joined #lisp 2018-07-28T16:52:11Z pjb quit (Read error: Connection reset by peer) 2018-07-28T16:52:40Z pjb joined #lisp 2018-07-28T16:57:54Z robotoad joined #lisp 2018-07-28T16:57:59Z kajo quit (Ping timeout: 260 seconds) 2018-07-28T16:58:25Z Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-28T17:00:23Z kenster joined #lisp 2018-07-28T17:00:45Z Autolycus joined #lisp 2018-07-28T17:03:25Z Kundry_Wag joined #lisp 2018-07-28T17:12:40Z fikka joined #lisp 2018-07-28T17:13:20Z cage_ quit (Quit: Leaving) 2018-07-28T17:16:08Z trocado quit (Ping timeout: 256 seconds) 2018-07-28T17:18:13Z lemoinem is now known as Guest30799 2018-07-28T17:18:13Z Guest30799 quit (Killed (weber.freenode.net (Nickname regained by services))) 2018-07-28T17:18:14Z lemoinem joined #lisp 2018-07-28T17:18:44Z robotoad quit (Quit: robotoad) 2018-07-28T17:24:35Z jfrancis quit (Read error: Connection reset by peer) 2018-07-28T17:28:19Z vlatkoB quit (Remote host closed the connection) 2018-07-28T17:28:28Z trocado joined #lisp 2018-07-28T17:30:44Z Khisanth quit (Ping timeout: 256 seconds) 2018-07-28T17:30:45Z vlatkoB joined #lisp 2018-07-28T17:37:04Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-28T17:41:48Z asarch joined #lisp 2018-07-28T17:42:24Z trocado quit (Ping timeout: 244 seconds) 2018-07-28T17:43:03Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-28T17:44:13Z Khisanth joined #lisp 2018-07-28T17:47:25Z robotoad joined #lisp 2018-07-28T17:47:37Z trocado joined #lisp 2018-07-28T17:54:58Z FreeBirdLjj joined #lisp 2018-07-28T17:56:38Z littlelisper joined #lisp 2018-07-28T17:59:49Z bitch quit (Ping timeout: 260 seconds) 2018-07-28T18:03:16Z trocado quit (Ping timeout: 268 seconds) 2018-07-28T18:04:16Z lnostdal joined #lisp 2018-07-28T18:04:41Z shka1: beach: i have a question regarding x86 instruction set and compilers 2018-07-28T18:04:44Z shka1: namely 2018-07-28T18:04:55Z Kundry_Wag joined #lisp 2018-07-28T18:05:04Z shka1: why compilers produce so many nops in assembly?! 2018-07-28T18:05:17Z bitch joined #lisp 2018-07-28T18:05:20Z kuwze joined #lisp 2018-07-28T18:05:35Z Bike: there are lots of reasons to generate nops. is there some particular example confusing you? 2018-07-28T18:07:40Z gypsydave5 joined #lisp 2018-07-28T18:09:01Z kenster: Hey everybody, I'm streaming some C++, common lisp, and JS programming : https://youtu.be/0eMI1Vpu7ps or https://www.twitch.tv/kingherring 2018-07-28T18:09:14Z shka1: Bike: sadly i don't have anything concrete to show 2018-07-28T18:09:17Z p_l: shka1: many reasons why you might need nops. Some weird alignment issues, leaving space for runtime hot patching, ensuring certain ordering of operations 2018-07-28T18:09:30Z shka1: but i see this all the time in gcc and clang output 2018-07-28T18:09:36Z shka1: sbcl to lesser degree 2018-07-28T18:09:40Z Bike: i mostly remember programming for some machine with branch delays 2018-07-28T18:09:42Z Bike: annoying 2018-07-28T18:09:54Z p_l: shka1: on Alpha, huge NOP sleds were afaik the only way to get exact results in program counter in case of a trap 2018-07-28T18:10:10Z p_l: MIPS and SPARC had branch delay slots, yes 2018-07-28T18:10:11Z shka1: nopnopnopnopnopnop 2018-07-28T18:10:24Z shka1: should be a macro :P 2018-07-28T18:10:41Z shka1: anyway, this is one of the things that bothered me 2018-07-28T18:10:58Z shka1: other is strictly releated to clang vs gcc so it does not belong here 2018-07-28T18:11:14Z shka1: but i was seriously wtfacking at it :P 2018-07-28T18:11:54Z shka1: anyway, is it the same on other architectures? 2018-07-28T18:12:00Z shka1: powerpc for instance? 2018-07-28T18:12:27Z shka1: isn't that design flaw of architecture? 2018-07-28T18:12:38Z p_l: what, branch delay slot? 2018-07-28T18:13:02Z p_l: it was an artifact of simplifying hw design in case of MIPS and SPARC 2018-07-28T18:13:04Z shka1: lack of thereof 2018-07-28T18:13:14Z ebrasca quit (Remote host closed the connection) 2018-07-28T18:13:16Z p_l: you don't want branch delay slots 2018-07-28T18:13:17Z Bike: lack of branch delay slots is an architecture flaw? that's a new one 2018-07-28T18:13:49Z Jesin joined #lisp 2018-07-28T18:14:09Z p_l: their existence happens because of non-interlocked pipelines where another instruction in the pipe will still be executed when a branch was reached 2018-07-28T18:15:52Z shka1: Bike: i am not into the hardware 2018-07-28T18:15:56Z shka1: like at all 2018-07-28T18:16:19Z shka1: i lietrally studied medicine before programming :P 2018-07-28T18:16:59Z shka1: p_l: so it is easier for compiler to nopnop? 2018-07-28T18:17:14Z shka1: even at the cost of innability to write assembly by hand 2018-07-28T18:17:18Z p_l: shka1: no, the hardware itself *requires* a nop 2018-07-28T18:18:14Z p_l: with a branch delay slot involved, you need to either manually add a NOP, or add an operation that you *want* to happen 2018-07-28T18:19:22Z shka1: right 2018-07-28T18:19:33Z shka1: it if confusing though 2018-07-28T18:23:10Z smurfrobot joined #lisp 2018-07-28T18:23:57Z p_l: for example, in SPARC: jmpl %L1; ld [%L1 - 8], %L2; 2018-07-28T18:24:17Z p_l: the instruction *after* jmpl will still be executed, despite the fact that jmpl is unconditional jump 2018-07-28T18:24:26Z p_l: IIRC 2018-07-28T18:24:43Z eminhi quit (Remote host closed the connection) 2018-07-28T18:25:04Z gypsydave5 quit (Remote host closed the connection) 2018-07-28T18:25:30Z shka1: that's interesting 2018-07-28T18:25:56Z p_l: there can be also "load delay slot", where an instruction immediately after a load instruction won't see the results of the load 2018-07-28T18:26:08Z p_l: MIPS I has that 2018-07-28T18:26:17Z p_l: later MIPS don't 2018-07-28T18:26:33Z p_l: so, if you don't have anything to work with, you'd put a nop 2018-07-28T18:27:24Z papachan joined #lisp 2018-07-28T18:27:35Z p_l: example from Wikipedia: lw v0,4(v1) /* Load word from address v1+4 into v0 */; nop /*wasted load delay slot */; jr v0 /* jump to address in v0 */; nop /*wasted branch delay slot */ 2018-07-28T18:27:49Z smurfrobot quit (Ping timeout: 260 seconds) 2018-07-28T18:27:54Z p_l: (that's MIPS I, used among other things in original Play Station) 2018-07-28T18:28:34Z shka1: ok 2018-07-28T18:28:45Z shka1: is it the same in x86? 2018-07-28T18:28:54Z p_l: nop 2018-07-28T18:28:58Z p_l: ;) 2018-07-28T18:29:06Z fikka quit (Ping timeout: 265 seconds) 2018-07-28T18:29:08Z p_l: but there might other microptimizations involved 2018-07-28T18:29:48Z shka1: so x86 has those pesky slots that Bike seems to desipise? 2018-07-28T18:30:30Z p_l: no, but it might have other reasons to optimize like that 2018-07-28T18:30:59Z Bike: that's why i said "some machine" 2018-07-28T18:31:23Z Bike: mips, on further reflection 2018-07-28T18:32:02Z p_l: shka1: on x86 there's often NOP used to maintain code alignment (for jumps etc.) 2018-07-28T18:32:25Z shka1: and that's to keep cache happy? 2018-07-28T18:32:37Z p_l: cache, memory unit, etc. etc. 2018-07-28T18:32:43Z v0|d: \x90\x90\x90 2018-07-28T18:32:53Z shka1: hm, ok 2018-07-28T18:33:01Z Fade: there seems to be a misconfiguration on sbcl.org where the webserver will not resolve www.sbcl.org but sbcl.org works fine. 2018-07-28T18:33:05Z p_l: shka1: try compiling to assembly then compare that with assembly listing 2018-07-28T18:33:44Z shka1: p_l: sbcl will do? 2018-07-28T18:33:50Z Fade: actually, that just brings up the top page. all subpages are throwing a 503 error. 2018-07-28T18:34:11Z p_l: shka1: IIRC SBCL will also generate NOPs for alignment, as it doesn't strive for maximum density 2018-07-28T18:34:17Z v0|d: so what does FOP stands for in SBCL? i guess VOP is virtual op? 2018-07-28T18:34:55Z shka1: p_l: it will, but to somewhat lesser extent then gcc or clang 2018-07-28T18:35:02Z littlelisper quit (Quit: leaving) 2018-07-28T18:35:22Z shka1: even if it does inline everything 2018-07-28T18:36:13Z shka1: i don't know if it is because of inferior code generation of sbcl, or just different set of priorities 2018-07-28T18:36:53Z Bike: nops are deliberately generated, it's not like a bad code generator is just going to have more somehow 2018-07-28T18:37:24Z p_l: clang/gcc might have more optimizations for specific cpus 2018-07-28T18:37:45Z shka1: Bike: this much is obivous :-) 2018-07-28T18:38:17Z shka1: anyway, thanks Bike and p_l for explanation 2018-07-28T18:39:23Z Josh_2 joined #lisp 2018-07-28T18:44:16Z lavaflow joined #lisp 2018-07-28T18:48:51Z smasta joined #lisp 2018-07-28T18:56:14Z fikka joined #lisp 2018-07-28T19:00:56Z fikka quit (Ping timeout: 244 seconds) 2018-07-28T19:04:07Z dddddd joined #lisp 2018-07-28T19:05:26Z fikka joined #lisp 2018-07-28T19:08:49Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-28T19:09:39Z ozzloy quit (Read error: Connection reset by peer) 2018-07-28T19:09:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-28T19:10:03Z karswell_ joined #lisp 2018-07-28T19:10:57Z sjl_ quit (Ping timeout: 248 seconds) 2018-07-28T19:11:14Z caltelt quit (Ping timeout: 276 seconds) 2018-07-28T19:11:14Z shka1 quit (Ping timeout: 276 seconds) 2018-07-28T19:11:36Z vultyre joined #lisp 2018-07-28T19:12:52Z sjl quit (Ping timeout: 256 seconds) 2018-07-28T19:14:09Z smasta quit (Ping timeout: 248 seconds) 2018-07-28T19:14:49Z vultyre quit (Client Quit) 2018-07-28T19:20:54Z iskander quit (Ping timeout: 260 seconds) 2018-07-28T19:22:17Z jfrancis joined #lisp 2018-07-28T19:26:01Z Autolycus quit 2018-07-28T19:26:40Z iskander joined #lisp 2018-07-28T19:27:51Z sjl_ joined #lisp 2018-07-28T19:27:51Z fikka joined #lisp 2018-07-28T19:29:14Z caltelt joined #lisp 2018-07-28T19:29:49Z varjag joined #lisp 2018-07-28T19:30:07Z Fare joined #lisp 2018-07-28T19:31:34Z xrash quit (Ping timeout: 264 seconds) 2018-07-28T19:32:00Z jinkies joined #lisp 2018-07-28T19:32:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-28T19:35:55Z xrash joined #lisp 2018-07-28T19:39:14Z EvW joined #lisp 2018-07-28T19:40:06Z puchacz joined #lisp 2018-07-28T19:40:38Z caltelt quit (Ping timeout: 256 seconds) 2018-07-28T19:43:27Z Kundry_Wag quit (Remote host closed the connection) 2018-07-28T19:44:00Z Kundry_Wag joined #lisp 2018-07-28T19:48:05Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-28T19:49:42Z pierpal quit (Quit: Poof) 2018-07-28T19:50:01Z pierpal joined #lisp 2018-07-28T19:52:01Z caltelt joined #lisp 2018-07-28T19:53:38Z iskander quit (Ping timeout: 244 seconds) 2018-07-28T19:55:35Z phoe: I'm looking for a general-purpose library for declaring flows of tasks that are meant to be done. Example: https://cdn.discordapp.com/attachments/297478350145060875/472843556151885844/Zrzut_ekranu_z_2018-07-28_21-11-24.png 2018-07-28T19:55:39Z phoe: Tasks B and C can't start until A is finished. Task D can't start until B and C are finished. Once task D is finished, it returns a list of values - for each such value, an individual task E is started. 2018-07-28T19:56:35Z sjl joined #lisp 2018-07-28T19:57:41Z angavrilov quit (Remote host closed the connection) 2018-07-28T20:00:08Z iskander joined #lisp 2018-07-28T20:02:56Z Fare quit (Ping timeout: 244 seconds) 2018-07-28T20:05:53Z ebrasca joined #lisp 2018-07-28T20:07:48Z Kundry_Wag joined #lisp 2018-07-28T20:08:16Z test1600 joined #lisp 2018-07-28T20:08:33Z test1600 quit (Client Quit) 2018-07-28T20:09:35Z test1600 joined #lisp 2018-07-28T20:13:29Z Kundry_Wag quit (Remote host closed the connection) 2018-07-28T20:14:05Z Kundry_Wag joined #lisp 2018-07-28T20:18:49Z Kundry_Wag quit (Ping timeout: 265 seconds) 2018-07-28T20:19:59Z pierpa joined #lisp 2018-07-28T20:20:51Z papachan quit (Quit: Leaving) 2018-07-28T20:27:26Z pjb: phoe: asdf 2018-07-28T20:28:25Z pjb: phoe: since you can define your own type of files 2018-07-28T20:28:37Z pjb: and operations with asdf, I'd say it's general-purpose enough. 2018-07-28T20:29:34Z skidd0 joined #lisp 2018-07-28T20:29:40Z Fare joined #lisp 2018-07-28T20:35:09Z skidd0: Has anyone here used snooze and made a route on the root path? e.g. localhost/ vs localhost/some-route 2018-07-28T20:43:33Z puchacz quit (Quit: Konversation terminated!) 2018-07-28T20:45:58Z Fare quit (Ping timeout: 264 seconds) 2018-07-28T20:47:52Z ebrasca quit (Read error: Connection reset by peer) 2018-07-28T20:48:03Z Kundry_Wag joined #lisp 2018-07-28T20:48:04Z ebrasca joined #lisp 2018-07-28T20:48:43Z fikka joined #lisp 2018-07-28T20:50:40Z loli quit (Quit: WeeChat 2.2) 2018-07-28T20:51:57Z makomo quit (Quit: WeeChat 2.0.1) 2018-07-28T20:52:05Z loli joined #lisp 2018-07-28T20:59:35Z potatonomicon joined #lisp 2018-07-28T21:00:28Z dtornabene joined #lisp 2018-07-28T21:02:10Z test1600 quit (Ping timeout: 264 seconds) 2018-07-28T21:02:40Z k-hos quit (Ping timeout: 256 seconds) 2018-07-28T21:05:13Z sjl quit (Quit: WeeChat 2.2-dev) 2018-07-28T21:08:05Z caltelt quit (Ping timeout: 240 seconds) 2018-07-28T21:09:38Z vlatkoB quit (Remote host closed the connection) 2018-07-28T21:10:56Z ensyde joined #lisp 2018-07-28T21:11:00Z ensyde quit (Killed (Sigyn (Spam is off topic on freenode.))) 2018-07-28T21:12:58Z BitPuffin quit (Remote host closed the connection) 2018-07-28T21:13:57Z varjag quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2018-07-28T21:16:05Z argoneus quit (Quit: No Ping reply in 180 seconds.) 2018-07-28T21:16:51Z reu quit (Ping timeout: 240 seconds) 2018-07-28T21:18:05Z lumm quit (Quit: lumm) 2018-07-28T21:18:30Z lumm joined #lisp 2018-07-28T21:19:21Z caltelt joined #lisp 2018-07-28T21:20:05Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-28T21:21:59Z argoneus joined #lisp 2018-07-28T21:25:12Z nickenchuggets joined #lisp 2018-07-28T21:25:12Z nickenchuggets quit (Changing host) 2018-07-28T21:25:12Z nickenchuggets joined #lisp 2018-07-28T21:29:52Z aeth quit (Read error: Connection reset by peer) 2018-07-28T21:30:29Z aeth joined #lisp 2018-07-28T21:33:24Z lumm quit (Ping timeout: 256 seconds) 2018-07-28T21:40:24Z kirkwood joined #lisp 2018-07-28T21:43:35Z vaporatorius__ quit (Ping timeout: 240 seconds) 2018-07-28T21:45:24Z DataLinkDroid quit (Ping timeout: 240 seconds) 2018-07-28T21:46:40Z kajo joined #lisp 2018-07-28T21:52:04Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2018-07-28T21:59:23Z smurfrobot joined #lisp 2018-07-28T22:04:14Z smurfrobot quit (Ping timeout: 260 seconds) 2018-07-28T22:09:10Z trocado joined #lisp 2018-07-28T22:09:32Z pagnol quit (Ping timeout: 256 seconds) 2018-07-28T22:13:23Z krwq quit (Remote host closed the connection) 2018-07-28T22:15:49Z isawan joined #lisp 2018-07-28T22:16:04Z isawan quit (Client Quit) 2018-07-28T22:20:23Z dale_ joined #lisp 2018-07-28T22:24:36Z pagnol joined #lisp 2018-07-28T22:26:53Z reu joined #lisp 2018-07-28T22:28:17Z trocado quit (Ping timeout: 248 seconds) 2018-07-28T22:29:28Z trocado joined #lisp 2018-07-28T22:31:25Z mejja joined #lisp 2018-07-28T22:32:52Z mejja quit (Client Quit) 2018-07-28T22:34:02Z dale_ quit (Remote host closed the connection) 2018-07-28T22:34:18Z random-nick quit (Read error: Connection reset by peer) 2018-07-28T22:35:09Z pagnol quit (Ping timeout: 260 seconds) 2018-07-28T22:40:31Z lemo quit (Ping timeout: 244 seconds) 2018-07-28T22:44:00Z meep joined #lisp 2018-07-28T22:48:12Z gabiruh quit (Ping timeout: 256 seconds) 2018-07-28T22:50:02Z bjorkintosh joined #lisp 2018-07-28T22:51:07Z meep quit (Quit: Mutter: www.mutterirc.com) 2018-07-28T22:51:56Z meep joined #lisp 2018-07-28T22:52:16Z Trystam joined #lisp 2018-07-28T22:52:49Z skidd0: also for any parenscript users, at what point (if it exists) do you stick to JS over using parenscript? 2018-07-28T22:52:57Z skidd0: is there a complexity threshold? 2018-07-28T22:54:15Z skidd0: another way to frame that question: when do you opt for JS over Parenscript? 2018-07-28T22:54:22Z Tristam quit (Ping timeout: 264 seconds) 2018-07-28T22:54:38Z Trystam is now known as Tristam 2018-07-28T22:56:36Z meep quit (Client Quit) 2018-07-28T22:59:51Z loli quit (Quit: WeeChat 2.2) 2018-07-28T23:01:14Z gabiruh joined #lisp 2018-07-28T23:03:19Z meep joined #lisp 2018-07-28T23:05:27Z Tristam quit (Ping timeout: 240 seconds) 2018-07-28T23:05:46Z loli joined #lisp 2018-07-28T23:06:05Z robotoad quit (Ping timeout: 240 seconds) 2018-07-28T23:06:08Z meep quit (Client Quit) 2018-07-28T23:06:48Z WSPR0 joined #lisp 2018-07-28T23:07:05Z kirkwood quit (Remote host closed the connection) 2018-07-28T23:09:38Z WSPR0 quit (Remote host closed the connection) 2018-07-28T23:17:45Z Kundry_Wag joined #lisp 2018-07-28T23:18:53Z Fade quit (Ping timeout: 276 seconds) 2018-07-28T23:18:55Z lemo joined #lisp 2018-07-28T23:24:50Z Fade joined #lisp 2018-07-28T23:28:19Z smasta joined #lisp 2018-07-28T23:30:08Z dale_ joined #lisp 2018-07-28T23:34:32Z dale_ quit (Ping timeout: 256 seconds) 2018-07-28T23:35:50Z nullniverse joined #lisp 2018-07-28T23:38:49Z preisform joined #lisp 2018-07-28T23:40:08Z preisform:  2018-07-28T23:40:13Z preisform quit (Client Quit) 2018-07-28T23:42:57Z smasta quit (Ping timeout: 264 seconds) 2018-07-28T23:45:50Z dale_ joined #lisp 2018-07-28T23:45:53Z preisfor1 joined #lisp 2018-07-28T23:48:30Z preisfor1 quit (Quit: leaving) 2018-07-28T23:49:57Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-28T23:50:32Z dale_ quit (Ping timeout: 256 seconds) 2018-07-28T23:55:55Z Leviathan joined #lisp 2018-07-28T23:57:17Z Leviathan quit (Client Quit) 2018-07-29T00:00:01Z kozy_ quit (Read error: Connection reset by peer) 2018-07-29T00:01:33Z trocado quit (Ping timeout: 268 seconds) 2018-07-29T00:03:06Z v0|d: does universal-time fit into a fixnum, or should I use integer? 2018-07-29T00:05:37Z meep joined #lisp 2018-07-29T00:06:32Z v0|d: or maybe unsigned-byte of ? 2018-07-29T00:10:49Z fikka quit (Ping timeout: 260 seconds) 2018-07-29T00:11:37Z dtornabene quit (Read error: Connection reset by peer) 2018-07-29T00:12:54Z pjb: v0|d: (typep (get-universal-time) 'fixnum) #| --> t |# 2018-07-29T00:13:20Z pjb: v0|d: obviously, it depends on the date, and on the implementation/platform! 2018-07-29T00:13:48Z v0|d: indeed. 2018-07-29T00:13:53Z pjb: v0|d: universal time n. time, represented as a non-negative integer number of seconds. Absolute universal time is measured as an offset from the beginning of the year 1900 (ignoring leap seconds). See Section 25.1.4.2 (Universal Time). 2018-07-29T00:14:09Z pjb: therefore you should use integer (or indeed, unsigned-byte). 2018-07-29T00:14:29Z v0|d: is there way to learn how many bits fixnum has on an implementation? 2018-07-29T00:14:45Z pjb: (integer-length most-positive-fixnum) #| --> 60 |# 2018-07-29T00:14:46Z orivej quit (Ping timeout: 256 seconds) 2018-07-29T00:14:46Z v0|d: cmucl manual says fixnum is (signed-byte 30) 2018-07-29T00:14:54Z v0|d: ah ok 2018-07-29T00:15:19Z v0|d: interesting, what is integer-length? 2018-07-29T00:15:24Z v0|d: log base 10? 2018-07-29T00:15:26Z pjb: clhs integer-length 2018-07-29T00:15:27Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_intege.htm 2018-07-29T00:15:34Z v0|d: let me see. 2018-07-29T00:15:46Z v0|d: ah log2. 2018-07-29T00:15:53Z pjb: Why do you lose your time asking here, when you have all the answers in your brains and in clhs? 2018-07-29T00:16:35Z v0|d: I get confused all the time, self defeating behaviour is permanent i guess:p 2018-07-29T00:17:03Z v0|d: pjb: would you mind fixing sb-profile in ecl some time in future? 2018-07-29T00:17:06Z v0|d: :) 2018-07-29T00:17:24Z pjb: I'm busy, but for enough bitcoins, I may. 2018-07-29T00:17:44Z v0|d: nice. 2018-07-29T00:19:37Z kozy joined #lisp 2018-07-29T00:21:30Z v0|d: (integer-length (get-universal-time)) => 32, so if I want my programs to fail next year, um.. (integer-length (* 365 24 60 60)) => 25, (- 32 25) => 7, 128 yrs to fail if I set the type to 33 unsigned. 2018-07-29T00:22:05Z v0|d: pjb: thnx btw. 2018-07-29T00:27:35Z Josh_2 quit (Ping timeout: 240 seconds) 2018-07-29T00:29:09Z Xach quit (Ping timeout: 264 seconds) 2018-07-29T00:29:27Z meep quit (Ping timeout: 240 seconds) 2018-07-29T00:30:25Z Xach joined #lisp 2018-07-29T00:34:16Z lemo quit (Changing host) 2018-07-29T00:34:16Z lemo joined #lisp 2018-07-29T00:41:34Z EvW quit (Ping timeout: 260 seconds) 2018-07-29T00:43:51Z dale joined #lisp 2018-07-29T00:44:21Z fikka joined #lisp 2018-07-29T00:46:05Z pjb: v0|d: you are crazy. You're giving yourself more work just to have it fail! 2018-07-29T00:46:09Z Fare joined #lisp 2018-07-29T00:46:29Z pjb: Forget about types! CL deals with them just as well as with memory! 2018-07-29T00:48:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-29T00:51:59Z sabrac joined #lisp 2018-07-29T00:53:19Z lemo quit (Quit: lemo) 2018-07-29T00:59:40Z Fare quit (Ping timeout: 256 seconds) 2018-07-29T01:00:40Z skidd0 quit (Quit: WeeChat 2.1) 2018-07-29T01:01:24Z LdBeth: morning 2018-07-29T01:02:18Z aeth: pjb: If I wanted to forget about types I'd program in JavaScript. 2018-07-29T01:02:42Z aeth: Types in CL are great if you want code to fail at a certain spot and not at some random spot way later 2018-07-29T01:03:44Z v0|d: they are no asserts, no? 2018-07-29T01:05:12Z aeth: You can assert, you can check-type, or you could put the type in some place where in some implementations it might be checked, like :type in struct slots (most), :type in standard-object slots (only CCL at default debug levels?), specialized arrays, function type declarations, etc. 2018-07-29T01:05:13Z TheSilentLink12 joined #lisp 2018-07-29T01:05:13Z TheSilentLink12: Interested in reasonably priced GLOBAL IRC ADVERTISING? Contact me on twitter https://twitter.com/nenolod or linkedin https://www.linkedin.com/in/nenolod 2018-07-29T01:05:13Z TheSilentLink12 quit (Killed (Sigyn (Spam is off topic on freenode.))) 2018-07-29T01:05:42Z White_Flame: implicit assert-style checking of data types is implementation specific, and likely based on safety settings. 2018-07-29T01:06:08Z v0|d: (declare (type (or) nenolod)) 2018-07-29T01:06:32Z aeth: Oh, I forgot THE 2018-07-29T01:06:43Z White_Flame: just get your code working first for the broad/naive cases 2018-07-29T01:06:45Z aeth: So many places where types (may) get used 2018-07-29T01:07:53Z v0|d: I still don't know how string are typed in CL. I get confused all the time. simple-array vector, array, base-string etc. 2018-07-29T01:07:59Z svillemot quit (Ping timeout: 276 seconds) 2018-07-29T01:09:18Z krwq joined #lisp 2018-07-29T01:09:44Z aeth: Strings are arrays of characters. The other types are just alternate names that may or may not be used in place of the array of character names. 2018-07-29T01:09:55Z aeth: I'm guessing base-string is a string of base-chars 2018-07-29T01:10:02Z White_Flame: the supertypes list in CLHS for string & base string helps 2018-07-29T01:10:07Z krwq quit (Remote host closed the connection) 2018-07-29T01:10:08Z White_Flame: and yeah to your guess 2018-07-29T01:10:13Z dale quit (Remote host closed the connection) 2018-07-29T01:10:33Z v0|d: why vector & array? 2018-07-29T01:10:40Z aeth: I'm guessing in most useful modern implementations character includes #\é and the rest of unicode and base-char is ascii so would include #\e but not #\é 2018-07-29T01:11:34Z aeth: It would be nice to have the concept of character encoding in the language. Yet another thing that no update to the standard causes. 2018-07-29T01:12:15Z v0|d: thats why I wanted to have specializers to discriminate strings and unsigned-byte arrays but failed. 2018-07-29T01:12:19Z smasta joined #lisp 2018-07-29T01:12:38Z aeth: v0|d: If you used a list instead of 1D arrays, you would (1) have to have the concept of typed CONSes that can be verified in O(1) time and (2) would basically have C-strings (nil-terminated instead of NUL-terminated, though) with worse performance and memory 2018-07-29T01:13:08Z aeth: The options are 1D array, list, or its own sequence data type 2018-07-29T01:13:51Z v0|d: aeth: when should one use vector, when to use array? 2018-07-29T01:14:03Z Fare joined #lisp 2018-07-29T01:15:13Z v0|d: there are not ctors for vector ie make-vector obviously. 2018-07-29T01:15:28Z v0|d: in the type lattice we have vector. 2018-07-29T01:15:51Z aeth: A vector is a 1D array. Confusingly, most implementations seem to present 1D arrays as arrays (not vectors) except when simple-vectors (non-specialized, 1D, not displaced, no fill pointer, not adjustable). 2018-07-29T01:16:38Z v0|d: ah OK isee now. 2018-07-29T01:16:40Z aeth: (simple-array 'single-float (3)) if specialized for single-floats vs. (simple-vector 3) if it can hold T 2018-07-29T01:16:50Z aeth: Would be a bit less confusing if you could say (simple-vector 'single-float 3) 2018-07-29T01:17:03Z sabrac quit (Quit: Konversation terminated!) 2018-07-29T01:17:08Z aeth: oops (simple-array single-float (3)) 2018-07-29T01:17:21Z aeth: It's a bit confusing when you quote and don't quote types 2018-07-29T01:18:34Z v0|d: (type-of "ABC") => (simple-array character (3)) 2018-07-29T01:18:38Z v0|d: not simple-vector 2018-07-29T01:19:03Z sabrac joined #lisp 2018-07-29T01:19:20Z White_Flame: simple-vector is always specialized to type T (very unfortunately) 2018-07-29T01:19:28Z White_Flame: strings are specialized to a character type 2018-07-29T01:19:34Z v0|d: ah. 2018-07-29T01:20:09Z v0|d: so there are no other vectors other than simple-vector? 2018-07-29T01:20:23Z White_Flame: vector 2018-07-29T01:20:32Z pioneer42 left #lisp 2018-07-29T01:20:46Z v0|d: can we have a type t adjustable vector? 2018-07-29T01:20:56Z aeth: v0|d: Sorry if I was unclear, I meant to say what White_Flame said. That it would have been less confusing if simple-vector wasn't always specialized to type T 2018-07-29T01:21:12Z White_Flame: v0|d: sure 2018-07-29T01:21:25Z White_Flame: arrays are multidimensional, with all sorts of options available 2018-07-29T01:21:36Z White_Flame: vector means 1-d, simple-* means no fancy options 2018-07-29T01:21:39Z aeth: v0|d: you can have whatever you want in arrays (even 0D arrays which are, unfortunately, not optimized in SBCL because no one uses them... although they could have uses as a way to manually control boxing of double-floats/bignums/etc.) 2018-07-29T01:22:24Z v0|d: wonderful, thnx 4 the info. 2018-07-29T01:22:38Z aeth: The only catches are that (1) the syntax is bad (well, not really bad, it just has to support a lot of things), to the point where you probably should be defining your own trivial constructor (ideally inline) for any array you use in your code 2018-07-29T01:22:58Z aeth: and (2) the implementation has to support the element-type you want to use and in the standard they are only required to support bit and character 2018-07-29T01:23:05Z aeth: (I guess base-char, too) 2018-07-29T01:23:25Z SoraFirestorm joined #lisp 2018-07-29T01:23:31Z SoraFirestorm: hello friends 2018-07-29T01:24:05Z v0|d: is there a way to distinguish a string from (array (unsigned-byte 8)) in a method specializer? 2018-07-29T01:24:05Z aeth: You can pretty reasonably assume (unsigned-byte 8), and probably can also expect to see signed/unsigned bytes of size 8, 16, 32, and 64 as well as fixnum and a bunch of random integer sizes (which are probably the 32 bit fixnum size for a given implementation as well as just unsigned fixnums, etc.) 2018-07-29T01:24:16Z aeth: You can also assume single-float and double-float. Only CLISP doesn't have those. 2018-07-29T01:24:21Z aeth: (Unless you want to be ultra-portable.) 2018-07-29T01:24:29Z sabrac: SoraFirestorm: Hello 2018-07-29T01:24:33Z aeth: Oh, and if they're not supported they become T arrays, you don't get an error. 2018-07-29T01:24:46Z SoraFirestorm: So someway or another, I managed to bork Quicklisp 2018-07-29T01:24:58Z SoraFirestorm: How can I reinstall but not wipe out the installed package information? 2018-07-29T01:25:29Z aeth: v0|d: Characters aren't integers in Common Lisp. You convert to/from integers with char-code and code-char. Portability libraries are needed for things like decoding ub8-as-utf8 into characters. 2018-07-29T01:26:04Z v0|d: aeth: octets-to-string and friends. 2018-07-29T01:26:09Z aeth: right 2018-07-29T01:26:25Z v0|d: thats why I need that kindof specializer. 2018-07-29T01:26:44Z guicho joined #lisp 2018-07-29T01:27:15Z aeth: What do you mean? 2018-07-29T01:27:22Z sabrac: SoraFirestorm: What installed package information are you trying to retain? And how many packages? 2018-07-29T01:27:55Z SoraFirestorm: I just want it to remember all of the packages I have installed 2018-07-29T01:28:08Z v0|d: aeth: err, i mean a clos version of (defun fun (a) (typecase a ((array (ub-8)) ..) ((vector base-char) ..))) 2018-07-29T01:28:19Z SoraFirestorm: and it look like only 4-5 or so 2018-07-29T01:28:44Z SoraFirestorm: Although I can't say for sure how many are truly 'installed' 2018-07-29T01:29:03Z aeth: v0|d: For arrays/numbers, you could always use this library to make defmethod-like functions that dispatch on types. https://github.com/markcox80/specialization-store/ 2018-07-29T01:29:11Z SoraFirestorm: I managed to accidentally delete a few things a couple weeks ago, but I never learned exactly *what* 2018-07-29T01:29:22Z sabrac: SoraFirestorm: Windows or Linux or OSX? 2018-07-29T01:29:38Z SoraFirestorm: Fedora Linux 2018-07-29T01:32:45Z v0|d: aeth: thnx, didn't know that 2018-07-29T01:32:50Z v0|d: seems promising. 2018-07-29T01:35:42Z sabrac: SoraFirestom: sent you a pm 2018-07-29T01:43:30Z Kundry_Wag joined #lisp 2018-07-29T01:48:12Z dale joined #lisp 2018-07-29T01:49:49Z SoraFirestorm quit (Quit: leaving) 2018-07-29T01:52:00Z dale quit (Client Quit) 2018-07-29T01:52:16Z dale joined #lisp 2018-07-29T01:52:55Z dale is now known as meepdeew 2018-07-29T01:54:31Z Kundry_Wag quit (Remote host closed the connection) 2018-07-29T01:54:45Z Kundry_Wag joined #lisp 2018-07-29T02:01:47Z karlosz quit (Quit: karlosz) 2018-07-29T02:06:50Z yaewa joined #lisp 2018-07-29T02:08:39Z moei quit (Ping timeout: 260 seconds) 2018-07-29T02:10:25Z fikka joined #lisp 2018-07-29T02:13:35Z v0|d quit (Read error: Connection reset by peer) 2018-07-29T02:13:50Z karlosz joined #lisp 2018-07-29T02:14:56Z fikka quit (Ping timeout: 244 seconds) 2018-07-29T02:27:34Z nicht joined #lisp 2018-07-29T02:28:50Z Kundry_Wag quit (Remote host closed the connection) 2018-07-29T02:29:26Z Kundry_Wag joined #lisp 2018-07-29T02:32:28Z Kundry_Wag quit (Remote host closed the connection) 2018-07-29T02:32:42Z Kundry_Wag joined #lisp 2018-07-29T02:32:55Z hph^ quit (Ping timeout: 256 seconds) 2018-07-29T02:35:26Z nicht quit (Ping timeout: 256 seconds) 2018-07-29T02:35:41Z Kundry_Wag quit (Remote host closed the connection) 2018-07-29T02:39:19Z nicht joined #lisp 2018-07-29T02:45:34Z lemo joined #lisp 2018-07-29T02:46:56Z hph^ joined #lisp 2018-07-29T03:03:29Z nicht quit (Ping timeout: 260 seconds) 2018-07-29T03:04:32Z kenster: https://github.com/orthecreedence/wookie/issues/83 2018-07-29T03:04:33Z kenster: ;-; 2018-07-29T03:06:53Z meepdeew: Hi all, pretty new to IRC and CL so hope I'm doing this right. I am confused as to why the following is true: 2018-07-29T03:06:53Z meepdeew: (equal (list (first '(dancing bear))) (list 'dancing)). 2018-07-29T03:06:53Z meepdeew: Since 2018-07-29T03:06:55Z meepdeew: (first '(dancing bear)) 2018-07-29T03:06:57Z meepdeew: returns => DANCING, shouldn't that make the initial form equal to 2018-07-29T03:06:59Z meepdeew: (equal (list DANCING) (list 'DANCING)) 2018-07-29T03:07:01Z meepdeew: which is not true. 2018-07-29T03:07:03Z meepdeew: I hope that makes sense as a question. I'm apparently not entirely clear on the distinction between reader and evaluator and whatnot. Also, apologies for the lack of formatting in the code snippets. 2018-07-29T03:11:10Z karlosz quit (Quit: karlosz) 2018-07-29T03:12:43Z smasta quit (Ping timeout: 268 seconds) 2018-07-29T03:12:52Z FareTower joined #lisp 2018-07-29T03:14:27Z Fare quit (Ping timeout: 240 seconds) 2018-07-29T03:14:46Z smasta joined #lisp 2018-07-29T03:15:18Z nullniverse quit (Remote host closed the connection) 2018-07-29T03:15:24Z fikka joined #lisp 2018-07-29T03:15:38Z nullniverse joined #lisp 2018-07-29T03:15:48Z nicht joined #lisp 2018-07-29T03:20:12Z fikka quit (Ping timeout: 256 seconds) 2018-07-29T03:20:39Z pierpa: try evaluating (list (first '(dancing bear))) and then (list 'dancing). what do you get in the cases? 2018-07-29T03:20:46Z nicht quit (Excess Flood) 2018-07-29T03:20:55Z pierpa: *in the two cases 2018-07-29T03:21:06Z nicht joined #lisp 2018-07-29T03:25:51Z fikka joined #lisp 2018-07-29T03:29:09Z FareTower quit (Ping timeout: 264 seconds) 2018-07-29T03:30:22Z fikka quit (Ping timeout: 244 seconds) 2018-07-29T03:31:48Z LdBeth: you get error for eval (list DANCING) 2018-07-29T03:32:27Z LdBeth: error: DANCING is unbound 2018-07-29T03:33:06Z lemo quit (Read error: Connection reset by peer) 2018-07-29T03:33:18Z lemo joined #lisp 2018-07-29T03:36:03Z pierpa quit (Quit: Page closed) 2018-07-29T03:37:20Z yaewa quit (Quit: Leaving...) 2018-07-29T03:37:41Z kenster: oh wait 2018-07-29T03:37:51Z kenster: I might be an idiot 2018-07-29T03:37:54Z kenster: I need to use pre-route 2018-07-29T03:41:03Z moei joined #lisp 2018-07-29T03:45:51Z fikka joined #lisp 2018-07-29T03:46:46Z pagnol joined #lisp 2018-07-29T03:50:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-29T03:51:00Z renzhi quit (Quit: WeeChat 2.1) 2018-07-29T03:51:30Z mathrick quit (Ping timeout: 260 seconds) 2018-07-29T03:56:20Z fikka joined #lisp 2018-07-29T03:56:30Z gigetoo quit (Ping timeout: 268 seconds) 2018-07-29T03:57:27Z FreeBirdLjj joined #lisp 2018-07-29T04:00:51Z fikka quit (Ping timeout: 244 seconds) 2018-07-29T04:04:09Z mathrick joined #lisp 2018-07-29T04:06:15Z pagnol quit (Quit: Ex-Chat) 2018-07-29T04:09:58Z skapata joined #lisp 2018-07-29T04:12:51Z kenster: https://github.com/orthecreedence/wookie/issues/83#issuecomment-408650610 2018-07-29T04:16:26Z gigetoo joined #lisp 2018-07-29T04:16:43Z fikka joined #lisp 2018-07-29T04:21:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-29T04:24:29Z eminhi joined #lisp 2018-07-29T04:27:11Z fikka joined #lisp 2018-07-29T04:29:43Z dddddd quit (Remote host closed the connection) 2018-07-29T04:32:10Z fikka quit (Ping timeout: 256 seconds) 2018-07-29T04:33:34Z orivej joined #lisp 2018-07-29T04:35:07Z beach: Good morning everyone! 2018-07-29T04:36:34Z beach: meepdeew: You need to know the evaluation rules of Common Lisp to understand it as pierpa pointed out. 2018-07-29T04:37:15Z fikka joined #lisp 2018-07-29T04:37:55Z esrarkesh: beach: is there a definitive resource where one can learn the evaluation rules of Common Lisp? 2018-07-29T04:38:11Z beach: Sure, any book I guess. 2018-07-29T04:38:25Z beach: Otherwise it is fairly simple and it is listed in the Common Lisp HyperSpec. 2018-07-29T04:38:42Z beach: clhs 3.1.2.1 2018-07-29T04:38:42Z specbot: Form Evaluation: http://www.lispworks.com/reference/HyperSpec/Body/03_aba.htm 2018-07-29T04:39:05Z beach: meepdeew: The quote character is a reader macro that turns ' into (quote ) and QUOTE is a special operator that when given as an argument, returns unevaluated. 2018-07-29T04:40:07Z beach: meepdeew: So when you evaluate (equal (list (first '(dancing bear))) (list 'dancing)), the evaluator sees EQUAL and knows it is a function. The rule for evaluating function forms is to first evaluate the arguments and then apply the function. 2018-07-29T04:40:41Z beach: So it evaluates (list (first '(dancing bear))) and (list 'dancing) recursively. 2018-07-29T04:42:09Z fikka quit (Ping timeout: 248 seconds) 2018-07-29T04:42:47Z beach: Now LIST is a function as well, so in (list (first '(dancing bear))), the argument (first '(dancing bear)) is evaluated. Again FIRST is a function, so the argument '(dancing bear) or rather (quote (dancing bear)) is evaluated. QUOTE is a special operator so (dancing bear) [a list of two elements] is returned. FIRST takes that list and returns the first element which is the symbol DANCING. 2018-07-29T04:43:35Z beach: Now, LIST has evaluated its arguments, so LIST is called with the symbol DANCING as its argument, so the list (DANCING) is returned. 2018-07-29T04:45:09Z didi joined #lisp 2018-07-29T04:45:10Z beach: Next, (list 'dancing) is evaluated. LIST is a function so the form 'dancing or rather (quote dancing) is evaluated. QUOTE is a special operator so it returns the symbol DANCING. Now LIST is applied to a single argument which is the symbol DANCING, so the list (DANCING) is returned. 2018-07-29T04:45:35Z didi: How can I compare two class objects for equality? 2018-07-29T04:45:38Z beach: Finally, EQUAL is called with the two arguments (DANCING) and (DANCING). Equal compares the two and returns true. 2018-07-29T04:46:03Z beach: didi: http://www.nhplace.com/kent/PS/EQUAL.html 2018-07-29T04:46:11Z didi: beach: Thank you. 2018-07-29T04:46:40Z beach: He explains why what you want to do does not make sense as a general operation, so you have to implement it yourself. 2018-07-29T04:47:15Z didi: Hum. I still want to compare (class-of foo) against (class-of bar). 2018-07-29T04:47:16Z beach: meepdeew: Is that clear? 2018-07-29T04:47:31Z beach: didi: Those two can be compared using EQ. 2018-07-29T04:47:40Z didi: beach: Ah, nice. Thank you. 2018-07-29T04:48:26Z beach: esrarkesh: I just summarized the evaluation rules. There were no macros in the example though. 2018-07-29T04:49:24Z esrarkesh: beach: thank you 2018-07-29T04:49:27Z orivej quit (Ping timeout: 240 seconds) 2018-07-29T04:50:15Z beach: meepdeew: When you try to evaluate the form (list dancing) it goes like this: The operator LIST is a function, so the arguments are first evaluated. The argument is the symbol DANCING. The evaluation rule for a symbol is to consider to be a variable. Therefor the evaluator tries to look up the value of the variable DANCING, which fails. 2018-07-29T04:52:54Z edgar-rft quit (Quit: Leaving) 2018-07-29T04:56:46Z SaganMan quit (Ping timeout: 264 seconds) 2018-07-29T04:57:20Z fikka joined #lisp 2018-07-29T04:59:24Z eminhi quit (Ping timeout: 268 seconds) 2018-07-29T05:00:58Z asarch: How many parents are there? STANDARD-CLASS, STANDARD-OBJECT, CONDITION, and...? 2018-07-29T05:01:15Z nowhere_man quit (Ping timeout: 268 seconds) 2018-07-29T05:01:45Z didi left #lisp 2018-07-29T05:02:23Z beach: Those are not parents. They are class metaobjects. Here are the ones defined by the MOP: http://metamodular.com/CLOS-MOP/graph.png 2018-07-29T05:02:29Z fikka quit (Ping timeout: 260 seconds) 2018-07-29T05:05:00Z asarch: Where is CONDITION? 2018-07-29T05:05:12Z beach: It is defined by the Common Lisp HyperSpec but not by the MOP. 2018-07-29T05:05:23Z beach: I just gave you the ones defined by the MOP. 2018-07-29T05:05:46Z LdBeth: (class-precedence-list (find-class 'condition)) 2018-07-29T05:06:08Z LdBeth: which gives (# # 2018-07-29T05:06:08Z LdBeth: #) 2018-07-29T05:06:49Z beach: asarch: You also have structure-class and structure-object in the Common Lisp HyperSpec. 2018-07-29T05:06:56Z asarch: undefined function: CLASS-PRECEDENCE-LIST 2018-07-29T05:07:17Z asarch: From SBCL 1.4.5.openbsd 2018-07-29T05:07:30Z beach: (sb-mop:class-precedence-list ...) maybe? 2018-07-29T05:07:45Z fikka joined #lisp 2018-07-29T05:07:52Z LdBeth: it's mop 2018-07-29T05:07:58Z asarch: However, in clisp (# # #) 2018-07-29T05:08:19Z fikka quit (Read error: Connection reset by peer) 2018-07-29T05:09:37Z asarch: "Package MOP does not exist." 2018-07-29T05:09:52Z beach: asarch: You need to learn to read what we say. 2018-07-29T05:09:54Z asarch: It worked with (sb-mop:... ) 2018-07-29T05:10:10Z asarch: I'm on the way 2018-07-29T05:10:34Z nicht quit (Ping timeout: 256 seconds) 2018-07-29T05:10:44Z beach: "It's MOP" means that it is defined by the Meta-Object Protocol. The package used for that differs in each implementation. 2018-07-29T05:11:07Z asarch: I remember while I was reading Sonja E. Keeney's book about CLOS that she mentioned the name of another "super parent class" 2018-07-29T05:11:09Z beach: asarch: That's why we have the CLOSER-MOP system, so that you can be independent of your implementation. 2018-07-29T05:11:16Z aindilis quit (Ping timeout: 256 seconds) 2018-07-29T05:11:37Z asarch: I see 2018-07-29T05:12:18Z esrarkesh: j #lispweb 2018-07-29T05:12:20Z esrarkesh: oops 2018-07-29T05:13:55Z SaganMan joined #lisp 2018-07-29T05:14:58Z Jesin quit (Quit: Leaving) 2018-07-29T05:15:19Z beach: asarch: If you give me the page reference, I'll look it up. 2018-07-29T05:15:41Z asarch: I don't have my "book" at hand 2018-07-29T05:15:50Z asarch: I need to check it with calm 2018-07-29T05:16:04Z skapata quit (Remote host closed the connection) 2018-07-29T05:16:07Z asarch: I can't find the name of that class in my notes 2018-07-29T05:16:27Z beach: Did you see the picture. The ones defined by the MOP are all in there. 2018-07-29T05:16:34Z xrash quit (Ping timeout: 264 seconds) 2018-07-29T05:16:43Z asarch: I have several notebooks about Lisp, and I am doing a "reference manual" for my own 2018-07-29T05:16:52Z beach: Nice. 2018-07-29T05:17:13Z asarch: Yes, I did. I didn't know there were a lot of them 2018-07-29T05:17:30Z karswell_ quit (Remote host closed the connection) 2018-07-29T05:18:03Z fikka joined #lisp 2018-07-29T05:18:30Z karswell_ joined #lisp 2018-07-29T05:18:35Z asarch: In this new notebook, I am writing the way Lips does things. For example, how it does OOP, Signals conditions, packages, etc 2018-07-29T05:20:35Z asarch: For this weekend I started to read chapters 30 and 31 from PCL 2018-07-29T05:21:31Z asarch: It's a nice exercise to review what I know and what I don't 2018-07-29T05:21:35Z Pixel_Outlaw quit (Quit: Leaving) 2018-07-29T05:21:52Z asarch: But any way. Thank you guys 2018-07-29T05:21:56Z asarch: Thank you very much :-) 2018-07-29T05:22:23Z LdBeth bussing learning ALGOL, no time for rest of AMOP 2018-07-29T05:22:35Z LdBeth: you're welcome 2018-07-29T05:23:10Z fikka quit (Ping timeout: 256 seconds) 2018-07-29T05:24:37Z beach: meepdeew: Did you see my explanation? 2018-07-29T05:26:33Z meepdeew: @beach Oh, no, I was looking at #clnoobs, thank you! Reading it now 2018-07-29T05:26:58Z beach: Hope it helps. 2018-07-29T05:27:57Z phoe: pjb: how can one use ASDF as a general-purpose library like that? 2018-07-29T05:28:29Z fikka joined #lisp 2018-07-29T05:28:45Z phoe: I have been thinking of it as something that does a similar job, but ASDF seems pretty damn specialized for me - it's based around working with Lisp systems. 2018-07-29T05:29:00Z beach: Shocking! 2018-07-29T05:31:24Z orivej joined #lisp 2018-07-29T05:32:09Z test1600 joined #lisp 2018-07-29T05:32:20Z phoe: No, really. I have no idea how I could (ab)use ASDF for performing so-called business logic. 2018-07-29T05:32:51Z aeth: It doesn't sound like the right answer. 2018-07-29T05:33:00Z phoe: I know, right? 2018-07-29T05:33:11Z aeth: It *is* possibly an answer, though. Weird. 2018-07-29T05:33:21Z fikka quit (Ping timeout: 264 seconds) 2018-07-29T05:33:23Z phoe: It contains all the required mechanisms for dealing with dependencies and executing stuff. At the same time, it just sounds wrong to me. 2018-07-29T05:37:53Z meepdeew: beach: Oh jeez, super helpful. Thanks! 2018-07-29T05:38:07Z beach: meepdeew: Anytime. 2018-07-29T05:39:25Z meepdeew: I was double evaluating in my head. Specifically, I was trying to apply the rule you mentioned "The evaluation rule for a symbol is to consider to be a variable" to the result of (first '(dancing bear)). 2018-07-29T05:39:45Z beach: meepdeew: Yes, evaluation only happens once. 2018-07-29T05:41:00Z beach: er, make that "evaluation happens only once", or my (admittedly small) family will correct my grammar. 2018-07-29T05:41:13Z beach: Anyway, I'm off for an hour or so. 2018-07-29T05:41:15Z phoe: ASDF is very specific regarding what it does. Take a look at the :AROUND method at https://github.com/fare/asdf/blob/b6d2f9b44c047a5e65520692159cab7d3e9e072e/operate.lisp#L18 2018-07-29T05:41:30Z phoe: And also at all the fields of class SYSTEM at https://github.com/fare/asdf/blob/b6d2f9b44c047a5e65520692159cab7d3e9e072e/system.lisp#L74 2018-07-29T05:41:52Z phoe: I don't think I want to deal with all of that. 2018-07-29T05:42:07Z LdBeth: just happened found this paper https://www.microsoft.com/en-us/research/uploads/prod/2018/03/build-systems.pdf 2018-07-29T05:42:54Z phoe: Sure, but I don't want a build system. 2018-07-29T05:43:17Z phoe: I want a system for executing chunks of program logic in a structured way. 2018-07-29T05:43:26Z phoe: ...........which is one of the least specific things that could be said. 2018-07-29T05:44:39Z pierpal quit (Quit: Poof) 2018-07-29T05:44:56Z pierpal joined #lisp 2018-07-29T05:45:15Z LdBeth: Sounds like literature programming 2018-07-29T05:48:31Z fikka joined #lisp 2018-07-29T05:48:40Z orivej quit (Ping timeout: 256 seconds) 2018-07-29T05:52:58Z fikka quit (Ping timeout: 244 seconds) 2018-07-29T06:00:06Z pierpal quit (Quit: Poof) 2018-07-29T06:00:26Z pierpal joined #lisp 2018-07-29T06:00:33Z oldtopman joined #lisp 2018-07-29T06:08:46Z fikka joined #lisp 2018-07-29T06:10:31Z nullniverse quit (Read error: Connection reset by peer) 2018-07-29T06:11:27Z kuwze quit (Ping timeout: 252 seconds) 2018-07-29T06:14:08Z asarch: Yeah, the name of the other "super class" was CONDITION. Peter Seibel talks about it in the chapter #19 of the PCL. Sonja didn't even talk about STANDARD-CLASS 2018-07-29T06:14:16Z asarch: :-) 2018-07-29T06:14:33Z svillemot joined #lisp 2018-07-29T06:14:38Z fikka quit (Ping timeout: 268 seconds) 2018-07-29T06:15:21Z charh quit (Quit: go for a walk in the park) 2018-07-29T06:17:06Z pierpal quit (Quit: Poof) 2018-07-29T06:17:25Z pierpal joined #lisp 2018-07-29T06:19:18Z fikka joined #lisp 2018-07-29T06:20:57Z meepdeew quit (Remote host closed the connection) 2018-07-29T06:24:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-29T06:27:09Z phoe: All right, time for me to code a tool that I'm thinking of. 2018-07-29T06:29:16Z elfmacs joined #lisp 2018-07-29T06:29:47Z fikka joined #lisp 2018-07-29T06:31:59Z Bike quit (Quit: Lost terminal) 2018-07-29T06:32:19Z jackdaniel: isn't it that executing chunks of program logic in a structured way is literraly called the "program logic" and is implemented in language you write this program chunks (because is part of the program)? – like main function in C, or some function called start-loop? 2018-07-29T06:33:12Z jackdaniel: of course you can outsource part of your program to bash or other language and manage it that way, but it doesn't sound like a coherent solution 2018-07-29T06:34:00Z phoe: jackdaniel: kind of. I want to be able to declaratively describe dependencies between these chunks of program logic and the ways of starting new chunks once all of its dependencies are complete. 2018-07-29T06:34:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-29T06:39:17Z phoe: I don't want to outsource to bash or anything else, either - I'm looking for a Lisp solution to this. 2018-07-29T06:39:48Z fikka joined #lisp 2018-07-29T06:40:48Z caltelt quit (Ping timeout: 256 seconds) 2018-07-29T06:43:08Z aeth: phoe: That *does* sound a lot like ASDF 2018-07-29T06:43:26Z phoe: aeth: ASDF is Another *System* Definition Facility. 2018-07-29T06:43:32Z phoe: I don't want to define systems. 2018-07-29T06:43:54Z aeth: yeah, that's the one problem, the easiest way to do this would require each part to be in a different file 2018-07-29T06:43:58Z phoe: And that's an issue. ASDF is tailored towards systems and I don't want to hack a huge chunk out of it just to make it suitable for my purpose.. 2018-07-29T06:44:33Z phoe: Also, my logic chunks don't have all the slots described in https://github.com/fare/asdf/blob/b6d2f9b44c047a5e65520692159cab7d3e9e072e/system.lisp#L74 2018-07-29T06:44:34Z fikka quit (Ping timeout: 260 seconds) 2018-07-29T06:45:45Z phoe: 90% of these are irrelevant to me and I don't want to pretend that a logic chunk is a Lisp system as an excuse to use ASDF. 2018-07-29T06:47:10Z aeth: ooooh, unrelated, but :source-control sounds like an underused part of ASDF. I normally look up the right location by looking up the project in https://github.com/quicklisp/quicklisp-projects 2018-07-29T06:47:36Z phoe: aeth: well, that's right 2018-07-29T06:47:37Z aeth: I guess the URL to the main github/gitlab/sourceforce/bitbucket/etc. repo would go there 2018-07-29T06:47:55Z asarch quit (Quit: Leaving) 2018-07-29T06:48:05Z aeth: s/sourceforce/sourceforge/ 2018-07-29T06:48:33Z phoe: (with-lispcafe "sourceforce sounds pretty nifty") 2018-07-29T06:49:13Z aeth: definitely 2018-07-29T06:49:16Z phoe: So, time to go back to coding. I'll try to write something that's much more generic than ASDF and quite possibly is capable of executing things asynchronously/in multiple threads. 2018-07-29T06:49:18Z aeth: I subconsciously improved the name 2018-07-29T06:50:03Z fikka joined #lisp 2018-07-29T06:50:27Z Kevslinger quit (Quit: Connection closed for inactivity) 2018-07-29T06:51:34Z aeth: phoe: Definitely. Is there an API in another language that you want to copy? 2018-07-29T06:52:17Z shka1 joined #lisp 2018-07-29T06:52:56Z phoe: aeth: not really. Look at the link and description I posted 11 hours ago - these describe what I want kinda well. 2018-07-29T06:53:21Z phoe: 21:55 < phoe> I'm looking for a general-purpose library for declaring flows of tasks that are meant to be done. Example: https://cdn.discordapp.com/attachments/297478350145060875/472843556151885844/Zrzut_ekranu_z_2018-07-28_21-11-24.png 2018-07-29T06:53:25Z phoe: 21:55 < phoe> Tasks B and C can't start until A is finished. Task D can't start until B and C are finished. Once task D is finished, it returns a list of values - for each such value, an individual task E is started. 2018-07-29T06:53:37Z bsund quit (Quit: zzZZz) 2018-07-29T06:54:25Z fikka quit (Ping timeout: 248 seconds) 2018-07-29T06:54:33Z aeth: What I'd personally do is look to see if there's an established solution in another language that I could copy. 2018-07-29T06:54:54Z aeth: Obviously very loosely copy. Lispifying things usually changes a lot. 2018-07-29T06:55:41Z phoe: aeth: there actually is a decent solution in another language, except that language is called ASDF. (; 2018-07-29T06:55:51Z froggey quit (Ping timeout: 240 seconds) 2018-07-29T06:57:42Z aeth: phoe: Not if you want multithreading, though. 2018-07-29T06:57:47Z froggey joined #lisp 2018-07-29T06:57:54Z phoe: aeth: yes, that's a thing that I'll need to discuss. 2018-07-29T06:58:44Z phoe: Luckily, once I *properly* write a solution that doesn't require multithreading, then adding multithreading later shouldn't be a big issue. 2018-07-29T06:59:25Z aeth: Yes, properly. 2018-07-29T06:59:30Z phoe: Properly, as in, imagining how this is going to work when I add async to the mix. 2018-07-29T06:59:38Z pierpal quit (Remote host closed the connection) 2018-07-29T07:00:46Z angavrilov joined #lisp 2018-07-29T07:02:27Z LdBeth: Ah, so I think you want a init program like Apple’s launchd 2018-07-29T07:05:20Z phoe: LdBeth: kinda, yes. I haven't thought of that analogy before. 2018-07-29T07:07:21Z bleak joined #lisp 2018-07-29T07:10:06Z fikka joined #lisp 2018-07-29T07:11:50Z shka1 quit (Ping timeout: 256 seconds) 2018-07-29T07:12:13Z bleak: CLOS is mainly based on the message passing Flavors and CommonLoops systems AFAICT, but isn't implicitly message-based itself. What prompted these changes? Is there a general history of OOP in Lisp? 2018-07-29T07:12:39Z marusich joined #lisp 2018-07-29T07:13:48Z beach: bleak: The AMOP book may have something. Let me check... 2018-07-29T07:14:48Z fikka quit (Ping timeout: 256 seconds) 2018-07-29T07:14:59Z beach: bleak: Some early attempts at OO had some SEND primitive, but that does not integrate well with first-class functions in Lisp. 2018-07-29T07:16:18Z beach: bleak: I found this: http://www.sci.brooklyn.cuny.edu/~kopec/cis24/spring2003/Lyczak_pj2.pdf 2018-07-29T07:17:07Z rozenglass joined #lisp 2018-07-29T07:17:32Z bleak: beach: Thanks. 2018-07-29T07:19:34Z bleak: beach: beach: It seems more Lispy to integrate it into the typical "first element is a function call" archetype, but early systems which did this (syntactically prefiguring modern CLOS) like CommonLoops say they're message-passing based underneath. 2018-07-29T07:19:49Z bleak: http://www2.parc.com/istl/groups/gir/papers/stefik-commonloops-oopsla66.pdf 2018-07-29T07:20:22Z fikka joined #lisp 2018-07-29T07:20:45Z beach: I don't know the details of it. Sorry. 2018-07-29T07:21:11Z beach: Sonja Keene's book has a short section as well. 2018-07-29T07:21:26Z beach: And the bibliography in that book should be useful if you are interested. 2018-07-29T07:21:47Z bleak: beach: Sonja Keene's book? I don't think I've heard of it. 2018-07-29T07:22:51Z beach: Object-Oriented Programming in Common Lisp. Sonja Keene. 2018-07-29T07:22:54Z bleak: beach: this one? https://doc.lagout.org/programmation/Lisp/Object-Oriented%20Programming%20in%20Common%20Lisp_%20A%20Programmer%27s%20Guide%20to%20CLOS%20%5BKeene%201989-01-11%5D.pdf 2018-07-29T07:23:05Z beach: Yes. 2018-07-29T07:23:28Z marusich quit (Quit: Leaving) 2018-07-29T07:23:30Z beach: Please don't post links to illegal copies of books. 2018-07-29T07:23:37Z renzhi joined #lisp 2018-07-29T07:23:48Z bleak: Awesome, thanks! It's so hard to find old material that isn't behind ACM paywalls. Sorry about that btw. 2018-07-29T07:24:33Z beach: https://www.amazon.com/Object-Oriented-Programming-COMMON-LISP-Programmers/dp/0201175894/ref=sr_1_1?ie=UTF8&qid=1532849059&sr=8-1&keywords=object-oriented+programming+in+common+lisp&dpID=51BOqT6mv8L&preST=_SY291_BO1,204,203,200_QL40_&dpSrc=srch 2018-07-29T07:24:49Z bleak: I've even seen papers from the '60s behind paywalls. So much for emailing the author to ask for a copy! 2018-07-29T07:25:04Z saki quit (Read error: Connection reset by peer) 2018-07-29T07:25:12Z beach: bleak: A membership in ACM is very inexpensive. 2018-07-29T07:25:37Z beach: bleak: And it gives you access to all the articles from all the journals and conferences of the ACM. 2018-07-29T07:26:17Z saki joined #lisp 2018-07-29T07:26:18Z beach: bleak: Anyway, a key phrase is that they wanted to encourage experimentation. 2018-07-29T07:26:53Z beach: So they defined CLOS in terms of a meta-object protocol, thereby allowing alternative paradigms to be experimented with. 2018-07-29T07:27:15Z beach: I suppose the predecessors were not defined this way. 2018-07-29T07:28:52Z bleak: I had a suspicion that they dropped message passing for the same reason Smalltalk did going from -76 to -80, for easier compilation to standard architectures while still being extensible. It seems to suffer less from this change. 2018-07-29T07:30:39Z beach: Possibly. I don't know how they implemented message passing, so I am unable to tell whether it was harder to compile than what CLOS does. 2018-07-29T07:31:41Z JuanDaugherty joined #lisp 2018-07-29T07:32:10Z beach: bleak: What is the reason for this investigation of yours? 2018-07-29T07:34:02Z bleak: In its original form, independently formulated by Hewitt (Planner) and Kay (Smalltalk-71), message passing is extremely similar to fexprs - messages are passed in place of data and selectively evaluated by the reciever. Like the original fexprs, this thwarts conventional compilation and almost all optimizations, but provides a total paradigm of computing on par in generality with functional, procedural, and logic programming. 2018-07-29T07:34:54Z beach: Yes, I see. That would be inefficient indeed. 2018-07-29T07:35:16Z bleak: I think it should be looked into more, especially since advances in fexpr-Lisps such as Kernel make them a lot more practical. 2018-07-29T07:35:19Z jfb4` joined #lisp 2018-07-29T07:35:48Z beach: It sounds like you have found yourself a research project. 2018-07-29T07:36:27Z jfb4 quit (Ping timeout: 240 seconds) 2018-07-29T07:36:29Z bleak: John Shutt beat me to it 15 years ago, when I was 4 years old: https://web.wpi.edu/Pubs/ETD/Available/etd-090110-124904/unrestricted/jshutt.pdf 2018-07-29T07:36:43Z bleak: (it was published in 2003, I think) 2018-07-29T07:37:02Z bleak: Turns out there is a Lisp that is far more Lisp than Lisp. 2018-07-29T07:38:24Z bleak: No special forms, fully hygienic runtime macros, no border whatsoever between compilation and runtime. 2018-07-29T07:38:54Z beach: Sure. As usual, progress in compilation techniques allow more flexible languages while still maintaining efficient code. 2018-07-29T07:39:41Z pjb` joined #lisp 2018-07-29T07:41:06Z pjb quit (Ping timeout: 260 seconds) 2018-07-29T07:42:18Z beach: I should read that sometime. 2018-07-29T07:42:57Z bleak: It's great. 2018-07-29T07:43:11Z beach: Looks that way indeed. 2018-07-29T07:44:06Z bleak: The elephant in the room is that it might truly be impossible to compile these languages because so much is dependent on directly manipulating environments at runtime. Short of a proof, though, I won't stop trying. 2018-07-29T07:44:37Z beach: I totally encourage you to continue. 2018-07-29T07:44:55Z JuanDaugherty quit (Quit: Exeunt) 2018-07-29T07:45:04Z aeth: bleak: What about JIT? 2018-07-29T07:46:22Z bleak: aeth: Shutt defines a partial evaluator somewhere in the paper (and those tend to perform better than JITs when fully developed, eg Truffle vs Hotspot), but even then, existing implementations are horrendously slow. 2018-07-29T07:47:19Z bleak: You know how both Ruby, Smalltalk, and CL all do late binding, but Ruby is significantly slower because it relies much more heavily on it? Well, there's late binding, and then there's this. 2018-07-29T07:47:28Z bleak: how Ruby* 2018-07-29T07:52:51Z guicho quit (Remote host closed the connection) 2018-07-29T07:52:52Z bleak: Regardless, though, I'm not the right person to ask about JITs. Maybe it would help. 2018-07-29T07:57:28Z beach: bleak: We have made progress in generic dispatch though. 2018-07-29T07:57:51Z newbie quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2018-07-29T07:58:01Z beach: Now, it is no more expensive than a call to an ordinary function that has to change the type of its argument before doing real work. 2018-07-29T07:59:04Z beach: bleak: I am guessing Common Lisp programmers stay away from generic functions because the generic dispatch used by popular implementations is based on PCL and it it not great for modern architectures. 2018-07-29T07:59:23Z bleak: Also, the partial evaluator has more to do with making sure that the caller can enforce a modicum of discipline on the callee to allow local reasoning about programs than it does with speeding it up, IIRC. I don't think much thought has been given to performance because it's so cutting-edge and so few people know about this. 2018-07-29T07:59:28Z test1600 quit (Ping timeout: 268 seconds) 2018-07-29T07:59:50Z rippa joined #lisp 2018-07-29T08:00:25Z bleak: beach: I wasn't aware of that. 2018-07-29T08:01:00Z beach: bleak: I encourage you to continue your research, to write down any progress, and to submit your results to ELS. Then we can discuss your progress there. 2018-07-29T08:01:06Z bleak: ELS? 2018-07-29T08:01:22Z beach: You need to hang out here more often. 2018-07-29T08:01:30Z aeth: https://european-lisp-symposium.org/ 2018-07-29T08:01:43Z bleak: Duly noted. 2018-07-29T08:01:46Z beach: bleak: https://www.european-lisp-symposium.org/2018/index.html 2018-07-29T08:02:14Z beach: https://www.european-lisp-symposium.org/2019/index.html 2018-07-29T08:02:28Z bleak: https://www.european-lisp-symposium.org/2020/index.html 2018-07-29T08:03:12Z beach: The place for 2020 has not been decided yet. 2018-07-29T08:04:02Z beach: bleak: There are usually nearly 100 participants, so you have plenty of people to talk to. In particular, if you have an article and a talk, you will generate a lot of interest. 2018-07-29T08:05:06Z clhsgang[m]: the fuck, they want you talk ecmascript there? 2018-07-29T08:05:17Z clhsgang[m]: js is a lisp like lung cancer is a lung 2018-07-29T08:05:43Z beach: clhsgang[m]: This channel is dedicated to Common Lisp. 2018-07-29T08:06:30Z clhsgang[m]: the els homepage says they talk a lot of "lisp or lisp-like dialects" 2018-07-29T08:06:39Z clhsgang[m]: >any of the Lisp and Lisp-inspired dialects 2018-07-29T08:06:56Z beach: clhsgang[m]: Yes, that's up to ELS. 2018-07-29T08:06:56Z clhsgang[m]: > ...Dylan, Clojure, ACL2, *ECMAScript*, Racket, SKILL... 2018-07-29T08:07:07Z clhsgang[m]: that's slightly disgusting but i'll shut up now 2018-07-29T08:07:40Z bleak: Eczema is pretty disgusting. 2018-07-29T08:08:27Z beach: bleak: Here is the paper on fast generic dispatch for Common Lisp: http://metamodular.com/generic-dispatch.pdf 2018-07-29T08:14:01Z saki quit (Ping timeout: 244 seconds) 2018-07-29T08:16:47Z phoe: clhsgang[m]: ecmascript actually has a long history that's surprisingly lispy in its beginnings, but that's a ##lisp or #lispcafe discussion 2018-07-29T08:20:40Z bleak: phoe: Wasn't it a Java-lookalike knockoff of Self defined in 10 days originally?? 2018-07-29T08:20:45Z bleak: ?* 2018-07-29T08:21:15Z phoe: bleak: kind of. We started talking about this on #lispcafe. 2018-07-29T08:28:15Z jmercouris joined #lisp 2018-07-29T08:28:30Z jmercouris: is there a way to "watch" variables in slime? 2018-07-29T08:29:29Z jmercouris: like this: https://youtu.be/52SVAMM3V78?t=1m16s ? 2018-07-29T08:31:33Z wildbartty quit (Remote host closed the connection) 2018-07-29T08:31:47Z wildbartty joined #lisp 2018-07-29T08:33:30Z beach: Probably not. 2018-07-29T08:33:42Z jmercouris: is there any way to do this at all? 2018-07-29T08:34:02Z beach: It would need support from the underlying Common Lisp implementation. 2018-07-29T08:34:03Z jmercouris: all that comes to mind is launching another slime and connecting to the lisp, and writing some loop to print 2018-07-29T08:34:17Z beach: That won't work either. 2018-07-29T08:34:22Z jmercouris: why not? 2018-07-29T08:34:28Z beach: If it is a lexical variable you don't have access to it at all. 2018-07-29T08:34:36Z jmercouris: true 2018-07-29T08:34:43Z nowhere_man joined #lisp 2018-07-29T08:34:48Z beach: And if it is a special variable, the bindings are per thread (other than the global one). 2018-07-29T08:34:50Z LdBeth: I believe efficiency is not the primary factor not adopting message passing in CL, at least not for FLAVOR 2018-07-29T08:35:46Z jmercouris: it could be a limited imlplementation perhaps 2018-07-29T08:36:15Z phoe: jmercouris: the closest thing I can imagine is, use a function call instead of a variable. 2018-07-29T08:36:23Z phoe: Then you don't have (setf foo ...) but (setf (foo) ...) 2018-07-29T08:36:44Z phoe: and #'(SETF FOO) can somehow notify the "watcher" that the value has just changed. Or call #'BREAK. 2018-07-29T08:36:53Z jmercouris: that is an interesting though 2018-07-29T08:36:57Z jmercouris: s/though/thought 2018-07-29T08:37:00Z phoe: You can define a symbol macro for FOO that will turn it into (FOO). 2018-07-29T08:37:12Z phoe: That should be kinda portable. 2018-07-29T08:38:21Z bleak: beach: The generic method optimization in Dylan (pg 3) sounds interesting. 2018-07-29T08:38:43Z phoe: jmercouris: and this means that you can use SYMBOL-MACROLET. 2018-07-29T08:39:06Z bleak: beach: Speaking of Dylan, what happened to Moon's PLOT? 2018-07-29T08:39:24Z phoe: jmercouris: and this means that you can (defmacro with-watching ((&rest variables) &body body) ...) that should work with code like (with-watching (foo) (setf foo 42)). 2018-07-29T08:39:29Z LdBeth: CCL provides WATCH for monitoring objects https://ccl.clozure.com/docs/ccl.html#watched-objects 2018-07-29T08:39:49Z phoe: LdBeth: good! 2018-07-29T08:40:27Z beach: bleak: I haven't followed PLOT. 2018-07-29T08:40:46Z bleak: beach: It didn't really go anywhere, did it? 2018-07-29T08:41:19Z beach: I don't know. I doubt it. Paul Wilson had a similar idea, but he disappeared from academia. 2018-07-29T08:42:47Z jmercouris: phoe: I have to go for now, but I will save this in my notes and look at it later, thanks 2018-07-29T08:43:15Z jmercouris quit (Remote host closed the connection) 2018-07-29T08:44:54Z renzhi quit (Ping timeout: 256 seconds) 2018-07-29T08:51:52Z saki joined #lisp 2018-07-29T08:54:30Z elfmacs quit (Quit: WeeChat 2.2) 2018-07-29T08:54:44Z bleak: beach: Would the generic dispatch optimization potentially be sped up if they used cuckoo or robin hood hashing instead of linear probing (which is what it sounds like they're doing)? 2018-07-29T08:55:03Z beach: "they"? 2018-07-29T08:55:18Z bleak: The generic dispatch optimization paper that you posted earlier. 2018-07-29T08:55:55Z bleak: (the author) 2018-07-29T08:55:59Z beach: That's my paper. It is not linear because it uses binary search. Hashing is slower because it requires memory access. That's what PCL does. 2018-07-29T08:56:36Z bleak: Woops, I'm tired. Almost 2 in the morning here. I was re-reading it. :) 2018-07-29T08:56:39Z beach: This technique just compares an integer to small constants in the instruction stream. You can't be faster than that today. 2018-07-29T08:56:44Z trittweiler joined #lisp 2018-07-29T08:59:03Z beach: US west coast? 2018-07-29T08:59:07Z bleak: Yeah. 2018-07-29T09:00:33Z bleak: If hash tables aren't more efficient than binary searchs, what's the point of them? 2018-07-29T09:00:42Z bleak: searches* 2018-07-29T09:01:21Z beach: The difference here is that the keys of the table are known at compile time, so you don't have to access memory to get to the keys. That's what makes it faster. 2018-07-29T09:01:45Z beach: The problem is the slowness of memory compared to registers and instruction stream. 2018-07-29T09:01:52Z random-nick joined #lisp 2018-07-29T09:02:41Z beach: So even if you have a significant number of applicable methods, the binary search will only be log(n), and that is faster than a single memory access in most cases. 2018-07-29T09:02:55Z beach: And hashing requires several memory accesses, and a loop, etc. 2018-07-29T09:03:52Z no-defun-allowed: would it be any use to anyone if i cleaned up the network decentralisation model i've made for a project? 2018-07-29T09:04:21Z no-defun-allowed: basically the lib would provide socket glue and protocol stuff, and you write verification and storage functions 2018-07-29T09:07:08Z beach: bleak: Today, you can't think only in terms of asymptotic complexity of the RAM model. You need to take typical processors into account as well. 2018-07-29T09:08:48Z beach: ... and typical use cases. 2018-07-29T09:11:34Z eminhi joined #lisp 2018-07-29T09:11:54Z renzhi joined #lisp 2018-07-29T09:13:37Z vaporatorius joined #lisp 2018-07-29T09:13:37Z vaporatorius quit (Changing host) 2018-07-29T09:13:37Z vaporatorius joined #lisp 2018-07-29T09:13:59Z vap1 joined #lisp 2018-07-29T09:14:38Z elfmacs joined #lisp 2018-07-29T09:15:20Z zxcvz joined #lisp 2018-07-29T09:22:10Z makomo joined #lisp 2018-07-29T09:24:25Z jinkies quit (Ping timeout: 245 seconds) 2018-07-29T09:28:18Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-29T09:28:45Z nickenchuggets joined #lisp 2018-07-29T09:28:45Z nickenchuggets quit (Changing host) 2018-07-29T09:28:45Z nickenchuggets joined #lisp 2018-07-29T09:34:01Z nickenchuggets quit (Read error: Connection reset by peer) 2018-07-29T09:36:03Z bleak quit (Ping timeout: 252 seconds) 2018-07-29T09:38:44Z karswell_ quit (Ping timeout: 256 seconds) 2018-07-29T09:39:22Z pierpal joined #lisp 2018-07-29T09:42:16Z shka1 joined #lisp 2018-07-29T09:55:47Z orivej joined #lisp 2018-07-29T09:56:30Z lumm joined #lisp 2018-07-29T09:57:37Z vaporatorius quit (Quit: Leaving) 2018-07-29T10:02:58Z renzhi quit (Ping timeout: 256 seconds) 2018-07-29T10:21:04Z random-nick quit (Read error: Connection reset by peer) 2018-07-29T10:23:09Z elfmacs quit (Ping timeout: 268 seconds) 2018-07-29T10:26:48Z kenster quit (Ping timeout: 244 seconds) 2018-07-29T10:29:45Z renzhi joined #lisp 2018-07-29T10:29:51Z pjb`` joined #lisp 2018-07-29T10:30:56Z fikka quit (Ping timeout: 244 seconds) 2018-07-29T10:32:00Z pjb` quit (Ping timeout: 256 seconds) 2018-07-29T10:32:24Z terpri quit (Ping timeout: 268 seconds) 2018-07-29T10:34:12Z vlad_ joined #lisp 2018-07-29T10:34:25Z vlad_ is now known as DonVlad 2018-07-29T10:44:14Z fikka joined #lisp 2018-07-29T10:52:34Z smasta quit (Ping timeout: 264 seconds) 2018-07-29T10:55:30Z renzhi quit (Quit: WeeChat 2.1) 2018-07-29T10:58:27Z kajo quit (Ping timeout: 240 seconds) 2018-07-29T10:59:35Z random-nick joined #lisp 2018-07-29T11:02:02Z lumm quit (Ping timeout: 256 seconds) 2018-07-29T11:04:28Z zxcvz quit (Ping timeout: 268 seconds) 2018-07-29T11:05:59Z koenig quit (Read error: Connection reset by peer) 2018-07-29T11:07:44Z koenig joined #lisp 2018-07-29T11:08:36Z pjb`` is now known as pjb 2018-07-29T11:11:27Z lumm joined #lisp 2018-07-29T11:19:34Z xrash joined #lisp 2018-07-29T11:25:08Z orivej quit (Ping timeout: 256 seconds) 2018-07-29T11:26:05Z jfb4`` joined #lisp 2018-07-29T11:27:05Z jfb4` quit (Ping timeout: 240 seconds) 2018-07-29T11:30:59Z fikka quit (Ping timeout: 268 seconds) 2018-07-29T11:35:38Z fikka joined #lisp 2018-07-29T11:40:33Z fikka quit (Ping timeout: 264 seconds) 2018-07-29T11:44:06Z dddddd joined #lisp 2018-07-29T11:45:24Z v0|d joined #lisp 2018-07-29T11:54:53Z vlad_ joined #lisp 2018-07-29T11:55:55Z fikka joined #lisp 2018-07-29T11:57:05Z DonVlad quit (Ping timeout: 240 seconds) 2018-07-29T11:58:47Z vlad_ is now known as DonVlad 2018-07-29T11:59:19Z Josh_2 joined #lisp 2018-07-29T12:00:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-29T12:00:37Z gector quit (Read error: Connection reset by peer) 2018-07-29T12:01:11Z gector joined #lisp 2018-07-29T12:04:27Z lemo quit (Quit: lemo) 2018-07-29T12:04:49Z BitPuffin joined #lisp 2018-07-29T12:06:18Z fikka joined #lisp 2018-07-29T12:07:02Z gacepa joined #lisp 2018-07-29T12:11:10Z fikka quit (Ping timeout: 256 seconds) 2018-07-29T12:16:22Z fikka joined #lisp 2018-07-29T12:21:09Z fikka quit (Ping timeout: 260 seconds) 2018-07-29T12:26:37Z fikka joined #lisp 2018-07-29T12:28:31Z pagnol joined #lisp 2018-07-29T12:28:37Z asarch joined #lisp 2018-07-29T12:29:35Z terpri joined #lisp 2018-07-29T12:30:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-29T12:31:35Z papachan joined #lisp 2018-07-29T12:32:24Z lemo joined #lisp 2018-07-29T12:32:41Z lemo quit (Changing host) 2018-07-29T12:32:41Z lemo joined #lisp 2018-07-29T12:35:32Z EvW joined #lisp 2018-07-29T12:36:40Z fikka joined #lisp 2018-07-29T12:37:10Z asarch quit (Quit: Leaving) 2018-07-29T12:37:50Z phoe: Regarding my previous issue: someone suggested a Petri net to me, https://en.wikipedia.org/wiki/Petri_net 2018-07-29T12:38:04Z phoe: It looks just like a model of what I need. 2018-07-29T12:38:10Z X-Scale quit (Ping timeout: 264 seconds) 2018-07-29T12:38:34Z orivej joined #lisp 2018-07-29T12:38:46Z pjb: phoe: of course, but this is what make and asdf implement. 2018-07-29T12:38:59Z pjb: or any planning software. 2018-07-29T12:39:18Z pjb: https://github.com/porky11/petri-net 2018-07-29T12:39:24Z phoe: pjb: yes, I saw that one. 2018-07-29T12:39:35Z phoe: make isn't in Lisp and ASDF is not generic enough. 2018-07-29T12:39:47Z phoe: I'll look at that library. 2018-07-29T12:40:24Z EvW quit (Ping timeout: 260 seconds) 2018-07-29T12:40:37Z esrarkesh: isn't ASDF deprecated? 2018-07-29T12:40:48Z pjb: By what? 2018-07-29T12:41:18Z esrarkesh: quicklisp? 2018-07-29T12:41:45Z fikka quit (Ping timeout: 264 seconds) 2018-07-29T12:41:49Z pjb: And what is quicklisp built upon? 2018-07-29T12:42:06Z Xach: esrarkesh: asdf is not deprecated. it is a tool to organize how software is loaded. 2018-07-29T12:42:11Z esrarkesh: oh, i see 2018-07-29T12:42:12Z Xach: esrarkesh: quicklisp is a tool to fetch software. 2018-07-29T12:42:19Z esrarkesh: i'm a noob, sorry 2018-07-29T12:42:22Z phoe: esrarkesh: no problem 2018-07-29T12:42:29Z phoe: https://github.com/porky11/petri-net/blob/master/petri-net.lisp 2018-07-29T12:42:35Z phoe: woah, it's a single page of code 2018-07-29T12:42:53Z phoe: not on Quicklisp though. 2018-07-29T12:44:35Z pjb: There are even smaller implementations, based on matrices. (good when you have a nvidia). 2018-07-29T12:45:47Z lumm quit (Quit: lumm) 2018-07-29T12:46:17Z pjb: https://www.techfak.uni-bielefeld.de/~mchen/BioPNML/Intro/MRPN.html 2018-07-29T12:46:17Z lumm joined #lisp 2018-07-29T12:46:42Z phoe: I can't assume that all of the users of my library have a CUDA-capable GPU. Additionally, I'll need to pass arbitrary Lisp data as tokens, so GPUs won't really be the best option. 2018-07-29T12:47:42Z Xach: What is a petri net? 2018-07-29T12:48:10Z beach: A kind of automaton. 2018-07-29T12:48:50Z beach: The theoreticians love it. Or used to. 2018-07-29T12:49:04Z phoe: Xach: https://en.wikipedia.org/wiki/Petri_net 2018-07-29T12:49:22Z phoe: Looks like a model of a distributed process to me. 2018-07-29T12:49:57Z phoe: Or rather, https://www.techfak.uni-bielefeld.de/~mchen/BioPNML/Intro/pnfaq.html looks like a good description that isn't a fully theoretical Wiki page. 2018-07-29T12:50:10Z Xach: Tusen tack 2018-07-29T12:51:43Z phoe: polecam się na przyszłość 2018-07-29T12:51:48Z shka1: phoe: opencl is the answer 2018-07-29T12:52:14Z phoe: shka1: not-overengineering is the answer 2018-07-29T12:52:46Z beach: shka1: What is opencl? 2018-07-29T12:53:08Z shka1: beach: essentially like cuda, but portable on other hardware then nvidia gpu 2018-07-29T12:53:24Z shka1: radeon gpus, intel gpus 2018-07-29T12:53:28Z beach: Oh, nothing to do with Common Lisp then? 2018-07-29T12:53:29Z shka1: it can run on cpu as well 2018-07-29T12:53:53Z shka1: beach: you can generate it from CL, ala cl-cuda 2018-07-29T12:54:02Z shka1: there is a system for that in quicklisp 2018-07-29T12:54:02Z beach: OK. 2018-07-29T12:54:41Z phoe: OpenCL = Open Computing Language 2018-07-29T12:54:50Z beach: Got it. 2018-07-29T12:54:51Z phoe: that has an unfortunate acronym clash with Common Lisp 2018-07-29T12:55:00Z beach: Indeed. I was misled. 2018-07-29T12:55:06Z phoe: yep, so was I initially 2018-07-29T12:55:25Z elfmacs joined #lisp 2018-07-29T12:55:36Z shka1: i did not realize this myself, sorry 2018-07-29T12:56:18Z phoe: hah, no problem 2018-07-29T12:56:47Z fikka joined #lisp 2018-07-29T12:56:55Z shka1: anyway, cuda is industry standard, but i don't like how it is tied to nvidia gpus 2018-07-29T12:57:13Z shka1: opencl has more abstract execution model which i like 2018-07-29T12:57:49Z shka1: aaaaaanyway 2018-07-29T12:58:11Z shka1: beach: i presume that you are not a huge fan of petri nets? 2018-07-29T13:01:21Z fikka quit (Ping timeout: 248 seconds) 2018-07-29T13:02:56Z shka1: it looks like something useful 2018-07-29T13:04:11Z smurfrobot joined #lisp 2018-07-29T13:07:08Z orivej quit (Ping timeout: 256 seconds) 2018-07-29T13:14:40Z fikka joined #lisp 2018-07-29T13:15:01Z orivej joined #lisp 2018-07-29T13:16:05Z pjb: shka1: the problem is like with DFA vs. scanning, etc. They are mathematical structures that are studied a lot, but in practice, they're basically useless as is. You have to extend them, add real data and trigger actions, so the mathematical formula cannot be simply translated. You have to write more complex algorithms to make them something useful. 2018-07-29T13:17:22Z shka1: pjb: makes sense 2018-07-29T13:17:27Z pagnol quit (Ping timeout: 240 seconds) 2018-07-29T13:19:39Z nckx quit (Quit: Updating my GNU GuixSD server — gnu.org/s/guix) 2018-07-29T13:20:08Z rgrau quit (Ping timeout: 268 seconds) 2018-07-29T13:20:25Z abeaumont quit (Ping timeout: 256 seconds) 2018-07-29T13:22:07Z eagleflo quit (Ping timeout: 256 seconds) 2018-07-29T13:22:22Z routermater joined #lisp 2018-07-29T13:25:24Z routermater quit (Client Quit) 2018-07-29T13:25:49Z lumm quit (Quit: lumm) 2018-07-29T13:26:14Z routermater joined #lisp 2018-07-29T13:27:25Z nicht joined #lisp 2018-07-29T13:37:01Z X-Scale joined #lisp 2018-07-29T13:41:11Z nckx joined #lisp 2018-07-29T13:41:33Z rgrau joined #lisp 2018-07-29T13:44:02Z beach: shka1: No, I have no opinions myself. All the work I have seen has been on proving properties of Pertri nets. 2018-07-29T13:44:11Z FareTower joined #lisp 2018-07-29T13:44:28Z shka1: beach: that does not sound all that fascinating :( 2018-07-29T13:45:13Z beach: Stuff like this: http://www.kurims.kyoto-u.ac.jp/~kyodo/kokyuroku/contents/pdf/0809-10.pdf 2018-07-29T13:45:18Z eagleflo joined #lisp 2018-07-29T13:46:35Z shka1: i am surprised that nobody attempted to augment this theory and turn it into language for defining asynchronous system control 2018-07-29T13:46:41Z shka1: maybe even distributed systems 2018-07-29T13:46:45Z lumm joined #lisp 2018-07-29T13:48:39Z orivej quit (Ping timeout: 260 seconds) 2018-07-29T13:50:49Z nicht quit (Quit: Leaving) 2018-07-29T13:51:43Z lumm quit (Read error: Connection reset by peer) 2018-07-29T13:52:17Z lumm joined #lisp 2018-07-29T14:00:16Z smurfrobot quit (Remote host closed the connection) 2018-07-29T14:02:48Z reu quit (Ping timeout: 256 seconds) 2018-07-29T14:03:10Z argoneus quit (Quit: No Ping reply in 180 seconds.) 2018-07-29T14:03:22Z p_l: huh, the first time I heard of petri nets, they were described explicitly in terms of practical use 2018-07-29T14:03:29Z p_l: how the mighty has fallen :( 2018-07-29T14:04:05Z p_l: shka1: petri nets, afaik, were used in Apollo project for distributed computing synchronization 2018-07-29T14:04:19Z lumm quit (Quit: lumm) 2018-07-29T14:04:44Z lumm joined #lisp 2018-07-29T14:05:44Z argoneus joined #lisp 2018-07-29T14:05:57Z svillemot quit (Quit: ZNC 1.6.5+deb1+deb9u1 - http://znc.in) 2018-07-29T14:08:38Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-29T14:09:00Z karlosz joined #lisp 2018-07-29T14:09:13Z shka1 was looking for high quality scans of apollo blueprints so he could print those and use as decoration in his flat 2018-07-29T14:09:21Z shka1 did not found anything :( 2018-07-29T14:10:52Z pagnol joined #lisp 2018-07-29T14:11:19Z aindilis joined #lisp 2018-07-29T14:11:31Z smurfrobot joined #lisp 2018-07-29T14:11:59Z fikka quit (Ping timeout: 260 seconds) 2018-07-29T14:13:15Z argoneus quit (Quit: No Ping reply in 180 seconds.) 2018-07-29T14:15:31Z lemo quit (Quit: lemo) 2018-07-29T14:16:46Z gacepa quit (Quit: Connection closed for inactivity) 2018-07-29T14:16:52Z lumm quit (Remote host closed the connection) 2018-07-29T14:17:20Z lumm joined #lisp 2018-07-29T14:17:50Z jfb4``` joined #lisp 2018-07-29T14:17:51Z lemo joined #lisp 2018-07-29T14:19:05Z jfb4`` quit (Ping timeout: 240 seconds) 2018-07-29T14:21:12Z argoneus joined #lisp 2018-07-29T14:21:34Z smurfrobot quit (Remote host closed the connection) 2018-07-29T14:22:41Z smurfrobot joined #lisp 2018-07-29T14:24:46Z lumm_ joined #lisp 2018-07-29T14:25:05Z lumm_ quit (Remote host closed the connection) 2018-07-29T14:25:42Z smurfrobot quit (Remote host closed the connection) 2018-07-29T14:26:02Z lumm quit (Ping timeout: 256 seconds) 2018-07-29T14:26:24Z fikka joined #lisp 2018-07-29T14:28:28Z asarch joined #lisp 2018-07-29T14:28:32Z lumm joined #lisp 2018-07-29T14:32:40Z p_l: shka1: most of Apollo stuff is dead in archives, with important details being dead along with the people who knew them 2018-07-29T14:34:09Z lumm quit (Ping timeout: 260 seconds) 2018-07-29T14:36:30Z sabrac quit (Quit: Konversation terminated!) 2018-07-29T14:39:16Z nanoz joined #lisp 2018-07-29T14:41:07Z Bike joined #lisp 2018-07-29T14:42:46Z FreeBirdLjj joined #lisp 2018-07-29T14:50:35Z FareTower quit (Ping timeout: 240 seconds) 2018-07-29T14:50:55Z reu joined #lisp 2018-07-29T14:52:07Z Kundry_Wag joined #lisp 2018-07-29T14:59:05Z smurfrobot joined #lisp 2018-07-29T14:59:09Z caltelt joined #lisp 2018-07-29T15:09:12Z eminhi quit (Quit: leaving) 2018-07-29T15:10:54Z elfmacs quit (Ping timeout: 260 seconds) 2018-07-29T15:11:06Z pjb: shka1: but it's used! in lectures about asynchronous systems and distributed systems. 2018-07-29T15:11:34Z pjb: shka1: the problem is mostly that it's useless to implement a web page. 2018-07-29T15:11:45Z pjb: or a payroll system. 2018-07-29T15:12:50Z routermater quit (Ping timeout: 260 seconds) 2018-07-29T15:13:18Z pjb: It's a little like AI. A lot of big and important algorithms developped early by mathematicians are actually integrated now in specific tools, and are not famous anymore. 2018-07-29T15:13:22Z p_l: pjb: I can easily see it used in a payroll system, those things are crazy 2018-07-29T15:13:26Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-29T15:13:44Z smasta joined #lisp 2018-07-29T15:14:18Z smurfrobot quit (Remote host closed the connection) 2018-07-29T15:16:17Z smurfrobot joined #lisp 2018-07-29T15:16:19Z smurfrobot quit (Remote host closed the connection) 2018-07-29T15:16:32Z smurfrobot joined #lisp 2018-07-29T15:19:34Z nowhere_man quit (Ping timeout: 264 seconds) 2018-07-29T15:24:10Z FreeBirdLjj joined #lisp 2018-07-29T15:27:22Z smasta quit (Ping timeout: 264 seconds) 2018-07-29T15:27:45Z FareTower joined #lisp 2018-07-29T15:28:57Z FreeBirdLjj quit (Ping timeout: 240 seconds) 2018-07-29T15:29:57Z saki quit (Ping timeout: 240 seconds) 2018-07-29T15:32:59Z saki joined #lisp 2018-07-29T15:34:54Z saki quit (Client Quit) 2018-07-29T15:36:27Z shka1: it looks like it is difficult to represent position 2018-07-29T15:36:49Z shka1: that's essentially the hard part 2018-07-29T15:39:34Z Kundry_Wag_ joined #lisp 2018-07-29T15:41:13Z phoe: Position? What do you mean? 2018-07-29T15:41:14Z pjb: shka1: not at all, it's easy: it's the marking vector. 2018-07-29T15:41:15Z pjb: ([Transition Matrix][D]) + [Marking Matrix] = [Next Marking] 2018-07-29T15:41:21Z NoNumber quit (Remote host closed the connection) 2018-07-29T15:41:22Z pjb: That's all there is to petry nets. 2018-07-29T15:41:27Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-29T15:42:12Z fikka quit (Ping timeout: 265 seconds) 2018-07-29T15:42:19Z pjb: https://www.techfak.uni-bielefeld.de/~mchen/BioPNML/Intro/MRPN.html 2018-07-29T15:44:51Z shka1: pjb: as you pointed out, without more elaborated data types it is not that useful 2018-07-29T15:49:00Z pjb: AN = { (n,a) | n∈ℤ, a∈{foo,bar,baz} } ×:AN×AN, (n₁,a₁)x(n₂,a₂) = (n₁*n₂,a₁∪a₂) 2018-07-29T15:49:15Z pjb: and instead of using matrices of ℤ, use matrices of AN. 2018-07-29T15:51:56Z shka1: pjb: valiant effort sir, but i still don't understand 2018-07-29T15:52:13Z Arcaelyx_ joined #lisp 2018-07-29T15:53:03Z pjb: shka1: this is a new kind of numbers, attributed numbers. 2018-07-29T15:53:27Z pjb: 2{foo}*3{bar} = 6{foo,bar} 2018-07-29T15:53:59Z pjb: But there was a bug: AN = { (n,a) | n∈ℤ, a∈2^{foo,bar,baz} } ×:AN×AN, (n₁,a₁)x(n₂,a₂) = (n₁*n₂,a₁∪a₂) 2018-07-29T15:54:08Z shka1: uhm 2018-07-29T15:54:32Z shka1: pardon, i want to eat my dinner 2018-07-29T15:55:15Z Arcaelyx quit (Ping timeout: 265 seconds) 2018-07-29T15:56:52Z test1600 joined #lisp 2018-07-29T15:59:54Z fikka joined #lisp 2018-07-29T16:04:43Z FareTower: pjb: what is union on A ? 2018-07-29T16:04:50Z FareTower: oh 2^ 2018-07-29T16:05:04Z FareTower: static types to the rescue 2018-07-29T16:05:10Z fikka quit (Ping timeout: 264 seconds) 2018-07-29T16:06:25Z pjb: That said, something like AN = { (n,a) | n∈ℤ, a∈{foo,bar,baz} } ×:AN×AN, (n₁,a₁)x(n₂,a₂) = (n₁*n₂,a₁∪a₂) would take a couple of pages in lisp and half an hour to type… 2018-07-29T16:06:27Z elfmacs joined #lisp 2018-07-29T16:09:35Z meepdeew joined #lisp 2018-07-29T16:11:21Z EvW joined #lisp 2018-07-29T16:11:50Z test1600 quit (Quit: Leaving) 2018-07-29T16:13:09Z FareTower: beach: bonjour 2018-07-29T16:15:10Z raynold joined #lisp 2018-07-29T16:18:40Z jgkamat: hey, I'm quite used to the python "paradigm" of having keyword format arguments, for example 2018-07-29T16:19:00Z jgkamat: "test {name}".format(name=1). Is something like that available in cl format? 2018-07-29T16:19:17Z jgkamat: the reason why is that I can provide format arguments without actually using them in the format string sometimes 2018-07-29T16:20:04Z FareTower: jgkamat, that's not in cl:format, but there are many alternate packages 2018-07-29T16:22:44Z jgkamat: FareTower: do you know any of those? I'm having trouble finding any alternate implementations (at least on quicklisp) 2018-07-29T16:24:39Z jgkamat: ah, found one http://quickdocs.org/trivial-string-template/ 2018-07-29T16:26:41Z Kundry_Wag_ quit (Remote host closed the connection) 2018-07-29T16:27:14Z fourier joined #lisp 2018-07-29T16:30:11Z hiroaki joined #lisp 2018-07-29T16:32:10Z fikka joined #lisp 2018-07-29T16:33:29Z charh joined #lisp 2018-07-29T16:35:02Z caltelt quit (Remote host closed the connection) 2018-07-29T16:35:19Z nika joined #lisp 2018-07-29T16:36:43Z lemo quit (Remote host closed the connection) 2018-07-29T16:37:33Z lumm joined #lisp 2018-07-29T16:38:27Z lumm quit (Client Quit) 2018-07-29T16:38:38Z FareTower quit (Ping timeout: 256 seconds) 2018-07-29T16:38:46Z elfmacs quit (Quit: WeeChat 2.2) 2018-07-29T16:41:21Z lumm joined #lisp 2018-07-29T16:45:42Z fikka quit (Ping timeout: 260 seconds) 2018-07-29T16:51:58Z sjl_ quit (Ping timeout: 264 seconds) 2018-07-29T16:52:07Z varjag joined #lisp 2018-07-29T16:52:41Z smurfrobot quit (Remote host closed the connection) 2018-07-29T16:53:16Z asarch quit (Remote host closed the connection) 2018-07-29T16:56:12Z varjag quit (Read error: Connection reset by peer) 2018-07-29T16:57:23Z Bike quit (Quit: Lost terminal) 2018-07-29T16:58:08Z Josh_2: Has anyone used Spinneret? It doesn't seem to be closing

tags, I'm not sure if that's normal, the examples don't seem to show that 2018-07-29T16:59:13Z Josh_2: (with-html (:p "halp")) =>

Halp 2018-07-29T16:59:23Z Josh_2:

halp* 2018-07-29T16:59:40Z pagnol quit (Ping timeout: 268 seconds) 2018-07-29T17:00:23Z FareTower joined #lisp 2018-07-29T17:01:03Z Josh_2: I'll just use Flute 2018-07-29T17:01:24Z Kundry_Wag joined #lisp 2018-07-29T17:01:49Z smurfrobot joined #lisp 2018-07-29T17:03:17Z smurfrobot quit (Remote host closed the connection) 2018-07-29T17:04:43Z smurfrobot joined #lisp 2018-07-29T17:04:46Z lumm quit (Read error: Connection reset by peer) 2018-07-29T17:04:51Z lumm_ joined #lisp 2018-07-29T17:05:13Z lumm_ is now known as lumm 2018-07-29T17:05:21Z nowhere_man joined #lisp 2018-07-29T17:05:26Z lumm quit (Remote host closed the connection) 2018-07-29T17:09:30Z hiroaki quit (Ping timeout: 260 seconds) 2018-07-29T17:10:46Z hiroaki joined #lisp 2018-07-29T17:11:33Z varjag joined #lisp 2018-07-29T17:12:44Z smasta joined #lisp 2018-07-29T17:17:05Z meepdeew quit (Remote host closed the connection) 2018-07-29T17:17:47Z lumm joined #lisp 2018-07-29T17:17:48Z smurfrobot quit (Remote host closed the connection) 2018-07-29T17:18:21Z smurfrobot joined #lisp 2018-07-29T17:19:22Z lumm quit (Client Quit) 2018-07-29T17:19:45Z mejja joined #lisp 2018-07-29T17:22:02Z varjag quit (Read error: Connection reset by peer) 2018-07-29T17:22:44Z smurfrobot quit (Ping timeout: 260 seconds) 2018-07-29T17:23:05Z varjag joined #lisp 2018-07-29T17:25:44Z lumm joined #lisp 2018-07-29T17:25:56Z Kundry_Wag quit (Remote host closed the connection) 2018-07-29T17:26:10Z Kundry_Wag joined #lisp 2018-07-29T17:27:25Z smurfrobot joined #lisp 2018-07-29T17:30:05Z smasta quit (Ping timeout: 240 seconds) 2018-07-29T17:30:24Z Inline quit (Quit: Leaving) 2018-07-29T17:31:34Z Josh_2: I'm getting an error while trying to quickload :spinneret https://pastebin.com/tKJPXrq5 it was working just before I updated ql with (ql:update-dist "quicklisp") 2018-07-29T17:31:51Z Josh_2: Not sure who I report that to 2018-07-29T17:32:17Z newbie joined #lisp 2018-07-29T17:35:05Z Josh_2: It's a problem with serapeum 2018-07-29T17:35:17Z varjag quit (Read error: Connection reset by peer) 2018-07-29T17:41:01Z jinkies joined #lisp 2018-07-29T17:41:32Z MoziM joined #lisp 2018-07-29T17:43:03Z skapata joined #lisp 2018-07-29T17:43:06Z hiroaki quit (Ping timeout: 256 seconds) 2018-07-29T17:44:00Z FareTower quit (Ping timeout: 245 seconds) 2018-07-29T17:52:52Z lumm quit (Ping timeout: 256 seconds) 2018-07-29T17:55:32Z rozenglass quit (Remote host closed the connection) 2018-07-29T17:57:28Z Josh_2: When I start up slime I'm getting a prompt saying slime and swank are different versions, is this okay? 2018-07-29T17:58:02Z shka1: Josh_2: update emacs 2018-07-29T17:58:05Z Josh_2: slime is 2.20 and swank is 2.21 2018-07-29T17:58:09Z AlexeyKamenew joined #lisp 2018-07-29T17:58:15Z AlexeyKamenew left #lisp 2018-07-29T17:58:16Z shka1: after updating quicklisp you went out of sync 2018-07-29T17:58:29Z shka1: just update emacs packages and you should be fine 2018-07-29T17:58:58Z Josh_2: I'm on version 25 and 25 is the version in my package manager 2018-07-29T17:59:17Z AlexeyKamenew joined #lisp 2018-07-29T17:59:17Z smurfrobot quit (Remote host closed the connection) 2018-07-29T17:59:32Z shka1: Josh_2: i ment elpa packages 2018-07-29T17:59:37Z Josh_2: Yes I just got that :) 2018-07-29T17:59:50Z smurfrobot joined #lisp 2018-07-29T18:01:05Z AlexeyKamenew is now known as ortus 2018-07-29T18:04:03Z Josh_2 quit (Quit: ERC (IRC client for Emacs 25.3.1)) 2018-07-29T18:04:24Z Josh_2 joined #lisp 2018-07-29T18:04:25Z smurfrobot quit (Ping timeout: 268 seconds) 2018-07-29T18:04:48Z Josh_2: shka1 I updated all my packages and I'm still getting the same message 2018-07-29T18:04:58Z equwal joined #lisp 2018-07-29T18:06:05Z equwal: How does this work? (let (#'10) (+ function 2)) => 12 2018-07-29T18:09:39Z shka1: (let ((function 10)) (+ function 2)) that's how 2018-07-29T18:10:16Z shka1: equwal: #'10 is read as (function 10) and since it is in the let form it evaluates to result you observed 2018-07-29T18:10:46Z beach: equwal: #' is a reader macro. When the reader sees #' it builds and returns the list (function ) 2018-07-29T18:11:13Z shka1: you are making me anxious 2018-07-29T18:11:33Z equwal: Okay makes sense. Was thrown when I saw that, thanks. 2018-07-29T18:11:35Z random-nick quit (Ping timeout: 240 seconds) 2018-07-29T18:11:39Z beach: equwal: You can also try (let ('10) (+ quote 2)) 2018-07-29T18:11:53Z equwal: Oh the humanity! 2018-07-29T18:12:05Z beach: shka1: Me? Why? 2018-07-29T18:12:22Z pagnol joined #lisp 2018-07-29T18:12:24Z shka1: i am wondering what is wrong with my explanation now 2018-07-29T18:12:30Z fikka joined #lisp 2018-07-29T18:12:56Z beach: shka1: There is nothing wrong with it. I just wanted to expand on it a bit, like give an example. 2018-07-29T18:13:05Z shka1: ah, ok 2018-07-29T18:13:40Z beach: shka1: Call it an occupational hazard. I can't help it. 2018-07-29T18:15:57Z beach: Anyway, time to call it a day and to go spend time with my (admittedly small) family. 2018-07-29T18:15:59Z skapata quit (Remote host closed the connection) 2018-07-29T18:16:04Z v0|d: (let (some-macro) ..) also works. 2018-07-29T18:16:21Z beach: v0|d: How so? 2018-07-29T18:16:21Z v0|d: some-macro can expand to ((a 1) (b 2)) etc. 2018-07-29T18:16:29Z skapata joined #lisp 2018-07-29T18:16:34Z beach: v0|d: What makes you think that will work? 2018-07-29T18:16:39Z v0|d: seen it in SBCL code i guess. 2018-07-29T18:16:45Z v0|d: or ecl cannot recall. 2018-07-29T18:16:49Z v0|d: i was shocked:p 2018-07-29T18:16:53Z beach: Then I believe that implementation is incorrect. 2018-07-29T18:16:58Z fikka quit (Ping timeout: 244 seconds) 2018-07-29T18:17:15Z ortus left #lisp 2018-07-29T18:17:41Z shka1: beach: isn't that UB? 2018-07-29T18:17:52Z equwal: Would not some-macro need to be a reader macro? 2018-07-29T18:17:52Z beach: Why would it be? 2018-07-29T18:18:18Z beach: v0|d: The bindings of a LET form are not evaluated, and because of that, not macroexpanded either. 2018-07-29T18:18:42Z beach: v0|d: You should file an error report to the maintainers of that implementation. 2018-07-29T18:19:10Z shka1: clhs does not states that variable forms are not evaluated 2018-07-29T18:19:24Z shka1: so i assumed that this is undefined behavior 2018-07-29T18:19:28Z beach: shka1: Sure it does. 2018-07-29T18:19:49Z beach: shka1: Otherwise, most LET forms would signal an error. 2018-07-29T18:20:02Z beach: shka1: (let ((x 10) (y 20)) ...) 2018-07-29T18:20:17Z beach: Try ((x 10) (y 20)) as a form and you will see. 2018-07-29T18:20:47Z shka1: yeah, makes sense 2018-07-29T18:22:00Z beach: v0|d: So you were right to be shocked. I definitely would be. 2018-07-29T18:22:38Z v0|d: Maybe it was a reader macro nevertheless, never thought of writing such let form. 2018-07-29T18:22:50Z beach: That would be a very strange reader macro. 2018-07-29T18:23:02Z shka1: kinda pointless too 2018-07-29T18:23:03Z beach: Normally they are one or two characters long and not alphabetic. 2018-07-29T18:23:22Z v0|d: it basically mimix (apply #'(lambda (..) ..) (some-macr0)) 2018-07-29T18:23:50Z beach: v0|d: When you find that occurrence, I would like to see it. 2018-07-29T18:23:50Z Josh_2 quit (Quit: ERC (IRC client for Emacs 25.3.1)) 2018-07-29T18:24:12Z v0|d: beach: sure. 2018-07-29T18:24:17Z equwal: Extreme insanity: (progn '#1=(a 1) (let (#1#) a)) 2018-07-29T18:24:39Z v0|d: equwal: try using prog 2018-07-29T18:24:49Z v0|d: !clhs prog 2018-07-29T18:24:57Z shka1: equwal: does not sound insane 2018-07-29T18:25:06Z shka1: reader can do such things 2018-07-29T18:25:07Z equwal: !clhs prog 2018-07-29T18:25:34Z v0|d: how do I invoke the bot? 2018-07-29T18:25:49Z shka1: personally i use this feature only in one case 2018-07-29T18:25:59Z equwal: I know what prog is, I was just trying to find another reader macro to do let bindings with. 2018-07-29T18:27:14Z meepdeew joined #lisp 2018-07-29T18:28:04Z beach: clhs prog 2018-07-29T18:28:04Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/m_prog_.htm 2018-07-29T18:30:17Z v0|d: anybody got particular benefit from maybe-inline before? 2018-07-29T18:30:30Z v0|d: i wanna know what might be the use cases. 2018-07-29T18:30:49Z v0|d: what do they call it, semi-inlining? 2018-07-29T18:34:36Z fikka joined #lisp 2018-07-29T18:36:32Z Josh_2 joined #lisp 2018-07-29T18:38:30Z Josh_2: well I fixed my error by just installing the Melpa version of slime 2018-07-29T18:38:58Z Josh_2: serapeum is not compiling though 2018-07-29T18:40:42Z shka1: Josh_2: what is the error? 2018-07-29T18:41:50Z Josh_2: I fixed the first one, now I'm getting this https://pastebin.com/7Wxbsxzg 2018-07-29T18:44:55Z shka1: hm 2018-07-29T18:44:58Z shka1: interesting 2018-07-29T18:46:04Z Josh_2: this happened after I updated quicklisp 2018-07-29T18:46:14Z Josh_2: it was working before, however the repo on github hasn't changed 2018-07-29T18:47:50Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-29T18:51:30Z EvW quit (Ping timeout: 245 seconds) 2018-07-29T18:54:19Z pagnol quit (Ping timeout: 260 seconds) 2018-07-29T18:56:10Z random-nick joined #lisp 2018-07-29T18:57:53Z random-nick: if I want to have a macro that defines something in a separate namespace, what's the best way to implement it? using a global hashtable or using symbol properties? 2018-07-29T18:59:01Z nika quit (Quit: Leaving...) 2018-07-29T19:01:02Z Josh_2: shka1: I reinstalled quicklisp, and it still isn't working 2018-07-29T19:08:21Z smasta joined #lisp 2018-07-29T19:09:05Z shka1: random-nick: symbol properties are not that great 2018-07-29T19:09:20Z shka1: hashtable is acceptable 2018-07-29T19:09:43Z shka1: what i would like to do is to use generics and methods specialized on (eql symbol) 2018-07-29T19:10:15Z shka1: that's my favorite way to make extendable macros and stuff 2018-07-29T19:12:08Z ebrasca quit (Read error: No route to host) 2018-07-29T19:12:23Z ebrasca joined #lisp 2018-07-29T19:13:19Z random-nick: shka1: what are the downsides of symbol properties? 2018-07-29T19:13:33Z equwal: O(n) not O(1) 2018-07-29T19:13:43Z equwal: Hash tables are O(1) 2018-07-29T19:14:26Z random-nick: hash-tables are O(n) too 2018-07-29T19:16:13Z pjb: random-nick: you should define "separate namespace". Note that symbols are not defined in namespaces. Symbols are interned in packages. So defining a macro that interns symbols in different packages is something entirely different from defining soemthing in a separate namespace. You have to explain the later! 2018-07-29T19:16:54Z loli quit (Read error: Connection reset by peer) 2018-07-29T19:16:58Z pjb: equwal: however, get is faster than gethash (as long as hash-count <= 5). 2018-07-29T19:17:29Z random-nick: pjb: what I meant is associating a provided symbol with a value 2018-07-29T19:18:04Z random-nick: globally and at macro-expansion time 2018-07-29T19:18:05Z pjb: random-nick: ok, so you want to associate the symbol with a value, but not as a dynamic binding or a lexical binding. 2018-07-29T19:18:24Z pjb: In what namespace do you want to associate them? 2018-07-29T19:18:36Z EvW1 joined #lisp 2018-07-29T19:18:38Z random-nick: well, my own namespace 2018-07-29T19:18:58Z pjb: And how do you create bindings in this namespace? 2018-07-29T19:19:11Z random-nick: that's what I'm trying to find out 2018-07-29T19:19:17Z meepdeew quit (Remote host closed the connection) 2018-07-29T19:19:37Z pjb: It's your own namespace, so you are god, it's you who decide how things are done in your stuff!@ 2018-07-29T19:21:45Z pjb: You should have functions such as (make-random-nick-namespace name-of-namespace) (find-random-nick-namespace name-of-namespace) (bind-in-random-nick-namespace symbol value) (value-of-binding-in-random-nick-namespace symbol) 2018-07-29T19:21:51Z loli joined #lisp 2018-07-29T19:28:04Z Kundry_Wag joined #lisp 2018-07-29T19:29:06Z shka1: and generic functions works for that 2018-07-29T19:34:51Z NoNumber joined #lisp 2018-07-29T19:37:21Z edgar-rft joined #lisp 2018-07-29T19:39:50Z EvW1 quit (Ping timeout: 245 seconds) 2018-07-29T19:40:09Z pierpal quit (Quit: Poof) 2018-07-29T19:40:28Z pierpal joined #lisp 2018-07-29T19:40:51Z svillemot joined #lisp 2018-07-29T19:43:15Z fikka quit (Ping timeout: 244 seconds) 2018-07-29T19:44:47Z EvW joined #lisp 2018-07-29T19:46:55Z nanoz quit (Quit: Leaving) 2018-07-29T19:47:43Z fikka joined #lisp 2018-07-29T19:49:14Z NoNumber quit (Remote host closed the connection) 2018-07-29T19:54:22Z equwal: If your "separate namespace" only has five items, than efficiency doesn't really matter. Any programming language I have used stored its namespaces in hash tables. If they used linked lists, compilation and interpretation would take exponential time. 2018-07-29T19:56:10Z fikka quit (Ping timeout: 244 seconds) 2018-07-29T20:03:02Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2018-07-29T20:03:08Z pierpal quit (Quit: Poof) 2018-07-29T20:03:25Z pierpal joined #lisp 2018-07-29T20:03:27Z makomo quit (Ping timeout: 240 seconds) 2018-07-29T20:03:45Z EvW quit (Remote host closed the connection) 2018-07-29T20:03:54Z EvW1 joined #lisp 2018-07-29T20:05:12Z makomo joined #lisp 2018-07-29T20:09:14Z Inline joined #lisp 2018-07-29T20:11:06Z jinkies quit (Read error: Connection reset by peer) 2018-07-29T20:13:04Z shka1 quit (Ping timeout: 260 seconds) 2018-07-29T20:14:59Z jinkies joined #lisp 2018-07-29T20:18:20Z edgar-rft quit (Quit: Leaving) 2018-07-29T20:18:25Z pjb: equwal: it depends. For example, if you consider LET forms, most often you have less than five variables bound. On the other hand, you have a lot of them. If you allocate a hash-table for each LET form, then you will use a lot of memory. 2018-07-29T20:19:09Z edgar-rft joined #lisp 2018-07-29T20:19:16Z pjb: equwal: similarly for eg. objects. Most objects have only a few slots. But you have a lot of objects in programs. Using hash-table for them would uses too much space. 2018-07-29T20:19:51Z pjb: (in the case of objects, implementations normally use vectors, but without vectors, plists would be more time and space efficient than hash-tables). 2018-07-29T20:21:51Z equwal: You could always roll your own hash tables to make them more efficient if you need to, CL's hash tables are very general and inefficient. 2018-07-29T20:22:51Z equwal: If you use plists for that, expect comilation to take years for any large program. 2018-07-29T20:23:46Z equwal: If you plists are working for your narrow purpose, there is no need to go optimizing prematurely though. 2018-07-29T20:24:46Z v0|d left #lisp 2018-07-29T20:25:44Z v0|d joined #lisp 2018-07-29T20:28:12Z beach: random-nick: It seems you need first-class global environments. 2018-07-29T20:28:55Z beach: http://metamodular.com/environments.pdf 2018-07-29T20:29:01Z edgar-rft quit (Quit: Leaving) 2018-07-29T20:29:16Z vultyre joined #lisp 2018-07-29T20:29:45Z edgar-rft joined #lisp 2018-07-29T20:30:45Z equwal: Those are exceptionally common. 2018-07-29T20:33:12Z vhost- joined #lisp 2018-07-29T20:33:12Z vhost- quit (Changing host) 2018-07-29T20:33:13Z vhost- joined #lisp 2018-07-29T20:34:06Z vultyre quit (Quit: Mutter: www.mutterirc.com) 2018-07-29T20:34:19Z pjb: equwal: you are illogical! 2018-07-29T20:34:26Z vultyre joined #lisp 2018-07-29T20:34:27Z pjb: I told you that get was faster than gethash! 2018-07-29T20:34:32Z pagnol joined #lisp 2018-07-29T20:34:42Z pjb: If you replace hash-table by p-list, it will obviously run faster! 2018-07-29T20:35:43Z vultyre quit (Client Quit) 2018-07-29T20:38:25Z loli quit (Ping timeout: 248 seconds) 2018-07-29T20:38:26Z edgar-rft quit (Quit: Leaving) 2018-07-29T20:38:36Z equwal: Well since lots of people do it this way, I am wrong. 2018-07-29T20:39:07Z edgar-rft joined #lisp 2018-07-29T20:40:44Z equwal: Although not really. That paper doesn't use P-lists, it uses CLOS. Do you know how CLOS lookups are done? (Hint: hash tables). 2018-07-29T20:41:31Z pjb: equwal: nope. clos implement objects using vectors. slot-value is O(1) like aref. 2018-07-29T20:43:33Z fikka joined #lisp 2018-07-29T20:43:36Z trittweiler: Heh. That made me think how a perfect hash-table is distinguishable from a vector.. 2018-07-29T20:45:25Z edgar-rft quit (Quit: Leaving) 2018-07-29T20:46:07Z edgar-rft joined #lisp 2018-07-29T20:46:15Z trittweiler: In case of a vector, performance will be correlated to the sequential ordering of the keys (or rather there exists a performance-impacting order); that would only be rarely true for a perfect hash-table 2018-07-29T20:46:37Z jfb4```` joined #lisp 2018-07-29T20:47:06Z edgar-rft quit (Client Quit) 2018-07-29T20:47:43Z jfb4``` quit (Ping timeout: 256 seconds) 2018-07-29T20:47:52Z edgar-rft joined #lisp 2018-07-29T20:48:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-29T20:48:12Z edgar-rft quit (Remote host closed the connection) 2018-07-29T20:48:20Z vultyre joined #lisp 2018-07-29T20:48:55Z edgar-rft joined #lisp 2018-07-29T20:49:34Z edgar-rft quit (Remote host closed the connection) 2018-07-29T20:50:14Z edgar-rft joined #lisp 2018-07-29T20:50:42Z equwal: Method dispatch uses hash tables in SBCL. See SBCL code src/code/class.lisp and http://www2.parc.com/csl/groups/sda/publications/papers/Kiczales-Andreas-PCL/for-web.pdf 2018-07-29T20:51:17Z vultyre quit (Client Quit) 2018-07-29T20:51:38Z vultyre joined #lisp 2018-07-29T20:51:45Z Kundry_Wag quit (Remote host closed the connection) 2018-07-29T20:52:19Z Kundry_Wag joined #lisp 2018-07-29T20:54:25Z fikka joined #lisp 2018-07-29T20:54:26Z phoe: Method dispatch, yes, but we're talking slots. 2018-07-29T20:56:37Z Kundry_Wag quit (Ping timeout: 244 seconds) 2018-07-29T20:57:21Z equwal: phoe: Thanks for clearing that up. 2018-07-29T20:57:42Z Pixel_Outlaw joined #lisp 2018-07-29T20:59:18Z fikka quit (Ping timeout: 256 seconds) 2018-07-29T21:01:52Z loli joined #lisp 2018-07-29T21:02:16Z pjb: trittweiler: you're not thinking right. Your brain has been deformed by theorical computer scientists. The notion of time and space complexity don't mean anything in the real universe, since the real univers we're living in is FINITE in time and space. 2018-07-29T21:02:41Z pjb: Who care about asymptotic time complexity, when the universe will be dead in 15 billion years!?!? 2018-07-29T21:04:16Z pjb: Or when your computer has a memory limited to 32 GB (or 512 GB of GPU RAM and 32 TB of NVMe if you're lucky to have a DGX-2)? 2018-07-29T21:04:25Z fikka joined #lisp 2018-07-29T21:04:32Z pjb: When you're working with a finite memory, everything is O(1). 2018-07-29T21:05:46Z pjb: So, if O(.) doesn't mean anything, what means something? 2018-07-29T21:06:00Z pjb: The actual number of bytes used, the actual number of cycles used! 2018-07-29T21:08:05Z jmercouris joined #lisp 2018-07-29T21:09:22Z fikka quit (Ping timeout: 256 seconds) 2018-07-29T21:10:40Z equwal: (defun fib (n) (if (>= 2 n) 1 (+ (fib (1- n) (- n 2))))) 2018-07-29T21:10:40Z equwal: (fib 10000) will still take forever on that fancy machine of yours. 2018-07-29T21:10:40Z equwal: 2018-07-29T21:10:48Z j0ni joined #lisp 2018-07-29T21:11:43Z equwal: But if you memoize it with a hash table it becomes O(n) because hash tables take constant time to lookup. 2018-07-29T21:12:30Z equwal: s/(fib (1- n) (- n 2))/(fib (1- n)) (fib (- n 2))/ 2018-07-29T21:13:58Z equwal: Complexity analysis is an improvement over benchmarks any day. 2018-07-29T21:14:45Z fikka joined #lisp 2018-07-29T21:15:00Z TMA: if done on the code in the hot path 2018-07-29T21:16:49Z light2yellow quit (Quit: upgrading router firmware) 2018-07-29T21:16:52Z DonVlad quit (Ping timeout: 256 seconds) 2018-07-29T21:19:34Z fikka quit (Ping timeout: 256 seconds) 2018-07-29T21:19:39Z pjb: equwal: I'm sorry, but asymptotic analysis says nothing about (fib 10000). It only tells you about (fib n) when n->∞. 2018-07-29T21:20:00Z pjb: And the memory will be filled by n long before n reaches ∞. 2018-07-29T21:20:46Z pjb: equwal: for example, you will make a lot of assumptions about the actual timings of hash-table that are wrong, when you are running in a memory with several level of caches. 2018-07-29T21:21:51Z jfb4````` joined #lisp 2018-07-29T21:22:00Z pjb: aref is not O(1) when you have arrays bigger than a cache line. 2018-07-29T21:22:57Z jfb4```` quit (Ping timeout: 240 seconds) 2018-07-29T21:23:03Z meepdeew joined #lisp 2018-07-29T21:24:31Z equwal: It does. If (fib 40) takes 12 seconds on my machine, then a machine 10,000 times faster will take .0012 seconds. We can find out how long (fib 10000) takes by finding 0.0012(φ^9975) seconds, where φ is the golden ratio ~1.6. That is a really long time. 2018-07-29T21:24:44Z fikka joined #lisp 2018-07-29T21:25:10Z equwal: You can calculate estimates of time complexity from a single benchmark on any machine. 2018-07-29T21:25:14Z pjb: You are assuming that your asymptotic O formula applies on n<=10000. Nothing proves it. 2018-07-29T21:26:08Z v0|d: pjb: so how do you approach the complexity problem if you disregard bigOh? 2018-07-29T21:26:12Z light2yellow joined #lisp 2018-07-29T21:26:41Z v0|d: are there any theories which include the effect of cache levels? 2018-07-29T21:27:11Z pjb: v0|d: the point is that complexity theory is useless when you have finite space and time. 2018-07-29T21:27:37Z v0|d: Indeed. 2018-07-29T21:27:40Z pjb: And more precisely, big O, even big theta, since they're asymptotic, may be completely wrong for an n < some N. 2018-07-29T21:28:26Z pjb: So if you don't prove that your big O formula also apply for small n, you don't know anything. 2018-07-29T21:28:38Z pjb: Saying that hash-table are more efficient than p-list is merely wrong. 2018-07-29T21:28:39Z jfb4````` quit (Ping timeout: 244 seconds) 2018-07-29T21:29:02Z pjb: In clisp, plist are faster than hash-table up to 35 entries, in sbcl or ccl, up to 5 or 6 entries. 2018-07-29T21:29:20Z pjb: So the big O formula is dead wrong. 2018-07-29T21:29:22Z equwal: The thing is that for small n, efficiency doesn't matter anyway. 2018-07-29T21:29:29Z fikka quit (Ping timeout: 260 seconds) 2018-07-29T21:29:33Z pjb: Again, this is wrong! 2018-07-29T21:29:41Z pjb: Because you can have a lot of those small n! 2018-07-29T21:29:47Z equwal: Then n is large. 2018-07-29T21:30:03Z pjb: You are not thinking, you are just reproducing what you've been taught in school or in books. 2018-07-29T21:30:07Z pjb: Try to start thinking! 2018-07-29T21:30:11Z pjb: No. 2018-07-29T21:31:21Z pjb: (let ((n 0.0001) (m 1e30)) (* n m)) #| --> 1.0E+26 |# 2018-07-29T21:31:22Z jmercouris: If you have many small n, it does not mean n is large 2018-07-29T21:31:32Z jmercouris: consider a set of sets of sets 2018-07-29T21:31:35Z equwal: jmercouris: yeah oops. 2018-07-29T21:32:12Z equwal: More like if you have a lot of n, then you clearly assigned n to the wrong kind of step. 2018-07-29T21:32:29Z jmercouris: That is not true 2018-07-29T21:33:07Z equwal: What do you mean by lots of n pjb:? 2018-07-29T21:34:00Z pjb: lots of small objects. 2018-07-29T21:34:47Z v0|d: pjb: can you suggest reading on this? 2018-07-29T21:34:54Z v0|d: i would rlly like to readon it. 2018-07-29T21:35:00Z fikka joined #lisp 2018-07-29T21:35:07Z pjb: v0|d: THINK! 2018-07-29T21:35:19Z angavrilov quit (Remote host closed the connection) 2018-07-29T21:35:24Z pjb: It's incredible how people always need something to read, and can't think by themselves… 2018-07-29T21:35:28Z equwal: I think that you misunderstand big O. 2018-07-29T21:35:38Z jmercouris: No, I don't think so 2018-07-29T21:35:47Z pjb: Nope. big O doesn't say anything on small stuff. 2018-07-29T21:35:57Z equwal: This is true. 2018-07-29T21:36:12Z pjb: And when you have a lot of small stuff, you must not apply it on the small stuff, but on the lot! 2018-07-29T21:36:13Z no-defun-allowed: Yeah, O is maximum, o is minimum. 2018-07-29T21:36:56Z equwal: When you have a lot of small stuff going into an algorithm, you can put one unit of small stuff into n, and suddenly you have large n. 2018-07-29T21:37:30Z jmercouris: no-defun-allowed: no: https://stackoverflow.com/a/1364582/1699398 2018-07-29T21:37:32Z pjb: No. If you have a billion of small objects of 4 slots, adding one unit doesn't make 4 big! 2018-07-29T21:37:58Z pjb: And if you use hash-tables to store the 4 slot, you lose time and space. A lot of space, since it's multiplyed by a billion! 2018-07-29T21:39:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-29T21:40:06Z v0|d: pjb: i wish i can see you dlload gcc into ecl memory to improve compilation speed. 2018-07-29T21:42:35Z equwal: You lose some space. You save time because you don't have to iterate down the entire set. Average time to find an object in any list: n/2. In a sorted array: log base 2 of n. In a hash table: also log base 2 of n, since a hash table is a sort of cheat to sort unsortable data. 2018-07-29T21:43:26Z equwal: Spurning mathematics is foolhardy at best. 2018-07-29T21:44:53Z equwal: After some big O we get the close-enough values O(n) O(log n) O(log n) respectively. 2018-07-29T21:45:02Z fikka joined #lisp 2018-07-29T21:45:26Z v0|d: equwal: there is BQP now named after BPP. 2018-07-29T21:45:33Z v0|d: its all over the place. 2018-07-29T21:47:20Z vultyre quit (Remote host closed the connection) 2018-07-29T21:47:45Z vultyre joined #lisp 2018-07-29T21:49:38Z vultyre quit (Max SendQ exceeded) 2018-07-29T21:50:07Z vultyre joined #lisp 2018-07-29T21:50:09Z fikka quit (Ping timeout: 264 seconds) 2018-07-29T21:51:26Z EvW1 quit (Ping timeout: 256 seconds) 2018-07-29T21:52:55Z equwal: Well Quantum computing throws a wrench in my previous claims. Shor's algorithm could find the object with O(sqrt(n)), which is still worse than O(log n) 2018-07-29T21:54:26Z equwal: O(n) -> O(sqrt(n)). I don't know enough about QC to tell you how fast merge-sort is in a quantum computer, maybe constant? 2018-07-29T21:56:13Z Kundry_Wag joined #lisp 2018-07-29T21:56:24Z vultyre quit (Quit: Leaving) 2018-07-29T21:58:26Z equwal: For the uninitiated: 2018-07-29T21:58:27Z equwal: https://complexityzoo.uwaterloo.ca/Complexity_Zoo 2018-07-29T21:58:31Z phoe: the mention of quantum computing actually makes me say what I wanted to say an hour ago 2018-07-29T21:58:57Z phoe gently nudges the discussion towards #lispcafe 2018-07-29T22:02:17Z xrash quit (Remote host closed the connection) 2018-07-29T22:05:07Z fikka joined #lisp 2018-07-29T22:09:37Z fikka quit (Ping timeout: 248 seconds) 2018-07-29T22:13:59Z pjb: equwal: you've made a mistake confusing n and m. 2018-07-29T22:14:10Z pjb: n was the size of the objects, m was their number. 2018-07-29T22:14:31Z equwal: Well s/n/m/ 2018-07-29T22:14:35Z pjb: equwal: again, the typical error of people who don't understand O(n) and use n for everything. 2018-07-29T22:15:20Z light2yellow quit (Quit: light2yellow) 2018-07-29T22:15:28Z pjb: I never said that O for m wasn't interesting (we have m>billions), just that it may be still irrelevant, since m is not >> billions, just > billions. 2018-07-29T22:15:46Z pjb: But I said that O was irrelevant to n which is << even to 1000! 2018-07-29T22:23:35Z random-nick quit (Ping timeout: 240 seconds) 2018-07-29T22:24:27Z fourier quit (Ping timeout: 240 seconds) 2018-07-29T22:25:25Z fikka joined #lisp 2018-07-29T22:29:27Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-29T22:30:09Z fikka quit (Ping timeout: 260 seconds) 2018-07-29T22:32:27Z Neil__ joined #lisp 2018-07-29T22:34:49Z pagnol quit (Ping timeout: 260 seconds) 2018-07-29T22:35:55Z fikka joined #lisp 2018-07-29T22:37:36Z nymphet joined #lisp 2018-07-29T22:37:46Z drmeister: Hello lispers. I'm debugging stuff in Clasp's compiler and all of a sudden I'm getting trace output that looks like this. 2018-07-29T22:38:06Z drmeister: https://www.irccloud.com/pastebin/AVwSqB8a/ 2018-07-29T22:38:25Z drmeister: The #1=#1# is driving me nuts - any ideas what might be causing that? 2018-07-29T22:38:44Z jmercouris quit (Remote host closed the connection) 2018-07-29T22:38:51Z drmeister: It's not everything - just the stuff I want to see. 2018-07-29T22:39:29Z drmeister: I checked - there is no *print-trace-arguments-in-a-completely-useless-way* special variable. 2018-07-29T22:40:34Z antoszka: isn't that plain old *print-circle*? 2018-07-29T22:40:39Z fikka quit (Ping timeout: 260 seconds) 2018-07-29T22:40:56Z antoszka: that's carried over from wherever 2018-07-29T22:41:27Z v0|d: drmeister: optimize (debug 3) ? 2018-07-29T22:41:40Z drmeister: https://www.irccloud.com/pastebin/2EYAx3ea/ 2018-07-29T22:41:55Z drmeister: It's arguments that are lists that are doing this. 2018-07-29T22:42:47Z drmeister: *print-circle* --> NIL 2018-07-29T22:42:49Z pjb: #1=#1# is a bug. 2018-07-29T22:43:06Z kenster joined #lisp 2018-07-29T22:43:08Z pjb: Notably, having TWO #1= #1= in the same sexp is a bug. 2018-07-29T22:43:15Z pjb: in the printer. 2018-07-29T22:43:30Z drmeister: Alright - a bug in the printer (sigh) - ok - thank you. 2018-07-29T22:43:57Z drmeister: Right now I need a bug in the printer like I need a hole in the head. 2018-07-29T22:44:23Z v0|d: umm 2018-07-29T22:44:57Z v0|d: lets says a is a list which cdr points to itself. then (some-fun a a) would print just like this, no? 2018-07-29T22:45:09Z pjb: #1=(a . #1#) 2018-07-29T22:45:54Z fikka joined #lisp 2018-07-29T22:45:55Z v0|d: hm then it might be a boxed type whose descriptor points to itself. 2018-07-29T22:47:28Z scymtym: #1=#1# could be a bad pprint dispatch entry. but two #1=#1# in a row seems like a bug 2018-07-29T22:48:49Z pierpal quit (Ping timeout: 260 seconds) 2018-07-29T22:49:13Z pierpa joined #lisp 2018-07-29T22:50:48Z fikka quit (Ping timeout: 244 seconds) 2018-07-29T22:54:34Z drmeister: The trace facility binds T to *print-circle* - that's why changing it has no effect. When I change the code to bind NIL to *print-circle* then the arguments print - but it's unsafe 2018-07-29T22:56:29Z Ven`` joined #lisp 2018-07-29T22:58:34Z pjb: drmeister: also, you may avoid lisp printing operators, and use your own code to print those data. 2018-07-29T22:58:34Z Ven`` quit (Read error: No route to host) 2018-07-29T22:59:44Z pjb: eg. cf. com.informatimago.common-lisp.picture.cons-to-ascii:print-identified-conses 2018-07-29T23:00:01Z drmeister: What is that? 2018-07-29T23:02:33Z pjb: https://github.com/informatimago/lisp/blob/3f09f5d9541a197724e171ef370de54647fe5115/common-lisp/picture/cons-to-ascii.lisp#L412 2018-07-29T23:02:52Z no-defun-allowed: ew, java package names 2018-07-29T23:03:04Z Kundry_Wag joined #lisp 2018-07-29T23:03:10Z pjb: no-defun-allowed: you prefer name collisions, like clon or cl-json? 2018-07-29T23:03:59Z no-defun-allowed: "creative naming" usually works 2018-07-29T23:04:09Z no-defun-allowed: also why the heck would you use two libraries which do the same thing? 2018-07-29T23:04:26Z pjb: no-defun-allowed: the several occurences of name collisions proves that it doesn't usually work. 2018-07-29T23:04:31Z Ven`` joined #lisp 2018-07-29T23:04:40Z pjb: TWO? Three or Six rather! 2018-07-29T23:05:13Z pjb: You find more often 6 CL libraries to do something than 2… 2018-07-29T23:05:46Z pjb: for general stuff, there are cesarum, alexandria, serapum, ccloc, and yet another half a dozen of them! 2018-07-29T23:06:02Z fikka joined #lisp 2018-07-29T23:06:08Z Josh_2` joined #lisp 2018-07-29T23:07:14Z mange joined #lisp 2018-07-29T23:07:24Z fourier joined #lisp 2018-07-29T23:07:45Z Josh_2 quit (Ping timeout: 248 seconds) 2018-07-29T23:07:57Z scymtym: drmeister: is each argument printed with an independent PRIN{T,C,1} call? in that case #1=#1# itself is a problem but not necessarily the fact that it appears more than once. did you check whether there might be a bad pprint dispatch entry? 2018-07-29T23:08:55Z drmeister: scymtym: I'm not sure how to debug a bad pprint dispatch entry. 2018-07-29T23:09:03Z no-defun-allowed: pick a library and stick with it 2018-07-29T23:09:04Z Josh_2` quit (Remote host closed the connection) 2018-07-29T23:09:06Z drmeister: Re prin{t,c,1}... 2018-07-29T23:09:33Z pjb: no-defun-allowed: of course, I choose com.informatimago.common-lisp.cesarum, and I stick to it. 2018-07-29T23:09:54Z pjb: Since it's the oldest (apart perhaps ccloc), and the one I'm the author of. 2018-07-29T23:10:01Z no-defun-allowed: |: 2018-07-29T23:10:23Z drmeister: https://www.irccloud.com/pastebin/JsmkGpfQ/ 2018-07-29T23:10:35Z drmeister: Looks like I got a problem. 2018-07-29T23:10:44Z pjb: Yes, it can't print lists. 2018-07-29T23:10:56Z pjb: But you can still print (cons list)… 2018-07-29T23:10:57Z fikka quit (Ping timeout: 244 seconds) 2018-07-29T23:11:07Z pjb: ie use com.informatimago.common-lisp.picture.cons-to-ascii:print-identified-conses 2018-07-29T23:11:40Z drmeister: pjb: I'm debugging the clasp bootstrapping process - I don't think I want to use other libraries 2018-07-29T23:12:02Z pjb: whatever. 2018-07-29T23:12:05Z drmeister: This was working up until recently. 2018-07-29T23:12:25Z drmeister: What I mean is I appreciate the feedback - I didn't provide enough context. 2018-07-29T23:12:54Z pjb: It's a single function, it's AGPL3, you can always copy and paste it into your repl to print your stuff and debug. 2018-07-29T23:15:17Z drmeister: What will it tell me? It goes into an infinite loop printing. 2018-07-29T23:15:20Z drmeister: https://www.irccloud.com/pastebin/x1pYASI8/ 2018-07-29T23:15:35Z drmeister: *print-circle* 2018-07-29T23:15:42Z scymtym: drmeister: does binding *PRINT-PRETTY* to nil in your PRIN{1,C,T} test change anything? 2018-07-29T23:15:55Z fourier quit (Read error: Connection reset by peer) 2018-07-29T23:15:57Z pjb: So you know that printing fails on a circular structure. 2018-07-29T23:16:28Z drmeister: No - I blindly pasted the example into the repl and it had a typo *print-circles* 2018-07-29T23:17:57Z drmeister: https://www.irccloud.com/pastebin/RV75koPe/ 2018-07-29T23:19:17Z jasmith quit (Quit: Leaving) 2018-07-29T23:20:24Z drmeister: What does this tell me? 2018-07-29T23:22:49Z makomo quit (Quit: WeeChat 2.0.1) 2018-07-29T23:26:20Z fikka joined #lisp 2018-07-29T23:27:27Z Kaisyu7 quit (Quit: ERC (IRC client for Emacs 25.3.2)) 2018-07-29T23:28:56Z Kaisyu7 joined #lisp 2018-07-29T23:31:24Z fikka quit (Ping timeout: 260 seconds) 2018-07-29T23:34:25Z Kaisyu joined #lisp 2018-07-29T23:36:11Z ebrasca quit (Ping timeout: 268 seconds) 2018-07-29T23:36:39Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-29T23:36:50Z fikka joined #lisp 2018-07-29T23:37:19Z holycow joined #lisp 2018-07-29T23:37:47Z holycow quit (Client Quit) 2018-07-29T23:41:21Z fikka quit (Ping timeout: 248 seconds) 2018-07-29T23:44:35Z peccu4 quit (Ping timeout: 240 seconds) 2018-07-29T23:49:59Z dtornabene joined #lisp 2018-07-29T23:51:44Z holycow joined #lisp 2018-07-29T23:51:46Z holycow: hi all 2018-07-29T23:52:04Z holycow: does anyone know how to start up shinmeras parasol app as found here: https://github.com/Shinmera/parasol ? 2018-07-29T23:53:36Z holycow: oh never mind 2018-07-29T23:53:38Z holycow: figured it out 2018-07-29T23:56:44Z fikka joined #lisp 2018-07-29T23:56:56Z vultyre joined #lisp 2018-07-30T00:01:15Z earl-ducaine joined #lisp 2018-07-30T00:01:42Z earl-ducaine quit (Remote host closed the connection) 2018-07-30T00:01:46Z fikka quit (Ping timeout: 256 seconds) 2018-07-30T00:02:28Z holycow: thanks 2018-07-30T00:02:30Z holycow quit (Quit: leaving) 2018-07-30T00:02:50Z Kevslinger joined #lisp 2018-07-30T00:03:36Z lemo joined #lisp 2018-07-30T00:07:12Z fikka joined #lisp 2018-07-30T00:10:08Z lemo quit (Changing host) 2018-07-30T00:10:08Z lemo joined #lisp 2018-07-30T00:11:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-30T00:12:54Z holycow joined #lisp 2018-07-30T00:16:30Z X-Scale quit (Ping timeout: 256 seconds) 2018-07-30T00:17:17Z fikka joined #lisp 2018-07-30T00:20:47Z vultyre quit (Read error: Connection reset by peer) 2018-07-30T00:21:57Z vultyre joined #lisp 2018-07-30T00:22:26Z fikka quit (Ping timeout: 268 seconds) 2018-07-30T00:27:15Z Arcaelyx_ quit (Read error: Connection reset by peer) 2018-07-30T00:28:02Z troydm quit (Quit: What is Hope? That all of your wishes and all of your dreams come true? To turn back time because things were not supposed to happen like that (C) Rau Le Creuset) 2018-07-30T00:29:25Z smurfrobot joined #lisp 2018-07-30T00:30:16Z troydm joined #lisp 2018-07-30T00:33:49Z smurfrobot quit (Ping timeout: 260 seconds) 2018-07-30T00:35:21Z BitPuffin quit (Remote host closed the connection) 2018-07-30T00:37:17Z CrazyEddy quit (Ping timeout: 276 seconds) 2018-07-30T00:37:24Z fikka joined #lisp 2018-07-30T00:41:09Z j0ni quit (Ping timeout: 264 seconds) 2018-07-30T00:41:51Z ebrasca joined #lisp 2018-07-30T00:41:53Z fikka quit (Ping timeout: 244 seconds) 2018-07-30T00:42:10Z mejja quit (Quit: mejja) 2018-07-30T00:44:20Z meepdeew quit (Remote host closed the connection) 2018-07-30T00:44:38Z biopandemic quit (Quit: Quit.) 2018-07-30T00:45:06Z biopandemic joined #lisp 2018-07-30T00:52:02Z CrazyEddy joined #lisp 2018-07-30T00:52:45Z Kundry_Wag joined #lisp 2018-07-30T00:53:50Z karlosz quit (Quit: karlosz) 2018-07-30T00:55:23Z X-Scale joined #lisp 2018-07-30T00:56:33Z fikka joined #lisp 2018-07-30T00:58:28Z pierpal joined #lisp 2018-07-30T00:58:39Z karlosz joined #lisp 2018-07-30T00:59:14Z karlosz quit (Remote host closed the connection) 2018-07-30T00:59:30Z karlosz joined #lisp 2018-07-30T01:00:00Z Ven`` quit (Ping timeout: 256 seconds) 2018-07-30T01:00:38Z karlosz quit (Client Quit) 2018-07-30T01:01:16Z fikka quit (Ping timeout: 256 seconds) 2018-07-30T01:01:51Z karlosz joined #lisp 2018-07-30T01:05:19Z pierpal quit (Ping timeout: 260 seconds) 2018-07-30T01:07:00Z fikka joined #lisp 2018-07-30T01:07:01Z vultyre quit (Quit: Leaving) 2018-07-30T01:07:22Z meepdeew joined #lisp 2018-07-30T01:08:58Z vultyre joined #lisp 2018-07-30T01:11:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-30T01:13:27Z Ven`` joined #lisp 2018-07-30T01:14:24Z holycow quit (Quit: Lost terminal) 2018-07-30T01:15:06Z WhoTookMyName joined #lisp 2018-07-30T01:16:04Z dddddd quit (Remote host closed the connection) 2018-07-30T01:16:53Z equwal quit (Ping timeout: 265 seconds) 2018-07-30T01:17:01Z fikka joined #lisp 2018-07-30T01:21:40Z fikka quit (Ping timeout: 244 seconds) 2018-07-30T01:22:12Z meepdeew quit (Remote host closed the connection) 2018-07-30T01:24:00Z skapata quit (Remote host closed the connection) 2018-07-30T01:27:29Z Kundry_Wag quit (Remote host closed the connection) 2018-07-30T01:28:06Z Kundry_Wag joined #lisp 2018-07-30T01:30:27Z pierpal joined #lisp 2018-07-30T01:32:18Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-30T01:32:18Z papachan quit (Quit: Leaving) 2018-07-30T01:32:50Z Kundry_Wag joined #lisp 2018-07-30T01:32:53Z dtornabene quit (Quit: Leaving) 2018-07-30T01:37:06Z fikka joined #lisp 2018-07-30T01:41:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-30T01:43:38Z Patternmaster quit (Quit: leaving) 2018-07-30T01:45:45Z EvW joined #lisp 2018-07-30T01:46:18Z loli quit (Ping timeout: 268 seconds) 2018-07-30T01:47:38Z fikka joined #lisp 2018-07-30T01:50:05Z EvW quit (Ping timeout: 244 seconds) 2018-07-30T01:52:01Z fikka quit (Ping timeout: 248 seconds) 2018-07-30T01:53:05Z Ven`` quit (Ping timeout: 268 seconds) 2018-07-30T01:54:20Z Ven`` joined #lisp 2018-07-30T01:58:47Z nymphet is now known as loli 2018-07-30T02:02:32Z Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-30T02:02:59Z meepdeew joined #lisp 2018-07-30T02:05:13Z Neil__ quit (Quit: Page closed) 2018-07-30T02:07:34Z fikka joined #lisp 2018-07-30T02:07:44Z EvW1 joined #lisp 2018-07-30T02:12:18Z paul0 joined #lisp 2018-07-30T02:12:40Z fikka quit (Ping timeout: 256 seconds) 2018-07-30T02:15:01Z meepdeew quit (Remote host closed the connection) 2018-07-30T02:17:59Z fikka joined #lisp 2018-07-30T02:19:57Z smurfrobot joined #lisp 2018-07-30T02:22:11Z Kundry_Wag quit (Remote host closed the connection) 2018-07-30T02:23:18Z fikka quit (Ping timeout: 268 seconds) 2018-07-30T02:25:09Z drmeister: Is there any issue with ambiguous situations like (defun foo (x x x) (declare (ignore x)) ...)? 2018-07-30T02:26:16Z drmeister: When compiling things like this, if the lambda-list has a variable multiple times - the declare can't uniquely specify which bindings have declarations attached to them. 2018-07-30T02:30:43Z mfiano: That is not allowed anyway 2018-07-30T02:31:17Z edgar-rft quit (Quit: Leaving) 2018-07-30T02:32:08Z meepdeew joined #lisp 2018-07-30T02:34:17Z meepdeew quit (Client Quit) 2018-07-30T02:35:51Z pfdietz_: I'm looking in the CLHS and I'm not seeing where it prohibits lambda list vars from have the same names. 2018-07-30T02:36:40Z mfiano: pfdietz_: Section 3.1.1 states, "A single name can simultaneously have more than one associated binding per environment, but can have only one associated binding per namespace.". So, (defun foo (x x ...) ...) should be an error. 2018-07-30T02:38:04Z fikka joined #lisp 2018-07-30T02:40:41Z smurfrobot quit (Remote host closed the connection) 2018-07-30T02:42:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-30T02:43:02Z anewuser joined #lisp 2018-07-30T02:48:30Z fikka joined #lisp 2018-07-30T02:50:35Z eminhi joined #lisp 2018-07-30T02:51:26Z EvW1 quit (Ping timeout: 260 seconds) 2018-07-30T02:53:09Z fikka quit (Ping timeout: 264 seconds) 2018-07-30T02:55:52Z eschatologist quit (Quit: ZNC 1.6.6+deb1 - http://znc.in) 2018-07-30T02:56:45Z eschatologist joined #lisp 2018-07-30T02:58:46Z shka1 joined #lisp 2018-07-30T03:08:29Z fikka joined #lisp 2018-07-30T03:12:30Z sabrac joined #lisp 2018-07-30T03:13:52Z fikka quit (Ping timeout: 268 seconds) 2018-07-30T03:19:24Z Pixel_Outlaw quit (Quit: Leaving) 2018-07-30T03:21:11Z thinking joined #lisp 2018-07-30T03:21:48Z loli1 joined #lisp 2018-07-30T03:24:22Z renzhi joined #lisp 2018-07-30T03:24:37Z pierpa quit (Quit: Page closed) 2018-07-30T03:25:05Z Khisanth quit (Ping timeout: 240 seconds) 2018-07-30T03:25:24Z thinking: Hey everyone. I have been thinking about the various polymorphisms, from parametric to ad-hoc to subtyping the ad-hoc and other mixtures, etc. and it's rather trippy for my brain at this point. How would you describe clos if you had to categorize it under a polymorphism wiki page with CL as one example lang? 2018-07-30T03:26:38Z light2yellow joined #lisp 2018-07-30T03:28:48Z fikka joined #lisp 2018-07-30T03:30:40Z mfiano: CLOS generic functions are a form of parametric polymorphism with some restrictions. All methods must have the same function signature, and you cannot dispatch on types, only classes and anything comparable with EQL. But it makes up for these shortcomings in many ways. CLOS is incredibly powerful. 2018-07-30T03:33:16Z light2yellow quit (Quit: light2yellow) 2018-07-30T03:33:32Z smurfrobot joined #lisp 2018-07-30T03:33:58Z fikka quit (Ping timeout: 264 seconds) 2018-07-30T03:36:33Z edgar-rft joined #lisp 2018-07-30T03:37:28Z vultyre quit (Quit: Leaving) 2018-07-30T03:37:39Z shka1: good morning 2018-07-30T03:38:30Z Khisanth joined #lisp 2018-07-30T03:38:46Z smurfrobot quit (Ping timeout: 264 seconds) 2018-07-30T03:40:23Z Kevslinger quit (Quit: Connection closed for inactivity) 2018-07-30T03:40:42Z thinking: Thanks mfiano 2018-07-30T03:43:16Z holycow joined #lisp 2018-07-30T03:48:54Z dented42 joined #lisp 2018-07-30T03:49:08Z fikka joined #lisp 2018-07-30T03:52:34Z smasta quit (Ping timeout: 260 seconds) 2018-07-30T03:52:36Z charh quit (Quit: quit) 2018-07-30T03:52:55Z lemo_ joined #lisp 2018-07-30T03:54:21Z fikka quit (Ping timeout: 264 seconds) 2018-07-30T03:54:57Z lemo quit (Ping timeout: 240 seconds) 2018-07-30T03:55:07Z lemo_ is now known as lemo 2018-07-30T03:59:37Z pierpal quit (Quit: Poof) 2018-07-30T03:59:45Z thinking quit 2018-07-30T03:59:57Z pierpal joined #lisp 2018-07-30T04:09:25Z fikka joined #lisp 2018-07-30T04:14:30Z fikka quit (Ping timeout: 256 seconds) 2018-07-30T04:18:05Z karlosz quit (Ping timeout: 240 seconds) 2018-07-30T04:19:35Z anewuser quit (Quit: anewuser) 2018-07-30T04:19:50Z fikka joined #lisp 2018-07-30T04:24:34Z fikka quit (Ping timeout: 244 seconds) 2018-07-30T04:26:16Z holycow quit (Quit: Lost terminal) 2018-07-30T04:27:44Z logicmoo quit (Ping timeout: 260 seconds) 2018-07-30T04:39:50Z fikka joined #lisp 2018-07-30T04:44:43Z fikka quit (Ping timeout: 244 seconds) 2018-07-30T04:44:50Z beach: Good morning everyone! 2018-07-30T04:50:14Z jack_rabbit joined #lisp 2018-07-30T04:50:22Z skapata joined #lisp 2018-07-30T04:52:47Z kenster: Hey how do I define a generic for a method that will then be defined as an accessor in defclass? 2018-07-30T04:52:58Z kenster: (defgeneric ptr (self)) 2018-07-30T04:53:06Z kenster: (ptr :accessor ptr :initarg :ptr) 2018-07-30T04:53:20Z kenster: attempt to add the method 2018-07-30T04:53:21Z beach: kenster: (defgeneric name (x)) (defgeneric (setf name) (new-value x)) 2018-07-30T04:53:22Z kenster: #) {1004BEBC53}> 2018-07-30T04:53:24Z kenster: to the generic function 2018-07-30T04:53:25Z kenster: #; 2018-07-30T04:53:27Z kenster: but the method and generic function differ in whether they accept 2018-07-30T04:53:28Z kenster: &REST or &KEY arguments. 2018-07-30T04:54:25Z kenster: ah okay so the problem is something else then 2018-07-30T04:54:27Z kenster: nvm 2018-07-30T04:54:42Z pagnol joined #lisp 2018-07-30T04:54:51Z beach: kenster: The CFFI-UTILS prefix makes me nervous. 2018-07-30T04:54:56Z beach: Is that really yours? 2018-07-30T04:57:08Z kenster: what do you mean is it mine? 2018-07-30T04:57:31Z beach: It sounded like you are defining your own class and your own generic function. No? 2018-07-30T04:57:37Z kenster: yea 2018-07-30T04:58:07Z beach: And you are defining it in the package CFFI-UTILS? And the name is NEW? 2018-07-30T04:58:18Z kenster: yea 2018-07-30T04:58:32Z beach: OK. 2018-07-30T04:59:03Z pagnol quit (Client Quit) 2018-07-30T04:59:29Z beach: If it is a slot reader or a slot writer, it does not have any &rest or &key arguments. 2018-07-30T04:59:51Z beach: So it looks like you are giving one of those to your DEFGENERIC. 2018-07-30T05:00:00Z kenster: yeah I was reading the error wrongly, it was a different function that isn't an accessor, my bad 2018-07-30T05:00:11Z fikka joined #lisp 2018-07-30T05:05:09Z fikka quit (Ping timeout: 264 seconds) 2018-07-30T05:05:13Z kenster: https://github.com/kennymalac/simple-content-host/blob/master/src/program/cffi-utils.lisp#L21 2018-07-30T05:05:54Z kenster: I was wondering if there was a way to rid that append in (append '(,c-class-name) ,params)) on line 41 2018-07-30T05:05:54Z beach: kenster: The new value of the slot is the first parameter to the SETF function. 2018-07-30T05:06:04Z loli quit (Ping timeout: 256 seconds) 2018-07-30T05:06:14Z loli1 quit (Ping timeout: 260 seconds) 2018-07-30T05:06:24Z kenster: right 2018-07-30T05:06:35Z beach: Maybe that's what it is saying. I cant figure out why you don't have a SELF in the SETF function. 2018-07-30T05:06:48Z beach: And why do you call it SELF in the PTR function? 2018-07-30T05:06:49Z kenster: no I fixed the error already 2018-07-30T05:06:59Z kenster: that's why I saiid nvm 2018-07-30T05:07:04Z kenster: sorry if I wasn't clear 2018-07-30T05:07:11Z beach: But you still posted this link. 2018-07-30T05:07:21Z beach: FOO is not such a great parameter name. 2018-07-30T05:07:27Z kenster: I was just asking about the append 2018-07-30T05:07:54Z kenster: yeah I should have put new-value, oops 2018-07-30T05:08:26Z beach: Yes, apply takes a sequence of arguments and the last one is the list of remaining ones. 2018-07-30T05:08:56Z kenster: oh 2018-07-30T05:08:59Z kenster: thx 2018-07-30T05:09:04Z beach: (apply #'make-instance ',c-class-name ,params) 2018-07-30T05:09:10Z beach: clhs apply 2018-07-30T05:09:10Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_apply.htm 2018-07-30T05:09:16Z beach: ywlcm 2018-07-30T05:09:28Z kenster: ywlcm? 2018-07-30T05:09:35Z beach: You said thx. 2018-07-30T05:09:48Z kenster: oh lol 2018-07-30T05:09:52Z shka1: https://common-lisp.net/project/mcclim/tag/tutorial.html 2018-07-30T05:09:53Z kenster: didn't read that right XD 2018-07-30T05:09:58Z shka1: is this tutorial up to date? 2018-07-30T05:10:07Z loli joined #lisp 2018-07-30T05:10:19Z shka1: i cos-animation does not seem to work 2018-07-30T05:10:26Z beach: kenster: You could use Emacs abbrevs to have thx expand to "thank you very much"for instance. 2018-07-30T05:10:45Z kenster: I don't use irc in emacs 2018-07-30T05:10:50Z kenster: but that'd be funny, yeah 2018-07-30T05:11:06Z beach: So you are using the wrong IRC client if it doesn't let you do abbrevs. 2018-07-30T05:11:56Z loli1 joined #lisp 2018-07-30T05:12:05Z kenster: I'm pretty sure weechat does, yeah. I use konversation for freenode because it's inconveinent to jumpnetwork on znc all the time, though I guess I could connect to znc/freenode, znc/rizon, etc. 2018-07-30T05:12:21Z jack_rabbit quit (Ping timeout: 264 seconds) 2018-07-30T05:12:25Z JuanDaugherty joined #lisp 2018-07-30T05:12:53Z jack_rabbit joined #lisp 2018-07-30T05:20:27Z fikka joined #lisp 2018-07-30T05:21:22Z shka1: this tutorial seems to eventually call CLIM:INVOKE-UPDATING-OUTPUT but there is no method available for arguments passed 2018-07-30T05:21:28Z shka1 is confused 2018-07-30T05:22:08Z beach: shka1: Try asking in #clim. Maybe jackdaniel or loke could help you. 2018-07-30T05:22:39Z beach: shka1: I could help you, but I am dealing with some other emergencies right now. 2018-07-30T05:22:39Z pierpal quit (Read error: Connection reset by peer) 2018-07-30T05:22:40Z shka1: i need to go to work in 30 minutes, i will ask in the evening 2018-07-30T05:22:49Z beach: Good plan. 2018-07-30T05:23:00Z shka1: beach: hopefully everything will turn good for you! 2018-07-30T05:23:36Z beach: Yeah, well, my day had a bad start. But it will get better. Thanks. 2018-07-30T05:25:19Z fikka quit (Ping timeout: 265 seconds) 2018-07-30T05:27:07Z shka1: btw, i like how code is highlighted at common-lisp.net 2018-07-30T05:27:11Z shka1: it looks cool 2018-07-30T05:28:54Z Inline quit (Read error: Connection reset by peer) 2018-07-30T05:30:54Z fikka joined #lisp 2018-07-30T05:34:06Z pierpal joined #lisp 2018-07-30T05:35:59Z fikka quit (Ping timeout: 260 seconds) 2018-07-30T05:37:09Z ofi joined #lisp 2018-07-30T05:40:23Z flamebeard joined #lisp 2018-07-30T05:40:54Z fikka joined #lisp 2018-07-30T05:41:34Z loke: shkaIs ther code on common-lisp.net? 2018-07-30T05:41:56Z dented42 quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-30T05:43:25Z shka1: loke: https://common-lisp.net/project/mcclim/tag/tutorial.html 2018-07-30T05:45:41Z fikka quit (Ping timeout: 244 seconds) 2018-07-30T05:50:47Z vlatkoB joined #lisp 2018-07-30T05:55:33Z shka1 quit (Ping timeout: 264 seconds) 2018-07-30T06:01:05Z fikka joined #lisp 2018-07-30T06:04:00Z shka1 joined #lisp 2018-07-30T06:04:48Z chens joined #lisp 2018-07-30T06:05:37Z charh joined #lisp 2018-07-30T06:06:00Z fikka quit (Ping timeout: 256 seconds) 2018-07-30T06:08:17Z charh quit (Client Quit) 2018-07-30T06:09:36Z charh joined #lisp 2018-07-30T06:11:33Z fikka joined #lisp 2018-07-30T06:16:34Z fikka quit (Ping timeout: 264 seconds) 2018-07-30T06:22:39Z eminhi quit (Ping timeout: 260 seconds) 2018-07-30T06:23:09Z dented42 joined #lisp 2018-07-30T06:23:55Z itruslove quit (Remote host closed the connection) 2018-07-30T06:23:55Z giraffe quit (Remote host closed the connection) 2018-07-30T06:24:19Z dmiles joined #lisp 2018-07-30T06:27:11Z nowhere_man quit (Remote host closed the connection) 2018-07-30T06:27:32Z nowhere_man joined #lisp 2018-07-30T06:28:14Z jinkies quit (Ping timeout: 256 seconds) 2018-07-30T06:30:22Z shka1 quit (Ping timeout: 256 seconds) 2018-07-30T06:31:34Z fikka joined #lisp 2018-07-30T06:33:19Z itruslove joined #lisp 2018-07-30T06:36:17Z fikka quit (Ping timeout: 248 seconds) 2018-07-30T06:37:19Z giraffe joined #lisp 2018-07-30T06:39:22Z eminhi joined #lisp 2018-07-30T06:41:15Z skapata quit (Remote host closed the connection) 2018-07-30T06:43:35Z ofi quit (Ping timeout: 240 seconds) 2018-07-30T06:51:49Z fikka joined #lisp 2018-07-30T06:54:36Z ofi joined #lisp 2018-07-30T06:57:31Z DonVlad joined #lisp 2018-07-30T07:20:06Z eminhi quit (Quit: leaving) 2018-07-30T07:25:51Z fikka quit (Ping timeout: 240 seconds) 2018-07-30T07:27:18Z Cymew joined #lisp 2018-07-30T07:29:30Z smurfrobot joined #lisp 2018-07-30T07:31:31Z fikka joined #lisp 2018-07-30T07:36:06Z smurfrobot quit (Ping timeout: 260 seconds) 2018-07-30T07:37:12Z igemnace joined #lisp 2018-07-30T07:40:07Z dented42 quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-30T07:40:33Z smurfrobot joined #lisp 2018-07-30T07:44:00Z fikka quit (Ping timeout: 245 seconds) 2018-07-30T07:52:44Z loli1 quit (Ping timeout: 265 seconds) 2018-07-30T08:01:38Z newbie quit (Read error: Connection reset by peer) 2018-07-30T08:02:38Z dddddd joined #lisp 2018-07-30T08:08:32Z mange quit (Ping timeout: 256 seconds) 2018-07-30T08:09:15Z WhoTookMyName quit (Ping timeout: 268 seconds) 2018-07-30T08:13:33Z raynold quit (Quit: Connection closed for inactivity) 2018-07-30T08:16:11Z JuanDaugherty quit (Quit: Exeunt) 2018-07-30T08:18:53Z nirved joined #lisp 2018-07-30T08:19:01Z angavrilov joined #lisp 2018-07-30T08:28:09Z fikka joined #lisp 2018-07-30T08:34:17Z beach: Talk to me about the advantage of allocating object with dynamic extent on the stack, please. I wrote this to clear my thoughts: http://metamodular.com/dynamic-extent.pdf The real discussion starts around the middle of the second page (page 64) with "It is entirely possible..." and ends after the first line of the fourth page, so the entire thing is really only 1.5 pages. 2018-07-30T08:37:56Z daniel-s joined #lisp 2018-07-30T08:40:58Z smurfrobot quit (Remote host closed the connection) 2018-07-30T08:45:48Z lieven: on the basic issue, I suspect that with "modern" GC techniques, simply ignoring the declaration is fine 2018-07-30T08:46:09Z fikka quit (Ping timeout: 260 seconds) 2018-07-30T08:46:31Z beach: That would be my guess. But I am open to arguments either way. 2018-07-30T08:46:51Z lieven: as a nitpick, I'm not convinced by your footnote on p. 64 that if the two functions are in the same compilation unit, it is guaranteed that the two will be redefined at the same time 2018-07-30T08:47:14Z lieven: somewhere the program can always call COMPILE to redefine stuff 2018-07-30T08:47:17Z smurfrobot joined #lisp 2018-07-30T08:48:43Z beach: lieven: Yes, I totally agree. The Common Lisp HyperSpec allows for this assumption, but it prevents things like C-c C-c in SLIME from working, so I don't intend to take advantage of it. 2018-07-30T08:49:51Z lieven: well, I'm also not sure if you do this, barring any not-inline declarations, you're not obliged to honour your previous assertions 2018-07-30T08:50:56Z beach: Too many negations in that phrase for me. Can you give an example instead? 2018-07-30T08:51:18Z lieven: if you have declared NOT-INLINE, the compiler shouldn't assume too much 2018-07-30T08:51:39Z beach: Correct. The Common Lisp HyperSpec is clear about it I think. 2018-07-30T08:51:43Z hph^ quit (Read error: No route to host) 2018-07-30T08:51:55Z lieven: if the compiler is allowed to inline, it could reasonably expect that any redefinition keeps the previous semantics wrt declarations 2018-07-30T08:51:55Z beach: I still don't intend to take advantage of it. At least not by default. 2018-07-30T08:52:05Z hph^ joined #lisp 2018-07-30T08:52:06Z hph^ quit (Max SendQ exceeded) 2018-07-30T08:52:16Z lieven: but I'm not sure all this is explicitly spelled out 2018-07-30T08:52:29Z hph^ joined #lisp 2018-07-30T08:52:29Z hph^ quit (Max SendQ exceeded) 2018-07-30T08:52:32Z beach: It is allowed to expect that but it may not be true. 2018-07-30T08:52:50Z hph^ joined #lisp 2018-07-30T08:52:51Z hph^ quit (Max SendQ exceeded) 2018-07-30T08:53:06Z lieven: well yeah, if you lie to the compiler, it may get its revenge 2018-07-30T08:53:10Z hph^ joined #lisp 2018-07-30T08:53:11Z hph^ quit (Max SendQ exceeded) 2018-07-30T08:53:16Z beach: Exactly. 2018-07-30T08:53:34Z hph^ joined #lisp 2018-07-30T08:54:08Z lieven: there is a weird phrase in the DYNAMIC-EXTENT entry of the hyperspec: Most compilers would probably not stack allocate the argument to g in f because it would be a modularity violation for the compiler to assume facts about g from within f. Only an implementation that was willing to be responsible for recompiling f if the definition of g changed incompatibly could legitimately stack allocate the list argument 2018-07-30T08:54:10Z lieven: to g in f. 2018-07-30T08:54:25Z BitPuffin joined #lisp 2018-07-30T08:54:41Z beach: Yes, I remember it. 2018-07-30T08:54:53Z random-nick joined #lisp 2018-07-30T08:54:54Z lieven: this seems to give a compiler the right to track depencencies and recompile more stuff whenever it feels like it 2018-07-30T08:55:20Z beach: Let me look at the example again... 2018-07-30T08:55:51Z beach: Yes, I see. 2018-07-30T08:56:25Z fikka joined #lisp 2018-07-30T09:01:21Z smurfrobot quit (Remote host closed the connection) 2018-07-30T09:02:09Z smurfrobot joined #lisp 2018-07-30T09:04:16Z beach: I just did something very interesting... 2018-07-30T09:04:36Z beach: I created a function in SBCL that allocates a list that is declare DYNAMIC-EXTENT. 2018-07-30T09:05:12Z beach: It then calls another function with this list and then another. The last one just calls FIND passing this list. Not important exactly what they do. 2018-07-30T09:06:18Z beach: They are in the same compilation unit, so the compiler can assume that no individual function is redefinde. 2018-07-30T09:06:47Z beach: Now I do (trace :break t) and I call the outermost function. 2018-07-30T09:07:18Z beach: In the debugger, I evaluate (defparameter *l* list) where list is the list with dynamic extent. 2018-07-30T09:07:52Z beach: I know have a list as the value of the special variable *l* that is allocated in a stack frame that no longer exists. 2018-07-30T09:07:55Z beach: I now 2018-07-30T09:08:22Z beach: So *l* contains garbage. 2018-07-30T09:09:36Z no-defun-allowed: very interesting 2018-07-30T09:09:41Z flazh quit (Ping timeout: 268 seconds) 2018-07-30T09:09:46Z no-defun-allowed: what does it print as? 2018-07-30T09:10:05Z beach: (# . #) 2018-07-30T09:10:18Z beach: It should have been (hello 1 2 3) 2018-07-30T09:15:16Z beach: So basically, in a safe system, there are just too many restrictions when dynamic-extent is used. 2018-07-30T09:15:24Z iskander quit (Ping timeout: 256 seconds) 2018-07-30T09:21:17Z iskander joined #lisp 2018-07-30T09:24:12Z orivej joined #lisp 2018-07-30T09:29:15Z kajo joined #lisp 2018-07-30T09:40:54Z xificurC quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2018-07-30T09:42:20Z fikka quit (Ping timeout: 245 seconds) 2018-07-30T09:46:38Z shka: beach: interesting 2018-07-30T09:47:13Z Copenhagen_Bram joined #lisp 2018-07-30T09:48:17Z beach: Yes, if safety is a requirement, the debugger can not be allowed to inspect an object with dynamic extent. 2018-07-30T09:48:47Z beach: Er, an object that, as a result of having been determined to have dynamic extent, has been allocated on the stack. 2018-07-30T09:50:21Z theemacsshibe joined #lisp 2018-07-30T09:50:30Z beach: As it turns out, I will have a similar problem with the SICL garbage collector. If an object that is allocated in a nursery is being inspected by a debugger running in a different thread, that object must be promoted first. Or else there will be a reference from one thread to the nursery of a different thread which would be a violation of an invariant I defined. 2018-07-30T09:50:40Z nckx quit (Ping timeout: 265 seconds) 2018-07-30T09:50:54Z fikka joined #lisp 2018-07-30T09:51:06Z nckx joined #lisp 2018-07-30T09:51:21Z theemacsshibe: hi from mezzano 2018-07-30T09:51:35Z beach: Hello theemacsshibe! Nice! 2018-07-30T09:51:59Z no-defun-allowed: shut up, IRC alt of me 2018-07-30T09:52:18Z theemacsshibe: hi beach 2018-07-30T09:52:46Z theemacsshibe: either virtualbox graphics suck, i have configured something wrong or there are hurge GC pauses 2018-07-30T09:53:03Z theemacsshibe: still more usable than redox :^) 2018-07-30T09:55:14Z fikka quit (Ping timeout: 244 seconds) 2018-07-30T09:55:16Z no-defun-allowed: https://coinsh.red/p/Screenshot_2018-07-30_19-54-19.png 2018-07-30T09:55:57Z beach: Very nice! 2018-07-30T09:56:25Z no-defun-allowed: it's very impressive 2018-07-30T09:56:27Z theemacsshibe quit (Remote host closed the connection) 2018-07-30T09:56:47Z antoszka: looks much better than last time i looked :) 2018-07-30T09:57:07Z no-defun-allowed: indeed it does 2018-07-30T09:57:15Z no-defun-allowed: i had demo 2, and demo 4 is amazing 2018-07-30T09:57:15Z shka: and you can play doom 2018-07-30T09:57:25Z shka: which is cool 2018-07-30T09:57:46Z shka: mezzano amazes me 2018-07-30T09:59:00Z no-defun-allowed: also quake 2018-07-30T09:59:02Z beach: Now we "just" need more applications. :) 2018-07-30T09:59:49Z no-defun-allowed: the clim benchmark is faster than on xquartz too 2018-07-30T10:00:43Z no-defun-allowed: let's test out quicklisp 2018-07-30T10:01:38Z no-defun-allowed: optima says `Not a parseable integer "asd"`. 2018-07-30T10:01:38Z no-defun-allowed: weird 2018-07-30T10:02:08Z routermater joined #lisp 2018-07-30T10:02:22Z no-defun-allowed: seems to be an issue in mezzano.file-system:parse-namestring-using-host 2018-07-30T10:03:45Z fikka joined #lisp 2018-07-30T10:05:31Z lumm joined #lisp 2018-07-30T10:07:10Z froggey: quicklisp was a last-minute addition, I didn't test it too thoroughly 2018-07-30T10:07:23Z froggey: anaphora was the system I used for testing 2018-07-30T10:07:35Z beach: froggey: Impressive work. 2018-07-30T10:07:58Z beach: froggey: Did you start your crowdfunding for financing your ELS trip yet? 2018-07-30T10:08:12Z beach: froggey: In fact, you should write a paper for ELS about Mezzano. 2018-07-30T10:08:24Z froggey: thanks 2018-07-30T10:08:32Z froggey: I haven't, you think I should start now? 2018-07-30T10:08:41Z beach: Might as well. 2018-07-30T10:09:00Z beach: Now is a good time, given the excitement about the new release. :) 2018-07-30T10:09:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-30T10:09:15Z froggey: true 2018-07-30T10:10:09Z gigetoo quit (Ping timeout: 260 seconds) 2018-07-30T10:11:31Z fikka joined #lisp 2018-07-30T10:11:47Z saki joined #lisp 2018-07-30T10:13:35Z no-defun-allowed: very well done froggey, mezzano is amazing 2018-07-30T10:14:00Z no-defun-allowed: in my opinion SMP would be the next big step to make 2018-07-30T10:16:08Z saki quit (Client Quit) 2018-07-30T10:20:28Z froggey: beach: I'm not sure what I'd write about, and I've never been good at that kind of thing... 2018-07-30T10:20:39Z saki joined #lisp 2018-07-30T10:21:28Z froggey: no-defun-allowed: thanks. some SMP support exists, but is very buggy at the moment 2018-07-30T10:29:25Z m00natic joined #lisp 2018-07-30T10:29:59Z beach: froggey: I could help you out. After all, a paper is max 8 pages, so you could have a summary of the elements of Mezzano: the compiler, the garbage collector, device drivers, graphics. 2018-07-30T10:30:07Z beach: You have 8 pages right there. 2018-07-30T10:32:05Z beach: froggey: There would be a "previous work" section, where you would mention Genera (of course) and Movitz. 2018-07-30T10:32:10Z orivej quit (Ping timeout: 264 seconds) 2018-07-30T10:32:20Z beach: froggey: A "conclusions and future work" section where you state your plans. 2018-07-30T10:32:49Z beach: froggey: Oh, and you wrote a C compiler that generates Common Lisp or something like that? 2018-07-30T10:32:57Z beach: That's worth an entire section. 2018-07-30T10:34:59Z MrSleepy joined #lisp 2018-07-30T10:35:57Z terpri quit (Ping timeout: 240 seconds) 2018-07-30T10:38:39Z MrSleepy: Hello, do you guys know any good tools/methods that would work well in vim for formatting lisp source code? Lately I've been using astyle but the default option on my install doesn't play nicely with lisp comments. 2018-07-30T10:39:54Z fikka quit (Ping timeout: 260 seconds) 2018-07-30T10:44:25Z beach: Doesn't SLIMV do that kind of stuff? 2018-07-30T10:48:11Z shka: it kinda amazes me 2018-07-30T10:48:23Z shka: froggey: you do this just casually? :D 2018-07-30T10:48:28Z wildbartty quit (Remote host closed the connection) 2018-07-30T10:48:47Z wildbartty joined #lisp 2018-07-30T10:49:07Z jackdaniel: beach: I'll let myself answer your question: froggey has written llvm->cl transpiler: https://github.com/froggey/Iota 2018-07-30T10:49:28Z beach: OK. See, that's publishable. 2018-07-30T10:52:28Z pjb: beach: the only case where dynamic-extend could make a significant difference IMO, is in presence of threads. But if you have an allocator that uses separate zones for the different threads, probably even not in this case. 2018-07-30T10:52:51Z beach: pjb: Good point. 2018-07-30T10:52:59Z pjb: In any case, I trust the compiler more than the programmer, so I never use those declarations. 2018-07-30T10:53:08Z pjb: (and tend to remove them when I find them). 2018-07-30T10:53:43Z beach: I tend to agree. 2018-07-30T10:53:54Z pjb: It's a maintaince headache, because the proof that those objects don't leak is never present, so if you touch the code, you have to reestablish them. Simpler to kill the declaration. 2018-07-30T10:54:27Z beach: Another very good point. 2018-07-30T10:55:12Z froggey: ok. I'll think about it. I have over half a year to get it done, right? 2018-07-30T10:55:31Z beach: Probably so. February is the typical deadline. 2018-07-30T10:56:01Z makomo joined #lisp 2018-07-30T10:56:20Z beach: froggey: But if you finish a few weeks before that, I can read and help you fix it. 2018-07-30T10:56:33Z kajo quit (Ping timeout: 248 seconds) 2018-07-30T10:56:38Z MrSleepy: beach, that would make sense if it does I played around with a couple plugins for vim like right now I have vim-slime. The usual setup I have is just vim running in tmux and a separate pane running sbcl or bash or whatever. 2018-07-30T10:56:41Z froggey: ok 2018-07-30T10:57:06Z MrSleepy: I will experiment more with them :] 2018-07-30T10:57:32Z beach: MrSleepy: I am not sure what that means. I guess you would have to talk with someone here who actually uses vim for Common Lisp programming. 2018-07-30T10:58:46Z kajo joined #lisp 2018-07-30T10:59:22Z beach: froggey: The way I typically work is that I post early versions of articles here for comments. Then I get a ton of remarks from the nice and knowledgeable people here in #lisp. I then make several iterations until we have a good compromise. Finally, the nice people who commented get to be cited in the acknowledgments section. 2018-07-30T10:59:37Z beach: froggey: Even very early drafts usually get read and commented on. 2018-07-30T10:59:46Z fikka joined #lisp 2018-07-30T11:01:05Z froggey: I see 2018-07-30T11:02:27Z beach: I don't want to nag you, but here is another reason: When hanging out here in #lisp, it is easy to think that the entire Common Lisp community is here. That is not the case. At ELS, you will find people who never use IRC, or perhaps just occasionally. 2018-07-30T11:02:41Z beach: Those people should be aware of Mezzano, in my opinion. 2018-07-30T11:02:45Z xantoz quit (Read error: Connection reset by peer) 2018-07-30T11:03:08Z xantoz joined #lisp 2018-07-30T11:03:12Z MrSleepy: beach, slimv and vim-slime are both plugins for vim. tmux is a terminal multiplexer, You can use it for features like tabs and panes and what not if your terminal doesn't provide those kinds of things. 2018-07-30T11:03:26Z brendyn joined #lisp 2018-07-30T11:03:43Z MrSleepy: it works pretty well if you're stuck with no xserver or whatever which is neat 2018-07-30T11:05:45Z orivej joined #lisp 2018-07-30T11:06:55Z beach: I see. 2018-07-30T11:08:21Z froggey: sure. I've noticed it gets a bunch of word-of-mouth coverage outside #lisp, but it's unlikely to reach everyone that way 2018-07-30T11:08:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-30T11:08:51Z beach: froggey: Yeah, the people who attend ELS are surprisingly ignorant of what is going on. :) 2018-07-30T11:09:39Z beach: I exaggerate of course. There are quite a few people who both come to ELS and hand out here. 2018-07-30T11:09:59Z beach: hang 2018-07-30T11:10:08Z beach: Time for a break it seems. 2018-07-30T11:12:06Z nsrahmad joined #lisp 2018-07-30T11:14:43Z froggey: on a different topic: I use DYNAMIC-EXTENT declarations a bunch in the lower levels of mezzano, in the parts that support the GC & can't safely allocate 2018-07-30T11:15:46Z froggey: the main users are debug logging functions that take a &rest list of messages and with-mutex-locked which passes a dynamic-extent local function to call-with-mutex-locked (and some other similar macros) 2018-07-30T11:16:49Z trittweiler quit (Ping timeout: 248 seconds) 2018-07-30T11:16:51Z froggey: I try to avoid it elsewhere because of the safety issue 2018-07-30T11:18:09Z nsrahmad quit (Quit: Leaving) 2018-07-30T11:19:08Z xificurC joined #lisp 2018-07-30T11:20:18Z beach: That's fine in my opinion. 2018-07-30T11:21:01Z beach: For SICL I plan to allow many things in "system code" that would not be allowed by default. 2018-07-30T11:21:42Z beach: Anyway, time for a break. 2018-07-30T11:30:18Z orivej quit (Ping timeout: 244 seconds) 2018-07-30T11:32:06Z schjetne: beach: I was reminded of your programming language talk. My current job wants to give me full choice of tech, now I have to see if I dare suggest Common Lisp 2018-07-30T11:33:16Z Kundry_Wag joined #lisp 2018-07-30T11:34:01Z ebrasca quit (Remote host closed the connection) 2018-07-30T11:36:22Z Spaceman77 joined #lisp 2018-07-30T11:36:48Z shka: schjetne: do it 2018-07-30T11:36:57Z kenster quit (Quit: Konversation terminated!) 2018-07-30T11:37:13Z shka: schjetne: https://www.youtube.com/watch?v=ZXsQAXx_ao0 2018-07-30T11:37:17Z vaporatorius__ joined #lisp 2018-07-30T11:37:41Z vap1 quit (Ping timeout: 268 seconds) 2018-07-30T11:37:56Z Spaceman77: Hello. I am a backend web dev with an education in robotics. Currently i am planning to advance my proficiency in c++, however, time and time again I come across LISP and some sort of enlightenment that comes with "getting it". 2018-07-30T11:38:46Z Spaceman77: Is it worth learning it (by reading SICP), even if i will likely never use it in production? 2018-07-30T11:39:03Z shka: Spaceman77: what is more important, lisp has long history with robots 2018-07-30T11:39:11Z lumm quit (Remote host closed the connection) 2018-07-30T11:39:32Z jackdaniel: Spaceman77: LISP is an old language. Common Lisp is one of its descendants (this channel is dedicated to this language) 2018-07-30T11:39:40Z jackdaniel: some people use CL professionally 2018-07-30T11:39:40Z shka: this little fella is programmed in common lisp https://pisces.bbystatic.com/image2/BestBuy_US/images/products/5802/5802801cv11d.jpg 2018-07-30T11:39:40Z lumm joined #lisp 2018-07-30T11:40:07Z Spaceman77: Wait a sec, roombas are programmed in Lisp? 2018-07-30T11:40:13Z jackdaniel: Spaceman77: it is worth learning this language, definetely. SICP learns scheme (yet another lisp dialect), and is an excellent book. 2018-07-30T11:40:26Z shka: honda's 90s android is programmed in lisp as well 2018-07-30T11:40:42Z jackdaniel: if you want to learn common lisp from really good author, read PAIP (paradigms of artificial intelligence) which was recently released to read for free 2018-07-30T11:41:01Z jackdaniel: there is also PCL (which is another great resource) 2018-07-30T11:41:06Z jackdaniel: minion: tell Spaceman77 about pcl 2018-07-30T11:41:06Z minion: Spaceman77: please see pcl: pcl-book: "Practical Common Lisp", an introduction to Common Lisp by Peter Seibel, available at http://www.gigamonkeys.com/book/ and in dead-tree form from Apress (as of 11 April 2005). 2018-07-30T11:41:08Z al-damiri joined #lisp 2018-07-30T11:41:11Z LdBeth: shka (IRC): it would be nice to have a dog sitting on that 2018-07-30T11:41:11Z tralala joined #lisp 2018-07-30T11:41:24Z jackdaniel: Spaceman77: and PAIP: https://github.com/norvig/paip-lisp 2018-07-30T11:41:34Z shka: software for space shuttle manipulator is written in lisp as well 2018-07-30T11:42:02Z Spaceman77: My main focus in robotics has been computer vision. Not in object recognition as much as in localisation and navigation 2018-07-30T11:42:07Z shka: Spaceman77: as i said, lisp has long history with robotics 2018-07-30T11:42:32Z Spaceman77: I have also heard of unique metaprogramming capabilities in Lisp 2018-07-30T11:42:45Z shka: those exist 2018-07-30T11:42:48Z Spaceman77: jackdaniel: thank you for the resources! 2018-07-30T11:43:06Z jackdaniel: this comes as a natural consequence of language homoiconity: you may output code as data and use it in form of macros (for instance) 2018-07-30T11:43:31Z Kundry_Wag quit (Remote host closed the connection) 2018-07-30T11:43:36Z jackdaniel: also Lisp is built in layers from a very simple concepts, that's why code generators are common among more proficient programmers 2018-07-30T11:44:13Z jackdaniel: full reflection of the system image is another great capability which allows metaprogramming (i.e via Meta-Object Protocol) 2018-07-30T11:45:20Z Spaceman77: What are some things you have made using CL? 2018-07-30T11:46:08Z jackdaniel: I rarely start projects from scratch (I'm more a contributor-kind of a person than reinvent-this-to-my-liking one) 2018-07-30T11:46:41Z Spaceman77: jackdaniel: hah, I am the complete opposite :) 2018-07-30T11:47:30Z jackdaniel: I'm sure you'll find many alike spirits in CL community (and I'm saying it with a tiny bit of sarcasm ;) 2018-07-30T11:48:32Z jackdaniel: one common misconception I'm going to debunk before you ask: Common Lisp is *not* functional programming language, it is a multi-paradigm one 2018-07-30T11:48:45Z shka: Spaceman77: froggey here made OS in lisp, and you can play doom on it :P, shinmera wrote drawning application in lisp called parasol... 2018-07-30T11:49:01Z jackdaniel: and OOP is the most commonly used paradigm (with a twist - functions are specialized on objects, not being part of them) 2018-07-30T11:49:56Z Spaceman77: jackdaniel: i knew about the paradigms, yeah 2018-07-30T11:50:06Z jackdaniel: OK, glad to hear that 2018-07-30T11:50:33Z jackdaniel: it is just a common misconception 2018-07-30T11:51:12Z shka: Spaceman77: there is a list of applications https://github.com/azzamsa/awesome-cl-software 2018-07-30T11:51:29Z peccu4 joined #lisp 2018-07-30T11:52:49Z jackdaniel: interesting, this list has numerous applications written in CLIM but no CLIM implementation listed 2018-07-30T11:53:31Z shka: well, perhaps CLIM implementation is not considered to be application 2018-07-30T11:54:12Z shka: though it does include things that are clearly libraries 2018-07-30T11:56:16Z shka: anyway, you are perhaps unlikely to work for money in cl 2018-07-30T11:56:24Z shka: but chances are not 0% 2018-07-30T11:57:08Z jackdaniel: this is a fad; working for many in language of your choice is a matter of determination, not taking chances 2018-07-30T11:57:14Z jackdaniel: money 2018-07-30T11:57:30Z shka: well, ok 2018-07-30T11:59:05Z shka: anyway 2018-07-30T12:00:01Z Spaceman77: Yeah, the money and employability is another one. I could, as I said, spend time learning c++, and there are places where c++ is in demand still, but i have no clue about CL. 2018-07-30T12:00:27Z shka: Spaceman77: common lisp is fun, is portable, standard is stable, there is quicklisp so we have package manager that makes life easier 2018-07-30T12:00:30Z Spaceman77: Heck, in my country i barely see any job ads that are not JS/PHP/Java/C# or some ruby and python 2018-07-30T12:00:50Z shka: certainly worth playing with 2018-07-30T12:01:01Z orivej joined #lisp 2018-07-30T12:01:17Z schjetne: shka: I will consider it. I need a nice DSL, and of course CL is known to excel at that. 2018-07-30T12:01:19Z jackdaniel: Spaceman77: https://lispjobs.wordpress.com/ this is a common resource. there is a few companies hiring CL programmers (some hire remotely too) 2018-07-30T12:01:26Z gector quit (Read error: Connection reset by peer) 2018-07-30T12:01:32Z shka: at the very least it does not makes you angry enough to throw your computer screen out of the window :-) 2018-07-30T12:01:38Z jackdaniel: but indeed, if you have your own business, client rarely asks about language 2018-07-30T12:01:46Z schjetne: I'm living in deep Haskell and Erlang territory, those are interesting too. 2018-07-30T12:01:53Z gector joined #lisp 2018-07-30T12:02:04Z hjudt: i want to serialize out objects. the way i currently do this is to create alists with printable representations, then pass that to cl-json:encode-json-alist-to-string. is there a more general way to generate the alist from the object? e.g. specifying a serialization function when defining an object slot? 2018-07-30T12:02:28Z jackdaniel: schjetne: do you use LFE by chance? [http://lfe.io/] 2018-07-30T12:02:40Z schjetne: No, but I've heard a lot of good about it 2018-07-30T12:02:45Z jackdaniel: hjudt: cl-store is a very good library for that 2018-07-30T12:03:02Z jackdaniel: hjudt: and has very fine coverage across implementations and object types 2018-07-30T12:03:27Z jackdaniel: hjudt: https://www.common-lisp.net/project/cl-store/ 2018-07-30T12:03:43Z shka: i second cl-store 2018-07-30T12:03:45Z jackdaniel: (also, it is recommended in Common Lisp Recipes) 2018-07-30T12:03:47Z shka: it is great 2018-07-30T12:04:40Z jackdaniel: I'm getting back to my (paid, mundane, CL) task ;-) later 2018-07-30T12:05:24Z hjudt: thanks for the recommendation. my problem is this: i want to export to json because i can then also use these code paths for providing objects for the web (javascript). 2018-07-30T12:06:13Z shka: hjudt: maybe you can extend cl-store to handle json 2018-07-30T12:06:22Z shka: that's what i would try anyway 2018-07-30T12:07:00Z hjudt: ok, but sounds more complicated than writing methods for three or four classes to convert them to alists... 2018-07-30T12:07:44Z shka: hmm 2018-07-30T12:07:48Z hjudt: does anyone do direct conversion of obj->json instead of using alists? 2018-07-30T12:08:01Z shka: probabbly it is not more complicated to be honest 2018-07-30T12:08:04Z hjudt: i simply found alists an easy way to write and read back in 2018-07-30T12:08:13Z jackdaniel: if you are interested in serializing strictly to json, then yason is a good library with fine api and jsown is a *fast* library with not-so-fine syntax 2018-07-30T12:08:26Z jackdaniel: but also with easy api 2018-07-30T12:09:25Z shka: hjudt: https://common-lisp.net/project/cl-store/docs/cl-store.pdf 2018-07-30T12:09:30Z shka: look at customazing 2018-07-30T12:09:51Z shka: maybe i should try to plug jsown here 2018-07-30T12:10:06Z shka: sounds like simple project 2018-07-30T12:10:42Z trittweiler joined #lisp 2018-07-30T12:10:52Z chens quit (Remote host closed the connection) 2018-07-30T12:11:21Z shka: wooha cl-store has example for handling python pickle format 2018-07-30T12:11:23Z shka: niiiiiiiiiice 2018-07-30T12:12:28Z shka: hjudt: cl-store seems to be designed around binary formats though 2018-07-30T12:12:34Z hjudt: looks like i could achieve what i need with yason could also do it with encode-object-slots and encode-object-element. 2018-07-30T12:13:48Z hjudt: but i will also want to read it back in, so still have to look that up 2018-07-30T12:15:37Z hjudt: anyway, thanks for the suggestion, i used to use base64 to encode/decode binary data. cl-store might prove to be a more convenient solution for this. 2018-07-30T12:18:22Z Kundry_Wag joined #lisp 2018-07-30T12:19:01Z MoziM quit (Quit: WeeChat 2.2) 2018-07-30T12:20:48Z groovy2shoes quit (Excess Flood) 2018-07-30T12:21:02Z FreeBirdLjj joined #lisp 2018-07-30T12:21:10Z groovy2shoes joined #lisp 2018-07-30T12:21:15Z d4ryus: bw 2018-07-30T12:22:10Z d4ryus: urgh, wrong channel :/ 2018-07-30T12:22:14Z pjb: ok 2018-07-30T12:22:26Z pjb: There's a fee for wrong channel messages here… 2018-07-30T12:25:14Z lumm quit (Ping timeout: 256 seconds) 2018-07-30T12:25:23Z Ven`` joined #lisp 2018-07-30T12:25:35Z FreeBirdLjj quit (Ping timeout: 244 seconds) 2018-07-30T12:26:18Z on_ion joined #lisp 2018-07-30T12:26:31Z Ven` joined #lisp 2018-07-30T12:27:12Z flip214: pjb: did you trigger that one as well right now? 2018-07-30T12:30:05Z Ven`` quit (Ping timeout: 256 seconds) 2018-07-30T12:32:19Z beach: schjetne: Good luck. It is pretty risky to suggest Common Lisp. You will be held responsible if anything goes wrong. 2018-07-30T12:32:35Z kajo quit (Ping timeout: 240 seconds) 2018-07-30T12:33:53Z schjetne: beach: if I do I will certainly make sure there's a big benefit to choosing it in this particular case 2018-07-30T12:35:45Z on_ion: =) 2018-07-30T12:35:59Z orivej quit (Ping timeout: 260 seconds) 2018-07-30T12:36:43Z lumm joined #lisp 2018-07-30T12:37:36Z beach: schjetne: Yes, as long as you know what you are doing. :) 2018-07-30T12:37:52Z beach: schjetne: I am available as a consultant, should your project need it. :) 2018-07-30T12:39:03Z schjetne: Your talk certainly gave me some pointers. And I will consider accepting your consulting services. 2018-07-30T12:39:13Z jasmith joined #lisp 2018-07-30T12:39:47Z beach: Great! 2018-07-30T12:39:49Z Spaceman77 quit (Quit: Page closed) 2018-07-30T12:39:55Z schjetne: It's a big complicated distributed system, so it's probably wise to get some outside advice 2018-07-30T12:40:11Z beach: Hmm, yes I see. 2018-07-30T12:41:22Z schjetne: Control systems and sensors and stuff. 2018-07-30T12:41:31Z beach: Oh, nice. 2018-07-30T12:41:55Z pjb: The main risk is in the FFI part. The CL part won't pose any problem. 2018-07-30T12:41:58Z beach: I used to work for a division of what is now ABB with control systems as its main product. 2018-07-30T12:42:18Z Kevslinger joined #lisp 2018-07-30T12:44:20Z schjetne: I'll take a 2 week vacation to hopefully get my PPL back on track and not think about control systems, but after that I might get in touch with you about that stuff. 2018-07-30T12:44:42Z beach: Good plan. 2018-07-30T12:44:43Z terpri joined #lisp 2018-07-30T12:51:35Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-30T12:52:07Z fikka joined #lisp 2018-07-30T12:54:59Z eli_oat joined #lisp 2018-07-30T12:55:52Z varjag joined #lisp 2018-07-30T12:57:38Z mindCrime joined #lisp 2018-07-30T12:59:27Z LiamH joined #lisp 2018-07-30T12:59:27Z eschulte quit (Ping timeout: 240 seconds) 2018-07-30T13:00:13Z Ven` quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-30T13:03:05Z mindCrime quit (Ping timeout: 240 seconds) 2018-07-30T13:07:11Z krrrcks quit (Ping timeout: 255 seconds) 2018-07-30T13:10:11Z jkordani joined #lisp 2018-07-30T13:14:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-30T13:14:29Z krrrcks joined #lisp 2018-07-30T13:16:45Z fikka joined #lisp 2018-07-30T13:18:57Z dwrngr quit (Ping timeout: 264 seconds) 2018-07-30T13:19:37Z Bike joined #lisp 2018-07-30T13:21:57Z fikka quit (Ping timeout: 264 seconds) 2018-07-30T13:22:37Z fourier joined #lisp 2018-07-30T13:23:28Z v0|d quit (Remote host closed the connection) 2018-07-30T13:23:52Z HeyFlash joined #lisp 2018-07-30T13:33:48Z SenasOzys joined #lisp 2018-07-30T13:35:15Z SenasOzys quit (Remote host closed the connection) 2018-07-30T13:39:53Z fikka joined #lisp 2018-07-30T13:43:43Z daniel-s quit (Remote host closed the connection) 2018-07-30T13:46:57Z routermater quit (Ping timeout: 240 seconds) 2018-07-30T13:49:13Z karlosz joined #lisp 2018-07-30T13:49:33Z karlosz quit (Remote host closed the connection) 2018-07-30T13:49:47Z karlosz joined #lisp 2018-07-30T13:51:35Z X-Scale quit (Ping timeout: 240 seconds) 2018-07-30T13:55:25Z nowhere_man quit (Remote host closed the connection) 2018-07-30T13:55:46Z nowhere_man joined #lisp 2018-07-30T13:59:21Z flamebeard quit 2018-07-30T14:01:11Z tralala quit (Quit: out) 2018-07-30T14:01:14Z reg32 joined #lisp 2018-07-30T14:02:09Z vtomole quit (Ping timeout: 252 seconds) 2018-07-30T14:08:33Z fikka quit (Ping timeout: 248 seconds) 2018-07-30T14:11:20Z Denommus joined #lisp 2018-07-30T14:11:53Z azimut joined #lisp 2018-07-30T14:14:02Z sendai_ quit (Ping timeout: 256 seconds) 2018-07-30T14:14:54Z Inline joined #lisp 2018-07-30T14:15:38Z Kundry_Wag joined #lisp 2018-07-30T14:16:05Z MoziM joined #lisp 2018-07-30T14:16:45Z fikka joined #lisp 2018-07-30T14:19:20Z nirved quit (Quit: Leaving) 2018-07-30T14:21:00Z sjl joined #lisp 2018-07-30T14:22:34Z Tristam joined #lisp 2018-07-30T14:23:46Z sjl_ joined #lisp 2018-07-30T14:23:54Z saki quit (Ping timeout: 244 seconds) 2018-07-30T14:24:43Z fikka quit (Ping timeout: 265 seconds) 2018-07-30T14:25:45Z flazh joined #lisp 2018-07-30T14:26:20Z angavrilov is now known as angavrilov_ 2018-07-30T14:26:34Z JuanDaugherty joined #lisp 2018-07-30T14:29:11Z kuwze joined #lisp 2018-07-30T14:29:34Z X-Scale joined #lisp 2018-07-30T14:30:05Z SaganMan quit (Ping timeout: 240 seconds) 2018-07-30T14:31:15Z SaganMan joined #lisp 2018-07-30T14:40:07Z reg32 quit (Quit: The Lounge - https://thelounge.chat) 2018-07-30T14:40:09Z vtomole joined #lisp 2018-07-30T14:40:11Z fourier quit (Ping timeout: 265 seconds) 2018-07-30T14:42:36Z biopandemic quit (Quit: Quit.) 2018-07-30T14:43:03Z biopandemic joined #lisp 2018-07-30T14:44:55Z on_ion quit (Quit: WeeChat 1.9.1) 2018-07-30T14:46:12Z on_ion joined #lisp 2018-07-30T14:46:37Z ofi quit (Remote host closed the connection) 2018-07-30T14:47:40Z Kundry_Wag quit (Ping timeout: 244 seconds) 2018-07-30T14:59:34Z rippa joined #lisp 2018-07-30T14:59:56Z lumm quit (Quit: lumm) 2018-07-30T15:00:14Z lumm_ joined #lisp 2018-07-30T15:00:19Z FreeBirdLjj joined #lisp 2018-07-30T15:04:54Z papachan joined #lisp 2018-07-30T15:04:58Z mindCrime joined #lisp 2018-07-30T15:10:49Z dale_ joined #lisp 2018-07-30T15:11:52Z sjl_ quit (Quit: WeeChat 2.2-dev) 2018-07-30T15:12:13Z sjl_ joined #lisp 2018-07-30T15:20:56Z sailor_cat joined #lisp 2018-07-30T15:21:21Z lumm joined #lisp 2018-07-30T15:21:37Z lumm_ quit (Read error: Connection reset by peer) 2018-07-30T15:24:15Z JuanDaugherty quit (Quit: Exeunt) 2018-07-30T15:26:55Z cage_ joined #lisp 2018-07-30T15:30:05Z DonVlad quit (Remote host closed the connection) 2018-07-30T15:30:26Z DonVlad joined #lisp 2018-07-30T15:32:06Z fikka joined #lisp 2018-07-30T15:33:50Z nirved joined #lisp 2018-07-30T15:35:47Z eschulte joined #lisp 2018-07-30T15:36:47Z Kundry_Wag joined #lisp 2018-07-30T15:41:10Z dale_ quit (Remote host closed the connection) 2018-07-30T15:42:18Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-30T15:43:49Z makomo quit (Ping timeout: 260 seconds) 2018-07-30T15:46:03Z eschatologist quit (Ping timeout: 244 seconds) 2018-07-30T15:46:27Z eschatologist joined #lisp 2018-07-30T15:47:17Z FreeBirdLjj joined #lisp 2018-07-30T15:50:40Z orivej joined #lisp 2018-07-30T15:53:35Z pjb` joined #lisp 2018-07-30T15:53:35Z pjb quit (Read error: Connection reset by peer) 2018-07-30T15:54:31Z pjb` is now known as pjb 2018-07-30T16:03:22Z nirved quit (Quit: Leaving) 2018-07-30T16:03:39Z lumm quit (Ping timeout: 260 seconds) 2018-07-30T16:06:44Z whartung quit (Quit: whartung) 2018-07-30T16:07:37Z lumm joined #lisp 2018-07-30T16:10:39Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-30T16:11:59Z karlosz quit (Quit: karlosz) 2018-07-30T16:16:33Z Ven`` joined #lisp 2018-07-30T16:20:09Z lumm quit (Quit: lumm) 2018-07-30T16:20:50Z shka1 joined #lisp 2018-07-30T16:20:53Z shka1: good evening 2018-07-30T16:24:16Z newbie joined #lisp 2018-07-30T16:25:53Z lumm joined #lisp 2018-07-30T16:31:51Z JPeroutek joined #lisp 2018-07-30T16:36:53Z fikka quit (Ping timeout: 255 seconds) 2018-07-30T16:36:54Z brendyn quit (Ping timeout: 260 seconds) 2018-07-30T16:38:19Z Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-30T16:40:44Z Ven`` joined #lisp 2018-07-30T16:43:06Z nsrahmad joined #lisp 2018-07-30T16:44:29Z HeyFlash quit (Ping timeout: 260 seconds) 2018-07-30T16:44:29Z fikka joined #lisp 2018-07-30T16:49:50Z fikka quit (Ping timeout: 245 seconds) 2018-07-30T16:49:57Z smasta joined #lisp 2018-07-30T16:51:18Z Kaisyu quit (Quit: Connection closed for inactivity) 2018-07-30T16:54:15Z jmercouris joined #lisp 2018-07-30T16:54:25Z Smokitch joined #lisp 2018-07-30T16:56:35Z zigpaw: evening 2018-07-30T16:58:40Z raynold joined #lisp 2018-07-30T17:01:42Z vultyre joined #lisp 2018-07-30T17:01:43Z vultyre quit (Remote host closed the connection) 2018-07-30T17:02:17Z lumm quit (Ping timeout: 265 seconds) 2018-07-30T17:02:42Z vultyre joined #lisp 2018-07-30T17:03:19Z nsrahmad quit (Quit: Leaving) 2018-07-30T17:04:06Z skapata joined #lisp 2018-07-30T17:05:10Z fikka joined #lisp 2018-07-30T17:06:40Z m00natic quit (Remote host closed the connection) 2018-07-30T17:14:24Z dented42 joined #lisp 2018-07-30T17:14:24Z fikka quit (Ping timeout: 244 seconds) 2018-07-30T17:18:14Z fikka joined #lisp 2018-07-30T17:22:40Z nowhere_man quit (Remote host closed the connection) 2018-07-30T17:23:01Z nowhere_man joined #lisp 2018-07-30T17:23:57Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-30T17:25:15Z svillemot left #lisp 2018-07-30T17:35:56Z dented42 quit (Read error: Connection reset by peer) 2018-07-30T17:36:48Z dented42 joined #lisp 2018-07-30T17:38:18Z cage_ quit (Quit: Leaving) 2018-07-30T17:38:19Z jmercouris quit (Remote host closed the connection) 2018-07-30T17:42:38Z dented42 quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-30T17:42:57Z Ven`` quit (Ping timeout: 240 seconds) 2018-07-30T17:44:01Z fikka quit (Ping timeout: 248 seconds) 2018-07-30T17:46:45Z lumm joined #lisp 2018-07-30T17:48:06Z Ven`` joined #lisp 2018-07-30T17:49:03Z fikka joined #lisp 2018-07-30T17:55:00Z dented42 joined #lisp 2018-07-30T17:57:17Z lumm quit (Ping timeout: 244 seconds) 2018-07-30T17:59:15Z housel quit (Read error: Connection reset by peer) 2018-07-30T18:02:30Z kuwze quit (Ping timeout: 252 seconds) 2018-07-30T18:04:47Z Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-30T18:05:43Z warweasle joined #lisp 2018-07-30T18:07:05Z slyrus_ quit (Ping timeout: 240 seconds) 2018-07-30T18:07:14Z Kundry_Wag joined #lisp 2018-07-30T18:11:09Z hiroaki joined #lisp 2018-07-30T18:12:03Z karlosz joined #lisp 2018-07-30T18:13:06Z pierpal quit (Quit: Poof) 2018-07-30T18:13:24Z pierpal joined #lisp 2018-07-30T18:16:27Z EvW joined #lisp 2018-07-30T18:16:33Z orivej quit (Ping timeout: 248 seconds) 2018-07-30T18:16:44Z sjl quit (Quit: WeeChat 2.2-dev) 2018-07-30T18:18:05Z equwal joined #lisp 2018-07-30T18:19:31Z lugh quit (Quit: quitting bouncer) 2018-07-30T18:20:45Z slyrus_ joined #lisp 2018-07-30T18:21:10Z stnutt joined #lisp 2018-07-30T18:22:29Z equwal quit (Ping timeout: 260 seconds) 2018-07-30T18:24:32Z on_ion quit (Quit: WeeChat 1.9.1) 2018-07-30T18:26:29Z raynold quit (Quit: brb) 2018-07-30T18:26:57Z sauvin quit (Read error: Connection reset by peer) 2018-07-30T18:29:36Z whartung joined #lisp 2018-07-30T18:32:45Z smasta quit (Ping timeout: 264 seconds) 2018-07-30T18:38:42Z jmercouris joined #lisp 2018-07-30T18:39:39Z Kundry_Wag quit (Ping timeout: 244 seconds) 2018-07-30T18:42:05Z karlosz quit (Quit: karlosz) 2018-07-30T18:43:17Z eminhi joined #lisp 2018-07-30T18:43:45Z smasta joined #lisp 2018-07-30T18:48:42Z vtomole quit (Ping timeout: 252 seconds) 2018-07-30T18:51:10Z karlosz joined #lisp 2018-07-30T18:52:21Z pierpal quit (Quit: Poof) 2018-07-30T18:52:40Z pierpal joined #lisp 2018-07-30T18:53:45Z random-nick quit (Ping timeout: 264 seconds) 2018-07-30T18:54:33Z karlosz quit (Client Quit) 2018-07-30T19:01:37Z makomo joined #lisp 2018-07-30T19:01:49Z biopandemic quit (Quit: Quit.) 2018-07-30T19:02:51Z EvW quit (Ping timeout: 240 seconds) 2018-07-30T19:06:09Z fikka quit (Ping timeout: 248 seconds) 2018-07-30T19:10:06Z Arcaelyx joined #lisp 2018-07-30T19:13:29Z Smokitch quit 2018-07-30T19:13:32Z karlosz joined #lisp 2018-07-30T19:14:50Z EvW1 joined #lisp 2018-07-30T19:18:30Z jmercouris quit (Remote host closed the connection) 2018-07-30T19:19:26Z housel joined #lisp 2018-07-30T19:22:55Z random-nick joined #lisp 2018-07-30T19:23:08Z vlatkoB quit (Remote host closed the connection) 2018-07-30T19:23:16Z CrazyEddy quit (Ping timeout: 268 seconds) 2018-07-30T19:29:40Z pierpal quit (Quit: Poof) 2018-07-30T19:29:56Z pierpal joined #lisp 2018-07-30T19:41:15Z Kevslinger quit (Quit: Connection closed for inactivity) 2018-07-30T19:42:20Z HelloDlrow joined #lisp 2018-07-30T19:44:47Z zooey quit (Ping timeout: 250 seconds) 2018-07-30T19:45:38Z karlosz quit (Quit: karlosz) 2018-07-30T19:45:52Z Kundry_Wag joined #lisp 2018-07-30T19:46:22Z hhdave_ joined #lisp 2018-07-30T19:48:47Z CrazyEddy joined #lisp 2018-07-30T19:52:12Z karlosz joined #lisp 2018-07-30T19:57:58Z karlosz quit (Quit: karlosz) 2018-07-30T20:01:17Z equwal joined #lisp 2018-07-30T20:03:54Z makomo_ joined #lisp 2018-07-30T20:04:36Z optikalmouse joined #lisp 2018-07-30T20:07:02Z makomo quit (Ping timeout: 255 seconds) 2018-07-30T20:07:12Z karlosz joined #lisp 2018-07-30T20:07:53Z hiroaki quit (Ping timeout: 265 seconds) 2018-07-30T20:10:15Z fikka joined #lisp 2018-07-30T20:15:13Z Kevslinger joined #lisp 2018-07-30T20:17:22Z angavrilov_ quit (Remote host closed the connection) 2018-07-30T20:19:32Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-30T20:20:24Z Copenhagen_Bram quit (Ping timeout: 244 seconds) 2018-07-30T20:22:52Z Copenhagen_Bram joined #lisp 2018-07-30T20:23:05Z shka1 quit (Ping timeout: 240 seconds) 2018-07-30T20:26:37Z rumbler31 quit (Remote host closed the connection) 2018-07-30T20:27:33Z HelloDlrow quit (Quit: Mutter: www.mutterirc.com) 2018-07-30T20:30:09Z warweasle quit (Quit: rcirc on GNU Emacs 24.4.1) 2018-07-30T20:34:20Z pierpa joined #lisp 2018-07-30T20:37:34Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2018-07-30T20:38:02Z Bike: mop generic-function-name 2018-07-30T20:38:02Z specbot: http://metamodular.com/CLOS-MOP/generic-function-name.html 2018-07-30T20:38:46Z jack_rabbit quit (Ping timeout: 264 seconds) 2018-07-30T20:38:48Z orivej joined #lisp 2018-07-30T20:40:14Z lumm joined #lisp 2018-07-30T20:45:14Z hellcode joined #lisp 2018-07-30T20:45:50Z pagnol joined #lisp 2018-07-30T20:46:02Z hellcode quit (Remote host closed the connection) 2018-07-30T20:52:44Z bjorkintosh quit (Read error: Connection reset by peer) 2018-07-30T20:53:21Z bjorkintosh joined #lisp 2018-07-30T20:57:08Z dented42 quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-30T20:59:25Z Ven`` joined #lisp 2018-07-30T21:06:32Z adulteratedjedi quit (Read error: Connection reset by peer) 2018-07-30T21:06:53Z adulteratedjedi joined #lisp 2018-07-30T21:07:27Z fluke` quit (Ping timeout: 240 seconds) 2018-07-30T21:08:21Z fluke` joined #lisp 2018-07-30T21:10:07Z King-Calf joined #lisp 2018-07-30T21:13:47Z lbeckman314 joined #lisp 2018-07-30T21:14:28Z lbeckman314[m] joined #lisp 2018-07-30T21:15:45Z EvW1 quit (Ping timeout: 248 seconds) 2018-07-30T21:15:46Z lbeckman314 quit (Client Quit) 2018-07-30T21:17:24Z kajo joined #lisp 2018-07-30T21:22:48Z smasta quit (Ping timeout: 265 seconds) 2018-07-30T21:27:27Z LiamH quit (Quit: Leaving.) 2018-07-30T21:28:51Z nowhere_man quit (Quit: Konversation terminated!) 2018-07-30T21:29:02Z nowhere_man joined #lisp 2018-07-30T21:29:51Z Bike quit (Ping timeout: 252 seconds) 2018-07-30T21:31:42Z vultyre quit (Quit: Leaving) 2018-07-30T21:34:44Z cods quit (Changing host) 2018-07-30T21:34:44Z cods joined #lisp 2018-07-30T21:36:16Z DonVlad quit (Remote host closed the connection) 2018-07-30T21:42:36Z hiroaki joined #lisp 2018-07-30T21:43:45Z optikalmouse quit (Quit: optikalmouse) 2018-07-30T21:45:29Z Jesin joined #lisp 2018-07-30T21:45:30Z igemnace quit (Remote host closed the connection) 2018-07-30T21:47:09Z nowhere_man is now known as nowhereman 2018-07-30T21:47:11Z nowhereman is now known as nowhere_man 2018-07-30T21:47:38Z nowhere_man quit (Quit: Konversation terminated!) 2018-07-30T21:47:52Z nowhere_man joined #lisp 2018-07-30T21:51:57Z mindCrime quit (Ping timeout: 240 seconds) 2018-07-30T21:58:18Z nowhere_man quit (Quit: Konversation terminated!) 2018-07-30T21:58:36Z nowhere_man joined #lisp 2018-07-30T22:03:12Z varjag quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2018-07-30T22:07:24Z random-nick quit (Read error: Connection reset by peer) 2018-07-30T22:08:41Z JuanDaugherty joined #lisp 2018-07-30T22:09:55Z BitPuffin quit (Remote host closed the connection) 2018-07-30T22:14:40Z gigetoo joined #lisp 2018-07-30T22:16:36Z Kundry_Wag joined #lisp 2018-07-30T22:18:32Z abeaumont joined #lisp 2018-07-30T22:18:40Z pjb quit (Read error: Connection reset by peer) 2018-07-30T22:19:39Z pjb joined #lisp 2018-07-30T22:20:16Z Copenhagen_Bram: that lisp operating system, it can play doom but can it play freedoom? 2018-07-30T22:20:37Z Copenhagen_Bram realizes he was scrolled way up and spoke too late 2018-07-30T22:22:37Z Bike joined #lisp 2018-07-30T22:24:41Z on_ion joined #lisp 2018-07-30T22:26:58Z rumbler31 joined #lisp 2018-07-30T22:30:24Z Ven`` quit (Ping timeout: 260 seconds) 2018-07-30T22:31:29Z rumbler31 quit (Ping timeout: 248 seconds) 2018-07-30T22:32:20Z Aetherda3n joined #lisp 2018-07-30T22:33:35Z pierpal quit (Ping timeout: 256 seconds) 2018-07-30T22:35:24Z JuanDaugherty: the dreaded necroscroll 2018-07-30T22:35:58Z Aetherda3n: I just joined. What are you referring to, Juan? 2018-07-30T22:36:03Z Ven`` joined #lisp 2018-07-30T22:36:12Z JuanDaugherty: lol 2018-07-30T22:36:50Z JuanDaugherty: if it wasn't a joke, it's a publicly logged channel 2018-07-30T22:38:08Z fikka quit (Ping timeout: 268 seconds) 2018-07-30T22:38:20Z Aetherda3n: So...was it a joke? 2018-07-30T22:39:09Z JuanDaugherty: Aetherda3n, if it wasn't a joke, it's a publicly logged channel 2018-07-30T22:39:14Z Copenhagen_Bram: Aetherda3n: JuanDaugherty is informing you that this channel has a public log so that you can read what was said before you joined, in case your message wasn't a joke 2018-07-30T22:40:28Z Aetherda3n: Oh, thank you 2018-07-30T22:40:35Z Copenhagen_Bram: You're welcome lol 2018-07-30T22:40:54Z hiroaki quit (Ping timeout: 260 seconds) 2018-07-30T22:41:37Z zotan quit (Quit: ZNC 1.6.5+deb1 - http://znc.in) 2018-07-30T22:43:46Z zotan joined #lisp 2018-07-30T22:45:33Z smasta joined #lisp 2018-07-30T22:46:33Z pagnol quit (Ping timeout: 264 seconds) 2018-07-30T22:47:37Z figurelisp joined #lisp 2018-07-30T22:48:57Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-30T22:50:05Z dented42 joined #lisp 2018-07-30T22:50:18Z stnutt quit (Ping timeout: 260 seconds) 2018-07-30T22:51:14Z Kevslinger quit (Quit: Connection closed for inactivity) 2018-07-30T22:51:16Z light2yellow joined #lisp 2018-07-30T22:52:59Z stnutt joined #lisp 2018-07-30T22:54:22Z Aetherda3n left #lisp 2018-07-30T22:54:54Z dented42 quit (Ping timeout: 260 seconds) 2018-07-30T22:55:29Z Ven`` quit (Ping timeout: 248 seconds) 2018-07-30T22:55:35Z Ven` joined #lisp 2018-07-30T22:57:32Z nanoz joined #lisp 2018-07-30T22:58:14Z stnutt quit (Ping timeout: 260 seconds) 2018-07-30T23:00:00Z stnutt joined #lisp 2018-07-30T23:01:36Z sjl_ quit (Ping timeout: 244 seconds) 2018-07-30T23:02:05Z figurelisp quit (Ping timeout: 240 seconds) 2018-07-30T23:02:25Z Ven` quit (Ping timeout: 248 seconds) 2018-07-30T23:03:45Z Denommus quit (Remote host closed the connection) 2018-07-30T23:04:00Z figurelisp joined #lisp 2018-07-30T23:04:46Z Jesin quit (Quit: Leaving) 2018-07-30T23:07:00Z pagnol joined #lisp 2018-07-30T23:08:09Z hhdave_ quit (Quit: hhdave_) 2018-07-30T23:08:39Z cmatei quit (Ping timeout: 265 seconds) 2018-07-30T23:08:56Z cmatei joined #lisp 2018-07-30T23:10:37Z terpri quit (Quit: Leaving) 2018-07-30T23:16:10Z hellcode joined #lisp 2018-07-30T23:17:57Z no-defun-allowed: Copenhagen_Bram: you can probably replace DOOM.WAD in it 2018-07-30T23:21:29Z fikka joined #lisp 2018-07-30T23:22:16Z pagnol quit (Ping timeout: 244 seconds) 2018-07-30T23:24:23Z hh47 joined #lisp 2018-07-30T23:26:16Z Kaisyu7 quit (Quit: ERC (IRC client for Emacs 25.3.2)) 2018-07-30T23:26:51Z fikka quit (Ping timeout: 268 seconds) 2018-07-30T23:31:50Z Copenhagen_Bram: no-defun-allowed: how does DOOM.WAD come with the doom engine, anyway? Isn't DOOM.WAD copyrighted? 2018-07-30T23:35:20Z dented42 joined #lisp 2018-07-30T23:37:50Z hellcode left #lisp 2018-07-30T23:41:52Z dented42 quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-30T23:45:08Z Kundry_Wag joined #lisp 2018-07-30T23:49:36Z EvW joined #lisp 2018-07-30T23:49:48Z rozenglass joined #lisp 2018-07-30T23:49:54Z jack_rabbit joined #lisp 2018-07-30T23:50:07Z ozzloy joined #lisp 2018-07-30T23:50:08Z ozzloy quit (Changing host) 2018-07-30T23:50:08Z ozzloy joined #lisp 2018-07-30T23:50:19Z smasta quit (Ping timeout: 260 seconds) 2018-07-30T23:51:03Z SaganMan quit (Quit: WeeChat 1.6) 2018-07-30T23:55:03Z hh47 quit (Ping timeout: 265 seconds) 2018-07-30T23:56:32Z aeth: All outdated id Tech (Quake) engines before the acquisition by ZeniMax were GPLed, as were engines specific to certain key games (like Doom), but not the assets for those games. So generally you would have to provide your own assets from purchased or shareware copies (except for Wolfenstein: Enemy Territory, which is freeware, so you just download the assets from the official site) 2018-07-30T23:57:01Z Kaisyu7 joined #lisp 2018-07-30T23:57:47Z hh47 joined #lisp 2018-07-31T00:00:01Z no-defun-allowed: maybe it was the shareware version, the pauses my vm had stopped me from playing past e1m1 2018-07-31T00:01:50Z Oladon joined #lisp 2018-07-31T00:02:08Z anewuser joined #lisp 2018-07-31T00:07:41Z eminhi quit (Quit: leaving) 2018-07-31T00:09:19Z dented42 joined #lisp 2018-07-31T00:10:40Z robotoad joined #lisp 2018-07-31T00:12:43Z robotoad quit (Client Quit) 2018-07-31T00:13:25Z figurelisp: while defining sets is it out responsibility to make sure list does not contain duplicates? 2018-07-31T00:13:51Z Bike: using lists as sets? the effects of the set functions if there are duplicates are undefined, i think 2018-07-31T00:13:56Z Bike: so yes 2018-07-31T00:14:05Z hh47 quit (Quit: hh47) 2018-07-31T00:14:34Z aeth: lists as sets are... not a very good replacement for a proper set data structure 2018-07-31T00:15:21Z f0461a196 left #lisp 2018-07-31T00:15:36Z figurelisp: oh so there is a data structure set defined in CL. I haven't got that far in CL: gentle introduction 2018-07-31T00:15:37Z mange joined #lisp 2018-07-31T00:15:46Z whartung: Lisp doesn’t really have first class sets 2018-07-31T00:16:08Z figurelisp: so how is set defined 2018-07-31T00:16:19Z whartung: well, that’s part of the problem, right? 2018-07-31T00:16:23Z no-defun-allowed: as a list which we promise won't have duplicates 2018-07-31T00:16:34Z figurelisp: ok 2018-07-31T00:17:49Z whartung: so the real question is what do YOU want from your sets? 2018-07-31T00:17:56Z equwal: #'remove-duplicates 2018-07-31T00:18:11Z equwal: clhs remove-duplicates 2018-07-31T00:18:12Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_rm_dup.htm 2018-07-31T00:18:59Z aeth: If you don't want duplicates and you want that enforced, you could use a hash-table or you could use bits in an integer (#b101001110 can be seen as a set if you write the right functions). 2018-07-31T00:19:17Z equwal: also: union intersection and friends. 2018-07-31T00:20:51Z whartung: you could simply add a member check before you add to the list. 2018-07-31T00:21:10Z no-defun-allowed: you could make a btree, i think there's a quicklisp package for it 2018-07-31T00:21:13Z no-defun-allowed: https://github.com/froydnj/trees 2018-07-31T00:21:22Z no-defun-allowed: psyche, it's not on ql 2018-07-31T00:21:33Z aeth: whartung: The only way to be sure would be to not give the user access to the list at all because they could mutate it outside of the provided functions 2018-07-31T00:21:43Z whartung: well, of course 2018-07-31T00:21:53Z figurelisp: hash-tables, btree all that are way too ahead for me. I am just a beginner 2018-07-31T00:22:17Z whartung: well then don’t listen to us, go forth and “try before you buy” and find out. 2018-07-31T00:22:22Z whartung: we’ll over complicate everything 2018-07-31T00:22:29Z whartung: …and anything 2018-07-31T00:22:31Z figurelisp: :D ok 2018-07-31T00:22:32Z no-defun-allowed: btrees aren't too hard, especially if you give them to someone else to do the complicated parts 2018-07-31T00:22:46Z dlowe: figurelisp: you might be interested in #clnoobs 2018-07-31T00:22:55Z figurelisp: thanks dlowe 2018-07-31T00:24:12Z equwal: Ooooooh he just called you a n00b. 2018-07-31T00:24:21Z figurelisp: i am a noob 2018-07-31T00:25:44Z jasom: figurelisp: hash tables are in the standard, and are better for efficient operations on larger datasets; lists are just fine for small sets (e.g. less than 30 or so) 2018-07-31T00:26:10Z figurelisp: jasom: Thank you, I'll remember it :) 2018-07-31T00:27:13Z no-defun-allowed: iirc for sbcl lists and hashtables are equally fast at around 6 elements 2018-07-31T00:27:25Z figurelisp: but if whole program of lisp is list then why is that efficient? 2018-07-31T00:27:40Z equwal: Hash tables are important and easy to learn how to use, maybe read http://www.gigamonkeys.com/book/collections.html#hash-tables 2018-07-31T00:28:00Z aeth: figurelisp: working on bits as sets actually isn't that hard. You basically just rename the bit logical operations that are in the various definitions of the set operations. You do need a way to map names to specific bits, though, and it is fairly static and small in size. https://gitlab.com/zombie-raptor/zombie-raptor/blob/a2a91e30231a7c2f561b798cf9fe78d0fc3ff55e/math/boolean-set.lisp 2018-07-31T00:28:05Z rumbler31 joined #lisp 2018-07-31T00:28:21Z aeth: For large data sets, hash tables are probably the best way that's built into CL 2018-07-31T00:29:01Z dlowe: equwal: being n00b is the first step to 1337ness 2018-07-31T00:29:07Z aeth: (e.g. union is x such that x is in A or x is in B, so you accomplish union by using logior) 2018-07-31T00:29:11Z nowhereman joined #lisp 2018-07-31T00:29:18Z figurelisp: so a big lisp program is large dataset of list then why is that efficient? 2018-07-31T00:29:19Z nowhere_man quit (Read error: Connection reset by peer) 2018-07-31T00:29:50Z equwal: Because you only have to go through the code a few times to compile it, O(n) 2018-07-31T00:29:58Z aeth: figurelisp: Lists are usually used for small things, prototypes, and macros. 2018-07-31T00:30:02Z dlowe: figurelisp: lisp can operate on many more things than lists. The thing about lisp is that the *code* is lists. 2018-07-31T00:30:06Z PuercoPop: no-defun-allowed: more like ~24 elements 2018-07-31T00:30:18Z dlowe: figurelisp: in most languages, the code is text 2018-07-31T00:30:50Z PuercoPop: Joe Marshal's blog has some benchmarks. 2018-07-31T00:30:52Z no-defun-allowed: really? i remember 6 for ccl and sbcl 2018-07-31T00:30:53Z equwal: figurelisp: In most languages, they convert to a lispy syntax called an "abstract syntax tree" anyway. 2018-07-31T00:30:59Z no-defun-allowed: clisp was more like 30 cause clisp is slow 2018-07-31T00:31:11Z PuercoPop: For 6 alists are faster 2018-07-31T00:32:28Z PuercoPop: And alists have the advantage that you sort them by MRU as you retrieve them 2018-07-31T00:32:49Z aeth: figurelisp: Most speed benchmarks are done with vectors of numbers and other numerical things. Those benchmarks for CL are probably written in SBCL with 1D single-float, double-float, or non-bignum intger arrays. In this case, SBCL is being used basically like a Fortran-with-macros. 2018-07-31T00:33:01Z equwal: aeth: what is an example of a set when using the bit-vector representation? 2018-07-31T00:33:34Z rumbler31 quit (Ping timeout: 244 seconds) 2018-07-31T00:34:18Z aeth: equwal: 00000000000000000000000000000000000000000000000000000000101111 2018-07-31T00:35:36Z aeth: If you wanted to see if it held foo and bar, you'd represent foo as 10 and bar as 01 and do the union of the two (11) and test with that, so you need a way to map what you're really looking for to bits (or, more usefully, to a set where only one bit value is 1) 2018-07-31T00:37:03Z equwal: That is a great way to do it. 2018-07-31T00:37:24Z aeth: You'd probably do this by having a macro generate a function that uses CASE with a keyword as an input and a set holding only the item represented by that keyword as the return value. e.g. input :foobar and get #b1000 back 2018-07-31T00:37:49Z aeth: You'd want to use integers instead of bit vectors for small values. At some point bit-vectors would be more efficient. Maybe above a few hundred. 2018-07-31T00:38:46Z pjb: equwal: 00000000000000000000000000000000000000000000000000000000101111 is an integer. You want #*00000000000000000000000000000000000000000000000000000000101111 2018-07-31T00:39:25Z aeth: pjb: technically internally it would be #b00000000000000000000000000000000000000000000000000000000101111 or 47, but my print-boolean-set prints it without the #b 2018-07-31T00:39:26Z pjb: equwal: (aref #*00000000000000000000000000000000000000000000000000000000101111 61) #| --> 1 |# 2018-07-31T00:39:45Z pjb: aeth: technically, internaly it would be very different from an integer, since it is mutable! 2018-07-31T00:40:18Z aeth: I think even using a few fixnums in parallel would be better than bit-vectors, so the point after which you'd want bit vectors would probably be several hundred values. 2018-07-31T00:40:25Z aeth: pjb: If you use integers you write them as pure functions 2018-07-31T00:41:12Z nowhereman quit (Remote host closed the connection) 2018-07-31T00:41:35Z nowhereman joined #lisp 2018-07-31T00:41:55Z pjb: figurelisp: lisp programs are not lists. Lisp programs are made of functions. 2018-07-31T00:42:07Z pjb: Like in any other programming language DUH! 2018-07-31T00:42:29Z equwal: pjb lisp programs are definitely lists in a big progn. 2018-07-31T00:42:43Z pjb: Nope. 2018-07-31T00:42:46Z aeth: equwal: Lisp source code is lists. They're compiled into something else. 2018-07-31T00:42:49Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-31T00:43:00Z lumm quit (Remote host closed the connection) 2018-07-31T00:43:10Z aeth: equwal: In most implementations you can see what they ultimately become with disassemble, e.g. (disassemble #'car) 2018-07-31T00:43:11Z equwal: Well obviously they are compiled into assembly. 2018-07-31T00:43:23Z pjb: Nope. 2018-07-31T00:43:25Z pierpal joined #lisp 2018-07-31T00:43:26Z pjb: It's not obvious. 2018-07-31T00:43:41Z aeth: pjb: It's obvious once you run disassemble, if it's functional in your implementation 2018-07-31T00:46:02Z aeth: equwal: If Lisp programs were lists in a big progn at some point, then only the last list would do anything (progn executes the forms in order and returns the final element), e.g. (progn '(+ 1 2) '(+ 3 4) '(+ 5 6)) => (+ 5 6) 2018-07-31T00:46:12Z figurelisp: my lisp code is not a list? 2018-07-31T00:46:36Z figurelisp: I have read that lisp program are list 2018-07-31T00:46:54Z figurelisp: pjb: 2018-07-31T00:46:55Z pjb: figurelisp: you must distinguish the source from the actual program. 2018-07-31T00:47:23Z figurelisp: i don't understand 2018-07-31T00:47:38Z equwal: He is splitting hairs. 2018-07-31T00:47:57Z equwal: Your source code is most definitely a list. 2018-07-31T00:48:12Z equwal: Actually, lists. 2018-07-31T00:48:14Z aeth: not quite 2018-07-31T00:48:27Z aeth: Your source code is read into lists 2018-07-31T00:48:32Z Bike: well, generally it's text, and then it's read in as a bunch of lists, and then a box full of insufferable pedants compiles it into redstone blocks 2018-07-31T00:48:39Z al-damiri quit (Quit: Connection closed for inactivity) 2018-07-31T00:48:58Z aeth: http://www.lispworks.com/documentation/HyperSpec/Body/f_rd_rd.htm#read 2018-07-31T00:49:15Z no-defun-allowed: lol 2018-07-31T00:49:27Z aeth: no-defun-allowed: perfect name 2018-07-31T00:49:51Z pjb: So it would be nice if people read something about lisp before spouting bullshit here. 2018-07-31T00:50:09Z pierpal quit (Ping timeout: 248 seconds) 2018-07-31T00:50:26Z Orion3k quit (Quit: Leaving) 2018-07-31T00:50:37Z figurelisp: pjb: from where can i read the things you described? 2018-07-31T00:50:54Z figurelisp: could you please point me to a link 2018-07-31T00:51:03Z aeth: figurelisp: http://www.lispworks.com/documentation/HyperSpec/Body/02_b.htm 2018-07-31T00:51:14Z aeth: That's the reader algorithm 2018-07-31T00:51:19Z mange quit (Quit: Yup.) 2018-07-31T00:51:25Z fikka joined #lisp 2018-07-31T00:51:38Z pjb: figurelisp: http://cliki.net/Getting+Started 2018-07-31T00:51:40Z no-defun-allowed: aeth: thankyou very much 2018-07-31T00:51:50Z pjb: figurelisp: http://cliki.net/Online+Tutorial 2018-07-31T00:52:02Z equwal: figurelisp: I think that was aimed at me, not you. You might benefit from Seibel's beginner book. 2018-07-31T00:52:47Z equwal: But it would be nice if people had programmed some lisp before spouting bullshit here. 2018-07-31T00:53:25Z pjb: It was for you! 2018-07-31T00:53:34Z equwal: lol 2018-07-31T00:54:15Z aeth: Here are the characters. It looks like ( is a terminating macro char (#4 in the algorithm). http://www.lispworks.com/documentation/HyperSpec/Body/02_ad.htm 2018-07-31T00:54:25Z anewuser quit (Ping timeout: 248 seconds) 2018-07-31T00:54:31Z aeth: So I guess ( is a reader macro? 2018-07-31T00:54:37Z Bike: it is, but is that relevant? 2018-07-31T00:54:58Z Bike: i thought the question was about what source code "is" 2018-07-31T00:55:36Z pjb: (nth-value 1 (get-macro-character #\()) --> NIL, so, not non-terminating! 2018-07-31T00:55:38Z no-defun-allowed: ( tells the reader to do a thing, much like # or ; so probably 2018-07-31T00:55:46Z dddddd quit (Remote host closed the connection) 2018-07-31T00:55:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-31T00:56:37Z equwal: figurelisp said "so a big lisp program is large dataset of list then why is that efficient?" 2018-07-31T00:56:37Z equwal: I have to wonder what exactly he meant by that. I assumed he meant to ask why it is efficient to compile code from lists. 2018-07-31T00:56:58Z Bike: so they did. that sounds pretty confused. 2018-07-31T00:57:05Z pjb: Who said it was efficient? 2018-07-31T00:57:17Z Bike: figurelisp 2018-07-31T00:57:51Z equwal: It is good enough for any compiler that uses ASTs. 2018-07-31T00:57:58Z figurelisp: someone said hash tables are more efficient than list. I read somewhere that my source code is considered as list in lisp hence the question 2018-07-31T00:58:21Z Bike: saying one is "more efficient than" the other is kind of wacky. 2018-07-31T00:58:34Z Bike: 's like saying an orange is better than a sun gear 2018-07-31T00:59:12Z figurelisp: anyway what is a simple answer to "Is my program a list in lisp?" 2018-07-31T00:59:25Z Bike: "no" 2018-07-31T00:59:36Z figurelisp: is (defun add (x) (+ 2 3 x)) a list? 2018-07-31T00:59:38Z equwal: A better way to say it is "if you are searching through a list of size 'n', it is more efficient to use a hash table of size 'n' since they are O(n) and O(log n) respectively. 2018-07-31T00:59:46Z Bike: and probably better, "that's a weird thing to ask" 2018-07-31T01:00:16Z Bike: (listp '(defun add (x) (+ 2 3 x))) => T, at least 2018-07-31T01:00:16Z no-defun-allowed: if lisp programs were hash tables they wouldn't run faster 2018-07-31T01:00:34Z equwal: No, they wouldn't, since you would have to interate over them anyway, O(n) time. 2018-07-31T01:00:41Z equwal: They wouldn't even compile faster. 2018-07-31T01:00:52Z Bike: compiling in linear time would be a neat trick 2018-07-31T01:00:59Z Bike: think you can do that in forth sometimes 2018-07-31T01:01:37Z equwal: What pass of a compiler isn't O(n)? 2018-07-31T01:01:55Z Bike: couple analyses. ssa conversion off the top of my head. 2018-07-31T01:02:23Z EvW quit (Ping timeout: 276 seconds) 2018-07-31T01:04:18Z equwal: Neat. 2018-07-31T01:08:06Z equwal: Compilation is fascinating. 2018-07-31T01:08:38Z sjl joined #lisp 2018-07-31T01:08:42Z Kundry_Wag joined #lisp 2018-07-31T01:13:28Z dented42 quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-31T01:15:36Z Oladon quit (Quit: Leaving.) 2018-07-31T01:18:45Z kenster joined #lisp 2018-07-31T01:22:33Z moei quit (Ping timeout: 264 seconds) 2018-07-31T01:23:12Z loli1 joined #lisp 2018-07-31T01:23:43Z HelloDlrow joined #lisp 2018-07-31T01:27:34Z Orion3k joined #lisp 2018-07-31T01:27:38Z HelloDlrow quit (Client Quit) 2018-07-31T01:46:01Z fikka joined #lisp 2018-07-31T01:48:19Z Oladon joined #lisp 2018-07-31T01:50:54Z fikka quit (Ping timeout: 256 seconds) 2018-07-31T01:51:00Z HelloDlrow joined #lisp 2018-07-31T01:56:43Z fikka joined #lisp 2018-07-31T01:58:18Z glamas joined #lisp 2018-07-31T02:00:23Z HelloDlrow quit (Quit: Mutter: www.mutterirc.com) 2018-07-31T02:01:24Z fikka quit (Ping timeout: 244 seconds) 2018-07-31T02:02:20Z brendyn joined #lisp 2018-07-31T02:02:41Z smurfrobot quit (Remote host closed the connection) 2018-07-31T02:08:05Z figurelisp quit (Ping timeout: 240 seconds) 2018-07-31T02:08:38Z loli1 quit (Ping timeout: 244 seconds) 2018-07-31T02:10:07Z figurelisp joined #lisp 2018-07-31T02:12:25Z equwal quit (Remote host closed the connection) 2018-07-31T02:12:36Z moei joined #lisp 2018-07-31T02:12:53Z equwal joined #lisp 2018-07-31T02:13:57Z makomo_ quit (Ping timeout: 240 seconds) 2018-07-31T02:16:45Z fikka joined #lisp 2018-07-31T02:17:56Z equwal quit (Ping timeout: 244 seconds) 2018-07-31T02:21:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-31T02:21:21Z King-Calf quit (Quit: Leaving.) 2018-07-31T02:24:29Z Kevslinger joined #lisp 2018-07-31T02:27:13Z fikka joined #lisp 2018-07-31T02:27:40Z figurelisp left #lisp 2018-07-31T02:27:44Z King-Calf joined #lisp 2018-07-31T02:29:12Z stardiviner joined #lisp 2018-07-31T02:29:21Z stardiviner quit (Remote host closed the connection) 2018-07-31T02:32:09Z fikka quit (Ping timeout: 264 seconds) 2018-07-31T02:34:06Z orivej quit (Ping timeout: 256 seconds) 2018-07-31T02:47:15Z fikka joined #lisp 2018-07-31T02:49:51Z smasta joined #lisp 2018-07-31T02:51:45Z fikka quit (Ping timeout: 248 seconds) 2018-07-31T02:52:23Z Kundry_Wag quit (Remote host closed the connection) 2018-07-31T02:52:59Z Kundry_Wag joined #lisp 2018-07-31T02:57:27Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-31T02:59:04Z skapata quit (Remote host closed the connection) 2018-07-31T02:59:25Z skapata joined #lisp 2018-07-31T03:00:55Z Pixel_Outlaw joined #lisp 2018-07-31T03:01:21Z eli_oat quit (Ping timeout: 248 seconds) 2018-07-31T03:03:37Z HelloDlrow joined #lisp 2018-07-31T03:06:47Z HelloDlrow quit (Client Quit) 2018-07-31T03:07:51Z fikka joined #lisp 2018-07-31T03:11:32Z EvW1 joined #lisp 2018-07-31T03:12:17Z saki joined #lisp 2018-07-31T03:12:25Z equwal joined #lisp 2018-07-31T03:12:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-31T03:18:22Z fikka joined #lisp 2018-07-31T03:18:43Z Mutter joined #lisp 2018-07-31T03:21:11Z beach: Good morning everyone! 2018-07-31T03:22:29Z robotoad joined #lisp 2018-07-31T03:22:30Z robotoad quit (Client Quit) 2018-07-31T03:23:14Z fikka quit (Ping timeout: 260 seconds) 2018-07-31T03:23:31Z SaganMan joined #lisp 2018-07-31T03:23:37Z robotoad joined #lisp 2018-07-31T03:23:47Z robotoad quit (Client Quit) 2018-07-31T03:26:20Z Kundry_Wag joined #lisp 2018-07-31T03:27:10Z troydm quit (Ping timeout: 244 seconds) 2018-07-31T03:27:38Z eli_oat joined #lisp 2018-07-31T03:28:21Z fikka joined #lisp 2018-07-31T03:29:20Z Pixel_Outlaw quit (Quit: Leaving) 2018-07-31T03:32:17Z eli_oat quit (Ping timeout: 248 seconds) 2018-07-31T03:32:53Z eli_oat joined #lisp 2018-07-31T03:33:05Z fikka quit (Ping timeout: 240 seconds) 2018-07-31T03:33:56Z robotoad joined #lisp 2018-07-31T03:37:01Z pierpa quit (Quit: Page closed) 2018-07-31T03:38:38Z fikka joined #lisp 2018-07-31T03:39:30Z Mutter quit (Quit: Mutter: www.mutterirc.com) 2018-07-31T03:40:38Z karlosz quit (Quit: karlosz) 2018-07-31T03:43:29Z fikka quit (Ping timeout: 248 seconds) 2018-07-31T03:43:50Z Mutter joined #lisp 2018-07-31T03:47:37Z Oladon quit (Quit: Leaving.) 2018-07-31T03:50:34Z Jesin joined #lisp 2018-07-31T03:53:18Z JuanDaugherty quit (Quit: Exeunt) 2018-07-31T03:55:14Z Copenhagen_Bram quit (Read error: Connection reset by peer) 2018-07-31T03:57:18Z ebrasca joined #lisp 2018-07-31T03:59:03Z fikka joined #lisp 2018-07-31T03:59:28Z skapata quit (Remote host closed the connection) 2018-07-31T03:59:35Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-31T04:00:18Z Mutter quit (Quit: Mutter: www.mutterirc.com) 2018-07-31T04:00:22Z saki quit (Quit: saki) 2018-07-31T04:01:22Z Mutter joined #lisp 2018-07-31T04:01:28Z skapata joined #lisp 2018-07-31T04:04:04Z fikka quit (Ping timeout: 260 seconds) 2018-07-31T04:05:21Z eli_oat quit (Ping timeout: 248 seconds) 2018-07-31T04:05:58Z eli_oat joined #lisp 2018-07-31T04:06:25Z msb quit (Ping timeout: 248 seconds) 2018-07-31T04:06:30Z Kaisyu7 quit (Remote host closed the connection) 2018-07-31T04:06:46Z Kaisyu7 joined #lisp 2018-07-31T04:06:57Z bitch quit (Ping timeout: 248 seconds) 2018-07-31T04:06:57Z Guest10120 quit (Ping timeout: 248 seconds) 2018-07-31T04:06:57Z dcluna quit (Ping timeout: 248 seconds) 2018-07-31T04:07:29Z ircbrowse_ quit (Ping timeout: 248 seconds) 2018-07-31T04:08:33Z Orion3k quit (Ping timeout: 248 seconds) 2018-07-31T04:08:44Z gector quit (Ping timeout: 260 seconds) 2018-07-31T04:09:02Z Mutter quit (Quit: Mutter: www.mutterirc.com) 2018-07-31T04:09:05Z vert2_ quit (Ping timeout: 248 seconds) 2018-07-31T04:09:26Z fikka joined #lisp 2018-07-31T04:09:28Z glamas_ joined #lisp 2018-07-31T04:09:56Z vert2 joined #lisp 2018-07-31T04:10:10Z gector joined #lisp 2018-07-31T04:12:28Z pierpal joined #lisp 2018-07-31T04:12:38Z glamas quit (Ping timeout: 244 seconds) 2018-07-31T04:13:20Z dcluna joined #lisp 2018-07-31T04:14:08Z pierpal quit (Client Quit) 2018-07-31T04:14:16Z fikka quit (Ping timeout: 256 seconds) 2018-07-31T04:14:23Z pierpal joined #lisp 2018-07-31T04:14:36Z msb joined #lisp 2018-07-31T04:14:53Z nicht joined #lisp 2018-07-31T04:15:29Z slyrus_ quit (Ping timeout: 248 seconds) 2018-07-31T04:15:37Z ircbrowse joined #lisp 2018-07-31T04:17:07Z Kaisyu joined #lisp 2018-07-31T04:17:22Z Guest12051 joined #lisp 2018-07-31T04:17:26Z bitch joined #lisp 2018-07-31T04:19:22Z fikka joined #lisp 2018-07-31T04:21:38Z Orion3k joined #lisp 2018-07-31T04:23:29Z no-defun-allowed: hi beach 2018-07-31T04:23:36Z scymtym quit (Remote host closed the connection) 2018-07-31T04:24:42Z fikka quit (Ping timeout: 268 seconds) 2018-07-31T04:26:57Z shka1 joined #lisp 2018-07-31T04:27:16Z nicht quit (Quit: Leaving) 2018-07-31T04:27:49Z slyrus_ joined #lisp 2018-07-31T04:28:24Z Kundry_Wag joined #lisp 2018-07-31T04:30:33Z EvW1 quit (Ping timeout: 265 seconds) 2018-07-31T04:39:40Z fikka joined #lisp 2018-07-31T04:44:46Z fikka quit (Ping timeout: 264 seconds) 2018-07-31T04:45:02Z LdBeth: good afternoon 2018-07-31T04:48:43Z no-defun-allowed: afternoon 2018-07-31T04:51:43Z gz quit (Read error: Connection reset by peer) 2018-07-31T04:52:02Z gz joined #lisp 2018-07-31T04:53:08Z swflint quit (Ping timeout: 276 seconds) 2018-07-31T04:53:40Z skapata quit (Remote host closed the connection) 2018-07-31T04:54:09Z swflint joined #lisp 2018-07-31T04:54:57Z nanoz quit (Ping timeout: 264 seconds) 2018-07-31T04:55:05Z eli_oat quit (Ping timeout: 240 seconds) 2018-07-31T04:59:43Z pagnol joined #lisp 2018-07-31T05:00:19Z fikka joined #lisp 2018-07-31T05:00:19Z eli_oat joined #lisp 2018-07-31T05:00:58Z Kundry_Wag quit (Ping timeout: 264 seconds) 2018-07-31T05:02:34Z loli1 joined #lisp 2018-07-31T05:05:29Z fikka quit (Ping timeout: 276 seconds) 2018-07-31T05:06:50Z igemnace joined #lisp 2018-07-31T05:07:52Z nowhereman quit (Disconnected by services) 2018-07-31T05:08:16Z nowhere_man joined #lisp 2018-07-31T05:09:05Z orivej joined #lisp 2018-07-31T05:10:47Z fikka joined #lisp 2018-07-31T05:15:09Z fikka quit (Ping timeout: 244 seconds) 2018-07-31T05:15:43Z Inline quit (Remote host closed the connection) 2018-07-31T05:26:44Z on_ion quit (Quit: WeeChat 1.9.1) 2018-07-31T05:27:35Z loli1 quit (Ping timeout: 276 seconds) 2018-07-31T05:29:45Z Kundry_Wag joined #lisp 2018-07-31T05:30:48Z fikka joined #lisp 2018-07-31T05:31:13Z Kevslinger quit (Quit: Connection closed for inactivity) 2018-07-31T05:35:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-31T05:39:26Z eli_oat quit (Ping timeout: 244 seconds) 2018-07-31T05:40:48Z eli_oat joined #lisp 2018-07-31T05:41:11Z fikka joined #lisp 2018-07-31T05:42:27Z smurfrobot joined #lisp 2018-07-31T05:45:24Z sauvin joined #lisp 2018-07-31T05:45:35Z fikka quit (Ping timeout: 240 seconds) 2018-07-31T05:47:56Z _paul0 joined #lisp 2018-07-31T05:49:44Z _paul0 quit (Client Quit) 2018-07-31T05:49:57Z paul0 quit (Read error: Connection reset by peer) 2018-07-31T05:51:14Z fikka joined #lisp 2018-07-31T05:55:45Z fikka quit (Ping timeout: 248 seconds) 2018-07-31T05:57:31Z orivej quit (Ping timeout: 244 seconds) 2018-07-31T06:00:20Z igemnace quit (Remote host closed the connection) 2018-07-31T06:02:04Z igemnace joined #lisp 2018-07-31T06:03:02Z igemnace quit (Client Quit) 2018-07-31T06:03:31Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-31T06:04:02Z fikka joined #lisp 2018-07-31T06:05:14Z vIkSiT joined #lisp 2018-07-31T06:06:49Z orivej joined #lisp 2018-07-31T06:16:56Z Jesin quit (Ping timeout: 268 seconds) 2018-07-31T06:20:12Z orivej quit (Ping timeout: 256 seconds) 2018-07-31T06:20:27Z smasta quit (Ping timeout: 240 seconds) 2018-07-31T06:21:52Z fikka quit (Ping timeout: 268 seconds) 2018-07-31T06:25:04Z ofi joined #lisp 2018-07-31T06:28:00Z smasta joined #lisp 2018-07-31T06:30:05Z vIkSiT quit (Quit: This computer has gone to sleep) 2018-07-31T06:32:56Z flamebeard joined #lisp 2018-07-31T06:33:37Z vIkSiT joined #lisp 2018-07-31T06:34:21Z smurfrobot quit (Remote host closed the connection) 2018-07-31T06:36:28Z Kundry_Wag joined #lisp 2018-07-31T06:37:39Z MrSleepy quit (Quit: Leaving) 2018-07-31T06:37:49Z fikka joined #lisp 2018-07-31T06:38:03Z eli_oat1 joined #lisp 2018-07-31T06:38:57Z eli_oat quit (Ping timeout: 240 seconds) 2018-07-31T06:38:57Z eli_oat1 is now known as eli_oat 2018-07-31T06:40:32Z vIkSiT quit (Quit: This computer has gone to sleep) 2018-07-31T06:42:44Z fikka quit (Ping timeout: 260 seconds) 2018-07-31T06:42:51Z smurfrobot joined #lisp 2018-07-31T06:47:01Z glamas__ joined #lisp 2018-07-31T06:47:01Z glamas_ quit (Read error: Connection reset by peer) 2018-07-31T06:48:13Z fikka joined #lisp 2018-07-31T06:48:33Z smasta quit (Ping timeout: 248 seconds) 2018-07-31T06:52:23Z eli_oat1 joined #lisp 2018-07-31T06:52:42Z eli_oat quit (Ping timeout: 268 seconds) 2018-07-31T06:52:42Z eli_oat1 is now known as eli_oat 2018-07-31T06:53:22Z Jesin joined #lisp 2018-07-31T06:54:18Z smasta joined #lisp 2018-07-31T06:57:02Z eli_oat quit (Ping timeout: 256 seconds) 2018-07-31T06:59:57Z vlatkoB joined #lisp 2018-07-31T07:00:43Z shka1 quit (Ping timeout: 268 seconds) 2018-07-31T07:03:50Z Smokitch joined #lisp 2018-07-31T07:05:11Z nowhereman_ joined #lisp 2018-07-31T07:05:17Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-31T07:05:36Z eli_oat joined #lisp 2018-07-31T07:06:10Z atlan joined #lisp 2018-07-31T07:06:48Z atlan: hi 2018-07-31T07:09:21Z Kundry_Wag quit (Ping timeout: 268 seconds) 2018-07-31T07:12:28Z aeth: Are there any flaws with the CL type system? 2018-07-31T07:18:11Z eli_oat1 joined #lisp 2018-07-31T07:18:25Z eli_oat quit (Ping timeout: 248 seconds) 2018-07-31T07:18:25Z eli_oat1 is now known as eli_oat 2018-07-31T07:18:45Z pagnol quit (Ping timeout: 265 seconds) 2018-07-31T07:18:50Z Jesin quit (Quit: Leaving) 2018-07-31T07:23:14Z no-defun-allowed: well it'd be nice if it took type variables honestly 2018-07-31T07:23:29Z no-defun-allowed: the typical one in hasklel speak for map is `(a -> b) -> a -> b` 2018-07-31T07:25:17Z no-defun-allowed: no it's `(a -> b) -> [a] -> [b]` 2018-07-31T07:25:18Z no-defun-allowed: how does it work? idk 2018-07-31T07:26:06Z galiley joined #lisp 2018-07-31T07:26:17Z hiroaki joined #lisp 2018-07-31T07:27:37Z smurfrobot quit (Remote host closed the connection) 2018-07-31T07:28:01Z HeyFlash joined #lisp 2018-07-31T07:28:08Z tralala joined #lisp 2018-07-31T07:30:43Z aeth: no-defun-allowed: I don't understand what you mean by "took type variables honestly" 2018-07-31T07:33:22Z beach: Hello atlan. 2018-07-31T07:35:29Z hiroaki quit (Ping timeout: 248 seconds) 2018-07-31T07:36:19Z beach: no-defun-allowed: So you would like for Common Lisp to be statically typed rather than dynamically? 2018-07-31T07:37:05Z beach: no-defun-allowed: I.e. changing one of the absolutely most fundamental characteristics about Common Lisp? I think that would turn it into a completely different language. 2018-07-31T07:37:06Z gravicappa joined #lisp 2018-07-31T07:37:53Z igemnace joined #lisp 2018-07-31T07:41:35Z Kundry_Wag joined #lisp 2018-07-31T07:42:29Z aeth: no-defun-allowed: CL is already potentially "gradually typed" (dynamically typed with optional static typing), but it's implementation-specific and the syntax is awkward (the syntax isn't an issue, though: write a macro). I think SBCL is the only implementation that does this (I wouldn't be surprised if CMUCL also does because SBCL is a CMUCL fork). 2018-07-31T07:42:40Z aeth: SBCL did this many years before it was cool to do so. 2018-07-31T07:48:13Z aeth: I just checked and CMUCL does not do anything with type declarations for function arguments, at least by default. CMUCL, ABCL, ECL, and CLISP all permit (defun foo (x) (declare (single-float x)) (+ x x)) (foo 1) and fail with a "not a number" error when trying to do * when given (foo "Hello") instead of failing with not a single-float at the start of the foo function 2018-07-31T07:48:36Z fikka quit (Ping timeout: 256 seconds) 2018-07-31T07:49:13Z aeth: Interestingly, CCL now *does* respect type declarations, even with (optimize (safety 0)), making it more reliable than SBCL, which checks except when safety is 0. 2018-07-31T07:50:50Z angavrilov joined #lisp 2018-07-31T07:51:42Z pdv joined #lisp 2018-07-31T07:52:29Z pdv: Hi, I have five Boolean flags that I need easily set and reset. What data structure should I use? (I’m writing in emacs lisp) 2018-07-31T07:53:46Z smurfrobot joined #lisp 2018-07-31T07:54:27Z fikka joined #lisp 2018-07-31T07:57:16Z vlad_ joined #lisp 2018-07-31T07:57:36Z newbie quit (Read error: Connection reset by peer) 2018-07-31T07:58:11Z troydm joined #lisp 2018-07-31T07:58:57Z fikka quit (Ping timeout: 240 seconds) 2018-07-31T07:59:03Z vlad_ is now known as DonVlad 2018-07-31T08:00:01Z smurfrobot quit (Ping timeout: 248 seconds) 2018-07-31T08:00:41Z varjag joined #lisp 2018-07-31T08:01:48Z araujo joined #lisp 2018-07-31T08:02:08Z LdBeth: pdv: vector 2018-07-31T08:02:09Z fikka joined #lisp 2018-07-31T08:05:03Z pdv: LdBeth: but it would be nice to name the flags, should I then create access functions myself? 2018-07-31T08:05:19Z pdv: Or are there good macros for that? 2018-07-31T08:06:08Z LdBeth: pdv: then use `cl-defstruct` 2018-07-31T08:07:21Z pdv: Ok so no plists? Or alists? 2018-07-31T08:11:02Z LdBeth: list is slow and less space effecient 2018-07-31T08:11:31Z aeth: There's many ways to do it with a boolean. e.g. You can just have a function consisting of an ecase assign meaning to the bits of an integer. (Then you wouldn't update the data structure itself, you'd *replace* the integer) 2018-07-31T08:14:05Z King-Calf quit (Ping timeout: 240 seconds) 2018-07-31T08:14:47Z Kundry_Wag quit (Ping timeout: 245 seconds) 2018-07-31T08:16:03Z pdv: Ok thanks I’ll look into that as well. 2018-07-31T08:16:05Z King-Calf joined #lisp 2018-07-31T08:17:37Z svillemot joined #lisp 2018-07-31T08:17:40Z King-Calf1 joined #lisp 2018-07-31T08:18:32Z pdv: Just for clarity I thought it would be nice to name them and use something like a struct. But then again maybe I just have a too much of a C mind set 2018-07-31T08:19:48Z aeth: You should probably use the struct way 2018-07-31T08:20:11Z smurfrobot joined #lisp 2018-07-31T08:20:37Z nowhereman_ quit (Ping timeout: 245 seconds) 2018-07-31T08:20:43Z pdv: How would you do it with the ecase way? Can you write an example? 2018-07-31T08:21:08Z King-Calf quit (Ping timeout: 276 seconds) 2018-07-31T08:21:25Z nowhereman_ joined #lisp 2018-07-31T08:23:54Z aeth: If you're really thinking like C, you would make your flags #b1, #b10, #b100, etc and use the logic operations on them like (logior #b00010 #b00001) to union two of them. 2018-07-31T08:24:33Z smurfrobot quit (Ping timeout: 248 seconds) 2018-07-31T08:25:28Z pdv: Maybe I should not think too much in C :) 2018-07-31T08:25:29Z aeth: If you were working with a global variable it'd go like this: (setf *flag* (logior *flag* #b00001)) ; adds the value represented by #b00001 2018-07-31T08:25:51Z pdv: Ah right 2018-07-31T08:26:07Z aeth: The ecase would just name those 5 sets. 2018-07-31T08:26:24Z pdv: I’m curious 2018-07-31T08:26:53Z LdBeth: Emacs Lisp has bool-vector but cl-defstruct doesn't support that 2018-07-31T08:29:05Z aeth: pdv: (defun foobar (keyword) (ecase keyword (:foo #b00001) (:bar #b00010) (:baz #b00100))) 2018-07-31T08:29:24Z MoziM: does lisp have pointers? 2018-07-31T08:29:40Z pdv: Great! Thanks all! 2018-07-31T08:30:16Z aeth: MoziM: cffi:foreign-pointer, if that's what you mean 2018-07-31T08:31:49Z robotoad quit (Quit: robotoad) 2018-07-31T08:32:22Z aeth: e.g. (cffi:make-pointer 0) 2018-07-31T08:32:23Z _death: better to just (defconst foo #b00001) etc.. another representation is a list with the set flags represented as symbols 2018-07-31T08:32:31Z aeth: _death: Ime, you need it all 2018-07-31T08:32:43Z aeth: You need the constant, you need the functions that go both ways, and you need more than that, too 2018-07-31T08:33:11Z aeth: If you want to make sure you can update it for new changes, you can generate it all in one big macro. But for 5 values, it's probably not a big deal 2018-07-31T08:33:49Z LdBeth: bool-array just do that for you 2018-07-31T08:34:16Z dddddd joined #lisp 2018-07-31T08:34:20Z aeth: LdBeth: This is the fastest solution, not the easiest. There are definitely 10 ways to do this. 2018-07-31T08:36:46Z LdBeth: bool-array does exact the same thing internally 2018-07-31T08:37:41Z aeth: It does? This is why you ask in #emacs and not in #lisp 2018-07-31T08:37:47Z makomo_ joined #lisp 2018-07-31T08:39:10Z pdv: LdBeth: Thanks, ill check that too 2018-07-31T08:39:22Z _death: if you want to set multiple flags, or toggle flags, bool-array can be cumbersome.. similarly in CL, bit-vector has its disadvantages 2018-07-31T08:40:42Z wildbartty quit (Quit: Leaving) 2018-07-31T08:40:51Z wildbartty joined #lisp 2018-07-31T08:40:52Z aeth: Oh, I wasn't talking about a bit-vector. I was talking about an integer. Those are the two ways to do it, each with advantages and disadvantages. 2018-07-31T08:41:18Z _death: yes.. the integer is what I usually prefer 2018-07-31T08:41:21Z aeth: I prefer the integer approach because you can write pure functions more easily. 2018-07-31T08:41:39Z aeth: It looks like bool-vector is just the emacs lisp name for bit-vector 2018-07-31T08:42:22Z LdBeth: no, bool-vector is a tuple of length and a integer 2018-07-31T08:42:36Z aeth: well that's just plain confusing then 2018-07-31T08:42:49Z aeth: Why is the length necessary? In CL, it's not 2018-07-31T08:43:00Z _death: well, it also takes booleans rather than (integer 0 1) 2018-07-31T08:43:56Z aeth: When I work with bit flags I just work with sets, not t & nil or 1 & 0. 2018-07-31T08:44:12Z aeth: represent :foo with #b00001, not the index 0 2018-07-31T08:44:49Z aeth: This is what I do: https://gitlab.com/zombie-raptor/zombie-raptor/blob/46617fa0f5ee2f9524704dc2ec2af054aaa8b224/math/boolean-set.lisp 2018-07-31T08:44:57Z makomo_ quit (Quit: WeeChat 2.0.1) 2018-07-31T08:45:01Z JuanDaugherty joined #lisp 2018-07-31T08:45:03Z aeth: Obviously the name mapping is elsewhere. 2018-07-31T08:45:51Z Kundry_Wag joined #lisp 2018-07-31T08:46:42Z _death: I usually implement it directly into the abstract data type I want to define, rather than a general set type 2018-07-31T08:46:57Z DonVlad quit (Ping timeout: 248 seconds) 2018-07-31T08:46:59Z random-nick joined #lisp 2018-07-31T08:47:01Z _death: this way I'm not limited to using just those bit tricks 2018-07-31T08:48:40Z LdBeth: usually people use bit array for reserving RAM 2018-07-31T08:48:55Z beach: Improved layout of control arcs in the IR viewer: http://metamodular.com/IR-viewer.png so that "long" control arcs do not overlap. 2018-07-31T08:50:01Z _death: LdBeth: this is one the issues of bit vectors.. that you need to allocate them, whereas the integer will usually be a fixnum 2018-07-31T08:50:12Z beach: Still remaining for the layout: 1) position data so that it never overlaps with long control arcs and 2) give more vertical space above an instruction with many predecessors. 2018-07-31T08:50:34Z fourier joined #lisp 2018-07-31T08:54:08Z aeth: _death: Well, the set functions are all very trivial. I just use them to reduce the chance of error. 'logior' doesn't really express the intent well. 2018-07-31T08:54:19Z smurfrobot joined #lisp 2018-07-31T08:58:21Z galiley quit (Remote host closed the connection) 2018-07-31T08:59:14Z smurfrobot quit (Ping timeout: 260 seconds) 2018-07-31T09:01:11Z _death: aeth: interesting.. to me intent is clear with LOGIOR 2018-07-31T09:03:00Z _death: it's weird that you have set-member-p which turns to indices 2018-07-31T09:03:35Z no-defun-allowed: dynamic typing should be default of course 2018-07-31T09:04:12Z no-defun-allowed: but when you do type declarations (and inference) it might be clever to say "the same type as the input FOO" or something 2018-07-31T09:07:31Z _death: aeth: I'd usually work in terms of LOGTEST or LOGALL (user-defined, substitute universal quantifier for LOGTEST's existential one) 2018-07-31T09:14:02Z rozenglass quit (Remote host closed the connection) 2018-07-31T09:17:34Z atlan1 joined #lisp 2018-07-31T09:18:05Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-31T09:19:14Z aeth: _death: I don't use the one that works with indices anywhere, I guess I added it for completeness. 2018-07-31T09:19:32Z atlan quit (Ping timeout: 244 seconds) 2018-07-31T09:22:01Z shrdlu68 joined #lisp 2018-07-31T09:22:10Z no-defun-allowed: i'm not saying lisp should be static, but when we want static it should be clever 2018-07-31T09:22:59Z pjb: Still use both defstrut and vector! 2018-07-31T09:23:46Z pjb: (defstruct (flags (:type vector) (:conc-name f-)) a b c d e) (fill (make-flags) t) --> [t t t t t] 2018-07-31T09:24:07Z pjb: (fill (make-flags) t :start 1 :end 3) #| --> #(nil t t nil nil) |# 2018-07-31T09:24:16Z pjb: I mean: (fill (make-flags) t :start 1 :end 3) -> [nil t t nil nil] 2018-07-31T09:25:12Z BitPuffin joined #lisp 2018-07-31T09:25:53Z _death: again, if it's a set of flags what's the point of concerning yourself with indices (and therefore order) 2018-07-31T09:27:02Z _death: if efficiency is not a concern, (union '(green tasty) '(poisonous)) is nice 2018-07-31T09:28:33Z shrdlu68 quit (Ping timeout: 248 seconds) 2018-07-31T09:29:05Z shrdlu68 joined #lisp 2018-07-31T09:29:53Z pjb: It all depends on the meaning of "easily". 2018-07-31T09:30:04Z pjb: Why people never say what they want to optimize? 2018-07-31T09:34:25Z shrdlu68 quit (Ping timeout: 248 seconds) 2018-07-31T09:35:14Z shrdlu68 joined #lisp 2018-07-31T09:35:23Z aeth: _death: Oh, I generate my sets with macros so you cannot rely on the indices (e.g. 2) or directly using literal value (e.g. #b100) 2018-07-31T09:35:56Z aeth: That's an internal implementation detail that the user shouldn't see 2018-07-31T09:36:24Z EvW joined #lisp 2018-07-31T09:36:48Z pdv: pjp: speed 2018-07-31T09:37:46Z no-defun-allowed: pjb: (optimize (speed 3) (safety 1) (debug 0) (space 0)) 2018-07-31T09:37:48Z pjb: speed for what operations? 2018-07-31T09:37:49Z no-defun-allowed: happy now? 2018-07-31T09:38:05Z pjb: speed of writing the code? 2018-07-31T09:38:25Z pjb: speed of debugging the code? This is where you will spend most of the time. 2018-07-31T09:38:26Z pdv: Execution 2018-07-31T09:38:48Z EvW quit (Client Quit) 2018-07-31T09:38:54Z pjb: there's no difference in the time required to access structure slots or vector slots. 2018-07-31T09:39:10Z pdv: Ok right 2018-07-31T09:39:12Z pjb: The best proof is this :type vector option of defstruct! It's the same thing! 2018-07-31T09:39:17Z aeth: pjb: Personally, I wrote my set implementation to be run millions of times a second at the core of the hot loop in my game engine. 2018-07-31T09:39:21Z EvW1 joined #lisp 2018-07-31T09:39:49Z msb quit (Ping timeout: 268 seconds) 2018-07-31T09:39:50Z pdv: Yes I want to do something similar 2018-07-31T09:39:55Z pjb: ^ and yes, optimization is a global thing. 2018-07-31T09:40:11Z pjb: There's optimizing "speed" or anything in general. You have to consider your whole application. 2018-07-31T09:40:35Z shrdlu68 quit (Ping timeout: 240 seconds) 2018-07-31T09:40:44Z pdv: Sure but if it’s in the inner loop... 2018-07-31T09:41:29Z shrdlu68 joined #lisp 2018-07-31T09:43:31Z msb joined #lisp 2018-07-31T09:43:35Z EvW1 quit (Ping timeout: 245 seconds) 2018-07-31T09:45:54Z fourier quit (Ping timeout: 260 seconds) 2018-07-31T09:47:13Z shrdlu68 quit (Ping timeout: 268 seconds) 2018-07-31T09:47:39Z shrdlu68 joined #lisp 2018-07-31T09:53:04Z Kundry_Wag joined #lisp 2018-07-31T09:53:12Z orivej joined #lisp 2018-07-31T09:55:15Z reu quit (Ping timeout: 245 seconds) 2018-07-31T09:55:57Z shrdlu68 quit (Ping timeout: 240 seconds) 2018-07-31T09:56:51Z shrdlu68 joined #lisp 2018-07-31T09:58:29Z smurfrobot joined #lisp 2018-07-31T10:02:09Z shrdlu68 quit (Ping timeout: 248 seconds) 2018-07-31T10:03:04Z shrdlu68 joined #lisp 2018-07-31T10:03:24Z smurfrobot quit (Ping timeout: 260 seconds) 2018-07-31T10:08:46Z shrdlu68 quit (Ping timeout: 264 seconds) 2018-07-31T10:09:02Z argoneus quit (Quit: No Ping reply in 210 seconds.) 2018-07-31T10:09:13Z shrdlu68 joined #lisp 2018-07-31T10:09:42Z fikka quit (Ping timeout: 256 seconds) 2018-07-31T10:11:29Z argoneus joined #lisp 2018-07-31T10:14:27Z shrdlu68 quit (Ping timeout: 240 seconds) 2018-07-31T10:14:32Z glamas_ joined #lisp 2018-07-31T10:15:22Z shrdlu68 joined #lisp 2018-07-31T10:15:26Z fikka joined #lisp 2018-07-31T10:15:49Z Kaisyu quit (Quit: Connection closed for inactivity) 2018-07-31T10:17:42Z glamas__ quit (Ping timeout: 260 seconds) 2018-07-31T10:18:41Z JuanDaugherty quit (Quit: Exeunt) 2018-07-31T10:20:17Z fikka quit (Ping timeout: 248 seconds) 2018-07-31T10:21:08Z shrdlu68 quit (Ping timeout: 268 seconds) 2018-07-31T10:21:33Z shrdlu68 joined #lisp 2018-07-31T10:21:56Z atlan joined #lisp 2018-07-31T10:24:18Z atlan1 quit (Ping timeout: 256 seconds) 2018-07-31T10:25:34Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-31T10:25:34Z kajo quit (Ping timeout: 256 seconds) 2018-07-31T10:26:40Z fikka joined #lisp 2018-07-31T10:26:57Z kajo joined #lisp 2018-07-31T10:34:58Z vlatkoB_ joined #lisp 2018-07-31T10:38:56Z vlatkoB quit (Ping timeout: 276 seconds) 2018-07-31T10:41:02Z fikka quit (Ping timeout: 245 seconds) 2018-07-31T10:44:44Z shrdlu68 quit (Remote host closed the connection) 2018-07-31T10:44:53Z shrdlu68 joined #lisp 2018-07-31T10:46:41Z vap1 joined #lisp 2018-07-31T10:46:41Z vaporatorius joined #lisp 2018-07-31T10:46:41Z vaporatorius quit (Changing host) 2018-07-31T10:46:41Z vaporatorius joined #lisp 2018-07-31T10:46:55Z random-nick quit (Read error: error:1408F10B:SSL routines:ssl3_get_record:wrong version number) 2018-07-31T10:47:18Z random-nick joined #lisp 2018-07-31T10:48:22Z glamas_ quit (Quit: Leaving) 2018-07-31T10:48:24Z atlan1 joined #lisp 2018-07-31T10:48:24Z makomo joined #lisp 2018-07-31T10:48:35Z vaporatorius__ quit (Ping timeout: 240 seconds) 2018-07-31T10:49:57Z shrdlu68 quit (Ping timeout: 240 seconds) 2018-07-31T10:50:27Z atlan quit (Ping timeout: 240 seconds) 2018-07-31T10:51:01Z shrdlu68 joined #lisp 2018-07-31T10:51:55Z DonVlad joined #lisp 2018-07-31T10:54:49Z Kundry_Wag joined #lisp 2018-07-31T10:55:11Z smasta quit (Ping timeout: 276 seconds) 2018-07-31T10:56:27Z shrdlu68 quit (Ping timeout: 240 seconds) 2018-07-31T10:56:28Z m00natic joined #lisp 2018-07-31T10:57:11Z shrdlu68 joined #lisp 2018-07-31T10:57:11Z fikka joined #lisp 2018-07-31T10:58:11Z smasta joined #lisp 2018-07-31T11:02:27Z fikka quit (Ping timeout: 268 seconds) 2018-07-31T11:02:54Z shrdlu68 quit (Ping timeout: 260 seconds) 2018-07-31T11:03:19Z shrdlu68 joined #lisp 2018-07-31T11:04:44Z atlan joined #lisp 2018-07-31T11:05:55Z atlan1 quit (Ping timeout: 265 seconds) 2018-07-31T11:06:39Z EvW joined #lisp 2018-07-31T11:07:19Z shrdlu68 quit (Client Quit) 2018-07-31T11:07:51Z vap1 quit (Quit: Leaving) 2018-07-31T11:11:25Z hiroaki joined #lisp 2018-07-31T11:13:09Z no-defun-allowed: Yeah Lisp loses its magic statically typed so don't do that. We should definitely work on inference for mathcentric sections of our programs though. 2018-07-31T11:18:10Z fikka joined #lisp 2018-07-31T11:23:22Z fikka quit (Ping timeout: 256 seconds) 2018-07-31T11:28:10Z Kundry_Wag quit (Ping timeout: 260 seconds) 2018-07-31T11:28:39Z fikka joined #lisp 2018-07-31T11:33:12Z pfdietz_ quit 2018-07-31T11:33:26Z fikka quit (Ping timeout: 256 seconds) 2018-07-31T11:35:35Z smasta quit (Ping timeout: 240 seconds) 2018-07-31T11:38:30Z fikka joined #lisp 2018-07-31T11:46:36Z smurfrobot joined #lisp 2018-07-31T11:48:26Z EvW quit (Ping timeout: 255 seconds) 2018-07-31T11:50:55Z smurfrobot quit (Ping timeout: 244 seconds) 2018-07-31T11:51:54Z kajo quit (Ping timeout: 260 seconds) 2018-07-31T11:53:55Z kajo joined #lisp 2018-07-31T11:55:17Z pierpal quit (Quit: Poof) 2018-07-31T11:55:37Z pierpal joined #lisp 2018-07-31T11:59:23Z Kundry_Wag joined #lisp 2018-07-31T12:00:57Z kajo quit (Ping timeout: 264 seconds) 2018-07-31T12:02:08Z Kundry_Wag quit (Remote host closed the connection) 2018-07-31T12:02:15Z kajo joined #lisp 2018-07-31T12:02:22Z Kundry_Wag joined #lisp 2018-07-31T12:02:35Z pierpal quit (Quit: Poof) 2018-07-31T12:02:55Z pierpal joined #lisp 2018-07-31T12:04:15Z Kundry_Wag quit (Remote host closed the connection) 2018-07-31T12:05:47Z dim: pdv: a very efficient way to optimize something that's in the inner loop is to fnid a way to *not* do it in the inner loop at all, you can't beat that 2018-07-31T12:11:55Z saki joined #lisp 2018-07-31T12:36:14Z Bike_ joined #lisp 2018-07-31T12:41:33Z MoziM quit (Quit: WeeChat 2.2) 2018-07-31T12:44:59Z Kundry_Wag joined #lisp 2018-07-31T12:48:29Z fikka quit (Ping timeout: 260 seconds) 2018-07-31T12:51:28Z test1600 joined #lisp 2018-07-31T12:53:02Z fikka joined #lisp 2018-07-31T12:55:05Z maximjaffe joined #lisp 2018-07-31T12:55:25Z LiamH joined #lisp 2018-07-31T12:59:09Z zfree joined #lisp 2018-07-31T13:02:25Z Arcaelyx quit (Max SendQ exceeded) 2018-07-31T13:03:35Z charh quit (Ping timeout: 245 seconds) 2018-07-31T13:06:03Z EvW1 joined #lisp 2018-07-31T13:09:57Z fikka quit (Ping timeout: 264 seconds) 2018-07-31T13:10:16Z mindCrime joined #lisp 2018-07-31T13:15:15Z fikka joined #lisp 2018-07-31T13:15:18Z nowhereman_ is now known as nowhere_man 2018-07-31T13:15:19Z Arcaelyx joined #lisp 2018-07-31T13:15:45Z maximjaffe quit (Quit: Leaving) 2018-07-31T13:18:02Z quipa joined #lisp 2018-07-31T13:18:14Z Kundry_Wag quit (Ping timeout: 244 seconds) 2018-07-31T13:18:15Z smurfrobot joined #lisp 2018-07-31T13:23:38Z quipa is now known as maximjaffe_ 2018-07-31T13:24:17Z EvW1 quit (Ping timeout: 255 seconds) 2018-07-31T13:25:55Z maximjaffe_ is now known as quipa_ 2018-07-31T13:26:40Z quipa_ is now known as maximjaffe 2018-07-31T13:28:03Z Denommus joined #lisp 2018-07-31T13:30:04Z Kevslinger joined #lisp 2018-07-31T13:35:39Z Bronsa joined #lisp 2018-07-31T13:37:25Z nowhere_man quit (Ping timeout: 256 seconds) 2018-07-31T13:37:32Z argoneus quit (Ping timeout: 256 seconds) 2018-07-31T13:38:13Z nowhere_man joined #lisp 2018-07-31T13:40:39Z argoneus joined #lisp 2018-07-31T13:42:45Z pdv: dim: True! 2018-07-31T13:44:52Z varjag quit (Quit: ERC (IRC client for Emacs 24.5.1)) 2018-07-31T13:45:26Z Denommus quit (Remote host closed the connection) 2018-07-31T13:48:00Z nirved joined #lisp 2018-07-31T13:48:09Z zfree quit (Quit: zfree) 2018-07-31T13:51:32Z mkolenda joined #lisp 2018-07-31T13:51:50Z dlowe: I'm not convinced lisp would lose its magic with static typing. 2018-07-31T13:51:59Z dlowe: Bad static types, sure. 2018-07-31T13:52:26Z dlowe: But there are expressive type systems that can act as structural elements instead of just restrictions. 2018-07-31T13:52:43Z shka: well, there is shen, so you can check 2018-07-31T13:53:12Z Kundry_Wag joined #lisp 2018-07-31T13:53:14Z klltkr_ quit (Ping timeout: 260 seconds) 2018-07-31T13:53:55Z pjb: dlowe: this is not a discussion for #lisp, but for #lisp-implementers 2018-07-31T13:54:19Z pjb: Nothing prevents a compiler to do static typing. As long as it preserves the semantics specified in clhs. 2018-07-31T13:59:31Z fikka quit (Ping timeout: 256 seconds) 2018-07-31T14:01:17Z maximjaffe quit (Quit: Leaving) 2018-07-31T14:01:47Z maximjaffe joined #lisp 2018-07-31T14:01:47Z eminhi joined #lisp 2018-07-31T14:02:26Z maximjaffe quit (Remote host closed the connection) 2018-07-31T14:02:57Z maximjaffe joined #lisp 2018-07-31T14:05:08Z quipa joined #lisp 2018-07-31T14:05:32Z maximjaffe quit (Client Quit) 2018-07-31T14:05:35Z quipa quit (Remote host closed the connection) 2018-07-31T14:06:10Z maximjaffe joined #lisp 2018-07-31T14:06:26Z sauvin quit (Ping timeout: 256 seconds) 2018-07-31T14:06:40Z asdf123 joined #lisp 2018-07-31T14:07:10Z tralala quit (Ping timeout: 265 seconds) 2018-07-31T14:11:27Z nowhere_man quit (Remote host closed the connection) 2018-07-31T14:11:50Z nowhere_man joined #lisp 2018-07-31T14:12:01Z FreeBirdLjj joined #lisp 2018-07-31T14:13:18Z FreeBirdLjj quit (Read error: Connection reset by peer) 2018-07-31T14:14:17Z FreeBirdLjj joined #lisp 2018-07-31T14:15:46Z fikka joined #lisp 2018-07-31T14:16:27Z LdBeth: Seems CFFI puts quite a lot overhead on calling external C funcs 2018-07-31T14:17:05Z Bike_: over implementation ffis, or just at all? 2018-07-31T14:17:58Z kuwze joined #lisp 2018-07-31T14:18:41Z FreeBirdLjj quit (Ping timeout: 248 seconds) 2018-07-31T14:19:41Z sauvin joined #lisp 2018-07-31T14:19:59Z JuanDaugherty joined #lisp 2018-07-31T14:20:16Z pjb: LdBeth: it's not CFFI, it's FFI. 2018-07-31T14:20:25Z pjb: CFFI works mostly at compilation-time. 2018-07-31T14:20:36Z fikka quit (Ping timeout: 256 seconds) 2018-07-31T14:20:57Z pjb: My advice: don't use FFI, just write it in lisp! 2018-07-31T14:25:21Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-31T14:25:24Z test1600 quit (Ping timeout: 244 seconds) 2018-07-31T14:25:46Z optikalmouse joined #lisp 2018-07-31T14:25:57Z sailor_cat quit (Ping timeout: 268 seconds) 2018-07-31T14:26:10Z fikka joined #lisp 2018-07-31T14:26:31Z reu joined #lisp 2018-07-31T14:29:01Z X-Scale quit (Ping timeout: 244 seconds) 2018-07-31T14:29:55Z sjl_ joined #lisp 2018-07-31T14:30:34Z beach: I agree with that advice. 2018-07-31T14:30:55Z [X-Scale] joined #lisp 2018-07-31T14:31:05Z shka: yeah rewritte tensorflow in lisp 2018-07-31T14:31:09Z fikka quit (Ping timeout: 260 seconds) 2018-07-31T14:31:14Z shka: and then rewritte webkit in lisp 2018-07-31T14:31:18Z _death: right.. I'm waiting for Lisp version of, say, OpenCV... my advice, use FFI but come up with an interface that makes it look like Lisp 2018-07-31T14:31:51Z shka: sometimes there is no alternative 2018-07-31T14:32:06Z saki quit (Remote host closed the connection) 2018-07-31T14:32:22Z beach: I think that is part of the problem. Many people are waiting for others to do it, rather than doing it. 2018-07-31T14:32:53Z shka: not that many 2018-07-31T14:32:58Z _death: well, people already wrote OpenCV and I'm successfully using it from Lisp.. 2018-07-31T14:32:59Z shka: CL community is not exactly huge 2018-07-31T14:33:09Z shka: anyway 2018-07-31T14:33:37Z Denommus joined #lisp 2018-07-31T14:33:37Z dlowe: some people want to solve the problem of not enough lisp code, and some people want to solve an actual problem 2018-07-31T14:33:44Z jackdaniel: not that reinventing every needed piece of software in loved language is the only reasonable approach 2018-07-31T14:33:53Z shka: can someone please explain me what is the difference between supplying default arg for slot in class over providing :initform? 2018-07-31T14:34:29Z jackdaniel: shka: sure, if you inherit from foo, which has slot bar with initarg :bar, you may initialize it with your own from the inheriting class 2018-07-31T14:34:53Z jackdaniel: (defclass qux (foo) () (:default-initargs :bar "other value")) 2018-07-31T14:35:25Z jackdaniel: also, initargs are useful for initialize-instance, you don't need a slot to have the initarg 2018-07-31T14:35:35Z _death: shka: https://www.reddit.com/r/learnlisp/comments/6ynl65/cl_style_question_regarding_defclass_and_defmethod/ 2018-07-31T14:35:59Z MoziM joined #lisp 2018-07-31T14:36:14Z beach quit (Disconnected by services) 2018-07-31T14:36:14Z fikka joined #lisp 2018-07-31T14:36:16Z charh joined #lisp 2018-07-31T14:36:30Z beach joined #lisp 2018-07-31T14:36:49Z shka: jackdaniel: thank you 2018-07-31T14:37:34Z orivej quit (Ping timeout: 264 seconds) 2018-07-31T14:37:43Z Mutter joined #lisp 2018-07-31T14:41:22Z fikka quit (Ping timeout: 268 seconds) 2018-07-31T14:42:03Z shka: _death: excelent link, thanks 2018-07-31T14:42:05Z _death: shka: btw.. maybe not tensorflow, but would be nice to have a Lisp keras :) 2018-07-31T14:42:28Z shka: keras sucks to be honest 2018-07-31T14:42:44Z shka: if anything, I would love pytorch 2018-07-31T14:43:01Z shka: this is some actually well designed piece of software! 2018-07-31T14:43:09Z _death: I like keras.. for torch, I thought some lua bridge would be useful 2018-07-31T14:43:17Z smasta joined #lisp 2018-07-31T14:43:26Z shka: perhaps 2018-07-31T14:43:30Z Mutter quit (Quit: Mutter: www.mutterirc.com) 2018-07-31T14:44:04Z shka: anyway, full blown clone of pytorch in lisp is something that i would love to write given enough time 2018-07-31T14:44:39Z ofi quit (Remote host closed the connection) 2018-07-31T14:45:04Z shka: autograd is not that hard, but optimized array operations on gpu is something that is beyond me 2018-07-31T14:47:00Z _death: not long ago I found out that tensorflow actually has a C interface 2018-07-31T14:47:26Z shka: i will go even further! 2018-07-31T14:47:32Z shka: tensorflow has lisp bindings 2018-07-31T14:47:51Z smurfrobot quit (Remote host closed the connection) 2018-07-31T14:47:53Z shka: _death: https://gitlab.common-lisp.net/cungil/tensorflow 2018-07-31T14:48:12Z _death: yeah looked it up now 2018-07-31T14:48:30Z shka: i never got enough time to check it out 2018-07-31T14:50:03Z saki joined #lisp 2018-07-31T14:53:37Z Mutter joined #lisp 2018-07-31T14:53:55Z optikalmouse quit (Quit: optikalmouse) 2018-07-31T14:54:13Z warweasle joined #lisp 2018-07-31T14:56:24Z fikka joined #lisp 2018-07-31T14:56:47Z Mutter quit (Client Quit) 2018-07-31T14:59:46Z Kundry_Wag joined #lisp 2018-07-31T15:01:26Z fikka quit (Ping timeout: 260 seconds) 2018-07-31T15:03:21Z smurfrobot joined #lisp 2018-07-31T15:03:33Z FreeBirdLjj joined #lisp 2018-07-31T15:03:40Z rumbler31 joined #lisp 2018-07-31T15:07:40Z orivej joined #lisp 2018-07-31T15:08:07Z rippa joined #lisp 2018-07-31T15:08:46Z rumbler31 quit (Ping timeout: 264 seconds) 2018-07-31T15:09:31Z _whitelogger quit (Ping timeout: 265 seconds) 2018-07-31T15:12:31Z _whitelogger joined #lisp 2018-07-31T15:12:51Z cage_ joined #lisp 2018-07-31T15:15:22Z edgar-rft quit (Quit: Leaving) 2018-07-31T15:15:48Z varjag joined #lisp 2018-07-31T15:17:01Z fikka joined #lisp 2018-07-31T15:18:13Z Inline joined #lisp 2018-07-31T15:21:54Z fikka quit (Ping timeout: 260 seconds) 2018-07-31T15:22:33Z jack_rabbit quit (Ping timeout: 264 seconds) 2018-07-31T15:25:37Z scymtym joined #lisp 2018-07-31T15:27:44Z papachan quit (Ping timeout: 260 seconds) 2018-07-31T15:31:06Z eli_oat1 joined #lisp 2018-07-31T15:31:19Z eli_oat quit (Ping timeout: 256 seconds) 2018-07-31T15:31:19Z eli_oat1 is now known as eli_oat 2018-07-31T15:33:08Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-31T15:37:19Z fikka joined #lisp 2018-07-31T15:37:25Z nirved quit (Quit: Leaving) 2018-07-31T15:40:36Z papachan joined #lisp 2018-07-31T15:40:54Z robotoad joined #lisp 2018-07-31T15:41:10Z JuanDaugherty quit (Quit: Exeunt) 2018-07-31T15:42:05Z fikka quit (Ping timeout: 256 seconds) 2018-07-31T15:43:08Z lemo quit (Remote host closed the connection) 2018-07-31T15:45:57Z Josh_2 joined #lisp 2018-07-31T15:47:44Z fikka joined #lisp 2018-07-31T15:48:07Z smurfrobot quit (Remote host closed the connection) 2018-07-31T15:50:01Z Arcaelyx quit (Ping timeout: 256 seconds) 2018-07-31T15:50:25Z smasta quit (Ping timeout: 248 seconds) 2018-07-31T15:50:43Z smurfrobot joined #lisp 2018-07-31T15:50:55Z Arcaelyx joined #lisp 2018-07-31T15:51:21Z flamebeard quit 2018-07-31T15:51:41Z saki quit (Ping timeout: 244 seconds) 2018-07-31T15:52:17Z saki joined #lisp 2018-07-31T15:57:38Z [X-Scale] quit (Ping timeout: 256 seconds) 2018-07-31T15:59:47Z phoe quit (Remote host closed the connection) 2018-07-31T16:00:50Z asarch joined #lisp 2018-07-31T16:02:08Z pjb: If you have to use foreign code, isolate it in separate processes. This is why unix processes were invented. 2018-07-31T16:05:00Z Ven`` joined #lisp 2018-07-31T16:06:46Z Kundry_Wag joined #lisp 2018-07-31T16:06:58Z fikka quit (Ping timeout: 264 seconds) 2018-07-31T16:09:54Z nsrahmad joined #lisp 2018-07-31T16:10:24Z fikka joined #lisp 2018-07-31T16:10:50Z X-Scale joined #lisp 2018-07-31T16:13:52Z MoziM quit (Ping timeout: 268 seconds) 2018-07-31T16:16:49Z _death: may make sense, but aside from IPC overhead that means writing more of the software in a non-lisp 2018-07-31T16:17:09Z Arcaelyx quit (Remote host closed the connection) 2018-07-31T16:18:39Z moei quit (Quit: Leaving...) 2018-07-31T16:22:09Z kuwze quit (Quit: Page closed) 2018-07-31T16:23:40Z smasta joined #lisp 2018-07-31T16:24:25Z shka1 joined #lisp 2018-07-31T16:25:35Z zxcvz joined #lisp 2018-07-31T16:26:51Z optikalmouse joined #lisp 2018-07-31T16:29:36Z biopandemic joined #lisp 2018-07-31T16:31:55Z luisoliv joined #lisp 2018-07-31T16:32:02Z luisoliv: <+SP9002_@efnet> so, he wants the win. so we're just gonna get lunch or something, then hes gonna push me to the ground and tap my ass with his foot so he can claim he "kicked my ass" tbh im going along with it becase I dont wanna lose any teeth 2018-07-31T16:32:02Z luisoliv: With our IRC ad service you can reach a global audience of entrepreneurs and fentanyl addicts with extraordinary engagement rates! https://williampitcock.com/ 2018-07-31T16:32:08Z luisoliv: I thought you guys might be interested in this blog by freenode staff member Bryan 'kloeri' Ostergaard https://bryanostergaard.com/ 2018-07-31T16:32:08Z luisoliv: or maybe this blog by freenode staff member Matthew 'mst' Trout https://MattSTrout.com/ 2018-07-31T16:32:22Z luisoliv quit (Killed (Sigyn (Spam is off topic on freenode.))) 2018-07-31T16:32:35Z shka1 quit (Ping timeout: 240 seconds) 2018-07-31T16:32:41Z optikalmouse left #lisp 2018-07-31T16:35:29Z smurfrobot quit (Remote host closed the connection) 2018-07-31T16:36:44Z fikka quit (Ping timeout: 256 seconds) 2018-07-31T16:38:17Z WhoTookMyName joined #lisp 2018-07-31T16:38:57Z Kundry_Wag quit (Ping timeout: 248 seconds) 2018-07-31T16:39:27Z hiroaki quit (Ping timeout: 240 seconds) 2018-07-31T16:39:34Z equwal quit (Ping timeout: 256 seconds) 2018-07-31T16:44:32Z sawdey2131718 joined #lisp 2018-07-31T16:45:20Z sawdey2131718 quit (Killed (Sigyn (Spam is off topic on freenode.))) 2018-07-31T16:45:57Z eminhi quit (Remote host closed the connection) 2018-07-31T16:46:38Z fourier joined #lisp 2018-07-31T16:46:41Z FreeBirdLjj quit (Remote host closed the connection) 2018-07-31T16:48:41Z Tionis18 joined #lisp 2018-07-31T16:49:05Z Tionis18 quit (Killed (Sigyn (Spam is off topic on freenode.))) 2018-07-31T16:49:42Z information2718 joined #lisp 2018-07-31T16:50:58Z information2718 quit (Killed (Sigyn (Spam is off topic on freenode.))) 2018-07-31T16:52:06Z brendyn quit (Ping timeout: 268 seconds) 2018-07-31T16:55:12Z saki quit (Read error: Connection reset by peer) 2018-07-31T16:56:46Z charh quit (Ping timeout: 264 seconds) 2018-07-31T16:56:51Z HeyFlash quit (Ping timeout: 240 seconds) 2018-07-31T16:58:33Z fikka joined #lisp 2018-07-31T16:59:02Z VampiricPadraig1 joined #lisp 2018-07-31T16:59:02Z VampiricPadraig1: <+SP9002_@efnet> so, he wants the win. so we're just gonna get lunch or something, then hes gonna push me to the ground and tap my ass with his foot so he can claim he "kicked my ass" tbh im going along with it becase I dont wanna lose any teeth 2018-07-31T16:59:02Z VampiricPadraig1: With our IRC ad service you can reach a global audience of entrepreneurs and fentanyl addicts with extraordinary engagement rates! https://williampitcock.com/ 2018-07-31T16:59:05Z VampiricPadraig1: I thought you guys might be interested in this blog by freenode staff member Bryan 'kloeri' Ostergaard https://bryanostergaard.com/ 2018-07-31T16:59:08Z VampiricPadraig1: or maybe this blog by freenode staff member Matthew 'mst' Trout https://MattSTrout.com/ 2018-07-31T16:59:15Z VampiricPadraig1 quit (Killed (Sigyn (Spam is off topic on freenode.))) 2018-07-31T17:00:29Z WhoTookMyName quit (Ping timeout: 260 seconds) 2018-07-31T17:01:12Z WhoTookMyName joined #lisp 2018-07-31T17:02:18Z WhoTookMyName left #lisp 2018-07-31T17:03:47Z saki joined #lisp 2018-07-31T17:04:55Z rumbler31 joined #lisp 2018-07-31T17:05:44Z asarch quit (Ping timeout: 260 seconds) 2018-07-31T17:07:45Z fikka quit (Ping timeout: 248 seconds) 2018-07-31T17:09:11Z rumbler31 quit (Ping timeout: 244 seconds) 2018-07-31T17:09:15Z Hink22 joined #lisp 2018-07-31T17:10:21Z MoziM joined #lisp 2018-07-31T17:10:43Z Hink22 quit (Killed (Sigyn (Spam is off topic on freenode.))) 2018-07-31T17:13:25Z skapata joined #lisp 2018-07-31T17:13:29Z Kundry_Wag joined #lisp 2018-07-31T17:15:57Z kajo quit (Ping timeout: 240 seconds) 2018-07-31T17:16:17Z nsrahmad quit (Quit: Leaving) 2018-07-31T17:20:13Z fikka joined #lisp 2018-07-31T17:21:37Z orivej quit (Ping timeout: 248 seconds) 2018-07-31T17:22:16Z eli_oat quit (Remote host closed the connection) 2018-07-31T17:25:28Z atlan quit (Quit: Leaving.) 2018-07-31T17:26:22Z eli_oat joined #lisp 2018-07-31T17:28:33Z Fare joined #lisp 2018-07-31T17:28:34Z rozenglass joined #lisp 2018-07-31T17:29:43Z fikka quit (Ping timeout: 268 seconds) 2018-07-31T17:29:49Z Olipro15 joined #lisp 2018-07-31T17:29:53Z Olipro15: <+SP9002_@efnet> so, he wants the win. so we're just gonna get lunch or something, then hes gonna push me to the ground and tap my ass with his foot so he can claim he "kicked my ass" tbh im going along with it becase I dont wanna lose any teeth 2018-07-31T17:29:53Z Olipro15 quit (Killed (Sigyn (Spam is off topic on freenode.))) 2018-07-31T17:35:23Z cage_ quit (Remote host closed the connection) 2018-07-31T17:35:41Z ChanServ has set mode +o Xach 2018-07-31T17:35:50Z Xach has set mode +r 2018-07-31T17:37:10Z cage_ joined #lisp 2018-07-31T17:38:21Z Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-31T17:39:53Z edgar-rft joined #lisp 2018-07-31T17:41:13Z MoziM quit (Ping timeout: 244 seconds) 2018-07-31T17:42:50Z MoziM joined #lisp 2018-07-31T17:44:23Z m00natic quit (Remote host closed the connection) 2018-07-31T17:47:00Z Kundry_Wag quit (Ping timeout: 256 seconds) 2018-07-31T17:47:17Z fikka joined #lisp 2018-07-31T17:50:51Z moei joined #lisp 2018-07-31T17:51:41Z edgar-rft quit (Remote host closed the connection) 2018-07-31T17:51:50Z orivej joined #lisp 2018-07-31T18:02:55Z saki quit (Ping timeout: 244 seconds) 2018-07-31T18:04:46Z graphene joined #lisp 2018-07-31T18:06:27Z fikka quit (Ping timeout: 240 seconds) 2018-07-31T18:11:09Z slyrus_ quit (Ping timeout: 264 seconds) 2018-07-31T18:11:10Z graphene quit (Remote host closed the connection) 2018-07-31T18:12:30Z graphene joined #lisp 2018-07-31T18:18:04Z Fare quit (Ping timeout: 260 seconds) 2018-07-31T18:19:12Z equwal joined #lisp 2018-07-31T18:20:15Z pjb quit (Remote host closed the connection) 2018-07-31T18:20:35Z Kundry_Wag joined #lisp 2018-07-31T18:27:28Z sauvin quit (Remote host closed the connection) 2018-07-31T18:38:00Z josemanuel joined #lisp 2018-07-31T18:44:00Z Fare joined #lisp 2018-07-31T18:45:02Z charh joined #lisp 2018-07-31T18:47:20Z graphene quit (Remote host closed the connection) 2018-07-31T18:48:36Z graphene joined #lisp 2018-07-31T18:51:02Z Fare quit (Ping timeout: 256 seconds) 2018-07-31T18:52:49Z Kundry_Wag quit (Ping timeout: 248 seconds) 2018-07-31T18:54:47Z fikka joined #lisp 2018-07-31T18:54:57Z p_l: jfc wtf happened? 2018-07-31T18:55:11Z graphene quit (Remote host closed the connection) 2018-07-31T18:55:24Z Bike_: what? 2018-07-31T18:55:59Z p_l: just looked through that spam 2018-07-31T18:56:13Z Fare joined #lisp 2018-07-31T18:56:22Z Bike_: whati heard is that some guy got banned and decided a slander campaign across multiple networks was the way to go 2018-07-31T18:56:26Z emacsomancer joined #lisp 2018-07-31T18:56:28Z graphene joined #lisp 2018-07-31T18:56:39Z p_l: that I knew, but I see they expanded the operation 2018-07-31T18:56:56Z Bike_: oh, it's been here since like, last week 2018-07-31T18:57:05Z Bike_: jackd put on +r so it was less obvious 2018-07-31T18:57:17Z p_l: Bike_: the links to fake blogs, yes, the rest wasn't 2018-07-31T18:57:31Z Bike_: oh, the quote is new, yeah. 2018-07-31T18:57:42Z p_l: tbqh, I don't really understand those people 2018-07-31T18:57:50Z random-nick quit (Read error: Connection reset by peer) 2018-07-31T18:58:12Z MoziM quit (Ping timeout: 244 seconds) 2018-07-31T18:58:57Z equwal quit (Ping timeout: 240 seconds) 2018-07-31T19:00:08Z MoziM joined #lisp 2018-07-31T19:00:26Z Bike_: who does? 2018-07-31T19:00:26Z fikka quit (Ping timeout: 255 seconds) 2018-07-31T19:00:39Z eli_oat quit (Ping timeout: 260 seconds) 2018-07-31T19:05:31Z edgar-rft joined #lisp 2018-07-31T19:06:12Z graphene quit (Remote host closed the connection) 2018-07-31T19:06:27Z Orion3k quit (Ping timeout: 240 seconds) 2018-07-31T19:07:28Z jackdaniel: petty feelings are quite common; most people get over it as silly thing though 2018-07-31T19:07:29Z graphene joined #lisp 2018-07-31T19:09:00Z orivej quit (Ping timeout: 268 seconds) 2018-07-31T19:14:57Z azrazalea quit (Ping timeout: 240 seconds) 2018-07-31T19:16:26Z igemnace quit (Quit: WeeChat 2.2) 2018-07-31T19:17:52Z azrazalea joined #lisp 2018-07-31T19:19:41Z p_l: there's the Greater Internet Fuckwad Theory 2018-07-31T19:20:26Z graphene quit (Remote host closed the connection) 2018-07-31T19:21:00Z sh1r0 joined #lisp 2018-07-31T19:21:11Z Kundry_Wag joined #lisp 2018-07-31T19:21:42Z graphene joined #lisp 2018-07-31T19:22:15Z Orion3k joined #lisp 2018-07-31T19:27:59Z Demosthenex: eternal september. 2018-07-31T19:28:41Z equwal joined #lisp 2018-07-31T19:30:24Z King-Calf1 quit (Quit: Leaving.) 2018-07-31T19:31:47Z random-nick joined #lisp 2018-07-31T19:33:44Z Fare quit (Ping timeout: 255 seconds) 2018-07-31T19:37:55Z pierpal quit (Quit: Poof) 2018-07-31T19:38:11Z pierpal joined #lisp 2018-07-31T19:40:34Z klltkr joined #lisp 2018-07-31T19:42:25Z Khisanth quit (Ping timeout: 248 seconds) 2018-07-31T19:43:43Z Josh_2 quit (Quit: ERC (IRC client for Emacs 25.3.1)) 2018-07-31T19:45:10Z aindilis quit (Remote host closed the connection) 2018-07-31T19:46:52Z aindilis joined #lisp 2018-07-31T19:47:29Z fikka joined #lisp 2018-07-31T19:52:01Z fikka quit (Ping timeout: 248 seconds) 2018-07-31T19:54:27Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-31T19:55:03Z Khisanth joined #lisp 2018-07-31T19:55:10Z theBlackDragon quit (Ping timeout: 265 seconds) 2018-07-31T19:55:37Z gravicappa quit (Ping timeout: 245 seconds) 2018-07-31T19:58:51Z richardjdare joined #lisp 2018-07-31T19:59:33Z zfree joined #lisp 2018-07-31T20:01:51Z sh1r0 quit 2018-07-31T20:02:13Z pierpal quit (Quit: Poof) 2018-07-31T20:02:33Z pierpal joined #lisp 2018-07-31T20:06:46Z makomo quit (Ping timeout: 265 seconds) 2018-07-31T20:11:33Z orivej joined #lisp 2018-07-31T20:13:05Z fourier quit (Ping timeout: 240 seconds) 2018-07-31T20:17:09Z pierpa joined #lisp 2018-07-31T20:17:50Z aeth: Let's create a new Internet just for Mezzano users. Then we can avoid the problems that come from the eternal September until it gets posted to HN. 2018-07-31T20:18:35Z fikka joined #lisp 2018-07-31T20:19:11Z Fare joined #lisp 2018-07-31T20:21:09Z terpri joined #lisp 2018-07-31T20:22:24Z vlatkoB_ quit (Remote host closed the connection) 2018-07-31T20:23:06Z dlowe: The first step to creating the perfect communications network is to cut the entire world off. 2018-07-31T20:23:15Z dlowe: because man, who wants to talk to those people 2018-07-31T20:26:57Z smasta quit (Ping timeout: 240 seconds) 2018-07-31T20:27:07Z whartung: I hate talking to people. 2018-07-31T20:27:21Z gabiruh quit (Ping timeout: 264 seconds) 2018-07-31T20:27:37Z rippa quit (Quit: {#`%${%&`+'${`%&NO CARRIER) 2018-07-31T20:28:20Z skapata quit (Remote host closed the connection) 2018-07-31T20:28:31Z Kundry_Wag joined #lisp 2018-07-31T20:29:21Z tripty quit (Ping timeout: 240 seconds) 2018-07-31T20:34:16Z zxcvz quit (Quit: zxcvz) 2018-07-31T20:39:35Z graphene quit (Remote host closed the connection) 2018-07-31T20:40:48Z graphene joined #lisp 2018-07-31T20:41:49Z graphene quit (Read error: Connection reset by peer) 2018-07-31T20:43:03Z graphene joined #lisp 2018-07-31T20:45:12Z graphene quit (Remote host closed the connection) 2018-07-31T20:46:28Z graphene joined #lisp 2018-07-31T20:47:31Z hiroaki joined #lisp 2018-07-31T20:50:03Z sh1r0 joined #lisp 2018-07-31T20:51:13Z trittweiler quit (Ping timeout: 248 seconds) 2018-07-31T20:55:18Z dented42 joined #lisp 2018-07-31T20:55:52Z DonVlad quit (Remote host closed the connection) 2018-07-31T20:58:30Z Smokitch quit 2018-07-31T21:00:39Z Kundry_Wag quit (Ping timeout: 244 seconds) 2018-07-31T21:06:26Z rumbler31 joined #lisp 2018-07-31T21:07:20Z dented42 quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2018-07-31T21:10:35Z rumbler31 quit (Ping timeout: 240 seconds) 2018-07-31T21:10:52Z kajo joined #lisp 2018-07-31T21:12:09Z sh1r0 left #lisp 2018-07-31T21:12:22Z richardjdare: dumb question: how do I make a cffi:defcstruct with a function pointer in it? 2018-07-31T21:12:25Z richardjdare: Is it just (cffi:defcstruct foo (:pointer myfptr)) or is there more to it? 2018-07-31T21:17:43Z Bike_: i believe cffi still ignores types of pointers 2018-07-31T21:17:53Z Bike_: which is to say, that's it 2018-07-31T21:18:34Z richardjdare: Thanks 2018-07-31T21:19:49Z light2yellow quit (Quit: bye cruel world) 2018-07-31T21:20:06Z BitPuffin quit (Remote host closed the connection) 2018-07-31T21:22:36Z sh1r0 joined #lisp 2018-07-31T21:23:59Z angavrilov quit (Remote host closed the connection) 2018-07-31T21:29:29Z LiamH quit (Quit: Leaving.) 2018-07-31T21:31:27Z kenster quit (Ping timeout: 240 seconds) 2018-07-31T21:37:26Z Kundry_Wag joined #lisp 2018-07-31T21:42:58Z cage_ quit (Quit: Leaving) 2018-07-31T21:45:57Z equwal quit (Ping timeout: 240 seconds) 2018-07-31T21:55:36Z Bike_ quit (Ping timeout: 252 seconds) 2018-07-31T22:01:57Z richardjdare quit (Quit: Leaving) 2018-07-31T22:04:01Z mindCrime quit (Ping timeout: 256 seconds) 2018-07-31T22:04:06Z nanoz joined #lisp 2018-07-31T22:09:27Z Kundry_Wag quit (Ping timeout: 240 seconds) 2018-07-31T22:09:27Z hiroaki quit (Ping timeout: 240 seconds) 2018-07-31T22:09:57Z nanoz quit (Ping timeout: 240 seconds) 2018-07-31T22:11:04Z tripty joined #lisp 2018-07-31T22:19:51Z orivej quit (Ping timeout: 240 seconds) 2018-07-31T22:21:24Z Orion3k quit (Ping timeout: 268 seconds) 2018-07-31T22:24:10Z josemanuel quit (Quit: leaving) 2018-07-31T22:24:10Z graphene quit (Remote host closed the connection) 2018-07-31T22:25:27Z graphene joined #lisp 2018-07-31T22:26:48Z Josh_2 joined #lisp 2018-07-31T22:27:09Z fikka quit (Ping timeout: 260 seconds) 2018-07-31T22:27:43Z nanoz joined #lisp 2018-07-31T22:27:51Z JuanDaugherty joined #lisp 2018-07-31T22:28:15Z smasta joined #lisp 2018-07-31T22:30:09Z dented42 joined #lisp 2018-07-31T22:33:58Z Orion3k joined #lisp 2018-07-31T22:34:05Z terpri quit (Ping timeout: 240 seconds) 2018-07-31T22:34:18Z pierpal quit (Ping timeout: 256 seconds) 2018-07-31T22:36:00Z sh1r0 quit (Ping timeout: 256 seconds) 2018-07-31T22:40:14Z Copenhagen_Bram joined #lisp 2018-07-31T22:40:53Z Kundry_Wag joined #lisp 2018-07-31T22:41:16Z sjl_ quit (Quit: WeeChat 2.2-dev) 2018-07-31T22:42:27Z random-nick quit (Ping timeout: 240 seconds) 2018-07-31T22:45:14Z Fare quit (Ping timeout: 260 seconds) 2018-07-31T22:46:08Z Arcaelyx joined #lisp 2018-07-31T22:48:09Z varjag quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2018-07-31T23:00:35Z X-Scale quit (Ping timeout: 240 seconds) 2018-07-31T23:00:47Z robotoad quit (Quit: robotoad) 2018-07-31T23:01:36Z rumbler31 joined #lisp 2018-07-31T23:02:49Z fikka joined #lisp 2018-07-31T23:06:43Z smasta quit (Ping timeout: 244 seconds) 2018-07-31T23:07:17Z Denommus quit (Remote host closed the connection) 2018-07-31T23:07:24Z fikka quit (Ping timeout: 260 seconds) 2018-07-31T23:14:28Z Kundry_Wag quit (Ping timeout: 244 seconds) 2018-07-31T23:14:36Z Fare joined #lisp 2018-07-31T23:14:42Z X-Scale joined #lisp 2018-07-31T23:17:06Z smasta joined #lisp 2018-07-31T23:23:27Z jinkies joined #lisp 2018-07-31T23:23:36Z erratic quit (Ping timeout: 256 seconds) 2018-07-31T23:28:25Z detectiveaoi joined #lisp 2018-07-31T23:29:10Z Fare quit (Ping timeout: 264 seconds) 2018-07-31T23:31:41Z jack_rabbit joined #lisp 2018-07-31T23:32:07Z robotoad joined #lisp 2018-07-31T23:35:40Z Achylles joined #lisp 2018-07-31T23:36:27Z dented42 quit (Ping timeout: 240 seconds) 2018-07-31T23:38:27Z smasta quit (Ping timeout: 240 seconds) 2018-07-31T23:45:35Z Kundry_Wag joined #lisp 2018-07-31T23:47:21Z Kaisyu joined #lisp 2018-07-31T23:50:14Z fikka joined #lisp 2018-07-31T23:55:13Z fikka quit (Ping timeout: 248 seconds) 2018-07-31T23:58:02Z dented42 joined #lisp 2018-07-31T23:58:10Z broccolistem quit (Ping timeout: 256 seconds)